Manual Robô uMaRT-INO

7

Click here to load reader

Transcript of Manual Robô uMaRT-INO

Page 1: Manual Robô uMaRT-INO

/micromouseBrasil 2015 – Kleber Lima da Silva

/micromouseBrasil – A primeira comunidade de micromouse do Brasil Site: www.kleberufu.wix.com/micromousebrasil E-mail: [email protected]

Manual do Usuário – Robô µMaRT-INO V1.1

Índice

1. Descrição Geral ...................................................................................................................... 1

2. Informações Técnicas ............................................................................................................ 1

3. Conhecendo o µMaRT-INO .................................................................................................... 1

4. Alimentação ........................................................................................................................... 2

5. Seleção do Modo ................................................................................................................... 2

6. Mapeamento de Pinos .......................................................................................................... 3

6.1. Modo micromouse (solucionador de labirinto) ............................................................ 3

6.2. Modo robotracer (seguidor de linha) ............................................................................ 3

6.3. Pinos em comum ........................................................................................................... 3

7. Comunicação ......................................................................................................................... 4

8. Programação ......................................................................................................................... 4

8.1. Template com as definições e inicializações dos pinos................................................. 4

9. Advertências de Segurança ................................................................................................... 5

10. Diagrama Eletrônico .............................................................................................................. 6

Page 2: Manual Robô uMaRT-INO

Manual do Usuário – Robô µMaRT-INO V1.1 2015 – Kleber Lima da Silva

/micromouseBrasil – A primeira comunidade de micromouse do Brasil 1 Site: www.kleberufu.wix.com/micromousebrasil E-mail: [email protected]

1. Descrição Geral

O robô µMaRT-INO é um kit educacional de robótica destinado ao aprendizado no

desenvolvimento de robôs solucionadores de labirinto (micromouse) e robôs seguidores de

linha (robotracer). Esta versão é específica para o uso com a plataforma Arduino UNO ou

Leonardo.

Esta plataforma robótica é completa e de alto desempenho. Ela conta com dois

micromotores com caixa de redução de metal, encoders independentes de 360 pulsos por

revolução (ppr), seis sensores de linha, quatro sensores de parede, conector para depuração

ou controle sem fio via módulo Bluetooth (não incluso), um botão e dois LEDs para interação

com o usuário. Capaz de atingir velocidades de até 2,0m/s, o µMaRT-INO é um ótimo kit para

quem está começando ou até mesmo para utiliza-lo em competições de robótica.

2. Informações Técnicas

Dimensões (comprimento, largura, altura): 95x89x40mm

Peso (sem bateria, com o Arduino): 100g

Microcontrolador: Arduino UNO (ATmega328) ou Arduino Leonardo (ATmega32u4)

Tensão de entrada (bateria): 6 – 9 V

Motores: micromotor Pololu com caixa de redução de metal 30:1 HP (1000 rpm)

Rodas: 32x7mm (plástico e borracha)

Encoders: magnético em quadratura (360 pulsos por revolução)

Sensores de linha: QRE1113GR

Sensores de parede: SFH4545 (LED) / TEFT4300 (fototransistor)

Ponte H dos motores: TB6612FNG

3. Conhecendo o µMaRT-INO

- Vista Superior:

Page 3: Manual Robô uMaRT-INO

Manual do Usuário – Robô µMaRT-INO V1.1 2015 – Kleber Lima da Silva

/micromouseBrasil – A primeira comunidade de micromouse do Brasil 2 Site: www.kleberufu.wix.com/micromousebrasil E-mail: [email protected]

- Vista Inferior:

4. Alimentação

O robô µMaRT-INO pode ser alimentado pelo conector USB do Arduino ou através do

conector J1 (“Conector da Bateria”, ver Vista Superior).

Ao alimentar o robô pelo cabo USB os motores terão sua potência e velocidade reduzidas

devido à limitação de corrente da porta USB.

Quando utilizar a alimentação externa através do conector J1 verificar a polaridade de

acordo com a simbologia da placa, (+) positivo e (-) negativo.

5. Seleção do Modo

Nota-se que o Arduino pode ser encaixado em duas posições diferentes. Este recurso é

utilizado para mudar as ligações dos pinos do Arduino para os sensores adequados de cada

modo (micromouse ou robotracer). Portanto, um fato importante que deve ser notado antes

de colocar o robô em operação é se o Arduino está posicionado corretamente:

Page 4: Manual Robô uMaRT-INO

Manual do Usuário – Robô µMaRT-INO V1.1 2015 – Kleber Lima da Silva

/micromouseBrasil – A primeira comunidade de micromouse do Brasil 3 Site: www.kleberufu.wix.com/micromousebrasil E-mail: [email protected]

6. Mapeamento de Pinos

6.1. Modo micromouse (solucionador de labirinto)

Arduino Descrição Observações

A0 Fototransistor frontal esquerdo (Q1) Entradas analógicas que recebem valores inversamente proporcionais à distância das paredes (quanto maior o valor, menor é a

distância)

A1 Fototransistor lateral esquerdo (Q2)

A2 Fototransistor lateral direito (Q3)

A3 Fototransistor frontal direito (Q4)

A4 LED frontal esquerdo (D1) Saídas digitais que devem ser acionadas (HIGH) para realizar as leituras dos

fototransistores D13 LEDs laterais (D2 e D3)

A5 LED frontal direito (D4)

6.2. Modo robotracer (seguidor de linha)

Arduino Função Observações

A0 Sensor de linha 6 (U11)

Podem ser usados como entradas analógicas ou digitais. LOW = branco e HIGH = preto

A1 Sensor de linha 5 (U10)

A2 Sensor de linha 4 (U9)

A3 Sensor de linha 3 (U8)

A4 Sensor de linha 2 (U5)

A5 Sensor de linha 1 (U4)

D13 LEDs dos sensores de linha Deve ser ligado (HIGH) para realizar a leitura

dos sensores

6.3. Pinos em comum

Arduino Função Observações

D0 LED1 / RX LEDs indicadores (acendem com HIGH) ou UART para depuração via módulo Bluetooth D1 LED2 / TX

D2 Encoder do motor esquerdo (sinal B)

Sinais dos encorders por quadratura D3 Encoder do motor direito (sinal A)

D4 Encoder do motor esquerdo (sinal A)

D5 Encoder do motor direito (sinal B)

D6 PWM do motor esquerdo

D7 IN2 da ponte H do motor esquerdo IN1 = HIGH e IN2 = LOW: motor para frente

D8 IN1 da ponte H do motor esquerdo IN1 = LOW e IN2 = HIGH: motor para trás

D9 IN1 da ponte H do motor direito IN1 = LOW e IN2 = LOW: para por inércia

D10 IN2 da ponte H do motor direito IN1 ≠ IN2 e PWM = 0: freio

D11 PWM do motor direito

D12 Botão SW1 Botão pressionado = HIGH

Page 5: Manual Robô uMaRT-INO

Manual do Usuário – Robô µMaRT-INO V1.1 2015 – Kleber Lima da Silva

/micromouseBrasil – A primeira comunidade de micromouse do Brasil 4 Site: www.kleberufu.wix.com/micromousebrasil E-mail: [email protected]

7. Comunicação

O software Arduino (IDE) inclui o monitor serial, o qual permite que textos simples sejam

enviados de e para o robô através da comunicação serial pela USB do Arduino.

Outro tipo de comunicação com um computador ou com um smartphone é por meio de

um módulo Bluetooth (não incluso) conectado ao conector J2 (“Conector para Módulo

Bluetooth”, ver Vista Superior).

8. Programação

O robô pode ser programado pelo software Arduino (IDE) como qualquer outro projeto

Arduino. A seguir é apresentado um template já com os nomes dos pinos e suas respectivas

configurações. No site www.kleberufu.wix.com/micromousebrasil serão disponibilizados

alguns exemplos básicos de código.

8.1. Template com as definições e inicializações dos pinos

#include "Arduino.h"

// Define o modo do robô MICROMOUSE ou ROBOTRACER ----------------

#define MICROMOUSE

// Definição dos pinos no modo MICROMOUSE ------------------------

#if defined(MICROMOUSE)

const int FE_RECEPTOR = A0; // Fototransistor frontal esquerdo

const int LE_RECEPTOR = A1; // Fototransistor lateral esquerdo

const int LD_RECEPTOR = A2; // Fototransistor lateral direito

const int FD_RECEPTOR = A3; // Fototransistor frontal direito

const int FE_EMISSOR = A4; // LED frontal esquerdo

const int L_EMISSORES = 13; // LEDs laterais

const int FD_EMISSOR = A5; // LED frontal direito

// Definição dos pinos no modo ROBOTRACER ------------------------

#elif defined(ROBOTRACER)

const int LINHA6 = A0; // Sensor de linha 6 (esquerda)

const int LINHA5 = A1; // Sensor de linha 5

const int LINHA4 = A2; // Sensor de linha 4

const int LINHA3 = A3; // Sensor de linha 3

const int LINHA2 = A4; // Sensor de linha 2

const int LINHA1 = A5; // Sensor de linha 1 (direita)

const int EMISSORES = 13; // LEDs dos sensores de linha

#endif

// Definição dos pinos em comum ----------------------------------

const int LED1 = 0; // LED1

const int LED2 = 1; // LED2

const int B_ENC_E = 2; // Encoder do motor esquerdo (sinal B)

const int A_ENC_D = 3; // Encoder do motor direito (sinal A)

const int A_ENC_E = 4; // Encoder do motor esquerdo (sinal A)

const int B_ENC_D = 5; // Encoder do motor direito (sinal B)

const int PWM_E = 6; // PWM do motor esquerdo

const int IN2_E = 7; // IN2 da ponte H do motor esquerdo

const int IN1_E = 8; // IN1 da ponte H do motor esquerdo

const int IN1_D = 9; // IN1 da ponte H do motor direito

Page 6: Manual Robô uMaRT-INO

Manual do Usuário – Robô µMaRT-INO V1.1 2015 – Kleber Lima da Silva

/micromouseBrasil – A primeira comunidade de micromouse do Brasil 5 Site: www.kleberufu.wix.com/micromousebrasil E-mail: [email protected]

const int IN2_D = 10; // IN2 da ponte H do motor direito

const int PWM_D = 11; // PWM do motor direito

const int SW1 = 12; // Botão SW1

// Inicialização dos pinos ---------------------------------------

void setup()

{

#if defined(MICROMOUSE)

pinMode(FE_RECEPTOR, INPUT);

pinMode(LE_RECEPTOR, INPUT);

pinMode(LD_RECEPTOR, INPUT);

pinMode(FD_RECEPTOR, INPUT);

pinMode(FE_EMISSOR, OUTPUT);

pinMode(L_EMISSORES, OUTPUT);

pinMode(FD_EMISSOR, OUTPUT);

#elif defined(ROBOTRACER)

pinMode(LINHA6, INPUT);

pinMode(LINHA5, INPUT);

pinMode(LINHA4, INPUT);

pinMode(LINHA3, INPUT);

pinMode(LINHA2, INPUT);

pinMode(LINHA1, INPUT);

pinMode(EMISSORES, OUTPUT);

#endif

pinMode(LED1, OUTPUT);

pinMode(LED2, OUTPUT);

pinMode(PWM_E, OUTPUT);

pinMode(IN1_E, OUTPUT);

pinMode(IN2_E, OUTPUT);

pinMode(PWM_D, OUTPUT);

pinMode(IN1_D, OUTPUT);

pinMode(IN2_D, OUTPUT);

pinMode(SW1, INPUT);

}

// LOOP principal do programa ------------------------------------

void loop()

{

}

9. Advertências de Segurança

- O kit é inteiramente testado antes da entrega e sua garantia cobre apenas defeitos de

fabricação.

- Alimentar o robô com tensões fora dos limites indicados ou com polaridade inversa pode

danificar o robô e/ou o Arduino.

- Usar o Arduino conectado em um modo, mas utilizar um programa não adequado

(configurações de pinos erradas) também pode danificar tanto o robô como o Arduino.

- O robô com os motores em velocidade máxima pode atingir até 2,0 m/s, portanto, inicie

os testes com velocidades baixas para evitar choques mecânicos.

Page 7: Manual Robô uMaRT-INO

Manual do Usuário – Robô µMaRT-INO V1.1 2015 – Kleber Lima da Silva

/micromouseBrasil – A primeira comunidade de micromouse do Brasil 6 Site: www.kleberufu.wix.com/micromousebrasil E-mail: [email protected]

10. Diagrama Eletrônico