Académique Documents
Professionnel Documents
Culture Documents
APPLIQUÉS ISTA/GOMA
DEPARTEMENT DE GÉNIE MÉCANIQUE
Epigraphe
Matanya Horowitz
ii
Dédicace
Je dédie ce mémoire à ma très chère tante, Kavira Nzilamba, sans qui ce travail n'aurait
jamais été réalisé. Ma chère tante, aucune parole ne peut véritablement exprimer la
profonde gratitude et reconnaissance que je ressens envers vous.
ii
iii
Remerciements
Nous exprimons notre profonde gratitude à Dieu Tout-Puissant pour Sa force et Sa grâce
qui nous ont accompagnés tout au long de notre parcours universitaire.
Nous tenons à remercier chaleureusement les autorités académiques ainsi que le corps
enseignant de l'ISTA-Goma pour leur engagement et leur dévouement à notre égard, depuis
nos premiers pas en préparatoire jusqu'à la fin de notre cycle de Licence.
Nos remerciements les plus sincères vont à notre directeur, le Professeur Docteur Baraka
Mushage. Malgré ses multiples responsabilités tant personnelles qu'académiques, il a
accepté de superviser ce travail. Ses conseils avisés et sa rigueur scientifique ont été
essentiels pour orienter notre travail dans la bonne direction et le mener à son terme. Nous
lui exprimons notre profonde gratitude.
Nous souhaitons également exprimer toute notre reconnaissance à nos chers parents,
Benjamin Nzilamba et Anith Kanyali. Leur amour inconditionnel, leur soutien constant sur
le plan moral et matériel ont été des piliers essentiels tout au long de notre parcours. Leurs
conseils avisés, leur patience infinie et leur encouragement permanent ont été une source de
force inestimable.
Nous exprimons nos plus sincères remerciements à notre chère Tante Karira Nzilamba, à
notre oncle Marcel Mulombi, à Rosette Kihambambula, à ma tante Elsy, au Père Jean de
Dieu, à mon grand frère Samy, benoit, Grace ndungo, à Merry, Julie, Jospin, Maksiv,
Adolphe, Jason Malonga, Noël Prince et Grace. Leur affection, leurs sacrifices et leur
soutien indéfectible malgré nos moments de faiblesse ont été d'une importance capitale
pour nous. Nous leur sommes reconnaissants au-delà des mots.
iv
Résumé
Ce travail présente une étude approfondie et une réalisation concrète d'un robot quadrupède
de surveillance destiné à être utilisé dans des environnements industriels tels que les usines
ou les entrepôts. Le projet est structuré en trois chapitres distincts qui abordent les
différentes phases de développement du robot.
iv
v
Abstract
This work presents a comprehensive study and practical realization of a quadruped
surveillance robot intended for use in industrial environments such as factories or
warehouses. The project is structured into three distinct chapters that address different
stages of the robot's development.
The first chapter consists of a literature review and a general introduction to robotics. It
explores recent advancements in the field, with a focus on quadruped robots and their
potential applications in surveillance. This review establishes the necessary theoretical
foundations for understanding the work undertaken.
The second chapter focuses on the design of the quadruped surveillance robot. It presents
the various stages of the design process. Mechanical, electronic, and software aspects are
discussed in detail to ensure a robust and functional design.
The third chapter addresses the dimensioning and practical realization of the quadruped
robot. It describes material choices, technical specifications, and calculations required for
the robot's fabrication. The different stages of realization are explained, from mechanical
construction to the integration of electronic components and programming of the control
system.
Thus, this robot offers promising possibilities for enhancing security and improving
operational efficiency in factories and warehouses.
This research and development project demonstrates the feasibility and usefulness of a
quadruped surveillance robot in an industrial context. The achieved results pave the way for
future applications and advancements in the field of robotics for surveillance and
automation of industrial tasks.
vi
vii
Epigraphe .............................................................................................................. i
Dédicace .............................................................................................................. ii
Résumé ............................................................................................................... iv
viii
ix
Contributions ...................................................................................................................... 5
Critique du travail .................................................................... Erreur ! Signet non défini.
Travaux futurs de recherche/Perspectives .......................................................................... 5
Annexe B Algorithmes ERA et FCA précédents ..... Erreur ! Signet non défini.
Algorithme FCA ...................................................................... Erreur ! Signet non défini.
Algorithme ERA ...................................................................... Erreur ! Signet non défini.
x
xi
xii
1
0. Introduction générale
Parmi les robots mobiles, on s'intéresse aux robots marcheurs qui utilisent leurs pattes
comme moyens de locomotion. Ils peuvent être très différents par leur forme et par le
nombre de leurs pattes. Il existe des robots à deux pattes (bipèdes), à quatre pattes
(quadrupèdes), des robots à six pattes (hexapodes), des robots à huit pattes (octopodes) et
d'autres à plusieurs pattes. Ces robots marcheurs présentent l’avantage d’une meilleure
mobilité dans des terrains encombrants en raison de l’intermittence du contact pied/sol.
La sécurité est un enjeu majeur dans de nombreux domaines, et la surveillance est souvent
nécessaire pour assurer la protection des biens et des personnes. C’est dans ce contexte que
j’ai réalisé une étude et une conception d’un robot quadrupède de surveillance cas d’une
2
usine ou un entrepôt. Ce robot est capable de se déplacer sur tous types de terrains grâce à
ses jambes, et intègre différents capteurs pour détecter les mouvements suspects et prévenir
les risques. Dans cette mémoire, je vais présenter l’ensemble des étapes de ce projet, de
l’analyse des besoins à la réalisation concrète du robot.
L'utilisation de robots dans le domaine de la surveillance est de plus en plus fréquente, car
les robots peuvent offrir des avantages tels que la capacité de surveiller des zones difficiles
d'accès pour l'homme, la précision des mesures, etc. Dans ce contexte, l'étude et la
réalisation d'un robot quadrupède de surveillance cas d’une usine ou un entrepôt représente
un défi technique important puisque ce type de robot est capable de se déplacer sur des
terrains accidentés et de franchir des obstacles tout en étant très stable. Les robots
quadrupèdes ont notamment été utilisés dans des situations de recherche et de sauvetage ou
de fouilles archéologiques, mais aussi dans des domaines industriels ou militaires. Cette
étude et réalisation concrète de robot quadrupède de surveillance vise à répondre aux
besoins d'une usine ou un entrepôt a sécurité en matière de surveillance et de prévention des
risques.
La surveillance est un enjeu majeur dans de nombreux domaines, tels que la sécurité
publique, la protection des biens, ou encore la défense nationale. Les systèmes de
surveillance actuels, tels que les caméras de sécurité fixes, ne sont pas toujours suffisants
pour assurer une protection optimale, notamment dans les zones difficiles d'accès pour les
humains. C'est pourquoi la conception d'un robot quadrupède de surveillance peut être une
solution efficace pour les usines et les entrepôts.
L'objectif principal de cette étude est donc d'identifier les besoins en matière de
surveillance pour proposer une solution innovante et performante. Pour cela, il est
nécessaire d'analyser les différents environnements et architecture des usines ou entrepôt
2
3
dans lesquels le robot sera amené à évoluer. Il faut également identifier les différents types
de risques que le robot devra être capable de détecter et d'alerter (intrusion, incendie, etc.).
Enfin, il est important d'évaluer les moyens nécessaires pour programmer et concevoir le
robot, en termes de ressources humaines et financières.
La formulation du problème se concentrera sur les défis liés à la conception d'un robot
quadrupède de surveillance dans une usine ou dans un entrepôt, tels que la stabilité et la
mobilité, la programmation et l'intelligence artificielle, ainsi que la conception et la
résistance du robot face aux différents endroit dans une usine ou entrepôt. Des tests et des
simulations seront réalisés pour valider la performance du robot et améliorer ses
caractéristiques en termes de sécurité et de rapidité. L'objectif final sera de concevoir un
robot de surveillance fiable et efficace qui répondra aux besoins de différents secteurs
industriels ou entreposage.
Dans le cadre de cette étude, les recherches visent à répondre à plusieurs questions
concernant la conception et la réalisation d'un robot quadrupède de surveillance cas d’une
usine ou un entrepôt :
1. Comment concevoir un robot quadrupède capable de se déplacer sur différents types de
terrains, tout en maintenant sa stabilité ?
2. Comment intégrer différents capteurs pour que le robot puisse détecter les mouvements
suspects et prévenir les risques, tout en évitant les fausses alertes ?
3. Comment programmer le robot pour qu'il puisse réagir rapidement et efficacement en cas
de risque détecté, tout en évitant les erreurs et les mal-fonctionnements ?
4. Quelles sont les meilleures solutions techniques pour concevoir un robot de surveillance
résistant aux intempéries et aux chocs et disposant d'une autonomie énergétique suffisante ?
5. Comment optimiser la communication entre le robot et le centre de surveillance, pour
une surveillance efficace et une intervention rapide en cas de besoin ?
Les résultats de ces recherches permettront de proposer une solution complète en matière
de conception d'un robot quadrupède de surveillance fiable et performante, capable de
4
Partir des questions de recherche posées, nous pouvons émettre les hypothèses suivantes :
1. Les matériaux composites seraient les meilleurs choix pour la conception et la résistance
du robot quadrupède de surveillance aux intempéries et aux chocs.
2. Les capteurs de détection de mouvements suspects pourraient être des capteurs
infrarouges, des capteurs de pression ou des capteurs acoustiques.
3. Une combinaison de réseaux de neurones et d'algorithmes de vision par ordinateur
pourrait être la meilleure solution pour la programmation et l'intelligence artificielle du
robot.
4. L'utilisation de batteries lithium-ion haute capacité seraient les meilleurs moyens pour
assurer une autonomie énergétique suffisante pour le robot.
5. La communication sans fil (par exemple, la 5G) pourrait être la meilleure solution pour
optimiser la communication entre le robot et le centre de surveillance.
Il est important de noter que toutes ces hypothèses doivent être vérifiées lors de la
conception et des tests du robot, et pourraient évoluer en fonction des résultats obtenus.
4
5
Ce sujet de mémoire est donc motivé par un intérêt pour la conception de robots
innovants et performants, adaptés aux besoins des différents secteurs industriels ou
d’entreposage, et est motivé par l'envie de contribuer à améliorer l'efficacité et la sécurité
de la surveillance. La réalisation de ce projet représente une opportunité de travailler sur
des technologies émergentes et d'appliquer des compétences en robotique, et en conception
mécanique à un projet concret et utile pour la société.
(ii). Pertinence scientifique du sujet
Le sujet de mémoire sur l'étude et la réalisation d'un robot quadrupède de
surveillance présente une forte pertinence scientifique dans plusieurs domaines et a
particulier dans une usine ou dans un entrepôt.
Tout d'abord, la robotique est un domaine de recherche en constante évolution, avec
de nombreux défis techniques à relever. La conception d'un robot quadrupède de
surveillance implique des connaissances en mécanique, en électronique, en informatique,
ainsi que dans le domaine de la programmation. Ce projet constitue donc une opportunité
de mettre en pratique ces connaissances pour réaliser un système complexe et fonctionnel.
De plus, la surveillance est un secteur en constante évolution, avec des besoins
croissants en termes de sécurité et de performance. Un robot quadrupède de surveillance
peut s'avérer être une solution innovante et performante pour répondre à ces besoins. La
réalisation de ce type de robot nécessite une réflexion sur les modes de déplacement et les
fonctionnalités spécifiques à inclure pour garantir une surveillance optimale.
Enfin, le sujet de mémoire peut également être pertinente du point de vue de la
recherche en intelligence artificielle. Les robots quadrupèdes de surveillance sont des
systèmes complexes qui peuvent être contrôlés par intelligence artificielle pour améliorer
leur autonomie, leur capacité à prendre des décisions en temps réel et leur adaptation à leur
environnement.
En somme, la réalisation d'un robot quadrupède de surveillance dans une usine ou
dans un entrepôt est un sujet de mémoire scientifiquement intéressant pour la robotique, la
mécatronique, l'intelligence artificielle, et la sécurité.
La pertinence sociale du sujet de mémoire sur l'étude et la réalisation d'un robot quadrupède
de surveillance est multiple.
Tout d'abord, ce type de robot peut être utilisé pour améliorer la sécurité dans des
environnements industriels, tels que les usines, les centrales électriques ou les installations
pétrolières. Les robots quadrupèdes de surveillance peuvent être équipés de capteurs pour
détecter les risques, les fuites, les incendies et autres dangers, et ainsi fournir une assistance
précieuse aux travailleurs humains dans des environnements dangereux.
Le robot quadrupède de surveillance peut également être utilisé dans le domaine de la
sécurité publique pour surveiller les infrastructures critiques, telles que les barrages, les
ponts ou les tunnels, détecter les débris ou les obstacles potentiellement dangereux, et
prévenir les accidents.
Enfin, les robots quadrupèdes de surveillance peuvent également être utilisés pour la
surveillance environnementale, notamment dans les zones naturelles à préserver comme les
réserves naturelles, les forêts, les zones côtières, ou pour surveiller la faune sauvage.
La réalisation d'un robot quadrupède de surveillance est donc pertinente socialement car
elle peut aider à améliorer la sécurité et la qualité de vie des travailleurs, des citoyens et de
notre environnement.
Énoncé des objectifs de recherche
6
7
Cet objectif opérationnel est un élément clé de la réalisation d'un robot quadrupède de
surveillance fonctionnel et performant, en particulier dans des environnements difficiles où
les robots actuels rencontrent des défis pour se déplacer de manière stable et précise.
Ici nous allons passer en revis quelques travaux antérieurs qui ont abordé la même
thématique que nous et également parler de la généralité sur la robotique.
Chapitre II : conception du robot quadrupède de surveillance
Dans ce chapitre nous allons étudier les caractéristiques techniques de chaque composant
que nous allons utiliser et faire la conception de notre robot.
Chapitre III : Dimensionnent et réalisation du robot
8
9
Dans ce chapitre nous allons calculer la résistance des certaines structures, dimensionner et
faire le choix de certain composant que nous allons utiliser dans la réalisation de notre
robot.
10
Chapitre 1
Revue de la littérature et généralité sur la
robotique
1.1 Introduction
Dans [1], l’auteur présente un travail qui consiste à modéliser, concevoir et fabriquer un
prototype mécanique d'une patte d'un robot marcheur quadrupède. Pour y arriver, il était
parti du choix d'une chaîne cinématique et il avait présenté la modélisation directe, inverse
et cinématique du robot quadrupède. Après il avait validé son modèle par la proposition
d'une solution de CAO qui avait été réalisée en FAO en impression 3D. Enfin ce prototype
de patte réalisée avait été actionné par des servomoteurs pilotés par une carte Arduino
10
11
programmée et connectée afin d'envoyer trois signaux gouvernant les angles de rotation des
servomoteurs.
Ce travail, nous inspire sur comment nous allons modéliser, concevoir et fabriquer la patte
de notre robot également ce travail nous a fourni beaucoup des informations sur la
généralité sur les robots marcheurs et sur comment nous pouvons modéliser et imprimer les
pattes de notre robot quadrupède.
Nezzar Ikram
Aspect mécanique : étude de la robotique, l’étude des différents types des robots a
patte, et la structure mécanique.
12
13
La robotique est l'art d'automatiser des systèmes plus ou moins complexes en s'appuyant
sur le savoir-faire acquis à travers les études sur la conception de robots. Elle est aussi
décrite comme étant l'ensemble des techniques permettant la conception et la réalisation de
machines automatiques ou de robots. Ces derniers sont des appareils qui effectuent, grâce à
un système de commande automatique à base de micro-processeur, une tâche précise pour
laquelle ils ont été conçus.
La robotique est aujourd’hui primordiale, voire même vitale car elle est l’une des raisons
principales qui donne au monde actuel son aspect moderne en se manifestant dans
différents champs d’application. On site au passage, la robotique industrielle, qui peut faire
plusieurs tâches, par exemple la manutention, le soudage, l’ensemble des pièces, et
plusieurs autres fonctions, comme en trouve aussi la robotique médicale, militaire, et
domestique.
2. Un robot
Un robot est un dispositif mécanique (alliant mécanique, électronique et informatique)
accomplissant automatiquement soit des tâches qui sont généralement dangereuses,
pénibles, répétitives ou impossibles pour les humains, soit des tâches plus simples mais en
les réalisant mieux que ce que ferait un être humain.
14
Un robot est défini aussi comme un appareil effectuant grâce à un système de commande
automatique à base de micro-processeur une action précise pour laquelle il a été conçu dans
le domaine industriel, scientifique ou domestique.
Suivant son degré d’autonomie, il peut s’adapter à certaines variations de ses conditions de
fonctionnement. Un robot mobile peut être doté de moyens de perception et de
raisonnement. La classification des robots mobiles se fait suivant plusieurs critères
(système de locomotion, degré d’autonomie ...). L’intérêt des robots mobiles consiste dans
leur mobilité qui ouvre des applications dans de nombreux domaines.
Robots volants
Les robots volants sont plus connus sous le nom de « Drone ». Le drone désigne un aéronef
sans pilote à bord, programmé pour voler par commande au sol via wifi ou d’une façon
autonome, l’idée de sa conception est inspirée des insectes volants, La figure suivante
représente un robot volant :
4. Robots marcheurs
Les robots marcheurs peuvent être très différents par leur forme et par leur nombre de leurs
pattes. Selon ce nombre, ils peuvent être monopèdes, bipèdes, quadrupèdes, hexapodes,
octopodes ou à plusieurs pattes.
16
17
peuvent sauter par-dessus et se déplacer sur n'importe quel type de terrain lorsqu'ils
prennent un bon départ et sautent par-dessus tous les obstacles.
La marche à quatre pattes est courante chez la plupart des animaux et il y a de bonnes
raisons de la reproduire chez les robots. En général, les robots à quatre jambes sont
statiquement stables et, pour améliorer la stabilité dynamique et augmenter la vitesse de
marche ainsi que la puissance de transport des robots quadrupèdes, des actionneurs
hydrauliques à large bande passante et à puissance de sortie élevée sont nécessaires.
Le modèle de marche d’un robot à quatre pattes peut être conçu de différentes manières,
une jambe à la fois, comme nous l’avons déjà mentionné, et une paire en alternance.
Une jambe à la fois : à tout moment, il y a trois points de contact avec la surface et
le robot maintient sa stabilité statique en position debout ou en mouvement.
Déplacer une jambe à la fois rend votre robot plus lent et coûteux en ressources,
mais reste stable.
Paire alternée : Dans cette approche, les jambes alternées sont déplacées comme si
deux robots bipèdes étaient connectés ensemble. A tout moment, le robot a deux
points de contact en surface, créant un robot à la stabilité dynamique. Plus rapide et
efficace, mais moins stable par rapport à la première approche.
18
19
Surveillance de bâtiment ;
Transport dans des environnements inhabituels tels que des tuyaux ou des
structures en orbite ;
Modélisation animale ;
Transport militaire ;
L'exploitation minière ;
Exploration planétaire ;
Agriculture et foresterie ;
Dans le premier point de ce chapitre, nous avons examiné divers documents liés à notre
domaine d'étude. Cette revue bibliographique nous a permis d'explorer la manière dont nos
prédécesseurs scientifiques ont abordé la problématique de la robotique mobile quadrupède
et de la robotique de surveillance. Cette analyse facilite notre travail en matière de
20
21
documentation tout en nous offrant un aperçu des lacunes de leurs approches. En évitant de
reproduire leurs erreurs, nous cherchons également à identifier les limitations de leurs
travaux, avec pour objectif d'améliorer et de perfectionner leurs avancées technologiques.
Dans le deuxième volet de ce premier point, nous avons présenté une classification des
robots marcheurs à pattes. Nous avons débuté par différencier ces robots selon leurs
catégories, puis nous les avons exposés en commençant par les structures les plus simples,
telles que les monopodes, pour ensuite couvrir les architectures plus complexes, comme les
robots multi-pattes. La complexité de la commande et de la modélisation d'un robot
marcheur est directement liée à l'architecture de celui-ci. Nous avons également abordé
diverses applications des robots marcheurs à pattes. Pour notre application spécifique, nous
avons opté pour le robot quadrupède en raison de ses nombreux avantages en termes de
stabilité et de rapidité de locomotion. Le deuxième chapitre se concentrera sur la
conception d'un robot quadrupède dédié à la surveillance.
22
Chapitre 2
Conception du robot quadrupède de surveillance
1. Introduction
Ce chapitre se concentre sur la conception d'un robot quadrupède de surveillance pour une
utilisation dans les usines ou les entrepôts. Les besoins de surveillance dans ces
environnements industriels sont de plus en plus importants en raison des risques de vol, de
vandalisme, d'accidents du travail, ainsi que des exigences strictes en matière de sécurité et
de conformité aux normes. Cependant, les solutions de surveillance traditionnelles
présentent des limites en termes de coûts élevés, de difficultés d'accès à certains endroits et
de risques pour les opérateurs humains.
C'est pourquoi la conception d'un robot quadrupède de surveillance apporte des avantages
significatifs. En utilisant des matériaux résistants et adaptés au milieu industriel, ce robot
peut se déplacer de manière autonome sur des surfaces irrégulières, effectuer des mesures
de sécurité et des tâches de surveillance sans nécessiter l'intervention constante d'un
opérateur humain. Grâce à son autonomie, il peut patrouiller dans des zones spécifiques et
22
23
De plus, le robot quadrupède de surveillance peut être équipé d'une variété de capteurs
avancés, tels que des caméras haute résolution, des capteurs thermiques et des capteurs de
mouvement, permettant la reconnaissance faciale, la détection d'intrusion et la collecte de
données en temps réel. Toutes ces fonctionnalités permettent d'améliorer considérablement
le niveau de sécurité globale dans les usines et les entrepôts, tout en réduisant les coûts liés
à une surveillance humaine continue.
Dans la suite de ce chapitre, nous allons analyser en détail les besoins et contraintes
spécifiques à la surveillance en milieu industriel, ainsi que les technologies et les choix de
conception qui permettront de développer un robot quadrupède de surveillance performant
et efficace.
2. Conception
capteurs
Structure et Systeme de
locomotion commande
Système de
communication
une mémoire qui est capable de stocker les programmes qui contiennent plusieurs
algorithmes qui permettent le bon fonctionnement des autres parties du robot.
2. Structure : La structure du robot doit être robuste pour résister aux conditions
difficiles de l'environnement industriel. Des matériaux solides et durables, tels que
l'aluminium ou les alliages métalliques, peuvent être utilisés pour la construction de
la structure afin de garantir sa résistance aux chocs et aux vibrations.
4. Capteurs : Les capteurs jouent un rôle crucial dans le robot de surveillance. Des
capteurs tels que des caméras haute résolution, des capteurs de mouvement, des
capteurs de proximité, capteurs du son et des capteurs de température peuvent être
intégrés au robot pour détecter les anomalies, surveiller les activités et collecter des
données utiles. Les informations recueillies par ces capteurs peuvent être utilisées
pour des tâches telles que la détection d'intrusions, le suivi des objets ou des
personnes, et la détection des variations de température.
24
25
La carte Arduino Méga 2560 a été conçue comme la remplaçante de la carte Arduino
Méga.
Elle est dotée d’un microcontrôleur ATMega2560 disposant d’une mémoire flash de 256
KB, dont 8 KB dévolus au Bootloader.
Avec la carte Arduino Mega 2560, on dispose en outre d’un environnement matériel
amélioré : 54 entrées/sorties numériques, dont 14 pins digitaux pour vos sorties PWM, 16
pins d’entrée analogique, 4 UARTS, un bouton reset et un connecteur ICSP. La carte de
développement Arduino Mega 2560 a également été équipée d’un oscillateur à quartz de
16 MHz
26
La carte Arduino Mega 2560 peut être alimentée par un ordinateur via un câble USB,
mais peut également être reliée à une alimentation externe (Adaptateur AC/DC ou
batterie). Le microcontrôleur ATMega 2560 est compatible avec la plupart des shields
adaptés aux cartes Arduino Uno Rev3, Duemilanove et Diecimila.
La carte Arduino Mega 2560 est présentée ici dans sa 3e version, qui inclut de nouvelles
fonctionnalités et améliorations matérielles :
Vous trouverez à côté du pin AREF des pins SDA et SCL pour assurer la
communication I2C.
2 nouveaux pins sont situés à côté du bouton reset : un pin IOREF pour
l’adaptation du shields à la tension fournie par la carte, et un pin non connecté
à réserver pour de nouvelles utilisations.
• Microcontrôleur : ATmega2560
• Tension de fonctionnement : 5 V
26
27
• SRAM : 8 KB
• EEPROM : 4 KB
1
3
: 5 2
La structure d'un robot quadrupède de surveillance revêt une importance cruciale pour
assurer sa robustesse et sa résistance face aux conditions exigeantes présentes dans
l'environnement industriel. Une conception adéquate de la structure du robot garantit sa
stabilité, sa maniabilité et sa capacité à accomplir efficacement ses tâches de surveillance.
Voici les principaux aspects à prendre en compte lors de la conception de la structure d'un
tel robot, montré à la figure 2-3 :
3. Bras mécaniques : Les bras mécaniques peuvent être équipés de capteurs et de caméras
pour effectuer des tâches spécifiques de surveillance, telles que la capture d'images
détaillées ou l'inspection de zones difficiles d'accès. La conception des bras mécaniques
doit prendre en compte la portée, la flexibilité et la précision des mouvements, afin de
permettre au robot de réaliser différentes tâches avec efficacité.
4. Jambes articulées : Les jambes articulées sont un élément crucial de la structure du robot
quadrupède de surveillance, car elles lui permettent de se déplacer de manière fluide et
stable dans divers environnements. Ces jambes doivent être conçues avec des articulations
et des moteurs qui assurent des mouvements fluides et précis, offrant ainsi une excellente
adaptabilité aux différents terrains. Des capteurs de pression peuvent être intégrés aux
jambes pour garantir une adhérence optimale au sol et éviter les chutes.
La locomotion par les jambes articulées est l'un des moyens les plus couramment utilisés
pour permettre aux robots de se déplacer de manière autonome. Les jambes articulées
offrent une grande flexibilité et une large gamme de mouvements, ce qui permet aux robots
de s'adapter à différents environnements et de surmonter divers obstacles.
Pour assurer une stabilité et un équilibre optimaux, les robots à jambes articulées utilisent
une combinaison de capteurs et d'algorithmes pour contrôler les mouvements de leurs
jambes. Des capteurs de pression, d'inclinaison et de proximité sont utilisés pour détecter
les changements dans l'environnement et ajuster les mouvements en conséquence. Les
informations recueillies par les capteurs sont ensuite traitées par des algorithmes de
contrôle, qui envoient des signaux aux articulations des jambes pour réguler la vitesse, la
force et la direction du mouvement.
L'avantage des jambes articulées réside dans leur polyvalence et leur capacité à s'adapter à
différents terrains et situations. Les robots à jambes articulées peuvent naviguer avec agilité
dans des environnements complexes tels que des terrains accidentés, des escaliers ou des
surfaces glissantes. De plus, ils sont capables de franchir des obstacles en modifiant les
angles d'articulation de leurs jambes, ce qui leur permet de sauter, d'esquiver ou même de
grimper.
En résumé, la locomotion par les jambes articulées est une approche efficace pour
permettre aux robots de se déplacer de manière autonome. Cette méthode offre une grande
flexibilité, une stabilité et une adaptabilité, leur permettant de surmonter des obstacles et de
s'adapter à des environnements variés.
30
31
Pour ses mouvements, le robot va utiliser des servomoteurs de type MG995 12Kg 180
degrés. Le servomoteur MG995 12Kg 180 degrés est un servomoteur professionnel à la
recherche d’une solution fiable pour des projets électroniques et mécaniques. Avec sa
puissance de 12Kg et sa capacité de rotation à 180 degrés, ce servomoteur offre une
performance exceptionnelle pour des mouvements précis et contrôlés.
Grâce à sa conception de haute qualité, ce servomoteur est robuste et durable, ce qui en fait
un choix parfait pour les applications exigeantes. Il intervient dans plusieurs applications
comme lorsque on a besoin de contrôler un bras robotique, une caméra ou tout autre
dispositif, le servomoteur MG995 12Kg 180 degrés vous offre la fiabilité dont on a besoin.
Ce servomoteur est également très facile à utiliser. Il est compatible avec la plupart des
microcontrôleurs et peut être facilement programmé pour répondre à vos besoins
spécifiques. De plus, il est livré avec des câbles et des connecteurs, ce qui vous permet de
l’intégrer rapidement à votre projet.
Avec sa vitesse de rotation élevée et sa grande capacité de charge, ce servomoteur offre une
performance exceptionnelle pour un large éventail d’applications. Qu’on travaille dans le
domaine de la robotique, de l’automatisation industrielle ou de tout autre domaine
32
Dimensions : 40 x 20 x 36,5 mm
Type standard « TowerProMG995 »
Poids : environ 60g
Vitesse : O. 16 sec/600 sous 4.8V -o. 13 sec/600 sous 6.ov
Couple : 1 1 Kg/cm sous 4.8V 13Kg/cm sous 6.0V
Tension : 4.8V - 6V
Prise servomoteur standard
Orange Rouge Marron
Débattement angulaire : 1800
Consommation : 120 mA sans charge1 450 mA pour 1 1 Kg/cm environ
Temps de réponse de largeur d'impulsion: 5 microsecondes ou moins
Erreur de déviation angulaire : retour à 0 degrés, 45 0 autour de chaque 3 0
ou moins d'erreur.
Les caméras haute résolution sont des capteurs visuels essentiels pour la surveillance. Elles
permettent de capturer des images claires et détaillées, ce qui permet de détecter les objets,
32
33
les personnes ou les anomalies dans l'environnement du robot. Les caméras peuvent être
placées sur différentes parties du robot, telles que la tête, les bras mécaniques ou le châssis,
pour une surveillance à grande échelle. Dans le cadre de notre travail nous allons utiliser la
camera du type OV7670 Camera VGA pour Arduino.
Figure 2-9
Description :
OV7670 Camera VGA pour Arduino est un module de caméra compact et abordable conçu
pour être facilement intégré à des projets électroniques. Cette caméra utilise une interface
de contrôle série (SCCB) pour la configuration et une interface de données parallèle pour le
transfert de données d’image.
La caméra OV7670 VGA est équipée d’un capteur d’image CMOS haute résolution de
640×480 pixels. Le capteur prend en charge la capture de couleurs RVB 565 et d’autres
formats de couleur, ce qui permet de prendre des photos et de capturer des vidéos de haute
qualité.
Le module est compatible avec la carte Arduino, ce qui facilite l’intégration de la caméra à
des projets électroniques basés sur Arduino. Il est également possible d’utiliser cette
34
34
35
2. Capteurs de mouvement :
Les capteurs de mouvement sont utilisés pour détecter les changements de position, de
vitesse et de direction. Ces capteurs peuvent comprendre des accéléromètres, des
gyroscopes ou des capteurs d'inclinaison, qui permettent au robot de détecter les
mouvements potentiels ou les activités suspectes. Ils peuvent également aider le robot à
maintenir son équilibre et à s'adapter à des surfaces irrégulières. Dans le cadre de ce travail
le capteur MPU-6050
Le capteur MPU-6050
Figure 2-10
Principe de fonctionnement
Le gyroscope - accéléromètre MPU-6050 comporte 6 axe. Sa puce MEMS est très précise
avec une conversion analogique-digitale sur 16 bits simultanée sur chaque canal, et une
interface I2C (400 kHz). La lecture des mesures brutes de ce capteur est facile.
Le capteur contient un registre FIFO de 1024 octets que le microcontrôleur Arduino peut
lire, étant prévenu par un signal d'interruption. Le module fonctionne en esclave sur le bus
I2C vis à vis de l'Arduino (pins SDA, SLC) mais il peut aussi contrôler un autre dispositif
en aval avec AUX-DA et AUX-CL, par exemple un magnétomètre 3 axes (mesure du
champ magnétique terrestre) pour une orientation absolue dans l'espace (boussole). Sa
consommation est faible, 3.9 mA avec les 6 capteurs activés.
36
Le capteur possède un DMP (Digital Motion Processor) capable de faire des calculs rapides
directement sur la puce à partir des mesures brutes du capteur.
Il est donc plus simple de traiter les mesures brutes sur sa carte Arduino. Mesures réalisées
par le capteur
Le gyroscope retourne une vitesse angulaire de rotation selon 3 axes, 0 si pas de
rotation (degrés/seconde).
Il ne donne pas directement un angle d'orientation (degrés). Un angle s'obtient par
intégration dans le temps, en faisant attention au cumul des erreurs de dérive.
L'accéléromètre retourne une force ou une accélération (m²/s), la pesanteur terrestre
seule si le module est fixe.
On peut la supprimer (par soustraction) dans le code si on ne veut que les accélérations.
La vitesse (m/s) peut s'en déduire par une première intégration dans le temps (à une
vitesse initiale V0 près), en faisant attention au cumul des erreurs de dérive.
La position de déplacement (m) peut s'en déduire par une seconde intégration dans le
temps.
Un filtrage des mesures brutes s'impose si on ne veut pas cumuler des petites erreurs et
faire dériver la position exacte.
Lecture des données brutes du capteur
Les échelles de mesures suivantes sont programmables :
- 3 axes de gyroscope, échelles de ±250, ±500, ±1000, et ±2000 degrés/sec
- 3 axes d’accéléromètre, pleine échelle de ±2g, ±4g, ±8g et ±16g
- les quaternions (w x y z).
3 quaternions permettent de définir un axe, et le 4ème décrit la rotation autour de cet axe,
ceci permet d'éviter les limitations au-delà de 180°.
- les angles d'Euler (psi, téta, phi).
Les angles d'Euler sont les rotations autour des axes X Y et Z.
- Les angles yaw, pitch, and roll.
YAW = direction (> 0 virage à droite)
PITCH = tangage (> 0 bascule en avant)
36
37
3. Capteurs de proximité :
Les capteurs de proximité sont utilisés pour détecter la présence d'objets ou de personnes à
proximité du robot. Ces capteurs peuvent être basés sur différentes technologies, telle que
l'infrarouge, les ultrasons ou la vision par ordinateur. Ils permettent au robot de détecter les
obstacles, d'éviter les collisions et de naviguer en toute sécurité dans son environnement.
Le capteur HC-SR04 utilise les ultrasons pour déterminer la distance d'un objet. Il offre
une excellente plage de détection sans contact, avec des mesures de haute précision et
stables. Son fonctionnement n'est pas influencé par la lumière du soleil ou des matériaux
sombres, bien que des matériaux comme les vêtements puissent être difficiles à détecter.
Caractéristiques
Dimensions : 45 mm x 20 mm x 15 mm
Broches de connections
Vcc = Alimentation +5 V DC
38
39
Fonctionnement
Pour déclencher une mesure, il faut présenter une impulsion "high" (5 V) d'au moins 10 μs
sur l'entrée "Trig". Le capteur émet alors une série de 8 impulsions ultrasoniques à 40 kHz,
la sortie "Echo", dont la durée est proportionnelle à la distance mesurée.
Distance de l'objet
La distance parcourue par un son se calcule en multipliant la vitesse du son, environ 340
m/s (ou 34'000 cm/1'000'000 μs) par le temps de propagation, soit : d = v · t (distance =
vitesse · temps)
Le HC-SR04 donne une durée d'impulsion en dizaines de μs. Il faut donc multiplier la
valeur obtenue par 10 μs pour obtenir le temps t. On sait aussi que le son fait un aller-
retour. La distance vaut donc la moitié.
D = 34'000 cm/1'000'000 μs · 10us · valeur / 2 en simplifiant d =170'000 /1'000'000 cm ·
valeur
Finalement, d = 17/100 cm · valeur
La formule d = durée/58 cm figure aussi dans le manuel d'utilisation du HC-SR04 car la
fraction 17/1000 est égale à 1/58.8235. Elle donne cependant des résultats moins précis.
Note : A grande distance, la surface de l'objet à détecter doit mesurer au moins 0.5 m²*
40
4. Capteurs de température :
1. Réseau sans fil : Le robot de surveillance est équipé d'un module de communication
sans fil qui lui permet de se connecter à un réseau, généralement à l'aide du Wi-Fi
ou de la technologie cellulaire. Cela permet au robot d'envoyer des données et de
recevoir des instructions à partir d'une station de contrôle ou d'une interface
utilisateur.
40
41
garantit que les informations sensibles ne sont pas compromises et que seules les
personnes autorisées ont accès aux données.
Dans ce deuxième chapitre, nous avons élaboré la conception théorique de notre robot.
Nous avons abordé le système de commande, qui jouera le rôle du cerveau du robot, puis
nous avons décrit la construction de la structure externe. Ensuite, nous nous sommes
penchés sur la locomotion du robot, détaillant comment les articulations des jambes
fonctionneront. Nous avons également examiné divers capteurs essentiels à l'efficacité de
42
notre robot. Enfin, nous avons exploré le système de communication entre le robot et
l'équipe de surveillance de l'usine ou de l'entrepôt.
42
43
3.1 Introduction :
Maintenant que le contexte et l'objectif du chapitre ont été présentés, nous pouvons nous
plonger dans les détails du dimensionnement du robot. La première section abordera la
charge utile, un critère essentiel pour la conception du robot.
Le dimensionnement joue un rôle essentiel dans la conception d'un robot, car il détermine
les dimensions, les spécifications et les caractéristiques du robot qui garantissent son bon
44
1. Charge utile :
La charge utile est l'un des principaux critères de dimensionnement. Dans notre cas, la
charge utile maximale est de 200 g. Cela inclut les équipements supplémentaires, les
caméras de surveillance, les capteurs, etc. Le dimensionnement du robot doit garantir que
les membres et les articulations peuvent supporter cette charge sans ne se déformer ni se
casser.
3. Dimensions globales :
Les dimensions globales du robot sont également un aspect crucial du dimensionnement.
Le robot a une longueur de 24 cm, une largeur de 15 cm et une hauteur de 15 cm lorsqu'il
est debout. Ces dimensions seront importantes pour déterminer la taille et la forme des
membres, ainsi que pour garantir que le robot peut se déplacer librement dans son
environnement.
4. Résistance structurelle :
La résistance structurelle du robot est un critère de dimensionnement important pour éviter
les déformations excessives ou les défaillances des pièces. Les informations sur le plastique
utilisé dans l'imprimante 3D doivent être prises en compte pour évaluer la résistance à la
traction, la résistance à la flexion et la résistance aux chocs du matériau. Ces propriétés
mécaniques du plastique influenceront la conception des membres et des articulations pour
garantir une résistance adéquate.
44
45
5. Mobilité et articulations :
La conception des articulations des membres est essentielle pour permettre la mobilité du
robot. Chaque membre est composé de deux pièces avec une articulation de 5 cm et 10 cm
de longueur. L'angle d'inclinaison d'environ 45 degrés doit également être pris en compte
pour permettre un mouvement fluide et naturel du robot.
3.3.1 Cotation
24
15 3
Bras robotique
Servomoteur
Ou actionnaire
Corps
Avant-bras
Servomoteur
Bras
Pour notre travail, la charge utile que nous avons définie comprend le bras robotique, son
actionneur, la caméra et les capteurs. Nous estimons que l'ensemble de ces éléments pèse
200 g, ce qui équivaut à une force de 1,96 N.
Pour déterminer la répartition des charges sur le corps du robot, nous allons le modéliser
comme une poutre encastrée aux deux extrémités, puisqu'il est soutenu par quatre jambes.
∑ fy=0
RA – P’ + RB = 0
RA – 1,96 + RB = 0
RA + RB =1,96 N
-23,52+24RB
24RB=23,52
= 0,98
RA+RB=1,96N
RA+0,98=1,96N
48
RA=1,96 – 0,98
RA=0,98
Étant donné que la charge est uniformément répartie et centrée dans le corps du robot, cela
implique qu'il est équilibré de manière égale sur ses quatre jambes.
≤Rp
Avec :
Wz : module de résistance
RP : résistance Pratique
Alors pour calculer le module de résistance (Wz) nous allons voir le tableau des moments
quadratique de différentes formes dans le tableau si dessous :
48
49
Alors comme le corps de notre robot a une forme comme ce du profile carre, nous allons
sera B
h H
b
50
Calcule de vérification
D'après ce tableau ci haut de schéma statique des poutres, nous constatons que notre charge
est ponctuel sur le corps du robot ; ainsi pour calculer d'une autre manière le moment
Avec :
P= le poids de la charge
L = la longueur du corps
nous aurons :
50
51
ɱfmax= 11,76Nm
Alors pour calculer la flèche du corps du robot nous allons utiliser la formule
Avec :
- P= poids
- - I= le moment quadratique
Alors pour calculer le I, nous allons nous référer du tableau de moment quadratique de
Nous constatons que le corps de notre robot a une déformation insignifiante même
négligeable.
A présent nous allons calculer les différentes sollicitations et contraintes aux quelles sont
soumises les jambes du robot.
52
Après avoir analysé la répartition des charges, nous avons observé une distribution
équitable de la charge sur l'ensemble des jambes du robot. Par conséquent, nous avons
décidé de subdiviser la charge de manière équitable entre les quatre jambes. Ainsi, chaque
jambe supportera une charge de 0,49g.
Étant donné que la charge est uniformément répartie sur toutes les jambes, nous allons
dimensionner une seule jambe pour représenter les autres.
Pour trouver le couple moteur du servomoteur avant-bras, nous allons d’abord calculer le
couple résistant en utilisant la formule : Cr=Qp×d
Qp sera la somme de la charge que le
robot va supporter diviser par 4 et le
poids du corps du robot diviser par 4,
96 500
Qp c’est-à-dire +
𝑔=0,1255kgForce=
0,12545kg×9,81m/s² =1,2306N
500g est le poids estimatif du corps du
robot. Ainsi :
Cr= 1,2306×0,05 =0,06153Nm
52
53
Avec :
Qp : la charge
d : la distance
σf : contrainte de flexion
Condition de résistance
Avec
Rp : la résistance pratique
D’où : Re est la limite élastique du matériaux pris en compte (pour notre cas Re= 50MPa
ou 50N /mm² car nous allons utiliser le plastique acide poly lactique PLA) et S le
coefficient de sécurité.
Pour dire que l’avant-bras de notre robot sera un tube en plastique PLA de profilé carre
d’épaisseur de 37,07cm.
Déterminer la charge utile du bras sera une tâche complexe, car nous devrons prendre en
considération le poids du servomoteur de l'avant-bras, le poids de l'avant-bras lui-même,
ainsi que le poids du servomoteur du bras. Pour amorcer ce processus, nous débuterons par
évaluer le poids total du bras :
54
55
Avec :
S : surface
a : cote
v : volume
l : longueur
φv : masse volumique ( pour notre plastique, elle varie entre 1250 et 1270 g/m³)
m : la masse
Ainsi :
v= 0,003735m³
m= 1,250×0,003735
m=0,004668
=0,04579kg
=155g
Alors pour calculer le moment fléchissant du bras, nous allons appliquer la formule ;
Le calcul du couple résistant du servomoteur du bras est déterminé par le poids de l’avant-
bras et le poids du servomoteur de l’avant-bras et du poids du corps du robot. On aura :
Cr=(0,04579+0,055+0,1255)×0,010×9,81Cr=0,2219Nm
La sélection des composants est basée sur leurs caractéristiques techniques. Dans le
chapitre précédent, nous avons examiné succinctement chaque composant et ses
56
57
spécifications. Après une analyse, il est apparu que ces composants sont particulièrement
adaptés à notre projet. Cette conclusion découle de leur popularité et des recommandations
des experts dans le domaine.
Notre système électronique est constitué de deux grandes parties : la partie électronique et
la partie informatique.
Partie électronique
La partie électronique du système est initialement alimentée par une source de 5 volts,
fournissant de l'énergie à tous les autres composants. Une fois alimentée, la carte Arduino
Mega devient opérationnelle et distribue cette énergie aux autres composants, agissant
comme le cerveau du système en les contrôlant et les coordonnant.
Une fois activé, la carte Arduino envoie des instructions au servomoteur pour stabiliser le
robot en position debout. Simultanément, le capteur ultrasonique vérifie la proximité des
murs, permettant au robot de déterminer sa trajectoire. Pour ce faire, le servomoteur du bras
robotique pivote d'abord de 90 degrés vers la gauche, puis de 180 degrés vers la droite,
permettant au capteur ultrasonique de repérer les zones dégagées.
Une fois prêt, le robot commence sa patrouille. Avant cela, il se connecte au système de
sécurité de l'usine ou de l'entrepôt via un réseau Wi-Fi local pour diffuser en continu les
images capturées par sa caméra.
Le déplacement du robot est ensuite coordonné par la carte Arduino, qui commande les
servomoteurs pour simuler une marche. Cette démarche implique une coordination
complexe des mouvements des membres, avec des rotations précises des servomoteurs pour
simuler le mouvement des jambes.
En cas de virage, le capteur ultrasonique détecte tout obstacle à une distance inférieure ou
égale à 50 cm. Alternativement, le capteur de son peut repérer des bruits inhabituels dans
58
l'usine ou l'entrepôt, indiquant une possible intrusion. Dans ces situations, le robot inspecte
la zone d'origine du son.
Pour détecter les changements de position, le capteur de mouvement MPU transmet les
variations détectées à la carte Arduino pour analyse.
Il est important de souligner que le robot effectue ses rondes de surveillance lorsque l'usine
ou l'entrepôt est fermé, supposant que tous les employés sont partis, et tout individu présent
est considéré comme suspect.
58
1
Ordinogramme du système
Début
Alimentation 5V
Carte Arduino
Sonner le bizer
Fin
2
Dans ce troisième chapitre nous avons dimensionner notre robot de surveillance cas
d’application dans une usine ou dans un entrepôt, en parlant d’abord des critères du
dimensionnement, puis de la cotation et calcule des parties du robot, suite après du choix
des composant et à la fin de l’ordinogramme du système.
Tous ces points, nous ont permis de tire une conclusion sur la réalisation de notre robot, en
sachant que ce dernier pourra travail tranquillement sans disfonctionnement car presque
tous les paramètre clé ont été pris en considération.
2
3
Conclusion générale
Cette étude a donc permis d'acquérir une compréhension approfondie de la robotique, avec
une focalisation particulière sur la conception et le dimensionnement de robots quadrupèdes
dédiés à la surveillance. Les résultats obtenus offrent une base solide pour le
développement ultérieur de robots similaires, ouvrant ainsi de nouvelles perspectives dans
le domaine de l'automatisation industrielle et de la surveillance. L'introduction de robots
quadrupèdes dans des environnements industriels peut contribuer à améliorer l'efficacité
opérationnelle, la sécurité et la productivité, tout en réduisant les coûts associés à la main-
d'œuvre humaine.
Bibliographie
[1] G. T. Eddine, conception et fabrication d'un prototype mecanique d'une pqtte d'un robot
marcheur quadrupede, republique d'Algerie: universite Larbi Ben M'Hidi,
04/juiellet/2022.
[2] N. Ikram, Conception et réalisation d’un robot quadrupède, république d’Algérie:
université larbi ben m’hidi de oum el bouaghi, Le 05/06/2016.
[3] S. DELTOMBE, robot de surveillance domestique, université Lille 1, 2014/2015.
[4] T. Hichame, Modélisation et commande d’un robot bipède, 2019.
[5] m. mbangu, cours de fabrication mecanique, 2020 - 2021.
[6] JUnit.org. [En ligne]. Available: http://www.junit.org. [Accès le 2 Janvier 2019].
[7] N. Ikram, «Conception et réalisation d’un robot quadrupède».
[8] wikipedia, «rover mars,» mars exploration rover, 2020.
[9] A. HAMOUDI, Conception et réalisation d’un robot, 2016.
4
5
Contributions
Aux futurs chercheur, je vous suggère d’améliore ce travail en explorant plus l’intelligence
artificiel car nous avons constaté que l’usage du microcontrôleur Arduino n’est pas efficace
pour des projets de grande envergure ; également pensez en utiliser des matériaux plus
léger et résistant ; essayez de diminuer la taille de robot mais aussi voir comment utiliser les
servomoteurs qui ne font pas trop des bruits, et essayer d’ajouter d’autres fonctionnalités et
d’autres capteur.
6
Annexe A
Partie informatique(CODE)
#include <Servo.h>
#include <NewPing.h>
#include <WiFi.h>
#include <ESP32CAM.h>
#define TRIGGER_PIN 2
##define MAX_DISTANCE 200
#define LEFT_SOUND_SENSOR_PIN A0
#define RIGHT_SOUND_SENSOR_PIN A1
#define FRONT_SOUND_SENSOR_PIN A2
Servo leg1_joint1;
Servo leg1_joint2;
Servo leg1_joint3;
Servo leg2_joint1;
Servo leg2_joint2;
Servo leg2_joint3;
Servo leg3_joint1;
6
7
Servo leg3_joint2;
Servo leg3_joint3;
Servo leg4_joint1;
Servo leg4_joint2;
Servo leg4_joint3;
void setup() {
// Initialisation des servomoteurs
leg1_joint1.attach(2);
leg1_joint2.attach(3);
leg1_joint3.attach(4);
leg2_joint1.attach(5);
leg2_joint2.attach(6);
leg2_joint3.attach(7);
leg3_joint1.attach(8);
leg3_joint2.attach(9);
leg3_joint3.attach(10);
leg4_joint1.attach(11);
leg4_joint2.attach(12);
leg4_joint3.attach(13);
// Connexion au WiFi
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
8
// Initialisation de la caméra
Serial.begin(CAMERA_CONNECTION_SPEED);
camera_init();
}
void loop() {
// Vérifier les capteurs de son
int leftSound = analogRead(LEFT_SOUND_SENSOR_PIN);
int rightSound = analogRead(RIGHT_SOUND_SENSOR_PIN);
int frontSound = analogRead(FRONT_SOUND_SENSOR_PIN);
// Détecter l'intrusion
if (leftSound > 500 || rightSound > 500 || frontSound > 500) {
// Déplacement vers la source du son
if (leftSound > rightSound) {
// Déplacer vers la gauche
moveLeft();
} else {
// Déplacer vers la droite
moveRight();
}
} else {
// Pas d'intrusion détectée, avancer normalement
8
9
moveForward();
}
delay(100);
}
void camera_init() {
esp32cam_init();
esp32cam_set_jpeg_quality(10);
}
void camera_capture() {
if (esp32cam_capture()) {
Serial.println("Photo prise !");
} else {
Serial.println("Erreur lors de la capture de la photo.");
}
}
void camera_stream(WiFiClient& client) {
size_t len;
uint8_t* buffer = esp32cam_get_fb(&len);
client.println("POST /upload HTTP/1.1");
client.println("Host: adresse_IP_du_serveur");
client.println("Content-Type: image/jpeg");
client.print("Content-Length: ");
client.println(len);
client.println();
client.write(buffer, len);
esp32cam_return_fb(buffer);
10
void moveForward() {
// Définir les angles des servomoteurs pour avancer
leg1_joint1.write(20);
leg1_joint2.write(15);
leg1_joint3.write(0);
leg2_joint1.write(0);
leg2_joint2.write(0);
leg2_joint3.write(0);
leg3_joint1.write(20);
leg3_joint2.write(15);
leg3_joint3.write(0);
leg4_joint1.write(0);
leg4_joint2.write(0);
leg4_joint3.write(0);
}
void turnLeft() {
// Définir les angles des servomoteurs pour tourner à gauche
leg1_joint1.write(20);
leg1_joint2.write(20);
leg1_joint3.write(45);
leg2_joint1.write(0);
10
11
leg2_joint2.write(0);
leg2_joint3.write(0);
leg3_joint1.write(20);
leg3_joint2.write(20);
leg3_joint3.write(45);
leg4_joint1.write(0);
leg4_joint2.write(0);
leg4_joint3.write(0);
}
void turnRight() {
// Définir les angles des servomoteurs pour tourner à droite
leg1_joint1.write(0);
leg1_joint2.write(0);
leg1_joint3.write(0);
leg2_joint1.write(20);
leg2_joint2.write(20);
leg2_joint3.write(45);
leg3_joint1.write(0);
leg3_joint2.write(2);
leg3_joint3.write(0);
leg4_joint1.write(20);
leg4_joint2.write(20);
leg4_joint3.write(45);
12
}
void moveLeft() {
12
13