Kazalo:
- Zaloge
- 1. korak: Nastavitev Raspberry Pi
- 2. korak: Razumevanje delovanja nastavitve
- Korak: Zadnji del Pi
- 4. korak: Frontend Pi
- 5. korak: Arduino
- 6. korak: Povežite vse
Video: Vitel s krmiljenjem Art-Net: 6 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Pozdravljeni vsi, v tem navodilu bom razložil, kako sem ustvaril svoj vitl, ki ga upravlja umetniška mreža. "Ti kaj?" slišim, da sprašujete, pa naj hitro razložim. Pred nekaj leti smo pripravili zabavo z lokalno mladinsko hišo in kot scenografijo smo imeli idejo, da bi naredili premično streho.
Z 9 vitli smo vzeli ogromno belo krpo in jih po protokolu dmx nadzorovali. Toda takrat smo uporabljali vitle, kjer je bilo krmiljeno trifazno. Da bi lahko šli gor in dol, smo morali ustvariti sistem relejev, ki ga nadzoruje osrednji Arduino mega, ki je bil nadzorovan z uporabo dmx. Releji, kjer so preklopne napetosti 230V in 12 amperov.
Če povemo bolj razumljivo, smo morali ustvariti ogromno neredov žic in relejev, ki so bili zelo nestabilni, nezanesljivi in pravzaprav precej nevarni.
Zato smo si mislili, da mora biti to boljši način. Začeli smo razmišljati in prišli do zaključka, da bi bil to najboljši način z modularnim sistemom vitlov, nadzorovanim po protokolu Art-Net, zato potrebujemo le vir napetosti in ethernetni kabel.
Točno to sem ustvaril in poskušal vam bom razložiti, kako sem to naredil. Celotna nastavitev temelji na maline pi, ki nadzoruje postopek namestitve. V primeru svoje nastavitve nadzor predaja lahkemu računalniku (Chamsys itd.), Ki bo od takrat naprej upravljal vitle.
Predvidevam, da imate osnovno znanje o pythonu, arduinu in malini pi aswel, kot da razumete nekaj o protokolu art-net in krmilnikih.
Zaloge
Kaj potrebujete:
- Malina pi
- Arduino
- Arduino Ethernet ščit
- Arduino motorni ščit
- Vsak OLED zaslon
- ethernetni kabel
- ethernet stikalo
- DC motor z nadgradnjo dajalnika
1. korak: Nastavitev Raspberry Pi
Ok, tako bo to delovalo tako, da bo malina pi izvajala strežnik Apache in MariaDB. Strežnik apache bo gostil spletno mesto, MariaDB pa bo hranil bazo podatkov, kjer bomo shranili podatke vitlov.
Ne bom vas popeljal skozi celotne postopke nastavitve pi s ssh, če niste seznanjeni, je tukaj dobra vadnica.
Najprej se bomo prepričali, da je malina pi v vašem terminalnem zagonu nastavljena:
Če želite namestiti apache
sudo apt namestite apache2 -y
Za namestitev mariaDB
sudo apt-get install mariadb-server
To so vse razširitve pythona, ki jih potrebujemo
pip3 namestite mysql-connector-python
pip3 namestite flask-socketio pip3 namestite flask-cors pip3 namestite gevent pip3 namestite gevent-websocket pip3 namestite netifaces
Za oled zaslon potrebujemo nekoliko težji postopek nastavitve, ki ga najdete tukaj.
Ok, pi je vse narejeno!
2. korak: Razumevanje delovanja nastavitve
Torej želite nastaviti vitlo tako, da mu določite začetni in končni položaj. Dodeljen mu bo določen kanal in s tem kanalom se boste lahko premikali le med izbranim stanjem in končnim položajem.
Če želite izbrati ta položaj, morate premakniti vitlo do njih, ko boste tam, boste določen kanal obrnili na vrednost 56. Ko ta kanal doseže to vrednost, bo vedel, da je to njegov končni začetni / končni položaj., če se mora premakniti navzgor ali navzdol ali če mora spremeniti vrednosti artneta. Premikanje vitla se izvede tudi tako, da določen kanal nastavite na 56. "In zakaj 56" slišim, da se sprašujete, pa sem moral nekaj izbrati:).
Položaj se izračuna preko dajalnika, ki je na enosmernem motorju.
Korak: Zadnji del Pi
Zaledje sistema lahko najdete na mojem githubu. Za protokol art-net sem napisal svojo knjižnico, zato jo lahko uporabite. Ne bom vas popeljal skozi vse po vrsti, vendar vam bom predstavil celotno sliko o vsem tem.
Koda zažene strežniški strežnik, ki komunicira s strežnikom apache, ki deluje na pi. Za pošiljanje in sprejemanje podatkov na prednjo stran uporablja modul bučke-vtičnice. Lib art-net uporablja vtični modul iz pythona za pošiljanje paketov UDP v in iz arduina.
Vsaka metoda, ki se začne z @socketio.on ('F2B _ ***'), čaka na klic F2B s prednje strani. Ko ga prejme, izvede ustrezno dejanje. Pa naj bo to pošiljanje komandosa artnet ali pridobivanje podatkov iz zbirke podatkov in njihovo pošiljanje nazaj.
Metoda oled_show_info () se uporablja za prikaz ip ip (tako na vmesnikih wlan kot ethernet).
zato samo zaženite kodo z
python3 app.py
4. korak: Frontend Pi
Če želite urediti sprednjo stran pi, morate najprej omogočiti dostop do imenika/var/www/html/. Tu apache dobi svoje datoteke za prikaz na svojem spletnem mestu. Za dostop do dostopa izvedite:
sudo chmod 777/var/www/html/
Zdaj je vse končano, dobite kodo za prednjo stran mojega githuba in jo postavite v imenik/var/www/html/.
Frontend uporablja isto načelo kot zaledje, zdaj pa pošlje ukaze F2B _ ***, ko pritisnete gumb ali premaknete drsnik.
In to je prednja stran narejena!
5. korak: Arduino
Za uporabo arduina morate uporabiti ethernetni ščit in motorni ščit. Samo nežno jih potisnite na arduino. Pazite, da ščitnika motorja ne potisnete daleč na ethernetni ščit, sicer boste kratki 2 motorna zatiča na ethernetni povezavi!
Kodo za arduino lahko najdete tudi na mojem githubu. Naložite datoteko artnet_winch.ino in vse bi moralo biti dobro.
Prepričajte se, da ste pravilno določili ustrezne zatiče motorja. Zatiči motornega ščita so izbrani z zatiči za glavo na vrhu ščita. Ti zatiči so izbrani v // --- konfiguraciji motorja. Prav tako kot zatirji dajalnika, ki jih je treba povezati z desnimi zatiči arduina.
Prepričajte se tudi, da je vaš MAC naslov ščita pravilen. To lahko najdete na nalepki pod ščitom in jo uredite v spremenljivki MAC. IP, ki ga uporabljate za pi, mora biti v istem obsegu kot PI, običajno ga lahko najdete na oljenem zaslonu.
Koda je nekoliko videti, vendar je ni tako težko razumeti. V bistvu ethernetni ščit nenehno bere prihajajoče udp pakete. Če je ta paket Artnet paket, ga dekodira in od njega dobi potrebne podatke. Različni paketi artnet so lepo opisani na spletnem mestu Art-Net, zato, če vas zanima, lahko preberete, kaj vse počnejo.
Če prejme paket ArtPoll, bo odgovoril z ArtPollReply. to se uporablja v funkciji oblačka v zaledju za iskanje, katere naprave so v omrežju.
Če prejme in paket ArtDMX, bo paket dekodiral in uporabil podane podatke za izvajanje določenih nastavitvenih ukazov ali premikanje vitla na mestu.
Funkcija move_takel pretvori dano vrednost DMX (med 0-255) v položaj med začetnim in končnim položajem (0 je konec in 255 začetek). Če položaj dajalnika ni enak spremenjeni vrednosti, se bo vitlo premaknilo navzgor/navzdol, odvisno od tega, kje se nahajate.
Delal sem na povratni zanki med PI in arduinom, da bi lahko sledil svojemu položaju, vendar je mojemu arduinu zmanjkalo pomnilnika za shranjevanje programa:).
Namestitev vsega
Za namestitev sem motor pritrdil na kovinsko držalo in nanj položil nekakšno cev. Nato sem na cev pritrdil vrvico in kot utež uporabil zvitek traku. To je zelo osnovno in lahko postanete zelo ustvarjalni na način, na katerega ga želite namestiti.
6. korak: Povežite vse
Ko sta arduino in pi nastavljena, preprosto priključite oba ethernetna kabla v stikalo in to bi moralo biti to!
Lahko ga preizkusite tako, da brskate po IP -ju wlan, prikazanem na olednem zaslonu, in morali bi videti spletno mesto. Pritisnite Najdi naprave, da preverite, ali lahko najdete napravo. Če ne prikazuje ničesar, potem vaš arduino ni dobro povezan ali IP, ki ste ga izbrali, ni v istem območju kot IP.
Ko vidite napravo, samo pritisnite setup. V nastavitvenem meniju lahko s puščicami premaknete vitlo in z drsnikom preizkusite, ali sta začetni in končni položaj pravilna.
Prepričajte se, da je tudi vaš krmilnik priključen na ščit in da je njegov IP v dosegu PI in arduino.
To je to!
Priporočena:
Pripomoček za dinozavra za Chrome s krmiljenjem z ročno kretnjo / Kako to narediti / #smartcreativity: 14 korakov
S pripomočkom za dinozavra Chrome, ki ga nadzira ročna kretnja / Kako to narediti / #smartcreativity: Pozdravljeni prijatelji, v tej vadnici vam bom pokazal zelo ekskluziven projekt. Torej, danes vam bom pokazal, kako z gesto roke upravljate igro Chrome Dinozaver zelo enostavno. Če boste s to tehnologijo uporabljali za nadzor kroma DINO, boste padli
Relejsko stikalo IOT z glasovno krmiljenjem na osnovi Arduino (Google Home & Alexa podpira): 11 korakov
Relejsko stikalo IOT z glasovno krmiljenjem na osnovi Arduino (podprto z Googlom in Alexa): Ta projekt opisuje, kako narediti stikalo releja IOT na osnovi Arduina z glasovnim nadzorom. To je rele, ki ga lahko na daljavo vklopite in izklopite z aplikacijo za iOS in Android ter ga povežete z IFTTT in z Googlom upravljate z glasom
RC avtomobil s krmiljenjem Bluetooth z nadzorom hitrosti in merjenjem razdalje: 8 korakov
RC avtomobil s krmiljenjem Bluetooth z nadzorom hitrosti in merjenjem razdalje: Kot otrok sem bil vedno navdušen nad avtomobili RC. Dandanes lahko najdete veliko vadnic za izdelavo poceni RC avtomobilov, ki jih upravlja Bluetooth, s pomočjo Arduina. Naredimo še korak naprej in uporabimo svoje praktično znanje kinematike za izračun
4-kanalni relejni modul z WI-Fi krmiljenjem za avtomatizacijo doma: 7 korakov (s slikami)
4-kanalni relejni modul z WI-Fi krmiljenjem za domačo avtomatizacijo: Prej sem uporabljal številne WI-FI na podlagi stikal za izklop. Vendar to ne ustreza mojim zahtevam. Zato sem želel zgraditi lastno, ki lahko nadomesti običajne vtičnice za stensko stikalo brez kakršnih koli sprememb. Čip ESP8266 omogoča Wi -Fi
Avtomobil Arduino s samodejno vožnjo in krmiljenjem PS2: 6 korakov
Avtomobil Arduino z lastno vožnjo in krmiljenjem s PS2 igralnimi palicami: Živjo, ime mi je Joaquín in sem ljubitelj Arduina. Lansko leto sem bil obseden z Arduinom in pravkar sem začel delati vse mogoče stvari in ta avtomatski avtomobil s krmilno palčko je eden izmed njih. Če želite narediti kaj podobnega,