ARDUINO HX711 دليل مستخدم وحدة ADC لقياس الوزن
اردوينو HX711 وحدة استشعار الوزن ADC

تطبيق سابقampلو مع اردوينو أونو:

تحتوي معظم خلايا التحميل على أربعة أسلاك: الأحمر والأسود والأخضر والأبيض. على لوحة HX711 ستجد اتصالات E+/E- وA+/A- وB+/B. قم بتوصيل خلية التحميل بلوحة مستشعر HX711 وفقًا للجدول التالي:

لوحة مستشعر الحمل HX711 تحميل سلك الخلية
E+ أحمر
E- أسود
A+ أخضر
A- أبيض
B- غير مستخدم
B+ غير مستخدم

اتصال

مستشعر HX711 اردوينو اونو
أرضي أرضي
DT D3
SCK D2
بطاقة في سي سي 5V

تعمل وحدة HX711 بجهد 5 فولت ويتم الاتصال باستخدام دبابيس SDA وSCK التسلسلية.

أين يتم تطبيق الوزن على خلية التحميل؟
يمكنك رؤية السهم يظهر على خلية التحميل. يوضح هذا السهم اتجاه القوة على خلية الحمل. يمكنك عمل الترتيب الموضح في الشكل باستخدام الشرائط المعدنية. قم بتوصيل شريط معدني على خلية الحمل باستخدام البراغي.

وزن

برمجة اردوينو UNO لقياس الوزن بالكيلو جرام:

قم بتوصيل المخطط كما هو موضح في الشكل 1 أعلاه.
لكي تعمل وحدة المستشعر هذه مع لوحات Arduino، نحتاج إلى مكتبة HX711 التي يمكن تنزيلها من https://github.com/bogde/HX711.
قبل أن يتم استخدام HX711 لقياس وزن الجسم بدقة، فإنه يحتاج إلى المعايرة أولاً. ستوضح لك الخطوة أدناه كيفية إجراء المعايرة.

الخطوة الأولى: رسم المعايرة
قم بتحميل الرسم أدناه إلى Arduino Uno Board

/* تقنية هاندسون www.handsontec.com
* 29 ديسمبر 2017
* واجهة وحدة تحميل الخلية HX711 مع Arduino لقياس الوزن بالكيلو جرام
أردوينو
دبوس
2 -> HX711 CLK
3 -> دوت
5 فولت -> VCC
أرضي -> أرضي
سيكون معظم دبوس Arduino Uno متوافقًا مع DOUT/CLK.
يمكن تشغيل لوحة HX711 من 2.7 فولت إلى 5 فولت لذا يجب أن تكون طاقة Arduino 5V جيدة.
*/
#include "HX711.h" // يجب أن يكون لديك هذه المكتبة في مجلد مكتبة اردوينو الخاص بك
#تعريف دوت 3
#تعريف CLK2
مقياس HX711 (DOUT، CLK)؛
// قم بتغيير عامل المعايرة هذا وفقًا لخلية التحميل الخاصة بك بمجرد العثور عليها، حيث يحتاج الكثيرون إلى ذلك
تختلف ذلك بالآلاف
تعويم calibration_factor = -96650؛ //-106600 يعمل مع إعداد الميزان الأقصى الذي يبلغ 40 كجم
//================================================================================================ ===========================================================================
// يثبت
//================================================================================================ ===========================================================================
إعداد فارغ () {
المسلسل.البداية(9600)؛

Serial.println("معايرة HX711");
Serial.println("إزالة كل الوزن من الميزان");
Serial.println("بعد بدء القراءات، ضع الوزن المعروف على الميزان");
Serial.println("اضغط على a,s,d,f لزيادة عامل المعايرة بمقدار 10,100,1000,10000
على التوالى")؛
Serial.println("اضغط على z,x,c,v لتقليل عامل المعايرة بمقدار 10,100,1000,10000
على التوالى")؛
Serial.println("اضغط على t للفارغة");
Scale.set_scale();
Scale.tare(); // إعادة ضبط المقياس إلى 0
long Zero_factor =scale.read_average(); // احصل على قراءة أساسية
Serial.print("عامل الصفر:"); // يمكن استخدام هذا لإزالة الحاجة إلى قياس الميزان.
مفيدة في مشاريع النطاق الدائم.
Serial.println(zero_factor);
}
//================================================================================================ ===========================================================================
// حلقة
//================================================================================================ ===========================================================================
حلقة فارغة () {
Scale.set_scale(calibration_factor); // اضبط على عامل المعايرة هذا
Serial.print("القراءة:");
Serial.print(scale.get_units(), 3);
Serial.print("كجم"); // قم بتغيير هذا إلى كجم وأعد ضبط عامل المعايرة إذا كنت
اتبع وحدات SI مثل شخص عاقل
Serial.print(" calibration_factor: ");
Serial.print(calibration_factor);
Serial.println () ،
إذا (المسلسل. متاح ())
{
char temp = Serial.read();
إذا (درجة الحرارة == '+' || درجة الحرارة == 'أ')
calibration_factor += 10;
وإلا إذا (درجة الحرارة == '-' || درجة الحرارة == 'ض')
calibration_factor -= 10;
وإلا إذا (درجة الحرارة == 's')
calibration_factor += 100;
وإلا إذا (درجة الحرارة == 'س')
calibration_factor -= 100;
وإلا إذا (درجة الحرارة == 'د')
calibration_factor += 1000;
وإلا إذا (درجة الحرارة == 'ج')
calibration_factor -= 1000;
آخر إذا (درجة الحرارة == 'و')
calibration_factor += 10000;
آخر إذا (درجة الحرارة == 'الخامس')
calibration_factor -= 10000;
وإلا إذا (درجة الحرارة == 'ر')
Scale.tare(); // أعد ضبط المقياس على الصفر
}
}
//================================================================================================ =======================================================================

قم بإزالة أي حمل من مستشعر الحمل. افتح جهاز المراقبة التسلسلية. يجب أن تفتح النافذة أدناه لتظهر أن الوحدة قد تم توصيلها بنجاح بـ Arduino Uno.

إعدادات

ضع جسمًا معروف الوزن على خلية التحميل. في هذه الحالة، استخدم المؤلف وزنًا معروفًا يبلغ 191 جرامًا مع خلية تحميل تبلغ 10 كجم. ستعرض الشاشة التسلسلية بعض أرقام الوزن كما هو موضح أدناه:
إعدادات

نحن بحاجة إلى إجراء المعايرة هنا:

  • أدخل الحرف "a، s، d، f" في مساحة أمر الشاشة التسلسلية واضغط على زر "إرسال" لزيادة عامل المعايرة بمقدار 10، 100، 1000، 10000 على التوالي
  • أدخل الحرف "z، x، c، v" في مساحة أمر الشاشة التسلسلية واضغط على زر "إرسال" لتقليل عامل المعايرة بمقدار 10، 100، 1000، 10000 على التوالي.
    إعدادات

استمر في الضبط حتى تظهر القراءة الوزن الفعلي الموضوع على خلية الحمل. قم بتسجيل قيمة "calibration_factor"، في هذه الحالة "-239250" في وزن المؤلف المرجعي البالغ 191 جرامًا مع خلية تحميل 10 كجم. سنحتاج إلى هذه القيمة لتعويضها في الرسم الثاني للحصول على قياس حقيقي.

الخطوة الثانية: الكود النهائي لقياس الوزن الحقيقي
قبل تحميل المخطط، نحتاج إلى توصيل "عامل المعايرة" الذي تم الحصول عليه في الخطوة الأولى:
يثبت

قم بتحميل الرسم أدناه إلى Arduino Uno Board، بعد تعديل عامل القياس:

/* تقنية هاندسون www.handsontec.com
* 29 ديسمبر 2017
* واجهة وحدة تحميل الخلية HX711 مع Arduino لقياس الوزن بالكيلو جرام
أردوينو
دبوس
2 -> HX711 CLK
3 -> دوت
5 فولت -> VCC
أرضي -> أرضي
سيكون معظم دبوس Arduino Uno متوافقًا مع DOUT/CLK.
يمكن تشغيل لوحة HX711 من 2.7 فولت إلى 5 فولت لذا يجب أن تكون طاقة Arduino 5V جيدة.
*/
#include "HX711.h" // يجب أن يكون لديك هذه المكتبة في مجلد مكتبة اردوينو الخاص بك
#تعريف دوت 3
#تعريف CLK2
مقياس HX711 (DOUT، CLK)؛
// قم بتغيير عامل المعايرة هذا وفقًا لخلية التحميل الخاصة بك بمجرد العثور عليها، سيحتاج الكثيرون إلى تغييرها بالآلاف
تعويم calibration_factor = -96650؛ //-106600 يعمل مع إعداد الميزان الأقصى الذي يبلغ 40 كجم
//================================================================================================ ======================================================================================
// يثبت
//================================================================================================ ======================================================================================
إعداد فارغ () {
المسلسل.البداية(9600)؛
Serial.println("اضغط على T للفارغة");
Scale.set_scale(-239250); // تم الحصول على عامل المعايرة من الرسم الأول
Scale.tare(); // إعادة ضبط المقياس إلى 0
}
//================================================================================================ ======================================================================================
// حلقة
//================================================================================================ ======================================================================================
حلقة فارغة () {
Serial.print("الوزن:");
Serial.print(scale.get_units(), 3); // ما يصل إلى 3 نقاط عشرية
Serial.println("كجم"); // قم بتغيير هذا إلى كجم وأعد ضبط عامل المعايرة إذا اتبعت رطل
إذا (المسلسل. متاح ())
{
char temp = Serial.read();
إذا (درجة الحرارة == 'ر' || درجة الحرارة == 'T')
Scale.tare(); // أعد ضبط المقياس على الصفر
}
}
//================================================================================================ ======================================================================================

بعد تحميل الرسم بنجاح، افتح Serial Monitor. يجب أن تظهر النافذة أدناه توضح قيمة القياس الحقيقية:
إعدادات

يمكنك إعادة ضبط القراءة إلى 0.000 كجم (بدون تحميل) عن طريق إدخال "t" أو "T" في مساحة الأمر والضغط على زر "إرسال". تظهر الشاشة أدناه قيمة القياس تصبح 0.000 كجم.
إعدادات

ضع شيئًا ما على خلية التحميل، ويجب أن يظهر الوزن الفعلي. يوجد أدناه عرض الوزن عند وضع الجسم الذي يبلغ وزنه 191 جرامًا (المستخدم في الخطوة الأولى للمعايرة).
إعدادات

مرحا! لقد قمت بإنشاء ميزان وزن بدقة ثلاث نقاط عشرية!

المستندات / الموارد

اردوينو HX711 وحدة استشعار الوزن ADC [بي دي اف] دليل المستخدم
HX711 أجهزة استشعار الوزن وحدة ADC، HX711، أجهزة استشعار الوزن وحدة ADC، أجهزة الاستشعار وحدة ADC، وحدة ADC، وحدة

مراجع

اترك تعليقا

لن يتم نشر عنوان بريدك الإلكتروني. تم وضع علامة على الحقول المطلوبة *