विषयसूची:

वेब पर रिंग करें!: 4 कदम
वेब पर रिंग करें!: 4 कदम

वीडियो: वेब पर रिंग करें!: 4 कदम

वीडियो: वेब पर रिंग करें!: 4 कदम
वीडियो: What is Web Browser With Full Information? – [Hindi] – Quick Support 2024, नवंबर
Anonim
Image
Image
पुशबटन से Arduino
पुशबटन से Arduino

रिंग द वेब स्थानीय/वास्तविक स्थानों से वेबसाइटों को प्रभावित करने के लिए है।

इसके बारे में अधिक जानकारी:

makker.hu/RingTheWeb/

आपको ज़रूरत होगी:

  • 1 पुशबटन
  • 10k रोकनेवाला
  • Arduino (किसी भी प्रकार)
  • केबल
  • छोटा, कम शक्ति वाला कंप्यूटर - इस मामले में एक आरपीआई
  • नोड.जेएस के साथ सार्वजनिक आईपी वाले सर्वर या कंप्यूटर तक पहुंच
  • वेबसाइट

कदम:

  1. पुशबटन से arduino
  2. अरुडिनो से रास्पबेरी
  3. सर्वर के लिए रास्पबेरी
  4. सर्वर से वेबसाइट

चरण 1: Arduino के लिए पुशबटन

सबसे पहले आपको एक Arduino और एक पुशबटन चाहिए!

उनमें से कोई भी प्रकार संभव है, यह आपको चुनना है।

उन्हें जोड़ने के लिए, कृपया Arduino के आधिकारिक बटन ट्यूटोरियल का अनुसरण करें।

यहाँ Arduino कोड है:

// डिजिटल पिन पढ़ने के लिए Arduino कोड और सीरियल पोर्ट को मान भेजें

// Balazs Kovács, 2018. शून्य सेटअप () { Serial.begin(9600); // सीरियल पोर्ट पिनमोड खोलें (8, INPUT); // पुशबटन को पिन 8 से कनेक्ट करें } इंट काउंटर = 0; // बाद में इस्तेमाल किया गया कुछ शून्य लूप () {अगर (डिजिटलरेड (8) == 1) {// पिन 8 स्थिति की जांच करें सीरियल। लिखें ("8"); } देरी (१००); काउंटर++; अगर (काउंटर = 20) {// हर 20x100 = 2000ms -> काउंटर = 0; सीरियल.राइट ("0"); // सर्वर को "मैं मौजूद हूं" संदेश भेजता है } } // बस इतना ही!

चरण 2: Arduino से रास्पबेरी तक

अरुडिनो से रास्पबेरी
अरुडिनो से रास्पबेरी

अब हम Arduino को कंप्यूटर से कनेक्ट कर सकते हैं। इस मामले में हम कम बिजली की खपत के कारण रास्पबेरी का उपयोग करते हैं।

इसे USB के माध्यम से या सीधे यहां वर्णित RX-TX पिन से कनेक्ट करें।

फिर यहां बताए अनुसार node.js और npm इंस्टॉल करें। कीवर्ड हैं:

कर्ल-एसएल https://deb.nodesource.com/setup_8.x | सुडो-ई बैश -

और फिर

sudo apt-get install -y nodejs

एनपीएम (नोड.जेएस के पैकेज मैनेजर) को सॉकेट.आईओ-क्लाइंट और सीरियलपोर्ट मॉड्यूल की जरूरत है, इसलिए उन्हें स्थापित करें:

npm सॉकेट स्थापित करें

npm सीरियलपोर्ट स्थापित करें

निम्न कोड के साथ कुछ.जेएस फ़ाइल खोलें और सहेजें:

// सॉकेट.io कनेक्शन को इनिशियलाइज़ करें:

वर सॉकेट; var io = आवश्यकता ('socket.io-client'); सॉकेट = io ("https://yourserver.com:port"); // यदि सर्वर से कनेक्शन सफल है: सॉकेट.ऑन ('कनेक्ट', फ़ंक्शन() {सॉकेट। भेजें ("मैं यहां हूं!"); कंसोल। लॉग ("सर्वर से जुड़ा"); }); // सीरियल पोर्ट कम्युनिकेशन को इनिशियलाइज़ करें, NB / dev = ttyACM0 को बदला जा सकता है: var SerialPort = आवश्यकता ('सीरियलपोर्ट'); वर सीरियलपोर्ट = नया सीरियलपोर्ट ('/ dev/ttyACM0', {बॉडरेट: 9600}); // अगर Arduino से कुछ आता है, तो सर्वर को अलग-अलग संदेश भेजता है // इसके अनुसार serialPort.on('data', function (data) {console.log('Data:', data.toString('ascii')); अगर(data.indexOf('8')!==-1){ socket.send('/RingTheBell 1'); } if(data.indexOf('0')!==-1){ सॉकेट. भेजें ('/ ग्राहक 1 1'); }}); // उपलब्ध डेटा पढ़ें - मुझे लगता है कि यह आवश्यक नहीं है serialPort.on('readable', function() {console.log('Data:', port.read()); });

अब आपको सर्वर साइड नोड.जेएस कोड भी सेट करना चाहिए, जब तक कि आप स्क्रिप्ट को शुरू और परीक्षण कर सकते हैं

नोड./something.js

अगर कुछ गलत है तो कृपया मुझे बताएं!

चरण 3: सर्वर-साइड कोड

सर्वर-साइड कोड
सर्वर-साइड कोड

सर्वर साइड पर, हमें socket.io सर्वर के साथ node.js चाहिए।

तो इसे इसके साथ जोड़ें:

npm सॉकेट-आईओ स्थापित करें

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

तो, निम्नलिखित के साथ एक serverscript.js खोलें:

वर http = आवश्यकता ('http'), आईओ = आवश्यकता ('सॉकेट.आईओ'); // एक न्यूनतम http सर्वर खोलें। सॉकेट.आईओ को इसकी आवश्यकता है। var सर्वर = http.createServer (फ़ंक्शन (req, res) {res.writeHead (200, {'सामग्री-प्रकार': 'टेक्स्ट/एचटीएमएल'}); res.end ('हैलो');}); // टीसीपी सॉकेट चालू करें - अपना पोर्ट सेट करें! server.listen(7004, function() { कंसोल.लॉग ("टीसीपी सर्वर पोर्ट 7004 पर चल रहा है"); }); // टीसीपी संदेशों का विश्लेषण करें var सॉकेट = io.listen (सर्वर); सॉकेट.ऑन ('कनेक्शन', फंक्शन (क्लाइंट, रिनफो) {क्लाइंट.ब्रॉडकास्ट.एमिट ('सिस्टम', 'कोई जुड़ा…'); क्लाइंट.ऑन ('मैसेज', फंक्शन (इवेंट) { कंसोल.लॉग (इवेंट)); // प्रत्येक जुड़े हुए उपयोगकर्ताओं को कोई भी संदेश प्रसारित करें! socket.emit('message', event); }); client.on('everybody', function(event){ }); client.on('disconnect', function(){ socket.emit('message', 'किसी ने डिस्कनेक्ट किया…'); }); });

इसके साथ परीक्षण करने का प्रयास करें

नोड./serverscript.js

यदि क्लाइंट भी चल रहा है, तो आपको दोनों कंसोल पर उनका संचार देखना चाहिए। कम से कम ये:

डेटा: 0

- समय-समय पर सिस्टम को बताता है कि Arduino-> रास्पबेरी-> सर्वर संचार काम कर रहा है।

तथा

डेटा: 8

- बताता है कि बटन चालू है।

चरण 4: वेबसाइट कॉन्फ़िगर करें

वेबसाइट कॉन्फ़िगर करें
वेबसाइट कॉन्फ़िगर करें

अब हम 75% के साथ तैयार हैं!

वेबसाइट के लिए कोड शामिल करके कड़ी मेहनत समाप्त करें।

यह आसान है।

सबसे पहले, socket.io क्लाइंट शामिल करें:

फिर संदेश-विश्लेषक प्रणाली बनाएं:

वर सॉकेट;

सॉकेट = io ("yourserver.com: पोर्ट"); सॉकेट.ऑन ('कनेक्ट', फ़ंक्शन () {सॉकेट.सेंड ('अनाम क्लाइंट - एक वेबसाइट उपयोगकर्ता - जुड़ा हुआ है!'); सॉकेट.ऑन ('संदेश', फ़ंक्शन (संदेश) {// यदि आप देखना चाहते हैं हर संदेश, बस इसे अनकम्मेंट करें: // कंसोल.लॉग (msg); if (msg == "/RingTheBell 1") // यहां पुशबटन इवेंट को व्यक्त करने के लिए उपयोग करने के लिए कोड आता है: { document.body.style.background = "#ccc"; setTimeout(function() { document.body.style.background = "#000"; }, 1000); }; if (msg == "/client1 1") {// यहां आप कुछ रख सकते हैं जो कनेक्टेड क्लाइंट स्थिति पर प्रतिक्रिया करता है }; });

वोला!

तैयार।

सिफारिश की: