Mundarija:
- Ta'minotlar
- 1 -qadam: Raspberry Pi -ni sozlash
- 2 -qadam: O'rnatish qanday ishlashini tushunish
- 3 -qadam: Pi -ning orqa qismi
- 4 -qadam: Pi old qismi
- 5 -qadam: Arduino
- 6 -qadam: Hammasini ulash
Video: Art-Net tomonidan boshqariladigan vinch: 6 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Hammaga salom, men bu yo'riqnomada men art-net bilan boshqariladigan vintni qanday yaratganimni tushuntiraman. - Sizniki nima? Siz so'raganingizni eshitaman, juda tez tushuntirib beray. Bir necha yil oldin biz mahalliy yoshlar uyi bilan ziyofat uyushtirdik va sahna dizayni sifatida biz harakatlanuvchi tom yasash g'oyasini oldik.
9 ta vint yordamida biz ulkan oq matoni ko'tardik va dmx protokoli orqali biz ularni nazorat qildik. Ammo o'sha paytda biz 3 -fazani boshqaradigan vintlarni ishlatardik. Shunday qilib, yuqoriga va pastga tushish uchun biz dmx yordamida boshqariladigan markaziy Arduino mega tomonidan boshqariladigan relelar tizimini yaratishimiz kerak edi. 230 V va 12 amperli kuchlanishli o'tish joylari.
Tushunarli qilib aytganda, biz juda beqaror, ishonchsiz va juda xavfli bo'lgan ulkan simlar va ulanishlarni yaratishimiz kerak edi.
Shunday qilib, biz buni qilishning eng yaxshi usuli bo'lishi kerak deb o'yladik. Biz o'ylashni boshladik va shunday xulosaga keldikki, buning eng yaxshi usuli-Art-Net protokoli orqali boshqariladigan modulli vintlar tizimi, shuning uchun bizga faqat kuchlanish manbai va chekilgan kabel kerak bo'ladi.
Shunday qilib, men aynan shu narsani yaratdim va men sizga buni qanday qilganimni tushuntirishga harakat qilaman. Butun sozlash sozlash jarayonini boshqaruvchi malina pi ga tayanadi. Boshqaruv sozlamalari shu paytdan boshlab vintlarni boshqaradigan engil kompyuterga (Chamsys va hk) topshiriladi.
Siz art-net protokoli va tekshirgichlar haqida biror narsa tushunish uchun siz python, arduino va malina pi aswel haqida asosiy bilimlarga egasiz deb o'ylayman.
Ta'minotlar
Sizga nima kerak:
- Malinali pi
- Arduino
- Arduino Ethernet qalqoni
- Arduino dvigatel qalqoni
- Har qanday OLED ekran
- chekilgan kabel
- chekilgan kalit
- Enkoder o'rnatilgan DC motor
1 -qadam: Raspberry Pi -ni sozlash
OK, bu qanday ishlaydi, malina pi Apache va MariaDB serverini ishga tushiradi. Apache serveri veb -saytni joylashtirishi kerak, MariaDB - biz vinçlar ma'lumotlarini saqlaydigan ma'lumotlar bazasini saqlashimiz kerak.
Men ssh bilan pi o'rnatish jarayonlari davomida sizga ko'rsatma bermayman, agar sizga notanish bo'lsa, bu erda yaxshi qo'llanma.
Shunday qilib, birinchi navbatda, malinali pi sizning terminal ishingizda sozlanganligiga ishonch hosil qilamiz:
Apache -ni o'rnatish uchun
sudo apt install apache2 -y
MariaDB o'rnatish uchun
sudo apt-get o'rnatish mariadb-server
Bu bizga kerak bo'lgan barcha python kengaytmalari
pip3 mysql-connector-python-ni o'rnating
pip3 flask-socketio pip3 flask-cors o'rnatish pip3 gevent pip3 ni o'rnatish gevent-websocket pip3 netifaces-ni o'rnatish
Yopiq displey uchun bizga bu erda topish mumkin bo'lgan biroz murakkab sozlash jarayoni kerak.
OK, bu hamma bajarildi!
2 -qadam: O'rnatish qanday ishlashini tushunish
Vintni qanday o'rnatishni xohlaysiz, unga boshlang'ich va oxirgi pozitsiyani berish kerak. Unga ma'lum kanal tayinlanadi va shu kanal yordamida siz faqat tanlangan stat va oxirgi pozitsiya o'rtasida harakat qila olasiz.
Bu pozitsiyani tanlash uchun siz vintni ularga ko'chirishingiz kerak bo'ladi, u erda bo'lganingizda siz ma'lum bir kanalni 56 ga aylantirasiz. Bu aniq kanal shu qiymatga yetganda, bu uning boshlanish / tugash joyi ekanligini biladi., agar u yuqoriga yoki pastga siljishi kerak bo'lsa yoki artnet qiymatlarini o'zgartirishi kerak bo'lsa. Vintni siljitish ham ma'lum kanalni 56 ga o'rnatish orqali amalga oshiriladi. "Va nima uchun 56", deb hayron bo'lyapsiz, men biror narsani tanlashim kerak edi:).
Joylashtirish DC motoridagi kodlovchi orqali hisoblanadi.
3 -qadam: Pi -ning orqa qismi
Tizimning orqa qismini mening github -da topish mumkin. Men art-net protokoli uchun o'z kutubxonamni yozdim, shuning uchun uni ishlatishdan xursand bo'ling. Men sizga hamma narsani ketma -ket ko'rsata olmayman, lekin men sizga bularning barchasini tasvirlab beraman.
Kod pi -da ishlaydigan apache serveri bilan bog'lanadigan kolba serverini boshqaradi. Old kolonga ma'lumotlarni yuborish va qabul qilish uchun kolba-soketio modulidan foydalaniladi. Art-net lib, UDP paketlarini arduino-ga yuborish uchun python-dan soket modulidan foydalanadi.
@Socketio.on ('F2B _ ***') bilan boshlanadigan har bir usul old tomondan F2B chaqiruvini kutadi. Qabul qilinganidan keyin u tegishli harakatni bajaradi. Bu artnet komandosini yuborish yoki ma'lumotlar bazasidan ma'lumot olish va uni old tomonga qaytarish.
Oled_show_info () usuli ipning ipini ko'rsatish uchun ishlatiladi (wlan va chekilgan interfeyslarda ham).
shuning uchun kodni ishga tushiring
python3 app.py
4 -qadam: Pi old qismi
Pi -ning oldingi qismini tahrir qilish uchun avval siz/var/www/html/katalogiga kirishingiz kerak bo'ladi. Bu erda apache o'z veb -saytida ko'rsatiladigan fayllarni oladi. Kirishni amalga oshirish uchun:
sudo chmod 777/var/www/html/
Hammasi tugadi, mening github -ning old qismi uchun kodni oling va uni/var/www/html/katalogiga joylashtiring.
Old panel orqa panel bilan bir xil printsipdan foydalanadi, lekin endi tugma bosilganda yoki slayder siljitilganda F2B _ *** buyruqlarini yuboradi.
Va bu frontend tugadi!
5 -qadam: Arduino
Arduino -dan foydalanish uchun siz chekilgan qalqon va dvigatel qalqonidan foydalanishingiz kerak. Arduino -ga ularni sekin suring. Dvigatel qalqonini ethernet qalqoniga uzoqqa surmasligingizga ishonch hosil qiling, aks holda chekilgan tarmoqqa ulangan ikkita dvigatel pinini qisqartirasiz!
Arduino kodini mening github -da ham topish mumkin. Artnet_winch.ino faylini yuklang va hammasi yaxshi bo'lishi kerak.
Dvigatelning to'g'ri pinlariga to'g'ri pimlarni aniqlaganingizga ishonch hosil qiling. Dvigatel qalqonlari qalqonning ustki qismidagi pinlar bilan tanlanadi. Bu pinlar // --- motor konfiguratsiyasi ostida tanlanadi. Arduino o'ng pimlariga ulanishi kerak bo'lgan kodlovchi pinlari kabi.
Qalqonning MAC manzili to'g'ri ekanligiga ishonch hosil qiling. Buni qalqon ostidagi stikerda topish mumkin va MAC o'zgaruvchisida tahrir qilish mumkin. Siz pi uchun ishlatadigan IP PI bilan bir xil diapazonda bo'lishi kerak, uni odatda ekranda topishingiz mumkin.
Kod biroz ko'rinadi, lekin tushunish qiyin emas. Ethernet qalqoni doimo kiruvchi udp paketlarini o'qiydi. Agar bu paket Artnet bo'lsa, u uni hal qiladi va undan kerakli ma'lumotlarni oladi. Artnet-ning turli xil paketlari Art-Net veb-saytida yaxshi tasvirlangan, shuning uchun agar siz ularni qiziqtirsangiz, nima qilayotganlarini o'qishingiz mumkin.
Agar u ArtPoll paketini olsa, u ArtPollReply bilan javob beradi. Bu tarmoqdagi qaysi qurilmalar borligini aniqlash uchun orqa qismdagi chaqiruv funktsiyasida ishlatiladi.
Agar u ArtDMX paketini qabul qilsa, u paketni dekodlaydi va berilgan ma'lumotlardan foydalanib, ma'lum sozlash buyruqlarini bajaradi yoki vintni joyiga siljitadi.
Move_takel funktsiyasi berilgan DMX qiymatini (0-255 oralig'ida) boshlanish va tugash pozitsiyasi orasidagi pozitsiyaga o'zgartiradi (0-oxir, 255-boshlanish). Agar enkoderning o'rni o'zgartirilgan qiymatga teng bo'lmasa, vint qayerda ekanligingizga qarab yuqoriga/pastga siljiydi.
Men o'z pozitsiyasini saqlab qolish uchun PI va arduino o'rtasidagi teskari aloqa ustida ishlayapman, lekin mening arduino dasturni saqlash uchun xotiradan chiqib ketdi:).
Hammasini o'rnatish
O'rnatish uchun men dvigatelni metall ushlagichga uladim va uning ustiga qandaydir quvur qo'ydim. Keyin naychaga simni mahkamlang va og'irlik sifatida rulonli lentani ishlating. Bu juda oddiy va siz uni qanday o'rnatishni xohlasangiz, juda ijodiy bo'lishingiz mumkin.
6 -qadam: Hammasini ulash
Arduino va pi o'rnatilgandan so'ng, kalitga ikkala chekilgan kabelni ulang va shunday bo'lishi kerak!
Siz uni ekranda ko'rsatilgan wlan ip -ga bemalol sinab ko'rishingiz mumkin va siz saytni ko'rishingiz kerak. Qurilmani topa olasizmi yoki yo'qligini bilish uchun "Qurilmalarni topish" tugmasini bosing. Agar u hech narsa ko'rsatmasa, sizning arduino yaxshi ulanmagan yoki siz tanlagan IP PI bilan bir xil emas.
Qurilmani ko'rganingizdan so'ng, faqat sozlash tugmasini bosing. O'rnatish menyusida siz vintni o'qlar yordamida siljitishingiz mumkin va slayder yordamida uning boshlang'ich va oxirgi holatlari to'g'riligini tekshirishingiz mumkin.
Tekshirgichingiz ham qalqonga ulanganligiga ishonch hosil qiling va uning IP -si PI va arduino diapazonida.
Bo'ldi shu!
Tavsiya:
To'g'ridan-to'g'ri raqamli sintez (DDS) chipli MIDI tomonidan boshqariladigan qadam dvigateli: 3 qadam
To'g'ridan-to'g'ri raqamli sintez (DDS) chipli MIDI tomonidan boshqariladigan qadamli dvigatel: Siz hech qachon mini-loyihaga aylanishingiz kerak degan yomon fikrga keldingizmi? Xo'sh, men AD9833 to'g'ridan -to'g'ri raqamli sintez (DDS) moduli yordamida musiqa yaratishga qaratilgan Arduino Due uchun chizgan eskiz bilan o'ynab yurardim … va bir paytlar men o'yladim
Google Assistant tomonidan boshqariladigan LED matritsasi!: 7 qadam (rasmlar bilan)
Google Assistant tomonidan boshqariladigan LED matritsasi!: Bu qo'llanmada men sizga Google Assistant tomonidan boshqariladigan LED matritsasini qanday qilish kerakligini ko'rsataman, uni har qanday joyda smartfon yordamida boshqarish mumkin, shuning uchun boshlaylik
IQ tomonidan boshqariladigan step motorli lift: 15 qadam
IQ bilan boshqariladigan qadamli motorli lift: men kamin ustiga o'rnatilgan televizorni yashiradigan katta rasmni ko'tarishni avtomatlashtirishim kerak edi. Rasm qo'l bilan ko'tarilishi mumkin bo'lgan arqon, kasnaklar va qarshi og'irliklardan foydalanadigan maxsus toymasin po'latdan yasalgan ramkaga o'rnatiladi. Bu nazariy jihatdan yaxshi eshitiladi, lekin
Infinity Gauntlet tomonidan boshqariladigan uy avtomatizatsiyasi: 8 qadam (rasmlar bilan)
Infinity Gauntlet tomonidan boshqariladigan uy avtomatizatsiyasi: Oldingi loyihamda men yorug'lik tugmachasini boshqaradigan cheksiz o'lchagich yasaganman. Men oltita toshdan foydalanmoqchi edim va har bir tosh asbobni, eshik qulfini yoki yoritishni boshqarishi mumkin edi, shuning uchun men cheksiz qo'lqop yordamida uyni avtomatlashtirish tizimini yaratdim. Ushbu loyihada
ARDUINO YUN tomonidan boshqariladigan ROOMBA STEFANO DALL'OLIO tomonidan Wifi ilovasi orqali: 4 qadam (rasmlar bilan)
AROMINO YUN tomonidan boshqariladigan ROOMBA Wifi ilovasi orqali STEFANO DALL'OLIO: Ushbu qo'llanmada men ARDUINO YUN -ni Roomba -ga Wi -Fi orqali ulash uchun kodni ulashaman. Kod va ilovani to'liq Stefano Dall yaratgan va ishlab chiqqan. Olio.Mening Roomba - bu Roomba 620, lekin siz xuddi shu kodni boshqa Roomb uchun ishlatishingiz mumkin