Jump to content

Super Seven MNR Vortx RT+ 2010


Recommended Posts

Posted (edited)

Aero Wing by Longen 

Så där, 350 rader kod senare så har jag fått dom funktioner som jag vill ha.

Finns 3 lägen:

Manuel mode: (I det här läget kan man justera vingpositioneringen med hjälp av en potentiometer.)

Auto mode: (I det här läget så justerar servot till vingen med hjälp av gyro/g-kraftmätare, jag kan justera 
vinkeln på vingen med en tiondels grad och värdena från g-sensorn tar ut värden på hundradels g.
Tex: 0.10g=1 grad,  0.20g=2 grader och så vidare.
Nästan obegränsat hur många mätpunkter man vill ha.

Glömde nästan säga att det är även inlagt Brake Assist, bromsar man kraftigt så kommer vingen att ställa sig 
uppåt med full tillåten vinkel.

Demo mode: (vingen kör en loop upp och ner tills man stänger av den, står man på en utställning kan 
man aktivera funktionen ifall någon är nyfiken.)

https://youtu.be/sA47UlokZrw

 

Edited by longen
  • Like 1
Link to post
Share on other sites
  • Replies 367
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Framröstad som top 3 på vårträffen Street meet North på Piteå Dragway, riktigt kul 😁  

Har gått och drömt nu ett bra tag, nu kunde jag inte hålla mig längre 🙂 Blev 4st nya däck, och en släp så man kan frakta bettan land och rike.

Tog lite nya bilder idag 😄

Posted Images

Coolt ,

 

Nu ser jag ju mer bra att ha grejer du behöver

+Blinkande bromljus vid broms pedal + X nivå retardation 

+Fläkt full fart vid motor broms över X nivå retardation (spara fläkt effekt till rakan om det nu göt någon skillnad)  

+osv.....  

 

  • Like 1
Link to post
Share on other sites
11 minuter sedan, LUPUS sade:

Coolt ,

 

Nu ser jag ju mer bra att ha grejer du behöver

+Blinkande bromljus vid broms pedal + X nivå retardation 

+Fläkt full fart vid motor broms över X nivå retardation (spara fläkt effekt till rakan om det nu göt någon skillnad)  

+osv.....  

 

Helt klart, jag använder ju bara 30% av minnet i Arduinon så något mer måste man ju hitta på 😄

Link to post
Share on other sites
13 minuter sedan, LUPUS sade:

Coolt ,

Nu ser jag ju mer bra att ha grejer du behöver

+Blinkande bromljus vid broms pedal + X nivå retardation 

En grej man skulle kunna göra är att använda sig av g-sensorn som i sin tur styr en RGB led list, beroende hur mycket man bromsar tänds olika många lampor eller ändrar ljus styrkan. 
Sen integrerar man även parkering och blinker i den listen 😛

 

Link to post
Share on other sites

Grymt jobbat! Ska bli riktigt kul att se när allt är ihopsatt! Arduino skapar nya möjligheter som inte fanns innan. Hur har du lärt dig kodspråket??

Vingen skall alltså vara ledad på något sätt och sedan ska ett servo justera vinkeln? Kommer servot orka flytta vingen i hög hastighet? Borde inte det kräva stora krafter? Jag såg en kille på Youtube som använde ett kretskort ur ett vanligt hxt900 servo. Detta styrde ett fartreglage som i sin tur styrde en torkarmotor. = Locost jättestarkt servo!

Eller har du någon annan smart plan?

/Martin 

Link to post
Share on other sites
Posted (edited)
53 minuter sedan, martin_ts sade:

Grymt jobbat! Ska bli riktigt kul att se när allt är ihopsatt! Arduino skapar nya möjligheter som inte fanns innan. Hur har du lärt dig kodspråket??

Vingen skall alltså vara ledad på något sätt och sedan ska ett servo justera vinkeln? Kommer servot orka flytta vingen i hög hastighet? Borde inte det kräva stora krafter? Jag såg en kille på Youtube som använde ett kretskort ur ett vanligt hxt900 servo. Detta styrde ett fartreglage som i sin tur styrde en torkarmotor. = Locost jättestarkt servo!

Eller har du någon annan smart plan?

/Martin 

Tackar, har aldrig programmerat förut, har 3 böcker hemma för dummies som jag har sträckt läst, finns mycket exempel kod på nätet som man kopierar modifierar tills man får den funktion man vill ha. Jag hade stora problem med att få gyrot att matcha mot servot, ringde en vän som håller på med programming, han förklarade hur man skulle tänka och hjälpte mig med den biten, tur var det 😄 annars hade jag nog avbrutit det här projektet 😅.

Finns ett färdigt servo som jag skulle vilja ha men beställer jag det idag så är det några månader bort då det finns i China 😬 Lägger upp en bild på den, den drar 380kg, har man två borde det räcka.

Men vingen kommer kanske om 1-2 veckor och då vill man ju ha en färdig lösning till dess.

Att köra med en vindrutetorkar motor är ingen dum idee, har kolla på den lösningen en del och det lutar nog mot att den blir en sån lösning, billig enkel och stark. Lägger upp en länk på en som visar hur man skall bygga en sådan med en Arduino. 

Lägger upp en bild på vingen som blev beställd också 🙂

vinge.jpg.8fb3753cd2ff0685cbc831dec9ed3771.jpg

servo.JPG.471c6ae710cc166a6e32038f6766674e.JPG

 

Edited by longen
  • Thanks 1
Link to post
Share on other sites

Aha smart! Styra direkt med arduino såklart! Måste lära mig dom där.. Fördelen med en torkarmotor är ju att dom flesta använder en snäckväxel. En sån växellåda är ju låst om inte motorn snurrar. Medans ett vanligt servo. Även den du visar på bilden tror jag använder vanliga drev och då krävs det ju att motorn låser den elektriskt i position. Kan bli ett jäkla ryckande i den i lite farter? Den kommer behöva styra ut spänning för att behålla korrekt position. Orkar den att vara under konstant belastning tex 20min på kullen? Anges det ngn intermittens på dom?

Tror det kan vara skönt att ha en mekanisk låsning i växellådan! Då behöver inte motorn belastas mer än under flyttning av position på vingen? Torkarmotorer finns ju i alla storlekar ochså! 

 

Link to post
Share on other sites

Linjärdon funkar också men dom är.slöa

Torkarmotor är bra. Bara sätta en linjär Pot så kan man lätt med arduinon läsa av positionen.

 

Link to post
Share on other sites
19 timmar sedan, martin_ts sade:

Aha smart! Styra direkt med arduino såklart! Måste lära mig dom där.. Fördelen med en torkarmotor är ju att dom flesta använder en snäckväxel. En sån växellåda är ju låst om inte motorn snurrar. Medans ett vanligt servo. Även den du visar på bilden tror jag använder vanliga drev och då krävs det ju att motorn låser den elektriskt i position. Kan bli ett jäkla ryckande i den i lite farter? Den kommer behöva styra ut spänning för att behålla korrekt position. Orkar den att vara under konstant belastning tex 20min på kullen? Anges det ngn intermittens på dom?

Tror det kan vara skönt att ha en mekanisk låsning i växellådan! Då behöver inte motorn belastas mer än under flyttning av position på vingen? Torkarmotorer finns ju i alla storlekar ochså! 

 

Du har en riktigt bra poäng där med snäckväxeln, har inte tänkt på att den har en mekanisk låsning i torkar motorn, blir ju hur bra som helst att köra på den lösningen.

Link to post
Share on other sites
7 timmar sedan, daromer sade:

Linjärdon funkar också men dom är.slöa

Torkarmotor är bra. Bara sätta en linjär Pot så kan man lätt med arduinon läsa av positionen.

 

Helt klart, blir nog att köra med torkarmotor lösningen, har inte bestämt mig om det blir en eller två torkar motorer, vore intressant att göra någon belastning test och se hur många kilo 
en standard torkarmotor klarar av.

Link to post
Share on other sites

Verkar svårt att få tag en PWM motor drivare här i Sverige som tål lite ström.
Har hittat många alternativ i utlandet dock.

Den här som ni ser nedan är klarar av 9-24v och 50Amp kostar runt 1000:- 
Finns även 25Amp 15Amp och 10Amp . Oavsett om jag ska köra 
med en eller två motorer så kan det ju aldrig vara fel att ha mycket Amp 😄

Gjorde en beställning på 2st torkar motorer med 8mm axlar så får vi se ifall 
det är något man kan använda.

syren-motor-driver-4_1.jpg.f8d129d8eaf28335ae6b577bbdb3e2db.jpg

torkarmotor.jpg.605257423ee3548ee1960c833f526e1a.jpg

Link to post
Share on other sites
1 timme sedan, longen sade:

Verkar svårt att få tag en PWM motor drivare här i Sverige som tål lite ström.
Har hittat många alternativ i utlandet dock.

Den här som ni ser nedan är klarar av 9-24v och 50Amp kostar runt 1000:- 
Finns även 25Amp 15Amp och 10Amp . Oavsett om jag ska köra 
med en eller två motorer så kan det ju aldrig vara fel att ha mycket Amp 😄

Gjorde en beställning på 2st torkar motorer med 8mm axlar så får vi se ifall 
det är något man kan använda.

syren-motor-driver-4_1.jpg.f8d129d8eaf28335ae6b577bbdb3e2db.jpg

torkarmotor.jpg.605257423ee3548ee1960c833f526e1a.jpg

Kolla på Sabertooth! Finns mkt i USA där de bygger radiostyrda robotar.

  • Like 1
Link to post
Share on other sites

Osäker på hur många nm dom klarar per default. Men går ju alltid koppla på en kulskruv med 5mm stigning eller liknande och då får rejält kapacitet visserligen avskalad hastighet. 

 

Vilken hastighet behöver du? Stepper motorer eller linjärdon kopplade till tryck/dragfjäder. (Kommer inte ihåg namnet)

Link to post
Share on other sites
13 minuter sedan, daromer sade:

Osäker på hur många nm dom klarar per default. Men går ju alltid koppla på en kulskruv med 5mm stigning eller liknande och då får rejält kapacitet visserligen avskalad hastighet. 

 

Vilken hastighet behöver du? Stepper motorer eller linjärdon kopplade till tryck/dragfjäder. (Kommer inte ihåg namnet)

Vore ju trevligt ifall utgående axel på torkar motorn kund gå från 0-180 grader på 1-3sek.

är ju bara vid brake assist man behöver hastigheten. 
I auto mode så reglerar vinge hela tiden efter antal g-force och då anser jag att hastigheten inte har lika stor betydelse.

Använder man en kulskruv så bör man använda en vrid potentiometer som typ klara av 20-30 varv ifall det är 5mm stigning, du får man en rörelse på 10-15cm. Ska invänta tills torkar motorerna kommer så ska jag göra lite belastningstester 🙂

 

Link to post
Share on other sites

Måste du ha så komplicerad styrning som pwm och hög ströms styrning av en torkar motor ? 

Vet du var du är i vinkel funkar det i princip  med av / på ?   Fram/ back   ? 

Mao ett relä billigt och framför allt enkelt ? Kanske lite mera tanke möda på kod istället om man råkar köra förbi målet

 

Link to post
Share on other sites
1 timme sedan, Fredrik Svedjefält sade:

Bara en tanke om du övervägt att styra vingen med pneumatisk?

Pneumatik, hmmm, blir bara min eller max då, ej steglöst. 
Om man provar räkna på det, 100-400kg downforch. 
8kg lufttryck, då måste man typ ha en air ride bälg plus en tank kompressor m.m

Fördel med servo är att den håller kraften åt båda hållen 🙂

Link to post
Share on other sites
16 minuter sedan, LUPUS sade:

Måste du ha så komplicerad styrning som pwm och hög ströms styrning av en torkar motor ? 

Vet du var du är i vinkel funkar det i princip  med av / på ?   Fram/ back   ? 

Mao ett relä billigt och framför allt enkelt ? Kanske lite mera tanke möda på kod istället om man råkar köra förbi målet

 

Tycker det är skoj med lite utmaning, fördelen med pwm är att man får ner värmeutveckling på transistorkortet som driver torkarmotorn.

All kod har jag lyckas få klar i Arduinon så nu är det bara hårdvaran kvar att fixa.

Fördelen med lite mer avancerat system gör att möjligheten att ändra olika förhållanden mellan olika krafter och förutsättningar kan enkelt göras med en knapptryckning medans man kör. Eller vinkeln kan enkelt ställas i manuellt läge medans man kör. Andra förhållanden om olika vinklar vid olika sidokrafter och inbromsning m.m bör man nog stå still med bilen och vara uppkopplad med datorn 😋

Har jag väl hittat på någon så brukar jag vara rätt tjurig 😁

Link to post
Share on other sites

Hade du kört vanlig stegmotor behövs ingen Pot. Du håller ju redan på antalet steg åt ena eller andra hållet 🙂 men ja. Då börjar det bli mer komplext

Link to post
Share on other sites
17 timmar sedan, longen sade:

Tycker det är skoj med lite utmaning, fördelen med pwm är att man får ner värmeutveckling på transistorkortet som driver torkarmotorn.

Nja, det beror förstås på... 
Om du vill kunna löpande ändra justeringhastigheten så låter det vettigt med PWM. 
Om du istället bara vill kunna ändra åt ena eller andra hållet så kan du göra det med enbart på eller av men du behöver några relän för att få till omväxlingen mellan upp/ner. Allt beror på vilken justeringshastighet du behöver samt motorn/servots hastighet. 
Jag tror det var detta som @LUPUS menade.

Dock är det i princip lika enkelt att skaffa ett motordrivkort med H-brygga för fram/back av motorn och då har du möjlig att PWM:a i framtiden om du vill utveckla lite mer. 

Arudino standard PWM frekvensen är rätt låg 500/1000Hz beroende på pin om vi snackar 328P processorn (UNO, mini etc.). Kan vara ide att kolla på hur du ändrar upp den genom att sätta rätt register för att komma upp i 16kHz eller mer så slipper du höra frekvensljud från motorn/styrning när den körs. 

Link to post
Share on other sites
1 timme sedan, bexander sade:

Nja, det beror förstås på... 
Om du vill kunna löpande ändra justeringhastigheten så låter det vettigt med PWM. 
Om du istället bara vill kunna ändra åt ena eller andra hållet så kan du göra det med enbart på eller av men du behöver några relän för att få till omväxlingen mellan upp/ner. Allt beror på vilken justeringshastighet du behöver samt motorn/servots hastighet. 
Jag tror det var detta som @LUPUS menade.

Dock är det i princip lika enkelt att skaffa ett motordrivkort med H-brygga för fram/back av motorn och då har du möjlig att PWM:a i framtiden om du vill utveckla lite mer. 

Arudino standard PWM frekvensen är rätt låg 500/1000Hz beroende på pin om vi snackar 328P processorn (UNO, mini etc.). Kan vara ide att kolla på hur du ändrar upp den genom att sätta rätt register för att komma upp i 16kHz eller mer så slipper du höra frekvensljud från motorn/styrning när den körs. 

Mycket bra och informativ information på det här forumet, tack alla som läser och följer mina projekt 🙂

Har beställt en motor drivkort från Tyskland idag, var 2x32amp på det kortet, så kan den ju klara av 2st torkarmotorer i värsta fall 😄 . Kör med Arduino Uno med 328P processorn, och då ska det vara lugnt att få ut 16khz dock bara på vissa pinnar på kortet. Har hittat en bra guide hur man ändrar frekvensen, finns en hel del färdig kod som man kan använda sig av såg jag.

Längtar tills det börjar komma hem lite komponenter så man kan börja göra lite tester, ska bli intressant att se hur många Nm en torkar motor klarar av, skulle det skita sig så är det ju tur att jag beställde två stycken 😊

Är ju inget matte snille, men jag kommer nog att ha en arm som är 8cm på torkarmotorn för att få en slaglängd på 16cm typ. Men när jag gör moment testet med torkar motorn så tänkte jag se hur mycket vikt den orkar lyfta på 80cm arm.

Tex om den orkar lyfta 20kg på 80cm blir det 200kg på 8cm? Moment och hävarm är inte min starka sida 😄

  • Thanks 1
Link to post
Share on other sites

##Tycker det är skoj med lite utmaning, fördelen med pwm är att man får ner värmeutveckling på transistorkortet som driver torkarmotorn.##

Det där räcker ju som orsak 🙂  men  för den rena funktionen "ställ vingen vid X  grader "   är det kanske lite over kill. 

har du funderat på hur lankningen blir till vingen rent fysiskt  ? 

Link to post
Share on other sites
1 timme sedan, LUPUS sade:

##Tycker det är skoj med lite utmaning, fördelen med pwm är att man får ner värmeutveckling på transistorkortet som driver torkarmotorn.##

Det där räcker ju som orsak 🙂  men  för den rena funktionen "ställ vingen vid X  grader "   är det kanske lite over kill. 

har du funderat på hur lankningen blir till vingen rent fysiskt  ? 

När jag såg Victor Racing presentions film så tyckte jag att det såg lite fattigt ut 😋 med 3 fasta lägen och Brake Assist.
Har man tex 15 lägen på 15cm så upplevs vingen vara steglös typ. Visst är det overkill 😄 men när funktionen är så enkel att 
lägga till i Arduinon så tänkte jag varför inte.

Antingen blir det att köra med Puch-Pull vajer eller så blir det ett rundstång i ALU direkt från servot upp till vingen.

Så här ser koden ut:

            if(Y_out >= 0.5) {                                // Aktiveras vid inbromsning, vingen ställer på                                
            value = 1023;                                     // max och hjälper till att bromsa bilen.
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(2000);
}
          else {          
            if(X_out >= 2.0 or X_out <= -2.0) {               // Aktivering vid +/- 2.0g sidokraft
            value = 1023;                                     // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 1.9 or X_out <= -1.9) {          // Aktivering vid +/- 1.9g sidokraft
            value = 1000;                                     // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 1.8 or X_out <= -1.8) {          // Aktivering vid +/- 1.8g sidokraft
            value = 950;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 1.7 or X_out <= -1.7) {          // Aktivering vid +/- 1.7g sidokraft
            value = 900;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 1.6 or X_out <= -1.6) {          // Aktivering vid +/- 1.6g sidokraft
            value = 850;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 1.5 or X_out <= -1.5) {          // Aktivering vid +/- 1.5g sidokraft
            value = 800;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 1.4 or X_out <= -1.4) {          // Aktivering vid +/- 1.4g sidokraft
            value = 750;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 1.3 or X_out <= -1.3) {          // Aktivering vid +/- 1.3g sidokraft
            value = 700;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 1.2 or X_out <= -1.2) {          // Aktivering vid +/- 1.2g sidokraft
            value = 650;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 1.1 or X_out <= -1.1) {          // Aktivering vid +/- 1.1g sidokraft
            value = 550;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 1.0 or X_out <= -1.0) {          // Aktivering vid +/- 1.0g sidokraft
            value = 500;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 0.9 or X_out <= -0.9) {          // Aktivering vid +/- 0.9g sidokraft
            value = 450;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);          
}
            else if(X_out >= 0.8 or X_out <= -0.8) {          // Aktivering vid +/- 0.8g sidokraft
            value = 400;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 0.7 or X_out <= -0.7) {          // Aktivering vid +/- 0.7g sidokraft
            value = 350;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 0.6 or X_out <= -0.6) {          // Aktivering vid +/- 0.6g sidokraft
            value = 300;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);
}
            else if(X_out >= 0.5 or X_out <= -0.5) {          // Aktivering vid +/- 0.50g sidokraft
            value = 250;                                      // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0); 
            myservo.write(val);
            delay(50);

Link to post
Share on other sites
18 timmar sedan, bexander sade:

Nja, det beror förstås på... 
Om du vill kunna löpande ändra justeringhastigheten så låter det vettigt med PWM. 
Om du istället bara vill kunna ändra åt ena eller andra hållet så kan du göra det med enbart på eller av men du behöver några relän för att få till omväxlingen mellan upp/ner. Allt beror på vilken justeringshastighet du behöver samt motorn/servots hastighet. 
Jag tror det var detta som @LUPUS menade.

Dock är det i princip lika enkelt att skaffa ett motordrivkort med H-brygga för fram/back av motorn och då har du möjlig att PWM:a i framtiden om du vill utveckla lite mer. 

Arudino standard PWM frekvensen är rätt låg 500/1000Hz beroende på pin om vi snackar 328P processorn (UNO, mini etc.). Kan vara ide att kolla på hur du ändrar upp den genom att sätta rätt register för att komma upp i 16kHz eller mer så slipper du höra frekvensljud från motorn/styrning när den körs. 

Läste på lite mer om motordrivaren som jag beställde från Tyskland, den ger ut 32kHz till motorn,oavsett vad man skickar in för pwm frekvens om jag förstod det rätt, för att undvika frekvensljud.

Link to post
Share on other sites

Eftersom den postade koden inte är komplett blir det kanske en dum fråga men varför sätter du ett värde på "value" för att sedan använda map()? Är det inte enklare att sätta värdet du vill ha på "val" direkt eller till och med myservo.write(värdet du vill ha) ex (myservo.write(40) för sista "else if". (250/1023 * 165 = 40)

Tänk också på att delay() låser processorn så att du inte kan göra något annat samtidigt. Kika gärna på exemplet "blink without delay" Arduinos IDE för att istället använda millis(). 

När jag tittar på koden igen dyker frågan upp, varför har du diskreta lägen på servot? Är det inte enklare att skippa alla "else if" och istället köra en ekvation som löser det du vill.
Typ myservo.write(abs(X_out) * 82); Detta bör lösa allt du gör med alla "if:s". abs() gör att du bara får det positiva talet (absolutbeloppet) , alltså (abs(-2) => 2).

Link to post
Share on other sites
Posted (edited)
1 timme sedan, bexander sade:

Eftersom den postade koden inte är komplett blir det kanske en dum fråga men varför sätter du ett värde på "value" för att sedan använda map()? Är det inte enklare att sätta värdet du vill ha på "val" direkt eller till och med myservo.write(värdet du vill ha) ex (myservo.write(40) för sista "else if". (250/1023 * 165 = 40)

Tänk också på att delay() låser processorn så att du inte kan göra något annat samtidigt. Kika gärna på exemplet "blink without delay" Arduinos IDE för att istället använda millis(). 

När jag tittar på koden igen dyker frågan upp, varför har du diskreta lägen på servot? Är det inte enklare att skippa alla "else if" och istället köra en ekvation som löser det du vill.
Typ myservo.write(abs(X_out) * 82); Detta bör lösa allt du gör med alla "if:s". abs() gör att du bara får det positiva talet (absolutbeloppet) , alltså (abs(-2) => 2).

Du har många bra idéer kring det där @bexander helt klart går det göra som du beskriver. Anledningen varför koden ser ut så där var för att jag har provat lite olika lösningar.

            else if(X_out >= 0.5 or X_out <= -0.5) {          // Aktivering vid +/- 0.50g sidokraft
            value =pot +  250;                                             // Läge/vinkel på servot
            val = map(value, 1023, 0, 165, 0);                  // potentiometer har ett värde mellan 0-1023 och servo har ett värde mellan 0-165
            myservo.write(val);
            delay(50);

har provat köra med en potentiometer som du ser i koden ovan. Tanken med den lösningen var att under körningen så kunde jag öka eller sänka effekten på vingen

men ändå kunna bibehålla den kör kurva som jag ville ha.

Koden som jag postade tidigare var inte potentiometern med.

Jag var tvungen att ha med val=map(valde, 1023, 0 165, 0); för att få potentiometern att fungera och att den skulle gå åt rätt håll.

delay har jag provat med och utan, if satsen körs ju bara ifall värdet är mellan -0.5 till +0.5g som i exemplet ovan . Det jag märkte med delay var att servot blev avsevärt mycket lungnare och mer harmonisk. 

Men helt klart, ska man inte ha med potentiometern alls så kan man göra om koden rätt mycket.

Det härprojektet är första gången jag provat programmering, oj vad man har grubblat innan man förstod logiken med container, if else och hela den biten 🙂

Ska prova att göra som du föreslog och se hur känsla blir då.
 

 

Edited by longen
Link to post
Share on other sites

Det med millis är att du lägger in en timer sats istälet. gör man bara 1 sak så kommer man oftast undan med delay men man bör undvika den. Och kör man med den snackar vi några få ms max!

 

t ex i varje loop kör du din function och har du

void runsomething()
{
	currentMillis = millis();  //get the current "time" (actually the number of milliseconds since the program started)
  	if (currentMillis - startMillis >= period)  //test whether the period has elapsed
	{
		din kod hör
		startMillis = currentMillis; // sätt ny tid här
	}
}

Ovan hämtat från https://forum.arduino.cc/index.php?topic=503368.0

 

Och vill du lära dig mer om funktioner, math och andra skoj saker för styrning kolla in James Bruton på Youtube, Han bygger alla typers robottar och använder alla möjliga sensorer och än bättre han använder funktioner som finns och förklarar dem.  🙂

Link to post
Share on other sites
15 timmar sedan, daromer sade:

Och vill du lära dig mer om funktioner, math och andra skoj saker för styrning kolla in James Bruton på Youtube, Han bygger alla typers robottar och använder alla möjliga sensorer och än bättre han använder funktioner som finns och förklarar dem.  🙂

Mycket bra information, tackar 🙂

Link to post
Share on other sites

Har funderat lite kring infästningen av vingen, försökte göra en snabb skiss nedan för att förklara hur jag resonerar.
Ifall man sätter en länkled mellan original fästena, på så vis kanske det största delen av kraften kommer där.
Sen flyttar man bak det bakre fästet och monterar servo på den delen.

Anledningen varför jag tänker på infästningarna är enbart för att få en mindre belastning på servot.
Sen hur det fungerar i verkligheten har jag inte så stor koll på. När det gäller att räkna krafter och 
aerodynamic så är jag mer av den typen att prova mig fram 😛 

Någon som har några åsikter kring detta får gärna skriva en rad eller två 😀

 

1722915226_Namnls.png.6e74f18dbdbaa8d7290cafada1f56089.png

Link to post
Share on other sites

Motsvarande infästning på flygplan kallas pendelroder.  Var en populär konstruktion på 70 talet men kunde ge instabila egenskaper.  Men kan säkert fungera bättre på en bil än ett flygplan. 

Tryckcentrum,  Där du vill ha ditt nya fäste för att minimera servokraften, kommer att  flyttas med olika hastigheter och anfallsvinklar.  Det kan vara en ide att sätta en plåt med många hål så att du kan prova fram vart tryckcentrum hamnar. 

  • Like 1
Link to post
Share on other sites

Snygg vinge och coolt projekt.var kommer vingen ifrån? Har du länk?
/Vedde

Skickat från min SM-G960F via Tapatalk

Link to post
Share on other sites

Vingbalken på flygplansvingar ligger ungefär där du har främre orginalinfäsning, mao lyftkraftscentrum. Sedan skulle jag sätta den andra infästningen längst bak,  enligt din bild, ger en rimlig belastning på servot, ju större avstånd du har mellan infästningspunkter desto mindre beslastning på servot men man får kompromissa och va lite praktiskt också.

M10-M12 länkled är overkill, inte större än M8 är min bedömning. Min vinge sitter med totalt 4st M6 skruvar men så har jag fartbegränsning på 250km/h 😉😎

Link to post
Share on other sites
19 timmar sedan, Göran Nilsson sade:

Vingbalken på flygplansvingar ligger ungefär där du har främre orginalinfäsning, mao lyftkraftscentrum. Sedan skulle jag sätta den andra infästningen längst bak,  enligt din bild, ger en rimlig belastning på servot, ju större avstånd du har mellan infästningspunkter desto mindre beslastning på servot men man får kompromissa och va lite praktiskt också.

M10-M12 länkled är overkill, inte större än M8 är min bedömning. Min vinge sitter med totalt 4st M6 skruvar men så har jag fartbegränsning på 250km/h 😉😎

Har du några foton på din vinge och infästningar?

Link to post
Share on other sites
On 2020-04-29 at 14:11, Klubbsson sade:

Motsvarande infästning på flygplan kallas pendelroder.  Var en populär konstruktion på 70 talet men kunde ge instabila egenskaper.  Men kan säkert fungera bättre på en bil än ett flygplan. 

Tryckcentrum,  Där du vill ha ditt nya fäste för att minimera servokraften, kommer att  flyttas med olika hastigheter och anfallsvinklar.  Det kan vara en ide att sätta en plåt med många hål så att du kan prova fram vart tryckcentrum hamnar. 

Ska försöka göra som du säger, låter klokt att man kan välja lite olika alternativ på infästningspunkter.

Link to post
Share on other sites
Posted (edited)
43 minuter sedan, Göran Nilsson sade:

Så här ser min infästning ut

 

4C459633-BB07-4E70-951B-0A549AE3D967.jpeg

Nu blev jag ju mer nyfiken 🙂 en bild bakifrån så man ser hela konstruktionen vore intressant att få se 🙂

Märker du stor skillnad att kör med och utan vinge?

Edited by longen
Link to post
Share on other sites

Tyvärr måste jag säga, nej jag märker inte någon skillnad med eller utan vinge. Som den amatör jag är då vet jag inte vad det är jag skall märka,  med eller utan vinge. I nuläget är det viktiga att det ser fräckt ut och det tycker jag att det gör 😜

 

E9304927-DFFB-471C-9D4F-211A1DA11B9A.jpeg

  • Like 1
  • Thanks 1
Link to post
Share on other sites

Om vi nu pratar om flygplansvingar. Det fanns väl något som kallades lättroder. Ett litet roder som gick åt motsatt håll som det vanliga rodret. Luftströmmen påverkade lättrodret som sedan påverka det riktiga rodret. Som ett aerodynamiskt servo. Hade minskat belastningen på din torkarmotor och länkage och hade sett fräckt ut 😄

/Martin

Link to post
Share on other sites
5 minuter sedan, martin_ts sade:

Om vi nu pratar om flygplansvingar. Det fanns väl något som kallades lättroder. Ett litet roder som gick åt motsatt håll som det vanliga rodret. Luftströmmen påverkade lättrodret som sedan påverka det riktiga rodret. Som ett aerodynamiskt servo. Hade minskat belastningen på din torkarmotor och länkage och hade sett fräckt ut 😄

/Martin

Provade google lite på det beskrev men hittade inget vettigt 😋

Har du nå bilder och gärna nån länk på hur det fingerar skulle uppskattas 🙂

Link to post
Share on other sites
10 timmar sedan, martin_ts sade:

Söker man på servotabs hittar man detta på wiki. https://en.m.wikipedia.org/wiki/Servo_tab

Tror det kallas lättroder i Sverige 

 

Helt klart en frän idé.

Hade man valt en annan vinge som grund så vore det nog möjligt att bygga en sån lösning.

Vingen som jag har valt är rund typ hela fram och baksida, man skulle ha behövt en rak vinge.

 

Link to post
Share on other sites

Infästning av torkar motor på vänster sida börjar ta form, ska göra fästet för höger sida efter jag flyttat lite bränsle prylar.

Slaglängden i det här utförandet blir 8cm

 

2183788D-904C-467E-9B0A-B5E43FC251E6.jpeg

4EF0EFF1-3594-4D58-9353-4AC741CE8E7E.jpeg

86343EE4-5464-4099-BADB-F68BC07FD79E.jpeg

Link to post
Share on other sites

Börjar trilla in lite mer delar till projektet.

Nu saknas bara den minst viktiga komponenten (VINGEN) 😭🙂

 

B8D6C68A-7F6C-4DCB-8414-A5F2C63176A1.jpeg

17C750D0-AFD4-4A2A-BDED-19ADFEAEE3D3.jpeg

0771FC32-4459-45FB-876D-5AEEA5D1F6F1.jpeg

  • Like 2
Link to post
Share on other sites
  • 3 weeks later...
Posted (edited)

Bilen är till salu.

076-6775620

stefan.sjolin@lundberghymas.se

Finns även på blocket.se

 

Edited by longen
Link to post
Share on other sites
Posted (edited)
On 2020-05-07 at 12:33, longen sade:

Börjar trilla in lite mer delar till projektet.

Nu saknas bara den minst viktiga komponenten (VINGEN) 😭🙂

 

 

17C750D0-AFD4-4A2A-BDED-19ADFEAEE3D3.jpeg

 

Hej 

Vad är det för dimension på rören ? Behöver 1,5 m stålrör med 12 mm innerdiameter . Var köpte du den ? 

// Sorin 

Edited by sorin
Link to post
Share on other sites
15 minuter sedan, sorin sade:

Hej 

Vad är det för dimension på rören ? Behöver 1,5 m stålrör med 12 mm innerdiameter . Var köpte du den ? 

// Sorin 

Hej Sorin!

Biten jag köpte var masiv rundstång av Aluminium 

ALUMINIUM 15mm EN-AW 7075 -T6 1000mm

Köptes på https://metallbiten.se/

Hyfsat snabb leverans därifrån 😄

Dom verkar inte ha rör på den sidan såg jag nu bara massiva stänger av olika slag. https://metallbiten.se/stal

  • Like 1
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...