Boa noite, estou desenvolvendo um TCC utilizando ScadaBR, ligando o SCT013-000 em uma placa Arduino UNO, sou leigo na programacao… Gostaria de uma ajudar adaptar o codigo abaixo para comunicar via MODBUS IP

#include “EmonLib.h”
#include<SPI.h> //BIBLIOTECA PARA COMUNICAÇÃO COM PERIFÉRICOS
#include<Ethernet.h> //BIBLIOTECA PARA COMUNICAÇÃO VIA ETHERNET
#include “MgsModbus.h”//BIBLIOTECA QUE REALIZA A COMUNICAÇÃO MODBUS TCP/IP DO ARDUINO

MgsModbus Mb;
EnergyMonitor SCT013;

byte mac[]= {0x90, 0xA2, 0x0A, 0x00, 0x51, 0x06} ;
IPAddress ip(192, 168, 1, 150); //ENDEREÇAMENTO DE IP FIXO AO ARDUINO
IPAddress gateway(192, 168, 1, 1); //DEFINE O GATEWAY PADRÃO
IPAddress subnet(255, 255, 255, 0); //DEFINE A MÁSCARA DE REDE

int pinSCT = A1; //Pino analógico conectado ao SCT-013
int tensao = 127;
int potencia;
void setup()
{
SCT013.current(pinSCT, 6.0606);
Serial.begin(9600);
}
void loop()
{
double Irms = SCT013.calcIrms(1480); // Calcula o valor da Corrente

Mb.MbsRun(); //REALIZA A ATUALIZAÇÃO DOS REGISTRADORES PARA COMUNICAÇÃO MODBUS TCP/IP
Mb.MbData[0]=Irms; //REALIZA O ENVIO DO VALOR DA CORRENTE VIA REDE

potencia = Irms * tensao; // Calcula o valor da Potencia Instantanea
Serial.print(“Corrente = “);
Serial.print(Irms);
Serial.println(” A”);

Serial.print(“Potencia = “);
Serial.print(potencia);
Serial.println(” W”);

delay(500);
Serial.print(".");
delay(500);
Serial.print(".");
delay(500);
Serial.println(".");
delay(500);
}

Exibições: 171

Responder esta

Respostas a este tópico

Oi vc tem ja tem codigo do Modbus IP? 

para encapsular o seu codigo dentro dele

Boa tarde, adicionei os a library MgsModbus... Porem fica dando falha... 

vc pode usar o modbus ip do andre Sarmento ta muito bem explicado

https://github.com/andresarmento/modbus-arduino

Boa tarde, obrigado pela dica, irei olhar assim que chegar eu chegar em casa, posto o feedback, muito obrigado.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço