Académique Documents
Professionnel Documents
Culture Documents
***
***
Ecole Nationale d’Ingénieurs de Bizerte
Ministère de l’Enseignement Supérieur et
de la Recherche Scientifique
Conception d’un
Robot mobile
Encadré par :
Nous remercions également avec la plus grande gratitude, M. Seddik SHIRI et M. Adel
CHEBAB, professeurs à l’Ecole Nationale d’Ingénieurs de Bizerte, qui ont assuré notre
encadrement avec beaucoup d’engagement, d’efficacité et de convivialité. Je les remercie pour
leur entière assistance et patience généreuse qui nous ont permis de mener à bien ce rapport.
Enfin, nous tiens à exprimer nos sincères remerciements et notre profonde reconnaissance
pour les enseignants de l’école nationale d’ingénieurs de Bizerte, pour leur disponibilité à tout
moment, et leurs aides efficaces, en dépit de leurs responsabilités, tout au long de ce projet.
Nous leur exprimons du fond du cœur, notre profonde estime pour toutes leurs qualités
humaines et professionnelles.
ii
Liste des Abréviations
FS : Fonction service
FC : Fonction contrainte
FP : Fonction principale
CV : Cycle de vie
EME : élément du milieu externe
iii
Liste des Figures
Figure I.1 : Véhicule télécommandé par un opérateur ............................................................ 4
Figure. I.2:Véhicule télécommandé au sens de la tâche à réaliser ........................................... 5
Figure I.3 : Véhicule semi- autonome réalisant sans l'aide de l'opérateur ................................ 5
Figure I.4 : Véhicule autonome .............................................................................................. 6
v
Liste des Tableaux
Tableau II.1 : Classes de flexibilité ...................................................................................... 19
Tableau II. 2 : Caractérisation des fonctions de service ........................................................ 20
Tableau II. 3 : Tableau de comparaison des fonctions .......................................................... 21
Tableau II.4 : Fiche technique du module Bluetooth ........................................................... 26
Tableau II.5 : Avantages et inconvénients de la première solution........................................ 27
Tableau II.6 : Avantages et inconvénients de la deuxième solution ..................................... 28
vi
Table des Matières
Introduction ........................................................................................................................... 3
Conclusion ............................................................................................................................ 7
Introduction ........................................................................................................................... 9
vii
I.3.2.1.1 Hypothèse ............................................................................................................. 15
II.1 Solution n°1 : Robot à roues commandé par module BluetoothHC-05 ........................... 26
II.2 Solution n°2 : Robot à Chenilles commandé par module BluetoothHC-05 ..................... 27
II.3 Solution n°3 : Robot à 4 roues commandé par module Wifi intégré (ESP-32)................. 28
Conclusion .......................................................................................................................... 29
Introduction ......................................................................................................................... 31
vii
i
II.PARTIE MECANIQUE ................................................................................................... 37
IV. Le code.......................................................................................................................... 46
Conclusion .......................................................................................................................... 51
ix
Introduction Générale
Ce rapport, qui va mettre en relief notre travail dans le cadre du projet métier pendant
les six mois de notre stage, comporte trois chapitres.
Le premier chapitre fera donc l’objet d’une mise en situation au cours de laquelle on va
présenter d’une manière générale les différents types des robots mobiles afin d’avoir une vision
globale sur le projet. Ensuite, on va énoncer la problématique et la méthodologie adoptées pour
atteindre notre objectif final.
Enfin, le cœur du projet sera présenté dans le dernier chapitre, qui va être consacré à la
conception des différents composants de notre robot.
1
Chapitre I :
Mise en situation
EJ J K
Introduction
Avant d’aborder notre travail, nous présenterons dans un premier temps les différents types des
robots mobiles, puis on traitera en détail la problématique de notre projet et la méthodologie
adoptée qui vont nous clarifier le contexte général de notre travail.
De manière générale, on regroupe sous l’appellation « robots mobiles » l’ensemble des robots
a base mobile, par opposition notamment aux robots manipulateurs. L’usage veut néanmoins
que l’on désigne le plus souvent par ce terme les robots mobiles à roues. Les autres robots
mobiles sont en effet le plus souvent désignés par leur type de locomotion, qu’ils soient
marcheurs, sous-marins ou aériens.
On peut estimer que les robots mobiles à roues constituent le gros des robots mobiles.
Historiquement, leur étude est venue assez tôt, suivant celle des robots manipulateurs, au milieu
des années 70. Leur faible complexité en a fait de bons premiers sujets d’étude pour les
roboticiens intéressés par les systèmes autonomes. Cependant, malgré leur simplicité apparente
(mécanismes plans, à actionneurs linéaires), ces systèmes ont soulevé un grand nombre de
problèmes difficiles. Nombre de ceux-ci ne sont d’ailleurs toujours pas résolus. Ainsi, alors que
les robots manipulateurs se sont aujourd’hui généralisés dans ´ l’industrie, rares sont les
applications industrielles qui utilisent des robots mobiles. Si l’on a vu depuis peu apparaitre
quelques produits manufacturiers (chariots guides) ou grand public (aspirateur),
l’industrialisation de ces systèmes bute sur divers problèmes délicats. Ceux-ci viennent
essentiellement du fait que, contrairement aux robots manipulateurs prévus pour travailler
exclusivement dans des espaces connus et de manière répétitive, les robots mobiles sont
3
EJ J K
destinés à évoluer de manière autonome dans des environnements peu ou pas structurés.
Néanmoins, l’intérêt indéniable de la robotique mobile est d’avoir permis d’augmenter ´
considérablement nos connaissances sur la localisation et la navigation de systèmes `
autonomes. La gamme des problèmes potentiellement soulevés par le plus simple des robots
mobiles a roues en fait un sujet d’étude à part entière et forme une excellente base pour l’étude
de systèmes mobiles plus complexes. [1]
La classification la plus intéressante, et la plus utilisée est selon leur degré d'autonomie. Un
robot mobile autonome est un système automoteur doté de capacités décisionnelles et de
moyens d'acquisition et de traitement de l'information qui lui permettent d'accomplir sous
contrôle humain réduit, un certain nombre de tâches, dans un environnement non complètement
connu. On peut citer quelques types :
Véhicule télécommandé par un opérateur qui lui impose chaque tâche élémentaire
à réaliser.
4
EJ J K
III. Problématique
On distingue sans trop d’ambigüité un certain nombre de problèmes en robotique mobile. Bien
évidemment, l’aspect matériel, qui consiste à choisir et dimensionner aussi bien la structure
mécanique du système que sa motorisation, son alimentation et l’architecture ` informatique de
son système de contrôle-commande apparait comme le premier point à traiter. Le choix de la
structure est souvent effectué parmi un panel de solutions connues et pour lesquelles on a déjà
résolu les problèmes de modélisation, planification et commande. Le choix des actionneurs et
de leur alimentation est généralement assez traditionnel. La plupart des robots mobiles sont
ainsi actionnés par des moteurs électriques à courant continu avec ou sans collecteur, alimentés
par des convertisseurs de puissance fonctionnant sur batterie. De la même façon, les
architectures de contrôle-commande des robots mobiles ne sont pas différentes de celles des
systèmes automatiques ou robotiques plus classiques. On y distingue cependant, dans le cas
général, deux niveaux de spécialisation, propres aux systèmes autonomes : une couche
décisionnelle, qui a en charge la planification et la gestion (séquentielle, temporelle) des
évènements et une couche fonctionnelle, chargée de la génération en temps réel des commandes
des actionneurs. Bien évidemment, l’architecture du robot dépend fortement de l’offre et des
6
EJ J K
Notre objectif à la fin de ce projet est de réaliser la conception d’un robot de surveillance
télécommandé à base de l’Arduino. Et pour atteindre cet objectif on a suivi la méthodologie
suivante :
Conclusion
Ce premier chapitre nous a permis de présenter les différents types des robots mobiles. Ensuite
il nous a aidé à mettre l’accent sur la problématique des robots mobiles et nous a donné une
vision globale sur la méthodologie à suivre dans le reste du rapport. Ce qui introduit le chapitre
suivant qui est consacré au choix de solution.
7
Chapitre II :
Analyse Fonctionnelle
Chapitre II : Analyse fonctionnelle
Introduction
Pour commencer notre étude, dans ce deuxième chapitre on va appliquer la démarche
d’analyse fonctionnelle pour déterminer les fonctions de service de notre robot. Ensuite, on va
réaliser une étude de faisabilité au cours de laquelle on va réaliser une comparaison entre les
différentes solutions présentées pour choisir à la fin la plus appropriée. Et enfin on va
présenter les différents sous-systèmes qui constituent cette solution et les liaisons entre eux.
I. Analyse fonctionnelle
L’A.F est utilisé par les concepteurs dans le but d’optimiser la conception de produits en
s’appuyant sur les fonctions que doit réaliser ce dernier. C’est pour cela qu’au début de notre
étude on va utiliser cette démarche d’A.F.
Entreprise : ENIB.
Objet du projet : Dans le cadre du Projet métier, il nous a été demandé de faire l’étude et la
conception d’un robot mobile à base de l’Arduino.
10
Chapitre II : Analyse fonctionnelle
Contraintes :
Le nom de notre système : notre système est utilisé principalement pour la surveillance
ainsi que pour les opérations dangereuses, notamment lorsque l'intervention et
l'inspection d'une zone sont impossibles à l’homme c’est pour cela qu’ona choisi
comme nom pour ce robot «MonitoriX »
Les frontières et l’environnement de notre système : On va définir toutes les entités en
relation avec notre robot. Ils sont présentés dans la figure suivante.
11
Chapitre II : Analyse fonctionnelle
Esthétique
environnement utilisateur
Robot de
surveillance
Energie
Norme
Critères économiques
L’entourage ordinateur
12
Chapitre II : Analyse fonctionnelle
Un besoin est un désir ou une nécessité éprouvée par l’utilisateur d’un système.
I.3.1.2.1 Hypothèse
Il s’agit d’exprimer d’une manière concise et précise les buts du système en posant les
troisquestions suivantes :
A qui le produit rend-il service ?
1
Utilisateur 2 Dans les zone
publique, maison,
sociétés
3
Robot de
surveillance
13
Chapitre II : Analyse fonctionnelle
Les réponses aux trois questions présentées dans l’étape d’identification du besoin
aboutissent unénoncé du besoin, qui doit être rédigé de la façon suivante :
Alors on valide notre système à moyen terme. Car si au moins une raison ne disparaît pas
moyen terme, le besoin est validé. [3]
L’analyse fonctionnelle du besoin permet d’identifier les relations du système avec son
contexte d’utilisation, afin de dégager des fonctions de service, aptes à satisfaire le besoin.
14
Chapitre II : Analyse fonctionnelle
I.3.2.1.1 Hypothèse
L’A.F.B est une démarche relativement longue, qui conditionne grandement la réussite du
projet et demande donc beaucoup de rigueur et de soin. C’est pour cela qu’on a décidé
d’appliquer cette démarche pour la phase d’utilisation normale qui nous a paru la principale
dans la C.V de notre système.
Pour identifier les fonctions du produit, il faut être capable de décrire son environnement
appelé Milieu Extérieur. Toutes les entités qui sont identifiées comme extérieures au produit
15
Chapitre II : Analyse fonctionnelle
sont appelées Eléments du Milieu Extérieur et ils doivent être définis entièrement avec des
critères objectifs. Cescritères peuvent être utiles dans l’étape de choix de solution à concevoir.
Esthétique
Environnement utilisateur
Robot de
surveillance
Energie
Norme Critères économiques
Ordinateur
L’entourage
Les relations du produit avec son milieu extérieur sont représentées par des
traits.
Chaque trait doit relier le produit à un EME ou bien relier plusieurs EME en
passantpar leproduit
16
Chapitre II : Analyse fonctionnelle
Esthétique
environnement utilisateur
FC6
FC0 Robot de
FC1 surveillance ordinateur
L’entourage FC8
Critères économiques
Les fonctions principales : (F.P) Ils traduisent obligatoirement des actions réaliséespar
le produit. Il peut être nécessaire de mettre en relation plus de deux EME par une seule
fonctionprincipale, mais c’est un cas à éviter dans la mesure du possible.
Les fonctions contraintes : (F.C) Ils traduisent la plupart du temps une adaptation du
produit à son milieu extérieur.
La figure II.7 ci-dessous présente la classification des fonctions de service présenté dans un
diagramme de pieuvre.
17
Chapitre II : Analyse fonctionnelle
Esthétique
environnement utilisateur
FC6
Robot de
FP1 surveillance
FC1 ordinateur
L’entourage FC8
Critères économiques
Pour être pertinentes, les FP et FC doivent pouvoir être énoncées de la façon suivante, qui a
été normalisée par l’AFNOR.
Une fonction se compose d’un verbe ou d’un groupe verbal caractérisant l’action, et des
compléments représentant les éléments du milieu extérieur concernés par la fonction. Le sujet
de laphrase n’apparait pas, mais il revoie toujours au produit.
Les fonctions principales et les fonctions de contraintes sont illustrées comme suit :
18
Chapitre II : Analyse fonctionnelle
Les critères d’appréciation : ils font partie des caractéristiques fonctionnelles, ils
permettent de caractériser les fonctions. Un critère est retenu pour apprécier la manière
dont une fonction est remplie ou une contrainte respectée. C’est grâce à eux que l’on
peut mesurer le degré de satisfaction d’une fonction.
Le niveau : il est repéré dans l’échelle adoptée pour un critère d’appréciation d’une
fonction. Ce niveau peut être celui recherché en tant qu’objectif ou celui atteint pour
une solution proposée. En effet, il est généralement une valeur chiffrée.
La flexibilité : dans la majorité des cas le niveau d’un critère peut être assorti d’une
flexibilité c’est-à-dire une tolérance permettant de faire varier les valeurs à l’intérieur
d’une fourchette prédéterminée. Cette flexibilité apporte l’avantage de clarifier les
limites d’un dialogue possible entre le réalisateur du projet et les responsables de la
société. Dans le tableau II.1 suivant on présente les différentes classes de flexibilité
F0 nulle impératif
F2 bonne négociable
Après avoir bien défini les caractéristiques d’une fonction de service. Dans le tableau 2 ci-
dessous on va attribuer à chaque fonction de notre robot des critères, des niveaux et flexibilité
pour les caractériser.
19
Chapitre II : Analyse fonctionnelle
F0
. Débattement de la . Verticalement :
FC4 Être commander par l’utilisateur. Système piloté Module wifi ESP-32 F1
20
Chapitre II : Analyse fonctionnelle
On constate ici que la caractérisation des F.S est importante pour la suite de la conception.
Elle permet ici de préciser les intentions de conception.
Nous avons indiqué précédemment que toutes les fonctions identifiées par l’analyse
fonctionnelle doivent être satisfaites. Cela concerne les fonctions principales et contraintes.
Mais leur accorder, à toutes, la même importance serait une commodité d’analyse qui ne
correspondait pas forcément avec l’opinion du client utilisateur. Pour hiérarchiser les F.S, il est
possible d’avoir recours à la méthode dela trie croisée.
Cette méthode est basée sur la comparaison de l’importance d’une fonction par rapport à toutes
les autres en lui attribuant une note de 0 à 3. Ces notes correspondent à des degrés d’importance
0 : équivalentes
1 : peu supérieur
2 : supérieure
3 : très supérieur
Le tableau II. 3 présente la comparaison entre les F.S selon leur importance.
Tableau II. 3 : Tableau de comparaison des fonctions
FC1 FC2 FC3 FC4 FC5 FC6 FC7 FC8 FC9 Note par %
fonction
FP1 FP1(1) FP1(2) FP1(2) FP1(1) FP1(3) FP1(3) FP1(1) FP1(1) FP1(2) 16 23.5
FC1 FC1(1) FC1(1) 0 FC1(2) FC1(3) FC1(1) FC1(1) FC1(2) 11 16.17
FC2 FC2(1) FC4(1) FC2(1) FC2(2) FC7(1) FC8(1) FC2(2) 6 8.82
FC3 FC4(2) FC3(1) FC3(2) FC7(1) FC8(1) FC9(1) 3 4.41
FC4 FC4(2) FC4(3) FC4(1) FC4(1) FC4(1) 11 16.17
FC5 0 FC7(2) FC8(2) FC9(2) 0 0
FC6 FC7(2) FC8(2) FC9(1) 0 0
FC7 FC7(1) FC7(2) 9 13.23
FC8 FC8(2) 8 11.76
FC9 4 5.88
Totale 68 100
21
Chapitre II : Analyse fonctionnelle
Pour mieux visualiser les fonctions les plus importantes. On a présenté les résultats obtenus
après la réalisation du tableau de comparaison dans l’histogramme de la figure II. 8 présenté
ci-dessous
25
20
Pourcentage
15
10
%
0
FP1 FC1 FC4 FC7 FC8 FC2 FC9 FC3 FC5 FC6
Désignation des fonctions
Hiérarchisation des
FS
On doit retrouver dans le CdCF toutes les étapes de la démarche décrite dans la partie
précédente de ce chapitre :
22
Chapitre II : Analyse fonctionnelle
.
1. Identification des phases de vie du système
Une fonction technique est une fonction contribuant à réaliser une fonction de service parun
moyen technique. Elle s’énonce nécessairement avec un verbe à l’infinitif. Ce verbe doit être,
autant que possible, un verbe d’action. [3]
Pour mener une A.F.T, il existe un outil principal le F.A.S.T. Dans le F.A.S.T les fonctions,
représentées par des blocs rectangulaires, sont liées entre elles par des traits droits, qui les
ordonnent. Les fonctions techniques sont nommées FTij où i est le numéro de la FS
développée et j indiquent la position de la fonction technique dans l’arborescence de la FS. La
figure II. 9 présente la méthode de lecture du F.A.S.T.
23
Chapitre II : Analyse fonctionnelle
Nous avons appliqué cette méthodologie et on a obtenu les F.A.S.T présentés dans les
figures suivantes. Pour chaque fonction de service, on a énoncé cette fonction et on a présenté
le F.A.S.T relative à cette dernière.
24
Chapitre II : Analyse fonctionnelle
Figure II.12 : Le F.A.S.T pour la fonction de service FC2FC4 : Être commander par l’utilisateur.
25
Chapitre II : Analyse fonctionnelle
26
Chapitre II : Analyse fonctionnelle
Cette solution présente les avantages et les inconvénients illustrés dans le tableau II.5.
Avantages Inconvénients
Système encombré
Facile à manipuler
Portée faible
Cette solution présente les avantages et les inconvénients illustrés dans le tableau II.6.
27
Chapitre II : Analyse fonctionnelle
Avantages Inconvénients
Système encombré
Déplacement difficile dans lesterrains
de pente abrupte et de faible frottement
Portée faible
Cette solution présente les avantages et les inconvénients illustrés dans le tableau II.7 suivant.
Avantages Inconvénients
Moins cher
28
Chapitre II : Analyse fonctionnelle
Conclusion
Nous avons essayé dans ce chapitre de bien définir les fonctions de service de notre système
pour pouvoir enfin choisir la solution la plus appropriée à notre besoin
29
Chapitre III :
Conception du robot et
réalisation
Chapitre III : Conception du robot et réalisation
Introduction
Dans ce dernier chapitre, on va présenter en premier lieu les différentes parties de notre
robot. Ensuite, on va aborder la conception de chaque composant afin d’obtenir l’assemblage
final.
I. Partie électrique
Nous allons maintenant entrer dans le vif du sujet. Pour cela, il faut s'entourer de différents
élémentsélectroniques :
4 moteurs 12V LT37GB90-500T
Servomoteur SG90 9g
Pont en H L298N
Fils de connexion
I.1.1 Description
Le moteur électrique est le muscle de notre robot. Un moteur est capable de transformer une
énergieélectrique en énergie mécanique.
Dans notre cas, on a décidé d’utiliser 4 moteurs 12V LT37GB90-500T. Il s’agit d’un moteur à
courant continu normal à démultiplication qui lui procure un couple élevé au prix d’un
ralentissement de la vitesse de rotation maximale de l’arbre de sortie. Il est idéal pour les
applicationsnécessitant du couple. [4]
La figure III.1 présente la conception en SolidWorks de notre moteur.
31
Chapitre III : Conception du robot et réalisation
Les 4 moteurs nécessitent une petite préparation afin que nous puissions les utiliser avec notre
robot.
Il faut relier les moteurs au montage par des petits fils électriques. Si l'on utilise des petits fils
rigides, alors il suffit de torsader les fils sur les cosses des moteurs pour réaliser la liaison
électrique. Mais le mieux, c'est d'utiliser des petits fils souples et donc de souder les fils de
liaisonsur les cosses métalliques du moteur.
Très souvent, on en profite pour souder aussi un petit condensateur entre les cosses, Ce
composant permet de supprimer les étincelles qui apparaissent sur le collecteur du moteur lors
de la rotation. En effet, ces étincelles dégradent les balais.
L'extrémité libre des fils peut être soudée sur un petit connecteur mâle, ce qui permet une
manipulation plus facile. [4]
Il existe plusieurs types de moteurs électriques, mais nous choisissons le plus simple à utiliser.
Ils'agit du moteur à courant continu à aimants permanents.
Un moteur à courant continu est constitué d'un stator, fixe, et d'un rotor, mobile. Le courant
continu arrive par les cosses à l'extérieur de la carcasse sur des balais souples. Le collecteur est
la partie du rotor qui touche les balais. Le rotor est constitué de plusieurs bobines, toujours en
32
Chapitre III : Conception du robot et réalisation
Balais
Rotor
Alimentation
Collecteur
Stator
Boitier
33
Chapitre III : Conception du robot et réalisation
Mémoire PSRAM : 4 Mo
Bouton reset
Dimensions : 27 x 40 x 4,5 mm
Poids : 10 g
34
Chapitre III : Conception du robot et réalisation
35
Chapitre III : Conception du robot et réalisation
36
Chapitre III : Conception du robot et réalisation
II.PARTIE MECANIQUE
II.1 Description
Si l’on considère souvent que la partie électronique est la plus importante dans un montage, ce
n’est pas le casen robotique, où la partie mécanique est en effet tout aussi essentielle.
Bien que la mécanique de notre robot ne soit pas compliquée à réaliser, elle ne doit pas être
négligée.
Les dimensions ont été choisies pour faciliter l’installation des divers éléments, de la carte de
puissance, de dusupport de la caméra, des piles et de la partie motorisation.
37
Chapitre III : Conception du robot et réalisation
II.2 Le châssis
Entrons dans la partie mécanique, en commençant par la description du châssis, celui-ci est
constitué d’uneplaque on plexiglas sur laquelle sont fixées quatre pièces pour la partie
motorisation et un support pour la caméra.
Les pièces principales sont on plexiglas de 4mm d’épaisseur. Ses dimensions sont de 25mm
sur 20mm, ce quinous permet de placer notre montage électronique, ainsi que toute la partie
motorisation et le bloc pile.
L’ensemble obtenue reste relativement compact, sans nuire aux diverses expérimentations.
16 trous de diamètre 2mm sont percés aux endroits indiqués sur la figure servent aux fixations
des supportsmotorisation
38
Chapitre III : Conception du robot et réalisation
Afin de facilité leur mise en position, nous allons utiliser ces supports en acier inoxydable.
Ce support permet une mise en place totale de nos moteurs et nous allons juste visser le
support pour maintenir le moteur en position.
39
Chapitre III : Conception du robot et réalisation
II.2.3 Le support de module ESP32-CAM
40
Chapitre III : Conception du robot et réalisation
Nous avons choisi les Roues tout-terrain, de type roue cramponnée de 85 mm de diamètre,
équipées chacune d'un pneu souple à tétines procurant, ces pneus ont une absorption des
chocs, une usure et une adhérence, et peuvent être adaptés aux routes plates et aux routes
accidentées. Il est possible de choisir d'autres types de roues mais il ne faut pas oublier que le
diamètre des roues influe sur la vitesse du mobile.
41
Chapitre III : Conception du robot et réalisation
42
Chapitre III : Conception du robot et réalisation
Voies de communication
1 4
(Connexion WIFI)
Système
Informatique
embarqué
2 3
Le robot (Monitorix)
Moteurs
Caméra
Messages N°1 : Ces messages sont émis à partir du centre de commandes vers le
robot. Ils sedécomposent en deux catégories :
Messages de commande de robot (avancer, tourner à droite, reculer .................... )
Messages de contrôle de la caméra (Ouvrir, fermer)
Messages N°2 : Ces messages sont les ordres directs envoyés aux moteurs après
traitement desmessages N°1 au niveau de l’unité de traitement embarquée.
Messages N°3 : Ces messages se décomposent en deux catégories :
43
Chapitre III : Conception du robot et réalisation
III.2.1 Description
Arduino est la marque d'une plateforme de prototypage open-source qui permet aux
utilisateurs de créer des objets électroniques interactifs à partir de cartes électroniques
matériellement libres sur lesquelles se trouve un microcontrôleur (d'architecture Atmel AVR
comme l'Atmega328p, et d'architecture ARM comme le Cortex-M3 pour l'Arduino Due).
Les schémas de ces cartes électroniques sont publiés en licence libre. Cependant, certaines
composantes, comme le microcontrôleur par exemple, ne sont pas sous licence libre.
Le microcontrôleur peut être programmé pour analyser et produire des signaux électriques, de
manière à effectuer des tâches très diverses comme la domotique (le contrôle des appareils
domestiques — éclairage, chauffage…), le pilotage d'un robot, de l'informatique embarquée,
etc.
C'est une plateforme basée sur une interface entrée/sortie simple. Elle était à l'origine destinée
principalement, mais pas exclusivement, à la programmation multimédia interactive en vue de
spectacles ou d'animations artistiques, ce qui explique en partie la descendance de son
environnement de développement de Processing, lui- même inspiré de l'environnement de
programmation Wiring (l'un pensé pour la production d'applications impliquant des
graphismes et l'autre pour pilotage de salles de spectacles).
Arduino peut être utilisé pour construire des objets interactifs indépendants (prototypage
rapide), ou bien peut être connecté à un ordinateur pour communiquer avec ses logiciels (ex. :
Max/MSP, Usine Hollyhock, Pure Data, SuperCollider). En 2011, les versions vendues sont
pré-assemblées. Des informations sont fournies pour ceux qui souhaitent assembler ou
construire une carte Arduino eux-mêmes. [6]
44
Chapitre III : Conception du robot et réalisation
IV. Le code
On peut implémenter le code directement a travers une bibliothèque standard dans le logiciel
Arduino, ensuivant les étapes suivantes :
FichierExemplesESP32CaméraCaméra WebServer
46
Chapitre III : Conception du robot et réalisation
Jetons un coup d’œil aux pièces pertinentes pour contrôler le robot. Définissez les GPIO qui
contrôleront les moteurs. Chaque moteur est contrôlé par deux broches.
#define MOTOR_1_PIN_1 14
#define MOTOR_1_PIN_2 15
#define MOTOR_2_PIN_1 13
#define MOTOR_2_PIN_2 12
Lorsque vous cliquez sur les boutons, vous effectuez une demande sur une URL différente.
Voici les requêtes effectuées en fonction du bouton sur lequel on appuie :Effronté:
<ESP_IP_ADDRESS>/action?go=forward
En arrière :
/action?go=backward
À gauche :
47
Chapitre III : Conception du robot et réalisation
/action?go=left
À droite :
/action?go=right
Arrêter:
/action?go=stop
Lorsque vous relâchez le bouton, une demande est faite sur le /action?go=stop URL. Le
robot ne bouge que tant que vous appuyez sur les boutons.
Pour gérer ce qui se passe lorsque nous recevons des requêtes sur ces URL, nous utilisons ces
instructions if…else :
if(!strcmp(variable, "forward")) {
Serial.println("Forward");
digitalWrite(MOTOR_1_PIN_1, 1);
digitalWrite(MOTOR_1_PIN_2, 0);
digitalWrite(MOTOR_2_PIN_1, 1);
digitalWrite(MOTOR_2_PIN_2, 0);
}
else if(!strcmp(variable, "left")) {
Serial.println("Left");
digitalWrite(MOTOR_1_PIN_1, 0);
digitalWrite(MOTOR_1_PIN_2, 1);
digitalWrite(MOTOR_2_PIN_1, 1);
digitalWrite(MOTOR_2_PIN_2, 0);
}
else if(!strcmp(variable, "right")) {
Serial.println("Right");
digitalWrite(MOTOR_1_PIN_1, 1);
digitalWrite(MOTOR_1_PIN_2, 0);
digitalWrite(MOTOR_2_PIN_1, 0);
digitalWrite(MOTOR_2_PIN_2, 1);
}
48
Chapitre III : Conception du robot et réalisation
else
if(!strcmp(variabl
e, "backward")) {
Serial.println("Ba
ckward");
digitalWrite(MO
TOR_1_PIN_1,
0);
digitalWrite(MOTOR_1_PIN_2, 1);
digitalWrite(MOTOR_2_PIN_1, 0);
digitalWrite(MOTOR_2_PIN_2, 1);
}
else if(!strcmp(variable, "stop"))
{ Serial.println("Stop");
digitalWrite(MOTOR_1_PIN_
1, 0);
digitalWrite(MOTOR_1_PIN_2, 0);
digitalWrite(MOTOR_2_PIN_1, 0);
digitalWrite(MOTOR_2_PIN_2, 0);}
49
Chapitre III : Conception du robot et réalisation
Ouvrez un navigateur et saisissez l’adresse IP ESP. Une page Web similaire devrait se charger :
50
Appuyez sur les boutons et jetez un œil au Serial Monitor pour voir s’il diffuse sans décalage
et s’il reçoit lescommandes sans planter.
Conclusion
En se basant sur la solution choisie dans la chapitre précédent, nous avons pu concevoir à la
fin de ce chapitre les éléments les plus importants dans notre robot. En plus, nous avons pu
préparer le code sur Arduino pour le bon fonctionnement de notre système.
51
Conclusion Générale
Notre projet métier intitulé « Conception d’un robot mobile », nous a permis
d’appliquer quelques notions théoriques vue pendant notre formation d’ingénieur en génie
mécanique à l’école nationale d’ingénieurs de Bizerte.
Les objectifs de ce projet fixés par le cahier des charges ont étés divisés sur deux
volets : volet d’étude et volet de conception.
Pour mieux achever nos objectifs, tout d’abord, on a jugé adéquat d’entamer le projet
par une analyse fonctionnelle qui nous a permis de mieux comprendre le besoin et de bien
définir les fonctions de services souhaités par la conception de notre système.Ensuite, après
une étude de faisabilité, on a pu aboutir à un choix de la solution technologique la plus
convenable. Pour pouvoir à la fin concevoir la solution retenue en utilisant le logiciel de CAO
« SolidWorks ». C’est ainsi qu’on a eu l’occasion de mieux manipuler ce logiciel.
52
Références Bibliographiques
[1] https://journals.openedition.org/activites/4941
[2] Audry, F. (2000). Professeur agrégé de mécanique. Analyse fonctionnelle guide pour le
professeur. Versailles
: Académie Versailles
[5] https://www.gotronic.fr/art-module-esp32-cam-32630.htm
[6] https://fr.wikipedia.org/wiki/Arduino
53
Dossier technique