DESENVOLVIMENTO DE SOFTWARE PARA ACIONAMENTO DE UMA PLATAFORMA MÓVEL AUTÔNOMA COM MICROCONTROLADOR Aluna: Gabriela Werner Gabriel Orientadores: Cairo L. Nascimento Jr. Eduardo H. Yagyu
MOTIVAÇÃO PLATAFORMA COMANDADA VIA PC ATRAVÉS DE COMUNICAÇÃO SERIAL PROBLEMA: LIMITAÇÃO NA AMPLITUDE DO MOVIMENTO
AGENDA OBJETIVO PROJETO HARDWARE PROGRAMAS TESTES CONCLUSÃO
OBJETIVO IMPLEMENTAÇÃO DE UM MICROCONTROLADOR CAPAZ DE TRAZER PARTE DA INTELIGÊNCIA PARA A PLATAFORMA; IMPLEMENTAR SENSORES DE CONTATO CAPAZES DE DETECTAREM A COLISÃO.
IMPLEMENTAÇÃO E INTEGRAÇÃO FASES DO PROJETO PROJETO E ANÁLISES IMPLEMENTAÇÃO E INTEGRAÇÃO TESTES E MEDIDAS
PROJETO E ANÁLISE ESCOLHA DO MICROCONTROLADOR ESCOLHA DOS MOTORES ESCOLHA DOS CIRCUITOS ESCOLHA DAS LINGUAGENS DE PROGRAMAÇÃO UTILIZADAS
IMPLEMENTAÇÃO E INTEGRAÇÃO IMPLEMENTAÇÃO DO CIRCUITO DE ACIONAMENTO ALTERAÇÃO DO PROGRAMA DE ESCOLHA DA TRAJETÓRIA CRIAÇÃO DO PROGRAMA DO MICROCONTROLADOR CRIAÇÃO DO PROGRAMA DE COMUNICAÇÃO IMPLEMENTAÇÃO DOS SENSORES INTEGRAÇÃO DOS DIVERSOS SISTEMAS
TESTES E MEDIDAS MEDIDAS DAS DIMENSÕES DA PLATAFORMA AQUISIÇÃO DE DADOS TESTES DE MOVIMENTO
HARDWARE DA PLATAFORMA KIT AES-51 MOTORES CIRCUITO DE ACIONAMENTO DOS MOTORES RODAS BATERIA PLATAFORMA SENSORES DE CONTATO CIRCUITO DOS SENSORES CHAVE LIGA-DESLIGA
Placa do kit AES-51 Circuito dos Sensores Bateria Circuito de Potencia e Circuito de Acionamento dos Motores Sensores Rodas Livres Motores de Passo Chave Seletora Rodas Tracionadas
KIT AES-51 MICROCONTROLADOR INTEL 80C32 INTERFACES DE IO (PORTA SERIAL COM CONECTOR DB9) PROGRAMAS DE INTERFACE (TE, ASM51, EEDIT) TECLADO E LCD
KIT AES-51
PLACA DE ACIONAMENTO DOS MOTORES PULSOE SR CIRCUITO LÓGICO PARA ACIONAMENTO DOS MOTORES CIRCUITO DE POTÊNCIA PARA ACIONAMENTO DOS MOTORES MOTORES DE PASSO TRANSISTORES DE POTÊNCIA – TIP122 MÁQUINA SEQUENCIAL – FLIP-FLOPS D E PORTAS AND.
DRIVER DE POTÊNCIA
DETECTORES DE COLISÃO SENSORES DE CONTATO IMPPLEMENTAÇÃO UTILIZANDO INTERRUPÇÃO – INT1
COMUNICAÇÃO SERIAL PORTA SERIAL COM1 PARÂMETROS DA COMUNICAÇÃO BAUD RATE: 9600 PALAVRA DE 8 BITS 1 STOP BIT SEM PARIDADE
PROGRAMAÇÃO DA TRAJETÓRIA (ROMEO) FUNCIONAMENTO PROGRAMAÇÃO DA TRAJETÓRIA (ROMEO) CARREGAR NA PLATAFORMA PROGRAMA QUE EXECUTA OS MOVIMENTOS ENVIAR DADOS DE MOVIMENTO PARA A PLATAFORMA DESCONECTAR CABO DE COMUNICAÇÃO SERIAL EXECUTAR O MOVIMENTO
CODIFICAÇÃO UTILIZADA TIPO MOVIMENTO SUBTIPO AMPLITUDE 1 FRENTE LADO 2 DIAGONAL TRÁS 3 ROTAÇÃO HORÁRIA 45O 90O 135O 4 ROTAÇÃO ANTI-HORÁRIA
FLUXO DE INFORMAÇÕES DO LABIRINTO ROMEO (Turbo C) LABIRINTO(Texto) TABM_NEW (Texto) MOVEA (Assembly) SEND (Turbo C) (PORTA SERIAL)
LABIRINTO FORMATO TEXTO (Ex. LAB.TXT) 5 4 2 0 0 1 0 1 1 1 1 0 1 3 1 0 0 1 0 1 1 0
PROGRAMA ROMEO.CPP 2. PROCURA A 1. LÊ LABIRINTO 3. ABRE ARQUIVO A PARTIR DE ARQUIVO TEXTO 2. PROCURA A TRAJETÓRIA UTILIZANDO O ALGORITMO A* 3. ABRE ARQUIVO TABM_NEW PARA ESCRITA 4. GRAVA A SEQUENCIA DE MOVIMENTOS CODIFICADA NO ARQUIVO DE SAÍDA 5. ENCERRA O PROGRAMA CARACTERE ‘A’ 6. FECHA ARQUIVO DE SAÍDA 7. INTERFACE GRÁFICA PARA VISUALIZAÇÃO DA PROCURA DA TRAJETÓRIA
ARQUIVO DE SAÍDA TABM_NEW.TXT 003 006 009 004 1 ; 1 4 ; 1 1 ; 2 4 ; 2 A ESTRUTURA VARIÁVEIS CONTENDO O NÚMERO DE PULSOS ÁRA CADA MOVIMENTO; MOVIMENTO CODIFICADO EM TIPO E SUBTIPO.
TRANSLAÇÃO FRENTE NUM LADO ROTAÇÃO ANTI-HORÁRIA 45O ROTAÇÃO 45O ROTAÇÃO 90O ROTAÇÃO 135O TRANSLAÇÃO – LADO TRANSLAÇÃO – DIAGONAL TRANSLAÇÃO FRENTE NUM LADO ROTAÇÃO ANTI-HORÁRIA 45O TRANSLAÇÃO FRENTE NUMA DIAGONAL ROTAÇÃO ANTI-HORÁRIA 90O TERMINADOR 003 006 009 004 1 ; 1 4 ; 1 1 ; 2 4 ; 2 A
PROGRAMA SEND.CPP 3. LÊ ARQUIVO 1. ABRE ARQUIVO DESCONSIDERANDO TABM_NEW.TXT PARA LEITURA 2. CONFIGURA A TRANSMISSÃO 3. LÊ ARQUIVO DESCONSIDERANDO OS CARACTERES NÃO VÁLIDOS 4. ENVIA DADOS PARA PORTA SERIAL VERIFICANDO O BUFFER 5. FECHA O ARQUIVO
PROGRAMA SEND.CPP
PROGRAME MOVEA.ASM PROGRAMA EXECUTADO NO MICROCONTROLADOR DIVIDIDO EM TRÊS PARTES: RECEPÇÃO DE DADOS TRATAMENTO DOS DADOS EXECUÇÃO DO MOVIMENTO INTERRUPÇÃO PARA ROTINA DE COLISÃO
PROGRAMA MOVEA.ASM 1. INICIALIZAÇÃO DAS VARIÁVEIS DE PROGRAMA 2. PARTE 1: RECEPÇÃO DOS DADOS 3. PARTE 2: TRATAMENTO 4. PARTE 3: EXECUÇÃO DO MOVIMENTO ROTINA DE DE COLISÃO
PROGRAMA MOVEA.ASM MEMÓRIA 1. MEMÓRIA DE DADOS 2. MEMÓRIA DE PROGRAMA TABELA DE MOVIMENTOS TEXTOS DO PROGRAMA CÓDIGO DO PROGRAMA
PROGRAMA MOVEA.ASM PARTE 1 1. CONFIGURAÇÕES DA COMUNICAÇÃO SERIAL BAUD RATE: 9600 1 STOP BIT PALAVRA DE 8 BITS SEM PARIDADE 2. AGUARDA DADO (INTERRUPÇÃO) 3. GRAVAÇÃO AUTOMÁTICA DA TABELA DE MOVIMENTO NA MEMÓRIA
PROGRAMA MOVEA.ASM PARTE 2 15 PRIMEIROS BYTES RECEBIDOS - ROTAÇÃO 45O - ROTAÇÃO 90O - ROTAÇÃO 135O TRANSLAÇÃO LADO DIAGONAL CENTENA DEZENA UNIDADE 1O BYTE 2O BYTE 3O BYTE
PROGRAMA MOVEA.ASM PARTE 3 INPUT OUTPUT ROTAÇÃO 45O ROTAÇÃO 90O ROTAÇÃO 135O TRANSLAÇÃO LADO TRANSLAÇÃO DIAGONAL PULSO e SR (MOTOR ESQUERDO) (MOTOR DIREITO) TESTE DE TIPOS E SUBTIPOS
TESTES MEDIDAS NA PLATAFORMA AQUISIÇÃO DOS SINAIS GERADOS MOVIMENTO PROPRIAMENTE DITO
MEDIDAS
AQUISIÇÃO DE DADOS PULSO
AQUISIÇÃO DE DADOS
MOVIMENTO X SENTIDO DE ROTAÇÃO DOS MOTORES MOVIMENTO BIT DE SR DO MOTOR ESQUERDO BIT DE SR DO MOTOR DIREITO TRANSLAÇÃO PARA FRENTE 1 TRANSLAÇÃO PARA TRÁS ROTAÇÃO HORÁRIA ROTAÇÃO ANTI-HORÁRIA
AQUISIÇÃO DE DADOS
MOVIMENTO PROPRIAMENTE DITO ROMEO
PROPOSTA PARA NOVOS TRABALHOS IMPLEMENTAÇÃO DAS VARIÁVEIS EM DOIS BYTES; COMANDO E MONITORAÇÃO VIA INTERNET. IMPLEMENTAÇÃO DE SENSORES QUE DETECTEM OBJETOS; IMPLEMENTAÇÃO DE COMUNICAÇÃO VIA RÁDIO PARA CONTROLE DA TRAJETÓRIA; IMPLEMENTAÇÃO DE MOTORES DE CORRENTE CONTÍNUA;
AGRADECIMENTOS AOS ORIENTADORES À FAPESP