intellect basico apostila.1.3
TRANSCRIPT
1
INTELLECT
2
O que é Visão de Máquina?
• A visão envolve aquisição e processamento da informação visual.
• Visão de Máquina é a habilidade do computador “ver”.
• Uso de um sistema de visão de máquina:– Uma ou mais câmeras, conversor analógico/digital (ADC),
processador de sinal digital (DSP), e software de visão.
3
O que é Visão de Máquina?
• Usando sua visão, as máquinas inspecionam defeitos em produtosdetectando a presença ou a ausência das peças, fazendo análisedas medidas, lendo códigos, etc.
• Os dados ou o sinal resultante, vão para um dispositivo externo talcomo um computador, um controlador de robô, um PLC, etc.
4
DVT Hardware
5
Hardware – Visão Geral
Componentes da CâmeraLuz de LED Integrada(Opcional)
Lente tipo C ou CS
Microprocessador
CCD ou CMOS
Memórias Flash e RAM
Protetor de Fiação (Opcional)
6
Comunicação
• 8 E/S digitais configuráveis– Controla até 4 estrobes independentes
• Ethernet – Modbus TCP, Modbus RTU– ASCII, XML– Ethernet/IP
• Field Bus Protocolos– Profibus and Devicenet
• Opções:– OPC Server– RS-232 comunicação serial com conversor (CON-ETS)
7
Luz Estrobo LED - DVT
• Usa um cabo com conector 4 pinos
• Conecta por 3 pinos do Break Out Board– marrom=24V+; azul=terra; preto=Signal
• Vermelha: fornece uma luz monocromática de 670nm – O CCD da câmera é mais sensível a este
comprimento de onda de luz.
• Infra-vermelho: fornece uma luz monocromáticade 850nm
• Também disponível na configuração com LED’s brancos para aplicações coloridas.
8
I/O Components
Conexões isoladas e não isoladasExpansão I/O - Ethernet
16 pontos de I/O discretos
8 entradas Ethernet
8 saídas Ethernet
8 linhas de I/O digitais configuráveis
• Montagem em trilho DIN • Montagem em trilho DIN
9
IBOB
• Contém conexões para:– Digital I/O (terminais com parafuso)
• Isolados e não isolados– Fonte de alimentação 24V – Luz Estrobo - DVT LED
• Características:– 8 pinos de I/O dedicados– 24 V+, 2 terras e 3 conexões de estrobo– LED’s de status dos I/O’s
• Montagem em trilho DIN
10
Ethernet I/O
11
Comunicação Serial
• Conversor Ethernet/Serial- part # CON – ETS
• Conexão usando a porta 2101
CON-ETS
12
SmartLink
• Simples tela de VGA ou toque quemonitora estações
• Opcional DeviceNet / ProfiBus
• Ethernet 10/100 taxa de transferência
• RS-232 usado para carregar firmware e arquivos de projetos
13
Intellect Básico
Visão Geral• Estabelecendo uma conexão• Layout da interface de usuário• Navegação de imagens• SoftSensor visão geral
14
Gerente de Rede
Endereço de IP
IP do Computador:192.168.0.12
IP da Camera :
192.168.0.242
Subnet:
255.255.255.0
Desconecta
Conexões
Gerente de conexões
15
Resposta em tempo real
Ícones de SoftSensor Ícones de Imagens Ícones de Produtos
Janela de Propriedades
Tabela de resultados
Gerente de conexões
Display de Imagens
16
Display de Imagens (SID)
• Display de imagens– As imagens são transferidas para o display somente quando
houver tempo disponível. – Seleção de imagens:
• Aprovadas/Reprovadas• Todas as imagens: Pára na reprovada
17
Ícones de Sistema
• Abrir Arquivos– Imagem Bitmap– Produto / Sistema
• Product1.dvtiprod• System.dvtisys
– Arquivo de Script• myScript.dvtiscr
– Gráfico
• Salvar sistema na memória flash
• Undo & Re-Do
• Trigger externo
• Inspect (run mode)
18
Play mode vs. Inspection mode
Play Mode“RTF”
Inspection Mode
O SID vaiatualizar?
Atualizadigital I/O ?
ON ON Yes Yes
ON OFF Yes No
OFF ON No Yes
Nota: A câmera só será independente do computador depois de tersido acionado o botão de Inspect (run mode).
19
Estrutura de Arquivo
System
Product 2
SoftSensor 2SoftSensor 3
SoftSensor 1
Product 1
SoftSensor 1
SoftSensor 2
20
Ícones de Produtos
• Criar um novo produto
• Ícones de gerenciamento de produto:– Adicionar novos produtos– Recortar (ctl+X), copiar (ctl+C) e colar (ctl+V)– Salvar sistema para memória flash– Habilita AntiBlooming– Habilita estrobos– Ajuste de tempo de exposição
21
Gerenciamento de Produtos
Usado em conjunto com a janela de parâmetros:
- Atribuindo um produtoao power-on
- Criando novo, apagando,duplicando, ou salvandoprodutos na memória flash
- Atribuindo umatranformação de coordenadas
escala global
- Escolhendo umnúmero da seleçãode ID digital
22
Ícones de Sensores
- Funções de edição padrão
recorta (ctl+X), copia (ctl+C) e cola (ctl+V)
Lista de sensores Ajustes das propriedades
23
Sensores
• Organizados por tarefa:– Preprocessamento
• Realçar a qualidade da imagem, com filtros, antes da inspeção– Posicionamento
• Localização rápida e exata das peças em todas as direções– Contagem
• Analisar Presença/Ausência, contagem e cor– Medidas
• Calcular valores matemáticos precisos e revisões estatísticas– Leitores
• Decodificar uma variedade de códigos 1D, 2D e OCR– Detecção de falha
• Aprender variações nas peças descobrir defeitos na manufatura– Scripts
• Ferramenta programável que oferece a flexibilidade final para inspeções
Específico da aplicação - ferramentas para aplicaçõesespecíficas
24
Propriedades Comuns dos Sensores
• Executar inspeção• Referência de posição
– Esta opção permite (X, Y, Theta) que dados sejam trocados entresensores
• Referência de imagem- Esta opção liga a saída de imagem de um sensor com a entrada de
outro• Modo de marcação local
- Ajusta a marcação local para o sensor• Shaped Defined in
– Usado para referenciar a um sistema de coordenadas
25
Demostração de Habilidades com Sensores
DesenharMudar formaMoverDeterminar porque um sensor falhou
26
Tabela de Resultados
• Fornece acesso rápido a:– Propriedades de aquisição de imagem– Resultado dos sensores
• Passa/Falha, tempo, causa da falha, ordem, tipo– Resultados da inspeção– Gerenciamento de comunicação
27
Parâmetros de Aquisição
Trigger Source (Fonte de disparo):
- Internal Full Speed (interno max. velocidade)
- Internal with Period (ms) (interno c/ período)
- External (externo)
Image Acquisition (Aquisição de Imagem):
- Exposure Time (tempo de exposição)
- Illumination Enable (habilita iluminação)
Image Acquisition Area (área de aquisição de imagem):
Auto Exposure (exposição automática):
Image Focus (foco da imagem):
Image Display (display de imagem):
28
Resultados da Inspeção
• Configuração:– Tempo– Tempo de saída– Resultados Passa/Falha
• Tela de Tempo para:– Aquisição de imagem– Inspeção– Inspeção de área– Tempo de inspeção total
29
Gerênciamento de Comunicação
- Configura rapidamente todas as formasde comunicação
- Ícone na tabelade resultados
30
Posicionamento de Janelas
• É fácil esconder janelas usando posicionamento :– Lado esquerdo– Lado direito– Embaixo
• Clique com o botão direito na janela para alterar as propriedades do posicionamento
31
Configurações de Sistema
• Conexões do sistema• Inspeção• Scripts de fundo• Sistemas de coordenadas• Imagens retidas• Calibração de sistema• Administração do sistema• Gráficos do sistema
• Salva sistema na memória flash
32
Network Explorer
Emulador IP Address
IP: 127.0.0.1
Subnet:
255.255.255.0
Disconecta
Conexões
Gerente de conexões
33
Emulador
• Um programa de aplicação separado do Intellect• Emula os sensores DVT• Utiliza imagens que estão salvas no PC.
34
Carregando Imagens
Atalhos:
- Teclado (ctrl+E)
- Ícone• Para rodar uma série de imagens:
– No menu do Intellect abraimages e selecione “Configure Sequence…”
– Não é preciso ter formato de nome para “All Images in Directory”
– Formato do nome para “Numbered images”
Prefixo###.bmpEx: image000.bmp
35
Navegação
• Use os botões Play e Stop para navegar nasequência de Imagens
Fonte de Disparo:
- Interno com um período de tempo (ms)
- Interno em máxima velocidade
- Externo
Avançar com as imagens:
- Última imagem
- Para trás / para frente
- Gravar
- Stop
36
Salvando Imagens
• Usando uma câmera ao vivo, podemos salvar imagens para o HD do PC.
* Escolha a opção Record Without Marking ou as marcas dos sensores serão gravadas junto com as imagens.
37
Salvando Produtos/Sistemas
• Os arquivos de Produto/Sistema podem ser salvos para a câmeraou para o PC.- Para a câmera:
- Basta clicar no ícone
- Para o PC:- No menu File selecione: “Save System as…” ou“Save Product as…”
38
Suporte e Diagnósticos
• Tenha um arquivo de produto ou sistema e uma sequência de imagens gravadas no PC
• Inicialize o Emulador• Restaure o arquivo de produto ou sistema e configure a sequência
de imagens• Diagnosticar e pesquisar defeitos na aplicação• Backup final de produto ou sistema para o PC• Carregue o produto ou sistema para a memória Flash da câmera
39
Emulador DVT
• Uma vez que configuramos a sequência de imagens no Emulador, precisamos configurar as inspeções:– Selecionar o sensor que irá usar– Ajustar parâmetros do sensor– Critérios de passa e falha do sensor– Rodar as imagens e iniciar as inspeções– Comparar os resultados obtidos no painel do resultado com o
resultado previsto. Mudar parâmetros de SoftSensor se necessário
40
Ferramentas de contagem
• Todos os sensores de contagem estão localizadosabaixo do Grupo Counting
• O Intellect combinou vários algorítimos num mesmo sensor.
• Depois de desenhar o sensor, você pode escolherqual algorítimo irá utilizar.
• Há 2 principais grupos de sensores: baseados em área e baseados em linha.
41
Contagem baseada em linha
• Sensores baseados em linha:– Contagem ao longo da linha– Contagem ao longo do arco– Contagem ao longo da poli-linha
• O algorítimo “default” desses sensores é o de Contagem de borda.
• O algorítimo mais poderoso é o de comparação de padrão.
42
Contagem Baseada em Linha
• Edge Counting– Mesmo algorítimo para Posição, Linha
– Procura transições entre pixels claros e escuros, conta e passapara a tabela de resultados.
– A função “Edge Width” ajuda a eliminar falsas bordas.
– Threshold de Gradiente ajuda com variações de iluminação.
43
Contagem Baseada em Linha
Options
• Em Opções, você escolhe o tipo de borda a ser contada e também o tipo de Threshold.
• Na página Advanced, vocêpode configurar a largura da borda a ser contada.
44
Princípios de Contagem
• Identificar uma característica específica da peça.– Bordas– Formas e padrões– Pontos brilhantes– Intensidades de cor e cinza– Tamanho
45
Definições
100• Max Intensity – pixel claro
• Min Intensity – pixel escuro
• Contrast – Diferença entre pixel claro e pixel escuro.
0
46
Lendo um Pixel Graph
100 100 50 0 0 50 100 100
47
Contagem Baseada em Linha
• O método de contagem de bordasencontrou 29 bordas.
• Podemos ajustar a largura de borda para encontrar somente o “1”ou encontrar somente as marcas.
48
Contagem Baseada em Linha
• Pattern Counting– Esta opção trabalha aprendendo um padrão dos pixels definidos
pelo usuário e procura então, ao longo do trajeto, porocorrências do padrão aprendido.
– Pattern Counting é insensível a ruídos e a mudanças de iluminação.
49
Contagem Baseada em Linha
• Pattern Match- Um gráfico da contagem é criado para ajudar o usuário a identificar se o teste padrão foi reconhecido ou não .
50
Contagem Baseada em Linha
• Pattern Find
– Para evitar encontrar falsos padrões, é possível definir, em pixel, uma distância mínima entre regiões.
– Minimum Match Score• Essa contagem é usada para uma seleção final de padrão.
51
Contagem baseada em linha
• Aprendendo uma única marca, com a ferramenta de contagem de padrão, nósencontramos 10 marcas.
52
Vantagens e Desvantagens
Pattern FindVantagem
- Filtros de ruídosmuito bons- Tolera mudanças nailuminação
Desvantagem- Maior tempo de processamento.
Edge FindVantagem
- Muito rápido- Threshold de gradiente
Desvantagem- Muito dependentedo Threshold para eliminar ruídos
Feature FindVantagem
- Capaz de excluir as bordas que nãodevem ser contadas- Threshold de gradiente
Desvantagem- Tem que determinaro tamannho da característica a ser contada.
53
Contagem baseada em área
• Blob – Conta blobs de pixels com intensidades semelhantes
• Object Locate– Conta objetos de geometria semelhante
• Pattern Find– Aprende padrões distintos para contar.
54
Contagem em Área Object Locate
• Object Locate
– Algorítimo Geométrico.
– O algorítimo é usado para funções múltiplas de posição e contagem.
– Capacidade de Auto-Aprendizagem
55
Object Locate – Count In Area
Object Locate
– Não binariza a imagem
– Threshold de Gradiente para extrair pontos da borda
– As características são extraídas dos pontos da borda
– Características constituem-se de pontos de cantos, de curvas, etc.
56
Parâmetros Model Object
Extração e Aprendizado• Segmentos são extraídos e
características identificadas.
• Nível de importânciaatribuído (Strength)
• Possível ajustar tamanho(largura) e min. gradiente
• Possível gerenciarsegmentos individualmente
• Ajuste de offset do Pick Point
57
Algorítimo Object Locate
• Na imagem corrente, os segmentos mais importantes sãolocalizados, baseados na porcentagem de Matching Features configurado. Vários candidatos podem ser encontrados.
• Esses candidatos são comparados com o modelo aprendidobaseado na porcentagem de Minimum Match Score configurado e a distância de pixels para pontos da borda.
58
Parâmetros de Localização do Objeto
• A escala pode ser ajustadapara melhor robustez
• Limitar a translação e a rotação pode reduzir o tempo de processamento.
59
E se não Trabalhar?
• Analisar a Imagem– Melhorar a iluminação– Otimizar definição e contraste de bordas
• Verificar o segmento aprendido (Model Object)– Identificar contornos interrompidos e tentar abaixar o Min.
Gradiente.– Deletar todos os segmentos menos importantes / ruidosos.– Ajustar os parâmetros.
60
E se não Trabalhar?
Ajuste dos Parâmetros
• Reduza / Aumente Matching Features %
• Reduza / Aumente Pixel Distance se a peça mudar de imagem para imagem.
• Reduza / Aumente Minimum Match Score % (está deve ser a ultimaopção).
61
Contagem em Área Blobs
• Blobs
– Procura pixels juntos, de intensidades similares, para agrupá-los.
– Fornece a contagem e os dados de posição de cada blob encontrado.
Nota: Blob Selector foi combinado com Generator.
62
Contagem em Área Blobs
• Blobs Options– Aumentar o parâmetro Match Score ajuda a eliminar contagens
falsas.
– Três métodos disponíveis para cálculo de ângulo• 0 graus está as 3 horas• 360 (default) & 180 graus
63
Parâmetros Preprocessing
• Blob PreProcessing– Usa sempre threshold baseado em intensidade para produzir a
imagem binarizada.
– Até 5 operações de morfologia.• Dilation – Dilata os pixels• Erosion – Erode os pixels• Open – Combinação de Erosion com Dilation• Close – Combinação de Dilation com Erosion
64
Parâmetros Generation
• Blob Generation– Blob Color
• Light ou Dark (Claro ou Escuro)– Blob Size Limits: usado para eliminar blobs não desejados.
• Min e Max (Mínimo e Máximo)– Tipo de saída
• Posição, área, perímetro, etc.
65
Blob Generator
• As sombras podem afetar a imagem.• Código de cores
– Preto: blob ignorado ou na borda– Cinza claro: blobs válidos– Cinza escuro: blobs ignorados
por parâmetros (ex. area)
66
Parâmetros Selection
• A aba de Informação do Blob indica valores para comparações.– A marcação de imagem
mostra o número de cadablob.
• Automatically Score Blobs– Desabilitada é possível
configurar valores de Min. e Máx.
67
Contando Pixels (PixelCounting)
• Quando usado com uma câmeramonocromática o sensor de PixelCount conta a intensidade do pixel.
• Ajuste manual dos limites mínimo e máximo da intensidade desejada.
• Usado principalmente para análise de presença e ausência.
68
Entenda um Histograma
• Mostra a distribuição da intensidadedo pixel.
69
Sensores de Posicionamento
• Position along Line– Line (Translação)– Arc (Rotação)
• Line Fit (Translação e Rotação)– Line, Minimum, Maximum
• Circle Fit (Translação)
• Area Positioning (Translação e Rotação)– Object, Pattern, Blob
70
Posicionamento
• Na prática, todas as aplicações precisam de correção de posicionamento da peça.
• Ferramentas de posicionamento podem referenciar outraferramenta para localizar as áreas de inspeção.
• Pode-se fazer uma “corrente” de sensores para referenciar umaferramenta nas direções X, Y e rotação.
71
Exemplo
Horizontal Position, Line SoftSensor
Vertical Position, Line SoftSensor
Inspection SoftSensors
72
Ferramentas de Posicionamento
• Os algorítimos usados para posicionamentotambém estão no grupo de contagem .
73
Sensores de Posicionamento - Linha
• Corrige movimentos em 1 direção.
• Encontra a 1ª borda (a partir da origem da ferramenta) e determina a porcentagem de offset
• Procura uma transição entre pixels claros e escuros
• Limitado pelo tamanho (quanto maior o desenho, maior pode ser o movimento)
• Retorna à tabela de resultados o valor de porcentagem de offsetcom relação ao tamanho da ferramenta.
74
Posição Baseada em Linha
Options• Edge Type to Locate
- Seleciona o tipo de borda a ser encontrada.
• Na página Advanced vocêpode configurar a larguramínima da borda a ser encontrada.
75
SoftSensor Arc : Exemplo
Horizontal Position Line
SoftSensorVertical
Position Line SoftSensor
Rotational SoftSensor
Inspection SoftSensors
76
SoftSensor Arc : Exemplo
Position Circle SoftSensor
Rotation Position Arc SoftSensor
Inspection SoftSensors
77
Fitting Positioning
• Fitting SoftSensors– Line Fit (linha)– Circle Fit (circulo)
• Cada linha de scan do SoftSensor faz a varreduraem uma área para as bordas
• Sensores de linha ou círculo encontram bordas.• Melhora a exatidão. • Algorítimo rápido e exato.
78
Line Fit: Exemplo
Line Fit SoftSensor
Position, Line SoftSensor
Inspection SoftSensors
79
Line Fit
• Posiciona rotação e translação• Precisa de uma borda reta para rotação• Pode requerer um outro sensor para posicionar
exatamente a translação em 2D• Faz a varredura de uma área que procura uma borda
reta. O tamanho do SoftSensor é muito importante
Certo Errado
80
SoftSensor LineFit
• Pode traçar uma linha nospontos de borda encontrados
• Pode encontrar …– Minimum edge point– Maximum edge point– Median EdgePoint
81
Circle Fit
• Usa bordas para encontrar um círculo com um ponto de centro que pode ser usadocomo referência
• Filtragem avançada
• Melhor medida de Subpixel.
82
Aumentando a Exatidão
• Aumente o número de pontos de borda encontrados:– Aumentando o ajuste de densidade– Ajustando o raio do círculo interno para zero– Aumentando o tamanho do sensor Line Fit.
83
Posição baseada em área
• Area Positioning tem 3 algorítimos diferentes– Object Locate – Pattern Match– Blob (Default)
84
Posição baseada em área
• Como desenhar o sensor de Area Positioning– Desenhe um quadro em torno do objeto ou
característica que quer encontrar.– Um quadro grande é desenhado
automaticamente. Esse quadro é a área de busca.
– Você pode editar os quadros e reaprender o objeto se necessário.
– O algorítimo “default” é o Blob, veremos a seguir.
85
Sensor de Posição Blob
• O Algorítimo é novo– A imagem é binarizada.– Pixels de intensidades similares são agrupados formando blob.– O resultado será posições de X, Y e rotação do blob.– Novo no Intellect
• Selector e Generator combinados• As características do Blob são aprendidas automaticamente.
Isto ajuda automatizar o processo de seleção.
86
Blob Position – Options
• Minimum Match Score– Esta contagem é usada para
uma comparação final da seleção do Blob.
• Opção de entrada de Digital Relearn. Usada para reaprendercaracterísticas do blob automáticamente.
Options
87
Blob Position - PreProcessing
• Aqui você pode escolher o tipode Threshold.
• Morphology– Há mais possibilidades de
processar os blobs.
– A largura e altura podem ser ajustadas separadamente se necessário.
PreProcessing
88
Blob Position - PreProcessing
• Erode: encolhe os blobs. Útil para separar blobs grudados.
89
Blob Position - PreProcessing
• Dilate: expande blobs. Útil para eliminar imperfeições em blobs e conectar caracteres pontilhados
90
Blob Position - PreProcessing
• Open (Erode seguido de Dilate): encolhe e expande blobs. Útil para eliminar ruído de fundo
91
Blob Position - PreProcessing
• Close (Dilate seguido de Erode): expande e encolhe blobs. Elimina furos dentro dos blobs sem mudar o tamanho dos blobs.
92
Blob Position - Generator
• Sombras podem afetar a imagem• Código de Cores
– Preto: blobs ignorados e no limiteda borda.
– Cinza claro: blobs válidos– Cinza Escuro: blobs ignorados
por parâmetros. (ex. area)
93
Blob Position - Selection
Selection• Tabela de Informação
– A tabela na parte de baixo do menu indica todas as informações dos blobs encontrados.
– Os Blobs com um asteriscosão os blobs que se encontram dentro das exigências de seleção.
94
Blob Position - Selection
• Para selecionar um blob– Clique em Show All Blobs
– Clique no blob desejado natabela.
– Clique no botão Learn.
– Automaticamente as características do blob serãoatualizadas na área de critérios de seleção.
Selection
– Você pode manualmente, mudar os critérios de seleção.
95
Posicionamento - Object Locate
• Localizador de padrão geométrico– Variação de iluminação não é crítico.
– Fácil de configurar e editar.
– Pode trabalhar com peças complexas.
– Problemas com Reflexão.
– Variação de cores.
96
Posicionamento - Object Locate
• Utiliza– Translação– Rotação– Escala
• Usando características estáveis e originais, é mais confiável.
97
Object Locate – Model Object
• Segmentos são extraídos e características aprendidas
• Atribuição de nível de importância(Strength)
• Pode ajustar min. size and min. gradient
• Controle individual de cada segmento
• Possível configurar offset do pontode centro do objeto
Model Object
98
Object Locate – Options
Options
• Minimum Match Score % para comparação final.
• Min Distance between Regions usado para eliminar falsoscandidatos.
• 36 sinais de entrada de Digital Relearn.
99
Object Locate – Parameters
Parameters• Ajuste de escala
• Limitar translação e rotaçãopode diminuir tempo de processamento.
• Aumentar Matching Features pode reduzir o número de objetos encontrados
100
E se não Trabalhar?
• Analise a imagem– Melhore a iluminação– Otimize a definição e contraste das bordas
• Verifique os segmentos aprendidos– Identifique os contornos interrompidos e tente abaixar o Min.
Gradient e/ou deletar todos os segmentos semimportância/ruidoso.
• Reduza/Aumente o Matching Features %
• Reduza/Aumente o Pixel Distance se a geometria das peças mudarde imagem para imagem
• Reduza/Aumente o Minimum Match Score % (última opção)
101
Posicionamento - Pattern Matching
• O algorítimo é completamente novo.– Baseado na correlação da escala de cinza.– Threshold de Gradiente para encontrar pontos de borda.– O padrão é construído a partir dos pontos da borda. – Usado para a parte que gira muito pouco e a escala não muda
muito.
102
Posicionamento - Pattern Matching
• Compara o padrão original com a imagem inspecionada.
• Ajustar o Minimum Match Score para encontrar a peçaem diferentes condições de iluminação ou rotação.
103
Posição - Considerações
• Saber as exigências da aplicação– Como a peça se movimenta?
• Translação (X,Y)• Rotação (ângulo)• As duas
– Como a peça foi iluminada?• Front Lighting, Backlighting
– Como a peça é apresentada?• Uma peça de cada vez• Várias peças
– Quanto tempo você tem para a inspeção?– Como a informação de posição vai ser usada?
• Posicionando outros sensores• Posição Pura• Robô
104
Ferramentas de Medida
• Sensores que fornecem uma saída quantitativa (raio, distância, posição, etc.)
105
Precisão e Resolução
Com que precisão que posso medir minha peça?Depende de:
- Tamanho de peça- Resolução da câmera- Iluminação- Lente
106
Precisão e Resolução
Obter uma imagem boa para medidas requer:- Nenhuma saturação- Não usar AntiBlooming- Se você quiser resultados altamente repetitíveis, usar o Thresshold de Gradiente e iluminação tipo Backlight.- O Backlight fornece bordas definidas.- Garantir um bom foco nas bordas- Utilizar lentes de baixa distorção.
107
Sensores de Medida
• Requer bordas definidas para alta repetibilidade.
108
Efeito do Threshold de Intensidade
Se um gráfico de pixel (threshold baseadointensidade) for usadopara medir as peças, pode haver umavariação grande no resultado da medida
100 100 50 0 0
Intensidade X X
Distância
X X
Mudança nos níveisdo Threshold
Variação causada poruma mudançapequena no threshold
109
Sensores de Medida
• Novo tipo de threshold: Gradient• Gradient: valor da mudançana intensidade entre pixels consecutivos
110
Precisão e Resolução
• Como funciona a computação do Sub Pixel?
100 100 50 0 0
X X
XX
Taxa de mudança Os sistemas
monocromáticos da DVT podem calcularcentésimo de um Pixel mas repetir o décimode um Pixel
Distância
111
Sensores de Medida
• Os sensores utilizados para medidas estãolocalizados nos boxes de Measurement e Positionig– Os sensores do grupo de medida são usados para
medir distância. – Toda a funcionalidade dos sensores de
matemática estão em “Measure with Points and Lines” . (Ex. Ponto médio, Midline, Ângulo)
112
Measure Along Line
• Calcula a distância entre dois pontos externos de borda encontrados ao longo da linha.
Distance = 27.227 pixels
113
Measure in Area
• Calcula a distância entre duas linhas que se formamde acordo com os pontos da borda encontrada.
• Também…– Min Thickness (Minima espessura)– Max Thickness (Máxima espessura)– Median Thickness (Espessura mediana)– Average Thickness (Espessura média)
114
Parâmetros da Varredura de Linha
• Edge Width permite que o usuário defina o número de pixels em uma borda
115
Outros Parâmetros da Varredura de Linha
• 1st Edge Found• Use Best Edge procura a
borda com o gradiente maiselevado acima do threshold.
• All Edges encontra a melhorlinha usando todas as bordas na área
116
Max Interations
• Ajustando os pontosinterações máximas, é dado um peso baseado naproximidade ao melhor fit (linha) apto.
• As interações subsequentessão basedas nos pontos de maior peso.
• O exemplo compara a melhor linha apta (linhaamarela) e a mesma linhaapós 4 iterações.
117
Outlier Distance
• Etapa adicional além das interações.
• Ignora todos os pontos que estiverem “x” pixels distantes da melhor linha.
• Gera um melhor “acabamento” da melhor linha.
• O exemplo compara osmelhores pontos, rejeitandoos pontos afastados a maisde 5 pixels.
118
Measure in Circle
• Encontra bordas de dentro para fora e vice-versa.
• Forma um círculo com pontos internose externos da borda.
• Também..– Distance Between Centers
(Concentricidade)– Radius (Raio)– Average Thickness (Espessura
Média)– Min Thickness (Espessura
Minima)– Max Thickness (Espessura
Máxima)– Median Thickness (Espessura
Mediana)
119
Measure with Point and Lines
• Calcula distância e angulo entre linhas e pontos.
• Calcula/cria novos pontos e linhas
120
Statistics
• Permite ao usuário verificar o valor médio de várias inspeções.
121
Melhorando Resultados da Medida
• Hardware• Configuração de Sistema• Iluminação• Lente• Ambiente• Estatística das amostragens
122
Câmera - Hardware
• Baixa Resolução vs. Alta Resolução• Monocromática vs. Colorida
– Monocromática melhor• CCD vs. CMOS
– CCD melhor• Configuração de Imagem
– Desligar antiblooming– Não saturar imagem– Aumentar taxa de digitalização para 30ms
123
Configuração de Sistema
• Peça sempre na mesma posição– Medida da peça é feita sempre no mesmo ponto da lente.
• Lente de grande distância focal / lentes especiais– Lente sem distorção
• Luz mais longe da peça– Raios mais paralelos
124
Precisão e Resolução
Com qual precisão posso medir minha peça?Depende de:
- Tamanho da Peça- Resolução da Câmera- Iluminação- Lente- Ambiente
125
Precisão e Resolução
126
Medindo a Lua
127
Medindo a Lua
• Com qual precisão posso medir a Lua?– Diâmetro da Lua: 3476 Km– Diâmetro em pixel da Lua(640 x 480): 409.80 Pixels– …cada pixel representa 8.5 Km (distance / pixel)
• Se a Lua for iluminada com Backlight, usando cálculo de subpixel, mediríamos com precisão de 850 metros.
128
Medindo um Cabelo
129
Medindo um Cabelo
• Com qual precisão posso medir um cabelo humano?– Largura do cabelo: 0.05mm (50 µm)– Largura do cabelo em pixels (640 x 480 Camera): 351 Pixels– …. cada pixel representa 0.14 µm (Distância por Pixels)
• Backlight com resolução de 1/10 de pixel – Capaz de medir 0.014 µm (0.000014 mm)!
130
Escala
Coordinate SystemsCaixa de Propriedades
Transformation MethodSelect - none
Scaling MethodSoftSensor based– O usuário escolhe o sensor de medida– Unidades para Escala
Manual– O usuário entra com o fator de conversão– Unidades para escala
20 pixels = 1mm
Portanto:
1 pixel = .0500mm
131
Comunicações
132
O que Vamos Aprender
Como configurar:• I/O físico e remoto
– Seleção de Produtos via I/O Digital• Conexões TCP/IP • DataLink • Registros
– Linhas de comandos por terminal do sistema• Modbus Master• Ethernet terminal controller
133
Digital I/O
Conector RJ-45 com 10 pinos
8 linhas de I/O configuráveis
Breakout BoardSimplifica conexões e fornece indicadores de LED
IN-Sinking (NPN)Sink max of 1.5 mA
OUT-Sourcing (PNP)Source max of 50 mA
134
Digital I/O - Inputs
Inputs- Trigger - 4 Digital ReLearn- Product Select - Event Counter- Results Acknowledgement - 15 Product selection for - Disable Run Mode inspection (product select/ID bits)- External Trigger Mode - 32 Inputs for scripts
135
Digital I/O - Outputs
Output- Trigger Ack - Busy- Select Pass - Acquiring- Pass - Inspecting - Fail - Inspection Toggle- Resource Conflict - Wrong Code- Run Mode - 3 Strobe- Trigger Mode - 16 User Outputs
- 16 Script Outputs
136
User Outputs
Abrir clicando no ícone da tabela do resultado
137
Seleção de ProdutosConfiguração em 2 partes
1. Atribuir Digital ID na tela da gerência de produto.
2. Atribuir bits de seleção na tela de configuração de I/O
138
Como a Seleção de Produto Trabalha
Digital ID Bit 1 Bit 0
Product 1 1 0 1Product 2 2 1 0Product 3 3 1 1Product 4 4 ? ?
139
Amostra de Conf. de I/O
140
Expansão de I/O
141
Câmeras Coloridas
• Legend 535C, 545C and 554C– O CCD colorido é usado para
diferenciar cores
142
Uso do Sistema Colorido
• Presença e Ausência de peça• Identificação de peça• Detecção de falhas
• Não recomendado para medidas
143
535C – Demonstração de Aplicação
Verificar a presença de chocolate.
144
Uso do Sensor Colorido
• Pixel Counting– Mais de 95% das aplicações
• Color Monitoring – Localizado no grupo Flaw Detection– Menos de 5% das aplicações– Iluminação é um ponto muito crítico
145
Passos da Aplicação Colorida
• Calibração de branco (White Balance)• Aprender cores • Verificar cor aprendida• Abrir ou fechar parâmetros da cor como necessário• Configurar critério de PASS/FAIL.
146
Balancear a Cor do Sistema:
White Balance
• Deixa as cores mais reais• Específico para cada tipo de luz• Deve ser utilizado a cada mudança de iluminação• Dicas:
– Use um fundo branco– Certifique-se que o centro da imagem não está saturado.
147
Aprendendo Cores
• Dois Métodos para aprender cores– Single Color Learning
• Pode aprender várias cores, porém uma de cada vez.
– Multi-Color Learning • Aprende muitas cores diferentes de uma vez. Somente UMA
cor aparece na lista de cores.• Pixels podem ser adicionados ou removidos• As cores adicionais podem ser adicionadas na lista de cores.
148
Cubo de Cor RGB
149
Alterando Parâmetros de Cor
• São 3 Alternativas– Mudar o fator Sigma
• O Aumento do fator Sigma traz outrascores mais para perto da cor instruída, o que geralmente aumenta o número de píxel contados.
– Habilitar linha de Matte• Inclui as áreas que são da mesma cor apenas mais
brilhante ou mais escura. Os valores de RBG mudam namesma proporção.
– Habilitar a linha de Highlight• Inclui as áreas que estão perto da saturação ou das
reflexões specular.
150
Alterando Parâmetros de Cor
151
Matte and Highlight
• Valores RGB • A - 30,20,15 darker matte (matte mais escuro)• 60,40,30 cor aprendida• B - 90,60,45 brighter matte (matte mais claro)• C - 100,80,60 saturation matte (matte saturado)• D - 80,60,65 highlight line (linha de highligth)• E - 30, 40, 60 fora das linhas de highlight ou matte.
152
Variação de Cor no Espaço RGB
153
Histograma da Cor de uma Laranja
154
Objeto Laranja
Matte e Highlight Habilitados
155
Objeto Laranja
com fator Sigma alto
156
Usando o Pixel Counting
Single Color Learning
• Desenhe o sensor somente na cor que queraprender.
• Observe a marcação da imagem para ver se a cor foi corretamente aprendida, ajuste osparâmetros
157
Multi Color Learning
• Add – esta função acrescenta cores adicionais a cor aprendida.
• Remove – esta função subtrai cores longe da cor instruída.
• Threshold – este ajuste determina o número dos pixels requeridospara uma nova detecção da cor.
158
Usando o Pixel Counting
• Ligar o Pixel Counting a um filtro do PreProcessing
• Você pode agora ligar outrossensores ao filtro para utilizar a coraprendida.
159
Ligando Informação de Cor
160
Opções de Aprendizagem Melhoradas
• As características avançadas de métodos de aprendizagem da corpermitem que os usuários executem operações múltiplas em digital relearn assim como manualmente
• Há agora 4 entradas de Digital Relearn dedicadas
• Agora podem também ser usadas 32 entradas de usuário (Input-User)
161
Novas Características de Digital Relearn
Training
Learn One & Append - Aprende uma nova cor e adiciona a lista
Remove All & Learn One – remove todas as cores da lista e aprende uma nova cor
Learn Merged & Append – Aprende cores múltiplas de uma vez e as funde em umaúnica cor: a cor nova é adicionada à lista
Remove All & Learn Merged – Remove todas as cores na lista e aprende uma Multi cor nova
Multiple Add – Adiciona pixels em Multicores
Multiple Remove – Remove pixels similaresda cor fundida
162
Pixel Counting - Conclusão
• Princípios da cor– Lembrar de balancear seu sistema com o white balance. – Os dados da cor podem ser movidos entre sensores– Pixel Counting SoftSensor pode ser usado:
• Em sistemas monocromáticos• Coloridos
163
Color Monitoring
164
Color Monitoring
• Usado para verificação de cor– Quando são próximas à cor aprendida. – No controle do processo de pintura
• Usado para identificação de cor– Que cor está mais perto– Se está sendo usada a peça correta
• NOTA: Color Monitoring usa 16.7 milhões de cores enquanto o Pixel Counting (Color SoftSensor) usa aproximadamente 65000 cores.
165
Color Monitoring
• Retorna as distâncias nos sentidos X, Y e Z bem como o valor absoluto.
166
Color Monitoring - Exemplo
167
Flaw Detection
168
O que Iremos Aprender
• Sensor Defect Detection • Live Image vs. Model Image• Imagem Residual – O que é isto?• Mask – Como afeta a imagem residual?• Desenhando e posicionando o sensor• Explanação dos parâmetros
169
Defect Detection
Peça Boa“Model Image”
Peças com defeito“ Live Image“
170
Defect Detection
Erros encontrados“Residual Image”Peças defeituosas
“Live Image”
171
Defect Detection
• Aprende um modelo para comparar com a imagem ao vivo (Live Image)
• Live Image – Model Image = Diferença
• Diferença – Mask = Residual Image – Mask Image é computado encontrando os valores do
gradiente ao aprender a imagem modelo
172
Defect Detection
• O sensor pode ser girado para seguir o movimento da peça
• Operações de processamento disponíveis: Erode, Dilate, Open and Close
• Os erros são agrupados como blobs e os erros pequenos podemser ignorados
173
Defect Detection
174
Defect Detection
• A habilidade de aprender sobre diversas imagens ajustando as variações
• Pass/Fail– Maximum Number of Defects (Número max. de defeitos)– Total Defect Area in pixels (Área total dos defeitos em pixels)
• O sensor tem a habilidade de carregar e conservar imagens do modelo e da máscara.– Útil quando se tem vários produtos.
• Requer bom posicionamento da peça– Usa Sub-pixel, Threshold de Gradiente
175
Conclusão
• Requer modelo para ser aprendido• Requer que a peça esteja posicionada para
comparar modelo com imagem ao vivo• Ferramenta Defect Detection pode ser rotacionada• Os modelos aprendido são salvos no arquivo de
produto• Defeitos são difíceis de detectar em fundos
texturizados
176
Visualização de Imagens
Metodos possíveis:• Web Server• ActiveX Controls• CTC Parker
177
Scripts
178
Sumário
• Descrição: – Sintaxe Script Básica– Script Edição– Tipos de dados e registradores– Debug Window– Funções matemáticas– SoftSensor saidas
• Nível –Intermediário• Pré-requisitos
– Para algumas funções avançadas de script ou programaçãonecessário maior conhecimento ( recomendado)
179
O que Você Aprenderá
• Display informando na tabela de resultado.• Dados numéricos, declarações e atribuições.• Registros com funções de leitura/escrito.• Comandos básicos de Terminal.• O uso da Função Result() para pass/fail na
inspeção.• Técnicas para eliminar erros comuns do
Script.
180
Scripts
• Programação em sistema e ferramenta criada no produto
• Flexibilidade de monitoração de sensor dados/resultado, I/O, etc.
• Uso de cálculos matemáticos
• Pass/Fail ou executar apenas o código
• Dados resultantes no display
181
Background vs. Foreground Scripts
( Scripts “Plano de fundo” vs. “Primeiro plano”)
• Foreground Scripts (ou Script SoftSensor)– Funciona cada vez que uma inspeção ocorre– Comporta como qualquer outra ferramenta (pode ter condições de
pass ou fail)– São parte do produto (como qualquer outro SoftSensor)
• Background Scripts– Independente das inspeções ( trabalha por “trás” do produto)– Não trabalha com o produto criado (nível de sistema)– Pode ser colocado em Run para trabalho continuo no background– Tem menos prioridade do que as inspeções, sincronismo menos
confiável
182
Organização
• System with scripts: intercommunication
text
InspectionProduct 1
InspectionProduct 2
SoftSensor 1
SoftSensor 2
SoftSensor 3
SoftSensor 2SoftSensor 1
ForegroundScript 2
ForegroundScript 1
ForegroundScript 1
BackgroundScripts
System Memory(DVT Registers)
183
Interface Script
class Sensor1{
public void inspect(){
//Double click a parameter, function or keyword from the right to insert your code here.
}}
184
Dados Numéricos
Visão geral: - Discutir sintaxe correta para programar, estrutura
que mostra os tipos de variáveis, operações, indicações de atribuições, declarações e gerenciador de registros.
185
Dados Numéricos
• O que é uma variável?– Um nome para os valores armazenados na memória.– Usar as variáveis onde os valores podem mudar (i.e.,
equações, I/O)– Use variáveis com a maior clareza, fácil de se
entender– O tipo de dado deve ser primeiramente declarado.
• Integer, float, double, character, string…
186
Declarações
Sempre o primeiro passo é…[data type declaration] [variable name];
int NumBordas;float Distância;String Nomes;
187
Dados Numéricos
Qual a diferença entre os tipos de dados?
188
Atribuições das Declarações
[data type] [variable name] = [data value];
int WholeNumber = 124;float Decimal = 124.24;String myString = “Hello World”;
189
“Armadilha”
Números inteiros e divisões
What is the value of Distance?a) 2.5b) 2c) 3d) Why don’t you just tell me?
Qual o valor da distância?a) 2.5b) 2c) 3d) Porque você apenas não me
diz qual é?
190
Porque Aquele Conceito é Importante:
1) Declarar os númeroscomo variáveisfloating
2) Mude as variáveispara o tipo de dado desejado
191
Palavra Chave e Palavras Reservadas
• Palavras reservadas para uso específico do compilador– if, while, float, +, PASS, true, length, sqrt
• Não pode ser usado para outra finalidade– e.x. – variable and function names
• Elimine nomes que podem causar conflitos
• Texto em cor diferente, fácil de encontrar na tela
192
Referência para Sensores
• <Sensor_Name>.<Parameter>
• int n = Blob_gen.NumBlobs
193
Operações Básicas
• == Usado para comparação básica de dados**não use esta operação para comparar string
• <= Indica verdadeiro se argumento1 for menor ou igual aoargumento2
• < • >=• >• ! Retorna verdadeiro se argumento1 é Falso• != Não é igual a• || OR• && AND
194
Novas Atribuições para Operações
Notações breves
195
O “and” Operação &&
• Combine duas comparações usando o ‘&&’.• (Comparação_1) && (Comparação_2)
if ((distance > 0) && (distance < 100)){
Do_Something;}
else{
Do_SomethingElse;}
196
O “or” Operação ||
• Combine duas comparações usando o ‘||’.• (Comparação_1) || (Comparação_2)
if ((x == 0) || (x == 1)){
Do_Something;}
else{
Do_SomethingElse;}
197
Acesso de Registro
text
InspectionProduct 1
InspectionProduct 2
SoftSensor 1
SoftSensor 2
SoftSensor 3
SoftSensor 2
SoftSensor 1
ForegroundScript 2
ForegroundScript 1
ForegroundScript 1
BackgroundScripts
System Memory(DVT Registers)
198
Registro
• Considerado uma variável global, pode ser acessadado foreground and background scripts.
• Armazena dados independente das inspeções (ideal para contadores, etc.)
• Espaço do registro dedicado aos protocolos específicos
• Escrita e Leitura:– Byte, Short, Integer, Long, Double, Float, String data types.
199
Acesso aos Registros
• Reigistro escrita / Função de leitura– RegisterReadInteger(int RegNum);– RegisterWriteInteger(int RegNum, byte Data);
//script Aint myVar;myVar = 44;RegisterWriteInteger(125, myVar);
//script Bint dataFromA;dataFromA = RegisterReadInteger(125);
200
Lembra da Tabela de Tipo de Dados (Data Types)?CH21
Slide 200
CH21 New collum which displays the dvt registers usedConner Henry; 12/9/2003
201
Cuidado com Registro
• Não escrever uma palavra maior que o registos. O Intellect não trava estes erros!
• Manter-se a par do quantos registos um tipo do valor ocupa :
202
Sistema Via Terminal
• Linha de comando terminal (como o DOS) • Comandos básicos:
– Registro pergunta• #Rq<RegNum><Type>
– Ex. #Rq126F
– Registro set – set#Rs<RegNum><Type><Value>
– Ex. #Rs166F802.78
203
Características Gerais
• DebugPrint(“String”);– Função criada para ajudar no debugging
process– Envia argumentos string quando esta linha do
código for ativada– Existe uma janela que monitora
especificamente estas saídas
204
Exemplo
• int data;• data = RegisterReadInteger(100);
• DebugPrint(“O valor no registro 100 é: “ +RegisterRead(100));
205
Criando condições Pass & Fail
• Recordando que a ferramenta script é um SoftSensor, bem como qualquer outra no Intellect .
• Como todo SoftSensor, limites de pass e fail podem ser ajustados para ferramenta.
• Você pode ajustar sensores inativos.Qual o significado do resultado do sensor se ele não é usado no resultado composto para a inspeção?
206
• Atribuir ao Resultado um valor de 0 seria equivalente a
Result()
PASS• ie. SoftSensor.Result = 0 or “PASS”
• Atribuir ao Resultado um valor de 1 seria equivalente a Warning
• ie. SoftSensor.Result = 1 or “WARN”
• Atribuir ao resultado um valor negativo seria equivalentea FAIL
• ie. SoftSensor.Result = -1 or “FAIL”
207
Result()
• Usar números negativos permite códigos múltiplos da falha– Blob_Gen.Result = -1 (too many blobs)
– Blob_Gen.Result = -2 (not enough blobs)
208
Conclusão
• Script é uma ferramenta poderosa.
• Usar scripts pode deixar sua inspeção robusta.
• Flexível para monitorar resultados ou dados de SoftSensors .
209
Readers
210
Reader SoftSensors
• 1D line sensor
• 1D arc sensor
• 1D rectangle (searching)
• 2D rectangle
• OCR reader
211
Tópicos
• Identificação e Rastreabilidade• Métodos de Identificação• Seleção de Códigos• Verificação• Solução de leitura• DM Reader
212
Rastreabilidade
• Habilidade de armazenar dados• Específico para peças, datas, lotes• Dados são valiosos
– Controle de inventário, Prevenção, Operaçãode negócios
– Informação de Recall– A prova de erros – certificando-se que é feito
na parte correta
213
Identificação
• Reconhece parte original dos códigos– 1D Barcodes– 2D Codes– OCR
214
Métodos de Leituras
1D Codes– Leitura simples– Sem correção de erros– Leitura de grandes códigos
• 2D Codes– Códigos menores– Correção de erros no código
• Alpha Numérico (OCR)– Pelo fato de ser caractere a resposta é exatamente o que
vemos no código– Faz análise de cada caractere– Difícil leitura para outras máquinas
215
1D Codes
• UPC/EAN• Interleaved 2 of 5• USS-128• USS-39• Codabar• PharmaCode• BC412• PDF417
• RSS-14• Code 93• POSTNET• Micro PDF417• RSS
– Limited, Composite, Expanded
• Planet Code• UPC Composite
216
1D Reader – Visão Geral
• Objetivo: Desenhar a ferramenta em torno de um código, selecionar o Autodetect code, e ler o mesmo.
• Treinar o leitor para determinar o tipo de código e orientação nominal.
217
1D Reader – Treinando
Treinando:1) Emitir linhas de varredura em varios ângulos e offsets2) Cada linha de varredura busca decoficar a informação
do código3) A primeira string do código informa o tipo de código
218
Treinando
Detecção do código– Somente alguns tipos de
código de barras sãodetectados automaticamentedevido as especificações no código
219
Pixel Graph
Bom exemplo Imagem do código ruim
Usar % de constraste
220
Thresholding
221
Locais Diferenciados
• O threshold ajuda a melhorar o constraste da ferramenta com iluminações de pouca intensidade ou < 3 pixel por transição entre claro e escuro o que não é recomendado
222
Locais Diferenciados
• Cruzamento de Borda – a intensidade difere por um valor fixo de um min. ou max.
• Localização de Borda – onde a intensidade cruza o ponto médio entre adjacentes min e max.
• Níveis mais elevados de threshold evitarão ruído de bordas falsas.
223
Opções para Performance
• Line
– Smoothing – Esta opção calcula uma intensidade média para um cruzamento da borda baseado na largura do Probe Width
– Probe Width – aumenta o número das linhas de varredura usadas no cálculo analisado.
• Retângulo– Scan Density – Ajusta a intensidade das linhas de scan dentro
do retângulo– Max Rotation– Scale Variation
224
Analisando o Exemplo
Original Scan Line
Probe 1
Probe 2
Watch out for this
Analisando:- Uma linha de scan pode calcular
a média de intensidade de pixel em colunas vizinhas para reduzir o ruído
Tempo
5501mS with Width = 33mS with Width = 255mS with Width = 505307mS with Width = 7524mS with Width = 310mS with Width = 10041mS with Width = 25
57mS with Width = 5075mS with Width = 7594mS with Width = 100
Resultado: Aprox. 10 milisegundos com a 550
225
Opções de Marking
• Para sensor retângulo somente
226
2D Data Matrix
• Armazenador de Dados– 6 a 3116 digitos
• Desenhos menores que do códigode barras
• Correção de erro– Com até 50% do código ilegível
• Maior tolerância com iluminação e mudanças de marcação
• Alguns formatos:– Quadrado e retangular– ECC 00, 050, 080,100,140, 200– ECC-200 preferido em novas
aplicações
227
Seleção 2D Code
• Tipos de Indústria– DataMatrix Prevalece
• Automotive Industry Action Group (AIAG)• Department of Defense• Aerospace (IAQG)• NASA• Electronics Industry Association (EIA)
– ECC200 para o padrão não especificado
228
Menos Sensível a Variação
• Skew• Iluminação• Tamanho
229
Fatores Marcantes
• Expectativa de vida• O código pode ser pintado com a mesma cor do fundo
do material• Características de superfície • Volume• Tamanho do Símbolo• Espaço
230
Métodos de Marcação
• Laser Marking– Laser queima a superficie– Alta velocidade e qualidade de impressão– Semicon, electronics, packaging, medical
• Micropuncionador– É feito através de marcadores de carbide ou
diamante– Automotive, Aerospace
• Impressão Ink Jet– A tinta deixa as marcas na superficie do objeto– As características de superfície determinam o
permanencia– Alta velocidade, impressão em movimento, ótimo
contraste
• Eletroquimico• Etching (Electro-Chemical )
– Oxida o metal da superficie– Peças Redondas
231
Colocação da Marcação
• Superfície lisa
• Área limpa
• Leitura visível
232
Código Legível/Classificação da Leitura
• Quiet Zone– Área em torno do código
• Finder Bars– A forma em L é usada
para localizar o símbolo
• “Clocking” Pattern– Alternância de pontos
opostos– Barras de busca
• Data Cells– Informação do código
233
Células e Módulos
• O método de marcaçãodetermina a forma e tamanho da célula
• O tamanho mínimo pode ser determinado pela textura de superfície
234
Verificação/Classificação
• AIM Standard – A-F Grading – Símbolo decodificado– Contraste– Aumento da cópia– Variação na uniformidade– Não utilizar correção de erro
• Outros parâmetros– Dot Size – Dot Offset
235
Leituras Difíceis de Fazer
• Foco mal ajustado• Baixo constraste• Fundo do objeto não está uniforme
236
Desafios de Leitura: Impressão
237
Desafios de Leitura: Superfície do Objeto
238
DVT 2D DataMatrix Reader
• Aprendizagemautomática do símbolo– ECC Type– Square Matrix– Symbol Size– Module type– Mirror
239
DataMatrix
ECC000
ECC140
• Tipos de símbolos– ECC200– ECC000
- ECC010- ECC040
– ECC050 - ECC060– ECC080 - ECC070– ECC100 - ECC090– ECC140 - ECC110– ECC000-140 - ECC120– ECC000-200 - ECC130
240
Otimização da Ferramenta
• Ajustar o código oudetecção automática– Shape– Code type– Size– Module– Mirror
• Treinar parâmetros
241
Parâmetros Avançados
• Max Skew• Rotation• Axial Non-uniformity• Probe Width• Clean Area• Gradient• Size/Scale• Cell Sampling
242
DataMatrix Adv. Parameters
• Skew: Inclinar-se a um lado quando o símbolo está em paralelogramo • Border Integrity: Define qualidade máxima da borda em
porcentagem• Quiet zone: É a área livre de pelo menos uma célula que deve ter em
torno do código• Rotation: Limite de rotação min. em relação ao símbolo treinado• Axial Nonuniformity: Ajuste caso o símbolo esteja esticado em um
dos lados• Probe Width: Procura a largura usada pelo 2D Matrix para aumentar
os pontos caso seja necessário• Clean area: Procura eliminar ruídos da área externa do código 2D .• Min Gradient: Aumentar a velocidade acima da inspeção quando o
símbolo não tem o contraste bom e apresenta ruído de fundo
243
DataMatrix Parâmetros
• Search Parameters– Symbol size – Aprendizado automático, pode fazer o
ajuste manualmente– Scale: pode mudar a imagem conforme o tamanho
original• Cell Sampling
– Threshold Type: Métodos diferentes para determinaro contraste da célula.
– Sample Size: Procura a área da célula
244
DMReader FrontEnd
• Ferramenta amigável• Mostra sempre os resultados na interface• Saidas preconfiguradas
245
DVT DMReader
• DataMatrix/Readers
246
OCROptical Character Recognition
247
OCR
• Lotes• Dados• Número serial• Outras linguas• Impressão em curva
248
OCR SoftSensors
• Variedades de thresholds especiais como opção– Computed, linear and non-linear
• Treine seus próprios caracteres• Habilidade de ler a matriz de ponto, segmentada e o
curso (e.g. Japanese) carácteres• Pode ler carácteres em curva pois a ferramenta pode
ser desenhada em arco• Controle de espaço e tamanho de caracteres
249
OCR SoftSensors
Para um melhor resultado
• Caracteres devem ser capaz de extrair pelo thresholding• Os caracteres treinados devem conter em todas
imagens• Evitar imagens com fundos texturizados• OCR fontes “amigáveis”
– OCR A, OCR B, Semi– Undecorated, non-serif fonts
• A altura média dos caracteres deve estar entre 20 e 30 pixels
250
OCR SoftSensors
• O desenho do OCR SoftSensor necessita
• Extrair os caracteres
• Treinar os caractéres definidos
• Testar leitura do OCR
251
OCR SoftSensors
Ajuste• Desenhar e posicionar
– Manter a região da ferramenta nãotão próxima nem muito distante
– O sensor deve manter o ângulo do texto
– Usar ferramentas de posição se necessário
• Extracting– Especifique o tipo de caracteres que
deseja ler, escuro ou claro– Usar Thresholding automático
inicialmente– Certificar-se que os “box” vermelhos
cerquem todos os caracteres
252
• Horizontal & Vertical spacing
OCR SoftSensors
Extraction
– Para pontos da matrix que estãodanificados, ou seja, faltandoserve “ligar” o caracterevertical como na horizontal
pixel, tanto na
– Pode ajudar a reduzir os ruídos em volta do caractere
• Definir Character Width/Height quando os caracteresuniformes
não estiverem
• Ajuste o Min Character Area ajuda a reduzir o ruido do fundo da imagem
253
OCR SoftSensors
Opções avançadas para Extraction
254
• Coloque os caracteres
OCR SoftSensors
Training
que irá
ser
treinar- Aperte ”Train Now”
• Certifique-se que os “boxes”estão verdes
• Fontes treinadas podemusadas em outros produtos– Esta fonte pode ser
encontrada no “Font management”
255
• Manager
OCR SoftSensors
Manager
Oferece:- Acesso para adicionar, deletar, exportar e importar font list
- Possibilita ver as informações contidasnos caracterestreinados
256
OCR SoftSensors
Matching
• Matching threshold % usado para comparaçãofinal
• Fielding ajuda diminuir o tempo de busca
• Aspect ratio relaciona a cópia com alteração de tamanho
257
OCR SoftSensors: TestePass
• Set Warn/Pass criteria– Minimum contrast– Number of characters– Match string
• Teste o resultadoconforme descriçãoacima com sequênciasde imagens
258
Conclusão
• Caracteres treinados devem estar repetidos nas próximas imagens
• Evitar imagens com fundos texturizados• OCR fontes “amigáveis”
– OCR A, OCR B, Semi– Undecorated, non-serif fonts
• A altura média dos caracteres deve ser entre 20 e 30 pixels• Use OCV para eliminar leituras erradas• Para caracteres sem leitura, treiná-los novamente ou abaixar “o
parâmetro da porcentagem aceitação”
259
Lembre-se
• Obter boa imagem• Determinar o trigger da inspeção e com que
frequência• Escolher o melhor SoftSensor para sua
aplicação particular • Teste sua inspeção e ajuste com diversas
versões do objeto analisado afim de garantirque suas ferramentas não falhem conforme a variação do produto
• Configure os I/O conforme necessário
Resolver uma aplicação