راهنمای کامل اتصال ماژول لودسل HX711 به آردوینو و ساخت یک ترازوی دیجیتال

فهرست مطالب

مقدمه

در این آموزش با ماژول لود سل، کاربرد‌ها ونحوه عملکرد آن آشنا می‌شویم. سپس نحوه راه اندازی و اتصال آن به برد آردوینو را خواهیم دید و بعد از یادگیری نحوه کالیبره کردن لودسل، به کمک آن یک ترازوی دیجیتال می‌سازیم که قادر به اندازه‌گیری وزن اجسام با دقت 0.0001 گرم می‌باشد.

آنچه در این آموزش یاد می گیرید

آشنایی با ماژول لودسل

لودسل یك نوع حسگر الكترونیكی برای اندازه‌گیری وزن و نیرو است که با اعمال نيرو بر روي آن يک سيگنال الکتريکي ضعيف در حد ميلي ولت روي سيم هاي خروجي آن ظاهر ميشود . در واقع لودسل یک مبدل می باشد که نیرو و فشار را به سیگنال های الکتریکی استاندارد تبدیل می کند. لودسل شامل یك هسته فلزی و مجموعه ای از مقاومت های الکتریکی می‌باشد كه در اثر اعمال نیرو مانند تمام مواد تغییر شكل می‌یابد اما پس از برداشتن نیرو به حالت اولیه خود برمی‌گردد . میزان برگشت‌پذیری این ماده تعیین كننده كیفیت و دقت لودسل است. مدار الکتریکی معادل یک لودسل بصورت زیر است :
این ماژول‌ دارای4 سیم قرمز، مشکی، سفید و سبز است که Excitation+ و Excitation-  به ترتیب مربوط به VDD و Ground می‌باشند و  Output+ و Output- نیز خروجی های ماژول می‌باشند.

لوازمی که به آن احتیاج دارید

سخت افزارهای مورد نیاز

آردوینو UNO R3 × 1
سنسور لودسل × 1
HX711 × 1
LCD کاراکتری 1602 × 1
سیم جامپر نری به نری × 1

نرم افزارهای مورد نیاز

Arduino IDE

نحوه اتصال ماژول لودسل به آردوینو

سیگنال خروجی که به وسیله لودسل تولید می‌شود در حد میلی ولت است، درنتیجه به یک تقویت‌کننده نیاز داریم تا سیگنال را به‌اندازه‌ای برسانیم که بتوانیم بعداً آن را تبدیل به سیگنال دیجیتال کرده و مورد پردازش قرار دهیم. به این منظور از سنسور تقویت کننده HX711 استفاده می‌کنیم. سنسور تقویت کننده HX711  شامل یک چیپ  HX711 با قابلیت تبدیل آنالوگ به دیجیتال و دقت ۲۴  بیتی است. ماژول HX711 سیگنال خروجی لودسل که ولتاژ کمی دارد را تقویت می‌کند و این سیگنال تقویت شده و تبدیل شده به داده دیجیتال را به آردوینو می‌فرستد تا آردوینو درنهایت وزن را از این داده استخراج کند.
نحوه اتصال  ماژول HX711 به آردوینو و همچنین به لود سل در جدول زیر مشخص شده است.
Loaedcell HX711 HX711 Arduino
Red E+ Vcc 5v
Black E- GND GND
White A- SCK 5
Green A+ DT 6

سیم بندی

نکته
دقت کنید که جسم را روی کدام سمت لودسل قرار می‌دهید. معمولا روی این ماژول‌ها فلشی وجود دارد که جهت اعمال نیرو را نشان می‌دهد. با توجه به این فلش می‌توانید ماژول را به درستی جایگذاری کنید.

کالیبراسیون لودسل

برای استفاده از لودسل ابتدا لازم است که آن را کالیبره کنیم. برای اینکار کد زیر را برروی آردوینو خود آپلود کنید. منتظر بمانید تا پیغام Reading روی serial monitor نمایش داده شود و سپس یک جسم با وزن مشخص را روی لودسل قرار دهید. با استفاده از کلید A می‌توانید  calibration_factor را یک واحد اضافه و با کلید Z آن را یک واحد کم کنید تا به وزن درست جسم برسید. حالا ترازوی شما کالیبره است!

کد

شما به کتابخانه HX711 نیاز دارید:

/* 
 *  HX711 Calibration
 *  by Hanie Kiani
 *  https://electropeak.com/learn/   
 */
/*
 Setup your scale and start the sketch WITHOUT a weight on the scale
 Once readings are displayed place the weight on the scale
 Press +/- or a/z to adjust the calibration_factor until the output readings match the known weight
*/

#include "HX711.h"
#define DOUT  4
#define CLK  5
HX711 scale;

float calibration_factor = 2230; // this calibration factor must be adjusted according to your load cell
float units;

void setup() {
  scale.begin(DOUT, CLK);
  Serial.begin(9600);
  Serial.println("HX711 calibration sketch");
  Serial.println("Remove all weight from scale");
  Serial.println("After readings begin, place known weight on scale");
  Serial.println("Press + or a to increase calibration factor");
  Serial.println("Press - or z to decrease calibration factor");

   scale.set_scale(calibration_factor); //Adjust to this calibration factor
  scale.tare();  //Reset the scale to 0

  long zero_factor = scale.read_average(); //Get a baseline reading
  Serial.print("Zero factor: "); //This can be used to remove the need to tare the scale. Useful in permanent scale projects.
  Serial.println(zero_factor);
}

void loop() {

 

  Serial.print("Reading");
  units = scale.get_units(), 5;
  if (units < 0)
  {
    units = 0.00;
  }
  Serial.print("Weight: ");
  Serial.print(units);
  Serial.print(" grams"); 
  Serial.print(" calibration_factor: ");
  Serial.print(calibration_factor);
  Serial.println();

  if(Serial.available())
  {
    char temp = Serial.read();
    if(temp == '+' || temp == 'a')
      calibration_factor += 1;
    else if(temp == '-' || temp == 'z')
      calibration_factor -= 1;
   }
  if(Serial.available())
  {
    char temp = Serial.read();
    if(temp == 't' || temp == 'T')
      scale.tare();  //Reset the scale to zero      
  }
}
 set_scale();متغیر calibration_factor را که برای تنظیم کالیبراسیون ترازو استفاده می‌شود روی مقدار مورد نظر قرار می‌دهد و تابع tare  آن را صفر می‌کند. با get_units(); وزن جسم خوانده می‌شود و اگر کوچکتر از صفر اندازه گیری شده بود، برابر صفر در نظر گرفته می‌شود.

ساخت یک ترازوی دیجیتال با آردوینو و لودسل

سیم بندی

کد

/* 
 *  Digital Weighing Scale with Load Cell
 *  by Hanie kiani
 *  https://electropeak.com/learn/   
 */

#include "HX711.h"  //You must have this library in your arduino library folder
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 9, 8, 7);
#define DOUT  4
#define CLK  5
 
HX711 scale;
 
float calibration_factor = 2230; // this calibration factor is adjusted according to my load cell
float units;
 
void setup() {
  lcd.begin(16,2);
  scale.begin(DOUT, CLK);
  Serial.begin(9600);  
  Serial.println("Press T to tare");
scale.set_scale(calibration_factor); //Adjust to this calibration factor
  scale.tare(); 
}
 

void loop() {
  
 units = scale.get_units(), 5;
  if (units < 0)
  {
    units = 0.00;
  }
  lcd.setCursor(0,0);
  lcd.print("Weight: ");
  lcd.setCursor(8,0);
  lcd.print(units,5); //displays the weight in 4 decimal places only for calibration
  lcd.setCursor(14,0);
  lcd.print("grams");
   
   
  if(Serial.available())
  {
    char temp = Serial.read();
    if(temp == 't' || temp == 'T')
      scale.tare();  //Reset the scale to zero      
  }
}

یک نیرو سنج بسازید!

از ماژول لودسل میتوانید به عنوان نیرو سنج هم استفاده کنید. برای اینکار می‌توانید کد زیر  را با اعمال یک calibration_factor مناسب روی برد خود آپلود کنید و با اعمال نیرو‌های مختلف به لودسل نتیجه را مشاهده کنید.
توجه
دقت داشته باشید که اعمال نیروی شما به لود سل نمی‌تواند به صورت لحظه‌ای باشد. زیرا فرآیند اندازه‌گیری نیرو به مدت کوتاهی زمان نیاز دارد. پس سعی کنید نیروی مورد نظر را برای حدود 1ثانیه به لودسل اعمال کنید.
لودسل را روی یک سطح صاف قرار دهید. حالا با دست خود به آن نیرو وارد کنید. می‌بینید که با اعمال نیروی بیشتر به لود سل، عدد بزرگتری روی ال سی دی نمایش داده می‌شود.

کد

/*
*  Digital Force Gauge with Loa d Cell
*  by Hanie kiani
*  https://electropeak.com/learn/
*/

#include "HX711.h"  //You must have this library in your arduino library folder
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 9, 8, 7);
#define DOUT  4
#define CLK  5
HX711 scale;
 
float calibration_factor = 1; // this calibration factor is adjusted according to my load cell
float units;
 
void setup() {
  lcd.begin(16,2);
  scale.begin(DOUT, CLK);
  Serial.begin(9600);  
  Serial.println("Press T to tare");
scale.set_scale(calibration_factor); //Adjust to this calibration factor
  scale.tare(); 
}
 

void loop() {
  
 units = scale.get_units(), 5;
  if (units < 0)
  {
    units = 0.00;
  }
  lcd.setCursor(0,0);
  lcd.print("Force: ");
   Serial.print("Force: ");
  lcd.setCursor(8,0);
  lcd.print(units,5); //displays the weight in 4 decimal places only for calibration
   Serial.print(units,5);
  lcd.setCursor(14,0);
  lcd.print("N");
   Serial.print("N ");
     Serial.println();
delay(2000);
   
   
  if(Serial.available())
  {
    char temp = Serial.read();
    if(temp == 't' || temp == 'T')
      scale.tare();  //Reset the scale to zero      
  }
}

یک گام جلوتر

  • با اضافه کردن پتانسیومتر و انکودر چرخشی به مدار، قابلیت تغییر واحد اندازه‌ گیری را برای کاربر اضافه کنید.
  • سعی کنید با تغییر کد امکان صفر کردن ترازو، وقتی جسم روی آن قرار دارد را ایجاد کنید.

آموزش های مشابه

Comments (57)

  • روزبه Reply

    بسیار عالی
    به تازگی با آردوینو آشنا شدم
    در نظر دارم از همین سیستم برای سنجش گشتاور استفاده کنم.برای این کار نیاز هست عدد بدست آمده ناشی از نیرو ( یا وزن) بر عددی ضرب شود.
    آیا با تغییر کد این مقدار ممکن هست؟
    موارد زیر مد نظرم هست.
    نشان دادن وزن
    نشان دادن گشتاور ( با یک فرمول ساده محاسبه می شود که در کد می توان جای داد)
    نشان دادن مقدار ماکزیمم و متوسط در چند نمونه برداری
    صفر کردن نیرو و وزن و …
    نشان دادن همه مولفه ها در قالب عدد و نمودار در کامپیوتر
    برای موارد بالا ممکن هست راهنمایی بفرمایید و یا منابعی برای مطالعه معرفی کنید.
    بسیار سپاسگزارم

    دسامبر 31, 2019 at 11:04 ق.ظ
    • سعید حسینی Reply

      بله کافیه عدد حساب شده وزن در این کد رو در مضرب مدنظرتون ضرب کنید

      فوریه 29, 2020 at 9:12 ق.ظ
  • امیر زارعی Reply

    با سلام
    من نیاز به انجام پروژه توسط یک تخصص را دارم که پروژه انجام شده رو بهم تحویل دهد
    ایا کسی را سراق دارید که معرفی کنید؟
    ممنون

    آوریل 4, 2020 at 8:38 ق.ظ
    • Amir Mogoei Reply

      سلام
      با قسمت فنی مجموعه تماس بگیرید

      می 12, 2020 at 9:27 ق.ظ
  • علی Reply

    سلام ببخشید یه سوال داشتم من میخوام نیرویی که یک آهنربا به قطعه آهنی متصل به لودسل واردمیکند را حساب کنم نیرویی که با نزدیک شدن آهنربا به قطعه آهنی نشان داده میشود مجموع نیروی وزن و نیروی آهنرباست؟ و برای بدست آوردن نیروی آهنربا باید نیروی نشان داده شده را از وزن کم کرد؟

    می 13, 2020 at 5:01 ب.ظ
    • مهران ملکی Reply

      سلام خیر! خروجی ماژول لودسل تنها بر اثر وزن قرار گرفته بر روی آن تغییر می کند و نه بقیه نیروها.

      دسامبر 1, 2020 at 3:24 ب.ظ
    • علی Reply

      سنسور های وزن (چه الکترونیکی مثل این قطعه و چه مکانیکی مثل باسکول ها و ترازوهای قدیمی)، مجموع نیروهای کششی عمود بر سنسور رو اندازه گیری می کنند.
      در حالت عادی این نیرو با درصد خیلی خیلی خیلی بالایی برابر با نیروی گرانش بر جسم هست.
      با نزدیک شدن آهنربا، نیروی کششی جدیدی وارد قطعه آهن میشه در نتیجه وزن میتونه با توجه به قدرت آهنربا و محل قرارگیری آهنربا، تغییر کنه (کم بشه، زیاد بشه یا اصلا تغییری نکنه)

      به عبارت دیگه:

      وقتی آهن روی لودسل قرار داره، نیروی گرانش بر روی آهن که به سنسور وارد میشه رو خواهید داشت.
      وقتی آهنربا به آهن نزدیک بشه، مجموع نیروی گرانش روی آهن و نیروی آهنربای وارد شده به آهن که به سنسور وارد میشه را خواهید داشت.
      وقتی آهنربا و آهن به یکدیگر جذب بشن، مجموع نیروی گرانش وارد بر آهنربا و آهن را خواهید داشت.

      فوریه 16, 2021 at 5:51 ب.ظ
      • داود Reply

        البته اینطور هم میشه ، اما باید قطعه ی سخت افزاری که درست می کنید رو دقیق بسازید .

        فوریه 2, 2024 at 7:27 ب.ظ
    • امین Reply

      شما باید به جای لودسل یه سنسور اندازه گیری نیروی مغناطیسی را تهیه کنید/یا بسازید و ماژول مبدلش هم متفاوت از این سیستم خواهد بود.

      مارس 31, 2021 at 1:54 ب.ظ
    • داود Reply

      سلام .
      وقت بخیر .
      چیزی که شما نیاز دارید یک سنسور اثر « هال » ه
      برای استاده از سنسور اثر « هال » پایه ها را به برد آردوینو با رعایت قطب های مثبت و منفی نثب کنید و سپس پایه ی سوم سنسور را که پایه ی سیگان است ، به ورودی آنالوگ آردوینو متصل نمایید .
      در اینصورت با چند خط کد نویسی می توانید یک سنسور وزن داشته باشید . البته این کار نیاز به مبدل های عددی در کد نویسی دارد و محاسبه ی آن باید دقیق انجام پذیرد .

      فوریه 2, 2024 at 7:24 ب.ظ
  • سبحان خدادادی Reply

    سلام ببخشید برای ساخت ترازو باید کد های کتابخانه رو اول بزنیم بعد کد های ترازو رو نمیدونم میشه کمکم کنید

    ژوئن 24, 2020 at 7:37 ب.ظ
    • Mohammad Damirchi Reply

      ابتدا کتابخانه را دانلود کرده و آدرس فایل را از طریق مسیر زیر به برنامه Arduino IDE داده شود تا نصب شود
      Sketch->Inculude Library->Add .Zip Library
      سپس یک فایل جدید در آردوینو ایجاد کرده و کد را در آن کپی کنید

      جولای 20, 2020 at 10:14 ق.ظ
  • peyman Reply

    سلام اگر بخام یه وزن به لوتسل بدم بعد لوتسل بعد از رسیدن به اون وزن به شیر برقی فرمان بده چکار بکنم

    سپتامبر 17, 2020 at 10:39 ب.ظ
    • مهران ملکی Reply

      سلام
      مستقیما نمی توانید وزنی را به لودسل بدهید. برای انجام کار خود می توانید از انواع میکروکنترلرها مانند آردوینو و یا یک مقایسه گر مثلا lm358 یا هر نوع آپ امپ دیگری اسفاده می کنید.
      اگر نیاز به توضیح بیشتری دارید، بپرسید.

      دسامبر 1, 2020 at 3:29 ب.ظ
      • رضا صحافی Reply

        سلام. آیا میتوان توسط آردوینو به لودسل فرمان داد که در زمانهای متوالی عمل توزین را انجام دهد و نتایج را در حافظه ذخیره کند؟
        برای اینکار چه باید کرد؟

        ژانویه 21, 2021 at 8:21 ب.ظ
        • مهران ملکی Reply

          سلام.
          ماژول لودسل به طور پیوسته در هر لحظه وزن را محاسبه می کند. با آردوینو می توانید در زمان های متوالی که مطلوبتان است وزن را ذخیره کنید. برای این کار می توانید از دستور delay استفاده کنید. ذخیره اطلاعات را نیز می توانید در یک آرایه انجام دهید.

          ژانویه 24, 2021 at 9:28 ق.ظ
  • محراب Reply

    سلام برای اتصال سنسور فشار هوا به ماژول hx711و خواندن فشار چکار کنم

    سپتامبر 18, 2020 at 12:49 ق.ظ
    • مهران ملکی Reply

      با سلام
      سنسور فشار هوا از نظر عملکرد همانند لودسل می باشد. در نتیجه می توانید طبق همین آموزش سنسور فشار را به ماژول hx711 متصل کنید.

      دسامبر 1, 2020 at 3:38 ب.ظ
  • parisa Reply

    سلام با تشکر از آموزش خوبتون ، سوال من اینه که در قسمت سنجش نیرو میشه به جاش از سنسور مگنومتر flc100 برای سنجش میدان مغناطیس دور کابل استفاده کرد ؟ با توجه به اینکه پینهای flc100 شامل ، 0v,5v,_out,+out هستن ، ممنون میشم توضیح بدید ،

    اکتبر 12, 2020 at 10:38 ق.ظ
    • مهران ملکی Reply

      سلام.
      خروجی لودسل یک ولتاژ متغیر با وزن قرار گرفته بر روی آن است. از آن جایی که برای خواندن این ولتاژ متغیر دقت بسیار بسیار بالایی نیاز است از ماژول hx711 استفاده می شود. این ماژول در واقع یک AnalogRead با دقت بسیار بالاست. سنسور مگنومتر flc100 نیز یک خروجی ولتاژ متغیر دارد که با میدان مغناطیسی تغییر می کند. پس می توانید آن را به ماژول hx711 نیز وصل کنید. اما نکته در آن است که این سنسور میدان مغناطیسی نیاز به دقت خیلی بالا در خواندن ولتاژ ندارد، پس حتی می توانید خروجی سنسور مگنومتر را مستقیما به آردوینو متصل کنید.

      دسامبر 1, 2020 at 3:52 ب.ظ
      • رضا Reply

        کامل میتونید اتصال flc100 را به برد توضیح بدهید و تنظیماتشو بزارید . ممنونم

        مارس 28, 2021 at 1:37 ق.ظ
        • مهران ملکی Reply

          سلام. می‌تونید از لینک زیر که یک فروم از سایت آردوینو در رابطه با سنسور flc100 هست کمک بگیرید.
          “https://forum.arduino.cc/index.php?topic=504966.0”

          آوریل 3, 2021 at 9:22 ق.ظ
  • مرادی Reply

    سلام.
    وقت بخیر ممنون از توضیحات خوبتون
    من میخوام یک ترازوی صفر تا 5kg بایک لودسل 20kg بسازم که دقتش درحد گرم و میزان خطاش %10 باشد.
    آیا با ماوژل HX711 و لودسل 20kg میشه این کار رو انجام داد؟

    آوریل 19, 2021 at 10:30 ق.ظ
    • مهران ملکی Reply

      سلام دوست عزیز. خوشحالیم که توضیحات کمک کننده بوده.
      بله مشکلی نداره میتونید از این ماژول‌ها استفاده کنید و همین دقت و حتی بالاتر رو هم بگیرید. در ضمن، می‌تونید از لودسل 5kg هم استفاده کنید اما استفاده از لودسل 20kg هم مانعی نداره.

      آوریل 20, 2021 at 9:57 ق.ظ
  • مهدی مقدم پور Reply

    با سلام. حداکثر دقت قابل اندازه گیری با این لود سل چقدر است و آیا می توان مقادیر در حدود 0.0001را هم ادازه گرفت یا خیر؟ اگر خیر از چه ماژولی می توان بجای این لودسل استفاده کرد؟

    ژوئن 26, 2021 at 11:14 ق.ظ
    • مهران ملکی Reply

      سلام،
      این لودسل در حدود 0.05 درصد خطا داره. یعنی در وزن 5کیلوگرم حداکثر 2.5 گرم خطا داره. در نتیجه توانایی اندازه‌گیری وزنی که مدنظر شما هست رو نداره. در رابطه با اینکه چه ماژول‌ها و سنسورهایی ممکنه توانایی با دقت مطلوبتون رو دارن میتونید این لینک رو بررسی کنید:
      “https://www.mt.com/hk/en/home/products/Industrial_Weighing_Solutions/AutomPrecision/High_Precision_Weigh_Modules.html”

      ژوئن 27, 2021 at 12:39 ب.ظ
  • سينا اسمعلي پور Reply

    با سلام , ما نياز داريم نمودار نيرو _ فشار رو بدست بياريم نيرو از 0 تا 10 نيوتن هست با دقت 0.01 يا 10 گرم . آيا با اين لودسل و HX711 اين نتايج رو مشه بدست آورد؟

    جولای 10, 2021 at 7:05 ب.ظ
    • مهران ملکی Reply

      سلام.
      یعنی قصد دارید نمودار نیرو یا فشار بر حسب وزن رو بدست بیارید؟ کامل متوجه مسالتون نشدم. اما به هر حال، این لودسل و HX711 دارای دقت اندازه‌گیری خیلی خوبی هستن و حداکثر خطای اون 2.5 گرم در وزنه‌ی 5 کیلوگرمیه و در وزن‌های پایینتر خطای کمتری هم دارن، در نتیجه احتمالا به کار شما خواهد اومد.

      جولای 11, 2021 at 12:00 ب.ظ
  • mehdi Reply

    سلام وقت بخیر
    من ترازو دیجیتال را مونتاژ کردم .ولی روی ال سی دی چیزی مشاهده نمی شه
    در هنگام ران کردن برنامه در قسمت سریال مانیتور وقتی کاراکتر t را می زنم هیچ اتفاقی نمی افتد عکسهای مربوطه برای بخش فنی ارسال شده
    لطفا راهنمایی بفرمایید

    آگوست 7, 2021 at 12:18 ب.ظ
    • مهران ملکی Reply

      سلام، وقت شما هم بخیر
      برای اینکه متوجه بشید دقیقا مشکل از کجاست، ابتدا مقادیر بدست آمده رو داخل Serial Monitor نمایش بدید. برای این کار میتونید این سه خط کد رو بین خطوط 39 و 42 قرار بدید: ”
      Serial.print(“Weight: “);
      Serial.print(units,5);
      Serial.println(“grams”);”
      بعد از اون میتونید مشاهده کنید که چه مقادیری توسط ترازوی دیجیتال اندازه‌گیری میشه. در صورتی که تا این مرحله به خوبی پیش رفت نشون میده که ارتباط آردوینو با نمایشگر دچار ایراد هست.

      آگوست 7, 2021 at 5:19 ب.ظ
  • مرادی Reply

    سلام خدا قوت .
    من وقتی می خوام کد رو تست کنم به این ; HX711 scale (DOUT,CLK) خط گیر میده و ارورش هم no matching function for call to ‘HX711::HX711(int, int)’ لطفا راهنمایی کنید چطور رفعش کنم. ممنون.

    آگوست 12, 2021 at 10:10 ق.ظ
    • مهران ملکی Reply

      سلام،
      در کد یک مشکلی وجود داشت که بر طرف شد. در حال حاضر کد اصلاح شده و میتونید ازش استفاده کنید.

      آگوست 14, 2021 at 12:43 ب.ظ
  • az21 Reply

    س
    با سلام .
    من میخوام فقط از قسمت آنالوگ به دیجیتال hx711 استفاده کنم . یعنی نمیخوام وزن جسمی رو اندازه گیری کنم .
    سیگنالم ازسنسور ppg هستش. امکانش هست اینجوری استفاده کرد؟

    آگوست 12, 2021 at 9:44 ب.ظ
    • مهران ملکی Reply

      سلام.
      بله مشکلی نداره شما میتونید از hx711 برای تقویت و دیجیتالی کردن هر ولتاژی استفاده کنید. نحوه استفاده ازش هم به همین شکل گفته شده در این آموزشه. ماژول تکی hx711 رو میتونید تو لینک زیر مشاهده کنید:
      “https://thecaferobot.com/store/analog-digital-hx711”

      آگوست 14, 2021 at 2:02 ب.ظ
  • فرشید Reply

    سلام بنده میخوام با برد 07 و یونو یه ترازویی درست کنم که وزن رو در گوشی نمایش بده چکار باید بکنم و آیا کسی هست که بتونه انجام بده و تحویل بده مچکرم 09148085710

    آگوست 30, 2021 at 11:33 ب.ظ
    • مهران ملکی Reply

      سلام.
      نه متأسفانه پروژه انجام نمیدیم. اما میتونم تا حدی راهنماییتون کنم.
      اول از همه از اون جایی که قصد دارید یه سری اطلاعات رو از طریق میکروکنترلر برای گوشی ارسال کنید و نمایش بدید، شاید بهتر باشه به جای برد آردوینو uno از میکروکنترلرهای ESP32 و یا ESP8266 استفاده کنید که قابلیت بلوتوث هم دارند و میتونید به سادگی اطلاعات دریافت شده توسط این میکروکنترلرهارو به گوشی ارسال کنید و در گوشی هم به کمک اپلیکیشن‌هایی مثل Serial Bluetooth Terminal و یا اپلیکیشن طراحی شده توسط خودتون اطلاعات رو دریافت کنید و در گوشی نمایش بدید. همچنین به کمک بردهای ESP32 امکان بارگذاری اطلاعات روی اینترنت و مشاهده اون توی گوشی رو هم وجود داره.

      آگوست 31, 2021 at 10:31 ق.ظ
  • محمد Reply

    درود و سپاس از مطلب جذابتون
    اگر بخوایم ترازو حد رو نگهداره چطور باید برنامشو بنویسیم؟؟
    بعنوان مثال یه ظرف که شیر داره رو روی ترازو میذاریم و صفرش میکنیم، بعد مثلا ۱۱ لیتر آب میریزیم داخل ظرف، بعد شیرو وا میکنیم و یک لیتر آب ازش خارج میکنیم، ترازو هم مقدار ۱۰ لیتر فعلی رو نشون بده و هم ۱۱ لیتر رو ثبت کنه. ینی هم وزن حاضر رو نشون بده و هم حداکثر بارگذاری رو ثبت ‌و نمایش بده.
    چیزی مثل دیتالاگر وزن
    لطفا اگر امکان داره راهنماییم کنید

    ژانویه 10, 2022 at 1:54 ق.ظ
    • مهران ملکی Reply

      سلام
      برای این کار میتونید یک متغیر در برنامه‌تون تعریف کنید، مثلا به عنوان savedWeight یا هر اسمی که مد نظرتون هست. هم چنین یکی از پایه های دیجیتال برد آردوینو رو هم به عنوان ورودی اینتراپت تعریف کنید و به اون یک کلید وصل کنید. حالا کاری که میتونید انجام بدید این هست که موقعی که کلید زده میشه، وزنی که در حال حاضر توسط ترازو در حال اندازه گیری هست در متغیر savedWeight ذخیره میشه و میتونید اون رو نمایش بدید. به این صورت با هر بار فشردن کلید، متغیر savedWeight آپدیت میشه و وزنی که در حال حاضر روی ترازو هست، در اون قرار میگیره.

      ژانویه 10, 2022 at 9:38 ق.ظ
      • محمد Reply

        سپاس از پاسختون
        میتونم خواهش کنم برنامه‌ای که فرمودین رو بنویسین چون زیاد به برنامه نویسی وارد نیستم
        یا اگر مقدور هست جسارتا اینکار رو حتی شده با هزینه‌ش برام انجام بدید.

        ژانویه 20, 2022 at 9:52 ق.ظ
        • مهران ملکی Reply

          سلام.
          پاسخگویی در حد ارائه پیشنهاد و راهنمایی انجام میگیره و متاسفانه از انجام پروژه معذوریم.

          ژانویه 29, 2022 at 10:41 ق.ظ
  • شهريار برور Reply

    سلام
    من با اين كد شما وقتي رو اردوينو اپلود ميكنم، با خاموش روشن شدن ولتاژ اردوينو كاليبريشن فاكتورم عوض ميشه و وزني كه روي دستگاهه صفر ميشه، ميخوام وقتي اردوينو خاموش روشن ميشه و وزنه اي روي لودسل هست اون رو نشون بده نه اينكه وزنه رو صفر(tare) كنه!!
    ممنون ميشم راهنمايي كنيد

    ژوئن 24, 2022 at 2:27 ب.ظ
    • مهران ملکی Reply

      سلام.
      کاری که میخواید انجام بدید شدنی هست. برای این کار کافی هست که خط 22 و 24 در کد اول رو کامنت کنید. در این صورت احتمالا پروژه به شکل مورد نظر شما تغییر میکنه.

      جولای 10, 2022 at 3:09 ب.ظ
  • همایون Reply

    سلام
    من این کد ترازوی دیجیتال رو روی آردینو لود می کنم پس از کامپایل شدن ارور میده به صورت زیر
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino: In function ‘void setup()’:
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino:14:14: error: a function-definition is not allowed here before ‘{‘ token
    void setup() {
    ^
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino:24:13: error: a function-definition is not allowed here before ‘{‘ token
    void loop() {
    ^
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino: In function ‘void loop()’:
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino:51:1: error: ‘LiquidCrystal’ was not declared in this scope
    LiquidCrystal lcd(12, 11, 10, 9, 8, 7);
    ^~~~~~~~~~~~~
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino:51:1: note: suggested alternative: ‘LiquidCrystal_h’
    LiquidCrystal lcd(12, 11, 10, 9, 8, 7);
    ^~~~~~~~~~~~~
    LiquidCrystal_h
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino:55:1: error: ‘HX711’ was not declared in this scope
    HX711 scale;
    ^~~~~
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino:55:1: note: suggested alternative: ‘HX711_h’
    HX711 scale;
    ^~~~~
    HX711_h
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino:60:14: error: a function-definition is not allowed here before ‘{‘ token
    void setup() {
    ^
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino:70:13: error: a function-definition is not allowed here before ‘{‘ token
    void loop() {
    ^
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino:91:2: error: ‘ut’ was not declared in this scope
    }ut your main code here, to run repeatedly:
    ^~
    C:\Users\HOMAY\AppData\Local\Temp\.arduinoIDE-unsaved20221018-7484-fiwkct.902bb\sketch_nov18e\sketch_nov18e.ino:91:2: note: suggested alternative: ‘u8’
    }ut your main code here, to run repeatedly:
    ^~
    u8

    exit status 1

    Compilation error: a function-definition is not allowed here before ‘{‘ token
    و هیچ چیزی روی lcd ندارم اگه ممکنه کمک کنید و مراحل کار رو مرحله به مرحله بفرمایید من تجربه ایی در مورد کار با آردینو و محیط کارش ندارم ممنون میشم راهنمایی کنید

    نوامبر 18, 2022 at 10:50 ق.ظ
    • مهران ملکی Reply

      سلام.
      به نظر میرسه برخی کتابخونه‌ها از جمله LiquidCrystal رو روی Arduino IDEتون نصب ندارید. برای نصب این کتابخونه به قسمت Tools -> Manage Libraries برید و LiquidCrystal رو سرچ کنید و اون رو نصب کنید. به احتمال زیاد مشکتون رو حل میکنه.

      نوامبر 25, 2022 at 11:31 ق.ظ
  • همایون Reply

    سلام و وقت بخیر
    من میخواستم نیروی فشار چند تا فنر رو با این پروژه اندازه بگیرم و این اطلاعات رو در داخل حافظه eeprom ذخیره کنم که در صورت نیاز بتونم بهش در اینده ددسترسی داشته باشم
    لطفا راهنمایی کنید

    نوامبر 24, 2022 at 1:57 ب.ظ
  • فرید پاشازاده Reply

    سلام آقای ملکی، با تشکر از مطالب کاربردی و آموزنده تان، لطفا در خصوص امکان ساخت ترازوی دیجیتال و قرائت نیرو با لودسل به ظرفیت 5000 کیلوگرم با برد آردوینو UNO R3 و ماژول لودسل HX711، همچنین امکان قرائت استرین گیج های 350 اهم و Interlink Electronics FSR408 24″ Strip Force Sensing Resistor راهنمایی بفرمایید.

    ژانویه 5, 2023 at 7:41 ب.ظ
    • علی عبدالملکی Reply

      سلام وقت بخیر
      به صورت دقیق خدمتان توضیح میدهم.
      استرین گیج یک نوع مقاومت متغییر می باشد که شما آن را به صورت Pull Up یا Pull Down می توانید استفاده کنید
      در دیتاشیت نیز به صورت Pull up استفاده شده است یعنی یکی از پایه ها به منبع تغذیه و پایه دیگر به یک مقاومت ثابت وصل میکنید و سمت دیگر مقاومت را به زمین وصل میکنید.
      با تغییراتی که در استرین گیج اتفاق می افتد تغییرات ولتاژی در پایه مشترک وصل ایجاد می شود.
      این تغییرات تا حدودی کوچک می باشد و برای این که این تغییرات بیشتر بشود خروجی را به یک Op-amp داده است که میکروکنترلر ها بتوانند آن را اندازه گیری کنند
      سنسور HX711 نیز یک سنسور برای تبدیل مقادیر آنالوگ به دیجیتال با دقت بالا می باشد اما تخصص سازی شده است برای پل وتسون که در ترازو ها مورد استفاده قرار میگیرد.
      برای این که از این سنسور در استرین گیج استفاده کنید چندین راهکار را می توانید اتخاذ کنید
      در صورتی که از یک عدد استرین گیج میخواهید استفاده کنید باید 3 عدد مقاومت هم مقدار استرین گیجی که تهیه کرده اید تهیه کنید و پل وتسون را ببندید.
      در این شرایط ماژول را به ترتیب به این پل وصل میکنید.
      درمورد لودسل 5000 کیلوگرم هم میتوانید مدل مد نظرتون رو در بازار تهیه کنید

      فوریه 28, 2023 at 5:09 ب.ظ
  • ghasemi Reply

    با سلام
    من وقتی یک لودسل رو به hx متصل میکنم اوکی هست. اما وقتی دو یا 4 لودسل رو باهم موازی میکنم به علت کاهش مقاومت دیگه جواب درست نمیگیرم و بعضا جهش دیتا دارم. برای حل این مشکل جی کار میتونم بکنم؟ ممنون میشم راهنمایی بفرمایید.

    آگوست 30, 2023 at 9:39 ق.ظ
    • محمد دمیرچی Reply

      با سلام
      شما دو یا 4 عدد لودسل 4 سیمه را میخواستید به یک ماژول hx711 وصل کنید؟؟؟
      اگر از لود سل های تکی استفاده میکنی از این آموزش می توانید استفاده کنید
      آموزش راه اندازی سنسور وزن (لودسل) GML692 با آردوینو

      آگوست 30, 2023 at 10:16 ق.ظ
      • ghasemi Reply

        بله دقیقا. 2 یا 4 لودسل چهارسیمه به یک hx711 وصل بشه. افت مقاومت رو چطور میشه بدون کاهش دقت جبران کرد

        آگوست 30, 2023 at 1:30 ب.ظ
        • ghasemi Reply

          در لینکی که زحمت کشدید فرستادید لودسل سه سیمه هست اتصالات در لودسل 4سیمه چطور میشه؟ من در بعضی از منابع دیدم موازی کردند اما من با موازی کردن به مشکیس که خدمتتون عرض کردم میخورم. البته با سری کردن یه مقاومت 220 اهم با هر یک از 4 سیم، عملکرد درست شد اما طبیعتا دقت خوبی نخواهم داشت. چون یک مقاومت ثابت اضافه شده

          آگوست 30, 2023 at 1:37 ب.ظ
  • حسینی Reply

    سلام
    چگونه یا چه نرم افزاری خروجی بصورت نمودار میدهد؟ به عبارت دیگر می خواهم نیرویی که بدست می آید هم بصورت عددی و هم در واحد زمان ) ثانیه بصورت نمودار نمایش داده شود؟ چکار کنم؟ ممکنه خواهش کنم مرا راهنمایی نمایید؟

    اکتبر 12, 2023 at 7:24 ب.ظ
    • محمد دمیرچی Reply

      با سلام
      برای نمایش نموداری کافی است Serial Plotter نرم افزار آردوینو را باز کنید یا کلید ترکیبی Ctrl+Shift+L را بزنید تا باز شود.

      اکتبر 14, 2023 at 8:47 ق.ظ
  • رضا صادقیان Reply

    سلام و درود
    یه دستگاه میخواستم بسازم اگر امکان داره کمک بفرمایید
    ما یه آی سی داریم که دستور قطع صادر میکنه
    و میخوایم موقعی دستور قطع صادر بشه که ترازو عددش صفر بشه
    میخواستم بپرسم پالس صفر که روی صفحه نمایش نشون داده میشه
    کی صادر میشه
    و از کدوم قسمت صادر میشه که ما اون رو به آی سی وصل کنیم
    ممنون

    ژانویه 27, 2024 at 1:27 ب.ظ
    • محمد دمیرچی Reply

      با سلام
      این موارد را در انجمن مطرح کنید و از دستگاه و IC هایی که میخواهید استفاده کنید عکس و یا لینک نیز پیوست کنید.

      ژانویه 29, 2024 at 1:14 ب.ظ
  • امیرحسین Reply

    سلام خيلي ممنون بابت آموزش خوبتون یک سوال این الان برحسب گرم داره وزن می‌سنجد یا کیلوگرم

    فوریه 7, 2024 at 6:58 ق.ظ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.