Changes between Version 1 and Version 2 of SujetTP6-2016
- Timestamp:
- Mar 18, 2016, 8:27:32 AM (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SujetTP6-2016
v1 v2 3 3 == Documents de référence == 4 4 5 * [http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01 Documents Nordic nRF24L01] 6 * [http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P Documents Nordic nRF24L01Plus] 5 * [http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P Site Nordic nRF24L01Plus] 6 * [https://www.sparkfun.com/datasheets/Components/SMD/nRF24L01Pluss_Preliminary_Product_Specification_v1_0.pdf Spéicification nRF24L01plus] 7 * [https://github.com/TMRh20/RF24 Repository API TMRh20/RF24] 7 8 8 9 == Travail demandé == 9 10 10 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. 11 Pour être plus simple, tous les noeuds seront identiques. 11 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 le terminal d'un PC distant. Il y a donc au moins 2 noeuds, un émetteur et un récepteur. 12 Nous allons aussi voir comment simuler l'exécution de plusieurs tâches périodiques. 13 14 == Exécution ''multi-tâches'' == 15 16 == Lecture de la luminosité == 17 18 == Communication nRF24L01+ == 12 19 13 20 === Le matériel === … … 17 24 * un Arduino nano 18 25 * un couple photorésistance, résistance 19 * un écran OLED I2C 128x64 **ssd1306**26 * un capteur sonore 20 27 * un module **nRF24L01** 21 28 22 29 [[Image(htdocs:jpg/nano.jpg, height=200px)]] 23 [[Image(htdocs:jpg/oled.jpg, height=200px)]]24 30 25 31 [[Image(htdocs:jpg/pinoutNRF24L01.jpg, height=200px)]] 26 32 [[Image(htdocs:jpg/photoresistance.jpg, height=100px)]] 27 33 [[Image(htdocs:jpg/resistance.jpg, height=100px)]] 28 29 34 30 35 === L'usage des bibliothèques Arduino === … … 41 46 "nom-du-module Arduino". Les projets sont souvent sur github. Pour faire court, 42 47 * Vous téléchargez la bibliothèque (un .zip) 43 * Vous dézippez l'archive 44 * Vous renommer l'archive avec le nom que vous voulez en retirant les '-' (tiret)[[BR]] 45 En général, on choisit le nom du module, mais c'est comme vous voulez. 46 * Vous copiez le répertoire dans le répertoire Library (ici il est dans votre répertoire sketchbook) 48 * Vous ajoutez la bibliothèque dans l'environnement Arduino 47 49 * Vous lancer l'IDE Arduino et dans le menu '''file/exemples''' vous avez un exemple (souvent plusieurs) 48 50 de la nouvelle bibliothèque. 49 51 * Vous en choisissez un, vous le chargez, vous le compilez, vous l'uploadez, vous le testez :-) 50 51 === Utilisation de l'écran ===52 53 * La bibliothèque de l'écran se trouve en tapant la requête `ssd1306 Arduino`[[BR]]54 Vous exécutez la procédure précédemment décrite. Vous devrez prendre également la bibliothèque GFX55 qui est la bibliothèque graphique. Cette bibliothèque fonctionne pour plusieurs56 types modèles. Vous allez choisir le bon exemple : 128x64 I2C.57 58 En outre, vous allez devoir faire une petite modification dans le code.59 60 La ligne au début de '''setup()''' `display.begin(SSD1306_SWITCHCAPVCC, 0x3D);`[[BR]]61 doit être remplacée par : `display.begin(SSD1306_SWITCHCAPVCC, 0x3C);`[[BR]]62 Il s'agit de l'adresse de l'écran sur le bus I2C.63 64 * Vous allez utiliser l'écran pour afficher la valeur de la photorésistance après une mise à65 l'échelle entre 0 et 100.66 67 === Utilisation du module nRF24L01 ===68 69 * La bibliothèque du module se trouve en tapant la requête `TMRh20 RF24`[[BR]]