![Walking Strandbeest, Java/Python och App Controlled: 4 steg (med bilder) Walking Strandbeest, Java/Python och App Controlled: 4 steg (med bilder)](https://i.howwhatproduce.com/images/011/image-31847-j.webp)
Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:11
Av arrowlikeFölj mer av författaren:
![Experimentell studie av enkel harmonisk rörelse Experimentell studie av enkel harmonisk rörelse](https://i.howwhatproduce.com/images/011/image-31847-1-j.webp)
![Experimentell studie av enkel harmonisk rörelse Experimentell studie av enkel harmonisk rörelse](https://i.howwhatproduce.com/images/011/image-31847-2-j.webp)
Detta Strandbeest -kit är ett DIY -arbete baserat på Strandbeest som uppfanns av Theo Jansen. Förvånad över den geniala mekaniska designen vill jag utrusta den med full manövrerbarhet och nästa datorintelligens. I denna instruerbara arbetar vi med den första delen, manövrerbarhet. Vi täcker också den mekaniska strukturen för datorn med kreditkortstorlek, så att vi kan leka med datorsyn och AI -bearbetning. För att förenkla byggnadsarbetet och eance använde jag inte arduino eller liknande programmerbar dator, istället byggde jag en bluetooth -hårdvarukontroll. Denna handkontroll, som fungerar som terminalen som interagerar med robotmaskinvaran, styrs av ett mer kraftfullt system, till exempel en Android -telefonapp eller RaspberryPi, etc. Kontrollen kan antingen vara mobiltelefon -UI -kontroll eller programmerbar kontroll i python- eller Java -språk. Ett SDK för varje programmeringsspråk har öppen källkod på
Eftersom användarhandboken för mini-Strandbeest är ganska tydlig när det gäller att förklara byggstegen kommer vi i denna instruktion att fokusera på informationen som vanligtvis inte täcks i användarmanualen och de elektriska/elektroniska delarna.
Om vi behöver en mer intuitiv idé om den mekaniska monteringen av detta kit, finns det en hel del bra videor om monteringsämnet, till exempel
Tillbehör
För att konstruera den mekaniska delen och göra all elektrisk anslutning av denna Strandbeest bör det ta mindre än 1 timme att slutföra om väntetiden för 3D -utskrift inte räknas. Det kräver följande delar:
(1) 1x standard Strandbeest-kit (https://webshop.strandbeest.com/ordis-parvus)
(2) 2x DC-motor med växellåda (https://www.amazon.com/Greartisan-50RPM-Torque-Re…)
(3) 1x Bluetooth -kontroller (https://ebay.us/Ex61kC?cmpnId=5338273189)
(4) 1x LiPo -batteri (3,7V, ditt val av kapacitet i mAh)
(5) 12x M2x5.6mm träskruvar
(6) 2 mm diameter kol- eller bambustång
3D -utskrift av följande delar:
(1) 1x robotik huvuddel
(Designfil med 3D -utskrift med endast Bluetooth -kontroller kan laddas ner)
(3D -utskriftsdesignfil med ytterligare OrangePi Nano -nedladdning)
(2) 2x drivaxelfläns (nedladdning av 3D -designfil)
(3) 2x strömsystemsarmatur (nedladdning av designfil i 3D -utskrift)
Andra:
Android mobiltelefon. Gå till Google playstore, sök i M2ROBOTS och installera kontrollappen.
Om det är svårt att komma åt Google playstore, besök min personliga hemsida för alternativ apphämtningsmetod
Steg 1: Delorganisation
![Delorganisation Delorganisation](https://i.howwhatproduce.com/images/011/image-31847-3-j.webp)
![Delorganisation Delorganisation](https://i.howwhatproduce.com/images/011/image-31847-4-j.webp)
![Delorganisation Delorganisation](https://i.howwhatproduce.com/images/011/image-31847-5-j.webp)
![Delorganisation Delorganisation](https://i.howwhatproduce.com/images/011/image-31847-6-j.webp)
I detta steg kommer vi att organisera alla delar som ska monteras. Figur 1. visar alla out-of-box-plastdelar som vi använder för att bygga modellen Strandbeest. De tillverkas genom formsprutning, vilket är mycket högeffektivt, jämfört med andra bearbetningsmetoder som 3D -tryck eller fräsning. Det är därför vi vill dra mest nytta av den massproducerade produkten och bara anpassa den minsta mängden delar.
Som visas i figur 2 har varje plastplatta ett märkt alfabet, individuell del har inte märkning. När de väl har tagits isär finns det ingen mer märkning. För att lösa detta problem kan vi lägga delar av samma typ i olika lådor, eller helt enkelt markera flera områden i ett papper och sätta en sorts delar i ett område, se figur 3.
För att klippa av plastdelen från den större plastplattan, är sax och kniv kanske inte lika effektiva och säkra som tången som visas i fig. 4 och 5.
Allt här är tillverkat av plast, förutom att tårmaterialet är gummi, se bild 6. Vi kan skära enligt de färdiga snittarna. Gummimaterialets mjuka karaktär ger strandbeest bättre greppprestanda. Det är särskilt sant när man klättrar i en sluttning. I senare ämnen kan vi testa dess förmåga att klättra i olika lutningsvinkel, med och utan gummitår. När det inte finns någon glidning kallas det statisk friktion. När det tappar greppet blir det kinetisk friktion. Friktionskoefficienten beror på de material som används, det är därför vi har gummitårarna. Hur man utformar ett experiment, räcker upp handen och säger ifrån.
Den sista figuren innehåller "ECU", "Power train" och chassi för denna modell Strandbeest.
Steg 2: Uppmärksamhetsvärda punkter under mekanisk montering
![Poäng värda uppmärksamhet under mekanisk montering Poäng värda uppmärksamhet under mekanisk montering](https://i.howwhatproduce.com/images/011/image-31847-7-j.webp)
![Poäng värda uppmärksamhet under mekanisk montering Poäng värda uppmärksamhet under mekanisk montering](https://i.howwhatproduce.com/images/011/image-31847-8-j.webp)
![Poäng värda uppmärksamhet under mekanisk montering Poäng värda uppmärksamhet under mekanisk montering](https://i.howwhatproduce.com/images/011/image-31847-9-j.webp)
Mini-Strandbeest har en ganska bra bruksanvisning. Det ska vara ett enkelt jobb att följa manualen och slutföra monteringen. Jag hoppar över detta innehåll och lyfter fram några intressanta punkter som är värda vår uppmärksamhet.
I figur 1 är ena sidan av slitsen som håller gummitår 90-graders hörn, medan den andra sidan har en 45-graders lutning, som officiellt kallas fasning. Sådan lutning styr gummitån för att passa in i plastfoten. Prova att installera tårna från sidan med avfasning, se bild 2, prova sedan den andra sidan. Skillnaden är mycket märkbar. Höger sida av figur 3 är veven i vår Stranbeest. Det är väldigt likt veven i en motor, bilmotor, motorcykelmotor, alla delar samma struktur. I ett Strandbeest, när veven vänder, driver den fötterna att röra sig. För en motor är det kolvens rörelse som driver veven att svänga. Sådan 120-graders separation i en cirkel leder också till en trefasmotor eller generator, den elektriska effekten är 120-graders isär, som visas i figur 4. När vi väl har monterat de mekaniska delarna för vänster och höger sidokropp börjar vi nu arbeta med de delar vi lägger till i Strandbeest, se figur 5. Fig. 6 är steget vi använder den 3D-tryckta motorklämman för att fästa motorn på det 3D-tryckta chassit. I detta steg är tricket att ingen av skruvarna ska dras åt innan motorläget justeras så att chassiets sidoyta är densamma som motorns yta. När vi är nöjda med inriktningen kan vi dra åt alla skruvar. Gå vidare till fig. 7, vi arbetar med installationen av flänskopplingen, som ansluter motorutgången till veven. Motorsidan är svårare att installera än vevsidans anslutning, se bild 8. Därför ansluter vi först motorns sidofläns. När flänskopplingen för båda motorerna har installerats, som visas i figur 9, använder vi två stycken kolstänger med en diameter på 2 mm för att ansluta chassit och vänster/höger gångstruktur. Det händer i FIg.10. Totalt använder vi 3 stycken kolstavar för att ansluta dessa enheter. Men i det här steget ansluter vi bara två av dessa, eftersom vi behöver vrida veven och passa anslutningen mellan flänsen och veven. Om 3 bitar kolstänger har varit på plats blir det svårare att justera den relativa positionen och ansluta dem. Slutligen har vi det slutliga monterade mekaniska systemet, i fig. 11. Nästa steg, låt oss arbeta med elektronik.
Steg 3: Elektrisk anslutning
![Elektrisk koppling Elektrisk koppling](https://i.howwhatproduce.com/images/011/image-31847-10-j.webp)
![Elektrisk koppling Elektrisk koppling](https://i.howwhatproduce.com/images/011/image-31847-11-j.webp)
![Elektrisk koppling Elektrisk koppling](https://i.howwhatproduce.com/images/011/image-31847-12-j.webp)
Alla elektroniska system behöver strömförsörjning. Vi kan sätta ett 1-cellars batteri någonstans bekvämt, till exempel under kretskortet i fig 1. Strömförsörjningens polaritet är så kritisk att den förtjänar en särskild siffra att diskutera. Bild 2 belyser batterianslutningen. I styrkortet är polariteten markerad med "+" och "GND", se bild 3. När batteriet tar slut, används en USB -kabel för att ladda batteriet, se bild 4. Lysdioden som indikerar "laddning pågår" stängs av automatiskt när batteriet blir fullt igen. Det sista steget är att ansluta motoruttagen till motoranslutningarna i styrkortet. Det finns tre motorkontakter, märkta med nummer 16 i fig 3. I figur 5 är den vänstra motorn ansluten till den vänsterkontakt som är märkt med PWM12, och den högra motorn är ansluten till den mellersta kontakten. För närvarande är det svårt att koda en tank (differentialdrivande fordon) åt vänster som minskning av motorns ingångseffekt ansluten till motorporten PWM12. Därför bör motorn ansluten till PWM12 -porten driva de vänstra fötterna. Jag kommer senare att konvertera all blandningsfunktion till att vara konfigurerbar av användare. som Genom att byta motoranslutningsval eller vända motorkontaktriktningen kan vi åtgärda problemet, till exempel att Strandbeest rör sig bakåt när det beordras att gå framåt, vrider fel riktning, kom ihåg att DC -motorn ändrar sin rotationsriktning om ingångstråden är ansluten till styrenheten i omvänd ordning.
Steg 4: Appinställningar och drift
![Appinställningar och drift Appinställningar och drift](https://i.howwhatproduce.com/images/011/image-31847-13-j.webp)
![Appinställningar och drift Appinställningar och drift](https://i.howwhatproduce.com/images/011/image-31847-14-j.webp)
![Appinställningar och drift Appinställningar och drift](https://i.howwhatproduce.com/images/011/image-31847-15-j.webp)
![Appinställningar och drift Appinställningar och drift](https://i.howwhatproduce.com/images/011/image-31847-16-j.webp)
Vi laddar först ner en Android -app från Google Play Store, se bild 1. Denna app har massor av andra funktioner som vi inte kan täcka i denna instruerbara, vi kommer bara att fokusera på de direkt relaterade ämnena för Strandbeest.
Slå på hårdvarans bluetooth -kontroller, den visas i listan över upptäcktsenheter. Långt klick tar oss till överföringsfunktionen för nedladdning för att "instrueras" senare. Innan vi klickar och startar kontrollen, låt oss göra några konfigurationer först genom att klicka på det övre högra hörnet "Inställningar". I figur 2 är den dold under ikonen…. Fig. 3 visar flera inställningskategorier. Dessa inställningar, konfigurerade i appen, sätts i drift på tre sätt: 1) vissa inställningar påverkar bara Appens funktion, till exempel aritmetik för att få varje motors effektstyrningskommando från din styrning och gasreglage. De bor i appen. I några senare instruktioner kommer vi att visa hur vi ersätter dem med våra Python/Java -program. 2) någon inställning skickas till hårdvaran som en del av kontrollprotokollet i luften, till exempel växlingen mellan direktkontroll (servo vrider exakt den kommenderade vinkeln) och flygning med trådstyrning (den inbyggda autonoma kontrollfunktionsmodulen driver servon kanal enligt användarkommando och nuvarande inställning) 3) någon inställning kommer att skickas till det icke-flyktiga minnet i maskinvarukontrollen. Därför kommer hårdvaran att följa dessa inställningar varje gång den slås på utan att konfigureras. Ett exempel är enhetens Bluetooth -sändningsnamn. Denna typ av inställningar behöver en strömcykel för att träda i kraft. Första kategorin vi dyker in i är "Allmänna inställningar" i Fig.4. "Appkontrollfunktionen" i figur 5 definierar vilken roll den här appen spelar, en styrenhet för hårdvaruenheten över direkt Bluetooth -anslutning; en bro över intranät/internet för telekontroll; och etc. Sedan berättar sidan "HW -typ" i fig. 6 om appen du arbetar med ett differentialkörande fordon, så "tank" -läget måste väljas. Vi har totalt 6 PWM -utgångar tillgängliga. För Strandbeest måste vi konfigurera kanal 1 till 4 enligt figur 7. Varje PWM -kanal drivs i ett av följande lägen: 1) servo normal: RC servo som styrs av 1 till 2ms PWM -signal 2) servo back: regulatorn kommer att vända användarkontrollen för sin utgång 3) DC -motorns driftscykel: a DC motor eller någon elektrisk elektrisk enhet, kan manövreras i driftcykelläge, 0% är avstängning, 100% är alltid på. 4) DC -motorens driftscykel omvänd: återigen kommer regulatorn att vända användarkontrollen för sin utgång Eftersom vi använder likströmsmotor och tar hand om motorns rotationsriktning med hårdvarukablar, väljer vi "DC -motorens arbetscykel" för kanal 1 till 4, se bild 8. Vi måste också slå samman 2 PWM-kanaler till 1 H-bro för att möjliggöra dubbelriktad kontroll. Detta steg visas i fig 9. I läget”2 PWM-kanaler till 1 H-brygga” används kanal 1, 3 och 5 för att styra båda associerade kanalerna. Det introducerar ett behov av att omforma gasreglaget, upp-ned-styrningen av joysticken från dess standardkanal 2 till kanal 3. Det uppnås i Fig.10-inställningar. Såsom visas i fig. 11 är varje kanal konfigurerad att ta en godtycklig ingångskälla.
Bingo, nu har vi slutfört den minimikrav som krävs, och vi kan gå tillbaka till sidan som visar synlig Bluetooth -enhet och få den ansluten. I fig. 12, prova att spela joysticken, så kan vi ha kul med denna Strandbeest. Prova att klättra på en sluttning, kom ihåg analysen av friktion mellan materialtyper och läs flygkontrollens uppskattade inställning, som visas i raden märkt med "RPY (deg)", de fyra posterna i den här raden är rullning, tonhöjd, gaffelvinkel uppskattat av gyroskop och accelerometer ombord; den sista posten är lutkompenserad kompassutgång.
Framtida arbete: i följande instruktioner kommer vi gradvis att täcka dess programmeringsgränssnitt, välja ditt favoritspråk Java eller Python för att interagera med Strandbeest, och inte längre läsa strandbeest status från mobiltelefonens skärm. Vi kommer också att börja programmera i Linux -dator av typen RaspberryPi för mer avancerade programmeringsämnen, se den sista figuren. Kolla https://xiapeiqing.github.io/doc/kits/strandbeest/roboticKits_strandbeest/ för 3D -utskriftsmekaniska delar och https://github.com/xiapeiqing/m2robots.git för SDK och exempelkod om du vill börja omedelbart. Låt mig veta vad ditt önskade programmeringsspråk är om inte Java eller Python, jag kan lägga till en ny version av SDK.
Ha kul med hacking och håll utkik efter följande instruktioner.
Rekommenderad:
Arduino/App Controlled Desk Light: 6 steg (med bilder)
![Arduino/App Controlled Desk Light: 6 steg (med bilder) Arduino/App Controlled Desk Light: 6 steg (med bilder)](https://i.howwhatproduce.com/images/010/image-28666-j.webp)
Arduino/App Controlled Desk Light: För det här projektet ville jag ha något som skulle tillåta mig att lära mig mer om elektronik/programvara, något jag inte riktigt kommit in på ännu .. Jag bestämde mig för att ett ljus skulle vara en bra plattform för detta. design jag kom med var för en uplighter
Fjärrövervakning av temperatur och luftfuktighet med ESP8266 och Blynk App: 15 steg
![Fjärrövervakning av temperatur och luftfuktighet med ESP8266 och Blynk App: 15 steg Fjärrövervakning av temperatur och luftfuktighet med ESP8266 och Blynk App: 15 steg](https://i.howwhatproduce.com/images/004/image-9927-j.webp)
Fjärrövervakning av temperatur och luftfuktighet med ESP8266 och Blynk App: Det var mitt första projekt med ESP8266 -chip. Jag har precis byggt ett nytt växthus nära mitt hus och det var intressant för mig vad som händer där under en dag? Jag menar hur temperatur och luftfuktighet förändras? Är växthuset tillräckligt ventilerat? Så jag bestämde mig
Arduino 4-hjulsdriven Bluetooth RC-bil med UNO R3, HC-05 och L293D Motorshield med kodning och Android-app: 8 steg
![Arduino 4-hjulsdriven Bluetooth RC-bil med UNO R3, HC-05 och L293D Motorshield med kodning och Android-app: 8 steg Arduino 4-hjulsdriven Bluetooth RC-bil med UNO R3, HC-05 och L293D Motorshield med kodning och Android-app: 8 steg](https://i.howwhatproduce.com/images/005/image-12768-8-j.webp)
Arduino 4 Wheel Drive Bluetooth RC Car Using UNO R3, HC-05 and L293D Motorshield With Coding and Android App: Idag ska jag berätta om hur man gör en arduino 4 wheel drive bluetooth RC car using HC 05, L293 motor shield, 4 likströmsmotor, med kodning och app för android för att styra bil.Komponent som används: -1-Arduino UNO R32-Bluetooth HC-053-Motorshield L293
8 Reläkontroll med NodeMCU och IR -mottagare med WiFi och IR -fjärrkontroll och Android -app: 5 steg (med bilder)
![8 Reläkontroll med NodeMCU och IR -mottagare med WiFi och IR -fjärrkontroll och Android -app: 5 steg (med bilder) 8 Reläkontroll med NodeMCU och IR -mottagare med WiFi och IR -fjärrkontroll och Android -app: 5 steg (med bilder)](https://i.howwhatproduce.com/images/002/image-4439-69-j.webp)
8 Reläkontroll med NodeMCU och IR -mottagare med WiFi och IR -fjärrkontroll och Android -app: Styrning av 8 reläväxlar med nodemcu och IR -mottagare via wifi och IR -fjärrkontroll och Android -app. Fjärrkontrollen fungerar oberoende av wifi -anslutning. HÄR ÄR EN UPPDATERAD VERSIONKLICK HÄR
Temperatur och fuktighet Display och datainsamling med Arduino och bearbetning: 13 steg (med bilder)
![Temperatur och fuktighet Display och datainsamling med Arduino och bearbetning: 13 steg (med bilder) Temperatur och fuktighet Display och datainsamling med Arduino och bearbetning: 13 steg (med bilder)](https://i.howwhatproduce.com/images/003/image-7803-43-j.webp)
Temperatur- och luftfuktighetsvisning och datainsamling med Arduino och bearbetning: Intro: Detta är ett projekt som använder ett Arduino -kort, en sensor (DHT11), en Windows -dator och ett bearbetningsprogram (ett gratis nedladdningsbart) för att visa temperatur, luftfuktighetsdata i digital och stapeldiagramform, visa tid och datum och kör en räkningstid