Modifications

Sauter à la navigation Sauter à la recherche
6 235 octets ajoutés ,  14 septembre 2013 à 22:37
aucun résumé de modification
Ligne 32 : Ligne 32 :  
== Structure de la librairie ==
 
== Structure de la librairie ==
   −
This library enables easy access to the functionality of the [http://mchobby.be/PrestaShop/product.php?id_product=308 Arduino Robot]. It relies on a number of 3rd party libraries including [https://code.google.com/p/fat16lib/ Fat16], [https://github.com/madsci1016/Arduino-EasyTransfer EasyTransfer], [https://github.com/stg/Squawk Squawk], and [https://github.com/shirriff/Arduino-IRremote IRRemote]. It also relies on a number of Arduino libraries like [http://arduino.cc/en/Reference/TFTLibrary TFT], [http://arduino.cc/en/Reference/SPI SPI] et [http://arduino.cc/en/Reference/Wire Wire]. Their functionality has been replicated inside the robot's library to optimize the code's size.
+
Cette librairie permet d'accéder facilement aux fonctionnalités d'[http://mchobby.be/PrestaShop/product.php?id_product=308 Arduino Robot]. Elle s'appuie sur un certain nombre de librairies tierces tels que [https://code.google.com/p/fat16lib/ Fat16] pour la ''lecture de carte SD'', [https://github.com/madsci1016/Arduino-EasyTransfer EasyTransfer] ''pour optimiser les transferts série'' , [https://github.com/stg/Squawk Squawk] ''pour jouer des musiques de jeu dans le pure style des années 80'' et [https://github.com/shirriff/Arduino-IRremote IRRemote] pour le contrôle par infrarouge.  
   −
It is possible to program both the Control and the Motor boards. However, it is recommended that novice programmers begin with programming the control board, leaving the motor board for later. The library exposes the sensors on both boards through a single object.
+
La librairie s'appuie également sur un certain nombre de librairies Arduino tel que [http://arduino.cc/en/Reference/TFTLibrary TFT], [http://arduino.cc/en/Reference/SPI SPI] et [http://arduino.cc/en/Reference/Wire Wire]. Leurs fonctionnalités ont été répliquées dans la librairie du robot pour optimiser la taille du code.
   −
There are two main classes that command the robot:
+
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.
   −
* RobotControl: commands the Control Board as well as the I/Os and motors on the Motor Board, when running the default firmware.
+
Vous disposez de deux classes principales pour commander le robot:
   −
* RobotMotor: commands the Motor Board. Use it to make your own custom version of the Motor Board firmware
+
* 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 ==
 
== Exemples ==
Ligne 58 : Ligne 59 :  
* [http://arduino.cc/en/Tutorial/RobotHelloUser Hello User] <small>''arduino.cc''</small> - Hackez la démo de bienvenue du robot et réalisez votre propre démo
 
* [http://arduino.cc/en/Tutorial/RobotHelloUser Hello User] <small>''arduino.cc''</small> - Hackez la démo de bienvenue du robot et réalisez votre propre démo
   −
== Autre ==
+
== Classes et méthodes ==
   −
Les liens vers les noms de fonction doivent commencer par "RB-ARD-ROBOT-Func-" avec comme exemple RB-ARD-ROBOT-Func-digitalRead pour Robot.digitalRead()
+
=== 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.
 +
 
 +
* [[RB-ARD-ROBOT-Class-RobotControl|constructeur RobotControl]]
 +
 
 +
=== Fonctions RobotControl ===
 +
Traduction des différentes fonctions de RobotControl. Vous pouvez aussi vous référer [http://arduino.cc/en/Reference/RobotLibrary à la version anglaise sur la page correspondante sur Arduino.cc] (anglais)
 +
 
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-begin|begin()|Initialise le robot}}
 +
 
 +
 
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-setMode|setMode()|Changer le mode du robot. Fonctionnement simple ou suivit de ligne}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-pauseMode|pauseMode()|Permet de mettre en pause/redémarrer la carte moteur}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-isActionDone|isActionDone()|Vérifie si une action de la carte moteur est achevée}}
 +
 
 +
 
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-lineFollowConfig|lineFollowConfig()|Changer le paramétrage du mode de suivit de ligne}}
 +
 
 +
 
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-digitalRead|digitalRead()|Lecture de l'état d'une entrée}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-digitalWrite|digitalWrite()|Modification de l'état d'une sortie}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-analogRead|analogRead()|Lecture d'une entrée analogique}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-analogWrite|analogWrite()|Ecriture d'une valeur analogique sur une sortie}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-updateIR|updateIR()|Lecture des 5 senseurs de ligne}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-knobRead|knobRead()|Lecture de la valeur analogique du potentiomètre}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-compassRead|compassRead()|Lecture de la valeur de la boussole}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-keyboardRead|keyboardRead()|Détecte si l'un des 5 boutons est pressé}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-waitContinue|waitContinue()|Met le programme en pause et attend la pression d'un des boutons}}
 +
 
 +
 
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-motorsWrite|motorsWrite()|Commande des deux moteurs}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-motorsStop|motorsStop()|Stoppent les deux moteurs}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-turn|turn()|Fait tourner le moteur d'un certain nombre de degrées (par rapport à la position actuelle)}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-pointTo|pointTo()|Oriente le robot de façon absolue (en utilisant la boussole}}
 +
 
 +
 
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-beginSpeaker|beginSpeaker()|Initialise le haut parleur et la librairie audio}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-playMelody|playMelody()|Joue une mélodie sur base d'une chaine de caractère}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-beep|beep()|Fait un bref bip.}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-playFile|playFile()|Joue un fichier .sqm stocké sur la carte SD}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-tuneWrite|tuneWrite()|Modifie la tonalité durant un playFile()}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-tempoWrite|tempoWrite()|Modifie le tempo durant un playFile()}}
 +
 
 +
 
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-beginTFT|beginTFT()|Initialise le module TFT (écran)}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-text|text()|Afficher du texte sur l'écran}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-drawBMP|drawBMP()|Affiche une image BMP}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-debugPrint|debugPrint()|Affiche une valeur (int ou long) sur l'écran}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-clearScreen|clearScreen()|Rempli l'écran avec la couleur de fond}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-displayLogos|displayLogos()|Affiche temporaire des logos stockés sur la carte SD}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-drawCompass|drawCompass()|Affiche une boussole}}
 +
 
 +
 
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-beginSD|beginSD()|Initialise le module carte SD.}}
 +
 
 +
 
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-userNameRead|userNameRead()|Lit le nom utilisateur stocké dans l'EEPROM}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-userNameWrite|userNameWrite()|Ecrit le nom utilisateur dans l'EEPROM}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-robotNameRead|robotNameRead()|Lit le nom du robot stocké dans l'EEPROM}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-robotNameWrite|robotNameWrite()|Ecrit le nom du robot dans l'EEPROM}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-cityNameRead|cityNameRead()|Lit le nom de la ville stocké dans l'EEPROM}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-cityNameWrite|cityNameWrite()|Ecrit le nom de la ville dans l'EEPROM}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-countryNameRead|countryNameRead()|Lit le nom du pays stocké dans l'EEPROM}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-Func-countryNameWrite|countryNameWrite()|Ecrit le nom du pays dans l'EEPROM}}
 +
 +
<!-- Les liens vers les noms de fonction doivent commencer par "RB-ARD-ROBOT-Func-" avec comme exemple RB-ARD-ROBOT-Func-digitalRead pour Robot.digitalRead()
    
[[RB-ARD-ROBOT-Func-digitalRead|Robot.digitalRead()]]  
 
[[RB-ARD-ROBOT-Func-digitalRead|Robot.digitalRead()]]  
Ligne 69 : Ligne 136 :     
[[RB-ARD-ROBOT-Func-motorsWrite|Robot.motorsWrite()]]
 
[[RB-ARD-ROBOT-Func-motorsWrite|Robot.motorsWrite()]]
 +
-->
 +
 +
=== Classe RobotMotor ===
 +
 +
Utilisez cette classe pour réaliser votre propre version du FirmWare pour la carte moteur.
 +
 +
* [[RB-ARD-ROBOT-Class-MotorControl|constructeur MotorControl]]
 +
 +
Vous pouvez [http://arduino.cc/en/Reference/RobotMotorWriteYourOwnFirmware 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 [http://arduino.cc/en/Reference/RobotLibrary à la version anglaise sur la page correspondante sur Arduino.cc] (anglais)
 +
 +
* {{ARDFunc2|RB-ARD-ROBOT-FuncMotor-begin|begin()|Initialise la carte moteur}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-FuncMotor-process|process()|Effectue un certain nombre d'action en fonction du mode de fonctionnement du robot.}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-FuncMotor-parseCommand|parseCommand()|Recoit une commande depuis la carte de contrôle et traite la demande.}}
 +
    +
* {{ARDFunc2|RB-ARD-ROBOT-FuncMotor-motorsWrite|motorsWrite()|Contrôle les roues du robot en vitesse et direction depuis le processeur de la carte moteur}}
 +
* {{ARDFunc2|RB-ARD-ROBOT-FuncMotor-IRread|IRread()|Effectue une lecture d'un senseur infrarouge spécifique (l'un des détecteurs de ligne/sol)}}
    
{{Arduino-Robot-TRAILER}}
 
{{Arduino-Robot-TRAILER}}
29 836

modifications

Menu de navigation