Kazalo:
- Korak: Kaj boste potrebovali
- 2. korak: Dokumentacija
- 3. korak: Pripravite podporo za ultrazvočni senzor
- 4. korak: Vstavite vse v ploščo za izdelavo prototipov
- 5. korak: Vzpostavitev končnih povezav
- 6. korak: Zagon programa
- 7. korak: Razumevanje kode C
- 8. korak: Razumevanje kode Java
- 9. korak: Zaključek
Video: Projekt 3: SonarDuino: 9 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:05
Dragi kolega hobist, V tem projektu bomo raziskali možnost 360 -stopinjskega radarskega sistema za zaznavanje predmetov. Z ločeno nastavitvijo tega modula bo vaš lokomotorni robot zaznal meje svoje okolice. Lahko služi tudi kot navigacijsko orodje v temi, vendar le, če hodite dovolj počasi; str
Korak: Kaj boste potrebovali
Za izdelavo te zgradbe boste morali kupiti naslednje:
Arduino Nano: https://www.ebay.com/itm/USB-Nano-V3-0-ATmega328-16M-5V-Mikro-kontroler-CH340G-board-For-Arduino/201601613488?hash=item2ef0647eb0:g:DkoAAOSwvYZZpO: rk: 2: pf: 0
Prototipov odborov: https://www.ebay.com/itm/20pcs-set-4Size-Double-Side-Protoboard-Circuit-Universal-DIY-Prototype-PCB-Board/192076517108?epid=506557101&hash=item2cb8a70ef4:g:cQ4AAOSwN ~ Zbl232: rk: 13: pf: 0
Servo motorji: https://www.ebay.com/itm/5pcs-POP-9G-SG90-Micro-Servo-motor-RC-Robot-Helicopter-Airplane-Control-Car-Boat/142931003420?hash=item21475a081c:rk: 16: pf: 0 & var
Ultrazvočni senzorji: https://www.ebay.com/itm/5PCS-Ultrasonic-Sensor-Module-HC-SR04-Distance-Measuring-Sensor-for-arduino-SR04/170897438205?epid=18020663283&hash=item27ca47f5d ~ IAAOSw-xbD5Fp: rk: 2: pf: 0
2. korak: Dokumentacija
Ker nekateri to morda že veste, je ta projekt navdihnjen z drugim odprtokodnim projektom, imenovanim “Arduino Radar Project”, ki ga je izdelal Dejan iz “How to Mechatronics” @ na naslednji povezavi: https://howtomechatronics.com/projects/arduino -radar-project/
Druga točka, ki zahteva dokumentacijo, je prenos naslednjih dveh knjižnic v vaše razvojno okolje:
Knjižnica Adafruit-GFX:
Adafruit_SSD1306:
Če želite razumeti kodo C, boste morali narediti nekaj dokumentacije obeh zgornjih knjižnic. Razen tega imajo funkcije, ki sem jih uporabil v svoji kodi, imena, ki označujejo, kaj počnejo.
3. korak: Pripravite podporo za ultrazvočni senzor
Vzemite kateri koli kos kartona in ga razrežite glede na dimenzije priključnih kablov, pritrjenih na senzor, kot je prikazano na prvi sliki. Nato zložite zadnji del in ga prilepite na nosilec servo motorja. Ko to storite, lepite dva ultrazvočna senzorja v skladu z zadnjo sliko. Upoštevajte, da je treba glavo senzorjev spajkati tako, da kabli gredo navzven pred senzorjem. To bo omogočilo, da senzorski kabli ne bodo motili drug drugega, ko se izvede rotacija za 360 stopinj.
4. korak: Vstavite vse v ploščo za izdelavo prototipov
V tem koraku boste začeli z montažo glave, pripravljene v prejšnjem koraku, v ustrezni servo motor. Ko se servo motor skrbno navadi, boste vse skupaj namestili v prototipno ploščo. Začeli boste s spajkanjem Arduino Nano, nato pa lepite servo tik ob njem. Na koncu boste spajkali majhen zaslon OLED na drugem robu plošče.
5. korak: Vzpostavitev končnih povezav
Ta korak bo zaključil strojno stran tega projekta. Za vzpostavitev vseh potrebnih povezav boste morali upoštevati priložene sheme.
6. korak: Zagon programa
Za zagon morate uporabiti dve kodi
Arduino (C):
Obdelava (java):
Pri zagonu kode boste imeli na izbiro dve možnosti:
Možnost 1: Z zaslonom OLED boste morali spremenljivko MODE v kodi C nastaviti na 0.
Možnost 2: Z uporabo svojega monitorja boste morali za spremenljivko MODE v kodi C nastaviti 1. Poleg tega boste morali prenesti in namestiti razvojno okolje Processing ter s te povezave prenesti radarsko pisavo: https:// github.com/lastralab/ArduinoRadar/blob/ma…
In dodajte to datoteko v datoteko s kodo za obdelavo, tako da bo vaša koda java ob klicu prepoznala pisavo.
7. korak: Razumevanje kode C
Koda je sestavljena predvsem iz dveh zank "za". Eden je povezan s prehodom naprej, drugi pa s prehodom nazaj. Znotraj obeh se večkrat pokliče glavna funkcija draw_scanner (), ki bo risala črte radarja na zaslon. Po preizkusu več konfiguracij sem prišel do zaključka, da moramo bele radarske črte v času t prepisati s črnimi črtami v času t+1, da jih lahko izbrišemo. V nasprotnem primeru bi utripanje nastalo vsakič, ko očistite zaslon s funkcijo “clearDisplay ()”, preden potisnete novo mrežo slikovnih pik. Ker sem se ukvarjal s 7 vrsticami- za namene oblikovanja- sem moral še naprej shranjevati in posredovati celoštevilsko matriko 7 elementov, kjer vsak element stoji za polmer med središčem radarja do zaznanega predmeta, če sploh. Ob upoštevanju tega bi morala biti preostala koda razumljiva.
8. korak: Razumevanje kode Java
Pri obdelavi sem moral zaobiti klic funkcije za serialEvent (), ki deluje samo s serijskimi vrati z imenom COM. Ko sem delal na Macu, so moja serijska vrata dobila drugo ime. Kot rečeno, sem to funkcijo razpakiral v glavno funkcijo pri obdelavi »draw ()«. Kar zadeva vse ostalo, sem aplikacijo posodobil tako, da ustreza celotni zasnovi revolucije. Nazadnje sem posodobil vse narisane oblike in besedila glede na širino zaslona, tako da bo končni izdelek ustrezal različnim ločljivostim zaslona. Osebno sem ga preizkusil za ločljivosti 1000X1000 in 500X500 in delal je v redu:).
9. korak: Zaključek
To delo je mogoče nadgraditi na 3 ultrazvočne senzorje, od katerih vsak pokriva 120 vidnih kotov ali celo 4 senzorje (90 stopinj*4) -> hitreje 360 stopinj. skeniranje.
Domet radarja lahko razširite tudi s 40 cm na 60 cm ali celo na 80 cm. Osebno sem preizkusil funkcijo pulseIn in prilagodil spremenljivko TIMEOUT glede na 40 cm. Ta spremenljivka je odvisna od številnih dejavnikov, vključno z dolžino pošiljanja impulza in površino predmeta, kjer se impulz odbije.
Kot je že navedeno, je naslednji korak vključitev radarDuino z lokomotornim robotom za skeniranje okoliškega oboda.
Priporočena:
Linefollower HoGent - sintetični projekt: 8 korakov
Linefollower HoGent - Syntheseproject: Če želite, da vaš projekt sintetizira kregen, ki smo ga opdracht een linefollower te maken. In deze instructable zal ik uitleggen hoe ik deze gemaakt heb, en tegen welke problemen ik o.a ben aangelopen
Projekt stabilizatorja kardanske gredi: 9 korakov (s slikami)
Projekt stabilizatorja karbona: Kako narediti kardan Naučite se, kako narediti dvoosni kardan za svojo akcijsko kamero V današnji kulturi vsi radi snemamo videoposnetke in zajemamo trenutke, še posebej, če ste ustvarjalec vsebin, kot sem jaz, ste se zagotovo soočili z vprašanjem tako pretresljiv video
Samodejni EKG- BME 305 Končni projekt Dodatni kredit: 7 korakov
Samodejni EKG-BME 305 Končni projekt Dodatni kredit: Elektrokardiogram (EKG ali EKG) se uporablja za merjenje električnih signalov, ki jih proizvaja utripajoče srce, in ima veliko vlogo pri diagnozi in prognozi bolezni srca in ožilja. Nekateri podatki, pridobljeni z EKG, vključujejo ritem
Projekt avtomatizirane posode za hrano za hišne živali: 13 korakov
Projekt avtomatizirane posode za hrano za hišne živali: ta navodila bodo prikazala in razložila, kako zgraditi avtomatizirano, programirano krmilnico za hišne ljubljenčke s pritrjenimi skledami za hrano. Tukaj sem priložil video, ki prikazuje, kako izdelki delujejo in kako izgledajo
Gorilnik z USB pogonom! Ta projekt lahko gori iz plastike / lesa / papirja (zabaven projekt mora biti tudi iz zelo lesenega lesa): 3 koraki
Gorilnik z USB pogonom! Ta projekt lahko gori iz plastike / lesa / papirja (zabaven projekt mora biti tudi iz zelo lesenega lesa): NE NAČINITE TEGA Z UPORABO USB !!!! Iz vseh komentarjev sem ugotovil, da lahko poškoduje vaš računalnik. moj računalnik je v redu. Uporabite polnilnik za telefon 600m 5v. Uporabil sem to in deluje brezhibno in nič se ne poškoduje, če uporabite varnostni vtič za zaustavitev napajanja