সুচিপত্র:

ESP32 সহ ডিজিটাল স্কেল: 12 টি ধাপ
ESP32 সহ ডিজিটাল স্কেল: 12 টি ধাপ

ভিডিও: ESP32 সহ ডিজিটাল স্কেল: 12 টি ধাপ

ভিডিও: ESP32 সহ ডিজিটাল স্কেল: 12 টি ধাপ
ভিডিও: ESP32 Tutorial 33 - Digtial Dice using using SunFounder's ESP32 IoT Learnig kit 2024, নভেম্বর
Anonim
Image
Image
ব্যবহৃত সম্পদ
ব্যবহৃত সম্পদ

আপনি কি কখনও একটি ESP32 এবং একটি সেন্সর (একটি লোড সেল নামে পরিচিত) ব্যবহার করে একটি ডিজিটাল স্কেল মাউন্ট করার কথা ভেবেছেন? আজ, আমি আপনাকে দেখাব কিভাবে এটি একটি প্রক্রিয়ার মাধ্যমে করা যায় যা অন্যান্য পরীক্ষাগার পরীক্ষার জন্যও অনুমতি দেয়, যেমন একটি ইঞ্জিন একটি বিন্দুতে যে শক্তি প্রয়োগ করে, তা অন্যান্য উদাহরণের মধ্যে চিহ্নিত করা।

আমি তখন লোড কোষের ব্যবহার সম্পর্কিত কিছু ধারণা প্রদর্শন করব, একটি উদাহরণ স্কেল তৈরির জন্য কোষের ডেটা ক্যাপচার করব এবং লোড কোষের অন্যান্য সম্ভাব্য অ্যাপ্লিকেশনগুলি নির্দেশ করব।

ধাপ 1: ব্যবহৃত সম্পদ

• হেলটেক লোরা 32 ওয়াইফাই ইএসপি

Cell লোড সেল (0 থেকে 50 নিউটন, একটি স্কেল ব্যবহার করে)

K 100k এর 1 potentiometer (ভাল যদি আপনি একটি multivolt trimpot ব্যবহার সূক্ষ্ম সমন্বয়)

• 1 Amp Op LM358

• 2 1M5 প্রতিরোধক

10 2 10k প্রতিরোধক

4 1 4k7 প্রতিরোধক

Ires তারের

Prot একটি প্রোটোবোর্ড

E ESP এর জন্য একটি USB তারের

• একটি স্কেল, গ্র্যাজুয়েটেড ভলিউম সহ ধারক, অথবা ক্রমাঙ্কনের অন্য কোন পদ্ধতি।

ধাপ 2: বিক্ষোভ

প্রদর্শন
প্রদর্শন

ধাপ 3: লোড সেল

লোড কোষ
লোড কোষ

Force এরা ফোর্স ট্রান্সডুসার।

• তারা প্রয়োগকৃত শক্তিকে একটি আনুপাতিক মাত্রায় অনুবাদ করতে বিভিন্ন পদ্ধতি ব্যবহার করতে পারে যা পরিমাপ হিসাবে ব্যবহার করা যেতে পারে। সর্বাধিক সাধারণগুলির মধ্যে যারা শীট এক্সটেনসোমিটার, দ্য পাইজোইলেক্ট্রিক ইফেক্ট, হাইড্রোলিক্স, স্পন্দিত স্ট্রিং ইত্যাদি ব্যবহার করছেন …

• এগুলি পরিমাপ ফর্ম (টান বা সংকোচন) দ্বারা শ্রেণীবদ্ধ করা যেতে পারে

ধাপ 4: লোড সেল এবং স্ট্রেন গেজ

লোড সেল এবং স্ট্রেন গেজ
লোড সেল এবং স্ট্রেন গেজ
লোড সেল এবং স্ট্রেন গেজ
লোড সেল এবং স্ট্রেন গেজ

Et শীট এক্সটেনসোমিটার হল ছাপানো তারের ছায়াছবি (সাধারণত প্লাস্টিক) যার প্রতিরোধ ক্ষমতা থাকে যা তাদের আকার পরিবর্তনের সাথে পরিবর্তিত হতে পারে।

Construction এর নির্মাণের লক্ষ্য মূলত একটি যান্ত্রিক বিকৃতিকে বৈদ্যুতিক মাত্রার (প্রতিরোধের) বৈচিত্র্যে রূপান্তর করা। এটি বিশেষভাবে একক দিক থেকে ঘটে, যাতে উপাদান মূল্যায়ন করা যায়। এর জন্য, বেশ কয়েকটি এক্সটেনসোমিটারের সংমিশ্রণ সাধারণ

Properly যখন সঠিকভাবে একটি শরীরের সাথে সংযুক্ত, তার বিকৃতি শরীরের সঙ্গে সমান। সুতরাং, দেহের বিকৃতির সাথে এর প্রতিরোধের তারতম্য ঘটে, যা বিকৃত শক্তির সাথে সম্পর্কিত।

• এগুলি স্ট্রেন গেজ নামেও পরিচিত।

• যখন একটি প্রসার্য শক্তি দ্বারা প্রসারিত, strands প্রসারিত এবং সংকীর্ণ, বৃদ্ধি প্রতিরোধের।

• যখন একটি সংকোচকারী শক্তি দ্বারা সংকুচিত হয়, তারগুলি ছোট এবং প্রশস্ত হয়, প্রতিরোধের হ্রাস করে।

ধাপ 5: হুইটস্টোন ব্রিজ

হুইটস্টোন ব্রিজ
হুইটস্টোন ব্রিজ

Accurate আরো সঠিক পরিমাপের জন্য এবং লোড সেলে প্রতিরোধের বৈচিত্রের আরও দক্ষ সনাক্তকরণের জন্য, স্ট্রেন গেজটি হুইটস্টোন ব্রিজে একত্রিত হয়।

Config এই কনফিগারেশনে, আমরা সেতুর ভারসাম্যহীনতার মাধ্যমে প্রতিরোধের তারতম্য নির্ধারণ করতে পারি।

R যদি R1 = Rx এবং R2 = R3 হয়, ভোল্টেজ ডিভাইডার সমান হবে, এবং ভোল্টেজ Vc এবং Vb সমান হবে, ভারসাম্যপূর্ণ সেতু সহ। অর্থাৎ, Vbc = 0V;

R যদি Rx R1 ছাড়া অন্য হয়, সেতু ভারসাম্যহীন হবে এবং ভোল্টেজ Vbc হবে ননজিরো।

Var এই প্রকরণটি কিভাবে হওয়া উচিত তা দেখানো সম্ভব, কিন্তু এখানে, আমরা একটি সরাসরি ক্রমাঙ্কন করব, যা ADC- এ পড়া মানকে লোড সেলে প্রয়োগ করা একটি ভরের সাথে সম্পর্কিত করবে।

ধাপ 6: পরিবর্ধন

পরিবর্ধন
পরিবর্ধন

The এমনকি পঠনকে আরও দক্ষ করার জন্য হুইটস্টোন ব্রিজ ব্যবহার করেও, লোড সেলের ধাতুতে মাইক্রো বিকৃতিগুলি Vbc- এর মধ্যে ছোট ভোল্টেজের বৈচিত্র তৈরি করে।

Situation এই পরিস্থিতি সমাধানের জন্য, আমরা পরিবর্ধনের দুটি ধাপ ব্যবহার করব। একটি পার্থক্য নির্ণয় করার জন্য এবং আরেকটি ESP এর ADC- এর সাথে প্রাপ্ত মূল্যের সাথে মেলে।

ধাপ 7: পরিবর্ধন (স্কিম)

পরিবর্ধন (স্কিম)
পরিবর্ধন (স্কিম)

The বিয়োগ পদক্ষেপের লাভ R6 / R5 দ্বারা দেওয়া হয় এবং R7 / R8 এর মতই।

Pot নন-ইনভার্টিং চূড়ান্ত ধাপের লাভ পট / আর 10 দ্বারা দেওয়া হয়

ধাপ 8: ক্রমাঙ্কনের জন্য তথ্য সংগ্রহ

ক্রমাঙ্কনের জন্য তথ্য সংগ্রহ
ক্রমাঙ্কনের জন্য তথ্য সংগ্রহ
ক্রমাঙ্কনের জন্য তথ্য সংগ্রহ
ক্রমাঙ্কনের জন্য তথ্য সংগ্রহ

• একবার একত্রিত হয়ে গেলে, আমরা চূড়ান্ত লাভ নির্ধারণ করি যাতে বৃহত্তম পরিমাপকৃত ভরের মান ADC- এর সর্বোচ্চ মূল্যের কাছাকাছি হয়। এই ক্ষেত্রে, কোষে 2 কেজি প্রয়োগ করার জন্য, আউটপুট ভোল্টেজ প্রায় 3V3 ছিল।

• পরবর্তী, আমরা প্রয়োগকৃত ভর (একটি ভারসাম্যের মাধ্যমে এবং প্রতিটি মানের জন্য পরিচিত) পরিবর্তিত করি, এবং আমরা ADC- এর একটি লেটার যুক্ত করি, পরবর্তী টেবিলটি পেয়ে।

ধাপ 9: পরিমাপকৃত ভর এবং প্রাপ্ত ADC- এর মান এর মধ্যে ফাংশন সম্পর্ক অর্জন

পরিমাপকৃত ভর এবং প্রাপ্ত ADC এর মান এর মধ্যে ফাংশন সম্পর্ক অর্জন
পরিমাপকৃত ভর এবং প্রাপ্ত ADC এর মান এর মধ্যে ফাংশন সম্পর্ক অর্জন

আমরা পলিসলভ সফটওয়্যার ব্যবহার করি একটি বহুবচন পাওয়ার জন্য যা ADC এর ভর এবং মূল্যের মধ্যে সম্পর্ককে উপস্থাপন করে।

ধাপ 10: সোর্স কোড

সোর্স কোড - #অন্তর্ভুক্ত

এখন আমরা কিভাবে পরিমাপ পেতে পারি এবং ADC এবং প্রয়োগকৃত ভরগুলির মধ্যে সম্পর্ক জানতে পারি, আমরা আসলে সফ্টওয়্যারটি লেখার দিকে এগিয়ে যেতে পারি।

// Bibliotecas para utilização do display oLED #include // Necessário apenas para o Arduino 1.6.5 e anterior #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 dev ajust ave সফটওয়্যার

উৎস - গ্লোবাল ভেরিয়েবলস এবং কনস্ট্যান্টস

SSD1306 ডিসপ্লে (0x3c, SDA, SCL, RST); // Instanciando e ajustando os pinos do objeto "display" const int amostras = 10000; // número de amostras coletadas para a média const int pin = 13; // পিনো ডি লেইটুরা

সোর্স কোড - সেটআপ ()

অকার্যকর সেটআপ () {পিনমোড (পিন, ইনপুট); // পিনো ডি লিটুরা analógica Serial.begin (115200); // iniciando a serial // Inicia o display display.init (); display.flipScreenVertically (); // Vira a tela verticalmente}

সোর্স কোড - লুপ ()

void loop () {float medidas = 0.0; // variável para manipular as medidas float massa = 0.0; // variável para armazenar o valor da massa // inicia a coleta de amostras do ADC for (int i = 0; i (5000)) // se está ligado a mais que 5 segundos {// Envia um CSV contendo o instante, a medida média do ADC e o valor em gramas // para a Serial। সিরিয়াল.প্রিন্ট (মিলিস () / 1000.0, 0); // ইনস্ট্যান্ট এম সেগুন্ডোস সিরিয়াল.প্রিন্ট (","); Serial.print (medidas, 3); // valor médio obtido no ADC Serial.print (","); Serial.println ((massa), 1); // massa em gramas // Escreve no buffer do display display.clear (); // লিম্পা ও বাফার ডু ডিসপ্লে // অজুস্তা ও আলিনহামেন্টো প্যারা এ এসকিউরডা ডিসপ্লে। // austa a fonte para Arial 16 display.setFont (ArialMT_Plain_16); // Escreve কোন বাফার না একটি massa display.drawString প্রদর্শন (0, 0, "Massa:" + স্ট্রিং (int (massa)) + "g"); // escreve no buffer o valor do ADC display.drawString (0, 30, "ADC:" + String (int (medidas))); } else // se está ligado a menos de 5 segundos {display.clear (); // limpa o বাফার প্রদর্শন display.setTextAlignment (TEXT_ALIGN_LEFT); // Ajusta o alinhamento para a esquerda display.setFont (ArialMT_Plain_24); // ajusta a fonte para Arial 24 display.drawString (0, 0, "Balança"); // escreve no buffer display.setFont (ArialMT_Plain_16); // Ajusta a fonte para Arial 16 display.drawString (0, 26, "ESP-WiFi-Lora"); // escreve no buffer} display.display (); // transfer o buffer para o display বিলম্ব (50); }

সোর্স কোড - ফাংশন ক্যালকুলা মাসা ()

// função para cálculo da massa obtida pela regressão // usando oPolySolve float calculaMassa (float medida) {return -6.798357840659e + 01 + 3.885671618930e-01 * medida + 3.684944764970e-04 * medida * medida * -3.7810 -0380 medida * medida * medida + 1.796252359323e-10 * medida * medida * medida * medida + -3.995722708150e-14 * medida * medida * medida * medida * medida + 3.284692453344e-18 * medida * medida * medida * medida * medida * মেডিডা; }

ধাপ 11: শুরু এবং পরিমাপ

শুরু এবং পরিমাপ
শুরু এবং পরিমাপ

ধাপ 12: ফাইল

ফাইলগুলি ডাউনলোড করুন

আইএনও

পিডিএফ

প্রস্তাবিত: