Robo.pdf

download Robo.pdf

of 4

Transcript of Robo.pdf

  • Projeto Rob Janeiro 2015 Projetos com Micro

    Rob que Desvia de Obstculos

    Jos Wilson Lima Nerys

    Universidade Federal de [email protected]

    Abstract

    No presente projeto o rob desloca-se sempre para a frente, quando nenhum dos sensores detectaobstculo. Uma lgica de ao foi implementada para o deslocamento do rob na presena de obstculos.So previstas trs aes, de acordo com os obstculos detectados: seguir em frente; virar direita e virar esquerda. Outras lgicas foram desenvolvidas pelos alunos de Microprocessadores ao longo dos ltimosanos, mas aqui apresentada apenas uma delas.

    I. Introduo

    Oprojeto rob consiste em uma estrutura com duas rodas acionadas atravs de motores de cor-rente contnua (usando uma caixa de engrenagens - caixa de reduo) e duas rodas bobas,que permitem a mudana de direo e ajudam no equilbrio do rob. So utilizados 7 fotosen-sores numerados de S0 a S6, como ilustrado na Fig. 1. 1

    Figure 1: Esquemtico do Rob com Fotosensores

    O circuito desenvolvido mostrado na Fig.2. Um circuito decodificador usado para cadasensor para eliminar a influncia da luz ambiente; o fototransistor sensvel apenas para a luzemitida pelo Led, com frequncia aproximada de 1,2 kHz. Apenas o circuito decodificador dosensor S0 mostrado na figura. Assim, a presena de um obstculo faz a sada do circuitodecodificador mudar do nvel lgico um para o nvel zero.

    1Foram desenvolvidos vrios cdigos para o projeto rob; aqui apresentado apenas um deles.

    1

  • Projeto Rob Janeiro 2015 Projetos com Micro

    Figure 2: Circuito Parcial do Rob

    II. Fluxograma e Programa em Assembly do 8051

    O fluxograma mostrado na Fig.3 uma das possveis formas de controlar o rob. A Tab.1 ea Tab.2 mostram um mapa usado para definir as condies para virar para a esquerda, para adireita e seguir em frente. Essa tabela foi dividida em Tabela 1, com as condies para seguir emfrente e Tabela 2, com as condies para girar direita e esquerda.

    Table 1: Mapa para Deciso do Controle do Rob - Condies seguir em frente

    Sensores S6 S5 S4 S3 S2 S1 S0 Hex AoP1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0

    ACC.7 ACC.6 ACC.5 ACC.4 ACC.3 ACC.2 ACC.1 ACC.00 1 1 1 1 1 1 1 7FH Seguir em frente0 1 1 1 1 1 0 0 7CH Seguir em frente0 1 1 1 1 1 1 0 7EH Seguir em frente0 1 1 1 1 1 0 1 7DH Seguir em frente0 0 1 1 1 1 1 1 3FH Seguir em frente0 1 0 1 1 1 1 1 5FH Seguir em frente0 0 0 1 1 1 1 1 1FH Seguir em frente0 0 0 1 1 1 0 0 1CH Seguir em frente0 1 0 1 1 1 1 0 5EH Seguir em frente0 0 0 1 1 1 0 1 1DH Seguir em frente

    A leitura dos sensores feita de forma simultnea, atravs da porta P1. P1.7 o nico pinoda porta P1 a no possuir sensor. Dessa forma, a cada leitura da porta P1 o nvel lgico dessepino desconsiderado atravs de uma instruo AND.

    Verifica-se nas tabelas mostradas que so 10 (dez) as condies que levam o rob a seguir emfrente; 9 (nove) so consideradas para girar direita e 6 (seis), para girar esquerda.

    III. Montagem do Rob

    A montagem do rob mostrada na Fig.4. Trs baterias recarregveis (de ltio) de 3,7V sousadas para alimentar o sistema de controle e tambm os motores de corrente contnua. Osistema de controle tem um regulador de tenso (no mostrado na figura) para reduzir a tensode alimentao para 5V.

    2

  • Projeto Rob Janeiro 2015 Projetos com Micro

    Table 2: Mapa para Deciso do Controle do Rob - Condies Direita e Esquerda

    Sensores S6 S5 S4 S3 S2 S1 S0 Hex AoP1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0

    ACC.7 ACC.6 ACC.5 ACC.4 ACC.3 ACC.2 ACC.1 ACC.00 1 1 1 0 1 1 1 77H Direita at S3=10 0 0 0 0 1 1 1 07H Direita at S6=00 0 0 0 1 1 1 1 0FH Direita at S6=00 0 0 1 0 1 1 1 17H Direita at S6=00 0 1 0 0 1 1 1 27H Direita at S6=00 0 1 0 1 1 1 1 2FH Direita at S6=00 0 1 1 0 1 1 1 37H Direita at S6=00 1 1 0 0 0 1 1 63H Direita at S6=00 1 1 0 1 0 1 1 6BH Direita at S6=0

    0 1 1 1 0 0 0 0 70H Esquerda at S0=00 1 1 1 1 0 0 0 78H Esquerda at S0=00 1 1 1 0 1 0 0 74H Esquerda at S0=00 1 1 1 0 0 1 0 72H Esquerda at S0=00 1 1 1 1 0 1 0 7AH Esquerda at S0=00 1 1 1 0 1 1 0 76H Esquerda at S0=0

    Figure 3: Fluxograma para Controle do Rob

    3

  • Projeto Rob Janeiro 2015 Projetos com Micro

    Table 3: Programa de Controle do Rob

    Endereo Mnemnico Endereo Mnemnico Endereo MnemnicoM11 equ P3.0 Sensor: mov R0,P1 V4: cjne A,#07h,V5M12 equ P3.1 mov A,R0 sjmp DireitaM21 equ P3.2 anl A,#7FhM22 equ P3.3 cjne A,#7Fh,V1 V5: mov A,R0

    anl A,#78hS0 equ P1.0 Frente: setb M11 cjne A,#78h,V6S1 equ P1.1 clr M12S2 equ P1.2 setb M21 Esquerda: setb M11S3 equ P1.3 clr M22 clr M12S4 equ P1.4 sjmp Sensor clr M21S5 equ P1.5 setb M22S6 equ P1.6 V1: mov A,R0 jb S0,$

    anl A,#1Ch sjmp Sensororg 00h cjne A,#1Ch,V3ljmp Inicio sjmp Frente V6: cjne A,#70h,V7

    sjmp Esquerdaorg 30h V3: mov A,R0

    Inicio: mov sp,#2FH anl A,#0Fh V7: mov A,R0clr M11 cjne A,#0Fh,V4 anl A,#7Fhclr M12 cjne A,#63h,V8clr M21 Direita: clr M11 sjmp Direitaclr M22 setb M12

    setb M21 V8: cjne A,#6Bh,Sensorclr M22 sjmp Direitajb S6,$sjmp Sensor end

    Figure 4: Montagem do Robo

    4

    IntroduoFluxograma e Programa em Assembly do 8051Montagem do Rob