Existem empresas e empresas. Metodologias e metodologias. Em alguns lugares, 
existem coisas como homologação, o que logo esbarraria na possibilidade de 
comprar uma balança na esquina.

Não estou criticando sua solução, nem muito menos mandando alguem escrever uma 
api nova, acho válido procurar fabricantes que forneça e pronto, há inclusive 
solucoes mais low level, nao so activex ...




Eduardo Almeida - Engenharia de Software
[email protected] - 27 3021-1530 / 27 9839 3755

WEB2 Solutions - Inovando, sempre!

From: Lucas Mateus 
Sent: Thursday, February 02, 2012 2:04 AM
To: [email protected] 
Subject: Re: [SP-pm]Porta serial via web. é possivel ??

O dia que der problema na balança o cara vai correr na esquina comprar outra 
balança que ao invés de mandar o buffer redondo manda quadrado e ele vai querer 
espetar e funcionar o negócio. 

Ai vai o cara la acessar todos os recursos e blablablabla pra fazer um "modulo" 
de leitura para a nova balança.
É vai fácil limpar os 2 (ou 3 nao lembro) promeiros bytes pegar a sequência 
númerica e converter.

Se o valor é 250 nao pode ser kg so pode ser gramas. (isso para uma balança de 
mesa)


2012/2/2 Eduardo Almeida <[email protected]>

  “A única coisa chata é que tem balança que envia o peso em Kg outras em 
gramas. E a app web era Perl.”

  Tendo acesso à todos os recursos do equipamento, muito provavelmente vc 
conseguiria recuperar informacoes como modelo, tara, unidade de medida, etc 
.... e usálos como parâmetros nesses casos ....

  É onde eu digo, nem sempre o peso é tudo que se precisa ...

  My cents

  Eduardo Almeida - Engenharia de Software
  [email protected] - 27 3021-1530 / 27 9839 3755

  WEB2 Solutions - Inovando, sempre!

  From: Lucas Mateus 
  Sent: Thursday, February 02, 2012 1:30 AM
  To: [email protected] 
  Subject: Re: [SP-pm]Porta serial via web. é possivel ??

  A única coisa chata é que tem balança que envia o peso em Kg outras em 
gramas. E a app web era Perl. 



  Em 2 de fevereiro de 2012 01:28, Lucas Mateus 
<[email protected]> escreveu:

    Trabalhei numa empresa de Logística e la utilizamos algo semelhante para 
pesar os pacotes, os desktops eram Ubuntu então o que fizemos foi um programa 
em C que lia a seria chamava o buffer do teclado e escrevia os números se a 
tela de foco tive o Title XPTO que era nossa tag <title> do HTML. 

    Para isso funcionar bem o formulário tem sempre que manter o foco no campo 
de pesagem, funcionava muito bem isso.



    2012/2/2 Eduardo Almeida <[email protected]>

      Cabe observar o seguinte, equipamentos como balanças e impressoras 
fiscais, possuem funções muito além de simplesmente retorna o peso que está 
sobre ela, ou simplesmente emitir uma nota.

      Esses equipamentos possuem diversas funções de configuração, carga, etc. 
A melhor forma de usufruir de todo o equipemento, é utilizar os recursos que o 
frabricantes oferecem. Usar esses equipamentos, no windows, quase sempre 
exigirão o uso de um activeX, na maioria das vezes fornecido pelo fabricante, é 
contendo um objeto implementado que tenha total controle dos recursos do 
hardware em questao.

      A grande maioria dos softwares de automação, for win, sejam eles em 
delphi, visual basic, ou whatever, usam o modelo COM/DCOM para comunicação com 
hardware, isto é, e em outras palavras, usam activeX.

      Quem tem experiência com automação, com certeza ja ouviu falar da 
bematech por exemplo, nesse link 
http://www.bematech.com.br/assistencia-downloads.html  eles oferecem diversos 
modelos de implemetação e usos, vcs encontrarão não só os drivers, como também 
activeXs pra cada modelo.

      Então, seja lá como você vai fazer, client, serviço, não importa, o 
melhor caminho, procurando produtividade, é sem duvida usar o activeX do 
fabricante, caso exista, instanciando ele sempre abaixo do IE, justamente pra 
nao ficar preso nele. No win, vc pode instanciar um activeX qualquer, com 
diversas linguagens, VB, VBScript, JScript, PHP, Perl, Python, bla, bla, bla 
....

      Usar o activeX nao é um mal caminho, usá-lo através do IE sim, é uma 
péssima escolha. Ao todo, você pode simplesmente fingir que ele nao existe, e 
criar uma nova API, compilá-la como dll e registrá-la no windows e logo após 
usar ..... se vc tiver usando o APACHE::ASP ou Perlscript, under IIS, por 
exemplo, após registrar sua DLL, é só fazer isso pra instanciar o objeto:

      my $balanca = $Server->CreateObject(“Nomedoseu.COM.Registrado”);
      my $pesoatual = $balanca->pesa();

      O mesmo em VBscript X ASP – roda no server

      dim balanca = Server.CreateObject(“Nomedoseu.COM.Registrado”)
      dim pesoatual = balanca.pesa()

      O mesmo em VBscript X IE – roda no client 
      dim balanca = document.CreateObject(“Nomedoseu.COM.Registrado”)
      dim pesoatual = balanca.pesa()

      e por ai vai, nao importa se é delphi, visual basic, php, perl, or 
whatever, no win, quase todos softwares de automacao que eu conheco usa 
COM/DCOM e activeXs

      Ai você decide, quer escrever uma livraria nova? ou quer usar uma que ja 
existe?


      Eduardo Almeida - Engenharia de Software
      [email protected] - 27 3021-1530 / 27 9839 3755

      WEB2 Solutions - Inovando, sempre!

      From: Daniel Vinciguerra 
      Sent: Wednesday, February 01, 2012 10:55 PM
      To: [email protected] 
      Subject: Re: [SP-pm]Porta serial via web. é possivel ??

      É certo que seria mais rápido com menos conexões, ou (quase) nenhuma no 
caso do activeX, mas dependendo de como for feito, não vejo um grande impacto 
em performance com um serviço visto que a quantidade de informações trafegadas 
não vai ser significativa. 

      E alem disso terá um sistema cross-browser ao invés de ficar preso ao IE 
ou outro navegador usando a tecnologia X ou Y...

      []'s

      Daniel Vinciguerra
      Web Solutions Architect and Co-Owner at Bivee
      http://github.com/dvinciguerra



      On 1 February 2012 22:38, Renato Santos <[email protected]> wrote:

        Nunca mexi com uma balança, 
        mas acho que ele deve ficar enviando
          "olá, peso atual: 234 gramas"
        e ficar enviado isso a cada mudança de peso.

        Então seria só fazer um serviço que fica recebendo esses dados,
        e a cada mudança em N tempo (por exemplo, a cada 1 segundo) enviar, se 
exitir mudança do ultimo enviado, para o servidor,

        o servidor pode ser um WEB que recebe um POST ou um GET com os dados:
        IP da maquina, peso,

        talvez pra facilitar qual maquina vai ser qual usuario na tela, vc pode 
fazer um botão na aplicação para o usuario informar algum numero (tipo, 1 ou 2, 
bem simples) que seja informado o temop todo em todas as paginas no site (poe 
na sessão)
        assim no lado servidor, vc pode por na pagina que precisa do dado da 
balança um ajax (ou de preferencia um long-polling/socket) que recebe o peso e 
exibe.

        não é o mais rapido (pois tem o temo da internet) mas é (na minha 
opinião que nunca mexeu direito com activex e IE) o mais simples



        2012/2/1 Daniel Vinciguerra <[email protected]>

          Escrever um serviço para isso não é muito mais fácil que ficar 
fazendo forms e outras coisas!?!?! 

          Cria um serviço local para pegar os dados da serial, criar uma sessão 
com isso e disponibilizar de forma local via HTTP/json... e via JS você você 
faz o navegador buscar os dados desse serviço e preencher o campo que vc quer!

          Fiz isso em um sistema desktop de leilao cujo um banco (dono dos 
carros) via a necessidade de um chat para se comunicar com os responsáveis pelo 
leilão quando ele estava acontecendo. Então a cada espaço de tempo ou estimulo 
do sistema eu atualizo as informações disponibilizo em formato JSON via serviço.

          Como o chat eh uma pagina web em um servidor da empresa... eu faço a 
atualizações das informações do chat usando JS/Ajax para não haver a 
necessidade do reload.


          Não sei se o cenário é este mesmo ou eu perdi algum paragrafo na 
discussão???
          Vejo possibilidade de se implementar isso de forma bem simples... 
barata e incluindo até a utilização de HTTPS para aumentar o lance da 
segurança...

          []'s

          Daniel Vinciguerra
          Web Solutions Architect and Co-Owner at Bivee
          http://github.com/dvinciguerra 




          On 1 February 2012 21:11, Eduardo Almeida 
<[email protected]> wrote:

            Acrescentando .... muitos fabricantes de balanças, leitores, 
impressoras fiscais, etc, ja fornecem os activeX, no formato .dll na maioria 
das vezes. 

            Ao invés de usar o IE pra instanciar o activeX, o que me prenderia 
no IE, e me daria dor de cabeças com políticas de segurança, eu instanciaria 
esse activeX diretamente do meu client em CGI/Perl/Plack. CGI é só uma sugestão 
=]


            My cents

            Eduardo Almeida - Engenharia de Software
            [email protected] - 27 3021-1530 / 27 9839 3755

            WEB2 Solutions - Inovando, sempre!

            From: Eduardo Almeida 
            Sent: Wednesday, February 01, 2012 8:41 PM
            To: [email protected] 
            Subject: Re: [SP-pm]Porta serial via web. é possivel ??

            O JS sozinho nao resolve o problema, no máximo serve pra detectar a 
entrada do serial no input do form, assim como funciona com um leitor de código 
de barra numa app web, vc da um focus() no input e o leitor, ao ler um código, 
retorna o mesmo como se fosse um teclado qualquer, com o evento onchage do JS, 
vc consegue incluir esse produto que acabou de ser “lido” no “ pedido que está 
em aberto.

            Pra interação com hardware, (no caso do leitor de código de barra 
nao ha interacao), como portas seriais, modens, etc, você precisará sempre de 
uma “aplicação” instalada localmente que consiga fazer isso. Entao voltamos á 
sugestão do Nilson, ou à minha sugestão ... faria um client, ainda web, rodando 
sobre o plack, e instalaria em cada client ... rodando seu “client web” na 
maquina, vc consegue ter total controle sobre a mesma.

            Usar activeX, ainda irá esbarrar em diversas políticas de segurança 
do windows, principalmente os mais novos.


            Meus cents


            Eduardo Almeida - Engenharia de Software
            [email protected] - 27 3021-1530 / 27 9839 3755

            WEB2 Solutions - Inovando, sempre!

            From: Ricardo Stock 
            Sent: Wednesday, February 01, 2012 9:28 PM
            To: [email protected] 
            Subject: Re: [SP-pm]Porta serial via web. é possivel ??

            Estou vendo justamente isso no google, vi ate um artigo do 
daniel... minha duvida é como pegar os dados. vi outras soluçoes até mesmo em JS

            Veja                                                (sempre)
            Balança filizola -> maquina windows -> Browser IE -> form -> depois 
é fácil. -> input -> servidor linux -> retorno em html

            estou pensando em deixar algo escutando a porta, porem a primeira 
ideia é deixar o mais transparente possivel para o usuario. Pensei tambem em 
gravar um txt e ler sempre que receber o foco. Ou seja estou pensando em todas 
as possibilidades.

            Mas uma coisa eu ja percebi... vou trabalhar com Mozila ;-p

            Mas agradeço as respostas.. vou olhar todas e voltar a postar.

            Realmente obrigado


            Ricardo Stock

              ----- Original Message ----- 
              From: Ricardo Stock 
              To: [email protected] 
              Sent: Wednesday, February 01, 2012 7:49 PM
              Subject: [SP-pm] Porta serial via web. é possivel ??

                  boa tarde a todos.

                  Tenho um sistema rodando em um cliente (tres restaurantes), é 
necessário ser web pois roda on line em diferentes locais. O sistema  esta ok. 
Porém agora o mesmo decidiu automatizar as balanças. Ai esta o problema.

                  Com um sistema via web, rodando como uma pagina de web no 
desktop. O servidor remotamente distante. é possivel através da porta serial 
ler os dados vindo de uma balança ???

                  Sei que em perl tem como ler a porta serial. Mas vou ler os 
dados e colocar em um form ? Isso é possivel. Eu consigo por exemplo ler um 
leitor de codigo de barras e jogar no form, pois é onde esta o foco. Mas sendo 
serial.... como proceder

                  
              alguma sugestão ???


              Obrigado
              Ricardo Stock

------------------------------------------------------------------
              =begin disclaimer
                 Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
              SaoPaulo-pm mailing list: [email protected]
              L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
              =end disclaimer


--------------------------------------------------------------------
            =begin disclaimer
               Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
            SaoPaulo-pm mailing list: [email protected]
            L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
            =end disclaimer


--------------------------------------------------------------------
            =begin disclaimer
               Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
            SaoPaulo-pm mailing list: [email protected]
            L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
            =end disclaimer


            =begin disclaimer
              Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
            SaoPaulo-pm mailing list: [email protected]
            L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
            =end disclaimer




          =begin disclaimer
            Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
          SaoPaulo-pm mailing list: [email protected]
          L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
          =end disclaimer






        -- 

        Saravá,
        Renato CRON Santos
        http://www.renatocron.com/blog/
        @renato_cron





        =begin disclaimer
          Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
        SaoPaulo-pm mailing list: [email protected]
        L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
        =end disclaimer




--------------------------------------------------------------------------
      =begin disclaimer
         Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
      SaoPaulo-pm mailing list: [email protected]
      L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
      =end disclaimer


      =begin disclaimer
        Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
      SaoPaulo-pm mailing list: [email protected]
      L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
      =end disclaimer





------------------------------------------------------------------------------
  =begin disclaimer
     Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
  SaoPaulo-pm mailing list: [email protected]
  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
  =end disclaimer


  =begin disclaimer
    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
  SaoPaulo-pm mailing list: [email protected]
  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
  =end disclaimer





--------------------------------------------------------------------------------
=begin disclaimer
   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
SaoPaulo-pm mailing list: [email protected]
L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
=end disclaimer
=begin disclaimer
   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
 SaoPaulo-pm mailing list: [email protected]
 L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
=end disclaimer

Responder a