Dernière modification le 4 janvier 2016, à 10:15

Arduino Yun-Librairie


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.

Introduction

La carte Arduino Yún est équipé de deux processeurs. L'un est un ATmega32U4 comme sur le Arduino Leonardo. L'autre processeur est un Atheros 9331, fonctionnant sous Linux et dispose d'une pile WiFi basé sur OpenWRT. Cela offre les connectivités aux réseaux WiFi et Ethernet. Il est possible d'appeler des programmes ou des scripts personnalisés sur le système Linux depuis le Arduino pour se connecter sur différents types de services "En Ligne".

La librairie Bridge simplifie la communication entre l'ATmega32U4 et l'AR9331. Bridge hérite de Stream (voir ci-dessous, Stream signifie "flux" et permet de gérer des échanges de flux d'information) et beaucoup de méthodes devraient être familières puisqu'elles sont semblablent à la bibliothèque Serial et autres dérivés de Stream.

Les commandes Bridge en provenance du 32U4 sont interprétés par Python sur le processeur AR9331. Son rôle est d'exécuter des programmes sur la plateforme GNU/Linux lorsque cela est demandé par Arduino, fournir un espace de stockage partagé pour partager des données telles que lecture de senseur entre Arduino et Internet. Le processeur AR9331 peut également recevoir des commande depuis Internet et les passer directement à la partie Arduino.

Le Bridge permet la communication dans les deux directions, agissant comme une interface pour envoyer des lignes de commandes à Linino. Voyez ici pour une brève description du terminal et des commandes Linux.

Pour vous familiariser avec le Yún, vous pouvez consulter le guide de démarrage et description matérielle.

Les bibliothèques

Process

La bibliothèque Process est utilisé pour lancer des processus (des programmes) sur le processeur Linux. Elle est également utilisée pour lancer des shell scripts.

Console

La bibliothèque Console peut être utilisée pour communiquer avec le moniteur réseau disponible dans Arduino IDE, par l'intermédiaire d'un shell. La fonctionnalité est très similaire au moniteur Série d'Arduino.

FileIO

FileIO offre une interface vers le système de fichier Linino. La bibliothèque peut être utilisée pour lire et écrire des fichier sur la carte SD.

HttpClient

Crée un client HTTP sur Linino. Agit comme un wrapper (une surcouche) pour les commandes CURL, étendant ainsi Process.

Mailbox

Mailbox offre une interface asynchrone, sans session pour permettre la communication entre Linino et Arduino.

YunClient

Un équivalent du client HTTP pour Arduino, conçu sur le modèle de la classe EthernetClient.

YunServer

Un équivalent du serveur HTTP pour Arduino, conçu sur le modèle de la classe EthernetServer.

Temboo

Une interface vers Temboo permettant de réaliser facilement des connexions vers une large variété d'outils "en ligne". Voir la documentation de Tembo pour plus d'information.

Spacebrew

Spacebrew est "une façon simple de connecter des objets interactifs les uns aux autres" qui utilise des WebSockets pour communiquer. Vous pouvez en apprendre plus sur SpaceBrew en consultant leur documentation en ligne.

Bridge - classes et méthodes

La librairie "Bridge" (signifiant litérallement "pont") permet la communication entre Arduino et Linino. Il y a plusieurs classes utilitaires qui facilite différents type de communication entre ces deux environnements. Ces classes sont décrites plus bas mais aussi plus en profondeur dans les pages de lalibrairie Bridge (ou bien Bridge library reference Arduino.cc, Anglais).

Arduino-Yun-Pres03.jpg
Crédit: Arduino arduino.cc Traduction par MCHobby.be

Classe Bridge

Fonctions Bridge

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

  • begin()Démarre le Bridge facilitant les communications entre l' AVR et le processeur Linux
  • put()Permet de stocker une structure "Clé/Valeur" sur la machine Linux.
  • get()Permet d'obtenir un Valeur correspondant à la Clé.

Utilitaires:

Process - classes et méthodes

Classe Process

La Process est utilisé pour lancer des processus (des programmes) sur le processeur Linux. Elle est également utilisée pour lancer des shell scripts.

Fonctions Process

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

  • begin()Commande Linux que l'on désire faire exécuter
  • addParameter()Ajouter des paramètre à la commande Linux
  • run()Exécuter la commande et attendre la fin d'exécution.
  • runAsynchronously()Exécuter la commande sans attendre la fin d'exécution.
  • running()La commande est-elle en cours d'exécution
  • exitValue()Code de sortie de la commande
  • close()Termine l'exécution d'un processus asynchrone
  • runShellCommand()Execute une commande shell
  • runShellCommandAsynchronously()Exécute une commande Shell en mode non-bloquant
  • available()Indique s'il y a des données entrante disponible
  • read()Lectures des données entrante produite par le processus Linux
  • write()Ecriture/envoi de données vers le processus Linux
  • peek()Lecture du premier octet de donnée
  • flush()Nettoie la mémoire tampon d'entrée

Console - classes et méthodes

Classe Console

La Console peut être utilisée pour communiquer avec le moniteur réseau disponible dans Arduino IDE, par l'intermédiaire d'un shell. La fonctionnalité est très similaire au moniteur Série d'Arduino.

Fonctions Console

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

  • begin()Démarre une session terminal accessible via le moniteur série
  • end()Termine une session terminal
  • buffer()Modifier la taille de la mémoire tampon
  • noBuffer()Libère la mémoire tampon
  • connected()Etat de connexion de la console
  • available()Nombre de caractères en attente de lecture?
  • read()Lecture des octets sur la connexion
  • write()Ecriture d'octets sur la connexion
  • peek()Copie du premier octet à lire sur la connexion
  • flush()Nettoyage de la mémoire tampon (buffer)

FileIO - classes et méthodes

Classe FileIO

FileIO offre une interface vers le système de fichier Linino. La bibliothèque peut être utilisée pour lire et écrire des fichier sur la carte SD.

Fonctions FileIO

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

Mailbox - classes et méthodes

Classe Mailbox

Mailbox offre une interface asynchrone, sans session pour permettre la communication entre Linino et Arduino.

Fonctions Mailbox

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

YunServer - classes et méthodes

Classe YunServer

Un équivalent du serveur HTTP pour Arduino, conçu sur le modèle de la classe EthernetServer.

MCHobby: Permet à votre Arduino de recevoir des requêtes WEB par l'intermédiaire de Linino. Le WebServer de Linino recoit la requête réseau puis relaye l'information vers la classe YunServer du processeur Arduino (par l'intermédiaire du Bridge). Une fois la connexion établie, YunServer créera une instance de YunClient (un Yun Client par connexion) pour gérer l'échange d'information entre les deux plateformes.

Fonctions YunServer

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

YunClient - classes et méthodes

Classe YunClient

Un équivalent du client HTTP pour Arduino, conçu sur le modèle de la classe EthernetClient.

MCHobby:
Lorsqu'une requête réseau destinée à Arduino est reçue par Linino, elle est renvoyée à la classe YunServer sur Arduino (par l'intermédaire du Bridge). Une fois la connexion acceptée par Arduino, une instance de la classe YunClient est crée pour gérer l'échange d'information entre Arduino et Linino (en vue d'envoyer une réponse sur le Net). Il y a donc une instance de YunClient par requête.

Fonctions YunClient

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

HttpClient - classes et méthodes

Classe HttpClient

Crée un client HTTP sur Linino. Agit comme un wrapper (une surcouche) pour les commandes CURL, étendant ainsi Process.

HttpClient agit comme un wrapper (surcouche) pour les commandes cURL en créant un client HTTP sur Linino.

Fonctions HttpClient

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


Exemples

todo!!!


Source: Arduino Yun, Guide to the Arduino Yún. 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.