Arduino com scadaBR

Bom Dia
Gostaria de saber se alguem tem um exemplo de uma configuração do scadaBR com o Arduino via RS-485 com o cod. do
jpmzometa.

Cara estou finalizando um trabalho utilizando Serial-USB utilizando esta biblioteca com o Arduino. Logo posto um exemplo aqui se quiser ou te mando o .PDE por email. É bem simples de configurar.

Ola você tem email ou msn,

sou cientista da computação e sou novo por aqui comprei um arduino uno e gostaria de saber o que faço para fazer o scadabr conversar com ele? grande abraço

Olá fernando, tb estou começando a usar o arduino e com ScadaBR, ainda não consegui comunicar, mas acho que a pergunta do amigo acima não confere com as respostas.

Para transmitir nesse padrão, vc vai usar par trançado certo? (nunca utilizei rs-485) vc vai precisar de um conversor para o usb, pois são meios físicos diferentes, tenho certeza que isso vc já sabe e até já tenha providenciado, mas o protocolo de comunicação vai ter que ser o Modbus RTU, é isso mesmo que estava tentando? então a ajuda do amigo pode servir.

Aliás fernando, como está comunicando? em modbus rtu? consegue ler ou escrever em variáveis analógicas? poste para nós o .PDE aqui em baixo.

Vou aproveitar para postar minha pergunta, comprei o arduino uno e um shield ethernet, queria mesmo era comunicar em modbus IP, alguém já teve sucesso com isso?

Abraço!

Olá novamente, sem querer estava pesquisando sobre o que eu precisava e achei um vídeo que responde todas as suas perguntas edilson, um tal de André usou arduino para comunicar em rs 485 - modbus rtu com o ScadaBR, o vídeo tem só 3 semanas, mto bom, vê aí :

Acho que vai ajudar!

Já perdi bons fios de cabelo com este problema, não vi o coelhinho neste finde e nem mesmo chocolate tentando de tudo que eu sabia e não consegui resolver o problema, por isso estou aqui recorrendo a sabedoria superior dos meus ancestrais jedais! kkkkkkkkkk

Seguinte. Estou usando o Ubuntu 12.10 - 64bits; ScadaBR 1.0; Arduino IDE 1.0.4; librxtx-java 2.2pre2-11 (instalado pelo apt-get)

No princípio não conseguia nem dar upload no Arduino IDE, não tinha permissão, daí coloquei uma linha em algum arquivo de inicialização que não acho mais. Só sei que agora consigo dar Upload para programar o Arduino. Sempre que o pc inicializa ele cria o nó e dá permissão para ttyACM0, é possível ver como estão as permissões das tty com o comando /dev$ ls -l

 

crw-rw----  1 root dialout 166,   0 Abr  1 01:38 ttyACM0
 
dá para ver que o usuário tomcat6 tem permissão para participar do grupo dialout com o comando /etc$ cat group
 
dialout:x:20:tomcat6,fabio
e também
tty:x:5:fabio (não sei se o tomcat precisa de participar deste grupo também, acho que para esse fim não precisa)
 
Sei que o problema não é no Arduino, pois o Sketch que tenho para acender o LED do pino 13 funcionou perfeitamente no Windows, lá consegui ler e escrever no arduino usando o ScadaBR.
 
Ah, quando adiciono o datasource Modbus Serial, não aparecia a porta /ttyACM0, então seguindo dicas, fui em /var/lib/tomcat6/webapps/ScadaBR1/WEB-INF/jsp/dataSourceEdit$ e editei o arquivo "editModbusSerial.jsp" fazendo a troca abaixo:

 

 

alterado    <sst:option value="/dev/ttyACM0">/dev/ttyACM0</sst:option>
original    <sst:option value="${port.name}">${port.name}</sst:option>
 
Por fim, quando vou adicionar o datasouce aparece a porta que coloquei manualmente mas quando salvo já dá erro: 01:56:22: 'Arduino': com.serotonin.modbus4j.exception.ModbusInitException: com.serotonin.io.serial.SerialPortException: gnu.io.NoSuchPortException
E qualquer datapoint que adiciono nunca é lido, sinceramente não sei mais o que fazer!
 
Será que é a librxtx-java, embora tenha lido que a versão que estou usando é mais indicada para sistemas 64 bits como o meu.
 
Qualquer ajuda, mas qualquer mesmo é bem vinda, nem que seja o número do seu psiquiatra ahiHaUIahuaIuhaiu...
Aguardarei anciosamente
Abraço & Paz!

 

Oi Fábio,

Pelo visto o ScadaBR/Librxtx-java não está encontrando o ttyACM0...

Eu sinseramente não tinha visto esse pepino antes, mas talvez utilizando a versão mais nova do librxtx ajude. Se não, verifique em fóruns de desenvolvimento do Arduino sobre a utilização da porta ttyACM0.

Eu já informei aqui que o usuário tomcat6 também precisa estar no grupo dialout, que ajuda muito =] 

Abs

Fala Galera,

também tenho este problema, pelo que puder ver ocorre com o arduino Uno, teste com o arduino Nano não tive problemas.

alguem já conseguiu resover a falha de comunicação com o /dev/ttyACM0?

 

http://labdegaragem.com/video/tutorial-scadabr-parte1

http://labdegaragem.com/profiles/blog/show?id=6223006%3ABlogPost%3A189733&commentId=6223006%3AComment%3A203814

http://labdegaragem.com/forum/topics/scadabr?id=6223006%3ATopic%3A111690&page=1#comments

http://labdegaragem.com/video/video-scadabr-na-cubieboard

Valeu Dino, mas Windows is very poor... o problema que temos é na comunicação no linux.

Falar que resolvi o problema, seria mentira, mas já cerquei melhor ele, um dia conversei com um aluno que manja de linux sobre meu problema, ele se dispôs a me ajudar e na semana seguinte chegou mostrando no notebook que havia comunicado em modbus e linux com o arduino, aí fiquei curioso, fui ver e ele tinha feito o mesmo que eu, nada diferente e deu certo, verificando o que estava diferente na arquitetura, reparei que ele tinha usado o Ubuntu 32 bits e eu estava usando o Ubuntu 64 bits...

Conclusão, o problema é na Librxtx, não sei como resolver isso ainda na versão 64 bits do Ubuntu, mas se alguém for construir um servidor para supervisionar o Arduino Uno, o jeito é instalar uma versão 32 bits do Ubuntu, não testei em outras distribuições linux, para ver se esse problema é só nas like Debian.

Entendo que já existe uma condição de contorno, mas como já tenho um PC que uso para tudo e inclusive para testes no ScadaBR, não me é conveniente formatá-lo e trocar por uma versão de 32 bits, será que existe alguma solução? Por falta de memória também não me interessa rodar um linux 32bits como máquina virtual sempre que eu precisar. Talvez seja possível instalar a versão 32bits da librxtx num sistema 64bits, será?!

Abraços!

Oi fabio,

pesquisando na internet vc encontra algumas bibliotecas RXTX java recompiladas para se adaptar ao linux 64bits

seria bom se vc procurasse tentar ver se funciona.

grande abraco

Não tentei as bibliotecas, mas vi no irmão mais velho http://forum.infiniteautomation.com/forum/posts/list/1349.page que o problema já é conhecido em versão 64 bits do linux.  Espero não precisar trocar de SO só por um lib. 

Este outro post parece dar uma dica, com link para as libs recompiladas http://forum.infiniteautomation.com/forum/posts/list/1560.page#6365

Estou testando esta librxtx-java http://mfizz.com/oss/rxtx-for-java assim que tiver resultados posto aqui.

Abraço!

Ola pessoal, tenho um equipamento que funciona em uma rede modbus RS-485, funciona muito bem por sinal no ScadaBr, gostaria de conectá-lo em uma rede Ethernet e continuar a usar o ScadaBr. Alguém tem alguma ideia de como posso fazer? Sera que devo colocar um Arduíno como mestre consulta o equipamento, depois colocar ele como escravo do ScadaBr e transmitir pela rede Ethernet?

O Alisson,

Tem conversores comerciais rs-485 pra Ethernet alguns simples e outros mais complexos.

Recomendo olhar Gateways Modbus da Moxa, Advantech. Não sei se a Comm5 possui.

Se quiseres fazer um gateway modbus com o arduino, não seria muito complicado, mas ai vais ter que conhecer o protocolo um pouco mais a fundo e decidir alguns parâmetros de comunicação =p

Bom, eu partiria de um comercial se a aplicação é um projeto com alguém me pagando. Se for por diversão e hobby, eu faria o conversor no braço, no arduino =]

Abs

Vlw cara vou fazer no braço, tenho um modulo do labdegaragem rs485/TTL e shield ethernet, vou ver o protocolo.

Tem um módulo que converte RS485 para Ethernet da empresa ABS, http://www.absltda.com.br/produto.php?idProduto=4 é muito bom, já trabalhei com produtos deles, o preço é bom e o suporte é nacional, sempre que eu preciso eles me atendem imediatamente por skype, é um grande diferencial hoje em dia. Conversa no skype "ABS Telemetria" que eles te passam orçamento e encaminham para área técnica.

Tenho usado este módulo em alguns projetos onde o cliente só tem um CLP simples com comunicação apenas por RS485, é muito mais barato o CLP simples e o módulo do que comprar um CLP que já fale em modbus IP.

Abraço

Engº Fabio Durão

Show cara esse modulo eh "lindo" heheh vlews