Arduino arduino_goodfields_64.jpg22 communication et réseaux

communication réseaux, Ethernet, WiFi, DOMOTIQUE et test NTP
 
SOMMAIRE : introduction et test NTP

Introduction Introduction Voici  un tableau qui essaie de résumer : Voici un tableau qui essaie de résumer : choix  d choix d'un réseau, RESEAU DOMOTIQUE
Test  avec NTP Test avec NTP ENC28J60  : L ENC28J60 : L'interface ethernet pas cher ! ESP8266  : L ESP8266 : L'interface WiFi pas cher ! Et plus !
Autres  pistes, sites Autres pistes, sites Programme Programme
La page principale ... La page principale ...
   
Vers le début Vers Page 2 Vers sommaire Introduction
Actuellement, la plupart des outils 'informatique' communiquent entre eux. Bien sûr, internet vient tout de suite à l'idée, mais ce n'est pas le seul réseau qui permette de communiquer.
L'ARDUINO n'est pas en reste, et permet d'exploiter différents mode de communication.

Liaison paralèlle
Il ne s'agit que de relier 2 processeurs par des entrées-sorties tout-ou-rien digitale, et de s'entendre sur une signification et un 'protocole'(une langue) de dialogue.
Ce type de connexion a été très répandu par les interfaces à 25 broches dits "imprimante paralèlle", mais j'ai connu à la fin des années 1970 des calculateurs DIGITAL EQUIPMENT qui dialoguaient en réseau 'DECNET' sur ce type d'interface, avec des nappes de 50 fils ! C'est aussi avec ce type d'interface que votre ARDUINO va parler avec l'afficheur LCD !

Liaison série
La liaison série est très répandue dans les technologies de l'information. C'est d'ailleurs une technologie très ancienne, certainement la première qui a permis de transmettre des informations à distance. Ce n'est que l'amélioration du télégraphe électrique qui exploitait le Morse. On désigne souvent ce média par RS232, qui en fait est la norme électrique sur laquelle tout le monde s'est mis d'accord. J'ai pour ma part découvert le RS232 dans les années 1970, à 50 bauds, sur une télétype 33!
Wikipédia pour plus d'infos
(1)Certains interfaces électrique RS422 et RS485 ont permis d'allonger la portée de ce type de communication, ainsi que certaines topologies 1 maitre + n esclaves.
Le passage par des modems vocaux permet(-tait) de transmettre à travers le réseau téléphonique analogique à très grande distance (au début à 50, puis 300 bauds, et jusqu'à 56 et 92 kbauds ensuite)

L'ARDUINO possède de base cet interface série (RX0 et TX1), transformé en USB, et permet de débugger rapidement vos programmes.

USB
Justement, USB qu'est-ce ? Universal Serial Bus.
Wikipédia, c'est génial, non ?
Donc, c'est un dialogue série, rapide jusqu'à 10Gbauds (USB3.0), avec un hôte et plusieurs périphérique (par exemple votre PC et son clavier, sa souris, le disque externe, la clef USB (tiens-tiens !), l'appareil photo, l'imprimante, et l'ARDUINO ! ...

Mais avec certains ARDUINO (le Due) et/ou shields, l'ARDUINO peut devenir pilote (remplacer la souris) ou hôte lui-même (récupérer des informations de la souris)...

De plus, le bus USB comporte 2 fils qui permettent d'alimenter le dispositif sous 5V et jusqu'à 500mA (ou plus). C'est comme cela que votre ARDUINO est alimenté, mais aussi votre souris ... La plupart des téléphones mobiles actuels utilisent cette norme pour se charger ou communiquer avec votre PC.

Bus I2C
Le bus I2C a été mis au point par PHILIPS dans les années 1980 pour faire communiquer entre eux des microprocesseurs dans un même appareil : par exemple le micro de mesure et le micro IHM de façade (IHM = interface homme-machine).
encore merci à Wikipédia !
Bus SPI
Bus à 3 fils, le maître génère un signal d'horloge pour synchroniser les échanges, et 2 fils de données pour les échanges dans un sens et dans l'autre. Ce bus est utilisé par des capteurs (barométrique) mais aussi par les interfaces Ethernet et les lecteurs de carte SD par exemple. d'autres signaux supplémentaires sont nécessaires (select) si plusieurs esclaves sont sur la ligne pour les sélecter un à un (Ethernet et SD par exemple).
http://www.mon-club-elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.LibrairieSPI
SPI
SD card Carte SD 3,3v et ARDUINO 5v
cliquez pour agrandir : photo/Arduino_SPI_pins.png cliquez pour agrandir : photo/ArduinoMega2560_SPI_pins.jpg

Ethernet
Est-il besoin de présenter ce type de réseau ? En fait ethernet est un protocole de niveau bas, mais on confond encore le support très répandu RJ45 avec ethernet. Dans la pratique, on parle bien de notre ethernet sur RJ45, celui qui est maintenant partout : au bureau, à l'hôtel, à la maison ...
Wikipédia (encore !)
(2) La transmission des trames Ethernet à travers l'internet, par des câbles en fibre optique terrestres, maritimes, ou des relais hertziens terrestres ou satellitaires permet la transmission quasi instantanée sur tout le globe.
Tout sur l'ethernet ! Un super beau et bon site !

et le WiFi ?
N'est qu'un support radio de l'ethernet, avec en plus, du cryptage et de la protection pour éviter les piratages ...
Quelques notions plus précises ...

et d'autres ... : LoRa, un réseau basée sur la radio à 868 Mhz, 15 km de portée ..
LoRa
Une révolution ? un Ethernet "série" programmable plus puissant que l'ARDUINO !

   
Vers le début Vers Page 2 Vers sommaire Voici un tableau qui essaie de résumer :
Nom Type de lien Implémentation
ARDUINO
vitesse distance support
électrique
liaison Série point à point(1) basique
d'origine
1200Bds 115kBds TTL=local
RS232=15mètres à 19200bds
RS485=2000m
minimum 3 fils
ou 2 paires
USB multi-points ->10Gbds 7 mètres câbles spécifiques
4 fils
bus I2C multi-maitre
multi-esclaves
#include 200-400kHz 60 cm 2 fils
SCA SCK
bus SPI 1 maître
multi-esclaves
synchrone local 3fils et +
MISO MOSI SCK SS
Ethernet multi-stations #include 10..1000Mbauds et + 100 mètres(2) RJ45 (4 paires)
WiFi multi-stations selon shields 11...300Mbauds 30m...10km?! l'ether

Interface I2C RS485 :
http://xj900diversion.free.fr/bus/I2C%20-%20RS-485%20adapter.htm
LTC485 : interface RS485 2 fils large tolérance (-7 +12V)
LTC490 : interface RS485 4 fils large tolérance (-7 +12V)
Autres bus de terrain à découvrir, utilisés dans le tertiaire : LONworks = LONBUS = bus LON, EIB bus, KNX, BATIBUS, EHS, E-Bus (Honeywell)

Lonworks

   
Vers le début Vers Page 2 Vers sommaire choix d'un réseau, RESEAU DOMOTIQUE
Dans la pratique, on risque d'avoir à implémenter un type de réseau selon les capteurs/actionneurs que l'on veut utiliser.
Ainsi, le capteur barométrique/tehrmométrique BMP085 utilise un bus I2C en 3,3V, ce qui va imposer ce réseau si on veut faire une station météo ...
Si on a l'intention d'utiliser une carte mémoire SD, il faudra du SPI ...

En fait, si l'on veut constituer un RESEAU DOMOTIQUE, si l'on ne veut pas avoir à développer des interfaces électroniques spécifiques, le plus simple est de s'orienter vers ETHERNET. De plus, avec la possibilité de PoE, ou PoEP 'du pauvre', on va simplifier grandement les problèmes de câblage, alimentation et s'appuyer un un standard très répandu. Si, de plus on considère qu'ETHERNET permet de tout faire en terme de protocole et distances (à travers Internet), on a le top du réseau !
Certes, l'augmentation du prix de la platine ARDUINO est non négligeable, mais que coûterait le développement d'un shield I2C étendu par exemple ?
De plus, le test suivant montre que l'on va pouvoir exploiter les ressources d'internet très facilement ...
Ceci étant, on peut maintenant (2018) utiliser le Wemos D1 mini ou ESP8266 pour moins de 5 euros pour se connecter au WiFi.


Ethernet POE
Sur les liaisons ethernet, on utilise des câbles RJ45 comportant 4 paires de fils (Catégorie 5e ou 6 ou 7 = qualité du câble). Dans les standards à 10Mbds et 100Mbds, on n'utilise que 2 paires, soit 4 fils. On a donc eu l'idée d'utiliser les 2 paires restantes pour alimenter le dispositif qui est à l'extrémité du câble en y mettant une alimentation de 48 Volts qui peut, selon la norme atteindre 15 watts. Dans l'industrie le PoE est essentillement utilisé pour alimenter les Points d'accès WiFi et les caméras web, mais on peut aussi trouver des imprimantes et autres matériels, qui comme sur l'USB ne vont pas nécéssiter de prise 230V à proximité. Notez que même dans le cas du Gigabit qui utilise les 8 fils, on a la possibilité de superposer cette alimentation en mode fantôme (comme les microphones de sonorisation ...).

Encore Wikipédia qui va tout vous expliquer !
Ou en anglais ..
Un document très complet en anglais sur le PoE Un document très complet en anglais sur le PoE

cliquez pour agrandir : photo/ethernet_poe_injecteur.gif Et un schéma électronique ...

cliquez pour agrandir : photo/ArduinoEthernetFrontPOE450px.jpg Arduino Ethernet avec module PoE


Le POE du pauvre (Cf Christian Tavernier, son 2° livre sur l'ARDUINO)
Module PoE pour ARDUINO (18€, respectant la norme)
Les dispositifs PoE, à savoir les switches fournissant l'alimentation PoE elle-même ainsi que les récepteurs PoE sont assez complexes et représentent un coût élevé. Pour rendre cette possibilité abordable, on peut détourner la norme en injectant une tension directement une tension acceptable par l'ARDUINO, 12 Volts par exemple directement sur les 2 paires inutilisées, puis récupérer cette alimentation sur notre carte ARDUINO ETHERNET à l'aide d'une simple diode de sécurité (pour éviter les inversions de polarité). On est alors "hors norme", et il faut prendre toute précaution pour ne rien casser (étiquetter), mais c'est réellement pratique pour notre réseau domotique 'home-made', et on peut espérer tirer quelques Watts à l'extrémité (disons 3 Watts) pour éclairer localement avec des leds blanches ou lampes à leds.

cliquez pour agrandir : photo/22_poep_1.jpg Donc, on va injecter du 12 Volts, positif sur les fils 4 et 5, masse sur les 7 et 8.

cliquez pour agrandir : photo/ArduinoEthernet_POEP.jpg A VERIFIER ???
Raccorder les points
1 et 2 à la masse 7
et les points 3 et 4 au Vin 8 à travers une diode 1N4007

cliquez pour agrandir : photo/22_poep_2.jpg A VENIR ???
En vrai, cela donne ceci.

Un guide en anglais pour faire du PoE light Un guide en anglais pour faire du PoE light


PoEP alternatif (pas du courant alternatif, un autre PoEP...)
Supposons que nous mettions un ARDUINO ETHERNET très près de notre FreeBOX. Cette petite bête comporte des ports USB, donc fournit du 5 Volts !
A l'aide d'un câble USB 'dépiauté', on va alimenter notre ARDUINO avec ce 5 Volts, soit directement sur les pins GND et 5V, ou par un câble RJ45 transformé en pieuvre injecteuse de 5 volts également 'dépiauté', ... et la modif sur l'ARDUINO. CQFD, voilà notre tête de pont ARDUINO-réso.

   
Vers le début Vers Page 2 Vers sommaire Test avec NTP
cliquez pour agrandir : photo/ArduinoEthernetFront.jpg Arduino Ethernet
la suite ici ... la suite ici ...

   
Vers le début Vers Page 2 Vers sommaire ENC28J60 : L'interface ethernet pas cher !
https://hwstartup.wordpress.com/2013/03/25/how-to-connect-an-arduino-to-the-internet-for-10/
cliquez pour agrandir : photo/enc28J60_arduino.jpg

http://www.geeetech.com/wiki/index.php/Arduino_ENC28J60_Ethernet_Module
http://www.homautomation.org/2014/10/27/how-to-choose-the-right-library-to-add-ethernet-enc28j60-to-your-arduino/
   
Vers le début Vers Page 2 Vers sommaire ESP8266 : L'interface WiFi pas cher ! Et plus !
cliquez pour agrandir : photo/8266_soude.jpg
Une révolution ? un Ethernet "série" programmable

   
Vers le début Vers Page 2 Vers sommaire Autres pistes, sites
http://blog.spyou.org/wordpress-mu/tag/arduino/
http://datelec.fr/index.html#Bus

   
Vers le début Vers Page 2 Vers sommaire Programme
Source
La page principale ... La page principale ...
Photos de la page :

Dernière mise à jour : 11:40:06 18/09/2020