विषयसूची:

कला-नेट नियंत्रित चरखी: 6 कदम
कला-नेट नियंत्रित चरखी: 6 कदम

वीडियो: कला-नेट नियंत्रित चरखी: 6 कदम

वीडियो: कला-नेट नियंत्रित चरखी: 6 कदम
वीडियो: नब्ज देखकर रोगों का सफल इलाज, नाड़ी वैद्य का कमाल देखिए || Technical Farming || 2024, सितंबर
Anonim
कला-नेट नियंत्रित चरखी
कला-नेट नियंत्रित चरखी

सभी को नमस्कार, इस निर्देश में मैं बता रहा हूँ कि मैंने अपनी कला-नेट नियंत्रित चरखी कैसे बनाई। "आपका क्या?" मैंने सुना है आप पूछते हैं, अच्छा मुझे बहुत जल्दी समझाएं। कुछ साल पहले हमने स्थानीय युवा घर के साथ एक पार्टी का आयोजन किया था, और मंच डिजाइन के रूप में हमें एक चलती छत बनाने का विचार आया था।

9 विनचेस (टेकल्स) के साथ हमने एक विशाल सफेद कपड़ा उठाया और प्रोटोकॉल डीएमएक्स के माध्यम से हमने उन्हें नियंत्रित किया। लेकिन उस समय हमने जिन विंच का इस्तेमाल किया था, वहां थ्रीफेज नियंत्रित था। तो इसे ऊपर और नीचे जाने के लिए हमें एक केंद्रीय Arduino मेगा द्वारा नियंत्रित रिले की एक प्रणाली बनानी पड़ी जिसे dmx का उपयोग करके नियंत्रित किया गया था। रिले जहां 230V और 12 amps के वोल्टेज स्विचिंग।

इसे और अधिक समझने योग्य शब्दों में कहें तो हमें तारों और रिले की एक विशाल गड़बड़ी पैदा करनी पड़ी जो वास्तव में सुपर अस्थिर, अविश्वसनीय और बहुत खतरनाक थी।

इसलिए हमने सोचा कि ऐसा करने का एक बेहतर तरीका होना चाहिए। हमने सोचना शुरू किया और इस निष्कर्ष पर पहुंचे कि ऐसा करने का सबसे अच्छा तरीका विनचेस की मॉड्यूलर प्रणाली के माध्यम से होगा, जिसे आर्ट-नेट प्रोटोकॉल पर नियंत्रित किया जाएगा, इसलिए हमें केवल वोल्टेज स्रोत और ईथरनेट केबल की आवश्यकता होगी।

तो यह वही है जो मैंने बनाया है और मैं आपको यह समझाने की कोशिश करूंगा कि मैंने इसे कैसे किया। पूरा सेटअप एक रास्पबेरी पाई पर निर्भर करता है जो सेटअप प्रक्रिया को नियंत्रित करता है। इसका सेटअप नियंत्रण एक हल्के कंप्यूटर (चैम्सिस, आदि..) को दे रहा है जो वहां से चरखी को नियंत्रित करेगा।

मैं यह मान रहा हूं कि आपको अजगर, आर्डिनो और रास्पबेरी पाई एस्वेल का बुनियादी ज्ञान है क्योंकि आप कला-नेट प्रोटोकॉल और नियंत्रकों के बारे में कुछ समझते हैं।

आपूर्ति

आपको किस चीज़ की ज़रूरत पड़ेगी:

  • रास्पबेरी पाई
  • अरुडिनो
  • Arduino ईथरनेट शील्ड
  • Arduino मोटर शील्ड
  • कोई भी OLED स्क्रीन
  • ईथरनेट केबल
  • ईथरनेट स्विच
  • एनकोडर के साथ डीसी मोटर का निर्माण

चरण 1: रास्पबेरी पाई की स्थापना

ठीक है तो जिस तरह से यह काम करेगा रास्पबेरी पाई एक अपाचे और एक मारियाडीबी सर्वर चला रहा होगा। अपाचे सर्वर वेबसाइट को होस्ट करने के लिए है, मारियाडीबी एक डेटाबेस रखने के लिए है जहां हम जीत के डेटा को स्टोर करेंगे।

मैं आपको एसएसएच के साथ पीआई स्थापित करने की पूरी प्रक्रियाओं के माध्यम से नहीं चलूंगा, अगर आप अपरिचित हैं तो यहां एक अच्छा ट्यूटोरियल है।

तो सबसे पहले हम यह सुनिश्चित करेंगे कि आपके टर्मिनल रन में रास्पबेरी पाई सभी सेटअप है:

अपाचे स्थापित करने के लिए

sudo apt apache2 -y. स्थापित करें

मारियाडीबी स्थापित करने के लिए

sudo apt-mariadb-server स्थापित करें

ये सभी पायथन एक्सटेंशन हैं जिनकी हमें आवश्यकता होगी

pip3 mysql-कनेक्टर-अजगर स्थापित करें

pip3 फ्लास्क-सॉकेटियो स्थापित करें pip3 फ्लास्क-कॉर्स स्थापित करें pip3 gevent pip3 स्थापित करें gevent-websocket pip3 स्थापित करें netifaces स्थापित करें

पुराने डिस्प्ले के लिए हमें थोड़ी अधिक कठिन सेटअप प्रक्रिया की आवश्यकता है जो यहां पाई जा सकती है।

ठीक है कि पीआई सब किया है!

चरण 2: यह समझना कि सेटअप कैसे काम करेगा

तो आप चरखी को कैसे सेट करना चाहते हैं, इसे प्रारंभ स्थिति और अंत स्थिति देकर। इसे एक निश्चित चैनल सौंपा जाएगा और इस चैनल के साथ आप केवल चुने हुए स्टेट और एंड पोजीशन के बीच जाने में सक्षम होंगे।

इन पदों का चयन करने के लिए आपको चरखी को उनके पास ले जाना होगा, एक बार जब आप वहां होंगे तो आप एक निश्चित चैनल को 56 के मान में बदल देंगे। जब यह सटीक चैनल उस मान तक पहुंच जाएगा तो उसे पता चल जाएगा कि यह उसकी अंतिम शुरुआत / समाप्ति स्थिति है, अगर उसे ऊपर या नीचे जाने की जरूरत है या अगर उसे अपने आर्टनेट मूल्यों को बदलने की जरूरत है। चरखी को हिलाना भी एक निश्चित चैनल को 56 पर सेट करके किया जाता है। "और 56 क्यों" मैंने आपको आश्चर्य सुना, ठीक है, मुझे कुछ चुनना पड़ा:)।

स्थिति की गणना डीसी मोटर पर एन्कोडर के माध्यम से की जाती है।

चरण 3: Pi. का बैकएंड

Pi. का बैकएंड
Pi. का बैकएंड

सिस्टम के लिए बैकएंड मेरे जीथब पर पाया जा सकता है। मैंने आर्ट-नेट प्रोटोकॉल के लिए अपनी खुद की लाइब्रेरी लिखी है, इसलिए बेझिझक इसका इस्तेमाल करें। मैं आपको हर चीज लाइन दर लाइन नहीं बताऊंगा, लेकिन मैं आपको इस सब की बड़ी तस्वीर दूंगा।

कोड एक फ्लास्क सर्वर चलाता है जो पीआई पर चल रहे अपाचे सर्वर के साथ संचार करता है। यह फ्रंटएंड को डेटा भेजने और प्राप्त करने के लिए फ्लास्क-सॉकेटियो मॉड्यूल का उपयोग करता है। आर्ट-नेट लिब पाइथन से सॉकेट मॉड्यूल का उपयोग यूडीपी पैकेट को आर्डिनो से और भेजने के लिए करता है।

@socketio.on('F2B_***') से शुरू होने वाली हर विधि फ़्रंटएंड से F2B कॉल की प्रतीक्षा कर रही है। एक बार यह प्राप्त हो जाने के बाद यह तदनुसार कार्रवाई निष्पादित करेगा। चाहे वह एक आर्टनेट कमांडो भेज रहा हो या डीबी से डेटा प्राप्त कर उसे वापस मोर्चे पर भेज रहा हो।

oled_show_info() विधि का उपयोग आईपी के आईपी को प्रदर्शित करने के लिए किया जाता है (दोनों wlan और ईथरनेट इंटरफेस पर)।

तो बस के साथ कोड चलाएँ

python3 app.py

चरण 4: Pi. का अग्रभाग

Pi. का फ्रंटएंड
Pi. का फ्रंटएंड

पीआई के फ्रंटएंड को संपादित करने में सक्षम होने के लिए आपको सबसे पहले खुद को निर्देशिका /var/www/html/ में एक्सेस देना होगा। यह वह जगह है जहां अपाचे को अपनी वेबसाइट पर प्रदर्शित करने के लिए इसकी फाइलें मिलती हैं। एक्सेस निष्पादित करने के लिए:

सुडो चामोद 777 /var/www/html/

अब यह सब हो गया है मेरे जीथब के दृश्यपटल के लिए कोड प्राप्त करें और इसे /var/www/html/ निर्देशिका में रखें।

फ्रंटएंड बैकएंड के समान सिद्धांत का उपयोग करता है लेकिन अब यह F2B_*** कमांड भेजता है जब एक बटन दबाया जाता है या स्लाइडर ले जाया जाता है।

और वह फ्रंटएंड किया गया है!

चरण 5: Arduino

अरुडिनो
अरुडिनो
अरुडिनो
अरुडिनो
अरुडिनो
अरुडिनो

Arduino का उपयोग करने के लिए आपको ईथरनेट शील्ड और मोटर शील्ड का उपयोग करना होगा। बस उन्हें धीरे से arduino पर धकेलें। सुनिश्चित करें कि आप ईथरनेट शील्ड पर मोटर शील्ड को दूर तक नहीं धकेलते हैं या आप ईथरनेट कनेक्शन पर 2 मोटर पिन को छोटा कर देंगे!

Arduino के लिए कोड मेरे github पर भी पाया जा सकता है। artnet_winch.ino फ़ाइल अपलोड करें और सब कुछ अच्छा होना चाहिए।

सुनिश्चित करें कि आप सही पिन को अपनी मोटर के सही पिनों में परिभाषित करते हैं। मोटरशील्ड पिन को ढाल के शीर्ष पर हेडर पिन के साथ चुना जाता है। इन पिनों को //--- मोटर कॉन्फिगरेशन के तहत चुना जाता है। एनकोडर पिन के रूप में एस्वेल जिसे आर्डिनो के दाहिने पिन से जोड़ने की आवश्यकता होती है।

यह भी सुनिश्चित करें कि शील्ड का आपका मैक पता सही है। यह ढाल के नीचे एक स्टिकर पर पाया जा सकता है और मैक चर में संपादित किया जा सकता है। पीआई के लिए आप जिस आईपी का उपयोग करते हैं, वह पीआई के समान ही होना चाहिए, यह सामान्य रूप से पुरानी स्क्रीन पर पाया जा सकता है।

कोड थोड़ा ज्यादा दिखता है लेकिन समझना इतना मुश्किल नहीं है। मूल रूप से ईथरनेट शील्ड लगातार आने वाले udp पैकेटों को पढ़ता है। यदि वह पैकेट एक आर्टनेट पैकेट है तो वह इसे डीकोड करता है और इससे आवश्यक जानकारी प्राप्त करता है। आर्ट-नेट वेबसाइट पर विभिन्न आर्टनेट पैकेटों का अच्छी तरह से वर्णन किया गया है, इसलिए यदि आप रुचि रखते हैं तो आप पढ़ सकते हैं कि वे सभी क्या करते हैं।

यदि उसे एक ArtPoll पैकेट प्राप्त होता है तो वह एक ArtPollReply के साथ प्रतिक्रिया करेगा। इसका उपयोग बैकएंड में कॉलआउट फ़ंक्शन में यह पता लगाने के लिए किया जाता है कि नेटवर्क पर कौन से डिवाइस हैं।

यदि यह प्राप्त करता है और ArtDMX पैकेट यह पैकेट को डिकोड करेगा और दिए गए डेटा का उपयोग कुछ सेटअप कमांड को निष्पादित करने या चरखी को स्थिति में ले जाने के लिए करेगा।

move_takel फ़ंक्शन दिए गए DMX मान (0-255 के बीच) को प्रारंभ और अंत स्थिति (0 अंत और 255 प्रारंभ होने के बीच) के बीच की स्थिति में बदल देता है। यदि एन्कोडर की स्थिति रूपांतरित मान के बराबर नहीं है, तो आप कहां हैं, इसके आधार पर चरखी ऊपर/नीचे जाएगी।

मैं PI और arduino के बीच एक फीडबैक लूप पर काम कर रहा था ताकि यह अपनी स्थिति के साथ बना रहे लेकिन प्रोग्राम को स्टोर करने के लिए मेरा arduino मेमोरी से बाहर चला गया:)।

यह सब बढ़ते हुए

इसके माउंटिंग के लिए मैंने मोटर को एक मेटल होल्डर से जोड़ा और उसके ऊपर एक तरह की ट्यूब लगाई। फिर बस ट्यूब पर एक कॉर्ड लगा दिया और वजन के रूप में टेप के एक रोल का इस्तेमाल किया। यह बहुत ही बुनियादी है और आप इसे जिस तरह से माउंट करना चाहते हैं, उसमें आप बहुत रचनात्मक हो सकते हैं।

चरण 6: सभी को जोड़ना

एक बार जब arduino और pi सभी सेटअप हो जाते हैं तो बस अपने स्विच में दोनों ईथरनेट केबलों को प्लग करें और यही होना चाहिए!

आप पुराने स्क्रीन पर दिए गए wlan ip पर सर्फ करके इसका परीक्षण कर सकते हैं और आपको साइट देखनी चाहिए। यह देखने के लिए कि क्या आप डिवाइस ढूंढ सकते हैं, डिवाइस ढूंढें दबाएं. यदि यह कुछ भी नहीं दिखाता है तो आपका arduino अच्छी तरह से जुड़ा नहीं है या आपके द्वारा चुना गया IP PI के समान श्रेणी में नहीं है।

एक बार जब आप डिवाइस को देख लें तो बस सेटअप दबाएं। सेटअप मेनू में आप तीरों का उपयोग करके चरखी को स्थानांतरित कर सकते हैं और परीक्षण कर सकते हैं कि स्लाइडर के साथ यह प्रारंभ और अंत स्थिति सही है या नहीं।

सुनिश्चित करें कि आपका नियंत्रक भी ढाल में प्लग किया गया है और यह आईपी पीआई और आर्डिनो की सीमा में है।

इतना ही!

सिफारिश की: