
Michael Cain
0
2063
67
At komme ind i DIY Arduino-robotik kan være skræmmende, hvis du aldrig har kodet før. Ligegyldigt hvor storslåede dine ideer er, hvis du ikke kan programmere din mikrocontroller vil din robot ikke gøre meget.
Heldigvis er der måder at programmere din Arduino uden at skrive en enkelt kodelinie. I dag ser vi på grundlæggende robotik ved hjælp af Xod, en open source visuel programmeringsknudebaseret Arduino-kompatibel IDE.
Den kode-fri robot
Dagens projekt bruger nogle standard hobbyrobotikkomponenter til at skabe en prototype af en fjernfølende robotarm. Kombinationen af en servo og en ultrasonisk afstandssensor er almindelig inden for hobbyrobotik, og du tilføjer en LCD-skærm.
Det færdige projekt vil registrere afstandsværdier på LCD-skærmen og flytte servoarmen i forhold til afstanden detekteret af afstandsdetektoren.
Med lidt fantasi er dette en robotarm, der prøver at gribe dig, hvis du kommer for tæt på. Uhyggelig!
Hardwarekrav
Du får brug for:
- Arduino-kompatibelt bord (dette projekt bruger en Uno)
- 16 × 2 LCD-skærm
- HC-SR04 ultralydsafstandsføler
- Hobby servo
- 10k potentiometer
- 220 ohm modstand
- 5v strømforsyning
- Breadboard og hookup ledninger
Der er ganske mange komponenter, der kræves til dette projekt, men ethvert godt Arduino-startkit skal have alt hvad du har brug for. Jeg fandt alt, hvad jeg havde brug for, i Elegoo Uno R3 startpakken. Alternativt er alle komponenter, der er anført ovenfor, superbillige og fås hos alle gode elektroniske hobbyforhandlere.
Opsætning af LCD-skærmen
Tilføj din LCD-skærm, 10k potentiometer og 220 ohm-modstand til brødbrættet i henhold til ovenstående Fritzing-diagram.
Opsætning af en LCD kan være temmelig skræmmende første gang du gør det, men fortsæt med at henvise til diagrammet, så får du det! For at gøre det enklere har jeg indstillet, at LCD- og Arduino-nålene skal være nøjagtigt de samme som i den officielle Arduino LCD-tutorial, så se også til det, hvis du sidder fast.
Tilføjelse af servo og ultralydsensor
Tilføj nu din HC-SR04 ultralydssensor til brødbrættet. Tilslut VCC og GND stifter til 5v og jordskinner på brødbrættet. Tilslut Trig pin til Arduino pin 7, og Ekko pin til 8.
Tilslut derefter din servo. Kabelfarverne kan variere her, men som hovedregel rød forbindes til 5v pin, og Brun eller sort fastgør til GND pin. Datalinjen, som normalt er gul eller orange, opretter forbindelse til pin 10.
Tilslut sluttes jordskinnen på brødbrættet til en af Arduino'erne GND ben. Det er det! Du er alle klar.
Download af Xod IDE
Gå til Xod.io og download den gratis Xod IDE. Det er tilgængeligt for Windows, Mac og Linux. Der er også en browser-baseret version, men da du ikke kan bruge den til at uploade Arduino-skitser, fungerer den ikke til dette projekt.
Hent: Xod IDE til Windows, Mac og Linux
Blink med Xod
Når du åbner Xod for første gang, ser du tutorial-projektet; alternativt kan du åbne det under Hjælp menu. Udfold velkommen-til-XOD samling i projektbrowseren til venstre, og vælg 101-upload.
Denne nodeopsætning er til test, hvis kode uploades med succes til Arduino. Det fungerer på samme måde som en Blink-skitse i Arduino IDE. Det ur node opretter et signal hvert sekund. Dette forbindes til flip-flop node, der skifter frem og tilbage mellem sandt og falsk hver gang det modtager signalet. Outputtet fra flip-flop forbindes til led node, slukke og tænde den.
Klik på den ledede knude, så ser du inspektionsruden ændres for at vise dens parametre. Skift Havn til 13 som vist ovenfor, stiften med en indbygget LED på en Arduino. Bemærk, at Xod automatisk bliver 13 til D13. Du behøver ikke selv at skrive D, men det gør ingen forskel for denne tutorial, hvis du gør det!
For at teste, om det fungerer, fastgør din Arduino via USB, skal du gå til Implementere> Upload til Arduino og vælg den rigtige bordtype og COM-port.
Hvis du ser Arduino-LEDen blinke, er du god til at gå! Hvis ikke, skal du kontrollere dit bord og portnummer og teste igen, før du fortsætter.
Programmering af LCD
Normalt vil vi komme ind i den lange kodningsproces nu, men da vi bruger Xod, skriver vi ikke noget. I projektbrowser skal du vælge tekst-LCD-16 × 2-du finder det under XOD / common-hardware. Træk det ind i dit program, og brug inspektøren til at indstille det med stifterne som vist.
L1 er den første linje på LCD, og L2 er det andet, for nu har vi hårdkodet “Hej Verden” for at kontrollere, at alt fungerer. Distribuer dit program til Arduino for at se det fungere. Hvis din tekst er svær at se, kan du prøve at dreje 10k potentiometer for at justere LCD-kontrasten.
Nu skal du indstille afstandssensoren og få den til at tale med LCD-skærmen.
Afstandsmåling
Træk hc-SR04-ultralyd-området node ind i dit projekt, og indstil TRIG og EKKO stifter til 7 og 8 for at matche, hvordan du opsætter det tidligere.
Du finder den concat node under XOD / kerne i projektbrowseren. Træk det mellem din ultralydsområde-sensornode og LCD-knuden. Du bruger dette til at sammenkæde (hvilket er et fint ord at kombinere) aflæsningen af afstandsføleren med din egen tekst.
Dette billede viser, hvad der foregår. Det Dm output fra områdesensornoden er tilsluttet IN2, og du kan se, at inspektøren markerer det som knyttet. Type “Afstand: ” ind i IN1 boks. Forbind nu output fra concat-noden til L1 af LCD-knuden.
Gem og implementer det ændrede program. Den øverste linje på LCD viser nu aflæsningen fra afstandsføleren!
Servoopsætning
At starte servo kræver tre dele, så lad os gennemgå dem en efter en. Start med at trække a map-klip node fra XOD / matematik ind i dit program. Denne knude tager information fra Dm output fra afstandsfølerens knude og kortlægger det til værdier, som servoen forstår.
smin og Smax repræsenterer det minimale og maksimale interval for at aktivere servoen, i dette tilfælde mellem 5 og 20 cm. Disse værdier er kortlagt tmin og Tmax, som er indstillet til 0 og 1 som minimums- og maksimal servoposition.
Det falme node under XOD / kerne tager outputværdien af kortklipknuden og udjævner den ved en defineret sats. Dette forhindrer uønsket rykkende servobevægelse. En hastighed på 2 er en god balance, men du kan eksperimentere med forskellige værdier her for at få servoen til at reagere hurtigere og langsommere.
Endelig servo node, som du finder under XOD-dev / servo, tager outputværdien fra fade-noden. Skift port til 10. Du kan gå UPD på løbende da vi ønsker, at vores servo kontinuerligt skal opdateres baseret på afstandsføleren.
Gem dit script, og indsæt det på Arduino-tavlen. Din prototype robotarm er færdig!
Test det ud
Når du nu lægger noget tæt på afstandsføleren, logger LCD-skærmen afstanden, og servoen bevæger sig proportionalt med den detekterede afstand. Alt dette uden nogen kode overhovedet.
Det fulde nodetræ viser, hvor enkel det er at oprette komplekse programmer i Xod. Hvis du har problemer, skal du kontrollere både dit kredsløb og hver node omhyggeligt for fejl.
No-Code Arduino-robotten
Xod giver enhver mulighed for at programmere Arduino-tavler, uanset kodningskendskab. Xod arbejder endda med Blynk DIY IoT app, hvilket gør en komplet kodefri DIY smart home til en reel mulighed.
Selv med værktøjer som Xod er det at lære at kode være vigtigt for DIY-projekter. Heldigvis kan du lære kode på din smartphone Vil du lære grundlæggende kodning? Prøv 5 bit-størrelse kodningsapps på din fritid Vil du lære grundlæggende kodning? Prøv 5 bit-størrelse kodningsapps på din fritid Vil du lære grundlæggende kodning, men har lidt tid? Disse kodnings-apps til bidestørrelse tager kun få minutter af din travle dag. at hente det grundlæggende!