Arduino Robot-Librairie

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

La librairie Robot

La librairie du robot est inclus dans la version d'Arduino IDE 1.0.5 et suivante.

Le robot inclus de nombreux senseurs et actuateurs. La librairie est conçue pour accéder facilement aux fonctionnalités du robot.

Le robot est composé de deux cartes, une carte moteur et une carte de contrôle. Chaque carte dispose de son propre processeur programmable.

La librairie vous permet de vous d'interfacer avec les différents senseurs et périphériques de la carte de contrôle :

  • potentiomètre
  • 5 boutons momentanés
  • Un écran couleur 160x120 pixels
  • Une EEPROM de 512Kbit (64 Kbyte)
  • Un haut parleur
  • Une boussole (compass)
  • 3 connecteurs I2C
  • 8 connecteurs d'entrée TinkerKit

La libraire vous permet également de réaliser de nombreuses opérations avec la carte moteur :

  • Contrôler la vitesse et la direction des moteurs
  • Contrôler le courant utilisé par chaque moteur (si le courant augment, c'est que le moteur est bloqué... ou le robot bloqué)
  • Lecture de l'état des 5 senseurs de sol (aussi connu comme "détecteurs de ligne")
  • Accéder au broche d'entrées/sorties (I/O) de la carte
  • Controler le port I2C
  • Lire l'état des 4 entrées TinkerKit

Vous pouvez visiter nos pages Guide Démarrage et la présentation matérielle pour plus d'information sur le robot.

Structure de la librairie

Cette librairie permet d'accéder facilement aux fonctionnalités d'Arduino Robot. Elle s'appuie sur un certain nombre de librairies tierces tels que Fat16 pour la lecture de carte SD, EasyTransfer pour optimiser les transferts série , Squawk pour jouer des musiques de jeu dans le pure style des années 80 et IRRemote pour le contrôle par infrarouge.

La librairie s'appuie également sur un certain nombre de librairies Arduino tel que TFT, SPI et Wire. Leurs fonctionnalités ont été répliquées dans la librairie du robot pour optimiser la taille du code.

Il est possible de programmer les deux cartes (la carte de côntrole et la carte moteur). Cependant, il est recommandé au programmeur novice de commencer à programmer la carte de contrôle, laissant le bidouillage de la carte moteur à plus tard. La librairie expose les senseurs des deux cartes ar l'intermédiaire d'un seul objet.

Vous disposez de deux classes principales pour commander le robot:

  • RobotControl: Commande la carte de contrôle ainsi que les entrées/sorties (I/O) et les moteurs de la carte moteur (lorsque la carte moteur utilise le firmware par défaut).
  • RobotMotor: commande de la carte moteur. Utilisez la pour réaliser votre version personnalisée du firmware de la carte moteur.

Exemples

Voici quelques exemples pour illustrer les possibilités du robot et vous aider à démarrer rapidement avec les fonctionnalités de base.

  • Logo arduino.cc - Indiquez à votre robot où se rendre à l'aide du clavier.
  • Line Following arduino.cc - Dessinez un circuit que votre robot parcourra
  • Disco Bot arduino.cc - transformez votre robot en jukebox 8-bit et le faire dancer sur le rythme (beat)
  • Compass arduino.cc - planifier une chasse au trésor à l'aide de la boussole digital
  • Inputs arduino.cc - apprenez à contrôler le potentiomètre et le clavier
  • Wheel Calibration arduino.cc - synchronisez les roues pour obtenir une meilleur performance
  • Runaway Robot arduino.cc - jouez à chat avec votre robot en utilisant le senseur de distance
  • Remote control arduino.cc - Réutiliser une vieille télécommande de télévision pour commander votre robot à distance
  • Picture browser arduino.cc - Envie d'utiliser vos propres images? Voici comment faire
  • Rescue arduino.cc - Apprenez à votre robot à trouver les perles cachées dans un labyrinthe
  • Hello User arduino.cc - Hackez la démo de bienvenue du robot et réalisez votre propre démo

Classes et méthodes

Classe RobotControl

Cette classe commande la carte de contrôle ainsi que toutes les I/Os et moteurs de la carte moteur. La carte moteurs doit bien entendu disposé du firmware par défaut.

Fonctions RobotControl

Traduction des différentes fonctions de RobotControl. Vous pouvez aussi vous référer à la version anglaise sur la page correspondante sur Arduino.cc (anglais)


  • setMode()Changer le mode du robot. Fonctionnement simple ou suivit de ligne
  • pauseMode()Permet de mettre en pause/redémarrer la carte moteur
  • isActionDone()Vérifie si une action de la carte moteur est achevée




  • motorsWrite()Commande des deux moteurs
  • motorsStop()Stoppent les deux moteurs
  • turn()Fait tourner le moteur d'un certain nombre de degrées (par rapport à la position actuelle)
  • pointTo()Oriente le robot de façon absolue (en utilisant la boussole






Classe RobotMotor

Utilisez cette classe pour réaliser votre propre version du FirmWare pour la carte moteur.

Vous pouvez lire ce document (Arduino.cc, Anglais) pour apprendre comment réaliser votre propre firmware pour la carte moteur en utilisant la classe RobotMotor.

Fonctions RobotMotor

Traduction des différentes fonctions de RobotControl. Vous pouvez aussi vous référer à la version anglaise sur la page correspondante sur Arduino.cc (anglais)

  • begin()Initialise la carte moteur
  • process()Effectue un certain nombre d'action en fonction du mode de fonctionnement du robot.
  • parseCommand()Recoit une commande depuis la carte de contrôle et traite la demande.


  • motorsWrite()Contrôle les roues du robot en vitesse et direction depuis le processeur de la carte moteur
  • IRread()Effectue une lecture d'un senseur infrarouge spécifique (l'un des détecteurs de ligne/sol)

Source: Arduino Robot, getting started with the Arduino Robot, the Robot's library pages. Crédit: Arduino.cc, licence Creative Common Attribution ShareAlike.

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.