Obsah:
- Zásoby
- Krok 1: Nastavenie Raspberry Pi
- Krok 2: Pochopenie toho, ako bude nastavenie fungovať
- Krok 3: Backend of the Pi
- Krok 4: Frontend systému Pi
- Krok 5: Arduino
- Krok 6: Pripojenie všetkého
Video: Riadený navijak Art-Net: 6 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:57
Ahoj všetci, v tomto návode vám vysvetlím, ako som vytvoril svoj navijak ovládaný sieťou art-net. "Tvoje čo?" Počul som, že sa pýtaš, dovoľte mi to veľmi rýchlo vysvetliť. Pred niekoľkými rokmi sme usporiadali večierok s miestnym domom mládeže a ako scénický návrh sme dostali nápad urobiť pohyblivú strechu.
S 9 navijakmi (takelmi) sme zdvihli obrovské biele plátno a prostredníctvom protokolu dmx sme ich ovládali. Ale v tom čase sme používali navijaky, kde riadili 3fázy. Aby to išlo hore a dole, museli sme vytvoriť systém relé ovládaných centrálnym mega Arduino, ktoré bolo ovládané pomocou dmx. Relé prepína napätie 230 V a 12 ampérov.
Aby sme to vyjadrili zrozumiteľnejšie, museli sme vytvoriť obrovský chaos v drôtoch a relé, ktorý bol super nestabilný, nespoľahlivý a v skutočnosti dosť nebezpečný.
Preto sme si mysleli, že to musíme urobiť lepšie. Začali sme premýšľať a dospeli sme k záveru, že najlepší spôsob, ako to dosiahnuť, bude prostredníctvom modulárneho systému navijakov riadených protokolom Art-Net, takže budeme potrebovať iba zdroj napätia a ethernetový kábel.
Presne to som vytvoril a pokúsim sa vám vysvetliť, ako som to urobil. Celé nastavenie sa spolieha na malinový pi, ktorý riadi proces nastavenia. Jeho nastavenie sa ovládanie odovzdáva ľahkému počítaču (Chamsys atď.), Ktorý odtiaľ bude ovládať navijaky.
Predpokladám, že máte základné znalosti o Pythone, Arduine a Raspberry Pi aswel, ako niečo o protokole a ovládačoch art-net.
Zásoby
Čo budete potrebovať:
- Malinový koláč
- Arduino
- Ethernetový štít Arduino
- Štít motora Arduino
- Akákoľvek obrazovka OLED
- ethernetový kábel
- ethernetový prepínač
- Jednosmerný motor so zabudovaným kodérom
Krok 1: Nastavenie Raspberry Pi
Ok, takže takto to bude fungovať, je, že na Raspberry Pi bude bežať server Apache a MariaDB. Server apache je hostiteľom webovej stránky, MariaDB má uchovávať databázu, do ktorej budeme ukladať údaje o navijakoch.
Nebudem vás sprevádzať všetkými procesmi nastavenia pí pomocou ssh, ak nie ste oboznámení, je tu dobrý návod.
Najprv sa teda presvedčíme, či je vo vašom termináli nainštalované malinové pi:
Ak chcete nainštalovať apache
sudo apt nainštalovať apache2 -y
Ak chcete nainštalovať mariaDB
sudo apt-get install mariadb-server
Toto sú všetky rozšírenia pythonu, ktoré budeme potrebovať
pip3 nainštalujte mysql-connector-python
pip3 install flask-socketio pip3 install flask-cors pip3 install gevent pip3 install gevent-websocket pip3 install netifaces
Pre oled displej potrebujeme trochu ťažší proces nastavenia, ktorý nájdete tu.
Ok, to je všetko, hotovo!
Krok 2: Pochopenie toho, ako bude nastavenie fungovať
Navijak tak chcete nastaviť tak, že mu dáte počiatočnú a koncovú pozíciu. Bude mu priradený určitý kanál a pomocou tohto kanála sa budete môcť pohybovať iba medzi zvolenou štatistikou a koncovou pozíciou.
Na výber týchto pozícií budete musieť k nim presunúť navijak, akonáhle ste tam, otočíte určitý kanál na hodnotu 56. Keď tento presný kanál dosiahne túto hodnotu, bude vedieť, že toto je jeho koncová začiatočná / koncová pozícia, ak sa potrebuje pohybovať nahor alebo nadol alebo ak potrebuje zmeniť svoje hodnoty artnetu. Presúvanie navijaka sa vykonáva aj nastavením určitého kanála na 56. "A prečo 56", počujem, že sa čudujete, musel som si niečo vybrať:).
Poloha sa vypočíta pomocou snímača, ktorý je na jednosmernom motore.
Krok 3: Backend of the Pi
Backend systému nájdete na mojom github. Napísal som svoju vlastnú knižnicu pre protokol art-net, takže ju môžete používať. Nebudem vás sprevádzať všetkým rad za radom, ale poskytnem vám celkový obraz o všetkom.
V kóde je spustený bankový server, ktorý komunikuje so serverom apache spusteným na pi. Na odosielanie a príjem údajov do klientskeho rozhrania používa modul flask-socketio. Art-net lib používa zásuvkový modul z pythonu na odosielanie paketov UDP do arduina a z neho.
Každá metóda, ktorá začína na @socketio.on ('F2B _ ***'), čaká na volanie F2B z frontendu. Akonáhle je prijatý, vykoná príslušnú akciu. Či už ide o odoslanie príkazu artnet alebo získanie údajov z databázy DB a ich odoslanie späť dopredu.
Metóda oled_show_info () sa používa na zobrazenie ip ip (na rozhraniach wlan aj ethernet).
kód teda spustite pomocou
python3 app.py
Krok 4: Frontend systému Pi
Aby ste mohli upravovať frontend pí, musíte si najskôr dať prístup do adresára/var/www/html/. Tu apache získa svoje súbory, ktoré môže zobraziť na svojom webe. Ak chcete získať prístup, spustite:
sudo chmod 777/var/www/html/
Teraz je všetko hotové, získajte kód pre frontend môjho githubu a umiestnite ho do adresára/var/www/html/.
Frontend používa rovnaký princíp ako backend, ale teraz odosiela príkazy F2B _ *** po stlačení tlačidla alebo posunutí posúvača.
A to je frontend hotový!
Krok 5: Arduino
Na používanie arduina budete potrebovať ethernetový štít a štít motora. Jednoducho ich zatlačte na arduino. Dbajte na to, aby ste kryt motora netlačili príliš ďaleko na ethernetový štít alebo aby ste skrátili 2 kolíky motora na ethernetovom pripojení!
Kód pre arduino nájdete aj na mojom githube. Odovzdajte súbor artnet_winch.ino a všetko by malo byť v poriadku.
Uistite sa, že ste definovali správne kolíky na správne kolíky vášho motora. Kolíky motorového štítu sa vyberajú so kolíkovými konektormi v hornej časti štítu. Tieto kolíky sú zvolené v // --- konfigurácii motora. Pripojte kolíky kodéra, ktoré je potrebné pripojiť k správnym kolíkom arduina.
Tiež sa uistite, že je vaša MAC adresa štítu správna. To sa dá nájsť na nálepke pod štítom a upraviť v premennej MAC. IP, ktorú použijete pre pi, musí byť v rovnakom rozsahu ako PI, toto sa bežne nachádza na oledovej obrazovke.
Kód vyzerá trochu veľa, ale nie je také ťažké ho pochopiť. V zásade ethernetový štít neustále číta prichádzajúce pakety udp. Ak je tento paket paketom Artnet, dekóduje ho a získa z neho potrebné informácie. Rôzne pakety artnet sú pekne popísané na webovej stránke Art-Net, takže ak vás zaujíma, môžete si prečítať, čo všetky robia.
Ak dostane paket ArtPoll, odpovie ArtPollReply. toto sa používa vo funkcii popisu v backende na zistenie, ktoré zariadenia sú v sieti.
Ak prijme a paket ArtDMX, dekóduje paket a použije dané údaje na vykonanie určitých príkazov na nastavenie alebo presunutie navijaka na miesto.
Funkcia move_takel transformuje danú hodnotu DMX (medzi 0-255) do polohy medzi počiatočnou a koncovou polohou (0 je koniec a 255 začiatok). Ak sa poloha kodéra nerovná transformovanej hodnote, navijak sa bude pohybovať hore/dole v závislosti od toho, kde sa nachádzate.
Pracoval som na spätnoväzbovej slučke medzi PI a arduino, aby mohol držať krok so svojou polohou, ale môjmu arduinu došla pamäť na uloženie programu:).
Namontovať to všetko
Na upevnenie som pripevnil motor na kovový držiak a navrch naň položil akúsi trubicu. Potom už len na trubicu pripevnite šnúru a ako závažie použijete zvitok pásky. Toto je veľmi základné a môžete byť veľmi kreatívni v spôsobe, akým ho chcete pripojiť.
Krok 6: Pripojenie všetkého
Akonáhle sú arduino a pi všetky pripravené, jednoducho zapojte oba ethernetové káble do vášho prepínača a malo by to byť ono!
Môžete to otestovať tak, že prejdete na webovú adresu wlan uvedenú na oledovej obrazovke a stránka by sa vám mala zobraziť. Stlačením vyhľadajte zariadenia a zistite, či zariadenie nájdete. Ak nič neukazuje, vaše arduino nie je dobre pripojené alebo vami zvolená adresa IP nie je v rovnakom rozsahu ako PI.
Akonáhle uvidíte zariadenie, stačí stlačiť tlačidlo Nastavenie. V ponuke nastavenia môžete pomocou šípok posúvať navijak a pomocou posúvača otestovať, či je jeho počiatočná a koncová poloha správna.
Uistite sa, že je do štítu zapojený aj váš ovládač a jeho IP je v rozsahu PI a arduina.
To je všetko!
Odporúča:
Hlasom riadený raketomet Launcher založený na Alexe: 9 krokov (s obrázkami)
Hlasom riadený raketomet Launcher založený na Alexe: Ako sa blíži zimná sezóna; prichádza to obdobie roka, kedy sa oslavuje sviatok svetiel. Áno, hovoríme o Diwali, čo je skutočný indický festival oslavovaný po celom svete. Tento rok je Diwali už za nami a vidieť ľudí
Bluetooth riadený vianočný stromček NeoPixel: 5 krokov
Bluetooth riadený vianočný stromček NeoPixel: Zaujíma vás, ako tento rok do svojho vianočného stromčeka pridať IoT (internet vecí)? No je to úplne možné! Tomuto projektu osobne hovorím „ArduXmas“a pozostáva z LED diódy RGB NeoPixel ovládanej kancom Arduino
Hlasom riadený droid inšpirovaný R2D2 pomocou Blynka a Ifttta: 6 krokov
Hlasom riadený droid inšpirovaný R2D2 pomocou Blynka a Ifttta: Sledovaním hviezdnych vojen sa mnohí z nás inšpirovali postavami robotov, najmä modelom R2D2. Neviem o ostatných, ale ja toho robota jednoducho milujem. Pretože som milovníkom robotov, rozhodol som sa postaviť tohto vlastného droida R2D2 v tomto uzamknutí pomocou blynk Io
Oscilátor riadený napätím z bodu do bodu: 29 krokov
Oscilátor riadený napätím medzi bodmi: Ahoj! Našli ste projekt, v ktorom vezmeme jeden skutočne lacný mikročip, CD4069 (pekný), a prilepíme k nemu niektoré časti a získame veľmi užitočný oscilátor riadený napätím! Verzia, ktorú vytvoríme, má iba priebeh vlny píly alebo rampy, ktorý je
Superstock (sklad riadený snímačom čiarových kódov): 5 krokov
Superstock (sklad riadený skenerom čiarových kódov): V tejto príručke vám poviem, ako vytvoriť Superstock, môj školský projekt pre 1MCT na Howest. Cieľom tohto konceptu je vytvoriť užívateľsky prívetivú databázu, ku ktorej máte prístup prostredníctvom webovej stránky, a udržať si tak prehľad o tom, čo máte na sklade (v mojom prípade oblečenie pre moju