·

Engenharia Elétrica ·

Eletrônica de Potência

Send your question to AI and receive an answer instantly

Ask Question

Preview text

TRABALHO DE CONCLUSÃO DE CURSO CUSTOMIZAÇÃO EM SISTEMA DE OCR PARA AUTOMAÇÃO DE GATES COM PESAGEM Rafael da Costa Michel Prof Giovane Centro Universitário Dante Uniasselvi Curso Engenharia Data 28082024 RESUMO A Eagle Soluções é especializada na implementação de soluções tecnológicas avançadas oferecendo serviços que incluem a instalação de câmeras de segurança dispositivos de controle de acesso infraestrutura de rede e sistemas de reconhecimento de placas e contêineres Estas tecnologias são projetadas para garantir a segurança e eficiência operacional em ambientes empresariais industriais e logísticos integrandose perfeitamente com outros sistemas para fornecer uma experiência unificada e confiável Uma das soluções mais completas oferecidas pela Eagle Soluções é a implementação de um sistema de automação de entrada e saída de caminhões que inclui o reconhecimento automático de placas Este sistema utiliza tecnologias avançadas de visão computacional e inteligência artificial para validar o veículo e seu motorista por meio de reconhecimento de placas cartões RFID eou biometria Além disso o sistema integra se a plataformas de controle de acesso de terceiros para obter informações em tempo real e realiza a validação cruzada dos dados de pesagem coletados de uma balança rodoviária O sistema também controla automaticamente o acionamento de cancelas garantindo um fluxo seguro e eficiente Este projeto detalhará cada componente desse sistema integrado explorando suas interconexões e o funcionamento em conjunto para garantir uma operação segura e precisa Além disso será discutido o processo de customização desta solução para atender às necessidades específicas de um cliente que exige a integração do sistema de pesagem ao fluxo de entrada e saída otimizando assim todo o processo logístico A personalização do sistema demonstra a flexibilidade e capacidade da Eagle Soluções em adaptar suas tecnologias às particularidades de cada cliente garantindo soluções sob medida que atendem a requisitos específicos Palavraschave Sistema OCR 1 INTRODUÇÃO O reconhecimento ótico de caracteres OCR é uma tecnologia fundamental nas operações de carga conteinerizadas oferecendo uma solução eficiente para um setor que ainda enfrenta desafios significativos como burocracia e falta de investimentos especialmente em portos públicos O OCR permite a captura automática de informações críticas como números de contêineres e placas de veículos através de câmeras de alta resolução acopladas a sistemas inteligentes Apesar dos benefícios a adoção ampla dessa tecnologia é limitada pela necessidade de profissionais especializados para operar os dispositivos como tablets câmeras e computadores além da necessidade de integração com outros sistemas de gerenciamento portuário Este estudo visa demonstrar o potencial do OCR para transformar operações portuárias complexas como monitoramento de carga e gestão de contêineres resultando em melhorias significativas no desempenho operacional e redução de custos No Brasil os portos e centros logísticos são vitais para a economia e a necessidade de controle eficiente e rápido dos veículos que entram e saem dessas áreas é crucial A Eagle Soluções oferece uma solução integrada e robusta que vai além do reconhecimento de placas e contêineres Seu sistema integra dados de balanças rodoviárias sistemas de controle de acesso de terceiros e ainda automatiza o acionamento de cancelas garantindo segurança e eficiência em todo o processo Além disso a solução da Eagle inclui uma plataforma web que permite o acompanhamento em tempo real das operações o cadastro de veículos autorizados e a geração de relatórios detalhados assegurando conformidade com as normas legais como as estipuladas no artigo 17 da Portaria RFB Nº 1432022 Com a implementação de OCR não apenas se reduz a margem de erro humano mas também se estabelece um banco de dados preciso e acessível essencial para a otimização da logística moderna Essa tecnologia se torna assim um aliado indispensável na gestão de mais de 12 bilhões de toneladas de carga movimentadas nos portos brasileiros em 2021 conforme dados da ANTAQ elevando o padrão de eficiência e segurança no setor METODOLOGIA 2 EMBASAMENTO TEÓRICO 21 Como é o processo das cargas e contêineres até hoje Segundo Bandeira 2008 o contêiner foi o instrumento que revolucionou o transporte de cargas Desde sua introdução nos anos 60 o volume de cargas transportadas cresceu a ponto de se tornar a parcela mais significativa do tráfego de mercadorias A autora ainda afirma que o uso deste método de acondicionamento facilitou muito as operações de manuseio em portos e em outros pontos de transferência aumentando a eficiência e a velocidade do transporte e permitindo que múltiplas unidades de carga fossem manipuladas simultaneamente Os terminais e portos se adequaram à nova forma de acondicionamento rapidamente incluindo equipamentos próprios para manuseio de contêineres alterações nas áreas de armazenagem e novos métodos de estocagem dos contêineres técnicas de empilhamento Quando necessário o contêiner precisa ser aberto por completo até se achar a carga desejada ou o problema procurado como pode ocorrer por má intenção de esconder objetos indesejáveis drogas armas e outros artefatos junto a outras cargas fazendose necessário por muitas vezes o uso de cães farejadores para encontrar o que está escondido no contêiner podendo causar avarias nas mesmas Com o uso do sistema OCR fica fácil descobrir onde está o que contém e a quem pertence o contêiner facilitando dessa forma todo o trabalho de fiscalização dos órgãos competentes tendo em vista a quantidade e tipo de embalagem armazenada num mesmo lugar 22 Inovações tecnológicas agilizam o trabalho nos portos brasileiros Segundo a ANTAQ no mesmo passo do crescimento econômico nacional caminha a movimentação portuária Hoje os portos brasileiros trabalham para atender à crescente demanda e manter um serviço competitivo em âmbito global Entre janeiro e dezembro de 2023 o setor aquaviário brasileiro movimentou 1303 bilhão de toneladas em carga nos seus portos brasileiros sendo deles cerca de 97 de carga conteinerizada o que facilmente será superadocom o fator agravante de possuir os mesmos locais de escoamento Data da Notícia 8 de fevereiro de 2024 Com o espaço físico limitado a melhoria de produtividade se justifica pela implantação deste novo sistema evitando gargalo logístico Acelerar o processo de entrada e saída de mercadorias significa movimentar mais e gastar menos Inovações tecnológicas tem agilizado o trabalho nos portos brasileiros algumas delas têm demonstram muito mais eficácia quando comparadas à intervenção humana Todo esse desenvolvimento tecnológico visa além disso melhorar a segurança relacionada aos contêineres e cargas em geral A Receita Federal por meio da Portaria nº 35182013 entre outros assuntos determina a presença de sistemas capazes de efetuar a leitura e identificar os caracteres das placas de licenciamento e onde couber o número de identificação dos contêineres Os terminais portuários deverão estar equipados para escanear 100 das cargas de importação de maneira não invasiva ou seja sem abertura dos contêineres Deverão contarcom ainda com sistemas de identificação de contêineres e caminhões na chegada e na saída sem intervenção humana e ainda precisarão aumentar a resolução de câmaras de monitoramento dos pátios O sistema OCR está sendo adequado a alguns portos Um dos primeiros a receber esta tecnologia foi o porto de Santos 23 O que é OCR De acordo com a Simply Tecnologia a sigla OCR Optical Character Recognition que significa reconhecimento ótico de características é uma tecnologia de ponta que reconhece caracteres a partir de um arquivo ou imagem sendo inclusive de uso em vários âmbitos e recentemente começou a ser implantada no porto de Santos a princípio para cumprir uma exigência da Receita Federal do Brasil No terminal portuário de Santos o reconhecimento ocorre com um sistema implantado pela HTS empresa israelense em parceria com a ERGOS empresa brasileira que reconhece a placa do caminhão o número do contêiner e em seguida transmite a informação para um sistema informatizado próprio 24 Como funciona o sistema OCR 241 Elementos físicos Para garantir uma captura completa e precisa de informações em operações portuárias o sistema OCR mais avançado envolve a leitura simultânea das placas dianteira e traseira dos veículos além do código do contêiner que está localizado nas laterais parte traseira e superior do contêiner Esse tipo de sistema requer uma configuração robusta com a utilização de 8 câmeras e 10 pares de sensores ópticos distribuídos estrategicamente Especificamente são utilizadas 4 câmeras e 5 pares de sensores para cada sentido de movimentação entrada e saída permitindo uma cobertura total e a captura precisa de todos os ângulos necessários Cada câmera é equipada com um iluminador dedicado para garantir visibilidade ideal independentemente das condições de iluminação como em operações noturnas ou em ambientes com baixa luminosidade O sistema é controlado por um CLP Controlador Lógico Programável que recebe e processa os sinais enviados pelos sensores ópticos Esses sensores são responsáveis por detectar a presença dos veículos e contêineres acionando as câmeras no momento exato para capturar as imagens necessárias O CLP também integra os dados recebidos garantindo que as informações capturadas sejam processadas em tempo real e encaminhadas para os sistemas de gerenciamento portuário permitindo uma automação eficiente e precisa Essa configuração avançada não apenas otimiza a identificação e rastreamento de veículos e contêineres mas também minimiza a possibilidade de erros garantindo a conformidade com as exigências regulatórias e melhorando a eficiência operacional do terminal Figura 1 Câmera Pumatronix ITSCAM linha 400 Fonte Site da fabricante Pumatronix Figura 2 Iluminador ITSLUX Fonte Site da fabricante Pumatronix Figura 3 Sensor Banner série T18 Fonte Site da fabricante Banner Figura 4 CLP Micro 820 Fonte Site da fabricante AllenBradlley 11 Softwares Há diferentes soluções em software que podem ser entregues ao cliente dependendo da sua necessidade porém algumas estarão presentes sempres São elas A aplicação em Ladder executada pelo CLP responsável por monitorar as entradas do mesmo que correspondem aos sensores e validar a presença e posição do veículo na pista A Eagle OCR em NET 4 que irá monitorar as entradas do CLP e realizar o controle para disparo de captura das câmeras salvar estas imagens realizar o reconhecimento nas imagens usando biblioteca terceira salvar os resultados em banco de dados e notificar a EagleAPI A EagleAPI aplicação em NET Core 31 é a responsável por centralizar as informações lidar com integrações com softwares terceiros quando necessário fornecer dados e disponibilizar métodos as aplicações que fazem interface com o usuário Eagle OCR Viewer página web construída usando como base o framework React permite a visualização em tempo real dos resultados das leituras além de permitir a geração de relatórios em pdf e csv Eagle OCR Matcher também uma página web utilizando React voltado ao controle de entrada e saída de veículos quando há identificação do motorista via leitura de cartão ou biometria e uso do software Genetec Neste caso também é necessário o uso do Eagle Event Listener que captura os eventos de acesso e busca por aqueles no local de interesse e do Eagle Vehicles usado para realizar o cadastro dos veículos permitidos no recinto Figura 5 Eagle OCR Viewer Fonte Autor Figura 6 Eagle OCR Viewer Relatório Fonte Autor Figura 7 Eagle OCR Matcher Versão Original Fonte Autor 12 Comissionamento Primeiro verificase se todas as câmeras e CLPs estão acessíveis na rede Após a aplicação Ladder é transferida ao CLP A próxima etapa do comissionamento consiste em ajustar o foco e em alinhar a posição das câmeras de forma a deixar as placas bem centralizadas e tão perpendiculares quanto possível a fim de maximar as chances de reconhecimento dos caracteres Depois devese testar cada par de sensor interrompendo sua linha de detecção e verificando se a respectiva entrada do CLP tem seu valor alterado Tendo as questões físicas resolvidas iniciase a instalação dos softwares A primeira necessidade para o funcionamente dos softwares é que todas as suas dependências sejam instaladas no servidor que as hospedará Isso normalmente implica na ativação do recurso IIS do windows que gerencia a execução das aplicações instalação do NET Hosting Bundle NodeJS PM2 e URL Rewrite 2 que são recursos utilizados pelas aplicações e uma instância de SQL Server o banco de dados Figura 8 Tela inicial do IIS Fonte Autor As tabelas que serão utilizadas pelas aplicações devem ser criadas no banco de dados Normalmente já deixamse preparados scripts que quando executados criam essas tabelas Então as aplicações podem ser instaladas e configuradas dependendo do seu ambiente e funcionalidades Uma vez que o sistema esteja em operação os resultados são monitorados e são realizados ajustes nas configurações das aplicações e equipamentos Comumente altera se o intervalo de tempo entre as capturas das câmeras o número de capturas as configurações de imagem da câmera como balanço de cores ganho e tempo de exposição além das eventuais alterações em posição e foco das câmeras Figura 9 Exemplo de página de configuração de câmera Fonte Autor 24 Funcionamento O processo começa quando os primeiros sensores são interrompidos e a aplicação Eagle OCR lê a mudança no estado dessas entradas iniciando requisições para a câmera frontal realizar capturas e as armazenando para posterior reconhecimento O processo segue conforme o veículo se desloca até que se tenha realizado a captura da placa traseira e do contêiner caso o veículo tenha altura suficiente para interromper o sensor mais alto Os reconhecimentos são então realizados os dados salvos no banco de dados e a Eagle API é notificada A Eagle API processa os dados da leitura os associa a um evento de acesso do motorista quando existente e os envia para as aplicações de visualização conectadas Eagle OCR Matcher e Eagle OCR Viewer É comum que nesse momento se faça o envio dos dados para uma aplicação de terceiro no caso de integrações Diversos clientes já possuem ou implantam simultaneamente um WMSWarehouse Management System que consome os dados de OCR e controle de acesso É também nesse momento que se costuma realizar o acionamento de cancelas seja para entrada ou saída do recinto Para os casos em que se utiliza o Eagle OCR Matcher quando houver alguma falha na identificação da placa ou o veículo não tiver o acesso permitido no sistema a mensagem será alterada de forma a indicar ao operador a situação Nesse momento o botão Retorno será habilitado para que a primeira cancela pela qual o motorista passou caso existente seja levantada e o veículo retorne O operador também tem a opção de selecionar o botão Manual que trará um menu para que o veículo que está entrando seja buscado do banco de dados e se presente selecionado É necessário inserir uma justificativa para que tal seja salva junto do registro do acesso Isto ocorre principalmente nos casos em que não é possível realizar a leitura da placa seja por dificuldade na identificação ausência de placa ou não acionamento do sistema de OCR Figura 10 Pistas com OCR em implantação Fonte Eagle Soluções Figura 11 Totem com leitora de cartão e interfone Fonte Eagle Soluções Neste projeto será utilizada pela primeira vez a leitora de proximidade e biometria IDAccess da ControlID Figura 12 Leitora de proximidade e biometria IDAccess Fonte Site da fabricante ControlID 3 RESULTADOS E DISCUSSÃO DESENVOLVIMENTO DA CUSTOMIZAÇÃO 31 Necessidade do Cliente O cliente que contratou a implantação do sistema da Eagle já possui duas entradas biredicionais contendo uma balança rodoviária e um sistema para registro das pesagens e notas fiscais Ele gostaria de substituir o sistema que possui pela solução da Eagle que engloba controle de acesso com identificação do motorista A aplicação também deve ter capacidade de funcionar de forma automática considerando que não tenham erros durante o processo A solução já existente da Eagle não tem suporte para dados de pesagens então ficou definido que a empresa realizaria uma customização específica para o cliente 32Definição da Solução O primeiro ponto a ser investigado foi descobrir como os dados de leitura da balança chegavam a aplicação existente No cliente foi possível observar que um cabo chegava da balança até um módulo chamado de SealingBox pela fabricante e deste módulo seguia para o computador do operador via conector USB No Windows identificouse que este dispositivo USB criava uma porta serial virtual Ao monitorar o tráfego de dados nessa porta nada foi visualizado Isso poderia ser explicado caso uma comunicação inicial fosse necessária pare receber os dados de pesagem hipótese que ganha força ao observarse que a solução existente no cliente utiliza uma aplicação intermediária PESONET que passa por um período de conexão e configuração antes de iniciar a leitura de pesagens Investigando o PESONET descobriuse que era possível exportar as leituras via saída serial do computador e via conexão por servidor TCP sendo a última uma alternativa viável para utilização na aplicação da Eagle Pensando em modularização e na possibilidade de melhorias futuras optouse por criar uma nova aplicação para lidar apenas com dados de leituras de balanças no momento receberá o nome de Eagle Pesador Ela será responsável por conectarse ao servidor TCP criado pelo PESONET e reenviar todas as leituras via websocket para os clientes que se conectarem a ela A escolha do uso do websocket foi feita pensando em performance O websocket exige muito menos tráfego de rede do que a tradicional técnica de Polling quando uma aplicação fica periodicamente realizando requisições para verificar se há novos dados É frequente o uso do websocket em aplicações de chat pois a conexão é mantida aberta e todos conectados recebem a informação assim que qualquer cliente conectado enviála 33Desenvolvimento de software Eagle Pesador A aplicação Eagle Pesador foi criada utilizandose o NET 6 versão mais atual do NET A versão 6 já foi oficialmente lançada porém nem todas as bibliotecas possuem suporte no momento por isso sua compatibilidade não é tão alta mas há diversas melhorias de segurança e performance e as bibliotecas que serão necessárias já estão disponíveis A estrutura base da aplicação é a de uma API Rest estrutura que disponibiliza endereços para chamada que por sua vez realizarão algum tarefa e dar um retorno Ela terá duas tarefas principais receber o pedido de um cliente por leituras de pesagem Este pedido irá conter o endereço ip da máquina executando o PESONET que controla a balança de interesse e o número da porta a ser usada para comunicação Se ainda não houver iniciará uma thread que irá realizar a leitura e envio dos dados continuamente a todos os clientes conectados assim como gerenciar a conexão com os clientes e balanças sendo lidas Para garantir que seria possível ler e interpretar esses dados extraídos do PESONET realizouse uma conexão com o mesmo utilizando o comando TELNET pelo próprio windows As estabeler este nível mais básico de comunicação foi possível ver o texto que é enviado pelo PESONET A documentação que descreve essa comunição foi encontrada no site da fabricante O fomato chamase WT21 e possui a composição apresentada na figura a seguir Figura 13 Formato de dados WT21 Fonte Manual software PESONET Segundo o manual cada X é um byte que representa o status da pesagem e pode ter os valores ST que significa Peso estável US que significa Peso instável e OL indicando Sobre carga Cada Y é um byte e possui valores GS para Peso bruto NT para Peso líquido TR para Tara e PT para Prétara Cada P é um byte utilizado para indicar o peso sendo o primeiro byte um sinal positivo ou negativo e o restante compondo os dígitos considerando que um destes caracteres pode ser um ponto para indicar separador decimal Os dois bytes U representam a unidade em kg ou g e por fim temos os caracteres CR carriage return e LF line feed que são comumente usados juntos para representar o fim de uma linha de texto Um exemplo de leitura possível seria por exemplo STGS005065kg Essa leitura pode ser interpretada como um estável peso bruto de 5065 kg Como nem sempre será de interesse ter uma leitura contínua também foi criada uma chamada que retorna apenas uma pesagem Para aumentar a chance de se obter uma leitura verdadeira são realizadas dez capturas de pesagem e verificase se há estabilidade se houver retorna o valor pesado caso contrário informa que não foi possível obter um peso estável Para tornar a solução mais genérica e portanto mais reutilizável no futuro foi criada uma classe chamada CommonWeighing Todos os dados retornados por esta aplicação vão seguir o formato dessa classe que contém três campos Um indica se a pesagem obtida era estável outro o valor e por último a unidade A maior parte do trabalho da aplicação é realizada em uma única thread mas os dados envolvidos precisam poder ser acessados durante a execução Para poder fazer isso de forma segura e evitar os problemas que surgem com a execução paralela de código os objetos que guardam as informações dos clientes conectados e das balanças que acessam são do tipo ConcurrentDictionary este tipo é nativo do NET e isenta o desenvolvedor de ter que se preocupar com o paralelismo lidando com a situação de forma automática A fim de minimizar o tempo de desconexão com as balanças sempre que houver erro na comunicação com alguma delas uma tentativa de reconexão será realizada enquanto o cliente estiver conectado Quando um cliente desconectar os objetos responsáveis pela sua conexão serão descartados para liberar a memória utilizada Também será verificado se ainda resta algum outro cliente interessado na mesma balança e em caso negativo os objetos referentes a esta balança também serão descartados Se após isso não houver mais nenhuma balança na lista de comunicação a thread e todos os seus objetos serão descartados até que uma nova solicitação seja feita Em todos os pontos da aplicação estão presentes chamadas para uma função que irá salvar uma mensagem em um arquivo de texto contendo informações sobre a execução da aplicação como o trecho de código sendo executado no momento e os dados envolvidos na operação Alterações na Eagle API Para esta customização foi necessário realizar algumas alterações na Eagle API Era preciso dar a ela a capacidade de lidar com os dados de pesagem em adição a todos os outros Foram adicionados quatro novos endereços de chamadas na aplicação Um destes endereços serve para alternar o funcionamento de pesagem automática entre ligado e desligado outro server exclusivamente para extrair a informação a respeito desse estado O terceiro serve para solicitar a finalização do processo de pesagem e o quarto para forçar a finalização do mesmo independente de alguma situação anômala O estado da automação da aplicação fica salvo dentro do arquivo de configuração da mesma chamado appSettingsjson que é o padrão Assim ele não mudará caso a aplicação venha a ser reiniciada ou caso o próprio servidor que a executa reinicie Algumas alterações tiveram que ser feitas na maneira que a aplicação carrega o arquivo de configuração para que a informação sempre esteja atualizada no código dinamicamente As chamadas para finalização de pesagem esperam o envio dos dados de OCR e pesagem para correlacionar com o evento salvo Caso este evento não seja encontrado no banco de dados ou não tenha sido enviado os dados da pesagem um erro será retornada informando a stiuação A principal diferença da finalização normal para a forçada é que a forçada não irá checar se o peso estava estável ou se já havia um registro de pesagem anterior Por fim foi adicionado um método para lidar com a pesagem automática quando a mesma estiver habilitada Ele será chamada após a aplicação receber dados válidos de OCR a partir deste momento a aplicação começará a monitorar as pesagens até que ela se estabilize e encerrar o processo de forma autônoma Alterações na Eagle OCR Matcher Esta aplicação que faz interface com o usuário é onde todas as mudanças se tornam visíveis A página tornase diferente pela adição de três novos botões e uma caixa na parte superior Fonte Autor Fonte Autor Figura 14 OCR Matcher antes do ínicio do processo Fonte Autor Quando o veículo for entrar no recinto o motorista primeiro terá que se indentificar apresentando um cartão ou digital em uma leitora ControlID IDAccess O evento do acesso dele irá após ser salvo chegar ao OCR Matcher então a mensagem de status da aplicação irá mudar para Aguardando OCR conforme figura a seguir Figura 15 OCR Matcher aguardando dados de OCR Fonte Autor Após uma válida identificação o sistema irá aguardar pelos dados do veículo que serão recebidos de forma automática caso não tenha falha no processo Neste posto há três cenários comuns que podem ocorrer o veículo possuir autorização e o processo seguir normalmente o veículo possuir uma autorização expirada e não poder entrar no recinto ou ainda o veículo não ter autorização alguma seja por falta de cadastro ou por identificação incorreta da placa Estes casos podem ser vistos nas figuras a seguir Figura 16 OCR Matcher aguardando pesagem Fonte Autor Figura 17 OCR Matcher veículo com autorização expirada Fonte Autor Figura 18 OCR Matcher veículo sem autorização Fonte Autor Para os casos das figuras 17 e 18 se a causa for uma leitura incorreta por parte do sistema de OCR o botão Manual deve ser utilizado para que a correta placa seja buscada e o veículo identificado conforme figuras a seguir Figura 19 OCR Matcher seleção manual do veículo Fonte Autor Figura 20 OCR Matcher justificativa para seleção manual Fonte Autor Após isso a aplicação estará no mesmo estado que na figura 14 aguardando a finalização da pesagem Quando a mesma for finalizada seja de forma automática ou por solicitação do operador a seguinte mensagem será apresentada Figura 21 OCR Matcher pesagem finalizada Fonte Autor Nos casos em que o veículo de fato não tiver autorização o operador deve selecionar a opção retorno e justificar o acontecimento Figura 22 OCR Matcher pesagem finalizada Fonte Autor 5 CONSIDERAÇÕES FINAIS 1 REFERÊNCIAS httpswwwgovbrantaqptbrnoticias2024setoraquaviariomovimentamais de13bidetoneladasem2023eregistrarecordehistorico httpsabephorgbrsetoraquaviarioatingerecordehistoricoaomovimentar maisde13bilhaodetoneladasem2023 2