The Freescale Cup Racing Car

3
The Freescale Cup Racing Car Aline Cássia Bernardo Inst. Nac. de Telecomunicações – Inatel [email protected] Luan Magalhães de Souza Audrei Silva Inst. Nac. de Telecomunicações – Inatel [email protected] Evandro Luis Brandão Inst. Nac. de Telecomunicações – Inatel [email protected] Inst. Nac. de Telecomunicações – Inatel [email protected] Resumo – O presente artigo tem por objetivo enumerar os resultados obtidos a respeito do desenvolvimento do projeto “The Freescale Cup Racing Car”, para a competição nacional da Freescale. Palavras chaves – Robótica, Microcontroladores, Competição “The Freescale Cup Racing Car”. I. INTRODUÇÃO “The Freescale Cup Racing Car” é uma competição global onde estudantes utilizam de conhecimentos de software para fazer um carrinho percorrer uma pista em velocidade [1]. O carrinho deverá percorrer está pista no menor tempo possível e sem descarrilar. O carrinho é um composto por um chassi, motores DC para movimentá-lo, um servo (que o direciona – esquerda direita), placas de circuito impresso que comportam o microcontrolador e uma câmera. A pista de velocidade é um circuito branco com uma faixa preta ao centro da mesma, esta pista pode apresentar aclives e declives curvas com inúmeras angulações e obstáculos como lombadas e bifurcações. II. CODEWARRIOR CodeWarrior é um completo Ambiente de Desenvolvimento Integrado (IDE) que fornece uma estrutura altamente visual e automatizado para acelerar o desenvolvimento de aplicações incorporadas mais complexas. III. SISTEMA EMBARCADO Um sistema embarcado é um sistema de computador projetado para funções específicas de controle dentro de um sistema maior. Sistemas embutidos contêm núcleos de processamento que são ou microcontroladores ou processadores de sinais digitais (DSP). A principal característica, no entanto, está a ser dedicado a lidar com uma tarefa particular. IV. DESCRIÇÃO DE FUNÇÕES Figura 1-Diagrama de funções vfnSetup_CamLin – Essa função interpreta o sinal captado pela câmera, através da reflexão ou não da luz na pista e defini contadores de clocks a partir de pulsos, define também canais de PWM para cada um. vfnSet_Servo - Define o servo motor para uma posição em relação aos valores máximos e mínimos estabelecidos, podendo rotacionar o motor de 0º a 180º que vão direcionar as rodas para direita, esquerda e linha reta. vfnSet_Motor_Forward- Envia impulsos para a Ponte H para o motor ser polarizado normal (para a frente) ou invertido, dependendo da função, e para o motor parar, as saídas IN1 e IN2 devem ser ligadas a 5V . vfnSet_Motor_Velocity – Define a velocidade desejada para o motor através do aumento do sinal de PWM, se a velocidade medida for considerada lenta ou diminuindo o sinal de PWM, se a velocidade medida for considerada rápida. Ele funciona com um algoritmo proporcional integral. vfnInit_All - Chama todas as funções neste arquivo. Esta é a única função de Setup.c necessário para ser chamado no arquivo principal. V. MOTOR DC Os motores de corrente contínua (CC) ou motores DC (Direct Current), como também são chamados, são dispositivos que operam aproveitando as forças de atração e repulsão geradas por eletroímãs e imãs permanentes. Ao passar correntes elétricas por suas bobinas próximas, os campos magnéticos criados poderão fazer com que surjam forças de atração ou repulsão [2]. Figura 2-Atração e repulsão de bobinas Partindo então da posição inicial, em que os polos da bobina móvel (rotor), ao ser percorrido por uma corrente,

description

Freescale Cup

Transcript of The Freescale Cup Racing Car

  • The Freescale Cup Racing Car

    Aline Cssia Bernardo Inst. Nac. de Telecomunicaes Inatel

    [email protected]

    Luan Magalhes de Souza

    Audrei Silva

    Inst. Nac. de Telecomunicaes Inatel [email protected]

    Evandro Luis Brando

    Inst. Nac. de Telecomunicaes Inatel [email protected]

    Inst. Nac. de Telecomunicaes Inatel [email protected]

    Resumo O presente artigo tem por objetivo enumerar os resultados obtidos a respeito do desenvolvimento do projeto The Freescale Cup Racing Car, para a competio nacional da Freescale.

    Palavras chaves Robtica, Microcontroladores, Competio The Freescale Cup Racing Car.

    I. INTRODUO

    The Freescale Cup Racing Car uma competio

    global onde estudantes utilizam de conhecimentos de software para fazer um carrinho percorrer uma pista em velocidade [1]. O carrinho dever percorrer est pista no menor tempo possvel e sem descarrilar.

    O carrinho um composto por um chassi, motores DC para moviment-lo, um servo (que o direciona esquerda direita), placas de circuito impresso que comportam o microcontrolador e uma cmera.

    A pista de velocidade um circuito branco com uma faixa preta ao centro da mesma, esta pista pode apresentar aclives e declives curvas com inmeras angulaes e obstculos como lombadas e bifurcaes.

    II. CODEWARRIOR

    CodeWarrior um completo Ambiente de Desenvolvimento Integrado (IDE) que fornece uma estrutura altamente visual e automatizado para acelerar o desenvolvimento de aplicaes incorporadas mais complexas.

    III. SISTEMA EMBARCADO

    Um sistema embarcado um sistema de computador projetado para funes especficas de controle dentro de um sistema maior.

    Sistemas embutidos contm ncleos de processamento que so ou microcontroladores ou processadores de sinais digitais (DSP). A principal caracterstica, no entanto, est a ser dedicado a lidar com uma tarefa particular.

    IV. DESCRIO DE FUNES

    Figura 1-Diagrama de funes vfnSetup_CamLin Essa funo interpreta o sinal captado pela cmera, atravs da reflexo ou no da luz na pista e defini contadores de clocks a partir de pulsos, define tambm canais de PWM para cada um.

    vfnSet_Servo - Define o servo motor para uma posio em relao aos valores mximos e mnimos estabelecidos, podendo rotacionar o motor de 0 a 180 que vo direcionar as rodas para direita, esquerda e linha reta.

    vfnSet_Motor_Forward- Envia impulsos para a Ponte H para o motor ser polarizado normal (para a frente) ou invertido, dependendo da funo, e para o motor parar, as sadas IN1 e IN2 devem ser ligadas a 5V .

    vfnSet_Motor_Velocity Define a velocidade desejada para o motor atravs do aumento do sinal de PWM, se a velocidade medida for considerada lenta ou diminuindo o sinal de PWM, se a velocidade medida for considerada rpida. Ele funciona com um algoritmo proporcional integral.

    vfnInit_All - Chama todas as funes neste arquivo. Esta a nica funo de Setup.c necessrio para ser chamado no arquivo principal.

    V. MOTOR DC

    Os motores de corrente contnua (CC) ou motores DC (Direct Current), como tambm so chamados, so dispositivos que operam aproveitando as foras de atrao e repulso geradas por eletroms e ims permanentes.

    Ao passar correntes eltricas por suas bobinas prximas, os campos magnticos criados podero fazer com que surjam foras de atrao ou repulso [2].

    Figura 2-Atrao e repulso de bobinas

    Partindo ento da posio inicial, em que os polos

    da bobina mvel (rotor), ao ser percorrido por uma corrente,

  • esto alinhados com o im permanente temos a manifestao de uma fora de repulso. Esta fora de repulso faz o conjunto mvel mudar de posio [3].

    A tendncia do motor dar meia volta para seu polo Norte se aproxime do polo Sul do im permanente. Da mesma forma, seu polo Sul se aproximar do polo Norte pelo qual ser atrado.

    No entanto, no eixo do rotor, por onde passa a corrente que circula pela bobina, existe um comutador. A finalidade deste comutador inverter o sentido da circulao da corrente na bobina, fazendo com que os polos mudem [4].

    O resultado disso ser uma transformao da fora de atrao em repulso, o que far com que o rotor continue seu movimento, passando "direto" pela posio que seria de equilbrio. Sua nova posio de equilbrio seria obtida com mais volta, de modo que os polos do rotor se defrontassem com os de nome oposto do im fixa. Mais meia volta, e quando isso poderia ocorrer, a nova posio faz com que o comutador entre em ao e temos nova comutao da corrente. Com isso os polos se invertem [5].

    O resultado disso que o rotor no para, pois deve continuar em busca de sua posio de equilbrio.

    Evidentemente isso nunca vai acontecer, e enquanto houver corrente circulando pela bobina o rotor no vai parar. A velocidade de rotao deste tipo de motor no depende de nada a no ser da fora que o rotor tenha de fazer para girar. Desta forma, os pequenos motores de corrente contnua tm uma velocidade muito maior quando giram livremente do que quando girar fazendo algum tipo de esforo (movimento alguma coisa). Igualmente, a corrente exigida pelo motor depende da oposio que o rotor encontra para sua movimentao. Fazendo mais fora, o consumo aumento sensivelmente [6].

    VI. PONTE H

    Ponte H um circuito eletrnico que permite que um micro controlador controle um motor DC, o micro controlador por s no consegue "dar" a corrente necessria para o funcionamento do motor, e ainda torna possvel que o motor rode tanto para um sentido quanto o outro. Estes circuitos so geralmente utilizados em robtica e esto disponveis em circuitos prontos ou podem ser construdos por componentes [7].

    Figura 3-Funcionamento Bsico Ponte H

    VII. CONTROLE DO SERVO MOTOR

    Servo motor uma mquina, mecnica ou eletromecnica, que apresenta movimento proporcional a um comando, em vez de girar ou se mover livremente sem um controle mais efetivo de posio como a maioria dos motores.

    So dispositivos de malha fechada, ou seja, recebem um sinal de controle, verificam a posio atual e atuam no sistema indo para a posio desejada.

    Em contraste com os motores contnuos que giram indefinidamente, o eixo do servo motores possui a liberdade de apenas cerca de 180 graus, mas so precisos quanto a posio [8].

    constitudo de trs partes: sistema atuador, sensor e circuito de controle.

    O sistema atuador constitudo por um motor eltrico, embora tambm possa encontrar servos com motores de corrente alternada, a maioria utiliza motores de corrente contnua. Tambm est presente um conjunto de engrenagens que forma uma caixa de reduo com uma relao bem longa o que ajuda a amplificar o torque.

    O tamanho, torque e velocidade do motor, material das engrenagens, liberdade de giro do eixo e consumo so caractersticas-chave para especificao do servo motor.

    O sensor normalmente um potencimetro solidrio ao eixo do servo. O valor de sua resistncia eltrica indica a posio angular em que se encontra o eixo. A qualidade desses vai interferir na preciso, estabilidade e vida til do servo motor.

    O circuito de controle formado por componentes eletrnicos discretos ou circuitos integrados e geralmente composto por um oscilador e um controlador PID (controle proporcional integrativo e derivativo) que recebe um sinal do sensor (posio do eixo) e o sinal de controle e aciona o motor no sentido necessrio para posicionar o eixo na posio desejada.

    Servos possuem trs fios de interface, dois para alimentao e um para o sinal de controle. O sinal de controle utiliza o protocolo PPM (modulao por posio do pulso) que possui trs caractersticas bsicas: largura mnima, largura mxima e taxa de repetio (frequncia).

    A largura do pulso de controle determinar a posio do eixo:

    - largura mxima equivale ao deslocamento do eixo em + 90 da posio central;

    - largura mnima equivale ao deslocamento do eixo em -90;

    - demais larguras determinam a posio proporcionalmente. O pulso de controle pode ser visto na ilustrao sobre sinais de controle de servo motor.

    Em geral, a taxa de repetio 50 Hz e a largura do pulso do sinal de controle varia de 1 a 2ms. Porm um servo motor pode funcionar a 60Hz tambm [9].

  • VIII. CONTROLE DE VELOCIDADE DO MOTOR DC

    Para controlar a velocidade do motor de corrente contnua, um algoritmo em linguagem C foi criado. Ele usa uma varivel que controla a velocidade e aumentado ou diminudo, se no estiver a rodar a uma pr-selecionada velocidade.

    Para fazer esta aplicao, algum hardware necessrio para medir a velocidade do motor. Ele pode ser feito com um LED infravermelho e um sensor opto-eletrnico, com um sensor de efeito Hall e ms, ou muitas outras formas. Um trem de impulsos quadrados obtida como a sada do sensor desta implementao. Isto chamado "velocmetro". Uma vez que o "velocmetro" implementado, o software desenvolvido para traduzir a sada em velocidade medida. O driver para medir essa entrada de velocidade usa SAIC (Single Action Input Capture - funcionalidade e MIOS; para calcular o perodo, e este utiliza um contador de mdulo (MCB) no MPC5604B - tambm pode usar algumas outras funcionalidades e MIOS; como IPWM (Entrada de medio de largura de pulso)).

    Uma vez que o perodo obtido, a velocidade medida igual circunferncia da roda do carro dividido pelo tempo de uma volta completa. No entanto, devido ao tempo disponvel e que foram incapazes de completar a rotao do motor conjunto via PWM.

    IX. CMERA RCA

    A cmera um sensor de imagem e uma lente e funciona da seguinte forma; a lente nela contida recebe a luz que se reflete do ambiente, esta luz penetra a lente chegando ao sensor. Este sensor composto por uma matriz capacitiva que varia sua capacitncia conforme feita a variao da luz.

    A cmera RCA fornece em sua sada 30 quadros por segundo, 60 imagens. Nesta cmera a velocidade e facilidade de processamento so considerveis.

    As cmeras RCA apresentam uma vista panormica, isto faz com que uma curva possa ser detectada de forma precoce. O usurio no necessita se preocupar com a iluminao visto que um ganho automtico, compensao e auto contraste sero habilitados.

    X. CONCLUSO

    O presente artigo apresentou o resultado obtido aps um ano de pesquisas e desenvolvimento dedicados a elaborao do prottipo para a competio The Freescale Cup Racing Car Brazil.

    Nosso trabalhou iniciou-se a partir de um estudo mais detalhado sobre o Kit da Freescale, o MPC5604B, que a plataforma de desenvolvimento utilizada na competio. Ela nos permitiu as mais diversas possibilidades de emulaes, e uma ampla gama de perifricos que poderiam ser utilizados para melhorar o desempenho do nosso prottipo.

    Com nossa participao na competio no ano passado, tivemos o privilgio de acompanhar de perto o

    trabalho das demais equipes que vieram de todo o Brasil para o evento.

    XI. REFERNCIAS

    [1]http://www.freescale.com/webapp/sps/site/overview.jsp?code=UNIV_SMARTCAR_HM [2] http://www.sabereletronica.com.br/secoes/leitura/1742 [3] http://www.newtoncbraga.com.br/index.php/como-funciona/3414-art476a [4] http://www.newtoncbraga.com.br/index.php/como-funciona/3414-art476a [5] http://www.newtoncbraga.com.br/index.php/como-funciona/3414-art476a [6] http://www.newtoncbraga.com.br/index.php/como-funciona/3414-art476a [7] http://pt.wikipedia.org/wiki/Ponte_H [8] http://pt.wikipedia.org/wiki/Servomotor [9] http://pt.wikipedia.org/wiki/Servomotor