Blog

Comment apprendre la robotique avec Raspberry Pi (2/2)

Apprendre la robotique
Partager
Comment apprendre la robotique avec Raspberry Pi (2/2)

Dans le post précédent, nous vous avons donné un aperçu de comment apprendre la robotique avec Raspberry Pi, afin que vous puissiez savoir ce qu'est Raspberry Pi et quelle carte choisir.

Dans cet article, nous allons vous montrer ce que vous devez faire pour réellement apprendre la robotique avec Raspberry Pi.

Prêt ? Allons-y :

Installer un système d'exploitation sur Raspberry Pi :

Dans cette partie nous nous concentrerons sur la carte Raspberry Pi 3, mais la plupart de ces conseils sont également valables pour le Raspberry Pi 2.

Tout d'abord, vous avez besoin d'un carte microSD. Même si vous pouvez installer presque n'importe quel système d'exploitation avec seulement une carte de 8 Go, nous vous recommandons d'en utiliser une de 16 Go ou de 32 Go. Vérifiez également que votre carte microSD dispose d'un classe 6 ou 10 (10 est le meilleur).

L'installation d'une image du système d'exploitation sur une carte SD est assez simple. Le site officiel de Raspberry Pi propose un excellent tutoriel sur ce sujet. Vous pouvez également acheter directement une carte SD avec une image préinstallée, mais nous vous recommandons de le faire vous-même en suivant le tutoriel, car c'est simple et vous apprendrez quelques bases.

Maintenant, quel OS (système d'exploitation) installer ? Raspbian est un système d'exploitation spécialement créé pour les produits Raspberry Pi. Il est préférable de commencer par cela, car vous êtes sûr que la plupart des fonctionnalités seront prises en charge et que le matériel fonctionnera correctement dès la sortie de la boîte. Tu peux téléchargez Raspbian sur le site officiel de Raspberry Pi. Si vous utilisez Raspberry Pi pour la première fois et que vous ne connaissez pas grand-chose en informatique, il existe un système d'exploitation pour vous, appelé Noob (Nouveau logiciel prêt à l'emploi).

Si vous aimez Ubuntu (comme nous), vous serez heureux de savoir que de nombreuses versions d'Ubuntu ont été adaptées pour fonctionner sur Raspberry Pi : Ubuntu Mate, Xubuntu, Lubuntu, serveur Ubuntu. Consultez les liens de téléchargement ici.

Pour les utilisateurs plus avancés, vous pouvez également trouver versions légères du système d'exploitation, sans interface graphique. Ceux-ci vous permettront de accélérez vos candidatures d'un montant important.

Programmation sur Raspberry Pi

Raspberry Pi est une excellente plate-forme pour apprendre la robotique, et à un moment donné, vous devrez effectuer certaines tâches de programmation pour contrôler votre robot : contrôler les moteurs, lire les données des capteurs ou créer un programme serveur pour contrôler votre robot à partir d'une interface Web.

La bonne nouvelle est que Raspbian et la plupart des systèmes d'exploitation sont déjà livrés avec un Python environnement de développement. Python est un bon langage pour débuter la programmation et est souvent adopté par les débutants. Plus qu'un langage d'apprentissage, Python est largement utilisé dans des applications réelles et permet un prototypage et un développement rapides.

Vous trouverez également de nombreuses bibliothèques Python open source pour vous aider à interagir avec les broches et les ports de votre carte Raspberry Pi. De cette façon, vous pouvez créer des éléments utiles pour votre robot sans trop de difficultés.

Bien entendu, vous pouvez utiliser n’importe quel langage (C, C++, Ruby, Javascript,…), en fonction de l’application que vous construisez. Pour les projets de robotique, Python et C++ sont majoritairement utilisés. Combinés entre eux, ils permettent développement rapideet code optimisé pour de meilleures performances.


Utiliser des broches GPIO


Après avoir installé un système d'exploitation et pris connaissance de la programmation de base, vous pourrez commencer à utiliser les broches GPIO de la carte Raspberry Pi. Ceux-ci vous permettent de connectez votre carte aux composants matériels, via les protocoles i2c et spi par exemple.

Certaines bibliothèques ont été développées pour vous permettre d'utiliser facilement ces protocoles de communication sans savoir comment ils fonctionnent sous le capot. Par exemple, SMBus est une bibliothèque Python qui rend la communication I2C très simple.


A partir des 40 broches du Raspberry Pi (2 et 3) vous pourrez :

  • Contrôlez l'inclinaison de votre robot avec un capteur IMU (Inertial Measurement Unit)
  • Contrôlez la position de votre robot avec un détecteur laser
  • Obtenez des informations sur l’environnement telles que la température, la pression,…
  • Communiquer avec une autre carte informatique ou une carte microcontrôleur (ex : Arduino)

Intégrer une caméra


Raspberry Pi a une interface caméra
, et vous pouvez acheter une caméra spécialement conçue pour Raspberry Pi, peu coûteuse, facile à connecter et offrant une bonne qualité d'image.

Imaginez toutes les possibilités ! Vous pouvez construire votre propre drone et utiliser la caméra pour traiter les images de l’environnement, afin que votre drone sache où atterrir et comment éviter les obstacles.

Si vous souhaitez utiliser une caméra sur votre carte Raspberry Pi, jetez un œil à OuvrirCv bibliothèque. Vous pouvez utiliser cette bibliothèque open source pour traiter les images de votre appareil photo, pour reconnaître des parties de l'environnement, des visages, etc.

 


Communiquer avec une carte Arduino

Ce qui est génial avec Raspberry Pi, c'est que vous pouvez le connecter à presque tout. Imaginez un Combinaison Raspberry Pi + Arduino… Eh bien, c'est possible, et c'est une très bonne idée pour les applications robotiques.

Mais quand avez-vous besoin d’une carte Arduino avec votre carte Raspberry Pi ?

  • Parfois tu en as contraintes temps réel, et le système d'exploitation de votre Raspberry Pi ne peut pas très bien les gérer. Dans ce cas, vous souhaiterez peut-être utiliser une carte Arduino pour effectuer les tâches en temps réel et vous connecter les uns aux autres afin que le Raspberry puisse toujours effectuer des calculs élevés et laisser l'Arduino effectuer les tâches de niveau inférieur.
  • Si vous avez besoin d' contrôler beaucoup de moteurs, disons, 5 moteurs pas à pas, vous devrez ajouter une carte à votre Raspberry Pi, pour gérer l'alimentation et le contrôle du moteur (parfois avec des contraintes en temps réel). Un Arduino Mega avec bouclier RAMPS 1.4 je peux le faire parfaitement !
  • Si tu veux contrôler plusieurs éléments matériels dans votre maison avec un seul centre de commande, vous pouvez alors connecter plusieurs cartes Arduino avec une seule carte Raspberry Pi.

Connectez votre robot à votre maison

Avec la connexion Ethernet, vous pouvez directement brancher votre Raspberry Pi sur votre routeur domestique, et c'est parti ! Vous avez juste un serveur à 40$ rien que pour vous.

Grâce à la connexion Wi-Fi et Bluetooth, vous pourrez avoir votre Raspberry Pi embarqué dans votre robot et toujours en communication avec l'extérieur. De cette façon, vous pouvez imaginer créer un serveur sur votre robot, afin de pouvoir pilotez-le depuis une application mobile, ou depuis un poste distant à l'autre bout du monde.

Reprenons l'exemple du drone. Lors du traitement des images avec OpenCV, vous pouvez également diffuser la vidéo sur votre ordinateur afin de pouvoir voir ce que voit le robot.

Cas d’usage réel : Niryo One

Après tous ces points, vous souhaiterez peut-être obtenir un exemple d'un véritable projet de robotique utilisant une carte Raspberry Pi.

Chez Niryo, nous utilisons une carte Raspberry Pi 3 pour contrôler notre robot, Niryo One. Nous avons fait ce choix car nous souhaitions que le robot soit plus intelligent. Nous voulions également intégrer le système d'exploitation Ubuntu afin de pouvoir exécuter Robot Operating System (ROS), un excellent ensemble d'outils pour des applications robotiques puissantes.

À ton tour !

Nous vous avons présenté ici une introduction sur la façon d'apprendre la robotique avec Raspberry Pi. Avec tous ces points vous pourrez voir ce que vous pouvez faire, et comment trouver les bonnes informations pour progresser au début.

Nous vous encourageons vivement à participer à la communauté autour du Raspberry Pi, comme le fonctionnaire forums, ou d'autres sites Web proposant d'excellents didacticiels. Après avoir construit votre robot, vous pouvez partager votre travail avec la communauté et obtenir des retours et des commentaires positifs, tout ce dont vous avez besoin pour continuer à vous motiver.

Maintenant, c'est à votre tour d'apprendre la robotique avec Raspberry Pi !