Sommaire
Les cartes de développement Raspberry Pi sont des mini-ordinateurs, basés sur des microcontroleur ARM (les mêmes que ceux qu’on retrouve dans les téléphones portables). Ces cartes ont la particularité de proposer l’accès à une série d’entrées-sorties numériques que l’on peut piloter directement depuis le système d’exploitation ou à travers des programmes informatiques (python, C…)
Vous trouverez des informations, des tutoriels et plein d’exemples sur les pages du site : Raspberrypi.org
Matériels et logiciels
Installation de Open CV 3 sur Raspberry 3
Développez une application sous Raspberry !
Premiers Pas sous Raspbian – le système d’exploitation
Python sous Raspberry Pi
Interfaçage à l’aide des GPIO
Interfaces graphiques
Traitement d’images
Raspbian – système d’exploitation Linux
Linux, comment ça fonctionne ?
Terminal de commandes
La gestion des utilisateurs
Tout comme la plupart des systèmes d’exploitation, il est possible sous Raspbian de gérer des profils d’utilisateurs différents. Pour cela, on différencie les différents profils d’utilisateurs en les incluant dans des groupes, pouvant avoir plus ou moins de pouvoir selon leur utilisation de la machine.
Le plus important des utilisateurs est root. Cet utilisateur possède tous les droits sur la machine (l’administrateur du système la plupart du temps). Sur la plupart des machines en exploitation, il est impossible d’accèder à cet utilisateur, contrairement à une machine personnelle où vous êtes la plupart du temps à la fois l’administrateur et le principal utilisateur.
Il appartient au groupe des superutilisateurs. D’autres utilisateurs peuvent appartenir à ce groupe qui possède la plupart des privilèges sur une machine. Pour pouvoir alors accèder à des commandes en temps que superutilisateurs, il faut précéder les commandes par le mot clef sudo
. Il vous sera alors demandé de saisir votre mot de passe pour confirmer l’exécution de la commande en mode administrateur.
Sur Raspbian, le profil principal est pi, dont le mot de passe est raspberry (lorsqu’il n’a pas été changé).
La gestion des fichiers
Les commandes de base
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install [paquet a installer]
Les cartes Raspberry Pi
Les GPIO – Entrées-sorties spécifiques
- https://www.raspberrypi.org/documentation/usage/gpio/
- Lien intéressant : https://pinout.xyz/
Moteurs pas à pas : https://www.rototron.info/raspberry-pi-stepper-motor-tutorial/
I2C
I2C utilitaires : https://www.instructables.com/id/Raspberry-Pi-I2C-Python/
i2cdetect -y 1
PWM
Module d’extension : PCA9685.pdf / Initialisation sur RPi Python : PCA9685_initialisation.txt
Les logiciels à découvrir
Gimp – logiciel de retouche d’images
Programmer en python sous Raspbian
Thonny, l’interface de développement
Des bibliothèques à installer
Installation d’une bibliothèque
Selon que vous utilisiez python2 ou python3, il faudra installer les bibliothèques indépedamment.
Pour certaines bibliothèques trop lourdes à installer, il peut être préférable d’utiliser l’une des commandes suivantes :pip --no-cache-dir install [librairie]
pip3 --no-cache-dir install [librairie]
Liste de bibliothèques intéressantes
Scipy – https://www.scipy.org/ – incluant Numpy et Matplotlib – https://matplotlib.org/
Jouer avec les GPIO et les diverses interfaces
Développer une interface graphique
Tkinter – https://effbot.org/tkinterbook/tkinter-index.htm
Pygame – https://www.pygame.org/wiki/GettingStarted
Jouer avec les images
Et OpenCV !
Installation de Python 3.7 et des bibliothèques indispensables
Installation de Python 3.7
Bibliothèques
- Pillow : pour traiter des images
- Numpy : pour gérer des matrices
- Matplotlib : pour afficher des graphiques
- OpenCV pour python : pour traiter des images à grande vitesse
- Requests : pour créer des requêtes HTTP
- Keras ou Pytorch : pour faire du Machine Learning
- Kivy : pour développer des interfaces avec affichage de courbes
- Pygame : pour développer des interfaces de jeux
- Tkinter : pour réaliser des IHM simples
- Bokeh : pour afficher de beaux graphiques
- Luminoth : pour faire de la vision par ordinateur