SlideShare une entreprise Scribd logo
1  sur  23
INTERNET OF THINGS
WORKSHOP - RASPBERRY PI
DES ATELIERS DE TRAVAIL SUR LES OBJETS CONNECTÉS ET LE
RASPBERRY PI
#ITRONICS_IOT_WORKSHOP
PRISE EN MAIN DU
RASPBERRY PI
LES BASES À SAVOIR
C’EST QUOI “GPIO”
GPIO signifie General Purpose Input Output.
COMBIEN DE GPIO
Le raspberry pi 1 possède 26 pins GPIO.
Le raspberry pi 2 et3 possède 40 pins GPIO.
CONFIGURATION
Voici à quoi cela ressemble.
LA BIBLIOTHEQUE GPIO
Le raspberry pi accède aux ports d’entrée sortie grace à la
bibliothèque GPIO.
IMPORTER GPIO
Import Rpi.GPIO as GPIO
NB: executer le programme en tant qu’administrateur. ( sudo)
PIN NUMBERING MODES
- BOARD: liste les pin selon leur ordre sur la carte.
- BCM: Numerotation fonctionnelle dans un rectangle près de la pin.
- Elle est toujours précédée de GPIO. Exemple: GPIO14
BOARD NUMBERING
- Voici la syntaxe utilisée pour cela:
- GPIO.setup(GPIO.BOARD)
BCM NUMBERING
- Voici la syntaxe utilisée pour cela:
- GPIO.setup(GPIO.BCM)
- Change en fonction de la version du Raspberry pi.
CHOIX DE LA FONCTION
GPIO.setup(13, GPIO.OUT)
Deux choix possible: IN et OUT
Equivalent de pinMode() avec Arduino
ECRITURE SUR UNE PIN
GPIO.output(13, True)
Deux choix possible: True et False
Equivalent de digitalWrite() avec Arduino
ENFIN LE CLIGNOTEMENT DE
LED
Utilisons les connaissances
acquises sur GPIO pour
faire clignoter un LED.
CLIGONTEMENT DE LED
Import Rpi.GPIO as GPIO
Import time
GPIO.setmode(GPIO.BOARD)
GPIO.output(13, GPIO.OUT)
While True:
GPIO.output(13, True)
time.sleep(1)
GPIO.output(13, False)
time.sleep(1)
PUIS, UN CAPTEUR
Essayons actuellement de
lire la valeur sur une pin.
LIRE SUR UNE PIN
GPIO.input(13)
Retourne la valeur logique sur la pin: 13
Equivalent de digitalRead() avec Arduino
NB: La lecture ne se fait pas sur des données analogiques.
INTERRUPTEUR DE LED
Import Rpi.GPIO as GPIO
Import time
GPIO.setmode(GPIO.BOARD)
GPIO.output(13, GPIO.OUT)
While True:
if(GPIO.input(8)==True):
GPIO.output(13, True)
else:
GPIO.output(13, False)
ENFIN, UNE PWM
Gênerons un signal
analogique grâce à la PWM.
INITIALISATION PWM
Pwm_obj = GPIO.PWM(18, 400)
Le premier paramètre est la pin: 18
Le second paramètre est la frequence: 400
NB: Nous pouvons ainsi simuler la manipulation des données
analogiques.
GÉNÉRER LE SIGNAL
Pwm_obj.start(100)
Débute ainsi la génération du signal
Le paramètre est le ‘duty cycle’ ou temps de travail: 0 à 100
NB: C’est le temps pendant lequel le signal est à l’état HAUT.
CHANGER LE TEMPS DE
TRAVAIL
Pwm_obj.changeDutyCycle(50)
Permet d’assigner un nouvelle valeur au temps de travail
NB: Elle permet de modeler le signal en cours de fonctionnement.
DÉMO PWM
Essayez les codes précédents pour varier la luminosité d’une LED,
THANKS FOR YOUR
KIND ATTENTION !!!
A
suivre…

Contenu connexe

Plus de Romaric Saounde Tsopnang

Plus de Romaric Saounde Tsopnang (20)

Aq switches2 - Beginner
Aq   switches2 - BeginnerAq   switches2 - Beginner
Aq switches2 - Beginner
 
Aq les conditionnelles - Débutant
Aq   les conditionnelles - DébutantAq   les conditionnelles - Débutant
Aq les conditionnelles - Débutant
 
Ap les boucles - Débutants
Ap   les boucles - DébutantsAp   les boucles - Débutants
Ap les boucles - Débutants
 
Ap loops2 - Beginner
Ap   loops2 - BeginnerAp   loops2 - Beginner
Ap loops2 - Beginner
 
Ao light nxt2 - Beginner
Ao   light nxt2 - BeginnerAo   light nxt2 - Beginner
Ao light nxt2 - Beginner
 
An capteur de couleur - Débutant
An   capteur de couleur - DébutantAn   capteur de couleur - Débutant
An capteur de couleur - Débutant
 
An color Sensor - Beginner
An   color Sensor - BeginnerAn   color Sensor - Beginner
An color Sensor - Beginner
 
Al capteur tactile - Débutant
Al   capteur tactile - DébutantAl   capteur tactile - Débutant
Al capteur tactile - Débutant
 
Al touch2 - Beginner
Al   touch2 - BeginnerAl   touch2 - Beginner
Al touch2 - Beginner
 
Ak custom imagessounds2 - Beginner
Ak   custom imagessounds2 - BeginnerAk   custom imagessounds2 - Beginner
Ak custom imagessounds2 - Beginner
 
Ak image et son standard - Débutant
Ak   image et son standard - DébutantAk   image et son standard - Débutant
Ak image et son standard - Débutant
 
Aj display2 - Beginner
Aj   display2 - BeginnerAj   display2 - Beginner
Aj display2 - Beginner
 
Aj affichage - Débutant
Aj   affichage - DébutantAj   affichage - Débutant
Aj affichage - Débutant
 
Ai turning2 - Beginner
Ai   turning2 - BeginnerAi   turning2 - Beginner
Ai turning2 - Beginner
 
Ai virages - Débutant
Ai   virages - DébutantAi   virages - Débutant
Ai virages - Débutant
 
Ah pseudocode2 - Beginner
Ah   pseudocode2 - BeginnerAh   pseudocode2 - Beginner
Ah pseudocode2 - Beginner
 
Ah pseudocode-fr - Débutant
Ah   pseudocode-fr - DébutantAh   pseudocode-fr - Débutant
Ah pseudocode-fr - Débutant
 
Ag moving straight2 - Beginner
Ag   moving straight2 - BeginnerAg   moving straight2 - Beginner
Ag moving straight2 - Beginner
 
Ag deplacement droit - Débutant
Ag   deplacement droit - DébutantAg   deplacement droit - Débutant
Ag deplacement droit - Débutant
 
Af port view2 - Beginner
Af   port view2 - BeginnerAf   port view2 - Beginner
Af port view2 - Beginner
 

2- The iTronics Internet of things Workshop 27-05-2017 - GPIO

  • 1. INTERNET OF THINGS WORKSHOP - RASPBERRY PI DES ATELIERS DE TRAVAIL SUR LES OBJETS CONNECTÉS ET LE RASPBERRY PI #ITRONICS_IOT_WORKSHOP
  • 2. PRISE EN MAIN DU RASPBERRY PI LES BASES À SAVOIR
  • 3. C’EST QUOI “GPIO” GPIO signifie General Purpose Input Output.
  • 4. COMBIEN DE GPIO Le raspberry pi 1 possède 26 pins GPIO. Le raspberry pi 2 et3 possède 40 pins GPIO.
  • 5. CONFIGURATION Voici à quoi cela ressemble.
  • 6. LA BIBLIOTHEQUE GPIO Le raspberry pi accède aux ports d’entrée sortie grace à la bibliothèque GPIO.
  • 7. IMPORTER GPIO Import Rpi.GPIO as GPIO NB: executer le programme en tant qu’administrateur. ( sudo)
  • 8. PIN NUMBERING MODES - BOARD: liste les pin selon leur ordre sur la carte. - BCM: Numerotation fonctionnelle dans un rectangle près de la pin. - Elle est toujours précédée de GPIO. Exemple: GPIO14
  • 9. BOARD NUMBERING - Voici la syntaxe utilisée pour cela: - GPIO.setup(GPIO.BOARD)
  • 10. BCM NUMBERING - Voici la syntaxe utilisée pour cela: - GPIO.setup(GPIO.BCM) - Change en fonction de la version du Raspberry pi.
  • 11. CHOIX DE LA FONCTION GPIO.setup(13, GPIO.OUT) Deux choix possible: IN et OUT Equivalent de pinMode() avec Arduino
  • 12. ECRITURE SUR UNE PIN GPIO.output(13, True) Deux choix possible: True et False Equivalent de digitalWrite() avec Arduino
  • 13. ENFIN LE CLIGNOTEMENT DE LED Utilisons les connaissances acquises sur GPIO pour faire clignoter un LED.
  • 14. CLIGONTEMENT DE LED Import Rpi.GPIO as GPIO Import time GPIO.setmode(GPIO.BOARD) GPIO.output(13, GPIO.OUT) While True: GPIO.output(13, True) time.sleep(1) GPIO.output(13, False) time.sleep(1)
  • 15. PUIS, UN CAPTEUR Essayons actuellement de lire la valeur sur une pin.
  • 16. LIRE SUR UNE PIN GPIO.input(13) Retourne la valeur logique sur la pin: 13 Equivalent de digitalRead() avec Arduino NB: La lecture ne se fait pas sur des données analogiques.
  • 17. INTERRUPTEUR DE LED Import Rpi.GPIO as GPIO Import time GPIO.setmode(GPIO.BOARD) GPIO.output(13, GPIO.OUT) While True: if(GPIO.input(8)==True): GPIO.output(13, True) else: GPIO.output(13, False)
  • 18. ENFIN, UNE PWM Gênerons un signal analogique grâce à la PWM.
  • 19. INITIALISATION PWM Pwm_obj = GPIO.PWM(18, 400) Le premier paramètre est la pin: 18 Le second paramètre est la frequence: 400 NB: Nous pouvons ainsi simuler la manipulation des données analogiques.
  • 20. GÉNÉRER LE SIGNAL Pwm_obj.start(100) Débute ainsi la génération du signal Le paramètre est le ‘duty cycle’ ou temps de travail: 0 à 100 NB: C’est le temps pendant lequel le signal est à l’état HAUT.
  • 21. CHANGER LE TEMPS DE TRAVAIL Pwm_obj.changeDutyCycle(50) Permet d’assigner un nouvelle valeur au temps de travail NB: Elle permet de modeler le signal en cours de fonctionnement.
  • 22. DÉMO PWM Essayez les codes précédents pour varier la luminosité d’une LED,
  • 23. THANKS FOR YOUR KIND ATTENTION !!! A suivre…