विषयसूची:

ESP32 के साथ डिजिटल स्केल: 12 कदम
ESP32 के साथ डिजिटल स्केल: 12 कदम

वीडियो: ESP32 के साथ डिजिटल स्केल: 12 कदम

वीडियो: ESP32 के साथ डिजिटल स्केल: 12 कदम
वीडियो: IoT Weighing Scale using Load cell HX711,ESP32, & New Blynk V2 0 2024, नवंबर
Anonim
Image
Image
प्रयुक्त संसाधन
प्रयुक्त संसाधन

क्या आपने कभी ESP32 और एक सेंसर (लोड सेल के रूप में जाना जाता है) का उपयोग करके डिजिटल स्केल माउंट करने के बारे में सोचा है? आज, मैं आपको दिखाऊंगा कि इसे एक ऐसी प्रक्रिया के माध्यम से कैसे करना है जो अन्य प्रयोगशाला परीक्षणों की भी अनुमति देता है, जैसे कि बल की पहचान करना जो एक इंजन एक बिंदु पर करता है, अन्य उदाहरणों के साथ।

फिर मैं लोड सेल के उपयोग से संबंधित कुछ अवधारणाओं को प्रदर्शित करूंगा, उदाहरण स्केल बनाने के लिए सेल डेटा कैप्चर करूंगा, और लोड सेल के अन्य संभावित अनुप्रयोगों को इंगित करूंगा।

चरण 1: प्रयुक्त संसाधन

• हेल्टेक लोरा 32 वाईफाई ईएसपी

• लोड सेल (स्केल का उपयोग करके 0 से 50 न्यूटन)

• १००k का १ पोटेंशियोमीटर (बेहतर अगर आप ठीक समायोजन के लिए मल्टीवोल्ट ट्रिम्पोट का उपयोग करते हैं)

• 1 एम्पियर ऑप एलएम३५८

• 2 1M5 प्रतिरोधक

• 2 10k प्रतिरोधक

• 1 4k7 रोकनेवाला

• तार

• एक प्रोटोबार्ड

• ESP के लिए एक USB केबल

• एक स्केल, ग्रैजुएट वॉल्यूम वाला कंटेनर, या कैलिब्रेशन की कोई अन्य विधि।

चरण 2: प्रदर्शन

प्रदर्शन
प्रदर्शन

चरण 3: लोड सेल

लोड कोशिकाओं
लोड कोशिकाओं

• वे बल ट्रांसड्यूसर हैं।

• वे लागू बल को एक आनुपातिक परिमाण में बदलने के लिए विभिन्न तरीकों का उपयोग कर सकते हैं जिसका उपयोग माप के रूप में किया जा सकता है। शीट एक्सटेन्सोमीटर, पीजोइलेक्ट्रिक प्रभाव, हाइड्रोलिक्स, वाइब्रेटिंग स्ट्रिंग्स आदि का उपयोग करने वाले सबसे आम हैं…

• उन्हें मापन रूप (तनाव या संपीड़न) द्वारा भी वर्गीकृत किया जा सकता है

चरण 4: लोड सेल और स्ट्रेन गेज

लोड सेल और स्ट्रेन गेज
लोड सेल और स्ट्रेन गेज
लोड सेल और स्ट्रेन गेज
लोड सेल और स्ट्रेन गेज

• शीट एक्सटेन्सोमीटर एक मुद्रित तार वाली फिल्म (आमतौर पर प्लास्टिक) होती है जिसमें प्रतिरोध होता है जो उनके आकार परिवर्तन के साथ भिन्न हो सकता है।

• इसका निर्माण मुख्य रूप से एक यांत्रिक विकृति को विद्युत परिमाण (प्रतिरोध) की भिन्नता में परिवर्तित करना है। यह अधिमानतः एक ही दिशा में होता है, ताकि घटक मूल्यांकन किया जा सके। इसके लिए कई एक्सटेन्सोमीटर का संयोजन सामान्य है

• जब शरीर से ठीक से जुड़ा होता है, तो इसका विरूपण शरीर के बराबर होता है। इस प्रकार, इसका प्रतिरोध शरीर के विरूपण के साथ बदलता रहता है, जो बदले में विकृत बल से संबंधित होता है।

• इन्हें स्ट्रेन गेज के रूप में भी जाना जाता है।

• जब तनन बल द्वारा खींचा जाता है, तो तंतु लम्बी और संकरी हो जाती है, जिससे प्रतिरोध बढ़ जाता है।

• जब एक संपीडन बल द्वारा संपीडित किया जाता है, तो तार छोटा और चौड़ा हो जाता है, जिससे प्रतिरोध कम हो जाता है।

चरण 5: व्हीटस्टोन ब्रिज

व्हीटस्टोन पुल
व्हीटस्टोन पुल

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

• इस विन्यास में, हम पुल असंतुलन के माध्यम से प्रतिरोध की भिन्नता को निर्धारित कर सकते हैं।

• यदि R1 = Rx और R2 = R3 है, तो वोल्टेज डिवाइडर बराबर होंगे, और वोल्टेज Vc और Vb भी बराबर होंगे, जिसमें ब्रिज संतुलन में होगा। यानी वीबीसी = 0 वी;

• यदि Rx, R1 के अलावा अन्य है, तो ब्रिज असंतुलित हो जाएगा और वोल्टेज Vbc गैर-शून्य होगा।

• यह दिखाना संभव है कि यह भिन्नता कैसे होनी चाहिए, लेकिन यहां, हम एडीसी में पढ़े गए मान को लोड सेल पर लागू द्रव्यमान से संबंधित करते हुए एक सीधा अंशांकन करेंगे।

चरण 6: प्रवर्धन

विस्तारण
विस्तारण

• रीडिंग को अधिक कुशल बनाने के लिए व्हीटस्टोन ब्रिज का उपयोग करने पर भी, लोड सेल की धातु में सूक्ष्म विकृतियाँ Vbc के बीच छोटे वोल्टेज भिन्नताएं उत्पन्न करती हैं।

• इस स्थिति को हल करने के लिए, हम प्रवर्धन के दो चरणों का उपयोग करेंगे। एक अंतर निर्धारित करने के लिए और दूसरा ईएसपी के एडीसी को प्राप्त मूल्य से मेल खाने के लिए।

चरण 7: प्रवर्धन (योजना)

प्रवर्धन (योजना)
प्रवर्धन (योजना)

• घटाव चरण का लाभ R6 / R5 द्वारा दिया गया है और यह R7 / R8 के समान है।

• नॉन-इनवर्टिंग अंतिम चरण का लाभ पॉट / R10. द्वारा दिया जाता है

चरण 8: अंशांकन के लिए डेटा का संग्रह

अंशांकन के लिए डेटा का संग्रह
अंशांकन के लिए डेटा का संग्रह
अंशांकन के लिए डेटा का संग्रह
अंशांकन के लिए डेटा का संग्रह

• एक बार इकट्ठे हो जाने पर, हम अंतिम लाभ निर्धारित करते हैं ताकि सबसे बड़े मापा द्रव्यमान का मूल्य एडीसी के अधिकतम मूल्य के करीब हो। इस मामले में, सेल में लगाए गए 2kg के लिए, आउटपुट वोल्टेज लगभग 3V3 था।

• इसके बाद, हम लागू द्रव्यमान (एक संतुलन के माध्यम से और प्रत्येक मूल्य के लिए जाना जाता है) को बदलते हैं, और हम अगली तालिका प्राप्त करते हुए एडीसी के एक LEITUR को जोड़ते हैं।

चरण 9: मापा द्रव्यमान और प्राप्त एडीसी के मूल्य के बीच कार्य संबंध प्राप्त करना

मापा द्रव्यमान और प्राप्त एडीसी के मूल्य के बीच कार्य संबंध प्राप्त करना
मापा द्रव्यमान और प्राप्त एडीसी के मूल्य के बीच कार्य संबंध प्राप्त करना

हम एक बहुपद प्राप्त करने के लिए PolySolve सॉफ़्टवेयर का उपयोग करते हैं जो ADC के द्रव्यमान और मान के बीच संबंध का प्रतिनिधित्व करता है।

चरण 10: स्रोत कोड

स्रोत कोड - #शामिल है

अब जब हमारे पास माप प्राप्त करने और एडीसी और लागू द्रव्यमान के बीच संबंध जानने का तरीका है, तो हम वास्तव में सॉफ्टवेयर लिखने के लिए आगे बढ़ सकते हैं।

// Bibliotecas para utilização do display oLED#include // Necessário apenas para o Arduino 1.6.5 e पूर्वकाल #include "SSD1306.h" // o mesmo que #include "SSD1306Wire.h"

स्रोत कोड - #परिभाषित

//Os pinos do OLED estão conectados ao ESP32 pelos seguintes GPIO's://OLED_SDA -- GPIO4 //OLED_SCL -- GPIO15 //OLED_RST -- GPIO16 #define SDA 4 #define SCL 15 #define RST 16 //RST deve ser ajustado पोर सॉफ्टवेयर

स्रोत - वैश्विक चर और स्थिरांक

SSD1306 डिस्प्ले (0x3c, SDA, SCL, RST); // इंस्टैंसिअंडो ई अजस्टंडो ओएस पिनोस डू ओब्जेटो "डिस्प्ले" कॉन्स्ट इंट एमोस्ट्रस = 10000; //número de amostras coletadas para a média const int pin = 13; //पिनो डे लिटुरा

स्रोत कोड - सेटअप ()

शून्य सेटअप () {पिनमोड (पिन, इनपुट); //पिनो डे लिटुरा एनालोजिका सीरियल.बेगिन(११५२००); // एक सीरियल को जारी रखें // इनिसिया ओ डिस्प्ले डिस्प्ले.इनिट (); डिस्प्ले.फ्लिपस्क्रीन वर्टिकली (); //वीरा ए तेल वर्टिकलमेंट }

स्रोत कोड - लूप ()

शून्य लूप () {फ्लोट मेडिडास = ०.०;//वेरिएवल पैरा मैनिपुलर मेडिडास फ्लोट मासा = ०.०; // वेरिअल पैरा आर्मज़ेनर ओ वेलोर दा मासा // इनिसिया ए कोलेटा डे एमोस्ट्रास डू एडीसी फॉर (इंट आई = 0; आई (5000)) // से एस्टा लिगाडो ए माईस क्यू 5 सेगुंडोस {//एन्विया उम सीएसवी कंटेंडो ओ इंस्टेंट, ए मेडिडा मीडिया डू एडीसी ई ओ वेलोर एम ग्रामस // पैरा ए सीरियल। सीरियल.प्रिंट (मिली () / 1000.0, 0); // इंस्टेंट एम सेगुंडोस सीरियल.प्रिंट (","); Serial.print(medidas, 3);//valor medio obtido no ADC Serial.print(", "); Serial.println ((मस्सा), 1); // मस्सा एम ग्राम // एस्क्रेव नो बफर डू डिस्प्ले डिस्प्ले। क्लियर (); // लिम्पा ओ बफ़र डू डिस्प्ले // ajusta o alinhamento para a esquerda display.setTextAlignment(TEXT_ALIGN_LEFT); // एरियल 16 डिस्प्ले के लिए एक फ़ॉन्ट समायोजित करें। सेटफॉन्ट (एरियलएमटी_प्लेन_16); // एस्क्रेव नो बफर एक मास डिस्प्ले प्रदर्शित करता है। ड्रॉस्ट्रिंग (0, 0, "मस्सा:" + स्ट्रिंग (इंट (मस्सा)) + "जी"); // एस्क्रेव नो बफर ओ वेलोर डू एडीसी डिस्प्ले। ड्रॉस्ट्रिंग (0, 30, "एडीसी:" + स्ट्रिंग (इंट (मेडिडास))); } और // से एस्टा लिगाडो ए मेनोस डी 5 सेगुंडोस { डिस्प्ले.क्लियर (); // लिम्पा ओ बफर डिस्प्ले डिस्प्ले करते हैं। सेटटेक्स्ट एलाइनमेंट (TEXT_ALIGN_LEFT); // इस पर ध्यान दें और प्रदर्शन के लिए सेट करें। सेटफ़ॉन्ट (एरियलएमटी_प्लेन_24); // ajusta a fonte para Arial 24 display.drawString(0, 0, "Balança"); // एस्क्रेव नो बफर डिस्प्ले। // कोई बफर नहीं छोड़ें } डिस्प्ले.डिस्प्ले (); // ट्रांसफर ओ बफर ओ डिस्प्ले डिले (50); }

स्रोत कोड - फ़ंक्शन कैलकुलामास्सा ()

// função para cálculo da massa obtida pela regressão//usando oPolySolve फ्लोट कैलकुलामासा (फ्लोट मेडिडा) {रिटर्न -६.७९८३५७८४०६५९ई+०१ + ३.८८५६७१६१८९३०ई-०१ * मेडीडा + ३.६८४९ *४४७६४९३२०ई-०४ * -३.७४८१०८८३८३८३८०७e-०४ मेदिदा * मेदीदा * मेदीदा + १.७९६२५२३५९३२३ई १० * मेदीदा * मेदीदा * मेदीदा * मेदीदा + -3.995722708150e-14 * मेडीडा * मेदीदा * मेदीदा * मेदीदा * मेदीदा + 3.284692453344e-18 * मेदीदा * मेदीदा * मेदीदा * मेडिडा; }

चरण 11: शुरू करना और मापना

शुरू करना और मापना
शुरू करना और मापना

चरण 12: फ़ाइलें

फ़ाइलें डाउनलोड करें

मैं नहीं

पीडीएफ

सिफारिश की: