wiki:SujetTP7-2015

Communication sans fil

Documents de référence

Travail demandé

Le but de la séance est de lire la valeur de la lumière sur une échelle de 1 à 100 sur un arduino et de l'afficher sur l'écran de l'autre arduino. Il y a donc au moins 2 noeuds, un émetteur et un récepteur. Pour être plus simple tous les noeuds seront identiques.

Le matériel

  • Vous allez commencez par faire un schéma du noeud.
    Les composants nécessaires à un noeuds sont :
    • un arduino nano
    • un couple photorésistance, résistance
    • un écran OLED I2C 128x64 ssd1306
    • un module nRF24L01

nano.jpg oled.jpg

pinoutNRF24L01.jpg photoresistance.jpg resistance.jpg

L'usage des bibliothèques arduino

  • Ce qu'il y a de bien dans l'écosystème Arduino, c'est que la volonté de faire simple. En l'occurence, nous avons deux nouveaux objets, l'écran et le module RF24. Pour les utiliser, nous allons devoir faire appel à des fonctions mais nous n'allons pas avoir à les écrire. En effet, pour presque tous les "périphériques" existants il existe un et même souvent plusieurs bibliothèques de fonctions écrites par des "amateurs" souvent très doués. En plus, les sources sont ouvertes, et il est donc possible d'adapter ces codes pour des besoins spécifiques.
  • Les bibliothèques sont trouvées, en général, en tapant sur un moteur de recherche, la requête "nom-du-module arduino". Les projets sont souvent sur github. Pour faire court,
    • vous téléchargez la bibliothèque (un .zip)
    • vous dezipez l'archive
    • vous renommer l'archive avec le nom que vous voulez en retirant les '-' (tiret)
      En général, on choisit le nom du module mais c'est comme vous voulez.
    • vous copiez le répertoire dans le répertoire Library (ici il est dans votre répertoire sketchbook)
    • vous lancer l'IDE arduino et dans le menu file/examples vous avez un exemple (souvent plusieurs) de la nouvelle bibliothèque.
    • vous en choissisez un, vous le chargez, vous le compilez, vous l'uploadez, vous le tester :-)

Utilisation de l'écran

  • La bibliothèque de l'écran se trouve en tapant la requête ssd1306 arduino
    Vous exécutez la procédure précédemment décrite. Vous devrez prendre également la bibliothèque GFX qui est la bibliothèque graphique. Cette bibliothèque fonctionne pour plusieurs types modèles. Vous allez choisir le bon exemple : 128x64 I2C.

En outre, vous allez devoir faire une petite modification dans le code.

La ligne au début de setup() display.begin(SSD1306_SWITCHCAPVCC, 0x3D);
doit être remplacée par : display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
Il s'agit de l'adresse de l'écran sur le bus I2C.

  • Vous allez utiliser l'écran pour afficher la valeur de la photorésistance après une mise à l'échelle entre 0 et 100.

Utilisation du module nRF24L01

  • La bibliothèque du module se trouve en tapant la requête TMRh20 RF24
Last modified 9 years ago Last modified on Apr 3, 2015, 12:17:44 PM