ATIVIDADE PRATICA SUPERVISIONADA
Por: Hugo.bassi • 2/11/2017 • 1.940 Palavras (8 Páginas) • 572 Visualizações
...
A plataforma do robô contem dois motores de 6 vots. A corrente do motor sem carga é de 190 mA e a maxima é 250 mA.
O suporte de pilha que vem embutido é de 4 pilhas de 1,5 V. Observando o suporte, temos a impressão que as pilhas estão em paralelo, se fosse isso, teríamos um circuito com uma tensão de 1,5volts e com uma corrente elevada devido a somas das pilhas. A realidade é oposta da imagem.
[pic 5]
As pilhas estão em série e por isso que é feito a soma das tensões, onde se obtém a tensão de 6 volts. Já a corrente, ela mantém estável.
Depende do esforço do motor, ele aumenta o consumo de corrente. O Máximo de corrente que a placa arduino libera no pino I/O é de 40mA. Se o motor fosse ligado na placa arduino, ele iria aumentar a corrente que a placa libera, provocando o aquecimento e a danificação da placa.
Esse problema não atinge na pilha, pois ela fornece uma corrente suficiente para o motor sem compromete o próprio uso.
Portanto, o motor será alimentado pelas pilhas e a chave que o liga é o transistor PNP. O transistor contem “3 pernas”, sendo coletor, base e emissor. O polo negativo da pilha será ligado no polo emissor do transistor, o coletor irá receber a corrente do motor. Para o motor se ligado é necessário que o arduino mande energia nos pinos.
Se o carrinho for seguir linha reta é necessário que os dois motores sejam ligado juntos, dessa forma, o arduino irá mandar energia nos pinos digitais 12 e 13.
[pic 6]
Caso o carrinho necessita vira para direita, o arduino vai deixar de mandar energia no pino 12, fazendo com que motor direito desligue.
Como o motor esquerdo está ligado, o carrinho vai virar para direita. O processo para fazer o carrinho virar para esquerda é semelhante, o pino 13 deixará de mandar energia e o motor esquerdo vai ser desligado, como o motor direito está ligado o carrinho vai girar para esquerda.
A placa arduino irá fornecer a energia de 5 volts para os sensores LDRs.
O LDR é um resistor de corrente e tem a resistência diminuída conforme a intensidade luminosa. Á medida que a intensidade da luz aumenta, a sua resistência diminui.
Os LDRs estarão em posições distintas, um irá ficar no lado esquerdo e o outro no lado direito para captar os pontos de luminosidade que estão próximo do carrinho. Essas informações serão mandadas para a placa arduino que irá analisar a situação e mandar que o carrinho acompanhe o ponto de maior intensidade luminosa.
As leituras das informações serão feitas através dos pinos analógicos A0 e A5.
O pino analógico está sendo usado para captar as oscilações da resistência do LDR e transformando em sinal digital. Algo que não é possível ser feito com os pinos digitais da placa, pois trabalham no sistema HIGH e LOW, ou seja, 0 V ou 5 V.
[pic 7]
O sensor ultrasonico tambem irá utilizar tensão de 5 volts da placa arduino.
Além de fornecer energia, a placa arduino irá fornecer dois pinos digitais para ter a comunicação com o sensor. Os pinos cedidos são o 8 e 9 que estarão em comunicação com o pino TRIG “pino de gatilho” e o ECHO “pino de eco”. Objetivo de usar esse sensor é para evitar que o robo não bata em nenhum tipo de obstáculo que esteja na sua frente.
O sensor ultrassônico envia ondas as quais batem no objeto e voltam ao Robô o mesmo e capaz de saber a distância do obstáculo através da lógica, podendo calcular e desviar antes de se chocar com o obstáculo.
[pic 8]
4. Programação
1 Etapa. Definir as variáveis.
É usado “//” para fazer qualquer tipo de comentário, no projeto estão sendo usado para informar as variáveis. A sigla “int” significa variável, ela ocupa 16 bits de memória e armazena números inteiros.
Para escrever uma linha de uma variável é necessário escrever int + o nome da variável = porta do arduino que pode ser digital ou analógica e finalizando a linha do programa com ponto vírgula.
Ex: int sensorLDRdireito = A1;
Portanto, a porta analógica A1 vai ser identificada como sensor LDR direito.
A sigla “float” também é uma variável, porem, armazena valores fracionários de até 32 bits.
Variáveis
//pino analógico do LDR da Direitaint pinLDRDir = A0;
//variavel que receberá o valor do LDR da Direitafloat LDRDir = 0; //pino analogico do LDR da Esquerdaint pinLDREsq = A5;//variavel que receberá o valor do LDR da Esquerdafloat LDREsq = 0;//variavel que receberá o valor da distancia encontrada pelo
//Sensor Ultrassônicoint valorUS = 0;
//Pino do Sensor Ultrassônico
// que envia o sinal sonoroint PINO_Gatilho =9;
//Pino do Sensor Ultrassônico
// que recebe o sinal sonoro emitidoint PINO_ECO =8;
//pino de controle do motor da direitaint motor_di =12;
//pino de controle motor da esquerdaint motor_es =13;
2 Etapa. Executar o programa.
Para executar o programa é necessário o uso de duas funções indispensáveis na programação que são: void setup e void loop.
- Void setup(){ } – Responsável por configurar o hardware do arduino;
Dentro do programa void setup contém:
Chaves { } – aonde vão os procedimentos que a função deve executar;
Pinmode - Função para definir se a porta será INPUT “entrada” ou OUTPUT “saída” de dados;
Serial.begin(9600) - Definição da velocidade de transmissão do programa.
void setup() {//seta o pino de controle dos
...