Ola pessoal estou construindo um cosplay do home de ferro estou aprendendo um pouco sobre arduino também, achei este código abaixo que vai funcinar bem para este projeto https://www.youtube.com/watch?v=V0AgeFBaF3U so que eu presiso adicionar mais um servo motor pois no capacate utilizo 2 e um taria que funcionar inversamente ao outro para poder a brir a mascara obrigado e fiquem com deus !!
/*
Sketch: Este programa ira girar o eixo de um servomotor para direita ou esquerda lendo o estado de dois botoes assim identificados.
*/
#include /span>Servo.h>
const int botaoDireita = 2; // identifica o pino do botao a direita
const int botaoEsquerda = 3; // identifica o pino do botao a esquerda
const int servo = 4; // identifica o pino do servomotor
Servo servoMotor; // declara um objeto tipo Servo
int angulo = 90; // controla a posicao do eixo
void setup() {
pinMode(botaoDireita, INPUT);
digitalWrite(botaoDireita, HIGH);
pinMode(botaoEsquerda, INPUT);
digitalWrite(botaoEsquerda, HIGH);
servoMotor.attach(servo); // conecta o motor ao pino de controle
servoMotor.write(angulo); // gira o servo ate o ponto do meio
}
void loop() {
if(digitalRead(botaoDireita) == LOW) { // botao direita pressionado
if(angulo < 180) {
angulo = angulo + 1;
}
} else {
if(digitalRead(botaoEsquerda) == LOW) { // botao esquerda pressionado
if(angulo > 0) {
angulo = angulo - 1;
}
}
}
servoMotor.write(angulo);
delay(5);
}
Tags:
#include span class="command">Servo.h>
const int botaoDireita = 2; // identifica o pino do botao a direita
const int botaoEsquerda = 3; // identifica o pino do botao a esquerda
const int servo1 = 4; // identifica o pino do servomotorconst int servo2 = 5; // identifica o pino do servomotor
Servo servoMotor1; // declara um objeto tipo ServoServo servoMotor2;
int angulo = 90; // controla a posicao do eixo
void setup() {
pinMode(botaoDireita, INPUT);
digitalWrite(botaoDireita, HIGH);
pinMode(botaoEsquerda, INPUT);
digitalWrite(botaoEsquerda, HIGH);
servoMotor1.attach(servo1); // conecta o motor ao pino de controleservoMotor2.attach(servo2); // conecta o motor ao pino de controle
servoMotor1.write(angulo); // gira o servo ate o ponto do meioservoMotor2.write(180-angulo);
}
void loop() {
if(digitalRead(botaoDireita) == LOW) { // botao direita pressionado
if(angulo < 180) {
angulo = angulo + 1;
}
} else {
if(digitalRead(botaoEsquerda) == LOW) { // botao esquerda pressionado
if(angulo > 0) {
angulo = angulo - 1;
}
}
}
servoMotor1.write(angulo);servoMotor1.write(180-angulo);
delay(5);
}
Agora pronto! Podes fazer 2 e mandar um pra mim.
Se não for um bom servo, podes ter que ajustar esse 180º.
Não testei ou modifiquei o teu algoritmo (nem mesmo sintaxe). Só acrescentei oq era necessário pro segundo servo. Se tiver algum bug, comente.
#include span class="command">Servo.h>
servoMotor1.write(180-angulo);
Funcionou sim os bugs que apresentou foram nesas 2 linhas por conta de ter 2 servo 1 e no include eu retirei esa parte "span class="command" dexei so include servo.h
ta tendodo uma oscilação durante o movimento isso nao sei muito bem o motivo
Ah sim... ali no segundo é obviamente servoMotor2.
Quanto a vibração, tente alimentar o servo com 6v.
E o include é isso mesmo. Aquilo ali é lixo de código devido a linguagem desta página web.
Pow, que massa... mostra ae pra galera...
Em breve estarei colocando eu adquiri um easvr que pretendo implementar ja fiz alguns teste mas nao tenho muita habilidade coma progrmação
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por