0% ont trouvé ce document utile (0 vote)
146 vues16 pages

Fascicule Raspberry Pi

Transféré par

sakhri aya
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
146 vues16 pages

Fascicule Raspberry Pi

Transféré par

sakhri aya
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TANIT Training & Consulting

Partie 1 Prise en main de la carte Raspberry Pi


1. Présentation de la carte

Raspberry Pi est un nano-ordinateur


ordinateur sur lequel est installé généralement le système
d'exploitation Linux destiné à des applications embarquées. Le cœur de l'ordinateur est un
Broadcom 2711
711 intégrant un processeur ARM cadencé a 1,5 G
GHz. Raspberry Pi peut intégrer
ses propres outils de développement et une IHM reposant sur SSH contrôlable depuis un autre
ordinateur par Ethernet ou Wi--Fi.

Figure 1 Raspberry pi 4

2. Constitution de la carte

La carte est constituée par:

 CPU ARM (cortex A72) quad


quad-core 64 bits
 LAN sans fil 802.11n
 Bluetooth 5.0
 Bluetooth faible consommation d'énergie (BLE)
 1-2-4-8-12 Go de RAM
 4 ports USB
 40 broches GPIO
 2 Ports HDMI (micro)
 Port Ethernet

1
TANIT Training & Consulting

 Prise jack 3,55 mm combinée


 Interface de l'appareil photo (CSI)
 Interface d'affichage (DSI)
 Emplacement
ent carte micro SD
 VideoCore IV cœur graphique 3D

Périphériques Rôle
Permettent la communication de la carte
GPIO
avec le monde extérieur
Port Jack Utilisé pour la sortie audio ou vidéo
USB Permett de connecter souris, cam, …
Port Ethernet utilisé pour la connexion internet.
CSI connexion de caméra
cam
HDMI connexion d’un écran(TV, vidéoprojecteur)
DSI connexion d’un écran tactile

Tableau 1 : Rôle des Périphériques de Raspberry pi 4

Les principales composantes sont :

Système sur puce Conçu spécialement pour le nouveau Pi 4,, le système sur puce
Braodcom BCM2711 (Soc) comprend quatre processeurs ARM Cortex Cortex-A72 haute
performance fonctionnant à 1,55 GHz et un processeur
eur graphique Vide Corê IV.
IV

Figure 2- Système sur puce

2
TANIT Training & Consulting

RAM D’un point de vue pratique, le processeur restant inchangé l’augmentation de la RAM
ne devrait pas particulièrement augmenter la puissance brute du Raspberry Pi. En revanche,
l’augmentation de la RAM devrait permettre aux utilisateurs ayant une forte consommation de
mémoire vive de faire tourner plus d’ap
d’applications en même temps.

Figure 3 - Mémoire RAM

GPIO
La Raspberry Pi 3 ou 4 dispose de 40 broches.

Figure 4 - GPIO

Module sans fil Laa puce Broadcom BCM


BCM2711 fournit le réseau local sans fil 802.11n de
2,4 GHz, Bluetooth
etooth LowEnergy et Bluetooth 5.0
5.0.

Figure 5 - Radio sans-fil

3
TANIT Training & Consulting

3. Utilitaires

- Raspbian Strech image


Lien: [Link]
- Putty
Lien: [Link]
- SD Card Formatter
Lien: [Link]
- Win32 Disk Imager
Lien: [Link]
- Filezilla:
Lien: [Link]
-Winrar :
Lien: [Link]
[Link]
- Advanced IP Scanner
Lien: [Link]
[Link]
[Link]/download/Advanced_IP_Scanner_2.[Link]
-vnc viewer :
Lien: [Link]
[Link]/download/

Deuxième partie Installation de l’OS et configuration


Formatage de la carte SD :

- Insérer la carte mémoire et lancer l’outil SD card Formater.


- Vérifier que la carte est détectée.
- Cliquer alors sur le bouton Format pour lancer le formatage de la carte.

Installer Raspbian sur une carte SD depuis Windows

Il faudra utiliser un logiciel pour installer correctement l’image de Linux sur la micro SD. Nous allons
utiliser celui qui est recommandé le plus : Win32 Disk Imager.

Dans « image file », sélectionner le fichier image de Raspbian pbian que vous avez téléchargé. Dans
« device », choisissez la lettre correspondant à votre lecteur de carte SD.
Cliquez sur Write et attendez quelques instants. Le logiciel va installer Raspbian sur votre carte SD.
Un message de confirmation apparaîtra une fois l’opération terminée.

Activer l’accès a distance :

Pour qu’on puisse se connecter à notre carte on doit configurer


igurer une adresse IP et activer le protocole
SSH :

- Ouvrir le fichier cmdline


[Link] sur la carte SD et à la fin de ligne ajouter : ip=[Link]

4
TANIT Training & Consulting

(Choisir une adresse en remplaçant xx exemple [Link])


- Pour activer le protocole SSH il suffit de créer un fichier vide sous le nom ‘ssh’ sans
extension

Vous pouvez retirer la carte SD du lecteur. Raspbian est installé sur la carte.

Brancher Raspberry Pi

Client SSH
Pour se connecter en SSH sur le Raspberry on utilise un logiciel qu'on appelle SSH Client.
Il y a deux type de clients:
- Le logiciel émulateur (comme putty)
- Une commande unix/linux tel que ssh.
Logiciel SSH Client
Le plus connu sous Windows, Mac et Linux est
Putty qui se trouve être un logiciel libre.

Puis apui sur ‘open’


Une fenêtre s’ouvre et demande login et mot de passe pour établir la connexion :
Login : pi
Password : raspberry

Configurer Raspbian

Apres la connexion on doit configurer notre raspberry. Pour cela on exécute la commande suivante dans
l’invite de commande:

sudo raspi-config

On se retrouve face à un menu permettant de configurer Raspbian :

5
TANIT Training & Consulting

- Donner une IP statique à la carte

Par défaut le Raspberry Pi utilise DHCP pour configurer ses interfaces réseau, dont, sur le modèle B, le
port ethernet intégré. Si vous désirez faire la modification pour que le port ethernet ait une adresse IP
statique, voici comment procéder.
Le DHCP pour eth0 est activé dans le fichier /etc/
/etc/[Link]
Ouvrir ce fichier :

sudo
udo nano /etc/[Link]

À la fin de fichier on ajoute les lignes suivantes :

interface eth0
static ip_address=[Link]
static routers=[Link]
static domain_name_servers=[Link]

Note : pour configurer une adresse ip statique pour la connexion à travers le wifi il suffit de recopier ces lignes (toujours
dans le même fichier) et remplacer « eth0 » par « wlan0 ».
Puis enregistrer et quitter (ctrl+x).
Faire un redémarrage:

sudo reboot

- Configuration wifi :

Tout d’abord, nous allons éditer le fichier wpa_supplicant.conf

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

6
TANIT Training & Consulting

Rendez-vous
vous à la fin du fichier et ajoutez la définition de votre box en suivant ce template :

network={
ssid="nomDeLaBox"
psk="cléDeSécurité"
}

Troisième partie Exploration des GPIO

Les GPIO peuvent être utilisées comme sortie ou entrée numérique


numérique.
En sortie (Output), vous pouvez écrire un programme qui active une broche quelconque pour la mettre
en HIGH (active) ou LOW (désactivée).
Placer une broche à l'état HIGH (HAUT) applique une tension de 3.3V sur celle
celle-ci.
Placer
lacer une broche à l'état LOW (BAS) applique une tension de 0V sur celle
celle-ci.
Gestion d’une sortie (LED)

Code :
Montage :
import [Link] as GPIO

import time

[Link](False)

[Link]([Link])

[Link](19,[Link])

while True:

[Link](19,1)

[Link](2)

[Link](19,0)
7
[Link](2)
TANIT Training & Consulting

Exécution :
« Sudo python nom_du_programme.py ».. Pour arrêter « ctrl+c »
Acquisition d’une entrée (bouton poussoir)

Montage :
Code :
import [Link] as GPIO

import time

[Link](False)

[Link]([Link])

[Link](6,[Link])

[Link](19,[Link])

while True:

if([Link](6)==1):

[Link](19,1)

else:

[Link](19,0)

PWM

import [Link] as GPIO


import time
[Link](False)
[Link]([Link])
[Link](26,[Link])
p=[Link](26,50)
[Link](5)
[Link](10)
[Link](2)
[Link](40)
[Link](2)
[Link](80)
[Link](2)
[Link](100)
[Link](2)
[Link]()
[Link]()

8
TANIT Training & Consulting

Exécuter plus d'un programme de contrôle au même temps

Code1 : Code2 :

Exécuter les deux programme en ajoutant le symbole & à la fin de chaque ligne

sudo python [Link] &


sudo python [Link] &

On vous renvoie les informations.

[1] : c'est le numéro du processus en arrière


arrière-plan dans .

2577 : c'est le numéro d'identification général du processus.

Cette information vous permet de tuer le processus avec kill si nécessaire.

sudo kill 2577


sudo kill 2579

Troisième partie Eclairage à distance


sudo apt-get update

Installer Apache et PHP:

sudo apt-get install apache2

sudo apt-get install php7.3

Installer WiringPi:

sudo apt-get install git-core

9
TANIT Training & Consulting

git clone [Link]


[Link]/wiringpi/wiringpi

cd wiringpi

sudo git pull origin

./build

cd

Tester Wiringpi:

gpio -v

gpio readall

Rendez-vous
vous au dossier racine du serveur Apache:

cd /var/www/html

Supprimez [Link]:

sudo rm –rf [Link]

Créez [Link]:

sudo nano [Link]

<!doctype html>

<html lang="fr">

<head>

<meta charset="utf-8">

<title>Contrôle GPIO</title>

<link rel="stylesheet" type="text/css" href="[Link]">

</head>

<body>

<form action="[Link]" method="post">

<input type="submit" name="executer" value="ON" class="button" id="ON">

<br/>
10
TANIT Training & Consulting

<input type="submit" name="executer" value="OFF" class="button" id="OFF">

</form>

</body>

</html>

Créez [Link]:
sudo nano [Link]
html, body
{
margin: 0;
}
.button
{
border: none;
color: white;
text-align: center;
font-size: 10em;
padding: 25px 25px;
cursor: pointer;
width: 100%;
height: 50vh;
}
#ON
{
background-color: green;
}
#OFF
{
background-color: red;
}

créez [Link]:
sudo nano [Link]
<?php
system("gpio -gg mode 4 out");
if($_POST['executer'] == 'ON')
{
system("gpio -g write 4 1");
}
else
{
system("gpio -g write 4 0");
}
header('Location: [Link]');
');
?>

11
TANIT Training & Consulting

Robotique Le robot est piloté par une carte qui nous permet de commander deux moteurs à
courant continu jusqu'à environ 2A dans le deux sens, ainsi que le changement de leurs
vitesses via le circuit L298.

 Contrôleur de moteur L298

Pin de l’Interface Pin Raspberry pi

IN1 26

IN2 19

IN3 13

IN4 6

La carte à base de L298 peut commander deux moteurs à courant continu simultanément. Le
port d'entrée de commande du moteur A (Courant Continu) est composé de 3 broches IN1,
IN2 et ENA. IN1 et IN2 sont des broches de commande numérique qui sont utilisées pour
commander le sens de rotation du moteur. ENA est habituellement connectée à une sortie
PWM du contrôleur de la carte, ce qui permet de contrôler la vitesse du moteur mais ENA
peut aussi être raccordée à une sortie numérique pour commander
mmander le moteur en simple
marche/arrêt. De même, un second moteur continu peut
peut-être
être raccordé et utilisé
indépendamment du premier grâce aux entrées EN3, EN4, ENB.

12
TANIT Training & Consulting

 Moteur1 :

ENA IN1 IN2 Description


0 X X Arrêt de
moteur
1 1 0 Vers l’Avant

1 0 1 Sens inverse

1 IN1=IN2
IN1=IN2=0 Arrêt du
moteur

 Moteur2 :

ENB IN3 IN4 Description


0 X X Arrêt de moteur

1 1 0 Vers l’avant

1 0 1 Sens inverse

1 IN3=IN4=0 Arrêt du moteur

Quatrième partie Computer vision


Détection de visage et Reconnaissance faciale
L'installation d'OpenCV pour Python :
sudo apt-get install python
python-opencv

sudo apt-get install libcv


libcv-dev libopencv-dev libcv2.4 opencv-doc
opencv

Mettre le dossier 'haarcascade_frontalface_default.xml' dans /home/pi


Créer un dossier ‘dataSet’ et un dossier ‘recognizer’

13
TANIT Training & Consulting

Ecrire le programme suivant qu’on nommera ‘


‘prise’

A chaque fois on ajoute des nouvelles photos il faut changer ‘id=x’


Exécutez le code en tapant : sudo python [Link]

Ecrire le programme suivant qu’on nommera ‘trainer’

14
TANIT Training & Consulting

Exécutez le code en tapant : sudo python [Link]

Ecrire le programme suivant qu’on nommera ‘detector’

Exécutez le code en tapant : sudo python [Link]

15
TANIT Training & Consulting

Reconnaissance d’objets

- Installation de tensorflow
tensorflow(2.1) et opencv(3.4)
- >> sudo -H
H pip3 install --upgrade pip
- >> sudo apt-get
get install openjdk
openjdk-8-jdk
jdk automake autoconf
- >> sudo apt-get
get install curl zip unzip libtool swig libpng libpng-dev
zlib1g-dev pkg-config
config git g++ wget xz xz-utils
- >> sudo apt-get
get install libatlas-base-dev
- Dans le navigateur internet de la carte télécharger la version suivante de tensorflow :
tensorflow-2.1.0-cp37-none
none-linux_armv7l.whl
- et ce depuis le lien suivant : [Link]
on-arm/releases
- Dans le terminal taper:
- >> cd Downloads
- >> ls
- >> pip3 install tensorflow
tensorflow-2.1.0-cp37-none-linux_armv7l.whl
- >> pip3 install scikit-learn==0.21.3
learn==0.21.3
- >> pip3 install opencv-python==[Link]
python==[Link]
- >> sudo apt-get get install libjasper
libjasper-dev
- >> sudo apt-get get install libqtgui4
- >> sudo apt-get get install python3
python3-pyqt5
- >>sudo apt-get
get install libqt4
libqt4-test

Créer un dossier nommé images_bouteilles dans lequel mettre des photos quelconques et
des photos de l’objet qu’on désire reconnaitre.

Faire l’entrainement en utilisant le code [Link]

Procéder à la reconnaissance en utilisant le code lire_paquet

16

Vous aimerez peut-être aussi