Hur man gör en svävare (10 / 10 steg)
Steg 10: tillägg
- Arduino kod:
#include
#include
PS2X ps2x;
Servo HTservo, motorUp, motorGo;
int PS_LY, PS_RX;
int vinkel, hastighet = 60, upforce, goorstop;
Ogiltiga inställningar () //The uppsättning upp arduino styrelsen
{
Serial.BEGIN(9600);
motorUp.attach(9);
motorUp.write(20);
HTservo.attach(5);
HTservo.write(90);
motorGo.attach(6);
motorGo.write(20);
ps2x.config_gamepad (13,11,10,12, sant, sant);
}
void loop()
{
ps2x.read_gamepad (); //Read gamepad
IF(ps2x. Button(PSB_PAD_UP)) //If knappen upp är att hålla intryckt, ställa in hastigheten på motorn som 69 (naturligtvis, du kan ändra det).
{
hastighet = 69.
motorGo.write(velocity);
}
IF(ps2x. ButtonReleased(PSB_PAD_UP)) / * om knappen upp släpps, ange hastigheten på motorn som 20 (för vår motor, 20 betyder att det är
avstängd. Men det kan vara annorlunda för svåra typer av motorer) * /
{
hastighet = 20;
motorGo.write(velocity);
}
IF(ps2x. Button(PSB_PAD_DOWN)) / / om knappen ner är att hålla intryckt, ange hastigheten på motorn som 66 (en lägre hastighet).
{
hastighet = 66;
motorGo.write(velocity);
}
IF(ps2x. ButtonReleased(PSB_PAD_DOWN)) //If knappen upp släpps, ställa in hastigheten på motorn som 20
{
hastighet = 20;
motorGo.write(velocity);
}
IF(ps2x. Button(PSB_R1)) //If knappen R1 är att hålla tryckte, ställa in servo på 135 °
{
vinkel = vinkel + 4.
IF(Angle>135)
vinkel = 135;
HTservo.write (vinkel);
}
om (ps2x. ButtonReleased (PSB_R1)) / om knappen R1 släpps, sätta servo till 90 °
{
vinkel = 90.
HTservo.write (vinkel);
}
IF(ps2x. Button(PSB_L1)) //If knappen L1 är att hålla ange nere, servo till 45 °
{
vinkel = vinkel-4;
IF(Angle<45)
vinkel = 45;
HTservo.write (vinkel);
Serial.println(Angle);
}
om (ps2x. ButtonReleased (PSB_L1)) / om knappen L1 släpps, sätta servo till 90 °
{
vinkel = 90.
HTservo.write (vinkel);
}
om (ps2x. NewButtonState(PSB_GREEN))
{
motorUp.write(20);
motorGo.write(20);
}
}