ARDUINO HX711 وزنی سینسر ADC ماڈیول صارف دستی
ARDUINO HX711 وزنی سینسر ADC ماڈیول

درخواست سابقample Arduino Uno کے ساتھ:

زیادہ تر لوڈ سیل میں چار تاریں ہیں: سرخ، سیاہ، سبز اور سفید۔ HX711 بورڈ پر آپ کو E+/E-، A+/A- اور B+/Bconnections ملیں گے۔ مندرجہ ذیل جدول کے مطابق لوڈ سیل کو HX711 سینسر بورڈ سے جوڑیں:

HX711 لوڈ سینسر بورڈ سیل وائر لوڈ کریں۔
E+ سرخ
E- سیاہ
A+ سبز
A- سفید
B- غیر استعمال شدہ
B+ غیر استعمال شدہ

کنکشن

HX711 سینسر Arduino Uno
جی این ڈی جی این ڈی
DT D3
ایس سی کے D2
وی سی سی 5V

HX711 ماڈیول 5V پر کام کرتا ہے اور مواصلات سیریل SDA اور SCK پنوں کے ذریعے کیا جاتا ہے۔

لوڈ سیل پر وزن کہاں لگایا جائے؟
آپ دیکھ سکتے ہیں کہ لوڈ سیل پر ایک تیر دکھایا گیا ہے۔ یہ تیر لوڈ سیل پر قوت کی سمت دکھاتا ہے۔ آپ دھاتی پٹیوں کا استعمال کرتے ہوئے تصویر میں دکھائے گئے انتظامات کر سکتے ہیں۔ بولٹ کا استعمال کرتے ہوئے لوڈ سیل پر دھاتی پٹی منسلک کریں۔

وزن

KG میں وزن کی پیمائش کے لیے Arduino UNO پروگرامنگ:

جیسا کہ اوپر شکل 1 میں دکھایا گیا ہے اسکیمیٹک کو جوڑیں۔
اس سینسر ماڈیول کو Arduino بورڈز کے ساتھ کام کرنے کے لیے، ہمیں HX711 لائبریری کی ضرورت ہے جو اس سے ڈاؤن لوڈ کر سکتی ہے۔ https://github.com/bogde/HX711.
اس سے پہلے کہ HX711 کو کسی چیز کے وزن کی درست پیمائش کرنے کے لیے استعمال کیا جا سکے، اسے پہلے کیلیبریٹ کرنے کی ضرورت ہے۔ ذیل کا مرحلہ آپ کو دکھائے گا کہ کس طرح انشانکن کرنا ہے۔

1 مرحلہ: انشانکن خاکہ
نیچے دیے گئے خاکے کو Arduino Uno بورڈ پر اپ لوڈ کریں۔

/* ہینڈسن ٹیکنالوجی www.handsontec.com
*29 دسمبر 2017
* Kgs میں وزن کی پیمائش کے لیے Arduino کے ساتھ سیل HX711 ماڈیول انٹرفیس لوڈ کریں۔
Arduino
پن
2 -> HX711 CLK
3 -> DOUT
5V -> VCC
جی این ڈی -> جی این ڈی
Arduino Uno پر زیادہ تر کوئی پن DOUT/CLK کے ساتھ مطابقت رکھتا ہے۔
HX711 بورڈ کو 2.7V سے 5V تک طاقتور کیا جا سکتا ہے لہذا Arduino 5V پاور ٹھیک ہونا چاہئے.
*/
#include "HX711.h" // آپ کے پاس یہ لائبریری آپ کے arduino لائبریری فولڈر میں ہونی چاہیے
#DOUT 3 کی وضاحت کریں۔
#CLK 2 کی وضاحت کریں۔
HX711 اسکیل (DOUT، CLK)؛
//اس کیلیبریشن فیکٹر کو اپنے لوڈ سیل کے مطابق تبدیل کریں جب یہ مل جائے تو آپ کو بہت سے لوگوں کی ضرورت ہے۔
اسے ہزاروں میں تبدیل کریں۔
float calibration_factor = -96650; //-106600 نے میرے 40Kg زیادہ سے زیادہ پیمانے کے سیٹ اپ کے لیے کام کیا۔
//============================================== =======================================
// سیٹ اپ
//============================================== =======================================
باطل سیٹ اپ() {
Serial.begin(9600)؛

Serial.println("HX711 کیلیبریشن")؛
Serial.println("تمام وزن کو پیمانے سے ہٹا دیں")؛
Serial.println("پڑھنا شروع ہونے کے بعد، معلوم وزن کو پیمانے پر رکھیں")؛
Serial.println("کیلیبریشن فیکٹر کو 10,100,1000,10000 تک بڑھانے کے لیے a,s,d,f دبائیں
بالترتیب")؛
Serial.println("کیلیبریشن فیکٹر کو 10,100,1000,10000 تک کم کرنے کے لیے z,x,c,v دبائیں
بالترتیب")؛
Serial.println("Tare کے لیے دبائیں")؛
scale.set_scale();
scale.tare(); // پیمانے کو 0 پر ری سیٹ کریں۔
long zero_factor = scale.read_average(); //بیس لائن ریڈنگ حاصل کریں۔
سیریل پرنٹ ("زیرو فیکٹر:")؛ //اس کا استعمال پیمانے کو ختم کرنے کی ضرورت کو دور کرنے کے لیے کیا جا سکتا ہے۔
مستقل پیمانے کے منصوبوں میں مفید ہے۔
Serial.println(zero_factor)؛
}
//============================================== =======================================
// لوپ
//============================================== =======================================
باطل لوپ() {
scale.set_scale(calibration_factor)؛ // اس انشانکن عنصر کو ایڈجسٹ کریں۔
سیریل پرنٹ ("پڑھنا:")؛
Serial.print(scale.get_units(), 3);
سیریل پرنٹ ("کلو")؛ //اسے کلوگرام میں تبدیل کریں اور اگر آپ انشانکن عنصر کو دوبارہ ایڈجسٹ کریں۔
ایک سمجھدار شخص کی طرح SI یونٹس کی پیروی کریں۔
سیریل پرنٹ (" calibration_factor: ");
Serial.print(calibration_factor)؛
سیریل.پرنٹلن ()؛
if(Serial.available())
{
char temp = Serial.read();
اگر (temp == '+' || temp == 'a')
calibration_factor += 10;
ورنہ اگر (temp == '-' || temp == 'z')
انشانکن_فیکٹر -= 10؛
ورنہ اگر (temp == 's')
calibration_factor += 100;
ورنہ اگر (temp == 'x')
انشانکن_فیکٹر -= 100؛
ورنہ اگر (temp == 'd')
calibration_factor += 1000;
ورنہ اگر (temp == 'c')
انشانکن_فیکٹر -= 1000؛
ورنہ اگر (temp == 'f')
calibration_factor += 10000;
ورنہ اگر (temp == 'v')
انشانکن_فیکٹر -= 10000؛
ورنہ اگر (temp == 't')
scale.tare(); // پیمانے کو صفر پر دوبارہ ترتیب دیں۔
}
}
//============================================== ======================================

لوڈ سینسر سے کسی بھی بوجھ کو ہٹا دیں۔ سیریل مانیٹر کھولیں۔ نیچے دی گئی ونڈو کو یہ ظاہر کرنا چاہیے کہ ماڈیول کامیابی سے Arduino Uno سے جڑ گیا ہے۔

کنفیگریشن

لوڈ سیل پر معلوم وزن والی چیز رکھیں۔ اس معاملے میں مصنف نے 191KG لوڈ سیل کے ساتھ 10 گرام کا معلوم وزن استعمال کیا۔ سیریل مانیٹر کچھ وزنی اعداد و شمار دکھائے گا جیسا کہ ذیل میں دکھایا گیا ہے:
کنفیگریشن

ہمیں یہاں انشانکن کرنے کی ضرورت ہے:

  • سیریل مانیٹر کمانڈ اسپیس میں حرف "a, s, d, f" کی کلید کریں اور کیلیبریشن فیکٹر کو بالترتیب 10، 100، 1000، 10000 بڑھانے کے لیے "بھیجیں" بٹن کو دبائیں
  • سیریل مانیٹر کمانڈ اسپیس میں حرف "z, x, c, v" کی کلید کریں اور کیلیبریشن فیکٹر کو بالترتیب 10، 100، 1000، 10000 تک کم کرنے کے لیے "بھیجیں" بٹن کو دبائیں۔
    کنفیگریشن

اس وقت تک ایڈجسٹ کرتے رہیں جب تک کہ ریڈنگ لوڈ سیل پر رکھا ہوا اصل وزن ظاہر نہ کرے۔ "calibration_factor" کی قدر کو ریکارڈ کریں، اس صورت میں "-239250" مصنف کے وزن 191g کے حوالے سے 10KG لوڈ سیل کے ساتھ۔ حقیقی پیمائش کے لیے ہمیں اپنے دوسرے خاکے میں شامل کرنے کے لیے اس قدر کی ضرورت ہوگی۔

دوسرا مرحلہ: حقیقی وزن کی پیمائش کے لیے حتمی کوڈ
خاکہ اپ لوڈ کرنے سے پہلے، ہمیں پہلے مرحلے میں حاصل کردہ "کیلیبریشن فیکٹر" میں پلگ ان کرنے کی ضرورت ہے:
سیٹ اپ

اسکیل فیکٹر میں ترمیم کرنے کے بعد نیچے دیے گئے خاکے کو Arduino Uno بورڈ پر اپ لوڈ کریں:

/* ہینڈسن ٹیکنالوجی www.handsontec.com
*29 دسمبر 2017
* Kgs میں وزن کی پیمائش کے لیے Arduino کے ساتھ سیل HX711 ماڈیول انٹرفیس لوڈ کریں۔
Arduino
پن
2 -> HX711 CLK
3 -> DOUT
5V -> VCC
جی این ڈی -> جی این ڈی
Arduino Uno پر زیادہ تر کوئی پن DOUT/CLK کے ساتھ مطابقت رکھتا ہے۔
HX711 بورڈ کو 2.7V سے 5V تک طاقتور کیا جا سکتا ہے لہذا Arduino 5V پاور ٹھیک ہونا چاہئے.
*/
#include "HX711.h" // آپ کے پاس یہ لائبریری آپ کے arduino لائبریری فولڈر میں ہونی چاہیے
#DOUT 3 کی وضاحت کریں۔
#CLK 2 کی وضاحت کریں۔
HX711 اسکیل (DOUT، CLK)؛
//اس کیلیبریشن فیکٹر کو اپنے لوڈ سیل کے مطابق تبدیل کریں جب یہ مل جائے تو آپ کو بہت سے لوگوں کو اسے ہزاروں میں تبدیل کرنے کی ضرورت ہے۔
float calibration_factor = -96650; //-106600 نے میرے 40Kg زیادہ سے زیادہ پیمانے کے سیٹ اپ کے لیے کام کیا۔
//============================================== ===========================================
// سیٹ اپ
//============================================== ===========================================
باطل سیٹ اپ() {
Serial.begin(9600)؛
Serial.println("Tare کرنے کے لیے T دبائیں")؛
scale.set_scale(-239250)؛ //پہلے خاکے سے حاصل کردہ کیلیبریشن فیکٹر
scale.tare(); // پیمانے کو 0 پر ری سیٹ کریں۔
}
//============================================== ===========================================
// لوپ
//============================================== ===========================================
باطل لوپ() {
سیریل پرنٹ ("وزن:")؛
Serial.print(scale.get_units(), 3); //3 ڈیسیمل پوائنٹس تک
Serial.println("kg")؛ //اسے کلوگرام میں تبدیل کریں اور انشانکن عنصر کو دوبارہ ایڈجسٹ کریں اگر آپ lbs کی پیروی کرتے ہیں
if(Serial.available())
{
char temp = Serial.read();
اگر (temp == 't' || temp == 'T')
scale.tare(); // پیمانے کو صفر پر دوبارہ ترتیب دیں۔
}
}
//============================================== ===========================================

سکیچ کو کامیابی سے اپ لوڈ کرنے کے بعد، سیریل مانیٹر کھولیں۔ مندرجہ ذیل ونڈو کو حقیقی پیمائش کی قیمت دکھانا چاہئے:
کنفیگریشن

آپ کمانڈ اسپیس میں "t" یا "T" کی کلید کے ذریعے ریڈنگ کو 0.000kg (بغیر بوجھ کے) پر سیٹ کر سکتے ہیں اور "بھیجیں" بٹن کو دبائیں۔ نیچے ڈسپلے کی پیمائش کی قیمت 0.000kg بن گئی ہے۔
کنفیگریشن

کسی چیز کو لوڈ سیل پر رکھیں، اصل وزن ظاہر ہونا چاہیے۔ ذیل میں وزن کا ڈسپلے ہے جب 191 گرام کی آبجیکٹ رکھیں (انشانکن کے لیے پہلے مرحلے میں استعمال کیا جاتا ہے)۔
کنفیگریشن

ہورے! آپ نے تین ڈیسیمل پوائنٹ کی درستگی کے ساتھ وزنی پیمانہ بنایا ہے!

دستاویزات / وسائل

ARDUINO HX711 وزنی سینسر ADC ماڈیول [پی ڈی ایف] یوزر مینوئل
HX711 وزنی سینسر ADC ماڈیول، HX711، وزنی سینسر ADC ماڈیول، سینسر ADC ماڈیول، ADC ماڈیول، ماڈیول

حوالہ جات

ایک تبصرہ چھوڑیں۔

آپ کا ای میل پتہ شائع نہیں کیا جائے گا۔ مطلوبہ فیلڈز نشان زد ہیں۔ *