Ir para conteúdo
  • Cadastre-se

dev botao

ACBrBal no Android


Ver Solução Respondido por Daniel Simoes,
  • Este tópico foi criado há 205 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Olá pessoal

Estou precisando fazer a leitura de pesos de balancas Elgin e Toledo no Android usando o ACBrBal, sabem me dizer se esta funcionando? Pois aqui nao consigo ler de forma nenhuma, em especial usando o GS300 da Gertec.

 

Ederson Selvati
www.criareti.com.br

Skype: eselvati

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa noite.

Funciona sim. Veja o video abaixo sobre o assunto:

 

Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Alexandre

Engraçado, testei aqui no GS300 da Gertec e esta me trazendo as portas como COM, olhando o codigo aqui, metodo acharportasseriais, parece so estar gerando COM

image.png.bb2801fb5ab7c9d8bed258a2deed1167.png

Alguma coisa que preciso fazer aqui pra que ele ache as portas seriais corretamente?

 

Ederson Selvati
www.criareti.com.br

Skype: eselvati

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Você precisa ver com o Fabricante se esse modelo de equipamento disponibiliza porta Serial, e se o sistema operacional deixa ela acessível a todos usuários

Talvez seja mais simples usar Bluetooth

 

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Bom dia Daniel

Disponibiliza a serial sim, mas pelo que estou percebendo, nao esta disponivel para todos os usuarios, pelo seu entendimento com o D2 mini, sabe se seria alguma permissão necessária no APP pra poder garantir acesso as portas seriais?

Ederson Selvati
www.criareti.com.br

Skype: eselvati

Link para o comentário
Compartilhar em outros sites

  • Fundadores

No caso do D2Mini as permissões já estavam liberadas a todos, pelo próprio sistema operacional...

No Linux poderíamos inserir o usuário no Grupo que tem acesso a porta Serial... mas no Android não sei se isso funcionaria...

Talvez seja melhor buscar apoio com o fabricante

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Daniel

Nunca vi dessa forma, mas consegui fazer funcionar, olhe só

image.thumb.jpeg.3cd69f3979e5d6f50de2d9155032f1b3.jpeg

 

image.thumb.jpeg.d49311912b4965ff8999e5456ddfb054.jpeg

Porta COM1 no Gertec GS300, lendo uma Elgin DP30

Bem diferente né? Ou então criaram links simbolicos apontando pra COM1

Editado por Ederson Selvati
  • Curtir 3

Ederson Selvati
www.criareti.com.br

Skype: eselvati

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Show...

na verdade, COM1 será traduzido para /dev/ttyS0

Nos fontes da classe Synaser, tem uma rotina que traduz os nomes "Windows" para Linux

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Bom dia pessoal

Este demo/ACBrBal é compativel com o Delphi 10.4.2?

Aqui recebo um range check error ao pedir pra ativar o ACBrBal num demo a parte que fiz, ja o ACBrBalAndroid nem roda compilado nessa versao.

Algum detalhe faltante? Será alguma permissao especifica?

Ederson Selvati
www.criareti.com.br

Skype: eselvati

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Experimente desabilitar o Range Check Error, nessa Unit

{$R-} // Range check off

https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Range_checking
                          

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Fundadores

@Ederson Selvati, como estão os parâmetros do método "Open" no 10.4.2 ?

Não consegui reproduzir o problema, no 10.3.3

No caso abaixo, não ocorre RangeError pois o parâmetro Flags está declarado como Integer

image.png

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Boa tarde Daniel

Acho que o problema e com o GS300 Gertec ou Android 11 que vem nele, quando compilo no Alexandria, a porta COM1 é detectada, quando compilo no Sydney dispara o range check error ao chamar o metodo AcharPortasSeriais....

 

Ederson Selvati
www.criareti.com.br

Skype: eselvati

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Humm.. realmente pode ser algo relacionado ao Android 11 e a compatibilidade do SDK utilizado na compilação...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Pois é, coloquei aqui o mesmo SDK que uso no Alexandria, direcionei pra API 30 e mesmo assim nao detecta esta porta COM1 nem a bala. Mas como consegui solução com o Alexandria e os prazos estouraram, vou migrar aqui e ver se vai dar tudo certo, depois com calma vou tentando apurar como resolver isso.

No mais, agradeço pelo seu empenho e dedicação de sempre.

Ederson Selvati
www.criareti.com.br

Skype: eselvati

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Consegui reproduzir o problema no Delphi 11..

O que ocorre é que Fhandle é declarado como THandle = NativeUInt  (só aceita valores positivos)

E quando ocorre erro na abertura da porta, o retorno é -1

image.png

Vou tentar compreender melhor, porque isso está ocorrendo...

  • Curtir 1
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Fundadores
  • Solution

Esse bloco de código, trata melhor o erro de abertura de porta...

  try
    {$IFNDEF FPC}
      {$IFDEF POSIX}
        FHandle := open(MarshaledAString(AnsiString(FDevice)), O_RDWR or O_SYNC);
      {$ELSE}
        FHandle := THandle(Libc.open(pchar(FDevice), O_RDWR or O_SYNC));
      {$ENDIF}
    {$ELSE}
      FHandle := THandle(fpOpen(FDevice, O_RDWR or O_SYNC));
    {$ENDIF}
  except
    On ERangeError do
      Fhandle := INVALID_HANDLE_VALUE;
  end;

Creio que o problema agora, seja questão de permissão de acesso... Deve haver alguma nova permissão a ser solicitada...

synaser.pas

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.