विषयसूची:
वीडियो: Esp32 और Thingsio.ai प्लेटफॉर्म का उपयोग करके मिट्टी की नमी की मात्रा का मापन: 6 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:21
इस ट्यूटोरियल में मैं esp32 का उपयोग करके मिट्टी में नमी की मात्रा को पढ़ने और उसके बाद thethingio.ai IoT क्लाउड प्लेटफॉर्म में मान भेजने के बारे में समझाने जा रहा हूं।
चरण 1: घटक
हार्डवेयर घटक:
1. esp32 विकास बोर्ड
2. मिट्टी सेंसर
3. जम्पर तार
सॉफ्टवेयर:
1. अरुडिनो आईडीई
2. थिंग्सियो.एआई
चरण 2: कनेक्शन
मृदा नमी सेंसर ---------------------- esp32 बोर्ड
वीसीसी----------------------------------------3V3
जीएनडी -------------------------------------- जीएनडी
ए0------------------------------------------वीपी
चरण 3: कोडिंग:
#शामिल
#शामिल
#शामिल
इंट काउंट = 0, आई, एम, जे, के;
इंट टी;
इंट सेंसर_पिन = ए0;
इंट वैल्यू;
///////////////////////////////////// सभी घोषणाएं
बादल के लिए /////////////////////////////
कास्ट चार* होस्ट = "एपीआई.थिंग्ससाई.आईओ"; // या होस्ट =
devapi2.thethingscloud.com
const char* post_url = "/ डिवाइस/डिवाइसडेटा"; // या
/एपीआई/वी२/थिंग्सक्लाउड२/_टेबल/डेटा_एसी
कास्ट चार* टाइम_सर्वर =
"baas.thethingscloud.com"; // यह टाइमस्टैम्प कन्वर्ट करने के लिए है
कॉन्स्ट इंट httpPort = 80;
कॉन्स्ट इंट httpsPort = ४४३;
कास्ट चार * सर्वर =
"api.thingsai.io"; // सर्वर यूआरएल
चार टाइमस्टैम्प [10];
वाईफाईमल्टी वाईफाईमल्टी;
// टीसीपी कनेक्शन बनाने के लिए वाईफाई क्लाइंट क्लास का उपयोग करें
वाईफाई क्लाइंट क्लाइंट;
//////////////////////////////////// टाइमस्टैम्प
गणना समारोह //////////////////////////////////////
इंट गिवमीटाइमस्टैम्प ()
{
अहस्ताक्षरित लंबा
टाइमआउट = मिली ();
// वाईफाई क्लाइंट क्लाइंट;
जबकि
(ग्राहक उपलब्ध () == 0)
{
अगर (मिली () -
समयबाह्य > ५००००)
{
क्लाइंट.स्टॉप ();
वापसी 0;
}
}
जबकि (क्लाइंट.उपलब्ध ())
{
स्ट्रिंग लाइन =
client.readStringUntil('\r'); //indexOf() smthng की खोज करने के लिए एक मज़ेदार है, अगर नहीं मिला तो यह -1 लौटाता है
इंट पॉज़ =
line.indexOf("\"टाइमस्टैम्प\""); // प्रतिक्रिया की शुरुआत से "\"टाइमस्टैम्प \"" खोजें और उसके बाद सभी डेटा कॉपी करें, यह आपका टाइमस्टैम्प होगा
अगर (स्थिति>=
0)
{
इंट जे = 0;के लिए (जे = 0; जे <10; जे ++)
{टाइमस्टैम्प [जे] = लाइन [पॉज़ + 12 + जे];
}
}
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////
व्यर्थ व्यवस्था()
{सीरियल.बेगिन (115200);Serial.println ("सेंसर से पढ़ना …");
देरी (2000);
// हम शुरू करते हैं
वाईफाई नेटवर्क से कनेक्ट करना
WiFiMulti.addAP("Wifi_name", "वाईफ़ाई पासवर्ड");
सीरियल.प्रिंट्लन ();
सीरियल.प्रिंट्लन ();Serial.print ("वाईफाई की प्रतीक्षा करें …");जबकि (WiFiMulti.run() != WL_CONNECTED) {सीरियल.प्रिंट ("।");
देरी (500);
}सीरियल.प्रिंट्लन ("");Serial.println ("वाईफाई कनेक्टेड");
Serial.println ( आईपी
पता: );Serial.println (वाईफाई.लोकलआईपी ());
देरी (500);
}
शून्य लूप ()
{
{
//////////////////////////////////// क्वेरी भेजें और
प्रतिक्रिया प्राप्त करें ///////////////////////
मूल्य =
एनालॉग रीड (सेंसर_पिन);
// मान =
नक्शा (मान, 550, 0, 0, 100);सीरियल.प्रिंट ("मोसचर:");सीरियल.प्रिंट (मान);सीरियल.प्रिंट्लन ("%");देरी (1000);सीरियल.प्रिंट ("से कनेक्ट करना");सीरियल.प्रिंट्लन (होस्ट); // परिभाषित उल्टा:- होस्ट = devapi2.thethingscloud.com या 139.59.26.117
//////////////////////////////////// टाइमस्टैम्प कोड स्निपेट
/////////////////////////
Serial.println ("अंदर टाइमस्टैम्प प्राप्त करें / n");
अगर
(! client.connect(time_server, {
वापसी;
//*-*-*-*-*-*-*-*-*-*
}client.println ("GET /api/timestamp HTTP/1.1"); // यह हिस्सा क्या कर रहा है, मुझे नहीं मिलाclient.println ("होस्ट: baas.thethingscloud.com");client.println ("कैश-कंट्रोल: नो-कैश");client.println ("डाकिया-टोकन: ea3c18c6-09ba-d049-ccf3-369a22a284b8");
क्लाइंट.प्रिंट्लन ();
गिवमीटाइमस्टैम्प ();
// यह उस फ़ंक्शन को कॉल करेगा जो सर्वर से टाइमस्टैम्प प्रतिक्रिया प्राप्त करेगा
Serial.println ("टाइमस्टैम्प प्राप्त हुआ");
Serial.println (टाइमस्टैम्प);Serial.println ("थिंग्सक्लाउडपोस्ट के अंदर");
स्ट्रिंग पोस्टवैल्यू =
"{"device_id\": 61121695918, \"slave_id\": 2";
पोस्टवैल्यू =
पोस्टवैल्यू + ", \"डीटीएस\":" +टाइमस्टैम्प;
पोस्टवैल्यू =
PostValue +", \"data\":{"MOIST\":" + value +"}"+"}";Serial.println (पोस्टवैल्यू);
/* WiFiClientSecure का एक उदाहरण बनाएं */
WiFiClientSecure क्लाइंट;Serial.println ("पोर्ट 443 के माध्यम से सर्वर से कनेक्ट करें");
अगर
(! क्लाइंट। कनेक्ट (सर्वर, 443)) {Serial.println ("कनेक्शन विफल!");
} अन्यथा {Serial.println ("सर्वर से जुड़ा!");
/* HTTP बनाएं
प्रार्थना */client.println ("पोस्ट / डिवाइस / डिवाइसडेटा HTTP / 1.1");client.println ("होस्ट: api.thingsai.io");//client.println ("कनेक्शन: बंद करें");client.println ("सामग्री-प्रकार: एप्लिकेशन/जेसन");
client.println ( कैश-कंट्रोल:
नो-कैश");client.println ("प्राधिकरण: वाहक eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNTkXs");क्लाइंट.प्रिंट ("सामग्री-लंबाई:");
client.println (PostValue.length ());क्लाइंट.प्रिंट्लन ();क्लाइंट.प्रिंट्लन (पोस्टवैल्यू);
//////////////////////////////// पर डेटा पोस्ट करना
क्लाउड हो गया है और अब प्रतिक्रिया फॉर्म प्राप्त करें क्लाउड सर्वर //////////////////
Serial.print( प्रतिक्रिया की प्रतीक्षा कर रहा है
);
जबकि
(! ग्राहक। उपलब्ध ()) {
देरी (50);
//सीरियल.प्रिंट ("।");
}
/* यदि डेटा है
उपलब्ध है तो प्राप्त करें और टर्मिनल पर प्रिंट करें */
जबकि
(ग्राहक उपलब्ध ()) {
चार सी = क्लाइंट.रीड ();सीरियल.राइट (सी);
}
/* अगर
सर्वर डिस्कनेक्ट हो गया है, क्लाइंट को रोकें */
अगर
(! क्लाइंट। कनेक्टेड ()) {सीरियल.प्रिंट्लन ();Serial.println ("सर्वर डिस्कनेक्ट हो गया");
क्लाइंट.स्टॉप ();
}
}
Serial.println ( ////////////////////// अंत
///////////////////// );
देरी (3000);
}
}
चरण 4: आउटपुट:
कोड का आउटपुट दिखाया गया है।
चरण 5: ग्राफ:
यह उन मानों का चित्रमय प्रतिनिधित्व है जो सेंसर से पढ़े जाते हैं।
चरण 6:
यहाँ परियोजना का पूरा वीडियो है। शुक्रिया।
सिफारिश की:
Arduino के साथ अपना खुद का मिट्टी नमी सेंसर बनाएं !!!: 10 कदम
Arduino के साथ अपनी खुद की मिट्टी की नमी सेंसर बनाएं !!!: के बारे में !!! इस निर्देश में, हम Arduino के साथ एक मृदा नमी सेंसर FC-28 को इंटरफ़ेस करने जा रहे हैं। यह सेंसर मिट्टी के अंदर पानी की मात्रा को मापता है और हमें आउटपुट के रूप में नमी का स्तर देता है। सेंसर दोनों एनालॉग से लैस है
ESP32 वाईफाई मिट्टी नमी सेंसर: 5 कदम
ESP32 वाईफाई मृदा नमी सेंसर: मिट्टी के प्रतिरोध को मापने के लिए मिट्टी के माध्यम से विद्युत संकेत भेजने वाले सस्ते मिट्टी नमी सेंसर सभी विफल हो रहे हैं। इलेक्ट्रोलिसिस इस सेंसर को बिना किसी व्यावहारिक उपयोग के बनाता है। इलेक्ट्रोलिसिस के बारे में यहाँ और देखें। इस परियोजना में प्रयुक्त सेंसर है
Arduino का उपयोग करके मृदा नमी सेंसर का उपयोग कैसे करें: 4 कदम
Arduino का उपयोग करके मृदा नमी सेंसर का उपयोग कैसे करें: मृदा नमी सेंसर एक सेंसर है जिसका उपयोग मिट्टी में नमी को मापने के लिए किया जा सकता है। स्मार्ट खेती परियोजनाओं, सिंचाई नियंत्रक परियोजनाओं, या आईओटी कृषि परियोजनाओं के प्रोटोटाइप बनाने के लिए उपयुक्त। इस सेंसर में 2 जांच हैं। जो मुझे आदत है
प्रेशर सेंसर का उपयोग करके पानी की मात्रा मापना: 5 कदम
प्रेशर सेंसर का उपयोग करके पानी की मात्रा को मापना: एक टैंक में पानी की मात्रा को मापने के लिए एक प्रेशर सेंसर का इस्तेमाल किया गया था। उपकरण: 24PC सेंसरएक ब्रेडबोर्ड रेसिस्टर्सएम्पलीफायर टैंक
Esp32 और Thingsio.ai प्लेटफॉर्म का उपयोग करके तापमान मापन: 6 कदम
Esp32 और Thingsio.ai प्लेटफॉर्म का उपयोग करके तापमान मापन: इस ट्यूटोरियल में मैं esp32 डेवलपमेंट बोर्ड में मौजूद इनबिल्ट तापमान सेंसर का उपयोग करके परिवेश में तापमान को मापने के बारे में समझाने जा रहा हूँ। esp32 में कई इनबिल्ट सेंसर हैं जैसे हॉल सेंसर का इस्तेमाल प्रॉक्सिमिटी सेंसर के रूप में किया जाता है, टच