Comunicação Balanças

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

supgaroto
Usuário Nível 2
Usuário Nível 2
Mensagens: 51
Registrado em: 19 Ago 2003 14:24
Localização: Rua Aristotoles Fernandes Valdares, 1190

Comunicação Balanças

Mensagem por supgaroto »

Comunicação balança ROR.

Preciso de fazer comunicação com balanças ROR.
Conversando com o engenheiro da empresa ele me passou o protocolo de comunicação. Só q to meio perdido num sei nem por onde começar;
Comunicação Serial.

dados de 8 bits sem paridade
1 start bit com 2 stop bits
baud rate de 2400
informa constantemente qualquer valor de peso diferente de zero com 5 dígitos, ou seja, de 00005 até 25000g de 5 em 5 gramas.

Como faço pra pra enviar essa informação pra balança?
E como receber o retorno?
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: Comunicação Balanças

Mensagem por sygecom »

Abaixo um exemplo do que você quer.

Código: Selecionar todos

Function CHAMABAL
COM_CLOSE(1)
COM_OPEN(1, 1, 1)
COM_INIT(1, 2400, "N", 8, 2)
COM_HARD(.F.)
W_PESO:=""
W_LETRA:=""
DO WHILE .T.
   IF COM_COUNT(1) > 0
      W_LETRA := COM_READ(1, 1)
      IF !W_LETRA$"0123456789"
         W_PESO := ""
      ELSE
         W_PESO = W_PESO+W_LETRA
      ENDIF
   ENDIF
   IF LEN(ALLTRIM(W_PESO)) = 5
      EXIT
   ENDIF
ENDDO
W_PESO = ALLTRIM(W_PESO)
COM_CLOSE(1)
Return(VAL(W_PESO))
Obs: Tens que linkar a CT.LIB ou CTP.LIB(Se estiver usando blinker em modo protegido) da CA-TOOLS
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
supgaroto
Usuário Nível 2
Usuário Nível 2
Mensagens: 51
Registrado em: 19 Ago 2003 14:24
Localização: Rua Aristotoles Fernandes Valdares, 1190

Re: Comunicação Balanças

Mensagem por supgaroto »

Ainda não consegui receber as informações!
Tem como vc detalhar essa função?
Avatar do usuário
Clipper
Colaborador
Colaborador
Mensagens: 1334
Registrado em: 23 Ago 2004 00:04
Localização: Recife/PE

Re: Comunicação Balanças

Mensagem por Clipper »

Prezado Colega

Faça mais ou menos assim.

Código: Selecionar todos

peso=chamabal()
@ 10,10 say peso pict "@E 999,999"
Se não funcionar é porque existe algum detalhe no protocolo que precisa ser verificado/mudado.
Verifique também se está na COM1, no exemplo está lendo da porta COM1.

Essa mesma função eu uso em balanças Toledo e Filizola em restaurantes self-service e funciona "fine".

Até logo.

Marcelo
Programador que é programador, quando tá de folga vai inventar função nova, fazer testes, ou seja... se divertir
Cobra 210 - Drive de 8" 1.024 KB - 64 KB RAM - Impressora de Linha Cobra - Visicalc - Fortran - Dialog - Sistema Operacional SP/M (é sp/m mesmo - era o cp/m da cobra)
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: Comunicação Balanças

Mensagem por sygecom »

supgaroto escreveu:Ainda não consegui receber as informações!
Tem como vc detalhar essa função?
Se ainda tem duvidas, anexa aqui o manual com protocolos da balança e vamos tentar ver se tens mais algum detalhe na comunicação.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder