Სარჩევი:

Art-Net კონტროლირებადი Winch: 6 ნაბიჯი
Art-Net კონტროლირებადი Winch: 6 ნაბიჯი

ვიდეო: Art-Net კონტროლირებადი Winch: 6 ნაბიჯი

ვიდეო: Art-Net კონტროლირებადი Winch: 6 ნაბიჯი
ვიდეო: Подземелья и драконы, я представляю вам все карты GREEN Magic The Gathering. 2024, სექტემბერი
Anonim
Art-Net კონტროლირებადი Winch
Art-Net კონტროლირებადი Winch

გამარჯობა ყველას, ამ სასწავლო ინსტრუქციაში მე აგიხსნით, თუ როგორ შევქმენი ჩემი ხელოვნების ქსელით კონტროლირებადი ჭაღარა. "Თქვენი რა?" მესმის თქვენ გეკითხებით, ნება მომეცით აგიხსნათ ძალიან სწრაფად. რამდენიმე წლის წინ ჩვენ მოვაწყვეთ წვეულება ადგილობრივ ახალგაზრდულ სახლთან ერთად და როგორც სცენის დიზაინი გვქონდა იდეა გადაგვეხადა სახურავი.

9 ნიჩბით (ტაკელით) ჩვენ ავწიეთ გიგანტური თეთრი ქსოვილი და dmx პროტოკოლით ვაკონტროლებდით მათ. მაგრამ იმ დროს ჩვენ ვიყენებდით ნიღბებს, სადაც კონტროლდებოდა 3 ფაზა. ასე რომ, ის მაღლა და ქვევით უნდა შევქმნათ, უნდა შევქმნათ რელეს სისტემა, რომელსაც აკონტროლებს ცენტრალური არდუინო მეგა, რომელიც კონტროლდება dmx გამოყენებით. რელე, სადაც იცვლება ძაბვა 230V და 12 ამპერი.

უფრო გასაგები სიტყვებით რომ ვთქვათ, ჩვენ უნდა შევქმნათ მავთულხლართებისა და რელეების გიგანტური არეულობა, რომელიც იყო სუპერ არასტაბილური, არასაიმედო და საკმაოდ საშიში.

ასე რომ, ჩვენ ვფიქრობდით, რომ ამის უკეთესი გზა უნდა არსებობდეს. ჩვენ დავიწყეთ ფიქრი და მივედით იმ დასკვნამდე, რომ ამის საუკეთესო გზა იქნება ნიჟარების მოდულური სისტემა, რომელიც კონტროლდება Art-Net პროტოკოლზე, ასე რომ ჩვენ დაგვჭირდება მხოლოდ ძაბვის წყარო და Ethernet კაბელი.

ეს არის ზუსტად ის, რაც მე შევქმენი და შევეცდები აგიხსნათ როგორ გავაკეთე ეს. მთელი კონფიგურაცია ემყარება ჟოლოს პი, რომელიც აკონტროლებს დაყენების პროცესს. მისი დაყენებიდან გამომდინარე, კონტროლი გადასცემს მსუბუქ კომპიუტერს (Chamsys და სხვ.), რომელიც გააკონტროლებს ნიჟარებს იქიდან.

მე ვვარაუდობ, რომ თქვენ გაქვთ ძირითადი ცოდნა პითონის, არდუინოს და ჟოლოს პი ასველის შესახებ, როგორც ხელოვნების ქსელის პროტოკოლისა და კონტროლერების შესახებ რაღაცის გაგების შესახებ.

მარაგები

რაც დაგჭირდებათ:

  • ჟოლო პი
  • არდუინო
  • Arduino Ethernet ფარი
  • არდუინოს საავტომობილო ფარი
  • ნებისმიერი OLED ეკრანი
  • Ethernet კაბელი
  • Ethernet გადამრთველი
  • DC ძრავა კოდირებით დამყარებულია

ნაბიჯი 1: ჟოლოს პიის დაყენება

კარგი, ასე რომ ეს იქნება ჟოლოს პი გაუშვებს Apache და MariaDB სერვერს. აპაჩის სერვერი მასპინძლობს ვებსაიტს, MariaDB არის მონაცემთა ბაზა, სადაც ჩვენ ვინახავთ ვინჩების მონაცემებს.

მე არ გაგივლით პი -ს ssh– ით დაყენების მთელ პროცესს, თუ თქვენ არ იცნობთ აქ არის კარგი სამეურვეო.

ასე რომ, პირველ რიგში, ჩვენ დავრწმუნდებით, რომ ჟოლოს პი არის დაყენებული, თქვენს ტერმინალში:

Apache– ის ინსტალაციისთვის

sudo apt დააინსტალირეთ apache2 -y

დააინსტალირეთ mariaDB

sudo apt-get დააინსტალირეთ mariadb-server

ეს არის პითონის გაფართოებები, რაც ჩვენ დაგვჭირდება

pip3 დააინსტალირეთ mysql-connector-python

pip3 დააინსტალირეთ flask-socketio pip3 დააინსტალირეთ flask-cors pip3 დააინსტალირეთ gevent pip3 დააინსტალირეთ gevent-websocket pip3 დააინსტალირეთ ქსელები

დაფარული ეკრანისთვის ჩვენ გვჭირდება ცოტა უფრო რთული დაყენების პროცესი, რომელიც აქ შეგიძლიათ ნახოთ.

კარგი, ეს ყველაფერი დასრულებულია!

ნაბიჯი 2: იმის გაგება, თუ როგორ იმუშავებს კონფიგურაცია

ასე რომ, თუ როგორ გსურთ დააყენოთ winch არის მისცეს მას საწყისი პოზიცია და ბოლო პოზიცია. მას მიენიჭება გარკვეული არხი და ამ არხით თქვენ შეძლებთ მხოლოდ არჩეულ სტატუსსა და საბოლოო პოზიციას შორის გადაადგილებას.

ამ პოზიციის ასარჩევად თქვენ უნდა გადაიტანოთ ვინჩი მათზე, როდესაც იქ იქნებით, თქვენ გადაუხვევთ გარკვეულ არხს 56 მნიშვნელობამდე. როდესაც ეს ზუსტი არხი მიაღწევს ამ მნიშვნელობას, ის გაიგებს, რომ ეს არის მისი საწყისი დასაწყისი / დასასრულის პოზიცია, თუ მას სჭირდება გადაადგილება ზემოთ ან ქვემოთ ან თუ მას სჭირდება თავისი არტნეტის ღირებულებების შეცვლა. მარმარილოს გადატანა ასევე ხდება გარკვეული არხის 56 -ზე დაყენებით. "და რატომ 56" მესმის თქვენ გაინტერესებთ, კარგია, რომ რაღაც უნდა ავირჩიო:).

პოზიცია გამოითვლება DC ძრავაზე დამშიფვრის საშუალებით.

ნაბიჯი 3: პიის უკანა ნაწილი

პიის უკანა მხარე
პიის უკანა მხარე

სისტემის საყრდენი შეგიძლიათ იხილოთ ჩემს github– ზე. მე დავწერე ჩემი ბიბლიოთეკა art-net პროტოკოლისთვის, ასე რომ მოგერიდებათ მისი გამოყენება. მე არ გაგივლით ყველაფერს ხაზით, მაგრამ მე მოგცემთ ამ ყველაფრის დიდ სურათს.

კოდი მუშაობს კოლბების სერვერზე, რომელიც აკავშირებს apache სერვერს, რომელიც მუშაობს pi- ზე. იგი იყენებს flask-socketio მოდულს, რომ გაგზავნოს და მიიღოს მონაცემები frontend– ზე. Art-net lib იყენებს სოკეტის მოდულს პითონიდან, რომ გაგზავნოს UDP პაკეტები არდუინოში და მისგან.

ყველა მეთოდი, რომელიც იწყება @socketio.on ('F2B _ ***') ელოდება F2B ზარს ფრონტონდიდან. მიღების შემდეგ ის შეასრულებს შესაბამის მოქმედებას. იქნება ეს არტნეტის კომანდოს გაგზავნა ან მონაცემების მიღება DB- დან და უკან უკან გაგზავნა.

Oled_show_info () მეთოდი გამოიყენება ip- ის ip (ორივე wlan და ethernet ინტერფეისებზე) ჩვენების მიზნით.

ასე რომ, უბრალოდ გაუშვით კოდი

python3 აპლიკაცია. py

ნაბიჯი 4: Pi– ს წინამორბედი

პიის ფრონტონდი
პიის ფრონტონდი

იმისათვის, რომ შეძლოთ პი -ის წინამორბედის რედაქტირება, თქვენ ჯერ უნდა მიანიჭოთ თავს დირექტორია/var/www/html/. ეს არის ის ადგილი, სადაც apache იღებს ფაილებს, რათა გამოჩნდეს მის ვებგვერდზე. წვდომის მისაღებად შეასრულეთ:

sudo chmod 777/var/www/html/

ახლა ეს ყველაფერი დასრულებულია, მიიღეთ კოდი ჩემი github– ის წინამორბედისთვის და განათავსეთ იგი/var/www/html/დირექტორიაში.

ფრონტონდი იყენებს იმავე პრინციპს, როგორც უკანა ნაწილი, მაგრამ ახლა ის აგზავნის F2B _ *** ბრძანებებს ღილაკზე დაჭერისას ან სლაიდერის გადაადგილებისას.

და ეს არის ფრონტონდი გაკეთებული!

ნაბიჯი 5: არდუინო

არდუინო
არდუინო
არდუინო
არდუინო
არდუინო
არდუინო

არდუინოს გამოყენებისათვის თქვენ უნდა გამოიყენოთ ეთერნეტის ფარი და საავტომობილო ფარი. უბრალოდ ნაზად უბიძგეთ მათ არდუინოზე. დარწმუნდით, რომ ძრავის ფარს შორს არ გადააქვთ ეთერნეტის ფარზე, ან გათიშავთ 2 საავტომობილო ქინძისთავს Ethernet კავშირზე!

Arduino– ს კოდი ასევე შეგიძლიათ ნახოთ ჩემს github– ზე. ატვირთეთ artnet_winch.ino ფაილი და ყველაფერი კარგად უნდა იყოს.

დარწმუნდით, რომ განსაზღვრეთ სწორი ქინძისთავები თქვენი ძრავის სწორ ქინძისთავებზე. მოტორშილდის ქინძისთავები არჩეულია სათაურის ქინძისთავებით ფარის თავზე. ეს ქინძისთავები არჩეულია // --- საავტომობილო კონფიგურაციის ქვეშ. Aswel როგორც კოდირების ქინძისთავები, რომლებიც უნდა იყოს დაკავშირებული არდუინოს მარჯვენა პინებთან.

ასევე დარწმუნდით, რომ თქვენი ფარის MAC მისამართი სწორია. ეს შეიძლება მოიძებნოს სტიკერზე ფარის ქვეშ და რედაქტირებულია MAC ცვლადში. IP, რომელსაც იყენებთ pi– სთვის, უნდა იყოს იგივე დიაპაზონში, როგორც PI, ეს ჩვეულებრივ შეიძლება ნაპოვნი დაფარულ ეკრანზე.

კოდი ცოტათი გამოიყურება, მაგრამ არც ისე ძნელი გასაგებია. ძირითადად ეთერნეტის ფარი მუდმივად კითხულობს შემოსულ udp პაკეტებს. თუ ეს პაკეტი არის არტნეტის პაკეტი, ის გაშიფრავს მას და იღებს საჭირო ინფორმაციას მისგან. სხვადასხვა არტნეტის პაკეტები ლამაზად არის აღწერილი Art-Net ვებსაიტზე, ასე რომ, თუ თქვენ დაინტერესებული ხართ, შეგიძლიათ წაიკითხოთ რას აკეთებენ ისინი.

თუ ის მიიღებს ArtPoll პაკეტს, ის უპასუხებს ArtPollReply- ს. ეს გამოიყენება უკანა მხარეს გამოძახების ფუნქციაში, რომ იპოვოთ რომელი მოწყობილობები არის ქსელში.

თუ ის მიიღებს და ArtDMX პაკეტს ის გაშიფრავს პაკეტს და გამოიყენებს მოცემულ მონაცემებს გარკვეული დაყენების ბრძანებების შესასრულებლად ან ვინჩის პოზიციის გადასატანად.

Move_takel ფუნქცია გარდაქმნის მოცემულ DMX მნიშვნელობას (0-255 შორის) საწყის და ბოლო პოზიციებს შორის პოზიციად (0 არის დასასრული და 255 დასაწყისი). თუ კოდირების პოზიცია არ უდრის ტრანსფორმირებულ მნიშვნელობას, ვინჩი გადავა ზემოთ/ქვემოთ იმის მიხედვით, თუ სად ხართ.

მე ვმუშაობდი უკუკავშირის მარყუჟზე PI და arduino– ს შორის, რათა მან შეძლოს თავისი პოზიციის შენარჩუნება, მაგრამ ჩემი arduino– ს მეხსიერება ამოეწურა პროგრამის შესანახად:).

მონტაჟი ეს ყველაფერი

მისი მონტაჟისთვის მე დავამატე ძრავა ლითონის დამჭერზე და თავზე დავდე ერთგვარი მილი. შემდეგ უბრალოდ მიამაგრეთ კაბელი მილზე და გამოიყენეთ ფირზე რულეტი, როგორც წონა. ეს არის ძალიან ძირითადი და თქვენ შეგიძლიათ გახდეთ ძალიან შემოქმედებითი ისე, როგორც გსურთ მისი დამონტაჟება.

ნაბიჯი 6: ყველაფრის დაკავშირება

მას შემდეგ რაც არდუინო და პი დაყენდება, უბრალოდ ჩართეთ ორივე გადართვის კაბელი და ეს ასეც უნდა იყოს!

თქვენ შეგიძლიათ შეამოწმოთ ის ოფლიან ეკრანზე მოცემული wlan ip სერფინგით და თქვენ უნდა ნახოთ საიტი. დააჭირეთ ღილაკს მოწყობილობების პოვნა, რომ ნახოთ შეძლებთ თუ არა მოწყობილობის პოვნას. თუ ის არაფერს აჩვენებს, მაშინ თქვენი arduino არ არის კარგად დაკავშირებული ან თქვენ მიერ არჩეული IP არ არის იმავე დიაპაზონში, როგორც PI.

როგორც კი დაინახავთ მოწყობილობას, უბრალოდ დააწკაპუნეთ პარამეტრზე. კონფიგურაციის მენიუში შეგიძლიათ გადაიტანოთ ვინჩის გამოყენება ისრებით და შეამოწმოთ სწორია თუ არა მისი საწყისი და ბოლო პოზიციები სლაიდერის გამოყენებით.

დარწმუნდით, რომ თქვენი კონტროლერიც არის ჩართული ფარში და მისი IP არის PI და arduino– ს დიაპაზონში.

Ის არის!

გირჩევთ: