Projeto 32
Grua simples
Projeto 32 - Grua simples
Código (download)
/*
Projeto 32 - Grua Simples
Física na Lixa
https://fisicanalixa.blogspot.com/
https://sites.google.com/aelixa.pt/fisicaearduino
*/
#include <Servo.h>
Servo servoMotor_x;
Servo servoMotor_y;
#define pin_servoMotor_x 5
#define pin_servoMotor_y 6
#define pin_joystick_x A0
#define pin_joystick_y A1
int eixo_x = 90; // Posição inicial do eixo x
int eixo_y = 90; // Posição inicial do eixo y
int limite_joystick_min = 200; // Limite mínimo do potenciometro do joystick
int limite_joystick_max = 700; // Limite máximo do potenciometro do joystick
int atraso = 15; // Permite alterar a velocidade do Servo Motor
void setup()
{
servoMotor_x.attach(pin_servoMotor_x);
servoMotor_y.attach(pin_servoMotor_y);
servoMotor_x.write(eixo_x);
servoMotor_y.write(eixo_y);
}
void loop()
{
//Servo 1
if(analogRead(pin_joystick_x) < limite_joystick_min && eixo_x < 180)
{
eixo_x++;
servoMotor_x.write(eixo_x);
}
if(analogRead(pin_joystick_x) > limite_joystick_max && eixo_x > 0)
{
eixo_x--;
servoMotor_x.write(eixo_x);
}
//Servo 2
if(analogRead(pin_joystick_y) < limite_joystick_min && eixo_y < 180)
{
eixo_y++;
servoMotor_y.write(eixo_y);
}
if(analogRead(pin_joystick_y) > limite_joystick_max && eixo_y > 0)
{
eixo_y--;
servoMotor_y.write(eixo_y);
}
delay(atraso);
}