Marcadores

sábado, 5 de novembro de 2011

Códigos Complementares

Por Daniel Atilio (05/11/2011)

Olá a todos que acompanham o nosso blog, semana passada postei um código do nosso MiniProjeto, hoje irei postar sobre os códigos complementares que nós fomos fazendo para as melhorias do nosso robô. Dentre eles estão o código de ascender leds e o de fazer os servomotores rotacionarem, segue abaixo:

/..................................LEDS
//declaração de variáveis
const int buttonPin = 2; // Push button
const int ledPin_1 = 13; // Led vermelho
const int ledPin_2 = 12; // Led verde
const int ledPin_3 = 10; // Led amarelo
const int ledPin_4 = 8; // Led azul

int buttonState = 0; // Variável que vai guardar o resultado do botão

//......................:>Setando as variáveis mostrando se são de entrada ou saída (INPUT ou OUTPUT)
void setup(){
pinMode(ledPin_1, OUTPUT);
pinMode(ledPin_2, OUTPUT);
pinMode(ledPin_3, OUTPUT);
pinMode(ledPin_4, OUTPUT);
pinMode(buttonPin, INPUT);
Serial.begin(9600); //Dando início no Serial (mostra a execução em tempo real, além de outras funções)
}

//Programa principal que ficará rodando até ser parado
void loop(){
buttonState = digitalRead(buttonPin); //Variável que vai guardar o resultado do botão, se está pressionado ou não
Serial.println("Estado do botao: "); //vai imprimir uma mensagem na tela
Serial.println(buttonState, BIN); //vai imprimir o valor da variável em binário, 0 ou 1 (desligado ou ligado)
if (buttonState == HIGH) { //se o botão estiver pressionado
//ligando todos os Leds
digitalWrite(ledPin_1, HIGH);
digitalWrite(ledPin_2, HIGH);
digitalWrite(ledPin_3, HIGH);
digitalWrite(ledPin_4, HIGH);
}
if (botaoEstado == LOW) {
//desligando todos os Leds
digitalWrite(ledPin_1, LOW);
digitalWrite(ledPin_2, LOW);
digitalWrite(ledPin_3, LOW);
digitalWrite(ledPin_4, LOW);
}
}

//..............FIM

//.....................................MOTOR
#include //incluindo biblioteca para o tratamento do ServoMotor

//declaração de variáveis
Servo direita,esquerda; //variáveis que vão representar os motores
char andar[] = {120,200,200,200,200,120,120,120};
char andar2[] = {160,280,280,280,280,160,160,160};
//vetores char que irão guardar valores que irão ser processados para passar para o servo motor

//......................:>Setando as variáveis mostrando onde que estão os pinos
void setup(){
direita.attach(9);
esquerda.attach(12);
}

//Programa principal que ficará rodando até ser parado
void loop(){
For (int n=0; n<4; n++) //Laço de repetição que ficará sempre aumentando a rotação dos motores
{
direita.write(andar2[(2*n)+1]); //fazendo o motor girar
esquerda.write(andar[(2*n)]);
}
}
//.............FIM

Nenhum comentário:

Postar um comentário