Boa tarde,
Quando realizei a comunicação Modbus Serial entre o Arduino e o ScadaBR funcionou perfeitamente, mas o mesmo não acontece quando eu tento estabelecer a comunicação Modbus TCP/IP.
A seguir vou disponibilizar o código no Arduino e as fotos de configuração do ScadaBR, e os erros apresentados.
Arduino:
#include <SPI.h>
#include <Ethernet.h>
#include <Modbus.h>
#include <ModbusIP.h>
//Modbus Registers Offsets (0-9999)
const int LAMP1_COIL = 100;
//Used Pins
const int ledPin = 13;
//ModbusIP object
ModbusIP mb;
void setup() {
// The media access control (ethernet hardware) address for the shield
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
// The IP address for the shield
byte ip[] = { 192, 168, 0, 102 };
//Config Modbus IP
mb.config(mac, ip);
//Set ledPin mode
pinMode(ledPin, OUTPUT);
// Add LAMP1_COIL register - Use addCoil() for digital outputs
mb.addCoil(LAMP1_COIL);
}
void loop() {
//Call once inside loop() - all magic here
mb.task();
//Attach ledPin to LAMP1_COIL register
digitalWrite(ledPin, mb.Coil(LAMP1_COIL));
}
Pra desenvolver esse exemplo eu segui um tutorial, mas aparece esse erro de “Ilegal data address”.
Alguém consegue me dizer o que pode estar errado? Todas as outras alternativas que eu encontrei em outros posts e fóruns não me deram nenhum resultado.
Obrigada.