View  Edit  Attributes  History  Attach  Print  Search

Page d'accueil de la documentation de mes librairies Arduino perso du site www.mon-club-elec.fr


1.  Présentation

  • Je vous propose sur cette page la documentation de plusieurs librairies Arduino que j'ai écrites et qui comportent plusieurs fonctions utiles au quotidien...
  • La plupart de ces librairies sont structurées de façon similaire :
    • un ensemble de fonctions spécifiques utilisables directement à partir des programmes
    • une fonction d'analyse de chaines de caractères String qui permet l'appel des fonctions de la librairie automatiquement à partir d'une chaîne qui aura au préalable été reçue sur le port Série ou même par réseau.

2.  Contact et support

Je crée ce site sur mon temps libre et je mets les contenus à la disposition de tous "as is" en espérant que cela soit utile. Pour tous les retours, questions, suggestions,utiliser l'adresse suivante : support_at_mon-club-elec_point_fr Je vous répondrai en fonction de mes disponibilités.

3.  Librairie Utils

3.1  Description

  • Cette librairie rassemble plusieurs fonctions pratiques et d'usage fréquent utilisables dans les programmes Arduino :
    • pour la réception de chaines de caractères en provenance du port Série
    • pour l'analyse de chaines de caractères
    • pour la conversion de chaines de caractères en valeurs numériques

3.2  Constructeur

3.3  Fonctions de la librairie

Fonctions de réception de chaîne de caractères sur le port Série :

  • String waitingString (int asciiBreak, boolean debugIn) : réception d'une chaine sur le port Série, break sur valeur ascii
  • String waitingString (boolean debugIn) : réception d'une chaine sur le port Série, break sur \n par défaut
  • String waitingString () : réception d'une chaine sur le port Série, break sur \n par défaut
  • void waitForString(String stringForWaitIn) : attente de la réception d'une chaine précise sur le port Série

Fonctions d'analyse de chaîne de caractères :

  • String testInstructionString (String chaineReception, String chaineTest): extraction d'un paramètre texte
  • boolean testInstructionLong (String chaineReception,String chaineTest, int nbParam, long paramsIn[]) : extraction d'un ou plusieurs paramètres entiers

A venir :

  • testInstructionFloat() : extraction d'un ou plusieurs paramètres décimaux
  • testInstructionStringMulti() : extraction d'un ou plusieurs paramètres chaîne de caractères
  • split() : extraction des sous-chaînes séparées par une virgule au sein d'une chaine

Fonctions de conversion de chaines :

3.4  Téléchargement et installation

  • la dernière version de la librairie est disponible ici : librairie Utils
  • Extraire l'archive et copier/coller le répertoire Utils dans le répertoire Arduino/libraries/
  • Relancer le logiciel Arduino : la librairie doit être présente dans le menu /skecth/Import Library/

3.5  Utilisation


#include <Utils.h> // inclusion de la librairie

Utils utils; // déclare objet racine d'accès aux fonctions de la librairie Utils
 

4.  Librairie SimpleCDbot

Par X. HINAULT - Aout 2012 - MAJ : Nov 2012

4.1  Description

  • Cette librairie rassemble plusieurs fonctions permettant l'utilisation simplifiée du SimpleCDbot, un petit robot didactique utilisant 2 servomoteurs à rotation continue.
  • D'une manière générale, cette librairie sera utilisable pour tout robot utilisant 2 servomoteurs à rotation continue.

Cette librairie inclut une fonction analyseChaine() qui permet de d'appeler les fonctions de la librairie à partir d'une chaine de caractères reçue sur le port série ou par réseau. Il est ainsi très simple de contrôler le robot de façon "avancée" que ce soit à partir du Terminal série, d'une interface Processing ou d'un poste distant par wifi par exemple.

4.2  Prérequis

  • Cette librairie nécessite l'inclusion :
    • de la librairie Arduino Servo
    • de ma librairie Utils

4.3  Constructeur

4.4  Fonctions de la librairie

Contrôle des mouvements individuels des servomoteurs

Contrôle des mouvements synchrone des servomoteurs

Fonction d'analyse de chaine

fonctions de paramétrages internes

Etalonnage des mouvements individuels des servomoteurs

4.5  Téléchargement et installation

  • la dernière version de la librairie est disponible ici : librairie SimpleCDbot
  • Extraire l'archive et copier/coller le répertoire SimpleCDbot dans le répertoire Arduino/libraries/
  • Relancer le logiciel Arduino : la librairie doit être présente dans le menu /skecth/Import Library/

4.6  Utilisation


//---- inclusion de librairie
#include <Servo.h> // inclut la librairie Servo

#include <Utils.h> // librairie personnelle avec plusieurs fonctions utiles

#include <SimpleCDbot.h> // librairie personnelle avec fonctions de controle d'une robot à 2 servos RC
 

5.  Librairie RobotCCx2

Par X. HINAULT - Aout 2012 - MAJ : Sept 2012

5.1  Description

  • Cette librairie rassemble plusieurs fonctions permettant l'utilisation simplifiée d'un robot utilisant 2 moteurs CC typiquement via une interface de puissance contrôlant chacun des moteurs par une broche de sens et une broche de vitesse (PWM)
  • Un exemple d'interface compatible avec cette librairie : Carte DFRobot Motor Drive 2A (Basée sur L298)
  • D'une manière générale, cette librairie sera utilisable pour tout robot utilisant 2 moteurs CC.

Cette librairie inclut une fonction analyseChaine() qui permet de d'appeler les fonctions de la librairie à partir d'une chaine de caractères reçue sur le port série ou par réseau. Il est ainsi très simple de contrôler le robot de façon "avancée" que ce soit à partir du Terminal série, d'une interface Processing ou d'un poste distant par wifi par exemple.

Ressources utiles

5.2  Prérequis

  • Cette librairie nécessite l'inclusion :

5.3  Constructeur

5.4  Fonctions de la librairie

Contrôle des mouvements individuels des servomoteurs

Contrôle des mouvements synchrone des servomoteurs

Fonction d'analyse de chaine

fonctions de paramétrages internes

5.5  Téléchargement et installation

  • la dernière version de la librairie est disponible ici : librairie RobotCCx2
  • Extraire l'archive et copier/coller le répertoire RobotCCx2 dans le répertoire Arduino/libraries/
  • Relancer le logiciel Arduino : la librairie doit être présente dans le menu /skecth/Import Library/

5.6  Utilisation


//---- inclusion de librairie
#include <Utils.h> // librairie personnelle avec plusieurs fonctions utiles

#include <RobotCCx2.h> // librairie personnelle avec fonctions de controle d'une robot à 2 moteurs CC
 

6.  Librairie UtilsServo

6.1  Description

  • Cette librairie Arduino que j'ai écrite rassemble plusieurs fonctions (très) utiles pour gérer un ou plusieurs servomoteurs de façon fluide et synchronisée.
  • IMPORTANT : Cette librairie s'utilise avec les librairies Utils et Servo.

Le plus important avec cette librairie, c'est d'utiliser une alimentation suffisante 5V /3 ou 4A pour alimenter tous les servomoteurs utilisés !!

6.2  Constructeur

6.3  Fonctions de la librairie

  • void anglesServo(int index, float angle0, float angle1, float angle2); // initialise angles du servomoteur avec :
    • [0] : angle courant = angle actuel du servo
    • [1] : angle de travail - utilisé pour positions intermédiaires
    • [2] : angle Initial (Home)
  • void init( int brochesServosIn[]); // initialise les servomoteurs
  • void debug(boolean debugIn); // activation / désactivation debug
  • float angle(float valeur_angle); // convertit l'angle en l'impulsion correspondante à partir valeur POSMIN et POSMAX internes
  • void vitesseServos(int delaiVitesse); // fixe delai entre 2 pas de positionnement, en ms
  • void home ();
  • void toHome();
  • void servo(int indexServo, float toAngle);
  • void servoTo( Servo toServo, float fromAngle, float toAngle, int toVitesse, int toPas);
  • void servoTo( int indexServo, float toAngle);
  • void servoToR( Servo toServo, float fromAngle, float toAngle, int toVitesse, int toPas);
  • void servoToR( int indexServo, float toAngle);
  • void servosSync( float S[], int tailleIn);
  • void servosSync( float S0, float S1);
  • void servosSync( float S1, float S2, float S3, float S4, float S5) ;
  • void servosSync( float S1, float S2, float S3, float S4, float S5, float S6, float S7, float S8, float S9, float S10, float S11, float S12) ;
  • void servosSyncR(float S[], int tailleIn);
  • void servosSyncR( float S0, float S1);
  • void servosSyncR( float S0, float S1, float S2, float S3, float S4);
  • void servosSyncR( float S1, float S2, float S3, float S4, float S5, float S6, float S7, float S8, float S9, float S10, float S11, float S12);
  • void analyseChaine(String chaineReceptionIn);

Les fonctions reconnues par analyseChaine directement en réception sur le port série sont :

  • home()
  • toHome()
  • vitesseServos(xxx)
  • servoPan(xxx)
  • servoPanTo(xxx)
  • servoPanToR(xxx)
  • servoTilt(xxx)
  • servoTiltTo(xxx)
  • servoTiltToR(xxx)
  • servo(index,xxx)
  • servoTo(index,xxx)
  • servoToR(index,xxx)
  • servosSync(xxx,xxx)
  • servosSyncR(xxx,xxx)
  • servosSync(xxx,xxx, xxx, xxx, xxx)
  • servosSyncR(xxx,xxx, xxx, xxx, xxx)

6.4  Téléchargement et installation

  • la dernière version de la librairie est disponible ici : librairie UtilsServo
  • Extraire l'archive et copier/coller le répertoire ... dans le répertoire Arduino/libraries/
  • Relancer le logiciel Arduino : la librairie doit être présente dans le menu /skecth/Import Library/

6.5  Utilisation

7.  Autres librairies à venir :

  • ArduinoFacile
  • ArduinOS
  • Glapbox
  • UtilsKeypad

Vous pouvez également découvrir mon site principal : www.mon-club-elec.fr


Site créé et maintenu par X. HINAULT - 2012

Modele