[Tuto] Gobot framework avec Arduino, Raspberry et de nombreuses autres plateformes

Gobot est un framework spécialisé dans les objets connectés (IOT). Il permet, à partir d’une machine hôte, de contrôler plusieurs plateformes tels qu’Arduino et de les lier les uns aux autres à l’aide d’un seul langage le « Golang » (langage de programmation crée par Google en 2009)

Voici l’architecture de Gobot:

Capture

Ainsi dans cette architecture seul l’hôte est programmé en Golang, au niveau des microcontrôleurs ils auront un programme initial indépendant de l’hôte et des capteurs/ actionneurs qui lui sont connectés.

Il faut savoir que certaines plateformes ont à la fois la possibilité d’être en hôte (ex: Pc sous windows) mais aussi certaine intègre une partie microcontrôleurs qui leur permet d’être reliés directement au capteurs/actionneurs (ex: Raspberry, CHIP) ainsi vous pourrez programmer votre carte en Golang pour communiquer avec ces capteurs/actionneurs.

Exemple de plateforme:

A partir d’ici il va être décrit une méthode qui permet de configurer votre ordinateur sous Windows en tant qu’hôte pour ensuite exécuter un programme en Golang, l’exemple qui suit consiste à faire clignoter la LED 13 de l’Arduino Uno mais bien entendu une fois que vous aurez pris en main ce langage vous pourrez faire de nombreuse choses.

Matériels nécessaire:

1 – Téléchargement des sources nécessaires

2 – Procédure d’installation

Gort

  • Décompresser Gort dans un dossier que vous nommerez Go
  • Ouvrir votre invite de commande en administrateur
  • Aller dans le dossier Go avec les commande « CD » et « LS »
  • Taper la commande, « gort arduino install »
  • Vous devriez voir apparaître une fenêtre d’installation, finalisez l’installation

Git

  • Installer GITHUB

Configuration du PC

  • Aller dans « panneau de configuration -> système et sécurité -> système -> Paramètre système avancés » ajouter la variable d’environnement suivante : nom de la variable :GOPATH , valeur de la variable: mettre le chemin jusqu’au dossier GO
  • Ouvrir l’invite de commande :
  • Taper : go get github.com/tarm/goserial
  • Taper go get -u github.com/hybridgroup/gobot && go install github.com/hybridgroup/gobot/platform/firmata

Configuration de l’arduino

  • Ouvrez l’IDE arduino
  • Aller dans fichier -> exemples -> firmata -> StandardFirmata
  • Téléverser le programme dans l’arduino Mega
  • Relever le numéro de port COM de votre arduino nécessaire pour la suite

3 – Exécution du programme Go

  • Ouvrez le fichier firmata_blink.go
  • Modifiez à la ligne 14 « /dev/ttyACM0 » par le port « COMX »relevé dans l’étape précédente
  • Ouvrir l’invité de commande
  • Taper : go run firmata_blink.go
  • Vous pouvez maintenant observer la LED L de l’Arduino clignoter

Maintenant à vous de réaliser de superbes projets.

Ressources:

GOBOT IO

[Tuto] Spark Core + écran I2C

Pour réaliser ce montage vous aurez besoin de :

Connecter votre spark core à l’internet en suivant le tutoriel de particle :

https://docs.particle.io/guide/getting-started/start/core/

Si vous rencontrez des problèmes pour configurer le spark en utilisant l’application, je vous invite à utiliser l’outil en ligne de commande de spark, qui permet, entre autre, de configurer le core par usb. https://github.com/spark/particle-cli

Une fois dans l’IDE build de particle, cliquer sur l’onglet “librairie” en bas à gauche de l’écran. Chercher “I2C” dans le moteur de recherche de librairie puis sélectionner la librairie LIQUIDCRYSTAL_I2C_SPARK.

Chaque librairie contient des exemples, ce sont les fichiers en .ino. Ici nous utiliserons “clockexample.ino”. Cliquer sur “use this example” pour l’inclure à vos applications et pouvoir l’utiliser pour votre core.

Remplacer l’adresse I2C de la ligne 16 par votre adresse I2C :

lcd = new LiquidCrystal_I2C(0x27, 16, 2);

Celle-ci peut varier en fonction du modèle d’écran que vous utilisez. J’ai rencontré l’adresse 0x3F et 0x27 avec deux écrans différents.

Ensuite réaliser le montage suivant :

Fil jaune relie D0 à SDA(lcd)

Fil violet relie D1 à SCL(lcd)

Fil blanc relie GND to GND(lcd)

Fil rouge relie VIM à VCC(LCD)

Le  deuxième fil rouge pour la ligne rouge de la breadboard.

Une première résistance de 1K ohm reliée de la ligne rouge de la breadboard au pin D0, une deuxième de la ligne rouge au pin D1.

tuto_spark_ecranI2C_1
tuto_spark_ecranI2C_2

Vérifier bien que le contraste de l’écran est bien réglé en tournant à l’aide d’un tournevis le petit potard situé derrière l’écran.

Il ne reste plus qu’à flasher votre spark core depuis l’IDE

[Tuto] Régler le Wifi du Spark Core en usb

Régler le Wifi du Spark Core en usb

Le Spark Core (Particle désormais) est conçu pour fonctionner avec une application USB, malgré tout il arrive que l’on n’est pas la possibilité de fonctionner avec ce type de connexion. C’est pourquoi un mode USB existe, nous allons vous expliquer comment le mettre en oeuvre.

Raccorder le Spark au Wifi via USB

Pour commencer, vous pouvez lire la documentation Spark autour de ce sujet https://docs.particle.io/guide/getting-started/connect/core/

Pour Windows, la première étape consiste a installer Node.js en le téléchargeant ici https://nodejs.org/download

Brancher le Spark en « Listenning mode » (clignotement bleu). S’il n’y est pas au démarrage, appuyer sur mode durant 3s pour qu’il passe dans cet état.

Installer les drivers (Voici un très bon tuto expliquer https://community.particle.io/t/installing-the-usb-driver-on-windows-serial-debugging/882). En résumé, télécharger les pilotes Spark https://s3.amazonaws.com/spark-website/Spark.zip puis aller dans panneau de configuration / gestionnaire de périphériques / Clique droit sur « Spark Core » / « Mettre à jour le pilote » / « Rechercher un pilote sur mon ordinateur » / « Choisir parmi une liste de pilote sur mon ordinateur » / « Disque Fourni » / Rechercher l’emplacement ou vous avez mis les pilotes

Lancer ensuite le terminal de commande (Démarrer / Barre de recherche / taper « cmd »), saisisser « particle setup »

Loggez vous avec vos identifiants Spark.

Entrer ensuite les informations du Wifi sur lequel vous voulez vous raccorder.

Voila le Spark clignote Cyan il est connecté au Wifi