SlideShare uma empresa Scribd logo
1 de 12
Baixar para ler offline
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
PROJETO FINAL
DESCRIÇÃO DE IMPLEMENTAÇÃO E MONTAGEM DE PROTÓTIPO
DANIEL DE CASTRO RIBEIRO RESENDE
MARCOS AZEVEDO MEIJON CAMPOLINA
Belo Horizonte
Novembro/2012
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
O PROJETO
prático, da disciplina Laboratório Sistemas digitais II, consiste na implementação de um protótipo que
tenha seu sistema de controle e comando elétrico baseado na programação embarcada de um
microcontrolador.
Quando da apresentação do pré-projeto, sugerimos ter como objetivo a implementação de um
pequeno veículo. Este, teria certo nível de automação em sua locomoção, que o possibilitaria, apesar de
não ter rota ou destino certo, não se chocar a possíveis obstáculos. Então, orientados pelo Sr. Martinho
Henrique Novaes Murta, professor responsável pela disciplina, de que seria uma abordagem válida e
possível, seguimos adiante.
ESTRUTURA FÍSICA
O chassis
construido em alumínio, visando leveza e sustentação, foi acrescentado de três rodas. Duas rodas
maiores, possuindo diâmetro de quatro e meio centímetros e envolvidas em borracha para aderência e
uma terceira "roda livre" apenas para equilíbrio da estrutura. As duas primeiras estão vinculadas, cada
uma, à um motor "DC" ("direct current", Splindle RF-300EA 5,9V) independente, por meio de polias e
corrêias para transmissão e redução (Chassis - Figura 01).
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
Chassis - Figura 01
O circuito,
trata-se de apenas uma placa de circuito impresso (Placa do circuito - Figura 02), sobre a estrutura do
protótipo (Protótipo - Figura 04). Planejado para a entrada de nove volts, que alimentam diretamente as
duas "pontes-h" (compostas por transistores BC327/PNP e BC337/NPN) e um regulador de tensão
(LM7805) (Esquema do circuito - Figura 03). As pontes são responsáveis por chavear a passagem de
corrente aos motores de acordo com os sinais lógicos recebidos, ocasionalmente invertendo os sentidos
de rotação e funcionando como amplicadoras de corrente. O regulador de tensão, por sua vez, fornece
cinco volts ao microcontrolador (MC68HC908QY4), que executa o comando lógico, e ao circuito
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
integrado quádruplo de portas "NAND", que sincroniza os sinais aos motores (às "pontes-h") com a
freqüência e o "duty cicle" do "PWM" ("pulse width modulation") configurado pelo firmware, e, ainda
aos três conjuntos de "LEDs” ("light emissor diodes" de frequência infra-vermelha) e foto-transistores,
que são responsáveis por fazer o papel de sensores, enviando sinais analógicos (numa escala de zero a
cinco volts) a três canais do conversor analógico/digital do microcontrolador, como forma de mensurar
as distâncias em três direções à frente do veículo (Circuito - Figura 03).
Placa do circuito - Figura 02
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
Esquema do circuito - Figura 03
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
ROTINA EMBARCADA
O código,
ou "firmware" foi elaborado em Assembly. É uma notação legível por humanos para o código de
máquina que uma arquitetura computacional específica usa. Utilizada para programar dispositivos
computacionais, como microprocessadores e microcontroladores. A linguagem de máquina, que é um
mero padrão de bits, torna-se legível pela substituição dos valores em bruto por símbolos
chamados mnemónicos.
Basicamente, o código (mais detalhado em seus próprios comentários) teve como objetivo,
realizar a seguinte rotina:
A leitura e conversão por "polling" dos foto-transistores, através dos canais dois, três e quatro
do conversor analógico/digital. A comparação por operações aritméticas das respostas dessas leituras em
bits para encontrar a maior das três. O teste desta maior leitura para o conhecimento da possível
proximidade a um obstáculo, verificando se está maior do que cento e vinte e sete bits. O que seria cerca
de dois e meio volts, ou trinta centímetros de distância. Visto que nosso conversor trabalha com uma
resolução de 256 bits. Confirmada a presença de algum obstáculo, temos a execução de uma das sub-
rotinas de desvio, que se consistem em alternar quais motores tracionarão e em quais sentidos. Sendo
que para a leitura de maior proximidade à frente (em linha reta à trajetória) utilizamos um "buffer", para
certeza da ocorrência. Pois não seria ideal que esta sub-rotina de desvio, em específico, ocorresse por
ruídos de leiura. Esta sub-rotina consiste em deixar o veículo em ré durante a realização de "polling" de
leitura, até que o obstáculo esteja afastado, então os sentidos dos motores são definidos como contrários
entre si e há uma contagem de tempo de um segundo (suficiente a uma inverçao de cerca cento e oitenta
graus no sentido da rota original) antes que o veículo volte a caminhar para frente (código abaixo).
Firmware:
;************** HABBIT I **************
INCLUDE 'derivative.inc'
XDEF _Startup, main
XREF __SEG_END_SSTACK
MY_ZEROPAGE: SECTION SHORT
LEDL: DS 1
LEDM: DS 1
LEDR: DS 1
AUXCOUNT: DS 1
AUXAVERAGE: DS 1
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
TEMPO: DS 1
CONT: DS 2
MyCode: SECTION
main:
_Startup:
INICIO:
MOV #0,CONFIG2 ;3,2MHz, SEM IRQ, COM PULLUP, SEM RESET
MOV #$19,CONFIG1 ;SEM COP,SEM LVI, 5V, STOP ILEGAL
MOV #1,DDRA ;BIT 0 DA PORTA A SAIDA
MOV #$C3,DDRB ;BITS 7,6,1,0 DA PORTA B SAIDAS
MOV #$30,TSC ;PARA E RESETA
MOV #$46,TSC ;HABILITA INTTIMER E PRESCALER 64 (CLK 50K)
LDHX #100 ;PERIODO DE 2mS
STHX TMODH
MOV #$5A,TSC0
LDHX #80 ; PWM COM OITENTA POR CENTO DE PERIODO ATIVO
STHX TCH0H
MOV #$40,ADICLK ;40uSEG POR CONVERSAO
CLI
CLR LEDL
CLR LEDM
CLR LEDR
CLR TEMPO
LDHX #0
STHX CONT
MOV #$82,PTB ;INICIA MOVIMENTO A FRENTE
READ:
MOV #1,ADSCR ;INICIA LEITURA PTA1 (SENSOR ESQUERDO)
LPL:
BRCLR 7,ADSCR,LPL ;LOOP DE ESPERA DURANTE LEITURA
MOV ADR,LEDL
MOV #2,ADSCR ;INICIA LEITURA PTA4 (SENSOR CENTRAL)
LPM:
BRCLR 7,ADSCR,LPM
MOV ADR,LEDM
MOV #3,ADSCR ;INICIA LEITURA PTA5 (SENSOR DIREITO)
LPR:
BRCLR 7,ADSCR,LPR
MOV ADR,LEDR
BSR TURN ;SEGUE OU VIRA
BRA READ ;LOOP READ
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
TURN: ;PROCURA MAIOR
LDA LEDL ;CARREGA EM A
CMP LEDM ;COMPARA LEDL COM LEDM
BCS MIDBIGGER ;SE TEVE CARRY BRANCH (LEDM>LEDL)
;(LEDL>LEDM)
CMP LEDR
BCS RIGHTBIGGER ;(LEDR>LEDL>LEDM)
CMP #$7F ;CMP 2,5V OU 30CM ;[LEDL>(LEDM|LEDR)]
BCC TURNR
MOV #$82,PTB ;PARA FRENTE
RTS ;RETORNA DA SUB ROTINA
TURNR: ;VIRA PARA DIREITA [LEDL>(LEDM|LEDR)]
MOV #$02,PTB ;VIRA A DIREITA
RTS
RIGHTBIGGER:
LDA LEDR
CMP #$7F
BCC TURNL
MOV #$82,PTB ;PARA FRENTE
RTS
TURNL: ;VIRA PARA ESQUERDA (LEDR>LEDL>LEDM)
MOV #$80,PTB ;VIRA A ESQUERDA
RTS
MIDBIGGER: ;LEDM>LEDL
LDA LEDM
CMP LEDR
BCS RIGHTBIGGER ;(LEDR>LEDM>LEDL)
MOV #$F,AUXCOUNT ;BUFFER
CLR AUXAVERAGE
TRUE:
DEC AUXCOUNT
BEQ AVERAGE
MOV #2,ADSCR
LPAW:
BRCLR 7,ADSCR,LPAW
MOV ADR,LEDM
LDA LEDM
CMP #$7F
BCS TRUE
INC AUXAVERAGE
BRA TRUE
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
AVERAGE:
LDA AUXAVERAGE
CMP #$B
BCS FORWARD
BACK: ;RETORNA [LEDM>(LEDL|LEDR)]
MOV #$41,PTB ;RE
AWAY:
MOV #2,ADSCR
LPA:
BRCLR 7,ADSCR,LPA
LDA ADR
CMP #$7F
BCC AWAY
MOV #$42,PTB ;SENTIDO HORARIO
MOV #1,TEMPO ;1SEG
CLOCKWISE:
LDA TEMPO
BNE CLOCKWISE
FORWARD:
MOV #$82,PTB ;PARA FRENTE
RTS
TIM:
BCLR 7,TSC0 ;LIMPA FLAG
RTI ;DESEMPILHA E RETORNA
TIMI: ;DECREMENTA TEMPO A CADA 1SEG
INC CONT
LDA CONT
CMP #100
BNE SAIROT
CLR CONT
INC CONT+1
LDA CONT+1
CMP #5
BNE SAIROT
CLR CONT+1
DEC TEMPO
SAIROT:
BCLR 7,TSC
RTI
ORG $FFF6
DC.W TIM
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
ORG $FFF2
DC.W TIMI
END
Conclusão,
através das implementações de softwares embutidos, montagem de interfaces e simulação de códigos
utilizando o compilador Codewarrior, nosso aprendizado de conceitos de programação, compilação e
funcionamento de microcontroladores aumentaram muito ao longo do semestre letivo. Principalmente
em relação a projetos de pequeno e médio portes, utilizando linguagem C ou Assembly.
Alcançamos códigos mais lógicos e leves, com reduzida ocupação de memória, interpretamos
melhor manuais e "data sheets", praticamos o desenho e a simulação de pequenos circuitos, e,
adquirimos um ponto de vista melhor, quanto ao caminho à ser percorrido no projeto de um protótipo.
A utilização de microcontroladores de baixo custo, robustos e versáteis, como os da família
HC08 da Freescale, nos permitiu entender, que o nível de qualidade e a confiabilidade, nem sempre
dizem respeito ao investimento material, mas sim à engenharia aplicada no projeto.
O protótipo (Protótipo - Figura 04) em funcionamento, energizado por uma fonte chaveada
comum, pode ser visto em vídeo neste link: <http://youtu.be/FBhPfGrjlmM>.
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
Protótipo - Figura 04
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
ISNTITUTO POLITÉCNICO
Campus Coração Eucarístico – Unidade Belo Horizonte
Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG
Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br
REFERÊNCIAS
MOTOROLA. Data Sheet MC68HC908QY4/D Rev. 0.1, 12/2002. © Motorola, Inc. 2002.
http://motorola.com/semiconductors
CNZ Engenharia e Informática Ltda. Treinamento de Microcontroladores Baseado na família
MC68HC908QT/QY. www.cnz.com.br
MOTOROLA. CPU08 Central Processor Unit Reference Manual Rev. 3, 2/2001. © Motorola, Inc.
2002. http://motorola.com/semiconductors
MOTOROLA. Timer Interface Module 08 Rev. 1.0, 1996. © Motorola, Inc. 2002.
http://motorola.com/semiconductors
PEREIRA, Fábio. Microcontroladores HC908Q: teoria e prática. São Paulo: Érica, 2004.
MALVINO, Albert Paul. Eletrônica. Ed. McGraw Hill.

Mais conteúdo relacionado

Destaque

Asus n61 jv batería at www baterias-portatil-es
Asus n61 jv batería at www baterias-portatil-esAsus n61 jv batería at www baterias-portatil-es
Asus n61 jv batería at www baterias-portatil-esbatteryes
 
Sales manager resume
Sales manager resumeSales manager resume
Sales manager resumeChris Dowling
 
Crea il tuo e-commerce internazionale: the Global Action Plan
Crea il tuo e-commerce internazionale: the Global Action PlanCrea il tuo e-commerce internazionale: the Global Action Plan
Crea il tuo e-commerce internazionale: the Global Action PlanAndrea Vit
 
Anatomia e Fisiologia da Dor
Anatomia e Fisiologia da DorAnatomia e Fisiologia da Dor
Anatomia e Fisiologia da Dorjbtajra
 

Destaque (6)

strat com snap
strat com snapstrat com snap
strat com snap
 
Asus n61 jv batería at www baterias-portatil-es
Asus n61 jv batería at www baterias-portatil-esAsus n61 jv batería at www baterias-portatil-es
Asus n61 jv batería at www baterias-portatil-es
 
Master klass
Master klassMaster klass
Master klass
 
Sales manager resume
Sales manager resumeSales manager resume
Sales manager resume
 
Crea il tuo e-commerce internazionale: the Global Action Plan
Crea il tuo e-commerce internazionale: the Global Action PlanCrea il tuo e-commerce internazionale: the Global Action Plan
Crea il tuo e-commerce internazionale: the Global Action Plan
 
Anatomia e Fisiologia da Dor
Anatomia e Fisiologia da DorAnatomia e Fisiologia da Dor
Anatomia e Fisiologia da Dor
 

Último

Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06AndressaTenreiro
 
Calculo vetorial - eletromagnetismo, calculo 3
Calculo vetorial - eletromagnetismo, calculo 3Calculo vetorial - eletromagnetismo, calculo 3
Calculo vetorial - eletromagnetismo, calculo 3filiperigueira1
 
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptxVagner Soares da Costa
 
Apresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPMApresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPMdiminutcasamentos
 
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptxVagner Soares da Costa
 
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docxTRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docxFlvioDadinhoNNhamizi
 

Último (6)

Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06Lista de presença treinamento de EPI NR-06
Lista de presença treinamento de EPI NR-06
 
Calculo vetorial - eletromagnetismo, calculo 3
Calculo vetorial - eletromagnetismo, calculo 3Calculo vetorial - eletromagnetismo, calculo 3
Calculo vetorial - eletromagnetismo, calculo 3
 
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
07 - MICRÔMETRO EXTERNO SISTEMA MÉTRICO.pptx
 
Apresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPMApresentação Manutenção Total Produtiva - TPM
Apresentação Manutenção Total Produtiva - TPM
 
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
10 - RELOGIO COMPARADOR - OPERAÇÃO E LEITURA.pptx
 
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docxTRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
 

Protótipo de veículo autônomo PUC-MG

  • 1. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br PROJETO FINAL DESCRIÇÃO DE IMPLEMENTAÇÃO E MONTAGEM DE PROTÓTIPO DANIEL DE CASTRO RIBEIRO RESENDE MARCOS AZEVEDO MEIJON CAMPOLINA Belo Horizonte Novembro/2012
  • 2. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br O PROJETO prático, da disciplina Laboratório Sistemas digitais II, consiste na implementação de um protótipo que tenha seu sistema de controle e comando elétrico baseado na programação embarcada de um microcontrolador. Quando da apresentação do pré-projeto, sugerimos ter como objetivo a implementação de um pequeno veículo. Este, teria certo nível de automação em sua locomoção, que o possibilitaria, apesar de não ter rota ou destino certo, não se chocar a possíveis obstáculos. Então, orientados pelo Sr. Martinho Henrique Novaes Murta, professor responsável pela disciplina, de que seria uma abordagem válida e possível, seguimos adiante. ESTRUTURA FÍSICA O chassis construido em alumínio, visando leveza e sustentação, foi acrescentado de três rodas. Duas rodas maiores, possuindo diâmetro de quatro e meio centímetros e envolvidas em borracha para aderência e uma terceira "roda livre" apenas para equilíbrio da estrutura. As duas primeiras estão vinculadas, cada uma, à um motor "DC" ("direct current", Splindle RF-300EA 5,9V) independente, por meio de polias e corrêias para transmissão e redução (Chassis - Figura 01).
  • 3. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br Chassis - Figura 01 O circuito, trata-se de apenas uma placa de circuito impresso (Placa do circuito - Figura 02), sobre a estrutura do protótipo (Protótipo - Figura 04). Planejado para a entrada de nove volts, que alimentam diretamente as duas "pontes-h" (compostas por transistores BC327/PNP e BC337/NPN) e um regulador de tensão (LM7805) (Esquema do circuito - Figura 03). As pontes são responsáveis por chavear a passagem de corrente aos motores de acordo com os sinais lógicos recebidos, ocasionalmente invertendo os sentidos de rotação e funcionando como amplicadoras de corrente. O regulador de tensão, por sua vez, fornece cinco volts ao microcontrolador (MC68HC908QY4), que executa o comando lógico, e ao circuito
  • 4. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br integrado quádruplo de portas "NAND", que sincroniza os sinais aos motores (às "pontes-h") com a freqüência e o "duty cicle" do "PWM" ("pulse width modulation") configurado pelo firmware, e, ainda aos três conjuntos de "LEDs” ("light emissor diodes" de frequência infra-vermelha) e foto-transistores, que são responsáveis por fazer o papel de sensores, enviando sinais analógicos (numa escala de zero a cinco volts) a três canais do conversor analógico/digital do microcontrolador, como forma de mensurar as distâncias em três direções à frente do veículo (Circuito - Figura 03). Placa do circuito - Figura 02
  • 5. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br Esquema do circuito - Figura 03
  • 6. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br ROTINA EMBARCADA O código, ou "firmware" foi elaborado em Assembly. É uma notação legível por humanos para o código de máquina que uma arquitetura computacional específica usa. Utilizada para programar dispositivos computacionais, como microprocessadores e microcontroladores. A linguagem de máquina, que é um mero padrão de bits, torna-se legível pela substituição dos valores em bruto por símbolos chamados mnemónicos. Basicamente, o código (mais detalhado em seus próprios comentários) teve como objetivo, realizar a seguinte rotina: A leitura e conversão por "polling" dos foto-transistores, através dos canais dois, três e quatro do conversor analógico/digital. A comparação por operações aritméticas das respostas dessas leituras em bits para encontrar a maior das três. O teste desta maior leitura para o conhecimento da possível proximidade a um obstáculo, verificando se está maior do que cento e vinte e sete bits. O que seria cerca de dois e meio volts, ou trinta centímetros de distância. Visto que nosso conversor trabalha com uma resolução de 256 bits. Confirmada a presença de algum obstáculo, temos a execução de uma das sub- rotinas de desvio, que se consistem em alternar quais motores tracionarão e em quais sentidos. Sendo que para a leitura de maior proximidade à frente (em linha reta à trajetória) utilizamos um "buffer", para certeza da ocorrência. Pois não seria ideal que esta sub-rotina de desvio, em específico, ocorresse por ruídos de leiura. Esta sub-rotina consiste em deixar o veículo em ré durante a realização de "polling" de leitura, até que o obstáculo esteja afastado, então os sentidos dos motores são definidos como contrários entre si e há uma contagem de tempo de um segundo (suficiente a uma inverçao de cerca cento e oitenta graus no sentido da rota original) antes que o veículo volte a caminhar para frente (código abaixo). Firmware: ;************** HABBIT I ************** INCLUDE 'derivative.inc' XDEF _Startup, main XREF __SEG_END_SSTACK MY_ZEROPAGE: SECTION SHORT LEDL: DS 1 LEDM: DS 1 LEDR: DS 1 AUXCOUNT: DS 1 AUXAVERAGE: DS 1
  • 7. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br TEMPO: DS 1 CONT: DS 2 MyCode: SECTION main: _Startup: INICIO: MOV #0,CONFIG2 ;3,2MHz, SEM IRQ, COM PULLUP, SEM RESET MOV #$19,CONFIG1 ;SEM COP,SEM LVI, 5V, STOP ILEGAL MOV #1,DDRA ;BIT 0 DA PORTA A SAIDA MOV #$C3,DDRB ;BITS 7,6,1,0 DA PORTA B SAIDAS MOV #$30,TSC ;PARA E RESETA MOV #$46,TSC ;HABILITA INTTIMER E PRESCALER 64 (CLK 50K) LDHX #100 ;PERIODO DE 2mS STHX TMODH MOV #$5A,TSC0 LDHX #80 ; PWM COM OITENTA POR CENTO DE PERIODO ATIVO STHX TCH0H MOV #$40,ADICLK ;40uSEG POR CONVERSAO CLI CLR LEDL CLR LEDM CLR LEDR CLR TEMPO LDHX #0 STHX CONT MOV #$82,PTB ;INICIA MOVIMENTO A FRENTE READ: MOV #1,ADSCR ;INICIA LEITURA PTA1 (SENSOR ESQUERDO) LPL: BRCLR 7,ADSCR,LPL ;LOOP DE ESPERA DURANTE LEITURA MOV ADR,LEDL MOV #2,ADSCR ;INICIA LEITURA PTA4 (SENSOR CENTRAL) LPM: BRCLR 7,ADSCR,LPM MOV ADR,LEDM MOV #3,ADSCR ;INICIA LEITURA PTA5 (SENSOR DIREITO) LPR: BRCLR 7,ADSCR,LPR MOV ADR,LEDR BSR TURN ;SEGUE OU VIRA BRA READ ;LOOP READ
  • 8. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br TURN: ;PROCURA MAIOR LDA LEDL ;CARREGA EM A CMP LEDM ;COMPARA LEDL COM LEDM BCS MIDBIGGER ;SE TEVE CARRY BRANCH (LEDM>LEDL) ;(LEDL>LEDM) CMP LEDR BCS RIGHTBIGGER ;(LEDR>LEDL>LEDM) CMP #$7F ;CMP 2,5V OU 30CM ;[LEDL>(LEDM|LEDR)] BCC TURNR MOV #$82,PTB ;PARA FRENTE RTS ;RETORNA DA SUB ROTINA TURNR: ;VIRA PARA DIREITA [LEDL>(LEDM|LEDR)] MOV #$02,PTB ;VIRA A DIREITA RTS RIGHTBIGGER: LDA LEDR CMP #$7F BCC TURNL MOV #$82,PTB ;PARA FRENTE RTS TURNL: ;VIRA PARA ESQUERDA (LEDR>LEDL>LEDM) MOV #$80,PTB ;VIRA A ESQUERDA RTS MIDBIGGER: ;LEDM>LEDL LDA LEDM CMP LEDR BCS RIGHTBIGGER ;(LEDR>LEDM>LEDL) MOV #$F,AUXCOUNT ;BUFFER CLR AUXAVERAGE TRUE: DEC AUXCOUNT BEQ AVERAGE MOV #2,ADSCR LPAW: BRCLR 7,ADSCR,LPAW MOV ADR,LEDM LDA LEDM CMP #$7F BCS TRUE INC AUXAVERAGE BRA TRUE
  • 9. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br AVERAGE: LDA AUXAVERAGE CMP #$B BCS FORWARD BACK: ;RETORNA [LEDM>(LEDL|LEDR)] MOV #$41,PTB ;RE AWAY: MOV #2,ADSCR LPA: BRCLR 7,ADSCR,LPA LDA ADR CMP #$7F BCC AWAY MOV #$42,PTB ;SENTIDO HORARIO MOV #1,TEMPO ;1SEG CLOCKWISE: LDA TEMPO BNE CLOCKWISE FORWARD: MOV #$82,PTB ;PARA FRENTE RTS TIM: BCLR 7,TSC0 ;LIMPA FLAG RTI ;DESEMPILHA E RETORNA TIMI: ;DECREMENTA TEMPO A CADA 1SEG INC CONT LDA CONT CMP #100 BNE SAIROT CLR CONT INC CONT+1 LDA CONT+1 CMP #5 BNE SAIROT CLR CONT+1 DEC TEMPO SAIROT: BCLR 7,TSC RTI ORG $FFF6 DC.W TIM
  • 10. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br ORG $FFF2 DC.W TIMI END Conclusão, através das implementações de softwares embutidos, montagem de interfaces e simulação de códigos utilizando o compilador Codewarrior, nosso aprendizado de conceitos de programação, compilação e funcionamento de microcontroladores aumentaram muito ao longo do semestre letivo. Principalmente em relação a projetos de pequeno e médio portes, utilizando linguagem C ou Assembly. Alcançamos códigos mais lógicos e leves, com reduzida ocupação de memória, interpretamos melhor manuais e "data sheets", praticamos o desenho e a simulação de pequenos circuitos, e, adquirimos um ponto de vista melhor, quanto ao caminho à ser percorrido no projeto de um protótipo. A utilização de microcontroladores de baixo custo, robustos e versáteis, como os da família HC08 da Freescale, nos permitiu entender, que o nível de qualidade e a confiabilidade, nem sempre dizem respeito ao investimento material, mas sim à engenharia aplicada no projeto. O protótipo (Protótipo - Figura 04) em funcionamento, energizado por uma fonte chaveada comum, pode ser visto em vídeo neste link: <http://youtu.be/FBhPfGrjlmM>.
  • 11. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br Protótipo - Figura 04
  • 12. PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS ISNTITUTO POLITÉCNICO Campus Coração Eucarístico – Unidade Belo Horizonte Av. Dom José Gaspar, 500, Prédio 03 – Bairro Coração Eucarístico – 30.535-610 – Belo Horizonte – MG Telefone: (0xx31) 3053-5901 – Endereço eletrônico: www.ipuc.pucminas.br REFERÊNCIAS MOTOROLA. Data Sheet MC68HC908QY4/D Rev. 0.1, 12/2002. © Motorola, Inc. 2002. http://motorola.com/semiconductors CNZ Engenharia e Informática Ltda. Treinamento de Microcontroladores Baseado na família MC68HC908QT/QY. www.cnz.com.br MOTOROLA. CPU08 Central Processor Unit Reference Manual Rev. 3, 2/2001. © Motorola, Inc. 2002. http://motorola.com/semiconductors MOTOROLA. Timer Interface Module 08 Rev. 1.0, 1996. © Motorola, Inc. 2002. http://motorola.com/semiconductors PEREIRA, Fábio. Microcontroladores HC908Q: teoria e prática. São Paulo: Érica, 2004. MALVINO, Albert Paul. Eletrônica. Ed. McGraw Hill.