La référence Arduino en français · similaire à celui de l'Arduino Leonardo? et l'Arduino Yún...
Transcript of La référence Arduino en français · similaire à celui de l'Arduino Leonardo? et l'Arduino Yún...
ARDUINO - manuels français
La référence Arduino en français !
Traduction légèrement augmentée du Guide de démarrage Arduino Yún en Français !
http://playground.arduino.cc/French/Manuels
Reference Language (étendue) | Librairies | Comparaison?
Référence du langage Arduino en français
Voir la référence étendue pour davantage de fonctions avancées du langage Arduino et la page
des librairies pour interfaçage avec des types de matériel particuliers (afficheur LCD par exemple).
Les programmes Arduino peuvent être divisés en trois partie principales: la structure, les valeurs
(variables et constantes) et les fonctions. Le langage Arduino est basé sur les langages C/C++.
Ici un guide d'écriture qui aidera ceux qui veulent écrire des programmes d'exemple.
En attendant l'optimisation de cette page, voir la référence du langage Arduino en français ici
Structure
Fonctions de base
Ces deux fonctions sont obligatoires dans tout programme en langage Arduino :
void setup() void loop()
Structures de contrôle
if if...else for switch case while do... while break continue
Variables et constantes
Les variables sont des expressions que vous pouvez utilisez dans les programmes pour stocker des valeurs, telles que la tension de sortie d'un capteur présente sur une broche analogique.
Constantes
prédéfinies
Les constantes prédéfinies du langage Arduino
Fonctions
Entrées/Sorties Numériques
pinMode(broche, mode) digitalWrite(broche, valeur) int digitalRead(broche)
Entrées analogiques
int analogRead(broche)
Sorties "analogiques" (génération
d'impulsion)
analogWrite(broche, valeur) - PWM
Entrées/Sorties Avancées
tone() noTone?() shiftOut?(broche, BrocheHorloge,OrdreBit,
valeur)
return
Syntaxe de base
; (point virgule) {} (accolades) // (commentaire sur
une ligne) /* */ (commentaire sur
plusieurs lignes)
Opérateurs
arithmétiques
=? (égalité) +? (addition) -? (soustraction) *? (multiplication) /? (division) %? (modulo)
Opérateurs de
comparaison
sont des valeurs particulières ayant une signification spécifique.
HIGH | LOW INPUT | OUTPUT true | false
A ajouter : constantes décimales prédéfinies
Expressions
numériques
Expressions numériques entières?
Types des données
Les variables
unsigned long pulseIn?(broche, valeur)
Temps
unsigned long millis() unsigned long micros?() delay?(ms) delayMicroseconds?(us)
Math
min(x, y) max?(x, y) abs?(x) constrain?(x, a, b) map?(valeur, toLow, fromHigh, toLow,
toHigh) pow?(base, exposant) sq?(x) sqrt(x)
Trigonométrie
sin?(rad)
== (égal à) != (différent de) < (inférieur à) > (supérieur à) <= (inférieur ou égal à) >= (supérieur ou égal
à)
Opérateurs booléens
&& (et) || (ou) ! (non)
Opérateurs composés
++? (incrémentation) --? (décrémentation) (à
revoir) +=? (addition
composée) -=? (soustraction
composée)
peuvent être de type variés qui sont décrits ci-dessous.
boolean? char? byte? int? unsigned int? long? unsigned long? float? (nombres à
virgules) double? (nombres à
virgules) Les chaînes de
caractères? Les tableaux de
variables? void? (fonctions)
Conversion des
types de données
cos?(rad) tan?(rad)
Nombres randomisés (hasard)
randomSeed(seed) long random?(max) long random?(min, max)
Communication
Serial
*=? (multiplication composée)
/=? (division composée)
char()? byte()? int()? long()? float()?
Référence
Code ASCII (à finir)
Tout en permettant l'utilisation des fonctions classiques disponibles en langage C, le langage
Arduino (open source!) est un véritable "méta-langage" orienté pour la programmation
microcontrôleur qui offre des fonctions de syntaxe très simple mais très puissantes, comme par
exemple les fonctions analogRead, map? ou encore shiftOut?. La plupart des librairies utiles sont
également disponibles pour la communication série avec le PC, l'utilisation d'afficheur LCD
standard, de clavier matriciel, de servomoteurs ou encore de moteurs pas-à-pas. A l'usage, ce
langage est vraiment très efficace et fait gagner un temps précieux !
Quelque chose que vous ne trouvez pas ? Consulter la référence étendue ou les librairies. Voir également la liste des contributions de
la communauté au code (en anglais).
Page d'accueil de la référence Arduino en français
Corrections, suggestions et nouvelle documentation peuvent être postées sur le Forum.
Le texte de la référence Arduino est sous licence Creative Commons Attribution-ShareAlike3.0 License. Les exemples de code dans
la référence sont dans le domaine public.
Traduction française et commentaires par X. HINAULT. Janvier - Février 2010
http://playground.arduino.cc/French/GuideDeDemarrageArduinoYun
Guide de demarrage arduino
Cet article est une traduction légèrement augmentée de l'article original
:http://arduino.cc/en/Guide/ArduinoYun.
La traduction est actuellement en cours et vous pouvez participer efficacement à cette dernière en
coordonnant vos efforts sur le fil créé à ce sujet sur le forum
:http://forum.arduino.cc/index.php?topic=198248.0
Guide de démarrage de l'Arduino Yún
L'Arduino Yún est une carte Arduino comme n'importe quelle autre. Le processus de programmation est très
similaire à celui de l'Arduino Leonardo? et l'Arduino Yún utilise le même processeur,
l'Atmel ATmega32U4, il comporte aussi un processeur additionnel, un Atheros AR9331, sur lequel tourne la
distribution Linux OpenWrt wireless stack. La programmation du 32U4 par le biais de l'interface USB est
identique à celle de l'Arduino Leonardo. Une fois que vous avez configuré le Yún por se connecter à un
réseau WiFi, Vous pouvez également programmer le 32U4 par le biais de la connexion WiFi. Pour
connecter l'Arduino Yún à votre ordinateur, vous aurez besoin d'un câble micro USB de type B. Ce câble
USB fournit l'alimentation de la carte et permet un échange de données avec cette dernière. Lors de la
programmation du Yún, vous devez choisir Arduiono Yún dans le menuOutils > Type de carte de l'IDE
Arduino. Le Yún n'est supporté qu'à partir de la version 1.5.4 et suivantes de l'IDE.
Table des matières
1. Différences avec l'Arduino Leonardo
2. OpenWRT-Yun
3. Python
4. Stockage externe sur le Yún
5. Services web
Différences avec l'Arduino Leonardo
Vue globale des composants du Yún.
En plus du processeur 32U4, le Yún dispose d'un processeur additionnel, un Atheros AR9331, sur lequel
tourne la distribution Linux pour systèmes embarqués appelée Linio basée surOpenWrt wireless stack. Une
instalaltion complête de Python 2.7 est également incluse.
Le Yún a un nombre de caractérisqtiques physiques et de connecteurs différents du Leonardo. Il y a un
connecteur pour cartes SD intégré, Une prise Ethernet RJ45 et un connecteur hôte USB de type A. Il n'y a
pas d'embase d'alimentation sur le Yún ; il peut être alimenté par le biais du connecteur micro-USB de type
B.
Il n'y a pas de régulateur 5V intégré. Si vous alimentez le Yún avec une tension supérieure à 5V, vous allez
probablement l'endommager. Si vous n'alimentez pas le Yún par le biais du connecteur micro-USB, vous
pouvez le faire par l'intermédaire des bornes Vin et 5V de la carte. Il est cependant recommandé d'alimenter
le Yún par le biais de la connexion USB dans la mesure du possible.
Les interfaces SD, Ethernet et USB-A ne sont pas physiquement connectés au processeur 32U4, ils sont
connectés à l'AR9331.Le 32U4 du Yún fonctionne de la même manière que celui du Leonardo, excepté que
l'on ne peut pas utiliser le port Série1. Ce dernier est réservé aux communications avec le
processeur AR9331.
Le Yún a aussi un module wifi intégré à sa carte, ce qui lui permet de se connecter à un routeur sans fil, ou
se comporter comme un point d'accès. Les processeur 32U4, WiFi etAR9331 disposent tous de leurs propres
Vue des différents boutons reset du Yún
Il y a plusieurs LEDs de statuts sur le Yún indiquant : l'alimentation (ON), la connexion WiFi(WLAN), la
connection ethernet (WAN) et la connexion USB (USB). De plus, la pin 13 (L13) est connectée à l'une des
led de statut.
Detail des LEDs de statuts du Yún
OpenWRT-Yun
Le Yún fait tourner une distribution Linux appellée OpenWRT-Yun, basée sur OpenWrt. Même s'il est
toujours possible de configurer le système en ligne de commande, il y a une interface web qui vous
permettra de configurer un grand nombre des différentes options disponibles. L'interface, (appelée LuCi)
vous donne accès à la plupart des réglages dont vous aurez besoin pour administrer l'interface WiFi.
L'accès à l'interface web est décrit plus bas.
Pour installer un logiciel additionnel sur OpenWRT-Yun, vous aurez besoin d'utiliser le package manager
Linux opkg. Pour plus d'informations sur le package manager, reportez-vous à la page Yún package
manager de la documentation arduino (EN).
Python
Une installation de Python 2.7 est incluse avec OpenWRT-Yun, grâce à laquelle vous pouvez écrire des
applications et des scripts. Pour plus d'informations sur Python, visitez les pages de documentations Python
2.7.
Si vous débutez avec Python, il existe un multitude d'excellentes ressources en ligne. "Learn Python the
Hard Way" (EN) couvrira tout ce que vous avez besoin de connaître pour vous lancer dans la création de vos
propres scripts. Pour les ressources Francophones, citons l'excellent tutoriel « Apprendre à programmer avec
Python » disponible sur Framasoft, une référence Francophone du monde libre.
Stockage externe sur le Yún
Vous avez abandonné l'idée d'utiliser la mémoire Flash interne du Yún à cause de son nombre limité
d'écritures possible.
Vous pouvez utiliser une carte microSD ou une clé USB comme mémoire externe pour sauvegarder vos
données, scripts, pages web, etc. … Afin que le 32U4 puisse accéder en lecture et écriture aux informations
stockées dans ces mémoires par l'intermédiaire du Yún, il doit y avoir un répertoire nommé « arduino » à la
racine du lecteur afin que le Yún crées un lien vers la carte SD par le chemin « /mnt/sd ».
Services web
OpenWRT-Yun utilise l'architecture REST qu'il soit client ou serveur. REST est l'accronyme de
"Representational State Transfer". C'est une architecture logicielle qui rend accessible de nombreuses parties
matérielles de l'Arduino par le biais d'URLs. Par déffaut, l'accès à l'API REST est protégé par mot de passe.
Il est impossible d'accéder à ce service sans le mot de passe. Pour changer ce réglage, allez dans le panneau
de configuration du Yún. En bas de la page vous verrez des bouttons permettant de changer l'accès.
Une bonne introduction aux concepts sous-jascents à REST peut être trouvée ici (EN). Pour les ressources
Francophones, reportez-vous à l'article REST sur wikipédia et à cette explication plus détaillée ou celle-ci
abordant notamment la notion de "point terminal".
Il y a deux points terminaux REST reconnus par le Yún :
/arduino
/data
Le répertoire "/arduino" n'a rien de préconfiguré. Tout ce qui est ajouté à l'URL après le point terminal est
passé du serveur web au programme du 32U4. Vous pouvez définir vos propres API (interfaces de
programmation) dans ce programme. Reportez-vous à l'exemple du tutoriel Examples>Bridge (EN) pour
voir comment se font les accès aux bornes de la carte.
Le point terminal "/data" sert à accéder aux mémoires "key/value" de l'AR9331 (à confirmer ?). Les
requettes disponibles sont :
/put/KEY/VALUE : Stocke une valeur dans la mémoire "KEY"
/get/KEY : récupère la valeur de la mémoire KEY en JSON
/get : récupère toutes les adresses mémoire en JSON
/delete : efface la mémoire interne
Reset des processeur (AR9331, WiFiet 32U4)
Pour redémarer l'AR9331, ce qui rebootera Linio, pressez le bouton reset "YÚN RST" qui se situe entre les
bornes analogiques et les LEDs de statuts sur la face supérieure de la carte.
Pour redémarer le 32U4 (processeur de l'Arduino Leonardo intégré) et redémarrer le dernier programme
uploadé dans l'Arduino, pressez le bouton situé à côté du connecteur ethernet (RJ45) deux fois.
Le bouton reset du WiFi est situé à côté du connecteur ASB-A. Quand vous pressez ce bouton, la led WLAN
se mettra à clignoter.
Si vous changez de réseau et ne pouvez plus vous connecter sans fil au Yún par le biais de son interface
web, vous pouvez réinitialiser la configuration reseau du Yún en appuyant sur le bouton reset
du WiFi pendant plus de 5 secondes, mais moins de 30. Le processeurAR9331 redémarrera et la
configuration WiFi sera réinitialisée. Le Yún créera alors son propre réseau WiFi "Arduino Yún-
XXXXXXXXXXXX. Toutes les autres modifications et configurations seront conservées.
Pour remettre la distribution OpenWRT-Yun à ses paramètres d'usine, appuyez sur le bouton reset du Wifi
pendant au moins 30 secondes. La carte reviendra alors à ses réglages d'origine comme si elle avait été
reflashée ou simplement sortie de son emballage. Entre autres choses, cette opération effacera tous les
fichiers installés et les réglages réseau.