Dobot Blockly é uma plataforma de programação baseada no Google Blockly. Neste processo, os utilizadores podem programar através do formato puzzle, que é simples e fácil de entender. Além disso, os utilizadores podem usar a API integrada do Dobot a qualquer momento.
12.1 Interface Blocada
Abra o DobotStudio e clique em DobotBlock Lab:
Código de bloco 12.2


12.3 Inicialização e Definição do Problema
Contexto e Motivação
Na indústria e ecologia modernas, a triagem manual de resíduos é um processo lento, ineficiente e frequentemente perigoso. O objetivo deste projeto é criar um sistema autónomo que utilize Visão Computacional e manipulação robótica para reconhecer e separar fisicamente diferentes materiais (neste caso, resíduos orgânicos e plástico).
Enunciado do Problema
O principal desafio reside na sincronização de três subsistemas independentes:
1. Sistema de Transporte: Uma correia transportadora que traz objetos para o espaço de trabalho.
2. Sistema de deteção: Uma câmara que deve identificar o tipo de item em tempo real.
3. Sistema de Atuação: Um braço robótico que deve executar com precisão a recolha e colocação com base no feedback do sensor.
12.4 Arquitetura da Solução
A solução baseia-se na plataforma Dobot Magician e num ambiente de programação baseado em blocos (Blockly) que integra módulos de IA para reconhecimento de imagens.
Componentes de Hardware
- Dobot Braço de Mago: Um robô de alta precisão de 4 eixos.
- Ventosa: Usada como efetivo final pela sua versatilidade em lidar com várias formas.
- Câmara USB: Montada acima do cinto para uma vista estável de cima.
- Correia Transportadora: Controlada por um motor de passo ligado ao Dobot.
Lógica de Software
O algoritmo segue um modelo iterativo de circuito fechado: Iniciar Correia -> Parar -> Capturar -> Analisar -> Ordenar -> Regressar ao Inizar.
12.5 Análise detalhada de blocos de código
O programa está dividido em quatro segmentos principais:
Configuração (Configuração)
- usar câmara 1: Declara a entrada de hardware para dados visuais.
- Definir o efetor final [Ventosa]: Mapeia suavemente o controlo da bomba de ar para a saída do robô.
- Ir para X:175, Y:39.5, Z:48.1: Esta é a "Posição de Segurança." O robô recua para evitar obstruir a câmara e garante um caminho ótimo para qualquer ponto da correia.
Logística (Controlo de Transportadoras)
Dentro do bloco de repetição para sempre:
- Ajuste o Motor Transportador [STEPPER1] Velocidade 15 mm/s: Ativa a correia a uma velocidade controlada para evitar que objetos leves deslizem.
- espera 3 segundos: Uma constante de tempo crítica que define a distância entre os itens.
- Velocidade 0: Para a correia para que o robô possa executar uma "palheta estática" precisa.
Inspeção por IA (Reconhecimento de Imagem)
- Contagem decrescente 4 s: Fornece tempo de estabilização para a câmara focar e para o pop-up da IA processar a imagem.
- Se a Imagem reconhecer a etiqueta 1 = [orgânico/plástico]: Chama a API de Deep Learning para comparar o frame atual com um conjunto de dados treinado e devolve uma tag de classe.
Cinemática e Manipulação
Para cada ramo (orgânico/plástico), o sistema utiliza dois tipos de movimento:
1. Movimento Articular (PTP): Move todas as articulações simultaneamente para o percurso ponto a ponto mais rápido.
2. Linha Reta (Linear): Move o braço estritamente verticalmente no eixo Z para garantir que a ventosa faz contacto perfeito sem derrubar o objeto.
12.6 Algoritmo Operacional (Passo a Passo)
· START: Inicializar instrumentos e definir o efetor final.
· TRANSPORTE: Mover o cinto durante 3 segundos e depois parar.
· SENTIDO: Capturar imagem e identificar a etiqueta através de IA.
· DECISÃO:
· Se for orgânico: Vai buscar coordenadas, liga a sucção, vai para a caixa orgânica, desliga a sucção.
· Se for de plástico: Vai buscar coordenadas, liga a sucção, vai para a caixa de plástico, desliga a sucção.
· Se vazio: Realize um movimento de "sacusão" de sinalização (rodando o eixo R).
· REINICIAR: Regressar às coordenadas iniciais de segurança.
· LOOP: Repete o ciclo indefinidamente.
12.7 Especificações Técnicas de Coordenadas
Com base no script, as seguintes coordenadas foram calibradas:
|
Point |
X (mm) |
Y (mm) |
Z (mm) |
R (°) |
Descrição |
|
Casa |
175.0 |
39.5 |
48.1 |
12.7 |
Posição em marcha lenta/espera |
|
Abordagem |
-56.3 |
155.5 |
7.4 |
109.9 |
Posição acima do item |
|
Agarra |
-52.8 |
125.3 |
-24.8 |
112.8 |
Ponto de contacto (Rebaixado) |
|
Contentor Orgânico |
180.9 |
-67.5 |
-43.5 |
-20.5 |
Eliminação para produtos orgânicos |
|
Contentor de plástico |
161.9 |
63.2 |
-20.9 |
21.3 |
Eliminação de plásticos |
12.8 Resolução de Problemas de Implementação
· Agarrar Impreciso: Certifique-se de que o objeto está centrado. Se variar, usa guias na correia ou integra feedback dinâmico X/Y da câmara de IA.
· Erros de Classificação: O reconhecimento da IA é sensível à luz. Use uma cor de cinto de alto contraste e iluminação LED externa consistente.
· Segurança: Certifique-se sempre de que o espaço de trabalho está livre de obstáculos antes de iniciar o ciclo de repetição indefinida.