Kazalo:
- 1. korak: Sestavite ohišje robota
- 2. korak: žična elektronika
- Korak: Ustvarite blokovni diagram v Vivadu
- 4. korak: Nastavite okolje za razvoj programske opreme
- 5. korak: Spremenite predstavitveni program
- 6. korak: Vdelana programska oprema Flash za QSPI
- 7. korak: Konfigurirajte brezžično dostopno točko
- 8. korak: Zaženite program Java
- 9. korak: Umerite daljinomer
- 10. korak: Dostopnost
Video: WiBot: 10 korakov (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:05
Ta navodila podrobno opisujejo postopek izdelave robota Wi-Fi na platformi ZYBO. Ta projekt uporablja operacijski sistem v realnem času za odkrivanje predmetov, merjenje razdalje in odziven nadzor. Ta priročnik bo zajemal povezovanje ZYBO s perifernimi napravami, zagon vdelane programske opreme po meri in komunikacijo prek aplikacije Java. Spodaj je seznam vseh ključnih sestavin, potrebnih za ta projekt:
- 1 Razvojni odbor ZYBO
- 1 brezžični usmerjevalnik TL-WR802N
- 1 senčno ohišje
- 2 kolesa 65 mm
- 2 motorja z vrtljaji 140 vrt./min
- 2 dajalnika koles
- 1 Ultrazvočni senzor HC-SR04
- 1 Lokalni pretvornik BSS138
- 1 voznik motorja H-Bridge L293
- 1 12V do 5V DC/DC pretvornik
- 1 LiPo baterija 2200mAh
- 1 ethernetni kabel
- 1 kabel USB Micro-B
- 1 ženski konektor XT60
- 2 moški-ženski mostiček žice
- 30 moških moških žic
- 2 10 kΩ upori
- 1 Ogledna plošča
Poleg tega mora biti na ciljni računalnik nameščena naslednja programska oprema:
- Xilinx Vivado Design Suite 2018.2
- Digilent Adept 2.19.2
- FreeRTOS 10.1.1
- Razvojni komplet Java SE 8.191
1. korak: Sestavite ohišje robota
Sestavite senčno ohišje in motorje z gonilom in dajalnike pritrdite na spodnji okvir. ZYBO, ploščo in ultrazvočni senzor lahko namestite s priloženimi deli, ki jih je mogoče 3D natisniti in pritrditi na ohišje s pomočjo stojal in dvostranskega traku. Baterijo je treba namestiti blizu zadnje strani robota in po možnosti med zgornjo in spodnji okvirji. Usmerjevalnik namestite blizu ZYBO, pretvornik DC/DC pa blizu mize. Kolesa na samem koncu pritrdite na motorje zobnikov.
2. korak: žična elektronika
Priključite vhod in izhod pretvornika enosmernega/enosmernega tokokroga v dve vodili na plošči. Ti bodo služili kot 12V in 5V oskrba sistema. ZYBO priključite na 5V vodilo, kot je prikazano na sliki. Z napajalnim kablom USB Micro-B priključite usmerjevalnik tudi na 5V vodilo. Kabel XT60 je treba pritrditi na 12V vodilo. Ne priključujte baterije, dokler preostala elektronika ni pravilno priključena. Ultrazvočni senzor mora biti priključen na 5V tirnico. Ustvarite 3.3V vodilo na plošči z uporabo pin 6 Pmod vrata JC na ZYBO. Visokonapetostni vhod logičnega pretvornika mora biti priključen na 5V tirnico, nizkonapetostni vhod logičnega pretvornika pa na 3.3V vodilo. Dajalnike motorja priključite na tirnico 3.3V. VCC1 gonilnika motorja priključite na 5V tirnico in VCC2 na 12V tirnico. Pripnite vse EN zatiče na 5V in ozemljite vse zatiče GND.
Zatiča TRIG in ECHO ultrazvočnega senzorja priključite na HV1 oziroma HV2 logičnega pretvornika. LV1 je treba priključiti na JC4, LV2 pa na JC3. Glejte tabelo za izpise Pmod. Motorje priključite na gonilnik motorja. Y1 je treba priključiti na pozitivni priključek desnega motorja, Y2 pa na negativni priključek desnega motorja. Podobno je treba Y3 priključiti na pozitivni priključek levega motorja, Y4 pa na negativni priključek levega motorja. A1, A2, A3 in A4 je treba preslikati v JB2, JB1, JB4 in JB3. Za številke pin glejte shemo. Priključite JC2 na desni dajalnik in JC1 na levi dajalnik. Prepričajte se, da se za povezovanje teh signalov na tirnico 3.3V uporabljajo vlečni upori. V zadnjem času uporabite ethernetni kabel za povezavo ZYBO z usmerjevalnikom.
Korak: Ustvarite blokovni diagram v Vivadu
Ustvarite nov projekt RTL v Vivadu. Zaenkrat ne navedite nobenih virov. Poiščite »xc7z010clg400-1« in pritisnite na konec. Prenesite encoder_driver.sv in ultrasonic_driver.sv. Postavite jih v lastne mape. Odprite IP Packager v razdelku "Tools" in izberite pakiranje določenega imenika. Prilepite pot do mape z gonilnikom kodirnika in pritisnite »Naprej«. Kliknite "paket IP" in ponovite postopke za gonilnik ultrazvočnega senzorja. Nato se pomaknite do upravitelja skladišča v pododseku IP v meniju z nastavitvami. Dodajte poti v mape gonilnikov in pritisnite Uporabi, da jih vključite v knjižnico IP.
Ustvarite nov blok diagram in dodajte "Processing System ZYNQ7". Dvokliknite blok in uvozite priloženo datoteko ZYBO_zynq_def.xml. Pri »Konfiguracija MIO« omogočite časovnik 0 in GPIO MIO. pritisnite "V redu", da shranite konfiguracijo. Dodajte 3 bloke "AXI GPIO" in 4 bloke "AXI Timer". Zaženite avtomatizacijo blokov, ki ji sledi avtomatizacija povezave za S_AXI. Dvokliknite bloke GPIO, da jih konfigurirate. En blok mora biti dvokanalni s 4-bitnim vhodom in 4-bitnim izhodom. Naredite te povezave zunanje in jih označite kot SW za vhod in LED za izhod. Drugi blok mora biti tudi dvokanalni z 2 32-bitnima vhodoma. Zadnji blok GPIO bo en sam 32-bitni vhod. Naj bo izhod pwm0 iz vsakega časovnega bloka zunanji. Označite jih kot PWM0, PWM1, PWM2 in PWM3.
V blok diagram dodajte gonilnik dajalnika in povežite CLK z FCLK_CLK0. Povežite OD0 in OD1 z vhodnimi kanali drugega bloka GPIO. Naredite ENC zunanji in preimenujte ENC_0 v ENC. Dodajte ultrazvočni senzorski blok in priključite CLK na FCLK_CLK0. Naredite TRIG in ECHO zunanji in preimenujte TRIG_0 v TRIG in ECHO_0 v ECHO. RF priključite na tretji blok GPIO. Za referenco si oglejte priloženi blok diagram.
Z desno tipko miške kliknite datoteko blokovnega diagrama v podoknu Viri in ustvarite ovoj HDL. Dovolite urejanje uporabnikov. Kot omejitev dodajte priloženo datoteko ZYBO_Master.xdc. Pritisnite "Ustvari Bitstream" in si vzemite odmor za kavo.
4. korak: Nastavite okolje za razvoj programske opreme
Pojdite pod "Datoteka" za izvoz strojne opreme v SDK Vivado. Vključite tudi bitni tok. Uvozite projekt RTOSDemo znotraj "CORTEX_A9_Zynq_ZC702". Našel se bo v namestitvenem imeniku FreeRTOS. Ustvarite nov paket podpore za ploščo, izberite knjižnico lwip202. Spremenite referenčni BSP v projektu RTOSDemo v BSP, ki ste ga pravkar ustvarili*.
*Zdi se, da ima FreeRTOS v času pisanja tega navodila, napako pri sklicevanju na pravilen BSP. Če želite to odpraviti, ustvarite nov BSP z enakimi nastavitvami kot prvi. Spremenite referenčni BSP v novega in ga po neuspešni izdelavi spremenite nazaj v starega. FreeRTOS bi se moral zdaj zbrati brez napak. Neuporabljeni BSP lahko izbrišete.
5. korak: Spremenite predstavitveni program
Ustvarite novo mapo z imenom "drivers" v imeniku "src" RTOSDemo. Kopirajte priloženi gpio.h. gpio.c, pwm.h, pwm.c, odometer.h, odometer.c, rangefinder.c, rangefinder.h, motor.h in motor.c datoteke v imenik "drivers".
Odprite main.c in nastavite mainSELECTED_APPLICATION na 2. Zamenjajte main_lwIP.c pod "lwIP_Demo" s posodobljeno različico. BasicSocketCommandServer.c pod "lwIP_Demo/apps/BasicSocketCommandServer" je treba posodobiti tudi z novo različico. V zadnjem času pojdite na "FreeRTOSv10.1.1/FreeRTOS-Plus/Demo/Common/FreeRTOS_Plus_CLI_Demos" in zamenjajte Sample-CLI-commands.c s priloženo različico. Zgradite projekt in zagotovite, da je vse uspešno sestavljeno.
6. korak: Vdelana programska oprema Flash za QSPI
Ustvarite nov aplikacijski projekt z imenom "FSBL" z uporabo predloge "Zynq FSBL". Po sestavljanju projekta FSBL ustvarite zagonsko podobo projekta RTOSDemo. Prepričajte se, da je za zagonski nalagalnik v razdelku »Zagonske podobe slik« izbrano »FSBL/Debug/FSBL.elf«. Ročno dodajte pot tej datoteki, če ni na seznamu.
Premaknite mostiček JP5 na ZYBO v "JTAG". Za priključitev računalnika na ZYBO uporabite kabel USB Micro-B. Priključite baterijo in vklopite ZYBO. Zaženite Adept in se prepričajte, da računalnik pravilno prepozna ZYBO. Kliknite "Program Flash" v Vivado SDK in podajte poti do datoteke BOOT.bin v RTOSDemo in datoteke FSBL.elf v FSBL. Preden pritisnete na "Program", izberite "Preveri po bliskavici". Oglejte si konzolo, da zagotovite, da je utripanje uspešno zaključeno. Nato izklopite ZYBO in odklopite kabel USB. Premaknite mostiček JP5 na "QSPI".
7. korak: Konfigurirajte brezžično dostopno točko
Ko je baterija še vedno priključena, se povežite z omrežjem Wi-Fi usmerjevalnika. Privzeti SSID in geslo morata biti na dnu usmerjevalnika. Nato se pomaknite na https://tplinkwifi.net in se prijavite z "admin" za uporabniško ime in geslo. Zaženite čarovnika za hitro nastavitev, da usmerjevalnik konfigurirate v načinu dostopne točke z omogočeno DHCP. Poskrbite tudi za privzeto uporabniško ime in geslo za napravo. Usmerjevalnik bi se moral po koncu samodejno znova zagnati v način dostopne točke.
Vklopite ZYBO in se z usmerjevalnikom povežite z dodeljenim SSID. Usmerjevalnik se bo najverjetneje pojavil na naslovu IP 192.168.0.100 ali 192.160.0.101. ZYBO bo dodeljen ne glede na naslov, ki ga usmerjevalnik nima. Če želite hitro določiti naslov IP usmerjevalnika, lahko zaženete »ipconfig« iz ukaznega poziva v oknih ali »ifconfig« iz terminala v Linuxu ali MacOS -u. Če ste še vedno povezani z usmerjevalnikom, bo poleg brezžičnega vmesnika prikazan njegov naslov IP. S temi informacijami določite naslov IP ZYBO. Če želite potrditi naslov IP ZYBO, ga lahko pingate iz ukazne vrstice ali pa se z njim povežete prek telneta.
8. korak: Zaženite program Java
Prenesite RobotClient.java in datoteko prevedite z ukazom "javac RobotClient.java" iz ukazne vrstice. Zaženite ukaz "java RobotClient", kjer je "ip_address" naslov IP ZYBO. Ko se med računalnikom in ZYBO vzpostavi uspešna povezava, se prikaže nadzorni grafični vmesnik. Po izostritvi okna je treba robota upravljati s puščičnimi tipkami na tipkovnici. Pritisnite gumb za izhod, da končate sejo in se odklopite od robota.
GUI bo označil pritisnjene tipke in prikazal izhod motorja v zgornjem desnem kotu. Merilnik razdalje na levi zapolni palico vsaka 2 metra do največ 10 metrov.
9. korak: Umerite daljinomer
Stikala na krovu ZYBO lahko uporabite za konfiguracijo vgrajenega daljinomera. Najmanjša razdalja zaznavanja d je podana kot funkcija vhoda stikala i:
d = 50i + 250
Vnos se lahko spreminja med 0 in 15 v celovitih korakih. To pomeni razdaljo od 0,25 do 1 meter. Na najmanjši razdalji bo prva LED začela utripati. Število aktivnih LED je sorazmerno z bližino predmeta.
10. korak: Dostopnost
Ta robot je zelo lahko dostopen. Zaradi enostavnosti upravljanja ga je mogoče v celoti nadzorovati le z enim prstom. Za izboljšanje dostopnosti bi lahko dodali podporo za dodatne vhodne naprave. To bi lahko omogočilo invalidom uporabo robota za nadzor z drugačnim delom telesa.
Priporočena:
Covid varnostna čelada 1. del: uvod v Tinkercad vezja!: 20 korakov (s slikami)
Covid varnostna čelada 1. del: Uvod v vezja Tinkercad!: Pozdravljeni, prijatelj! V tej seriji iz dveh delov se bomo naučili uporabljati Tinkercadova vezja - zabavno, zmogljivo in izobraževalno orodje za spoznavanje delovanja vezij! Eden najboljših načinov za učenje je, da se učite. Zato bomo najprej zasnovali lasten projekt:
Kako: Namestitev Raspberry PI 4 Headless (VNC) z Rpi-sliko in slikami: 7 korakov (s slikami)
Kako: Namestitev Raspberry PI 4 Headless (VNC) z Rpi-imagerjem in slikami: Ta Rapberry PI nameravam uporabiti v kopici zabavnih projektov v svojem blogu. Vabljeni, da to preverite. Želel sem se vrniti v uporabo Raspberry PI, vendar na novi lokaciji nisem imel tipkovnice ali miške. Nekaj časa je minilo, odkar sem nastavil malino
Števec korakov - mikro: Bit: 12 korakov (s slikami)
Števec korakov - Micro: Bit: Ta projekt bo števec korakov. Za merjenje korakov bomo uporabili senzor pospeška, ki je vgrajen v Micro: Bit. Vsakič, ko se Micro: Bit trese, bomo štetju dodali 2 in ga prikazali na zaslonu
Vijak - Nočna ura za brezžično polnjenje DIY (6 korakov): 6 korakov (s slikami)
Bolt - Nočna ura za brezžično polnjenje DIY (6 korakov): Induktivno polnjenje (znano tudi kot brezžično polnjenje ali brezžično polnjenje) je vrsta brezžičnega prenosa energije. Za zagotavljanje električne energije prenosnim napravam uporablja elektromagnetno indukcijo. Najpogostejša aplikacija je brezžično polnjenje Qi
Kako razstaviti računalnik z enostavnimi koraki in slikami: 13 korakov (s slikami)
Kako z enostavnimi koraki in slikami razstaviti računalnik: To navodilo za razstavljanje računalnika. Večina osnovnih komponent je modularnih in jih je enostavno odstraniti. Vendar je pomembno, da ste glede tega organizirani. To vam bo pomagalo preprečiti izgubo delov in tudi pri ponovni montaži