PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ

CURSO DE ENGENHARIA DE COMPUTAÇÃO

DISCIPLINA DE MICROPROCESSADORES II

PROJETO ROBÔ

 

EQUIPE:

Margareth Suchÿ

Fábio Henrique Mazarotto

Luiz Teruhiko Akagi

 

Vídeo

 

Escopo

 

            O projeto trata da construção de um robô com rodas (dois motores) que deverá seguir uma linha desenhada em preto, a qual definirá o trajeto que o protótipo deverá tomar. O percurso será reconhecido através de sensores infravermelhos, colocados na parte inferior do modelo.

            O robô terá dimensões reduzidas, será alimentado por pilha e o controle será feito por um microcontrolador, cujos modelos disponíveis serão estudados para a melhor adequação da equipe.

            Outras capacidades poderão ser implementadas durante o projeto, como o desvio de objetos colocados no trajeto, dependendo da disponibilidade de tempo.

 

Projeto mecânico

 

            O protótipo resume-se a duas rodas de tração independente, cada uma com um motor de corrente contínua controlado independentemente, fixados a uma base que servira de suporte para todo o robô. Para apoio, uma roda boba será fixada em uma das extremidades da base.

            A base da estrutura será de material leve (em forma de chapa), sobre a qual serão fixados dois motores DC (corrente continua). Será pesquisado o material mais adequado para a base; algumas alternativas são acrílico, madeira balsa, PVC ou uma mesmo placa de fenolite.

            Em princípio não serão necessárias caixas de redução, uma vez que serão concentrados esforços em deixar a estrutura leve e compacta. Desse modo, rodas de aproximadamente três centímetros de diâmetro, serão acopladas diretamente nos eixos dos motores. Rodas de menor diâmetro poderão ser usadas se for necessário maior torque para o sistema, o que só poderá ser definido quando o consumo dos módulos forem previstos e, conseqüentemente, o tamanho mínimo para as fontes de energia.

            Sobre a base fixadores para as placas dos circuitos serão colocados, bem como para as baterias. Todo o projeto é pensado para ser o mais simples possível na parte mecânica, deixando maior tempo para a implementação da inteligência do sistema de automação. O protótipo deverá ser similar ao que apresenta-se sucintamente na figura 1.

Figura 1: esquema do projeto mecânico do protótipo – em linha tracejada a roda de apoio, em preto as rodas tracionadas. O desenho não está em escala e não é definitivo.

 

 

 

Projeto de pista:

           

            A pista de provas será um trajeto sinuoso, em circuito fechado, que o protótipo deve percorrer, desenhado em alto-contraste para gerar grande diferença de sinal nos sensores. Para maior mobilidade o material da pista será de papel cartolina, ou possivelmente outro material pesquisado poderá ser usado, seria conveniente um material de maior reflexibilidade luminosa, com um revestimento plástico adesivo ou similar – mas a sua necessidade também deverá ser pesquisada.

 

Projeto dos Sensores:

 

Para este projeto iremos utilizar sensores infra-vermelho; especificamente, um conjunto formado por um LED infra-vermelho (atuando como emissor) e um fototransístor (atuando como receptor).

Os testes realizados apontam os componentes TIL78 e TIL32 como opções de baixo custo, baixo consumo e alta velocidade de resposta.

Para medição do tempo de resposta, foi aplicado um pulso no LED, que fez o transistor comutar em menos de 100µs, o que para efeitos práticos é mais do que necessário para se obter uma resposta em tempo real. Na figura 1 observa-se dados coletados durante o teste, através de um osciloscópio. No canal 1 (onda superior) está o sinal aplicado ao LED, e o canal 2 (onda inferior) a resposta fornecida pelo fototransístor. A atenuação no tempo de subida da segunda onda é devido ao tempo que o fototransístor leva para mudar de nível lógico, e é facilmente detectada na forma da onda.

Durante os teste observou-se com clareza que a distância entre o emissor e o receptor interfere de um modo drástico na intensidade do sinal final. Entretanto, ajustando os componentes de maneira conveniente, foi possível obter um sinal que varia entre 0.7V e 5,2V, o que é ideal para ser utilizado junto a uma porta TTL, como as portas de entrada do PIC, não necessitando de conversão analógico/digital. Dispondo-se os componentes com uma distância de aproximadamente 50mm já foi possível obter esse sinal. Para tal foram usadas superfícies refletoras e não refletoras simples, como folhas de papel pintadas e disquetes para se obter o nível lógico zero (ver figura 3) e folhas de papel em branco para se obter o nível lógico um (ver figura 2).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


figura 2: resposta do fototransístor usando-se uma superfície refletora

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


figura 3: resposta do fototransístor usando-se uma superfície não-refletora

 

O consumo médio esperado para o circuito é de 41mA, com o LED aceso e o fototransístor conduzindo, o que é facilmente suprido com o uso de baterias pequenas. O tamanho do circuito é reduzido, ou seja, o peso do circuito não causará um impacto no peso total do protótipo, dessa forma, outros módulos do projeto terão papel mais relevante no projeto da fonte de alimentação. Far-se-ão uso de  dois pares LED/fototransístor, cada um em um lado do protótipo; tal circuito é observado na figura 4.

 

 

 

 

 

 


figura 4: circuito utilizado para os testes.

 

 

 


figura 5: diagrama circuito implementado.

 

 

Projeto eletrônico do microprocessador

 

Será utilizado o microprocessador PIC16F873.

Para os sensores; estaremos utilizando três pinos. Duas conectadas diretamente aos CI's receptores e uma terceira que irá ligar os dois CI´s emisores.A princípio os emissores estarão chaveados diretamente em nível lógico 1 (um).

Para o controle dos motores serão utilizadas mais 2 saídas; uma para cada motor. Estas serão conectadas às etapas de potência do tipo FULL Drive; possibilitando ao protótipo se locomover nos dois sentidos.

As saídas dos motores serão do tipo PWM, para que possibilitar o controle de sua velocidade e sentido; portanto estaremos utilizando 2 timers do PIC para configurá-las (timer 1 e timer 2). Como o período do timer é o inverso da freqüencia necessária, esta será setada para aproximadamente 3.

Para maior eficiência dos motores, o sinal PWM deverá estar em freqüência aproximada de 3kHz, pois com freqüência menor o consumo aumenta muito por que não se consegue gerar um efeito indutivo nas bobinas do motor. Com uma freqüência maior os transistores Darlington têm dificuldades no chaveamento, começando a discipar muita potência. Desse modo o clock necessário para o microprocessador deve estar na faixa dos 3MHz, uma vez que a freqüência do PWM é proporcional à freqüência de clock, sobrarando recursos para a leitura dos sensores e controle dos motores. Desse modo o consumo esperado se enquadra na seguinte categoria descrita pelo do datasheet: < 2 mA typical @ 5V, 4 MHz, ou seja, menor que 2 mA.

Os pinos que serão utilizados estão descritos na tabela 1 e são mostrados na figura 6.

 

 

Tabela 1. Pinos de Entrada e Saída e suas Funções

1

Master Clear: sempre em nível lógico 1

8

Alimentação: GND

9

Cristal IN

10

Cristal OUT

12

Saída PWM1

13

Saída PWM2

19

Alimentação: GND

20

Alimentação: Vcc

21

Entrada do Sensor 1

22

Entrada do Sensor 2

23/24

LEDs dos sensores 1 e 2

 

Figura 6. Pinos de Entrada e Saída necessários

 

 

Programação do Microcontrolador

 

Programa Implementado

 

O programa foi adquirindo maiores proporções no decorrer do projeto, conforme foi sendo verificada a possibilidade de melhorias. A principal diferença do projeto inicial para o atual é a leitura dos sensores. Inicialmente a proposta era de fazer as leituras por pinos de entra comuns (nível TTL), agora são feitos da entrada analógica, capaz de perceber as menores variações na leitura dos sensores e passá-los aos motores em forma de variação de potência. Isso contribuiu em muito para maior robustês do projeto, de tal forma que hoje o robô consegue tratar bem situações adversas, tal como adequar o movimento à curvatura da curva ou erros, como se encontrar com ambos sensores em cima da linha.

O programa se baseia em duas partes principais que se intercalam dentro do loop principal. Primeiramente são feitas as amostragem dos valores nas portas analógicas AN0 e AN1. A segunda parte é a adequação desses valores, que então são usados para configurar os bits do tamanho do pulso gerado pelo PWM (duty cicle).

A conversão é feita habilitando-se a porta que deseja-se amostrar e esperando o seu término. Uma vez que a amostragem da porta é feita, os 8 bits mais significativos são copiados para um registrador reservado. Com esse passo concluído, o segundo passo é adequar a leitura, que varia de 0 a 255, linearmente para uma variação entre 0 e 167, faixa na qual o PWM trabalha para que sua freqüência fique em 3kHz (a faixa ótima do motor). Desse modo, a potência fornecida aos motores é diretamente proporcional à leitura dos sensores, ou seja, proporcional à distância da faixa.


Fluxograma do Programa

 

 

Relatório Final:

           

Ao final o protótipo conseguiu realizar o seu objetivo, seguir uma linha demarcada; mas é importante destacar que foram encontradas diversas dificuldades na sua construção.

As principais foram: o ajuste dos sensores e a alimentação.

Com relação ao ajuste dos sensores, para um funcionamento perfeito é importante que eles estejam dispostos de tal forma a minimizar a interferência entre eles (que possam receber apenas sinal infravermelho por reflexão) e do ambientes externo.

Sobre a alimentação, foi detectado que o módulo inversor; composto de um CI 7404 não era capaz de fornecer a corrente necessária às etapas de potência; fazendo com que o protótipo não se locomovesse para trás.

Esse problema foi corrigido utilizando transistores BC548 como inversores, substituindo o CI 7404.

A parte mecânica do projeto dificultou o processo; havendo mais redução, a resposta aos sensores seria melhor e evitaria quais problemas devidos à inércia.

Devido a estas dificuldades o protótipo percorreu o caminho com grande instabilidade.

           

           

 

 

Fotos:

 

 

 


Figura 7: protótipo sobre a pista.

 

 

 

 

 


Figura 8: protótipo durante sua construção.