Como você pode testar a comunicação em uma porta COM / Serial?

3

Temos uma balança de pesagem modelo T51P da OHAUAS, defensor da série 5000, com porta COM. se conectarmos isso a um PC, poderemos obter o peso no computador enviando um comando para ele.

Existe uma maneira de testar isso? Eu tentei a linha de comando echo "LP" > com1 mas isso não faz nada. Um pequeno aplicativo C # que escuta essa porta parece receber continuamente números hexadecimais (2 dígitos, em seguida, uma entrada), no entanto, o envio de um comando por meio desse aplicativo não fornece resultados legíveis.

Quando eu ouço na porta, o eco "LP" > comando com1 dá um erro não-passável, então o envio do comando funciona em cmd.

Alguém tem algum conhecimento sobre uma maneira simples de testar um envio e recebimento em uma porta COM?

EDITAR:

O modelo é o defensor OHAUAS série 5000 - T51P

Usar o terminal Hyper me dá o resultado abaixo. o mesmo acontece com o arduino, e o envio do comando "P" não retorna dados.

edit2:

Eu descobri que o "botão de impressão" na balança tem a mesma funcionalidade que o comando "P". Se eu apertar o botão eu recebo "dados aleatórios" se eu usar um modo de texto em um aplicativo, esses dados se traduzem em pontos de interrogação e partes do peso. Eu apertei o botão 6 vezes em sucessão, obtendo resultados como ?????????? ou 2 ??????? ou 04 04 A? ou KG? estes resultados combinados mostram-me que tenta enviar 2,04 kg, o peso. Agora haveria uma razão lógica pela qual apenas parte desses dados é enviada (ou recebida)?

    
por Andy 11.09.2012 / 16:12

4 respostas

2

Você pode baixar este para sua plataforma e abrir o aplicativo e ir para o monitor serial de ferramentas. que escutará a porta serial configurada. (Você não precisa de um arduino para funcionar).

Do site deles:

P: Como uso o Hyperterminal para checar as comunicações?

R: O Hyper Terminal é um programa Terminal que é empacotado com o Windows.

Para configurar o Hyper Terminal para uso com uma balança Ohaus, execute as etapas a seguir. As seguintes suposições são feitas para fins de explicação. 1. O computador usa Com1 2. A taxa de bauds de equilíbrio é definida para 2400 3. Os Bits de Dados do Balanço estão definidos para 7 4. Os bits de parada de equilíbrio estão definidos para 2 5. O Bit de Paridade de Equilíbrio está definido para Nenhum 6. Handshaking na balança está desligado

Abra o programa e digite um nome para a conexão. Você provavelmente desejará salvar a configuração para uso futuro. pressione OK Na próxima tela, clique na opção "Conectar usando" e selecione a porta COM usada pelo seu computador.

Clique em OK e a caixa de propriedades COMx será exibida. (Que porta COM aparecerá dependerá da configuração na etapa anterior).

Defina os parâmetros para corresponder aos parâmetros no saldo. Veja o manual de instruções da balança. Os padrões usuais são 2400 bauds, 7 bits de dados, sem paridade, 2 bits de parada e sem handshake. Quando terminar, pressione aplicar e pressione OK.

A tela do terminal será exibida.

Selecione CALL na barra de menu e selecione Desconectar. O "Conectado" na parte inferior esquerda da tela mudará para "Desconectado".

Selecione FILE na barra de menu e selecione Propriedades.

Selecione a guia "Configurações".

Verifique as teclas do Windows e Del.

Na parte inferior da caixa, clique em Configuração ASCII.

Verifique as duas primeiras caixas e coloque 11 nas próximas 2.

Clique em Ok duas vezes.

No menu Chamar, selecione Chamada.

"Chamada" será exibida no canto inferior esquerdo da tela do terminal.

Agora você está pronto para se comunicar com o equilíbrio. A melhor maneira de testar a conexão é pressionar a impressão na balança. Outros comandos estão listados no manual de instruções da balança.

E algumas informações adicionais desse site:

Como posso imprimir meu indicador Defender 5000 (T51P ou T51XW) sem inserir um avanço de linha extra? Eu estou usando uma impressora de etiquetas com etiquetas pré-impressas e todos os outros rótulos são desperdiçados. R: Você pode fazer isso indo até o menu em Print1 ou Print2 e definindo o formato como Single. P: Ok, agora estou imprimindo uma única etiqueta, mas há muita informação. Eu ainda estou usando um T51P. R: Mais uma vez, vá para o menu Print1 ou Print 2. Você pode desativar todas as informações de cabeçalho e GLP que você precisa também. Você também pode desativar a impressão Bruta, Líquida e Tara e apenas deixar o resultado. Você também tem a opção de imprimir o resultado como um número apenas definindo-o como NUM. Isso eliminará a unidade de medida. P: Estou usando um indicador Defender da série 7000 (T17P) e não consigo limpar o acumulador. Eu segui as instruções do manual, mas não está claro. A: Pressione e segure o botão "info" até o visor mostrar "StatS". Em seguida, pressione o botão "CLR" para limpar o acumulador.

retirado de: link

    
por 11.09.2012 / 16:23
2

Verifique se você tem as configurações de porta serial corretas configuradas.

Recentemente, criei um aplicativo para ler o valor do peso de um OHAUS Defender 3000 e esses são os parâmetros certos:

//OHAUS Defender 3000                        
_serialPort = new SerialPort(cbxPorts.Text);                        
_serialPort.BaudRate = 9600;                        
_serialPort.Parity = Parity.None;                        
_serialPort.DataBits = 7;                        
_serialPort.StopBits = StopBits.One;                        
_serialPort.Handshake = Handshake.XOnXOff;
    
por 09.10.2014 / 21:32
1

Uma maneira prática de testar com ports é usar terminal emulator . Você pode usar qualquer um dos muitos disponíveis ( putty e TeraTerm são amplamente usados). Você precisará configurá-lo para usar a conexão serial e, em seguida, definir parâmetros de conexão: com number; velocidade (taxa de transmissão), paridade, bits de dados, bits de parada - esses devem corresponder à configuração do seu dispositivo (você precisa obter essas informações do manual). Quando conectado, você poderá inserir comandos e ver a saída do dispositivo.
Você também pode enviar comandos de cmd , mas você não verá uma resposta (na janela cmd, é claro que o dispositivo pode / deve reagir de alguma forma), e você também precisa ter certeza de que baud / data / parity / stop ( no mínimo) estão definidos corretamente - isso é feito através do comando mode .

Para reiterar : parâmetros seriais (velocidade, databits, paridade, stop, possivelmente handshake) devem ser os mesmos em ambas as extremidades (escala e PC), caso contrário eles não entenderão uns aos outros p>     

por 11.09.2012 / 18:11
1

Existe um manual disponível on-line . (Em geral, procurar o manual " xyzzy xyzzy é o número do modelo é uma boa maneira de encontrar um manual do produto.) Ele documenta a linha de comando e os dados escala fornece. Também explica como configurar a porta COM dos dispositivos. Você vai querer usar configurações que correspondam às configurações de comunicação para o seu programa de terminal.

    
por 11.09.2012 / 17:26