SlideShare una empresa de Scribd logo
1 de 20
Projet pédagogique robotique
• Conception d'un robot motorisé avec pinces, capteurs pour éviter
les obstacles (capteur ultrason motorisé), avec commandes en manuel
grâce à une télécommande
• Méthode : conception progressive pour parvenir au résultat
• 3 éléments essentiels : les aspects mécaniques (en complément du
Prototype initial, d'autres pièces ont été intégrées) ; la nature des
capteurs (par contact, infrarouge, ultrason) ; la programmation
informatique
Objectifs
Le microcontroleur
Le microcontroleur constitue le cœur du
système. Les informations provenant des
capteurs y sont traités. Il fournit en retour les
ordres pour actionner le robot ou allumer des
états de commande
Sortie câble
USB ordinateur
microcontroleur
Plaquette recevant les câbles et composants
(capteurs, résistances ..)
Câble reliant la plaquette à l'ordinateur
Câbles permettant de relier les points de branchement de la
plaquette aux ports entrée/sortie du microcontroleur
(barrette noire au centre)
L'interface sur le PC
commandes
Programmes déjà
produits et
à envoyer au robot via le
câble USB
Programme en
cours d'écriture
Premiers pas : test LED (diodes)
Plaquette sur le robot
' Robotics with the Boe-Bot – LED1.bs2
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "LED 1 et 2 éteintes et allumées"
DO
HIGH 12
PAUSE 500
LOW 12
PAUSE 500
HIGH 13
PAUSE 500
LOW 13
PAUSE 500
LOOP
Séquence d’allumage des LED
Code informatique résultant
Allumer LED sur port 12
durant 500ms
Allumer LED sur port 13
durant 500ms
éteindre LED sur port 12
durant 500ms
éteindre LED sur port 13
durant 500ms
Déplacement du robot (réglage)
DO
PULSOUT 12, 750
PAUSE 20
LOOP
Le robot se déplace grâce à 2 servomoteurs actionnés par des signaux électriques
modulés en largeur d’impulsion. Au préalable, ces servomoteurs doivent être calibrés.
Câblage sur la plaquette
Réglage consistant à stopper le mouvement
Envoi du signal de référence pour calibrer le servomoteur
Code informatique correspondant
Boucle pour répéter la trame du signal
Impulsion de 1,5 ms sur port 12
(1 impulsion = 2 µ sec)
Palier bas de 20 ms
Déplacement du robot (1)
' Robotics with the Boe-Bot – ServoP13Clockwise.bs2
' Run the servo connected to P13 at full speed clockwise.
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "Moteur sens horaire!"
DO
PULSOUT 13, 650
PAUSE 20
LOOP
Le moteur tourne dans le sens horaire
Le moteur tourne dans le sens horaire inverse
Traduction informatique
' Robotics with the Boe-Bot – ServoP13Clockwise.bs2
' Run the servo connected to P13 at full speed clockwise.
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "Moteur sens horaire!"
DO
PULSOUT 13, 850
PAUSE 20
LOOP
Traduction informatique
On peut donc combiner ces 2 moteurs et les associer chacun à une roue pour faire
avancer/reculer le robot, bloquer une des roues, actionner l'autre pour tourner à gauche ou à
droite
Impulsion de 1,3 ms sur port 13
(1 impulsion = 2 µ sec)
Impulsion de 1,7 ms sur port 13
(1 impulsion = 2 µ sec)
Déplacement du robot (2)
Il est possible de moduler la vitesse de déplacement
en faisant varier la largeur d'impulsion du signal de
1,3 ms (vitesse maxi sens horaire) à 1,5 ms (vitesse
nulle) et de 1,7 ms (sens horaire inverse) à 1,5 ms. Si
la temporisation T entre impulsions dépasse 20 ms,
le déplacement est saccadé. Donc T=20 ms est le
paramétrage optimum
On peut déterminer la distance parcourue par
le robot. Ici, à la vitesse maxi (23cm/s), la
distance est déterminée dans la boucle FOR
NEXT (valeur=41 correspondant à 2,22s).
Le robot parcourra alors 51 cm.
On peut donc prédéterminer un processus automatique : le robot avance d'une distance x,
pivote à gauche, recule d'une distance y, pivote à droite et le cycle recommence.
FOR counter = 1 TO 41
PULSOUT 13, 850
PULSOUT 12, 650
PAUSE 20
NEXT
Impulsion roue gauche
Impulsion roue droite
Déplacement du robot (3)
En résumé, on peut donc prédéterminer un processus automatique :
le robot avance d'une distance x / pivote à gauche/ recule d'une distance y /
pivote à droite et le cycle recommence si on inscrit la séquence dans une boucle.
On peut aussi décrire une séquence plus compliquée, dans la mémoire du
microcontroleur !
Mais quid de la situation si un obstacle survient !
Capteurs mécaniques « moustaches » (1)
Les 2 moustaches agissent comme de simples interrupteurs mécaniques : un obstacle
touché par une moustache ferme le contact et provoque le changement d’état de
l’entrée sur laquelle elle est reliée. On peut alors programmer le robot en fonction de
l'état de ces contacts : tourner à droite si la moustache gauche est sollicitée. L'inverse
pour la moustache droite. Si les 2 moustaches sont sollicitée, le robot recule et assure 2
rotation gauche de 90° pour faire demi tour.
Capteurs mécaniques « moustaches » (2)
' {$STAMP BS2}
' {$PBASIC 2.5}
DEBUG "test des moustaches"
pulse VAR Byte
FREQOUT 4,2000,3000
DO
IF (IN5=0) AND (IN7=0) THEN
'arrière et demi tour
GOSUB arriere
GOSUB gauche
GOSUB gauche
ELSEIF (IN5=0) THEN
'arrière et droite
GOSUB arriere
GOSUB droite
ELSEIF (IN7=0) THEN
'arriere et gauche
GOSUB arriere
GOSUB gauche
ELSE
'continue
GOSUB avant
ENDIF
LOOP
Programme principal
avant:
PULSOUT 13,850
PULSOUT 12,650
PAUSE 20
RETURN
gauche:
FOR pulse=1 TO 15
PULSOUT 13,650
PULSOUT 12,650
PAUSE 20
NEXT
RETURN
droite:
FOR pulse=1 TO 15
PULSOUT 13,850
PULSOUT 12,850
PAUSE 20
NEXT
RETURN
arriere:
FOR pulse=1 TO 40
PULSOUT 13,650
PULSOUT 12,850
PAUSE 20
NEXT
RETURN
Sous-programmes
Buzzer (départ)
Moustaches gauche et droite sollicitées
Moustache gauche sollicitée
Moustache droite sollicitée
Aucune sollicitation (poursuite avance)
Détection d'obstacle par infrarouge(1)
Principe : une source émet de la lumière infrarouge vers un objet et
un récepteur analyse les ondes réfléchies pour en déduire la distance
à L'objet
Détection d'obstacle par infrarouge(2)
' {$STAMP BS2}
' {$PBASIC 2.5}
irDetectionGauche VAR Bit
irDetectionDroite VAR Bit
DO
FREQOUT 8, 1, 38500
irDetectionGauche = IN9
FREQOUT 2, 1, 38500
irDetectionDroite = IN0
DEBUG HOME, "irDectectionGauche = ", BIN1 irDetectionGauche
DEBUG CR , "irDectectionDroite = ", BIN1 irDetectionDroite
PAUSE 100
récepteurs
émetteurs
Émission infrarouge 38,5 Khz port 8 (gauche)
Réception détecteur gauche port 9
Émission infrarouge 38,5 Khz port 2 (droit)
Réception détecteur droit port 0
Lecture du résultat (0 ou 1 suivant l'état de réception du signal sur
chaque récepteur)
Détection d'obstacle par infrarouge(3)
On peut construire le même type de programme qu'avec les capteurs « moustaches »
en fonction de l'état des récepteurs infrarouges
DO
FREQOUT 8, 1, 38500 ' Store IR detection values in
irDetectLeft = IN9 ' recueil signal à gauche
FREQOUT 2, 1, 38500
irDetectRight = IN0 ' recueil signal à droite
'les 2 détecteurs sont sollicités
IF (irDetectLeft = 0) AND (irDetectRight = 0) THEN
GOSUB Back_Up ' recul du robot
GOSUB Turn_Left ' demi-tour
GOSUB Turn_Left
ELSEIF (irDetectLeft = 0) THEN ' détecteur gauche sollicité
GOSUB Back_Up ' recul
GOSUB Turn_Right 'pivote à droite
ELSEIF (irDetectRight = 0) THEN ' détecteur droit sollicité
GOSUB Back_Up ' recul
GOSUB Turn_Left 'pivote à gauche
ELSE ' ne détecte rien, le robot avance
GOSUB Forward_Pulse ' avance
ENDIF ' retour au début
LOOP
Détection ultrason
Principe physique
Câblage sur port 15
CmConstant CON 2260
cmDistance VAR Word
time VAR Word
DO
PULSOUT 15, 5
PULSIN 15, 1, time
cmDistance = cmConstant ** time
DEBUG HOME, DEC3 cmDistance, " cm"
PAUSE 100
LOOP
Émission du signal
Calcul de la distance
Recueil écho
Affichage du résultat
Code informatique correspondant
Télécommande(1)
Jusque maintenant le robot était livré à lui même sans contrôle direct de la part de
l'utilisateur. Doté de capteurs et d’une séquence prédéterminée, il pouvait évoluer par
lui-même de manière autonome.
La télécommande est un équipement qui permet de prendre le contrôle en direct du
robot.
Télécommande(2)
Le signal envoyé par la
télécommande au récepteur
infrarouge du robot possède
une structure précise qui
peut être analysée par le
microcontroleur. On peut
ainsi savoir à tout moment
quelle touche est appuyée
Et encore bien d'autres capteurs !
Le robot peut aussi être équipé de bien d’autres capteurs : voici quelques exemples
Détecteur de CO (monoxyde carbone),
CH4 (méthane), C2H5OH (alcool), LPG
(propane)
Gyroscope et température
altimètre
GPS
Pression atmosphérique Détecteur d’humidité
Pinces
Le robot peut être équipé de pinces
à l’avant pour prendre de petits objets.
Ces pinces sont actionnées par un servomoteur
situé à l’arrière du robot. Servomoteur et
pinces sont reliés par une tringle en laiton
passant sous la carte électronique.
L’usage de la télécommande est fortement
recommandé pour utiliser ce dispositif
à distance.
Servomoteur arrière Tringle de liaison
Projet final : intégration de l’ensemble des
éléments
Et maintenant place à la démonstration !
Récepteur infrarouge et télécommande
Capteur ultrason monté sur servomoteur
pour un balayage grand champ
pinces
Personnalisation avec pièces de mécanno
+ ajout seconde plaque d’essais

Más contenido relacionado

La actualidad más candente

PFE_Presentation
PFE_PresentationPFE_Presentation
PFE_Presentation
Brahim Sana
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Riadh K.
 
Conception, automatisation et supervision d’une machine d’assemblage connec...
  Conception, automatisation et supervision d’une machine d’assemblage connec...  Conception, automatisation et supervision d’une machine d’assemblage connec...
Conception, automatisation et supervision d’une machine d’assemblage connec...
Hamza Jmili
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Sofien Benrhouma
 

La actualidad más candente (20)

Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site Web
 
présentation soutenance PFE 2016
présentation soutenance PFE 2016présentation soutenance PFE 2016
présentation soutenance PFE 2016
 
SCADA Labview PLC TIA portal v13
SCADA Labview PLC TIA portal v13SCADA Labview PLC TIA portal v13
SCADA Labview PLC TIA portal v13
 
l'Intelligence Artificielle Jean-Antoine Moreau
l'Intelligence Artificielle Jean-Antoine Moreaul'Intelligence Artificielle Jean-Antoine Moreau
l'Intelligence Artificielle Jean-Antoine Moreau
 
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...
 
PFE_Report
PFE_ReportPFE_Report
PFE_Report
 
PFE_Presentation
PFE_PresentationPFE_Presentation
PFE_Presentation
 
Présentation PFE
Présentation PFEPrésentation PFE
Présentation PFE
 
Rapport
RapportRapport
Rapport
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
 
Présentation python
Présentation pythonPrésentation python
Présentation python
 
Soutenance projet LABVIEW
Soutenance projet LABVIEWSoutenance projet LABVIEW
Soutenance projet LABVIEW
 
Conception, automatisation et supervision d’une machine d’assemblage connec...
  Conception, automatisation et supervision d’une machine d’assemblage connec...  Conception, automatisation et supervision d’une machine d’assemblage connec...
Conception, automatisation et supervision d’une machine d’assemblage connec...
 
Conception et developpement d'un site web pour la suggestion et notification ...
Conception et developpement d'un site web pour la suggestion et notification ...Conception et developpement d'un site web pour la suggestion et notification ...
Conception et developpement d'un site web pour la suggestion et notification ...
 
Rapport Projet Application Web De Domotique Arduino - Liotard Roulleau
Rapport Projet Application Web De Domotique Arduino - Liotard RoulleauRapport Projet Application Web De Domotique Arduino - Liotard Roulleau
Rapport Projet Application Web De Domotique Arduino - Liotard Roulleau
 
Présentation PFE Computer Vision
Présentation PFE Computer VisionPrésentation PFE Computer Vision
Présentation PFE Computer Vision
 
Rapport de projet de conception et de développement
Rapport de projet de conception et de développementRapport de projet de conception et de développement
Rapport de projet de conception et de développement
 
Présentation du pfa
Présentation du pfaPrésentation du pfa
Présentation du pfa
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
 

Similar a Présentation robotique

SEND SMS WITHOUT USING AT COMMANDS
SEND SMS WITHOUT USING AT COMMANDSSEND SMS WITHOUT USING AT COMMANDS
SEND SMS WITHOUT USING AT COMMANDS
Khalil Chortani
 
Automate programmable industriepar_www.cours-electromecanique.com_
Automate programmable industriepar_www.cours-electromecanique.com_Automate programmable industriepar_www.cours-electromecanique.com_
Automate programmable industriepar_www.cours-electromecanique.com_
med benchaib
 
PréSentation Tsx37
PréSentation Tsx37PréSentation Tsx37
PréSentation Tsx37
youri59490
 
Programmation En Langage Pl7 2
Programmation En Langage Pl7 2Programmation En Langage Pl7 2
Programmation En Langage Pl7 2
youri59490
 

Similar a Présentation robotique (20)

Présentation de l andronessness
Présentation de l andronessnessPrésentation de l andronessness
Présentation de l andronessness
 
SEND SMS WITHOUT USING AT COMMANDS
SEND SMS WITHOUT USING AT COMMANDSSEND SMS WITHOUT USING AT COMMANDS
SEND SMS WITHOUT USING AT COMMANDS
 
Presentation automatisme
Presentation automatismePresentation automatisme
Presentation automatisme
 
Presentation automatisme
Presentation automatismePresentation automatisme
Presentation automatisme
 
Automate programmable industriepar_www.cours-electromecanique.com_
Automate programmable industriepar_www.cours-electromecanique.com_Automate programmable industriepar_www.cours-electromecanique.com_
Automate programmable industriepar_www.cours-electromecanique.com_
 
PréSentation Tsx37
PréSentation Tsx37PréSentation Tsx37
PréSentation Tsx37
 
Rapport voiture radiocommandée
Rapport voiture radiocommandéeRapport voiture radiocommandée
Rapport voiture radiocommandée
 
Projet ima4 descamd_michel (1)
Projet ima4 descamd_michel (1)Projet ima4 descamd_michel (1)
Projet ima4 descamd_michel (1)
 
Master 2 presentation statge m2
Master 2 presentation statge m2Master 2 presentation statge m2
Master 2 presentation statge m2
 
Automatisme_cours.ppt
Automatisme_cours.pptAutomatisme_cours.ppt
Automatisme_cours.ppt
 
Rapport de sujet BTS 1.0
Rapport de sujet BTS 1.0Rapport de sujet BTS 1.0
Rapport de sujet BTS 1.0
 
Automate--Programmable--Industrielle.ppt
Automate--Programmable--Industrielle.pptAutomate--Programmable--Industrielle.ppt
Automate--Programmable--Industrielle.ppt
 
Programmation En Langage Pl7 2
Programmation En Langage Pl7 2Programmation En Langage Pl7 2
Programmation En Langage Pl7 2
 
Cours formation automate
Cours formation automateCours formation automate
Cours formation automate
 
Presentation_Roni
Presentation_RoniPresentation_Roni
Presentation_Roni
 
General
GeneralGeneral
General
 
3 actionneurs de régulation control valve
3 actionneurs de régulation control valve3 actionneurs de régulation control valve
3 actionneurs de régulation control valve
 
3 actionneurs de régulation control valve
3 actionneurs de régulation control valve3 actionneurs de régulation control valve
3 actionneurs de régulation control valve
 
[APP] Presentation finale - Electronique
[APP] Presentation finale - Electronique[APP] Presentation finale - Electronique
[APP] Presentation finale - Electronique
 
Ateliers de base en Arduino (Carte Arduino Uno, Capteurs, Actionneurs))
Ateliers de base en Arduino (Carte Arduino Uno, Capteurs, Actionneurs))Ateliers de base en Arduino (Carte Arduino Uno, Capteurs, Actionneurs))
Ateliers de base en Arduino (Carte Arduino Uno, Capteurs, Actionneurs))
 

Último

Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdf
ssuserc72852
 
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
Faga1939
 

Último (13)

Evaluación Alumnos de Ecole Victor Hugo
Evaluación Alumnos de Ecole  Victor HugoEvaluación Alumnos de Ecole  Victor Hugo
Evaluación Alumnos de Ecole Victor Hugo
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprises
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
Computer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptxComputer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptx
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film français
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdf
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdf
 
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfCOURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film français
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne Fontaine
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
L'ÉVOLUTION DE L'ÉDUCATION AU BRÉSIL À TRAVERS L'HISTOIRE ET LES EXIGENCES DE...
 

Présentation robotique

  • 2. • Conception d'un robot motorisé avec pinces, capteurs pour éviter les obstacles (capteur ultrason motorisé), avec commandes en manuel grâce à une télécommande • Méthode : conception progressive pour parvenir au résultat • 3 éléments essentiels : les aspects mécaniques (en complément du Prototype initial, d'autres pièces ont été intégrées) ; la nature des capteurs (par contact, infrarouge, ultrason) ; la programmation informatique Objectifs
  • 3. Le microcontroleur Le microcontroleur constitue le cœur du système. Les informations provenant des capteurs y sont traités. Il fournit en retour les ordres pour actionner le robot ou allumer des états de commande Sortie câble USB ordinateur microcontroleur Plaquette recevant les câbles et composants (capteurs, résistances ..) Câble reliant la plaquette à l'ordinateur Câbles permettant de relier les points de branchement de la plaquette aux ports entrée/sortie du microcontroleur (barrette noire au centre)
  • 4. L'interface sur le PC commandes Programmes déjà produits et à envoyer au robot via le câble USB Programme en cours d'écriture
  • 5. Premiers pas : test LED (diodes) Plaquette sur le robot ' Robotics with the Boe-Bot – LED1.bs2 ' {$STAMP BS2} ' {$PBASIC 2.5} DEBUG "LED 1 et 2 éteintes et allumées" DO HIGH 12 PAUSE 500 LOW 12 PAUSE 500 HIGH 13 PAUSE 500 LOW 13 PAUSE 500 LOOP Séquence d’allumage des LED Code informatique résultant Allumer LED sur port 12 durant 500ms Allumer LED sur port 13 durant 500ms éteindre LED sur port 12 durant 500ms éteindre LED sur port 13 durant 500ms
  • 6. Déplacement du robot (réglage) DO PULSOUT 12, 750 PAUSE 20 LOOP Le robot se déplace grâce à 2 servomoteurs actionnés par des signaux électriques modulés en largeur d’impulsion. Au préalable, ces servomoteurs doivent être calibrés. Câblage sur la plaquette Réglage consistant à stopper le mouvement Envoi du signal de référence pour calibrer le servomoteur Code informatique correspondant Boucle pour répéter la trame du signal Impulsion de 1,5 ms sur port 12 (1 impulsion = 2 µ sec) Palier bas de 20 ms
  • 7. Déplacement du robot (1) ' Robotics with the Boe-Bot – ServoP13Clockwise.bs2 ' Run the servo connected to P13 at full speed clockwise. ' {$STAMP BS2} ' {$PBASIC 2.5} DEBUG "Moteur sens horaire!" DO PULSOUT 13, 650 PAUSE 20 LOOP Le moteur tourne dans le sens horaire Le moteur tourne dans le sens horaire inverse Traduction informatique ' Robotics with the Boe-Bot – ServoP13Clockwise.bs2 ' Run the servo connected to P13 at full speed clockwise. ' {$STAMP BS2} ' {$PBASIC 2.5} DEBUG "Moteur sens horaire!" DO PULSOUT 13, 850 PAUSE 20 LOOP Traduction informatique On peut donc combiner ces 2 moteurs et les associer chacun à une roue pour faire avancer/reculer le robot, bloquer une des roues, actionner l'autre pour tourner à gauche ou à droite Impulsion de 1,3 ms sur port 13 (1 impulsion = 2 µ sec) Impulsion de 1,7 ms sur port 13 (1 impulsion = 2 µ sec)
  • 8. Déplacement du robot (2) Il est possible de moduler la vitesse de déplacement en faisant varier la largeur d'impulsion du signal de 1,3 ms (vitesse maxi sens horaire) à 1,5 ms (vitesse nulle) et de 1,7 ms (sens horaire inverse) à 1,5 ms. Si la temporisation T entre impulsions dépasse 20 ms, le déplacement est saccadé. Donc T=20 ms est le paramétrage optimum On peut déterminer la distance parcourue par le robot. Ici, à la vitesse maxi (23cm/s), la distance est déterminée dans la boucle FOR NEXT (valeur=41 correspondant à 2,22s). Le robot parcourra alors 51 cm. On peut donc prédéterminer un processus automatique : le robot avance d'une distance x, pivote à gauche, recule d'une distance y, pivote à droite et le cycle recommence. FOR counter = 1 TO 41 PULSOUT 13, 850 PULSOUT 12, 650 PAUSE 20 NEXT Impulsion roue gauche Impulsion roue droite
  • 9. Déplacement du robot (3) En résumé, on peut donc prédéterminer un processus automatique : le robot avance d'une distance x / pivote à gauche/ recule d'une distance y / pivote à droite et le cycle recommence si on inscrit la séquence dans une boucle. On peut aussi décrire une séquence plus compliquée, dans la mémoire du microcontroleur ! Mais quid de la situation si un obstacle survient !
  • 10. Capteurs mécaniques « moustaches » (1) Les 2 moustaches agissent comme de simples interrupteurs mécaniques : un obstacle touché par une moustache ferme le contact et provoque le changement d’état de l’entrée sur laquelle elle est reliée. On peut alors programmer le robot en fonction de l'état de ces contacts : tourner à droite si la moustache gauche est sollicitée. L'inverse pour la moustache droite. Si les 2 moustaches sont sollicitée, le robot recule et assure 2 rotation gauche de 90° pour faire demi tour.
  • 11. Capteurs mécaniques « moustaches » (2) ' {$STAMP BS2} ' {$PBASIC 2.5} DEBUG "test des moustaches" pulse VAR Byte FREQOUT 4,2000,3000 DO IF (IN5=0) AND (IN7=0) THEN 'arrière et demi tour GOSUB arriere GOSUB gauche GOSUB gauche ELSEIF (IN5=0) THEN 'arrière et droite GOSUB arriere GOSUB droite ELSEIF (IN7=0) THEN 'arriere et gauche GOSUB arriere GOSUB gauche ELSE 'continue GOSUB avant ENDIF LOOP Programme principal avant: PULSOUT 13,850 PULSOUT 12,650 PAUSE 20 RETURN gauche: FOR pulse=1 TO 15 PULSOUT 13,650 PULSOUT 12,650 PAUSE 20 NEXT RETURN droite: FOR pulse=1 TO 15 PULSOUT 13,850 PULSOUT 12,850 PAUSE 20 NEXT RETURN arriere: FOR pulse=1 TO 40 PULSOUT 13,650 PULSOUT 12,850 PAUSE 20 NEXT RETURN Sous-programmes Buzzer (départ) Moustaches gauche et droite sollicitées Moustache gauche sollicitée Moustache droite sollicitée Aucune sollicitation (poursuite avance)
  • 12. Détection d'obstacle par infrarouge(1) Principe : une source émet de la lumière infrarouge vers un objet et un récepteur analyse les ondes réfléchies pour en déduire la distance à L'objet
  • 13. Détection d'obstacle par infrarouge(2) ' {$STAMP BS2} ' {$PBASIC 2.5} irDetectionGauche VAR Bit irDetectionDroite VAR Bit DO FREQOUT 8, 1, 38500 irDetectionGauche = IN9 FREQOUT 2, 1, 38500 irDetectionDroite = IN0 DEBUG HOME, "irDectectionGauche = ", BIN1 irDetectionGauche DEBUG CR , "irDectectionDroite = ", BIN1 irDetectionDroite PAUSE 100 récepteurs émetteurs Émission infrarouge 38,5 Khz port 8 (gauche) Réception détecteur gauche port 9 Émission infrarouge 38,5 Khz port 2 (droit) Réception détecteur droit port 0 Lecture du résultat (0 ou 1 suivant l'état de réception du signal sur chaque récepteur)
  • 14. Détection d'obstacle par infrarouge(3) On peut construire le même type de programme qu'avec les capteurs « moustaches » en fonction de l'état des récepteurs infrarouges DO FREQOUT 8, 1, 38500 ' Store IR detection values in irDetectLeft = IN9 ' recueil signal à gauche FREQOUT 2, 1, 38500 irDetectRight = IN0 ' recueil signal à droite 'les 2 détecteurs sont sollicités IF (irDetectLeft = 0) AND (irDetectRight = 0) THEN GOSUB Back_Up ' recul du robot GOSUB Turn_Left ' demi-tour GOSUB Turn_Left ELSEIF (irDetectLeft = 0) THEN ' détecteur gauche sollicité GOSUB Back_Up ' recul GOSUB Turn_Right 'pivote à droite ELSEIF (irDetectRight = 0) THEN ' détecteur droit sollicité GOSUB Back_Up ' recul GOSUB Turn_Left 'pivote à gauche ELSE ' ne détecte rien, le robot avance GOSUB Forward_Pulse ' avance ENDIF ' retour au début LOOP
  • 15. Détection ultrason Principe physique Câblage sur port 15 CmConstant CON 2260 cmDistance VAR Word time VAR Word DO PULSOUT 15, 5 PULSIN 15, 1, time cmDistance = cmConstant ** time DEBUG HOME, DEC3 cmDistance, " cm" PAUSE 100 LOOP Émission du signal Calcul de la distance Recueil écho Affichage du résultat Code informatique correspondant
  • 16. Télécommande(1) Jusque maintenant le robot était livré à lui même sans contrôle direct de la part de l'utilisateur. Doté de capteurs et d’une séquence prédéterminée, il pouvait évoluer par lui-même de manière autonome. La télécommande est un équipement qui permet de prendre le contrôle en direct du robot.
  • 17. Télécommande(2) Le signal envoyé par la télécommande au récepteur infrarouge du robot possède une structure précise qui peut être analysée par le microcontroleur. On peut ainsi savoir à tout moment quelle touche est appuyée
  • 18. Et encore bien d'autres capteurs ! Le robot peut aussi être équipé de bien d’autres capteurs : voici quelques exemples Détecteur de CO (monoxyde carbone), CH4 (méthane), C2H5OH (alcool), LPG (propane) Gyroscope et température altimètre GPS Pression atmosphérique Détecteur d’humidité
  • 19. Pinces Le robot peut être équipé de pinces à l’avant pour prendre de petits objets. Ces pinces sont actionnées par un servomoteur situé à l’arrière du robot. Servomoteur et pinces sont reliés par une tringle en laiton passant sous la carte électronique. L’usage de la télécommande est fortement recommandé pour utiliser ce dispositif à distance. Servomoteur arrière Tringle de liaison
  • 20. Projet final : intégration de l’ensemble des éléments Et maintenant place à la démonstration ! Récepteur infrarouge et télécommande Capteur ultrason monté sur servomoteur pour un balayage grand champ pinces Personnalisation avec pièces de mécanno + ajout seconde plaque d’essais