quinta-feira, abril 07, 2022

Memórias: Coletores CypherLAB

No começo da empresa muitos dos nossos clientes estavam atrás de soluções de baixo custo. Os coletores das marcas mais conhecidas sempre foram caros e as suas opções para comunicação por rádio frequência  (nesta época pré-WiFi) também. Daí o interesse por equipamentos mais simples, com uma opção de comunicação por rádio de baixo custo.

CPT-711 (à esquerda) e CPT-8110 (à direita)

A CipherLAB continua firme e forma e ainda oferece alguns modelos compatíveis com os da época. O rádio de baixo custo já foi abandonado.

O modelo básico na época era o CPT-711. A CPU de 16 bits e o display gráfico de 128x64 (normalmente usado como alfanumérico com 4 ou 8 linhas de 16 caracteres) continuam nas linhas 8000 e 8300 que sobrevivem. Os coletores não tem propriamente um sistema operacional. A programação é feita em C, usando bibliotecas específicas. A carga do programa é feita através de um aplicativo do fabricante (anos mais tarde eu achei a documentação do protocolo e consegui fazer uma versão Linux).

Como a maioria dos coletores simples, os dados ficam na Ram (mantidos pela bateria). Os dados são armazenados no que a documentação chama de "databases", claramente inspiradas por DBase, Clipper, etc (perguntem para os pais ou avôs de vocês o que era isso). O importante é que os dados vão num arquivo com acesso randômico e arquivos de índice permite localizar registros por uma chave. Não lembro de ter tido problema de desempenho, mesmo com algumas aplicações usando volume grande de dados (pense em carregar código, descrição e preço de todos os produtos de um supermercado).

Os coletores eram bem compactos, mas não excepcionalmente robustos. O modelo 8000 é basicamente um CPT-711 em uma carcaça menor. Mais adiante, um fabricante tradicional de scanners lançou uma versão do 8000 com um design mais bonito e robusto (um de nossos clientes teve mais de uma centena destes coletores).

Os modelos com rádio de baixo custo eram da linha 8100, fisicamente um CPT-711 com um "chifrinho" (antena). O modelo com o qual trabalhamos foi o CPT-8110, que usava um rádio na faixa de 433MHz com alcance (teórico) de 200m com visada direta. O sistema de rádio permitia, em teoria, ter até 45 coletores e até 15 bases de rádio. Uma das bases era conectada a um micro, via RS232, e às outras bases, em uma rede RS485. Na verdade uma base suportava no máximo 15 coletores, o valor de 45 poderia ser atingido dividindo bases e coletores em grupos (com no máximo 15 coletores cada). Se lembro corretamente, acho que o máximo que tivemos foi um sistema com 6 coletores e 2 bases (e o funcionamento deixou a desejar).

A comunicação com o micro não tinha nenhum protocolo sofisticado. Para enviar uma mensagem ao terminal de id nn (01 a 45) bastava o micro enviar à base a sequência "@DTnn<mensagem>\r" (onde \r é o caracter ASCII CR). Dados do terminal eram recebidos de forma parecida: "@DTbbnn<dados>\r" (onde bb é a identificação da base). Criamos uma infraestrutura onde tínhamos um software único para o terminal, comandado pelas mensagens recebidas (pense em algo como um navegador, só que muito simplificado). Um programa no Windows (que podia ser rodado como um serviço) cuidava da comunicação e fornecia uma API para uma aplicação externa (onde residia a lógica da aplicação específica). Um esquema parecido era a base para as nossas aplicações com coletores DOS com WiFi e acabaria sendo adaptada para rodar também nos coletores com Windows CE (temos clientes com esta solução até hoje). Hoje em dia, com coletores e RF mais modernos, dá para usar uma aplicação Web ao invés deste esquema proprietário.

Se a memória não falha, acho que foram três clientes com a solução RF de baixo custo:
  • Uma indústria, que usava o sistema com dois coletores para registrar entrada e saída de produtos. O "servidor" era um micro "montado" que ficava embaixo do balcão da expedição!
  • Uma loja, que usava o sistema com seis coletores para (inicialmente) registrar pré-pedidos. O sistema ganhou mais funcionalidades e, felizmente, foi atualizado para coletores Windows CE com comunicação WiFi.
  • Uma empresa que fazia recarga de cartuchos de impressora, para controlar o processo. Aqui o uso foi mais pesado (não lembro quantos coletores, mas eram pelo menos seis e duas bases de rádio). E onde tivemos mais problemas até o sistema ser abandonado (pararam a trabalhar com recarga de cartuchos e passaram a vender cartuchos "genéricos").
De um modo geral o sistema de rádio funcionava, mas não suportava uma carga mais pesada. Um paliativo foi quebrar as mensagens em pacotes menores e aplicar uma compactação simples.

Enfim, os coletores da CypherLAB não eram equipamentos "sexys", mas tinham uma boa relação custo benefício (se usados dentro dos seus limites). E proporcionaram alguns projetos tecnicamente interessantes.

Nenhum comentário: