« Previous - Version 23/24 (diff) - Next » - Current version
Baptiste Gaultier, 10/11/2012 09:13 am


Atelier Arduino avancé

Cet atelier est une suite de l'Atelier_Arduino débutant. Il a pour objectif de découvrir les blindages (shields) et leurs librairies.

Attention : Si vous avez un problème, merci d'aller jeter un coup d’œil sur la page de Dépannage Arduino avant d'appeler un des intervenants (qui dans tous les cas se fera un plaisir de venir vous dépanner).

Support de l'atelier

attachment:Atelier_de_découverte_Arduino_v3.odp
attachment:Atelier_de_découverte_Arduino_v3.pdf

TinkerKit!

L’objectif de cette section est de découvrir les différents modules TinkerKit! permettant de prototyper rapidement et sans connaissances préalables de l'électronique.
L'utilisation d'une librairie externe sera également abordée.

Matériel nécessaire (par groupe)

  • Un ordinateur avec environnement Arduino ×1 (Comment installer le logiciel Arduino)
  • Arduino UNO ×1
  • Câble USB ×1
  • Blindage TinkerKit ×1
  • Modules TinkerKit ×1 (ou plus)
  • Câble TinkerKit ×1 (ou plus)

Site internet de référence

Arduino Ethernet

L’objectif de cette section est de découvrir les différents exemples réalisables avec un Arduino Ethernet.

Matériel nécessaire (par groupe)

  • Un ordinateur avec environnement Arduino ×1 (Comment installer le logiciel Arduino)
  • Arduino Ethernet (ou Arduino UNO + blindage Ethernet) ×1
  • Câble mini-USB ×1
  • Shield Xbee ×1
  • Module sans-fils Xbee ×1

Site internet de référence

  • Veuillez regarder les exemples situés dans File → Examples → Ethernet. Vous pouvez également vous connecter sur le site officiel (en)

Arduino LilyPad

L’objectif de cette section est de découvrir les différents exemples réalisables avec un Arduino LilyPad.

Matériel nécessaire (par groupe)

Site internet de référence

Arduino et Matrice de LED

L’objectif de cette section est de découvrir les différents exemples réalisables avec un Arduino combiné à une matrice de LED Sure Electronics 32×16 Bicolor.

Matériel nécessaire (par groupe)

Site internet de référence

SmarTB

L’objectif de cette section est de créer des capteurs de luminosité, température, humidité, énergie... Nous connecterons ces capteurs à Internet dans la section suivante.

Capteur de lumière

Matériel nécessaire (par groupe)

  • Un ordinateur avec environnement Arduino ×1 (Comment installer le logiciel Arduino)
  • Arduino UNO ×1
  • Câble USB ×1
  • BreadBoard ×1
  • Fils
  • Résistance 10kΩ ×1
  • Photo-résistance ×1
  • Shield Xbee ×1
  • Module sans-fils Xbee ×1

Montage

Capteur de luminosité
Un Wireless Proto Shield doit être inséré sur l'Arduino. Le commutateur doit être placé sur USB lorsque le code est téléversé.

Programmation

  • Lancez le logiciel Arduino
  • Ouvrez le fichier AnalogInOutSerial.ino en cliquant sur File → Examples → Analog → AnalogInOutSerial
  • Une fenêtre vient de s’ouvrir. Fermez la précédente.
  • Allez tout en bas de la fenêtre, et mofiez le code comme suit :
 1 void loop() {
 2   // read the analog in value:
 3   sensorValue = analogRead(analogInPin);            
 4   // map it to the range of the analog out:
 5   outputValue = map(sensorValue, 0, 1023, 0, 255);          
 6 
 7   Serial.println(outputValue);   
 8 
 9   delay(500);                     
10 }

Le programme ci-dessus lit d'abord la valeur de notre capteur de luminosité et envoie la luminosité mesurée sur le moniteur série.

  • Cliquez sur File → Upload to I/O Board (ou cliquez sur l'icône de téléversement Icône de téléversement)
  • Vous pouvez maintenant cliquer sur Tools → Serial Monitor (ou cliquez sur l'icône du moniteur série Icône du moniteur série) pour voir toutes les mesures relevées par le capteur de luminosité.

Capteur de température

Matériel nécessaire (par groupe)

  • Un ordinateur avec environnement Arduino ×1 (Comment installer le logiciel Arduino)
  • Arduino UNO ×1
  • Câble USB ×1
  • BreadBoard ×1
  • Fils
  • Capteur de température LM35DZ ×1
  • Shield Xbee ×1
  • Module sans-fils Xbee ×1

Montage

Capteur de température
Un Wireless Proto Shield doit être inséré sur l'Arduino. Le commutateur doit être placé sur USB lorsque le code est téléversé.

Programmation

  • Lancez le logiciel Arduino
  • Ouvrez le fichier AnalogInOutSerial.ino en cliquant sur File → Examples → Analog → AnalogInOutSerial
  • Une fenêtre vient de s’ouvrir. Fermez la précédente.
  • Allez tout en bas de la fenêtre, et modifiez la partie loop comme suit :
1 void loop() {
2   // formule permettant de récupérer la température depuis le capteur branché sur le l'entrée 0
3   int temperature = analogRead(A0) * 5000L / 1024L  / 10;
4   // afficher la valeur
5   Serial.println(temperature);
6   delay(1000);        // attendre 1 seconde
7 }

Le programme ci-dessus calcule d'abord la température et envoie cette valeur sur le moniteur série.

  • Cliquez sur File → Upload to I/O Board (ou cliquez sur l'icône de téléversement Icône de téléversement)
  • Vous pouvez maintenant cliquer sur Tools → Serial Monitor (ou cliquez sur l'icône du moniteur série Icône du moniteur série) pour voir toutes les températures relevées.

Autres capteurs

Matériel nécessaire (par groupe)

  • Un ordinateur avec environnement Arduino ×1 (Comment installer le logiciel Arduino)
  • Arduino UNO ×1
  • Câble USB ×1
  • BreadBoard ×1
  • Fils
  • Shield Xbee ×1
  • Module sans-fils Xbee ×1
  • Capteur ×1 (potentiomètre, capteur à effet hall, accéléromètre...)

Montage

Autres capteurs
Un Wireless Proto Shield doit être inséré sur l'Arduino. Le commutateur doit être placé sur USB lorsque le code est téléversé.

Programmation

  • Lancez le logiciel Arduino
  • Ouvrez le fichier AnalogInOutSerial.ino en cliquant sur File → Examples → Analog → AnalogInOutSerial
  • Une fenêtre vient de s’ouvrir. Fermez la précédente.
  • Allez tout en bas de la fenêtre, et regardez le morceau de code suivant :
 1 void loop() {
 2   // read the analog in value:
 3   sensorValue = analogRead(analogInPin);            
 4   // map it to the range of the analog out:
 5   outputValue = map(sensorValue, 0, 1023, 0, 255);          
 6 
 7   // print the results to the serial monitor:
 8   Serial.print("sensor = " );                       
 9   Serial.print(sensorValue);      
10   Serial.print("\t output = ");      
11   Serial.println(outputValue);   
12 
13   // wait 10 milliseconds before the next loop
14   // for the analog-to-digital converter to settle
15   // after the last reading:
16   delay(10);                     
17 }

Le programme ci-dessus mesure d'abord la valeur du capteur puis vient convertir cette valeur sur une nouvelle échelle comprise entre 0 et 255. Prenez exemple sur le montage ci-dessous pour interfacer votre capteur : les fils rouge et noir permettent d'alimenter le capteur tandis que le fil bleu renvoie la valeur mesuré par le capteur.

  • Cliquez sur File → Upload to I/O Board (ou cliquez sur l'icône de téléversement Icône de téléversement)
  • Vous pouvez maintenant cliquer sur Tools → Serial Monitor (ou cliquez sur l'icône du moniteur série Icône du moniteur série) pour voir toutes les valeurs mesurées par votre capteur.

Connexion des capteurs à la passerelle

L’objectif de cette section est de connecter à Internet les capteurs créés dans la section précédente. Pour ce faire, nous utiliserons les modules XBee des capteurs pour communiquer avec une passerelle connectée en Ethernet. Cette passerelle enverra l'ensemble des données collectées sur une application web.

Pour commencer à émettre en sans-fils, le commutateur du blindage Wireless doit être placé sur MICRO :
Commutateur en mode micro

Connexion de la passerelle à Internet

Ici, nous allons utiliser un Arduino Ethernet équipé d'un blindage Wireless Proto. Nous devons dans ce cas récupéré les messages qui arrivent en sans-fils et les envoyer ensuite sur Internet en utilisant le port Ethernet de l'Arduino (à noter qu'il est tout à fait possible de changer le blindage Ethernet par un blindage Wifi, la librairie étant très proche).

Matériel nécessaire (par groupe)

  • Un ordinateur avec environnement Arduino ×1
  • Arduino Ethernet (ou Arduino UNO + blindage Ethernet) ×1
  • Câble mini-USB ×1
  • Shield Xbee ×1
  • Module sans-fils Xbee ×1

Montage

Un Wireless Proto Shield doit être inséré sur l'Arduino Ethernet. Le commutateur doit être placé sur USB lorsque le code est téléversé.

Programmation

  • Lancez le logiciel Arduino
  • Téléchargez le fichier XBeeEmoncmsClient.zip
  • Décompresser cette archive dans votre répertoire sketchbook (l’emplacement de ce répertoire est indiqué dans File → Preferences)
  • Ouvrez le fichier XBeeEmoncmsClient.ino en cliquant sur File → Sketchbook → XBeeEmoncmsClient
  • Une fenêtre vient de s’ouvrir. Fermez la précédente.
  • Parcourez le code afin d'en comprendre le fonctionnement.
  • Une fois l'ensemble du système correctement configuré, vous pourrez visualiser la remontée d'information ici

BON COURAGE !

L'intégralité de cet atelier est placé sous licence CC0 1.0 Universal (CC0 1.0) Public Domain Dedication .

photoresistor.png - Capteur de luminosité (39.3 kB) Baptiste Gaultier, 09/26/2012 06:18 pm

upload.png - Icône de téléversement (286 Bytes) Baptiste Gaultier, 09/26/2012 06:42 pm

serial_monitor.png - Icône du moniteur série (337 Bytes) Baptiste Gaultier, 09/26/2012 06:42 pm

temperaturesensor.png - Capteur de température (48.5 kB) Baptiste Gaultier, 09/26/2012 07:47 pm

potentiometer.png - Autres capteurs (28.1 kB) Baptiste Gaultier, 10/01/2012 06:52 pm

WirelessShield_SD_switchMicro_detail.png - Commutateur en mode micro (67.8 kB) Baptiste Gaultier, 10/01/2012 07:16 pm

XBeeEmoncmsClient.zip - Code XBeeEmoncmsClient + librairie XBee (49 kB) Baptiste Gaultier, 10/09/2012 11:22 am

Atelier avancé Arduino v1.odp - Support - Atelier Arduino avancé v1 (format odp) (7.6 MB) Baptiste Gaultier, 10/11/2012 09:17 am

Atelier avancé Arduino v1.pdf - Support - Atelier Arduino avancé v1 (format pdf) (10.1 MB) Baptiste Gaultier, 10/11/2012 09:17 am