Fç para ler Toledo no Caixa.

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Maurício Elias
Usuário Nível 3
Usuário Nível 3
Mensagens: 304
Registrado em: 12 Mai 2005 08:48

Fç para ler Toledo no Caixa.

Mensagem por Maurício Elias »

Bom dia pessoal.

Segue uma rotina para ler peso na balança Toledo no Caixa:
Quem me ensinou foi o Dércio.

Precisa linkar uma das Libs:
CTP52.LIB (no meu caso)
CT.LIB
CTP.LIB + CTUSP.OBJ

Código: Selecionar todos

*----------------------
Function Busca_Peso (nCom)
*----------------------
Local nBuffer := 2400, nPar   := "N", nDados := 8, nStop := 1
Local nIOn := "", nIRQ := "", Inicia := "", nCont := 0, cInput := ""
Local nPeso := "", nTenta := 1

*** Inicializacao da porta ***

if nCom = 1          &&  Buscar em: Gerenciador de Disp - Porta COM(x) - Recursos
  nIO  := "03F8"     &&  -> Intervalo de ES
  nIRQ := 04         &&  -> Pedido de Interrup
elseif nCom = 2
  nIO  := "02F8"
  nIRQ := 03
elseif nCom = 3
  nIO  := "02F8"     ???
  nIRQ := 03         ???
elseif nCom = 4
  nIO  := "02F8"     ???
  nIRQ := 03         ???
endif

do while nTenta <= 3
  Com_Close(nCom)
  Com_SetIO(nCom,nIO)
  Com_SetIRQ(nCom,nIRQ)
  Com_Open(nCom,1000)
  nInicia:=Com_Init(nCom,nBuffer,nPar,nDados,nStop)

  nCont=0
  do while nCont < 7          // * aguarda 7 bytes na porta
     inkey()
     if l()
       Return 0
     endif
     Com_Send(nCom,5)         // * Envia ENQ
     nCont = Com_Count(nCOM)
  enddo

  cInput := Com_Read(nCom)    //* lê a porta
  nPeso = Subst(cInput,2,5)
  nPeso = round( val(nPeso)/1000 ,3)
  if nPeso > 0
    exit
  endif
    
  nTenta++
enddo

Return (nPeso)
Editado pela última vez por Toledo em 21 Jul 2010 07:50, em um total de 1 vez.
Razão: Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
monicafafe
Usuário Nível 1
Usuário Nível 1
Mensagens: 6
Registrado em: 26 Out 2006 19:09

Pegar informações data e hora balança Toledo

Mensagem por monicafafe »

Essa função serve para balança rodoviária também, Modelo 8530 Cougar?
Alguém sabe me dizer como posso pegar informações de data e hora também?

Obrigada

Mônica
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4671
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Curtiu: 3 vezes
Contato:

Mensagem por rochinha »

Amiguinha

A balança deve estar conectada a um terminal, um pc, certo?

Porque voce não usa a data e hora do proprio pc até que consiga verificar as informações da balança.

As vezes um quebra gualho se torna solução definitiva.

@braços :?)
OPS! LINK QUEBRADO? Infelizmente links para www.pctoledo.COM.BR irão quebrar pois o Forum se foi, assim como nosso célebre Irmão de Bits Toledo. Ainda assim me ENVIE seu email com link do tópico encontrado na Web para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url] e tentarei lembrar do que se tratava. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar do usuário
alberto_dias
Usuário Nível 2
Usuário Nível 2
Mensagens: 64
Registrado em: 10 Abr 2005 09:46
Localização: Taboão da Serra - SP
Contato:

Mensagem por alberto_dias »

Mauricio, Boa Tarde
Eu utilizo o clipper 5.3, ja peguei este exemplo e nao consegui fazer funcionar, não tenho o tools, peguei as libs ct53.lib e ctp53.lib, mas não consegui fazer funcionar.
Estou com um problema, alias um problemão, estou quase perdendo um cliente por este motivo, por não conseguir ler a balanca toledo PRIX III no caixa.
Peguei um exemplo em C e este exemplo gera um arquivo Peso.txt com a resposta da balança.
Mas este programa funciona bem por 1/2 hora ou as vezes 1 hora depois
,não sei porque motivo ele não se consegue mais receber a resposta da porta com1 ou com2, só reiniciando a máquina, ai ela funciona só mais 1/2 hora, já pensou em um mercado lotado ter que reiniciar a máquina.
Preciso de um programa que leia a balança, pode ser um programa externo e devolva por exemplo um arquivo peso.txt com a resposta da balança.
O cliente me deu até o final da semana para resolver este problema.
Voce poderia me ajudar ou orientar.
Agradeço desde já.
Alberto Dias
Atual.: Harbour 3.2.0 dev (r1703241902) + Gtwvg E Hmg IDE 3.5
Máquina Notebook - DELL ( INTEL CORE i5 ) 8 GB
Sistema - Windows 10 64 Bits
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4671
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Curtiu: 3 vezes
Contato:

Mensagem por rochinha »

Amiguinha

Poste o codigo que vc usa para eu dar uma analisada.
OPS! LINK QUEBRADO? Infelizmente links para www.pctoledo.COM.BR irão quebrar pois o Forum se foi, assim como nosso célebre Irmão de Bits Toledo. Ainda assim me ENVIE seu email com link do tópico encontrado na Web para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url] e tentarei lembrar do que se tratava. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
José Pereira
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 07 Jul 2004 00:58

Sem sucesso balança Toledo

Mensagem por José Pereira »

Também estou com o mesmo problema.
Tentei a mesma função mas sem sucesso.
Vcs já têm algo melhor?
Pereira
jpereira@meg.org.br
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4671
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Curtiu: 3 vezes
Contato:

Mensagem por rochinha »

Amiguinho

Entrei no site www.TOLEDO.com.br e vou dizer nunca vi área de suporte mais fraca que a deles ou estou cego demais, pois não consegui encontrar manuais de seus produtos e muito menos algo sobre softwares de integração.

Portanto se tiver manuais por ai ou exemplos mesmo em VB me manda para eu analisar.
OPS! LINK QUEBRADO? Infelizmente links para www.pctoledo.COM.BR irão quebrar pois o Forum se foi, assim como nosso célebre Irmão de Bits Toledo. Ainda assim me ENVIE seu email com link do tópico encontrado na Web para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url] e tentarei lembrar do que se tratava. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar do usuário
vagucs
Membro Master
Membro Master
Mensagens: 1480
Registrado em: 10 Jul 2004 10:45
Localização: Ipanema - MG
Contato:

Mensagem por vagucs »

a toledo é fraca mesma rochinha na qeustão suporte, para fazer leitura de uma balança deles 9490 (acho que é isto) tive quase que brigar com o suporte para me mandarem a documentação correta.

Estas balanças vc pode configurar para ela sempre enviar o peso para o computador ou para vc mandar um CHR(5) e ela retorna na porta o peso.

Acho que isto é padrão para todas as balanças toledo, é demasiadamente simples seus usos e aplicações, mais a noite vou ver se posto a rotina que tenho aqui.
Sem mais
Wagner Nunes
www.vagucs.com.br
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4671
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Curtiu: 3 vezes
Contato:

Mensagem por rochinha »

Amiguinho

Valeu,

Eu nunca tive que implementar uma balança antes e se fosse implementar procuraria Bematech, mas o caso não é este e portanto acho que chegaremos num final feliz.
OPS! LINK QUEBRADO? Infelizmente links para www.pctoledo.COM.BR irão quebrar pois o Forum se foi, assim como nosso célebre Irmão de Bits Toledo. Ainda assim me ENVIE seu email com link do tópico encontrado na Web para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url] e tentarei lembrar do que se tratava. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar do usuário
vagucs
Membro Master
Membro Master
Mensagens: 1480
Registrado em: 10 Jul 2004 10:45
Localização: Ipanema - MG
Contato:

Mensagem por vagucs »

A biblioteca serial que usei eu mesmo que fiz, esta rotina esta rodando em xHarbour para Linux perfeitamente, é fácil migrar ela para qualquer lib serial, é uma fgorma padrão para as balanças toledo, a balança tem que estar configurada para so enviar o peso caso vc faça uma requisição via CHR(5)

Código: Selecionar todos

procedure peso
local comando,tentra,bytes,lidos,buf,temp
comando=chr(5)
comwrite(hdlbalanca,comando,len(comando),1)
tentra=time()
bytes=""
do while val(right(elaptime(tentra,time()),2))<=6
   secondssleep(5)
   if com_buffersize(hdlbalanca)<=0
      loop
   end if
   buf=space(com_buffersize(hdlbalanca))
   lidos=comread(hdlbalanca,@buf,len(buf),1)
   if lidos>0
      bytes+=buf
   end if
   if chr(3)$bytes
      temp=substr(bytes,2,len(bytes)-2)
      temp=left(temp,2)+"."+right(temp,3)
      if isnum(temp)
         return val(temp)
      else
         return 0
      end if
      bytes=""
   end if
enddo
return 0
Sem mais
Wagner Nunes
www.vagucs.com.br
Avatar do usuário
vagucs
Membro Master
Membro Master
Mensagens: 1480
Registrado em: 10 Jul 2004 10:45
Localização: Ipanema - MG
Contato:

Mensagem por vagucs »

lembrando que a balança sempre retorna 0 se o peso nao estiver estabilizado.
Sem mais
Wagner Nunes
www.vagucs.com.br
José Pereira
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 07 Jul 2004 00:58

Obrigado

Mensagem por José Pereira »

Olá pessoal
Obrigado pela ajuda. Vou tentar implementar esta rotina, tentando em clipper, pois aqueles comandos eu ainda nao conheco, pois são do xHarbour.
Pereira
jpereira@meg.org.br
Avatar do usuário
vagucs
Membro Master
Membro Master
Mensagens: 1480
Registrado em: 10 Jul 2004 10:45
Localização: Ipanema - MG
Contato:

Mensagem por vagucs »

como assim comandos do xharbour?

O xHarbour é exatamente igual ao clipper, as unicas coisas que usei as rotinas para ler o buffer da porta, gravar na porta e ler dela, são rotinas que se tivesse criado para clipper o fonte ficaria do mesmo jeito.

O xHarbour não é mistico, nao usei nada de extraordinario nele a rotina funciona da mesma forma que o clipper.
Sem mais
Wagner Nunes
www.vagucs.com.br
José Pereira
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 07 Jul 2004 00:58

pouco conhecimento comunicação serial

Mensagem por José Pereira »

Obrigado amigo, mas eu nao tenho as funções que vc usou nesta rotina. Uso o Clipper 5.2 e pretendo ler a comunicação serial com a IOLIB, mas não sei como será o procedimento. Pra complicar, só vou poder fazer isto no ambiente do cliente, pois a balança é imensa. Fica distante de mim cerca de 1 hora de distância. Devo ir lá hj de tarde ou amanhã de manhã.
Grato Pela sua ajuda.
Pereira
jpereira@meg.org.br
José Pereira
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 07 Jul 2004 00:58

Mensagem por José Pereira »

e.t.
se vc tiver estas funções para o clipper 5.2, me mande, por favor.
Fico imensamente agradecido.
Pereira
Responder