Daftar Isi:
- Perlengkapan
- Langkah 1: Menyiapkan Raspberry Pi
- Langkah 2: Memahami Bagaimana Pengaturan Akan Bekerja
- Langkah 3: Backend dari Pi
- Langkah 4: Frontend Pi
- Langkah 5: Arduino
- Langkah 6: Menghubungkan Semuanya
Video: Winch Terkendali Art-Net: 6 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:54
Halo semuanya, dalam instruksi ini saya akan menjelaskan bagaimana saya membuat winch terkontrol art-net saya. "Kamu apa?" saya mendengar Anda bertanya, baik saya jelaskan dengan sangat cepat. Beberapa tahun yang lalu kami mengadakan pesta dengan rumah pemuda setempat, dan sebagai desain panggung kami memiliki ide untuk membuat atap bergerak.
Dengan 9 derek (takel) kami mengangkat kain putih raksasa dan melalui protokol dmx kami mengendalikannya. Tetapi pada saat itu derek yang kami gunakan di mana 3phase dikendalikan. Jadi untuk membuatnya naik turun kita harus membuat sistem relais yang dikendalikan oleh mega Arduino pusat yang dikendalikan menggunakan dmx. Relai tempat switching tegangan 230V dan 12 amp.
Untuk membuatnya lebih mudah dipahami, kami harus membuat kekacauan kabel dan relai raksasa yang sangat tidak stabil, tidak dapat diandalkan, dan sebenarnya cukup berbahaya.
Jadi kami berpikir bahwa harus ada cara yang lebih baik untuk melakukan ini. Kami mulai berpikir dan sampai pada kesimpulan bahwa cara terbaik untuk melakukan ini adalah melalui sistem modular derek, dikendalikan melalui protokol Art-Net sehingga kami hanya memerlukan sumber tegangan dan kabel ethernet.
Jadi itulah tepatnya yang saya buat dan saya akan mencoba menjelaskan kepada Anda bagaimana saya melakukannya. Seluruh pengaturan bergantung pada raspberry pi yang mengontrol proses pengaturan. Satu pengaturannya, kontrol diberikan ke komputer ringan (Chamsys, dll.) yang akan mengontrol derek dari sana.
Saya berasumsi bahwa Anda memiliki pengetahuan dasar tentang python, arduino, dan raspberry pi serta memahami sesuatu tentang protokol dan pengontrol art-net.
Perlengkapan
Yang Anda perlukan:
- Raspberry pi
- Arduino
- Perisai Ethernet Arduino
- Pelindung motor Arduino
- Layar OLED apa pun
- kabel Ethernet
- saklar ethernet
- Motor DC dengan encoder dibangun
Langkah 1: Menyiapkan Raspberry Pi
Ok jadi cara ini akan bekerja adalah raspberry pi akan menjalankan server Apache dan MariaDB. Server apache adalah untuk meng-host situs web, MariaDB adalah untuk menyimpan database tempat kami akan menyimpan data derek.
Saya tidak akan memandu Anda melalui seluruh proses pengaturan pi dengan ssh, jika Anda tidak terbiasa, inilah tutorial yang bagus.
Jadi pertama-tama kami akan memastikan raspberry pi sudah siap, di terminal Anda jalankan:
Untuk menginstal apache
sudo apt install apache2 -y
Untuk menginstal mariaDB
sudo apt-get install mariadb-server
Ini semua ekstensi python yang kita perlukan
pip3 instal mysql-connector-python
pip3 instal flask-socketio pip3 instal flask-cors pip3 instal gevent pip3 instal gevent-websocket pip3 instal netifaces
Untuk tampilan oled kita membutuhkan proses setup yang sedikit lebih sulit yang dapat ditemukan di sini.
Ok itu pi semuanya selesai!
Langkah 2: Memahami Bagaimana Pengaturan Akan Bekerja
Jadi cara mengatur winch adalah dengan memberinya posisi awal dan posisi akhir. Ini akan diberikan saluran tertentu dan dengan saluran ini Anda hanya dapat berpindah antara status yang dipilih dan posisi akhir.
Untuk memilih posisi ini, Anda perlu memindahkan winch ke mereka, begitu Anda berada di sana, Anda akan mengubah saluran tertentu ke nilai 56. Ketika saluran yang tepat ini mencapai nilai itu, ia akan tahu bahwa ini adalah posisi awal / akhir akhirnya., jika perlu naik atau turun atau jika perlu mengubah nilai artnetnya. Memindahkan winch juga dilakukan dengan mengatur saluran tertentu ke 56. "Dan mengapa 56" saya mendengar Anda bertanya-tanya, saya harus memilih sesuatu:).
Posisi dihitung melalui encoder yang ada pada motor DC.
Langkah 3: Backend dari Pi
Backend untuk sistem dapat ditemukan di github saya. Saya telah menulis perpustakaan saya sendiri untuk protokol art-net jadi jangan ragu untuk menggunakannya. Saya tidak akan memandu Anda melalui semuanya baris demi baris, tetapi saya akan memberi Anda gambaran besar dari semuanya.
Kode menjalankan server labu yang berkomunikasi dengan server apache yang berjalan di pi. Ia menggunakan modul flask-socketio untuk mengirim & menerima data ke frontend. Lib art-net menggunakan modul socket dari python untuk mengirim paket UDP ke dan dari arduino.
Setiap metode yang dimulai dengan @socketio.on('F2B_***') sedang menunggu panggilan F2B dari frontend. Setelah diterima, ia akan menjalankan tindakan yang sesuai. Baik itu mengirim komando artnet atau mendapatkan data dari DB dan mengirimkannya kembali ke depan.
Metode oled_show_info() digunakan untuk menampilkan ip dari ip (Baik pada antarmuka wlan dan ethernet).
jadi jalankan saja kodenya dengan
python3 app.py
Langkah 4: Frontend Pi
Untuk dapat mengedit frontend pi, Anda harus terlebih dahulu memberi diri Anda akses ke direktori /var/www/html/. Di sinilah Apache mendapatkan file untuk ditampilkan di situs webnya. Untuk mendapatkan akses, jalankan:
sudo chmod 777 /var/www/html/
Sekarang semuanya selesai, dapatkan kode untuk frontend github saya dan letakkan di direktori /var/www/html/.
Frontend menggunakan prinsip yang sama dengan backend tetapi sekarang ia mengirimkan perintah F2B_*** ketika sebuah tombol ditekan atau slider dipindahkan.
Dan itu frontend selesai!
Langkah 5: Arduino
Untuk menggunakan arduino Anda harus menggunakan pelindung ethernet dan pelindung motor. Cukup dorong mereka dengan lembut ke arduino. Pastikan Anda tidak mendorong pelindung motor terlalu jauh ke pelindung ethernet atau Anda akan memperpendek 2 pin motor pada koneksi ethernet!
Kode untuk arduino juga dapat ditemukan di github saya. Unggah file artnet_winch.ino dan semuanya akan baik-baik saja.
Pastikan Anda menentukan pin yang tepat ke pin motor Anda yang benar. Pin motorshield dipilih dengan pin header di atas pelindung. Pin ini dipilih di bawah //--- motor config. Juga sebagai pin encoder yang perlu dihubungkan ke pin kanan arduino.
Pastikan juga alamat MAC perisai Anda sudah benar. Ini dapat ditemukan pada stiker di bawah perisai dan diedit dalam variabel MAC. IP yang Anda gunakan untuk pi harus berada dalam kisaran yang sama dengan PI, ini biasanya dapat ditemukan di layar lama.
Kode terlihat sedikit banyak tetapi tidak terlalu sulit untuk dipahami. Pada dasarnya ethernet shield terus-menerus membaca paket udp yang masuk. Jika paket itu adalah paket Artnet, ia mendekodekannya dan mendapatkan info yang dibutuhkan darinya. Paket artnet yang berbeda dijelaskan dengan baik di situs web Art-Net, jadi jika Anda tertarik, Anda dapat membaca apa yang mereka lakukan.
Jika menerima paket ArtPoll, ia akan merespons dengan ArtPollReply. ini digunakan dalam fungsi info di backend untuk menemukan perangkat mana yang ada di jaringan.
Jika menerima dan paket ArtDMX, ia akan mendekode paket dan menggunakan data yang diberikan untuk menjalankan perintah pengaturan tertentu atau memindahkan winch pada posisinya.
Fungsi move_takel mengubah nilai DMX yang diberikan (antara 0-255) ke posisi antara posisi awal dan akhir (0 menjadi akhir dan 255 awal). Jika posisi encoder tidak sama dengan nilai yang diubah, winch akan bergerak naik/turun tergantung di mana Anda berada.
Saya sedang mengerjakan loop umpan balik antara PI dan arduino sehingga bisa mengikuti posisinya tetapi arduino saya kehabisan memori untuk menyimpan program:).
Memasang semuanya
Untuk pemasangannya saya memasang motor ke dudukan logam dan meletakkan semacam tabung di atasnya. Kemudian hanya menempelkan tali pada tabung dan menggunakan gulungan pita sebagai pemberat. Ini sangat mendasar dan Anda bisa menjadi sangat kreatif dalam cara memasangnya.
Langkah 6: Menghubungkan Semuanya
Setelah arduino dan pi siap, cukup colokkan kedua kabel ethernet di sakelar Anda dan itu saja!
Anda dapat mengujinya dengan berselancar ke wlan ip yang diberikan di layar oled dan Anda akan melihat situsnya. Tekan temukan perangkat untuk melihat apakah Anda dapat menemukan perangkat tersebut. Jika tidak menunjukkan apa-apa maka arduino Anda tidak terhubung dengan baik atau IP yang Anda pilih tidak berada dalam kisaran yang sama dengan PI.
Setelah Anda melihat perangkat, cukup tekan setup. Di menu pengaturan Anda dapat memindahkan winch dengan menggunakan panah dan menguji apakah posisi awal dan akhir sudah benar dengan slider.
Pastikan pengontrol Anda juga dicolokkan ke pelindung dan IP-nya berada dalam jangkauan PI dan arduino.
Itu dia!
Direkomendasikan:
Peluncur Roket Terkendali Suara Berbasis Alexa: 9 Langkah (dengan Gambar)
Peluncur Roket Terkendali Suara Berbasis Alexa: Saat musim dingin mendekat; datang saat tahun ketika festival lampu dirayakan. Ya, kita berbicara tentang Diwali yang merupakan festival India sejati yang dirayakan di seluruh dunia. Tahun ini, Diwali sudah berakhir, dan melihat orang-orang
Lengan Robot 3D Dengan Motor Stepper Terkendali Bluetooth: 12 Langkah
Lengan Robot 3D Dengan Motor Stepper Terkendali Bluetooth: Dalam tutorial ini kita akan melihat cara membuat lengan robot 3D, dengan motor stepper 28byj-48, motor servo, dan komponen cetak 3D. Papan sirkuit tercetak, kode sumber, diagram listrik, kode sumber, dan banyak informasi disertakan di situs web saya
Cara Membuat Mobil Terkendali Smartphone: 5 Langkah
Cara Membuat Mobil yang Dikendalikan Smartphone: Semua orang suka bermain dengan mobil jarak jauh yang dioperasikan dengan Smartphone. Video ini tentang cara membuatnya
Lampu RGB Terkendali Bluetooth: 3 Langkah
Lampu RGB Terkendali Bluetooth: Pernahkah Anda ingin mengubah warna dan kecerahan lampu rumah Anda hanya dengan beberapa sentuhan di ponsel Anda? Kabar baiknya adalah--ini dapat dilakukan dengan mudah menggunakan mikrokontroler berkemampuan Bluetooth seperti Ameba RTL8722 dari Realtek. Saya disini
Hand Crank Knex Winch: 8 Langkah
Hand Crank Knex Winch: Saya memutuskan untuk membuat ini karena saya telah mencoba menemukan cara untuk menarik lurus ke atas untuk mengangkat barang dan motor knex tidak memiliki torsi yang cukup