مقدمه
در این آموزش با ماژول لود سل، کاربردها ونحوه عملکرد آن آشنا میشویم. سپس نحوه راه اندازی و اتصال آن به برد آردوینو را خواهیم دید و بعد از یادگیری نحوه کالیبره کردن لودسل، به کمک آن یک ترازوی دیجیتال میسازیم که قادر به اندازهگیری وزن اجسام با دقت 0.0001 گرم میباشد.
آنچه در این آموزش یاد می گیرید
- ماژول لود سل چیست و چگونه کار میکند
- راه اندازی ماژول لود سل توسط آردوینو
- ساخت ترازوی دیجیتال با آردوینو
- استفاده از لودسل به عنوان نیروسنج
آشنایی با ماژول لودسل
لودسل یك نوع حسگر الكترونیكی برای اندازهگیری وزن و نیرو است که با اعمال نيرو بر روي آن يک سيگنال الکتريکي ضعيف در حد ميلي ولت روي سيم هاي خروجي آن ظاهر ميشود . در واقع لودسل یک مبدل می باشد که نیرو و فشار را به سیگنال های الکتریکی استاندارد تبدیل می کند.
لودسل شامل یك هسته فلزی و مجموعه ای از مقاومت های الکتریکی میباشد كه در اثر اعمال نیرو مانند تمام مواد تغییر شكل مییابد اما پس از برداشتن نیرو به حالت اولیه خود برمیگردد . میزان برگشتپذیری این ماده تعیین كننده كیفیت و دقت لودسل است. مدار الکتریکی معادل یک لودسل بصورت زیر است :
این ماژول دارای4 سیم قرمز، مشکی، سفید و سبز است که Excitation+ و Excitation- به ترتیب مربوط به VDD و Ground میباشند و Output+ و Output- نیز خروجی های ماژول میباشند.
لوازمی که به آن احتیاج دارید
سخت افزارهای مورد نیاز
نرم افزارهای مورد نیاز
نحوه اتصال ماژول لودسل به آردوینو
سیگنال خروجی که به وسیله لودسل تولید میشود در حد میلی ولت است، درنتیجه به یک تقویتکننده نیاز داریم تا سیگنال را بهاندازهای برسانیم که بتوانیم بعداً آن را تبدیل به سیگنال دیجیتال کرده و مورد پردازش قرار دهیم. به این منظور از سنسور تقویت کننده 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 Library
1 file(s) 17.41 KB
/*
* 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)
بسیار عالی
به تازگی با آردوینو آشنا شدم
در نظر دارم از همین سیستم برای سنجش گشتاور استفاده کنم.برای این کار نیاز هست عدد بدست آمده ناشی از نیرو ( یا وزن) بر عددی ضرب شود.
آیا با تغییر کد این مقدار ممکن هست؟
موارد زیر مد نظرم هست.
نشان دادن وزن
نشان دادن گشتاور ( با یک فرمول ساده محاسبه می شود که در کد می توان جای داد)
نشان دادن مقدار ماکزیمم و متوسط در چند نمونه برداری
صفر کردن نیرو و وزن و …
نشان دادن همه مولفه ها در قالب عدد و نمودار در کامپیوتر
برای موارد بالا ممکن هست راهنمایی بفرمایید و یا منابعی برای مطالعه معرفی کنید.
بسیار سپاسگزارم
بله کافیه عدد حساب شده وزن در این کد رو در مضرب مدنظرتون ضرب کنید
با سلام
من نیاز به انجام پروژه توسط یک تخصص را دارم که پروژه انجام شده رو بهم تحویل دهد
ایا کسی را سراق دارید که معرفی کنید؟
ممنون
سلام
با قسمت فنی مجموعه تماس بگیرید
سلام ببخشید یه سوال داشتم من میخوام نیرویی که یک آهنربا به قطعه آهنی متصل به لودسل واردمیکند را حساب کنم نیرویی که با نزدیک شدن آهنربا به قطعه آهنی نشان داده میشود مجموع نیروی وزن و نیروی آهنرباست؟ و برای بدست آوردن نیروی آهنربا باید نیروی نشان داده شده را از وزن کم کرد؟
سلام خیر! خروجی ماژول لودسل تنها بر اثر وزن قرار گرفته بر روی آن تغییر می کند و نه بقیه نیروها.
سنسور های وزن (چه الکترونیکی مثل این قطعه و چه مکانیکی مثل باسکول ها و ترازوهای قدیمی)، مجموع نیروهای کششی عمود بر سنسور رو اندازه گیری می کنند.
در حالت عادی این نیرو با درصد خیلی خیلی خیلی بالایی برابر با نیروی گرانش بر جسم هست.
با نزدیک شدن آهنربا، نیروی کششی جدیدی وارد قطعه آهن میشه در نتیجه وزن میتونه با توجه به قدرت آهنربا و محل قرارگیری آهنربا، تغییر کنه (کم بشه، زیاد بشه یا اصلا تغییری نکنه)
به عبارت دیگه:
وقتی آهن روی لودسل قرار داره، نیروی گرانش بر روی آهن که به سنسور وارد میشه رو خواهید داشت.
وقتی آهنربا به آهن نزدیک بشه، مجموع نیروی گرانش روی آهن و نیروی آهنربای وارد شده به آهن که به سنسور وارد میشه را خواهید داشت.
وقتی آهنربا و آهن به یکدیگر جذب بشن، مجموع نیروی گرانش وارد بر آهنربا و آهن را خواهید داشت.
البته اینطور هم میشه ، اما باید قطعه ی سخت افزاری که درست می کنید رو دقیق بسازید .
شما باید به جای لودسل یه سنسور اندازه گیری نیروی مغناطیسی را تهیه کنید/یا بسازید و ماژول مبدلش هم متفاوت از این سیستم خواهد بود.
سلام .
وقت بخیر .
چیزی که شما نیاز دارید یک سنسور اثر « هال » ه
برای استاده از سنسور اثر « هال » پایه ها را به برد آردوینو با رعایت قطب های مثبت و منفی نثب کنید و سپس پایه ی سوم سنسور را که پایه ی سیگان است ، به ورودی آنالوگ آردوینو متصل نمایید .
در اینصورت با چند خط کد نویسی می توانید یک سنسور وزن داشته باشید . البته این کار نیاز به مبدل های عددی در کد نویسی دارد و محاسبه ی آن باید دقیق انجام پذیرد .
سلام ببخشید برای ساخت ترازو باید کد های کتابخانه رو اول بزنیم بعد کد های ترازو رو نمیدونم میشه کمکم کنید
ابتدا کتابخانه را دانلود کرده و آدرس فایل را از طریق مسیر زیر به برنامه Arduino IDE داده شود تا نصب شود
Sketch->Inculude Library->Add .Zip Library
سپس یک فایل جدید در آردوینو ایجاد کرده و کد را در آن کپی کنید
سلام اگر بخام یه وزن به لوتسل بدم بعد لوتسل بعد از رسیدن به اون وزن به شیر برقی فرمان بده چکار بکنم
سلام
مستقیما نمی توانید وزنی را به لودسل بدهید. برای انجام کار خود می توانید از انواع میکروکنترلرها مانند آردوینو و یا یک مقایسه گر مثلا lm358 یا هر نوع آپ امپ دیگری اسفاده می کنید.
اگر نیاز به توضیح بیشتری دارید، بپرسید.
سلام. آیا میتوان توسط آردوینو به لودسل فرمان داد که در زمانهای متوالی عمل توزین را انجام دهد و نتایج را در حافظه ذخیره کند؟
برای اینکار چه باید کرد؟
سلام.
ماژول لودسل به طور پیوسته در هر لحظه وزن را محاسبه می کند. با آردوینو می توانید در زمان های متوالی که مطلوبتان است وزن را ذخیره کنید. برای این کار می توانید از دستور delay استفاده کنید. ذخیره اطلاعات را نیز می توانید در یک آرایه انجام دهید.
سلام برای اتصال سنسور فشار هوا به ماژول hx711و خواندن فشار چکار کنم
با سلام
سنسور فشار هوا از نظر عملکرد همانند لودسل می باشد. در نتیجه می توانید طبق همین آموزش سنسور فشار را به ماژول hx711 متصل کنید.
سلام با تشکر از آموزش خوبتون ، سوال من اینه که در قسمت سنجش نیرو میشه به جاش از سنسور مگنومتر flc100 برای سنجش میدان مغناطیس دور کابل استفاده کرد ؟ با توجه به اینکه پینهای flc100 شامل ، 0v,5v,_out,+out هستن ، ممنون میشم توضیح بدید ،
سلام.
خروجی لودسل یک ولتاژ متغیر با وزن قرار گرفته بر روی آن است. از آن جایی که برای خواندن این ولتاژ متغیر دقت بسیار بسیار بالایی نیاز است از ماژول hx711 استفاده می شود. این ماژول در واقع یک AnalogRead با دقت بسیار بالاست. سنسور مگنومتر flc100 نیز یک خروجی ولتاژ متغیر دارد که با میدان مغناطیسی تغییر می کند. پس می توانید آن را به ماژول hx711 نیز وصل کنید. اما نکته در آن است که این سنسور میدان مغناطیسی نیاز به دقت خیلی بالا در خواندن ولتاژ ندارد، پس حتی می توانید خروجی سنسور مگنومتر را مستقیما به آردوینو متصل کنید.
کامل میتونید اتصال flc100 را به برد توضیح بدهید و تنظیماتشو بزارید . ممنونم
سلام. میتونید از لینک زیر که یک فروم از سایت آردوینو در رابطه با سنسور flc100 هست کمک بگیرید.
“https://forum.arduino.cc/index.php?topic=504966.0”
سلام.
وقت بخیر ممنون از توضیحات خوبتون
من میخوام یک ترازوی صفر تا 5kg بایک لودسل 20kg بسازم که دقتش درحد گرم و میزان خطاش %10 باشد.
آیا با ماوژل HX711 و لودسل 20kg میشه این کار رو انجام داد؟
سلام دوست عزیز. خوشحالیم که توضیحات کمک کننده بوده.
بله مشکلی نداره میتونید از این ماژولها استفاده کنید و همین دقت و حتی بالاتر رو هم بگیرید. در ضمن، میتونید از لودسل 5kg هم استفاده کنید اما استفاده از لودسل 20kg هم مانعی نداره.
با سلام. حداکثر دقت قابل اندازه گیری با این لود سل چقدر است و آیا می توان مقادیر در حدود 0.0001را هم ادازه گرفت یا خیر؟ اگر خیر از چه ماژولی می توان بجای این لودسل استفاده کرد؟
سلام،
این لودسل در حدود 0.05 درصد خطا داره. یعنی در وزن 5کیلوگرم حداکثر 2.5 گرم خطا داره. در نتیجه توانایی اندازهگیری وزنی که مدنظر شما هست رو نداره. در رابطه با اینکه چه ماژولها و سنسورهایی ممکنه توانایی با دقت مطلوبتون رو دارن میتونید این لینک رو بررسی کنید:
“https://www.mt.com/hk/en/home/products/Industrial_Weighing_Solutions/AutomPrecision/High_Precision_Weigh_Modules.html”
با سلام , ما نياز داريم نمودار نيرو _ فشار رو بدست بياريم نيرو از 0 تا 10 نيوتن هست با دقت 0.01 يا 10 گرم . آيا با اين لودسل و HX711 اين نتايج رو مشه بدست آورد؟
سلام.
یعنی قصد دارید نمودار نیرو یا فشار بر حسب وزن رو بدست بیارید؟ کامل متوجه مسالتون نشدم. اما به هر حال، این لودسل و HX711 دارای دقت اندازهگیری خیلی خوبی هستن و حداکثر خطای اون 2.5 گرم در وزنهی 5 کیلوگرمیه و در وزنهای پایینتر خطای کمتری هم دارن، در نتیجه احتمالا به کار شما خواهد اومد.
سلام وقت بخیر
من ترازو دیجیتال را مونتاژ کردم .ولی روی ال سی دی چیزی مشاهده نمی شه
در هنگام ران کردن برنامه در قسمت سریال مانیتور وقتی کاراکتر t را می زنم هیچ اتفاقی نمی افتد عکسهای مربوطه برای بخش فنی ارسال شده
لطفا راهنمایی بفرمایید
سلام، وقت شما هم بخیر
برای اینکه متوجه بشید دقیقا مشکل از کجاست، ابتدا مقادیر بدست آمده رو داخل Serial Monitor نمایش بدید. برای این کار میتونید این سه خط کد رو بین خطوط 39 و 42 قرار بدید: ”
Serial.print(“Weight: “);
Serial.print(units,5);
Serial.println(“grams”);”
بعد از اون میتونید مشاهده کنید که چه مقادیری توسط ترازوی دیجیتال اندازهگیری میشه. در صورتی که تا این مرحله به خوبی پیش رفت نشون میده که ارتباط آردوینو با نمایشگر دچار ایراد هست.
سلام خدا قوت .
من وقتی می خوام کد رو تست کنم به این ; HX711 scale (DOUT,CLK) خط گیر میده و ارورش هم no matching function for call to ‘HX711::HX711(int, int)’ لطفا راهنمایی کنید چطور رفعش کنم. ممنون.
سلام،
در کد یک مشکلی وجود داشت که بر طرف شد. در حال حاضر کد اصلاح شده و میتونید ازش استفاده کنید.
س
با سلام .
من میخوام فقط از قسمت آنالوگ به دیجیتال hx711 استفاده کنم . یعنی نمیخوام وزن جسمی رو اندازه گیری کنم .
سیگنالم ازسنسور ppg هستش. امکانش هست اینجوری استفاده کرد؟
سلام.
بله مشکلی نداره شما میتونید از hx711 برای تقویت و دیجیتالی کردن هر ولتاژی استفاده کنید. نحوه استفاده ازش هم به همین شکل گفته شده در این آموزشه. ماژول تکی hx711 رو میتونید تو لینک زیر مشاهده کنید:
“https://thecaferobot.com/store/analog-digital-hx711”
سلام بنده میخوام با برد 07 و یونو یه ترازویی درست کنم که وزن رو در گوشی نمایش بده چکار باید بکنم و آیا کسی هست که بتونه انجام بده و تحویل بده مچکرم 09148085710
سلام.
نه متأسفانه پروژه انجام نمیدیم. اما میتونم تا حدی راهنماییتون کنم.
اول از همه از اون جایی که قصد دارید یه سری اطلاعات رو از طریق میکروکنترلر برای گوشی ارسال کنید و نمایش بدید، شاید بهتر باشه به جای برد آردوینو uno از میکروکنترلرهای ESP32 و یا ESP8266 استفاده کنید که قابلیت بلوتوث هم دارند و میتونید به سادگی اطلاعات دریافت شده توسط این میکروکنترلرهارو به گوشی ارسال کنید و در گوشی هم به کمک اپلیکیشنهایی مثل Serial Bluetooth Terminal و یا اپلیکیشن طراحی شده توسط خودتون اطلاعات رو دریافت کنید و در گوشی نمایش بدید. همچنین به کمک بردهای ESP32 امکان بارگذاری اطلاعات روی اینترنت و مشاهده اون توی گوشی رو هم وجود داره.
درود و سپاس از مطلب جذابتون
اگر بخوایم ترازو حد رو نگهداره چطور باید برنامشو بنویسیم؟؟
بعنوان مثال یه ظرف که شیر داره رو روی ترازو میذاریم و صفرش میکنیم، بعد مثلا ۱۱ لیتر آب میریزیم داخل ظرف، بعد شیرو وا میکنیم و یک لیتر آب ازش خارج میکنیم، ترازو هم مقدار ۱۰ لیتر فعلی رو نشون بده و هم ۱۱ لیتر رو ثبت کنه. ینی هم وزن حاضر رو نشون بده و هم حداکثر بارگذاری رو ثبت و نمایش بده.
چیزی مثل دیتالاگر وزن
لطفا اگر امکان داره راهنماییم کنید
سلام
برای این کار میتونید یک متغیر در برنامهتون تعریف کنید، مثلا به عنوان savedWeight یا هر اسمی که مد نظرتون هست. هم چنین یکی از پایه های دیجیتال برد آردوینو رو هم به عنوان ورودی اینتراپت تعریف کنید و به اون یک کلید وصل کنید. حالا کاری که میتونید انجام بدید این هست که موقعی که کلید زده میشه، وزنی که در حال حاضر توسط ترازو در حال اندازه گیری هست در متغیر savedWeight ذخیره میشه و میتونید اون رو نمایش بدید. به این صورت با هر بار فشردن کلید، متغیر savedWeight آپدیت میشه و وزنی که در حال حاضر روی ترازو هست، در اون قرار میگیره.
سپاس از پاسختون
میتونم خواهش کنم برنامهای که فرمودین رو بنویسین چون زیاد به برنامه نویسی وارد نیستم
یا اگر مقدور هست جسارتا اینکار رو حتی شده با هزینهش برام انجام بدید.
سلام.
پاسخگویی در حد ارائه پیشنهاد و راهنمایی انجام میگیره و متاسفانه از انجام پروژه معذوریم.
سلام
من با اين كد شما وقتي رو اردوينو اپلود ميكنم، با خاموش روشن شدن ولتاژ اردوينو كاليبريشن فاكتورم عوض ميشه و وزني كه روي دستگاهه صفر ميشه، ميخوام وقتي اردوينو خاموش روشن ميشه و وزنه اي روي لودسل هست اون رو نشون بده نه اينكه وزنه رو صفر(tare) كنه!!
ممنون ميشم راهنمايي كنيد
سلام.
کاری که میخواید انجام بدید شدنی هست. برای این کار کافی هست که خط 22 و 24 در کد اول رو کامنت کنید. در این صورت احتمالا پروژه به شکل مورد نظر شما تغییر میکنه.
سلام
من این کد ترازوی دیجیتال رو روی آردینو لود می کنم پس از کامپایل شدن ارور میده به صورت زیر
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 ندارم اگه ممکنه کمک کنید و مراحل کار رو مرحله به مرحله بفرمایید من تجربه ایی در مورد کار با آردینو و محیط کارش ندارم ممنون میشم راهنمایی کنید
سلام.
به نظر میرسه برخی کتابخونهها از جمله LiquidCrystal رو روی Arduino IDEتون نصب ندارید. برای نصب این کتابخونه به قسمت Tools -> Manage Libraries برید و LiquidCrystal رو سرچ کنید و اون رو نصب کنید. به احتمال زیاد مشکتون رو حل میکنه.
سلام و وقت بخیر
من میخواستم نیروی فشار چند تا فنر رو با این پروژه اندازه بگیرم و این اطلاعات رو در داخل حافظه eeprom ذخیره کنم که در صورت نیاز بتونم بهش در اینده ددسترسی داشته باشم
لطفا راهنمایی کنید
سلام آقای ملکی، با تشکر از مطالب کاربردی و آموزنده تان، لطفا در خصوص امکان ساخت ترازوی دیجیتال و قرائت نیرو با لودسل به ظرفیت 5000 کیلوگرم با برد آردوینو UNO R3 و ماژول لودسل HX711، همچنین امکان قرائت استرین گیج های 350 اهم و Interlink Electronics FSR408 24″ Strip Force Sensing Resistor راهنمایی بفرمایید.
سلام وقت بخیر
به صورت دقیق خدمتان توضیح میدهم.
استرین گیج یک نوع مقاومت متغییر می باشد که شما آن را به صورت Pull Up یا Pull Down می توانید استفاده کنید
در دیتاشیت نیز به صورت Pull up استفاده شده است یعنی یکی از پایه ها به منبع تغذیه و پایه دیگر به یک مقاومت ثابت وصل میکنید و سمت دیگر مقاومت را به زمین وصل میکنید.
با تغییراتی که در استرین گیج اتفاق می افتد تغییرات ولتاژی در پایه مشترک وصل ایجاد می شود.
این تغییرات تا حدودی کوچک می باشد و برای این که این تغییرات بیشتر بشود خروجی را به یک Op-amp داده است که میکروکنترلر ها بتوانند آن را اندازه گیری کنند
سنسور HX711 نیز یک سنسور برای تبدیل مقادیر آنالوگ به دیجیتال با دقت بالا می باشد اما تخصص سازی شده است برای پل وتسون که در ترازو ها مورد استفاده قرار میگیرد.
برای این که از این سنسور در استرین گیج استفاده کنید چندین راهکار را می توانید اتخاذ کنید
در صورتی که از یک عدد استرین گیج میخواهید استفاده کنید باید 3 عدد مقاومت هم مقدار استرین گیجی که تهیه کرده اید تهیه کنید و پل وتسون را ببندید.
در این شرایط ماژول را به ترتیب به این پل وصل میکنید.
درمورد لودسل 5000 کیلوگرم هم میتوانید مدل مد نظرتون رو در بازار تهیه کنید
با سلام
من وقتی یک لودسل رو به hx متصل میکنم اوکی هست. اما وقتی دو یا 4 لودسل رو باهم موازی میکنم به علت کاهش مقاومت دیگه جواب درست نمیگیرم و بعضا جهش دیتا دارم. برای حل این مشکل جی کار میتونم بکنم؟ ممنون میشم راهنمایی بفرمایید.
با سلام
شما دو یا 4 عدد لودسل 4 سیمه را میخواستید به یک ماژول hx711 وصل کنید؟؟؟
اگر از لود سل های تکی استفاده میکنی از این آموزش می توانید استفاده کنید
آموزش راه اندازی سنسور وزن (لودسل) GML692 با آردوینو
بله دقیقا. 2 یا 4 لودسل چهارسیمه به یک hx711 وصل بشه. افت مقاومت رو چطور میشه بدون کاهش دقت جبران کرد
در لینکی که زحمت کشدید فرستادید لودسل سه سیمه هست اتصالات در لودسل 4سیمه چطور میشه؟ من در بعضی از منابع دیدم موازی کردند اما من با موازی کردن به مشکیس که خدمتتون عرض کردم میخورم. البته با سری کردن یه مقاومت 220 اهم با هر یک از 4 سیم، عملکرد درست شد اما طبیعتا دقت خوبی نخواهم داشت. چون یک مقاومت ثابت اضافه شده
سلام
چگونه یا چه نرم افزاری خروجی بصورت نمودار میدهد؟ به عبارت دیگر می خواهم نیرویی که بدست می آید هم بصورت عددی و هم در واحد زمان ) ثانیه بصورت نمودار نمایش داده شود؟ چکار کنم؟ ممکنه خواهش کنم مرا راهنمایی نمایید؟
با سلام
برای نمایش نموداری کافی است Serial Plotter نرم افزار آردوینو را باز کنید یا کلید ترکیبی Ctrl+Shift+L را بزنید تا باز شود.
سلام و درود
یه دستگاه میخواستم بسازم اگر امکان داره کمک بفرمایید
ما یه آی سی داریم که دستور قطع صادر میکنه
و میخوایم موقعی دستور قطع صادر بشه که ترازو عددش صفر بشه
میخواستم بپرسم پالس صفر که روی صفحه نمایش نشون داده میشه
کی صادر میشه
و از کدوم قسمت صادر میشه که ما اون رو به آی سی وصل کنیم
ممنون
با سلام
این موارد را در انجمن مطرح کنید و از دستگاه و IC هایی که میخواهید استفاده کنید عکس و یا لینک نیز پیوست کنید.
سلام خيلي ممنون بابت آموزش خوبتون یک سوال این الان برحسب گرم داره وزن میسنجد یا کیلوگرم
با سلام
دقت کنید داخل همین آموزش نوشته شده است که واحد بر حسب گرم می باشد.
اما می توانید به آموزش راه اندازی ماژول لودسل (سنسور وزن) HX711 با آردوینو مراجعه کنید تا اطلاعات بیشتری برای راه اندازی بدست آورید.