Bom dia pessoal,

Estou tentando comunicar uma ihm delta com um arduino Uno R3, com o protocolo modbus IP e a biblioteca do Prof André Sarmento.

Seguem anexos, se puderem visualizar e me ajudar a encontrar no que estou errando eu agradeço.

Att

Jonatas

Exibições: 2812

Anexos

Responder esta

Respostas a este tópico

Pelas imagens, aparentemente não trata-se de um erro, mas de um "warning".

A compilação terminou sem erros.

Você está recebendo avisos de que uma de suas bibliotecas está usando um comando em desuso (depreciado).

Verifique todos os includes, principalmente o arquivo citado na mensagem de alerta e procure atualizar as libs.

Não creio que isto seja algum causador de problemas, tenho este aviso toda vez que faço algo em outros projetos e tudo funciona corretamente.

Até mesmo quando vou carregar um projeto vazio a mensagem aparece.

Isso. Foi isso mesmo que te falei. Os warnings são apenas avisos. A compilação terminou normalmente.

Esses avisos apenas alertam o programador sobre esses comandos em desuso que podem dar problemas futuros

Seria interessante então você detalhar o  problema que está tendo, pois só pelas imagens não consegui determinar. Não sei se os demais amigos garagistas conseguiram...

Primeiro, certifique-se que o protocolo na IHM seja realmente MODBUS IP.

Segundo, Aponte o endereço do botão para o mesmo endereço da COIL no Arduino(no seu codigo está 101).

Terceiro, antes de tentar usar com a IHM teste o código do arduino com algum software "modbus master".(ex/; CAS modbus scanner, modbus poll, etc.).

Além das outras configurações de rede que tambem tem que estar corretas!

Vc poderia mostrar qual o modelo da IHM está usando. Fiquei curioso.

O arduino é um UNO R3, a IHM Delta DOP-B03E211 e o software é o DopSoft.

Jonas,

1 - Sim, realmente eu descuidei e utilizei o protocolo TCP/IP normal, mas agora alterei para modbus TCP/IP.

2 - Já tentei deixar igual, coloquei 0 na IHM e 1 no arduino e vice-versa, entre outros testes.

3 - Eu tentei usar o "Modbus Poll" com o PC ligado na IHM e também não tive resultados, fiquei também um pouco confuso em como definir a IHM como Slave ou Master utilizando o Modbus IP.

Bem, vocês já devem ter percebido que entendo pouco de equipamentos industriais, CLPs, IHMs ETC, e pouco do protocolo também, mas preciso aprender. Tem alguém que já fez isso e pode por favor compartilhar o conhecimento?

Carreguei mais alguns arquivos, estou tentando utilizar uma word.

Anexos

VC deve arrumar algum software que comunique em Modbus TCP/IP e teste os comandos de escrita e leitura do Arduino pois, no modbus tem endereços de leitura e escrita. No software da IHM vc teve ter notado q deve determinar o Driver de comunicação do fabricante do CLP, não sei se tem o driver do Arduino. E tera que descobri a lista de endereços modbus do Arduino, que não deve ser o mesmo do codigo!!!

As vezes é melhor uma comunicação seral até conseguir comunicar e depois passa pro TCP iP

Trabalho com Automação industrial e todos os CLP vem com a tabela de tag e endereços Modbus, ex endereço 4001 entrada 1 do CLP 3001 Saida 1.

Espero ter ajudado!!!

Olá, tive algum progresso.

Cleber, você estava certo, não adianta começar de cima, temos de aprender gradualmente. Instalei o programa Modbus Poll, e consegui ler e gravar alguns registros. 

Input register e holding registers, com endereços 30001 e 40001 adiante.

Agora entendi o offset que está na biblioteca, tipo se você coloca 0 no arduino, e adicionar aquela posição ao Holding Registers ele automaticamente irá armazenar os dados daquela posição no endereço 40001, que é o padrão para isso.

Mas agora tenho outro problema, conectando o arduino no computador e utilizando o modbus poll, eu tenho muitos erros de leitura, outra coisa é que o arduino fica lento, muito lento.

Preciso ler valores em um intervalo máximo de 5ms e não estou conseguindo.

Alguém tem mais alguma experiência a compartilhar?

Anexos

Sabe informar o valor dessa IHM?

Tente utilizar outro software (http://www.modbus.pl/node/10). Vc este pela serial ou TCP/IP?

Protocolo ModbusIP através de ethernet.

cara.. 5ms pro arduino processar a resposta acho que não rola não.

voce ta exigindo demais dele! rsrs

mas esse erro ai não é demora nas leituras, se fosse vc receberia TIMEOUT!

mas pode tentar outras libs tambem.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço