LusoRobótica - Robótica em Português

Software => Software e Programação => Tópico iniciado por: almamater em 12 de Janeiro de 2017, 11:23

Título: Dúvida SerialPOrts
Enviado por: almamater em 12 de Janeiro de 2017, 11:23
Ois,

Precisa de ligar um micro\arduino ao PC por forma a enviar\receber pedidos de um conjunto de portas virtuais.

Ou seja, estou a usar o software com0com (http://com0com.sourceforge.net/), tenho uma aplicação que mediante os pedidos dá a resposta para uma das portas virtuais desta aplicação. Depois, se usar por exemplo o RealTerm e se me ligar na 2ª porta com0com (daquele par definido) consigo enviar os pedidos e receber as respostas sem problema.

A questão é fazer isto mas substituir o RealTerm por hardware\arduino, ligando o Arduino ao PC ele automaticamente fica numa determinada porta física, existe alguma maneira de ligar a porta virtual com0com com a porta do Arduino?
Título: Re: Dúvida SerialPOrts
Enviado por: metRo_ em 12 de Janeiro de 2017, 11:52
Ois,

Precisa de ligar um micro\arduino ao PC por forma a enviar\receber pedidos de um conjunto de portas virtuais.

Ou seja, estou a usar o software com0com (http://com0com.sourceforge.net/), tenho uma aplicação que mediante os pedidos dá a resposta para uma das portas virtuais desta aplicação. Depois, se usar por exemplo o RealTerm e se me ligar na 2ª porta com0com (daquele par definido) consigo enviar os pedidos e receber as respostas sem problema.

A questão é fazer isto mas substituir o RealTerm por hardware\arduino, ligando o Arduino ao PC ele automaticamente fica numa determinada porta física, existe alguma maneira de ligar a porta virtual com0com com a porta do Arduino?

O Arduino quando ligado ao PC vai ser uma dessas portas com0com... O teu texto não esta muito perceptível. Estava com o inkscape aberto e desenhei isto, confirmas que e' isto que queres? (podes tirar esta ideia para a próxima vez que quiseres expor um problema e não saibas como explica-lo)

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FUK7AbZh.png&hash=52cd37204980b9ffa99a9b71c184fd403a75a0db)
Título: Re: Dúvida SerialPOrts
Enviado por: almamater em 12 de Janeiro de 2017, 12:08
Pois se calhar não me expliquei bem..

(https://s29.postimg.org/6y949mlab/Draw.png) (https://postimg.org/image/6y949mlab/)

Objectivo é usar o Arduino em vez do RealTerm, mas a dúvida se calhar cai por terra qdo dizes que a porta do Arduino pode ser uma das portas do com0com, pois estava a pensar que não dava para atribuir uma dessas portas a um equipamento de forma manual..

P.S.: Não testei porque neste momento não posso, mas precisava de esclarecer isto para ver se dá para fazer o que quero.
Título: Re: Dúvida SerialPOrts
Enviado por: metRo_ em 12 de Janeiro de 2017, 13:29
Pois se calhar não me expliquei bem..

(https://s29.postimg.org/6y949mlab/Draw.png) (https://postimg.org/image/6y949mlab/)

Objectivo é usar o Arduino em vez do RealTerm, mas a dúvida se calhar cai por terra qdo dizes que a porta do Arduino pode ser uma das portas do com0com, pois estava a pensar que não dava para atribuir uma dessas portas a um equipamento de forma manual..

P.S.: Não testei porque neste momento não posso, mas precisava de esclarecer isto para ver se dá para fazer o que quero.

Agora perdi-me completamente :s
Título: Re: Dúvida SerialPOrts
Enviado por: almamater em 12 de Janeiro de 2017, 13:36
Oh pá.. LOL não me consigo explicar melhor! Mas mais logo, ao fim do dia, já tenho arduinos e afins e já vou testar aquilo que estou a dizer e confirmo se dá ou não mediante o que quero.

Mas basicamente quero meter um Arduino a Comunicar (TX\RX) com uma aplicação\simulador que utiliza o software de portas virtuais com0com.
Título: Re: Dúvida SerialPOrts
Enviado por: senso em 12 de Janeiro de 2017, 14:06
Esse com0com é para criar uma porta com entre duas aplicações, não existem cabos, nem nada fisico, é uma emulação 100% software...
O Arduino com o atmega328 tem uma porta serial, que está nos pinos 0/1, mas que está tambem ligada ao FTDI/interface USB/Serial, se queres ter dados entre Arduino e o pc via essa porta não a podes usar para mais nada, podes é usar portas serial por software noutros pinos, mas com baud rates baixos ou vais ter perda de dados.

Aliás, pelo teu desenho só tens aplicações/programas, não estou sinceramente a ver como é que ai penduras um arduino, ou queres usar uma porta virtual para tirar os dados e enviar para o Arduino?

Parece-me que queres ver o que está a passar numa porta serial, e para isso, diria para pensares antes em usares simplesmente um usb-serial standalone ou um logic analyzer que faça decoding de protocolo serial..
Título: Re: Dúvida SerialPOrts
Enviado por: KammutierSpule em 12 de Janeiro de 2017, 14:08
substituir o RealTerm por hardware\arduino, ligando o Arduino ao PC ele automaticamente fica numa determinada porta física, existe alguma maneira de ligar a porta virtual com0com com a porta do Arduino?

Mas basicamente quero meter um Arduino a Comunicar (TX\RX) com uma aplicação\simulador que utiliza o software de portas virtuais com0com.

Entao se o teu simulador liga a uma porta virtual, nao dá para configurar a ligar a uma porta real fisica? Bastando para isso ligar um conversor serial USB e voila?

Se nao der para configurar a porta COM a usar (o q é estranho?) tens de arranjar um outro software que te faca a ligacao virtual de portas COM.

Mesmo assim se nao conseguires facilmente, podes fazer tu ou procurar algum software que o faca de enviar dados de uma porta para a outra.

COM A.open();
COM B.open();

while(1)
{
A.send(B.receive());
}

qq coisa assim..  mas ja deve existir.

Se o protocolo "estiver bem feito" e nao tiver problemas de timings. entao safa a coisa.
Título: Re: Dúvida SerialPOrts
Enviado por: almamater em 12 de Janeiro de 2017, 15:50
Pois, ou é muito simples e estou a complicar ou então tem que se dar algumas voltas e com software gratuito não se consegue fazer a coisa.

Especificamente o que fazer é usar o https://icculus.org/obdgpslogger/obdsim.html para me gerar e simular os valores, e o objectivo é ligar o Arduino à USB e fazê-lo comunicar com o com0com e com essas portas virtuais.

Em tempos penso que tinha chegado à conclusão que teria de redireccionar os dados entre as portas, mas não encontrei nenhum software free que me fizesse isso, os que instalei não resultaram e nunca mais peguei nisto..
Título: Re: Dúvida SerialPOrts
Enviado por: jm_araujo em 12 de Janeiro de 2017, 15:57
Não entendo porque é que não é viável ligar o software diretamente ao Arduino, que se apresenta ao PC como uma porta série.
Título: Re: Dúvida SerialPOrts
Enviado por: KammutierSpule em 12 de Janeiro de 2017, 16:25
From manual:

http://icculus.org/obdgpslogger/manpages/render/obdsim.txt (http://icculus.org/obdgpslogger/manpages/render/obdsim.txt)

Código: [Seleccione]
       -t|--tty-device
      Instead  of  opening  a  pty,  try  to  open  this entry in /dev
      instead. POSIX only.

       -w|--com-port <comport>
      Specify virtual com port to be used on windows [eg "COM1"]. Win-
      dows only.

Apesar de ai dizer "virtual" deve funcionar com qq porta, tal como no exemplo "COM1".
a opcao -t é para o linux.