Ce projet est un moyen de contrôler un Arduino ou mon clone d’atmega644/1284 Arduino via un PC ou une interface homme-machine connecté à bouclier arduino ethernet. Vous allez créer un système SCADA pour contrôler votre système d’une grande distance.
Pourquoi j’ai créé ce clone d’arduino ? Juste pour avoir plus entrées/sorties broches pour contrôler des systèmes plus complexes. Ce sont les broches corrélation beetween arduino uno et mes broches atmega644/1284 clone :
D2 - interruption Ethernet (en option avec le strap de soudure « INT ») (goupille D10 de clone)
D4 - SD SPI CS (broche de clone D0)
D10 - Ethernet SPI CS (broche de clone D4)
D11 - non connecté (mais devrait être SPI MOSI) (broche de clone D5)
D12 - non connecté (mais devrait être MISO SPI) (broche de clone D6)
D13 - SPI SCK (broche de clone D7)
A0 - SD écrire protéger (clone NIP A0)
A1 - SD détecter (broche A1 de clone)
Ces broches sont utilisées pour la communication beetween le clone et l’ethernet, vous n’avez pas à l’utiliser pour autre chose.
Pourquoi utiliser la communication MODBUS TCP ? Parce que c’est un moyen simple et sécurisé pour communiquer avec les systèmes éloignés. L’open source et gratuit project AdvancedHmi a un pilote qui fournissent cette communication et arduino bibliothèque à utiliser est la « mudbus » uniquement. Les autres ne fonctionne pas parce que AdvancedHMI fournit un MODBUS TCP pas un MODBUS RTU via TCP, ni une MODBUS RTU (série com, mais maintenant avec la nouvelle version d’advancedHMI, ne pas encore testé ici). Pour plus d’informations sur MODBUS aller http://www.simplymodbus.ca/TCP.htm.
Le site de la bibliothèque de mudbus :
https://code.google.com/p/mudbus/
Le site de AdvancedHMI, une IHM très accrocheur aller :
(vous devez installer Visual Basic Express 2010 ou plus avant d’exécuter le AdvancedHMI)
De piloter de ce projet va permettre un Arduino Uno ou l'Arduino atmega644/1284 clone que j’ai fabriqué dans un précédent article à l’aide d'une interface PC ou HMI via un ethernet bouclier sous le protocole MODBUS TCP. Cela permettra de réaliser un système de supervision ou SCADA.
Pourquoi le faire sur ce clone ? Le Conseil Arduino Uno possède un certain nombre de "entrées/sorties mais le fait de rajouter l'ethernet bouclier mobiliser encore des bornes qui sont du coup inutilisables pour d’autres applications. Ces bornes sont pour l'arduino UNO (correspondance de l'arduino clone atmega644/1284 entre parenthèse) :
D2 - interruption Ethernet (en option avec le strap de soudure « INT ») (D10 du clone)
D4 - SD SPI CS (D0 du clone)
D10 - Ethernet SPI CS (D4 du clone)
D11 - non connecté (mais devrait être SPI MOSI) (D5 du clone)
D12 - non connecté (mais devrait être MISO SPI) (D6 du clone)
D13 - SPI SCK (D7 du clone)
A0 - SD écrire protéger (A0 du clone)
A1 - SD détecter (A1 du clone)
L'arduino clone avec ethernet shield me permettra de bénéficier de plus d' entrées/sorties. Ces bornes ne pourront être utilisées verser autres choses.
Pourquoi utiliser le modbus TCP ? C’est un protocole de communication facile à mettre en œuvre, robuste et très répandu dans l’industrie. Indice du advancedHMI projet possède un pilote qui gère ce protocole, de son côté l'Arduino reconnaît les trames grâce à la librairie « mudbus » à télécharger. ATTENTION: ce n’est pas du modbus RTU sur TCP (consulter la documentation suivante : http://www.simplymodbus.ca/TCP.htm).
Le site de la librairie mudbus versez arduino 1.0.5 :
https://code.google.com/p/mudbus/
Le site AdvancedHMI (vous devez installer au préalable le logiciel gratuit Visual Basic Express 2010) :