DIY trådlös svävare (Team OZ) (10 / 11 steg)

Steg 10: Ladda upp programmet Arduino

Använda en USB-kabel för att ansluta Arduino till en dator, och använder en Arduino programvara ladda upp koderna. Du kan också ladda ner koden från Github: https://github.com/susanxie123/hovercraft.git

< p > #include < PS2X_lib.h >
< ps2x_lib.h > //for v1.6 < br > #include < Servo.h >< servo.h >
PS2X ps2x; skapa PS2 kontrollerklass
Servo ser;
just nu är biblioteket stöder inte hot pluggable domänkontrollanter, vilket innebär
Du måste alltid antingen starta om din Arduino efter du conect registeransvarige,
eller ring config_gamepad(pins) igen efter att du anslutit registeransvarige.
int fel = 0;
byte typ = 0;
byte vibrera = 0;
int olja = 0;
flyta ls = 0;
flyta rs = 0;
void setup() {
ser.attach(3);
Serial.BEGIN(57600);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
digitalWrite(4,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(8,LOW);
analogWrite(5,0);
analogWrite(9,0);
ÄNDRINGAR för v1.6 här!!! BETALA UPPMÄRKSAMHET ***

fel = ps2x.config_gamepad (13,11,10,12, sant, sant); setup stift och inställningar: GamePad (klocka, kommando, uppmärksamhet, data, tryck?, Rumble?) när på fel

IF(Error == 0) {
Serial.println ("hittade Controller, konfigurerad framgångsrika");
Serial.println (prova alla knappar, X vibrerar registeransvarige, snabbare när du trycker på hårdare;");
Serial.println ("anläggning L1 eller R1 kommer skriva ut analog pinne värden.");
Serial.println ("gå till www.billporter.info för uppdateringar och att rapportera fel.");
}

annat if(error == 1)
Serial.println ("ingen styrenhet hittade, kontrollera ledningar, se readme.txt aktivera debug. «««Besök www.billporter.info för felsökning tips");

annat if(error == 2)
Serial.println ("Controller hittade men inte emot kommandon. se readme.txt aktivera debug. «««Besök www.billporter.info för felsökning tips");

annat if(error == 3)
Serial.println ("Controller vägrar att ställa in trycket läge, kanske inte stöder det.");

Serial.Print (ps2x. Analog(1), HEX);

typ = ps2x.readType();
Switch(Type) {
fall 0:
Serial.println ("Okänd Controller typ");
bryta;
fall 1:
Serial.println ("DualShock handkontrollen hittade");
bryta;
fall 2:
Serial.println ("GuitarHero Controller hittade");
bryta;
}
} < /servo.h >< /ps2x_lib.h >< /p >< p > void loop() {
digitalWrite(4,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(8,LOW);
/ * Du måste Läs Gamepad för att få nya värden
Läs GamePad och ange vibrationsvärden
ps2x.read_gamepad (liten motor på/av, större motor styrka från 0-255)
Om du inte aktiverar mullret, använda ps2x.read_gamepad(); med några värden
du ska ringa detta minst en gång per sekund
*/

IF(Error == 1) //skip loop om ingen domänkontrollant hittas
hemkomst.

IF(Type == 2) {//Guitar Hero Controller

ps2x.read_gamepad(); Läs controller

IF(ps2x. ButtonPressed(GREEN_FRET))
Serial.println ("gröna bandet tryckt");
IF(ps2x. ButtonPressed(RED_FRET))
Serial.println ("röda bandet tryckt");
IF(ps2x. ButtonPressed(YELLOW_FRET))
Serial.println ("gula bandet tryckt");
IF(ps2x. ButtonPressed(BLUE_FRET))
Serial.println ("blå bandet tryckt");
IF(ps2x. ButtonPressed(ORANGE_FRET))
Serial.println ("Orange bandet tryckt");
IF(ps2x. ButtonPressed(STAR_POWER))
Serial.println ("stjärna makt kommandot");
IF(ps2x. Button(UP_STRUM)) //will vara sant så länge knappen trycks
Serial.println ("uppåt Strum");
IF(ps2x. Button(DOWN_STRUM))
Serial.println ("ner Strum");

IF(ps2x. Button(PSB_START)) //will vara sant så länge knappen trycks
Serial.println ("Start hålls");
IF(ps2x. Button(PSB_SELECT))
Serial.println ("Välj hålls"); < /p >< p > if(ps2x. Button(ORANGE_FRET)) / / Skriv ut stick värdet sant om
{
Serial.Print ("Wammys Bar ståndpunkt:");
Serial.println (ps2x. Analog(WHAMMY_BAR), DEC);
}
} < /p >< p > annat {//DualShock Controller
flyta leftspeed = 0;
flyta rightspeed = 0;
IF(ps2x. Button(PSB_L2))
{
digitalWrite(4,LOW);
digitalWrite(6,HIGH);
}
IF(ps2x. Button(PSB_R2))
{
digitalWrite(7,LOW);
digitalWrite(8,HIGH);
}
IF(ps2x. Button(PSB_L1))
{
leftspeed = 255;
}
annat
{
leftspeed = 0;
}
IF(ps2x. Button(PSB_R1))
{
rightspeed = 255;
}
annat
{
rightspeed = 0;
}

IF(ps2x. Analog(PSS_LY) > 130)
{
leftspeed = abs ((ps2x. Analog(PSS_LY)-128.0)/128.0*255.0);
digitalWrite(4,LOW);
digitalWrite(6,HIGH);
}
IF(ps2x. Analog(PSS_LY) < 110)
{
leftspeed = abs ((ps2x. Analog(PSS_LY)-128.0)/128.0*255.0);
digitalWrite(4,HIGH);
digitalWrite(6,LOW);
}
IF(ps2x. Analog(PSS_RY) > 130)
{
rightspeed = abs ((ps2x. Analog(PSS_RY)-128.0)/128.0*255.0);
digitalWrite(7,LOW);
digitalWrite(8,HIGH);
}
IF(ps2x. Analog(PSS_RY) < 110)
{
rightspeed = abs ((ps2x. Analog(PSS_RY)-128.0)/128.0*255.0);
digitalWrite(7,HIGH);
digitalWrite(8,LOW);
}
analogWrite(5,(int)leftspeed);
LS = leftspeed;
IF(rightspeed>250.0) {rightspeed = 255.0;}
analogWrite(9,(int)rightspeed);
rs = rightspeed;
ps2x.read_gamepad (falskt, vibrerar); Läs controller och ställa stora motorn att snurra på "vibrera" hastighet
IF(ps2x. Button(PSB_START)) //will vara sant så länge knappen trycks
Serial.println ("Start hålls");
IF(ps2x. Button(PSB_SELECT))
Serial.println ("Välj hålls");
IF(ps2x. Button(PSB_PAD_UP)) {//will vara sant så länge knappen trycks
Serial.Print ("upp höll detta hårt:");
leftspeed = 255; rightspeed = 255;
Serial.println (ps2x. Analog(PSAB_PAD_UP), DEC);
om (abs (leftspeed - ls) > 10)
{
analogWrite(5,leftspeed);
LS = leftspeed;
}
IF(ABS(rightspeed-RS) > 10)
{
rs = rightspeed;
}
}
IF(ps2x. Button(PSB_PAD_RIGHT)) {
Serial.Print ("högern höll detta hårt:");
Serial.println (ps2x. Analog(PSAB_PAD_RIGHT), DEC);
}
IF(ps2x. Button(PSB_PAD_LEFT)) {
Serial.Print ("vänster höll detta hårt:");
Serial.println (ps2x. Analog(PSAB_PAD_LEFT), DEC);
}
IF(ps2x. Button(PSB_PAD_DOWN)) {
Serial.Print ("DOWN höll detta hårt:");
Serial.println (ps2x. Analog(PSAB_PAD_DOWN), DEC);
}

vibrera = ps2x. Analog(PSAB_BLUE); Detta anger den stora motorn vibrerar hastighet baserat på
om (ps2x. NewButtonState()) //will vara sant om någon knapp ändrar tillstånd (på off eller off till på)
{
IF(ps2x. Button(PSB_L3))
Serial.println ("L3 tryckte");
IF(ps2x. Button(PSB_R3))
Serial.println ("R3 tryckte");
IF(ps2x. Button(PSB_L2))
Serial.println ("L2 tryckte");
IF(ps2x. Button(PSB_R2))
Serial.println ("R2 tryckte");
IF(ps2x. Button(PSB_GREEN))
Serial.println ("triangel tryckte");
}
IF(ps2x. ButtonPressed(PSB_RED)) {//will vara sant om rumpa på trycktes bara
Serial.println ("cirkel bara tryckte");
olja = olja + 10.
}
IF(ps2x. ButtonPressed(PSB_PINK)) {//will vara sant om knappen trycktes bara
Serial.println ("square bara tryckte");
olja = olja-10;
}
IF(ps2x. ButtonPressed(PSB_GREEN)) {//will vara sant om knappen trycktes bara
Serial.println ("cirkel bara tryckte");
olja = olja + 1.
}
IF(ps2x. ButtonPressed(PSB_BLUE)) {//will vara sant om knappen trycktes bara
Serial.println ("square bara tryckte");
olja = olja-1;
} < /p >< p > if(ps2x. Button(PSB_L3) || ps2x. Button(PSB_R3))
{
ser.write(Oil-3);
}
annat
{
ser.write(Oil);
}
IF(ps2x. ButtonReleased(PSB_PINK))
Serial.println ("Square precis släppt");
IF(ps2x. NewButtonState(PSB_BLUE))
Serial.println ("X bara ändrat");
IF(ps2x. Button(PSB_L1) || ps2x. Button(PSB_R1)) / / skriva ut stick värden om endera är sant {
Serial.Print ("sticka värden:");
Serial.Print (ps2x. Analog(PSS_LY), DEC); Vänster styrspak, Y-axeln. Andra alternativ: LX, RY, RX
Serial.Print(",");
Serial.Print (ps2x. Analog(PSS_LX), DEC);
Serial.Print(",");
Serial.Print (ps2x. Analog(PSS_RY), DEC);
Serial.Print(",");
Serial.println (ps2x. Analog(PSS_RX), DEC);
}
}
Delay(50);

} < /p >

Se Steg
Relaterade Ämnen

ICWatch: DIY din unika Wearable Smart titta

ICWatch är en DIY klocka som kombinerade sensor moduler eller trådlösa utrustningen med klocka. Dukan använda den som ett slags DIY klocka och utveckling styrelsen som kan ansluta till utökade utrustning. Vad mer, kunder kan använda den till DIY en u...

DIY 21" Cintiq(Intuos)

Detta Instructable kommer att omfatta hur man gör din egen DIY Cintiq tillverkad i ett Wacom Intuos3 XL och en Dell 21-tums skärm. Det kommer också att visa hur jag integreras den färdiga tavlan ett anpassade gjort digital utarbetandet bord (tillsamm...

Effektiv DIY vindkraftverk

För full tutorial och extra innehåll, vädjanDetta Instructable visar dig hur du kan bygga din egen fullt fungerande "DIY vindkraftverk". Vindkraftverket du skapar kan vara mycket olika från en som jag byggt som blad, generator, tornhöjd, etc. Ka...

1 MIN TUTORIAL | DIY Sharpie skor

för mer DIY Fashion idéer besök http://www.pinkchocolatebreak.comI oktober fick jag äntligen mina händer på några 80-glam Sharpies. I Holland finns ingenstans att finna och efter att ha sett så många coola DIY projekt med sharpies jag var tvungen att...

DIY HOME DECOR | Hur man Blackboard Jar vaser

mer besök min blogg http://www.pinkchocolatebreak.comJag har samlat burkar som galen med utsikten att göra dem till fab DIY hem inredning projekt. Varit förhala med det eftersom jag inte hade hittat rätt idé ännu men efter snubbla på blackboard färg...

DIY familj palett bed

när min familj sa att jag ska "köpa en säng och sovrum gjord av massivt trä som kommer att pågå i 30 år" Jag gick ballistiska eftersom jag lever i tron att ingen behöver en säng (eller alla andra bit av möbler) sista så länge. Vad jag behöver är...

DIY bröllop från början till slut

Vi är Mike och melodi, två crafty och musikaliska tinkerers som träffade en natt och blev kär. Gör en DIY bröllop var hårt arbete, men också mycket roligt som lönade sig i slutändan. Vi tog många friheter med vår stora dag, men fastnade med den grund...

DIY katt planter! ❤ Pinterest rekreation | DIY rum inredning

Hey guys! Letar du efter lite inspiration på Pinterest hittade jag denna super söta DIY. Jag tyckte det var riktigt kreativ så jag beslöt att göra det själv och Visa det för dig i denna video.Du behöver:-En plastflaska (soda flaskor fungerar bäst eft...

DIY marmorerad Bralette

Ursprungligen på min blogg These Days!När jag läste ärligt WTF senaste papper DIY, trodde jag verkligen WTF. Kan denna teknik användas till kläder?? Så jag ställa ut på min senaste DIY och trodde det skulle vara perfekt för en bralette! Rakkräm marmo...

DIY sommarläger!

http://www.504main.com/2011/05/diy-summer-camp.htmlTja, är vi på 2 dagar och räkna fram till sommarlovet (jag är fortfarande chockad av allt). Gissa vad, än en gång, än Cub Scout Day camp, jag har registrerat min barn upp till noll, ZILTCH, NADA för...

Att få DIY projekt regeringen-Legal

detta är en guide till tar något du har byggt och få det en inspektör stämpel av godkännande.Disclaimer: detta är inte menat att bash arbetstagare regeringen eller någon annan. Det finns många bra människor som arbetar i varje arbete. Tyvärr finns de...

DIY flytande bokhylla

Hej killar och Välkommen till vår en annan instructable.Idag ska vi göra en DIY flytande bokhylla som svävar i luften och håller dina böcker, dekorer på plats.Hoppas du gillar detta projekt.Så låt oss börja göra detta bra DIY. Varför?Eftersom vi älsk...

Här kommer bruden DIY vinglas

Denna vackra vinglas är den perfekta DIY för bruden till vara. Det skulle vara kul för bruden och hennes bridemaids att göra dessa på hennes brudkläder dusch eller drink från dem samtidigt som du vrider på hennes möhippa! Oavsett var du väljer att dr...

DIY kolumn borra uppgraderingar!

Min DIY kolumn borr, som har varit otroligt i topp tio-Kontoplan mest visade Instructables månadens, förtjänade en bra uppgradering, vad gör jag säga, låt oss inte vara snål, Top Ten förtjänar minst tre stora uppgraderingar!Så här är de: en addiction...

Flying DVD Quadcopter DIY

Har du oanvänd DVD/CD-skivor i ditt hem? Det kan flyga genom att lägga till standard komponenter för quadcopter. Vi kommer inte att använda FPV utrustning som kameran eller sändare. Detta projekt är för roligt och enda leksaker, Använd med försiktigh...

DIY Smart Home med uppgraderade enheter

Jag tidigare använt WiFi växeln och brädor till DIY smart hem. Även om det gör fungerar bra, men jag gillar inte skalet. Den innan man kan ansluta till ljus, men ljus innehavaren är mycket lättare att installera. Hur som helst, skulle jag vilja dela...

DIY rope armband-lätt knuten rep armband

vill du göra din egen super enkelt och knuten rep armband mönster? Det är inte så svårt som du tror! Vi presenterar för er en detaljerad DIY rope armband projekt som innehåller tydliga illustrationer och en genomarbetad förklaring.DIY knuten rep armb...

Lägga till Bluetooth 4.0 till din Arduino projekt [IoT] - kontrolleras av Smartphone

Vi är grupp av internet saker entusiaster som älskar hacka ihop olika enheter. Kolla in vårt nuvarande projekt på vår hemsida och ta en titt på denna guide i ett annat format på vår blogg.Steg 1: IntroduktionArduino är en cool plattform eftersom du e...

Tjäna pengar med din Instructables

Att skapa Instructables är roligt och har potential att lägga några pengar i fickan för framtida projekt. Dessa idéer är alldeles utmärkt och kan tillämpas på de flesta av dina projekt i en eller annan form.Detta är ett sätt att skapa en automatisera...