Ola Galera,Desculpa o incomodo mais estou trabalhando em um projeto para a Faculdade.
O proposito é o seguinte:
Ao ser acionado um Pushbottom o braco robotico ira pegar uma latinha de cerveja(sera utilizado a garra robotica MKII com mais quatroservo motores na base do braco)os servos motores se moveram simultaneamente(um led Ficara Piscando em todo o processo de movimentacao dos servo Motores).
Localizando a latinha na frente de dois pistoes,os servos iram colocar a latinha no compatimento para ser esmagada e recuar ,Logo em seguida um pistao sera acionado esmagando a latinha depois ele ira recuar e o outro pistao sera acionado expusando a latinha para a esteira,depois ele ira recuar(um Buzzer vai ficar emitindo sons em todo momento neste processo).
Depois da latinha na esteira sera acionado dois motores(controlando a velocidade por Potenciometro) E depois de 30s a esteira ira desligar.
Os servos e o motor de passo ira retornar para o local de origem.
Possibilitando assim um novo processo.
Galera Oq eu conssegui fazer esta aqui se puderem me deem uma forcinha ai por favor.
Desde ja agradeco a todos.
#include <Servo.h>
Servo myservo;
Servo myservo1;
Servo myservo2;
Servo myservo3;
int Motor = 50;
int Led = 31;
int buzzer = 28;
int Potenciometer_Motor = A0;
int acionamento_pistao1 = 2;
int acionamento_pistao2 = 3;
int recuo_pistao1 = 4;
int recuo_pistao2 = 5;
int botton = 6; // escolha o pino de entrada (para o interruptor)
int val = 0; // variável para ler o estado do interruptor
void setup() {
myservo.attach(7);
myservo1.attach(8);
myservo2.attach(9);
myservo3.attach(10);
pinMode(acionamento_pistao1, OUTPUT);
pinMode(acionamento_pistao2, OUTPUT);
pinMode(recuo_pistao1, OUTPUT);
pinMode(recuo_pistao2, OUTPUT);
digitalWrite(recuo_pistao1, HIGH);
digitalWrite(recuo_pistao2, HIGH);
pinMode(botton,INPUT);
pinMode(buzzer, OUTPUT);
myservo.write(0);
myservo1.write(0);
myservo2.write(0);
myservo3.write(0);
}
void loop(){
val = digitalRead(botton); // ler o valor de entrada
if (val == HIGH) { // verificar se a entrada é HIGH (interruptor livre)
myservo.write(180);
delay(50);
myservo1.write(180);
delay(50);
myservo2.write(180);
delay(50);
myservo3.write(180); //Motor da Base
delay(50);
//Acionamento dos Pistoes
tone(buzzer,1500);//Ligando o buzzer.
delay(500);
digitalWrite(acionamento_pistao1, HIGH);
delay(10000);
digitalWrite(recuo_pistao1, HIGH);
delay(10000);
digitalWrite(acionamento_pistao2, HIGH);
delay(10000);
digitalWrite(recuo_pistao2, HIGH);
noTone(buzzer);//Desligando o buzzer.
delay(500);
//Acionando Esterira
digitalWrite(Led, HIGH);
delay(1000);
digitalWrite(Led, LOW);
delay(1000);
val = analogRead(Potenciometer_Motor);
analogWrite(Motor, val / 4);
delay(20000);
digitalWrite(Motor,LOW);
//Retorno dos Servo Motores
myservo.write(0);
myservo1.write(0);
myservo2.write(0);
myservo3.write(0);
}
else{
myservo.write(0);
myservo1.write(0);
myservo2.write(0);
}
}
Tags:
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por