Bonjour tout le monde , j'ai un probleme de communication entre mon arduino mega avec Ethernet shield et un plc m340 shneider. J'utilise la library de adreasermento modbus ip sur github.
Je suis capable de recevoir les donné de mon arduino sur le m340 mais je ne suis pas capable d'envoyer de mon plc a mon arduino.
L'arduino est le slave et le m340 le master.
Quelqu'un peu m'aider avec ce problème?
Voici un condensé du code qui ne fonctionne pas
Merci d'avance!
#include <SPI.h>
#include <Ethernet.h>
#include <ModbusIP.h>
#include <Modbus.h>
ModbusIP mb;
const int Hreg_versM340 = 100; //adress modbus 40101 sur m340
const int Hreg_deM340 = 110; //adress modbus 40111 sur m340
word versM340 ;
word deM340 ;
void setup() {
Serial.begin(19200);
//setup pour modbus
byte mac [] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
byte ip[] = {999, 9, 9, 999}; //pas la vrais adresse
mb.config (mac, ip);
mb.addHreg(Hreg_versM340);
mb.addHreg(Hreg_deM340);
}
void loop() {
mb.task ();
versM340 = 1234;
mb.Hreg(Hreg_versM340,versM340) ; //je lis 1234 sur mon plc a l'adress 40101
deM340 = mb.Hreg(Hreg_deM340) ; //j'ecris 1234 sur l'adresse 40111 de mon plc
serial.println (deM340); // la variable reste toujours a 0
}`