آردوینو: طراحی و ساخت تستر ظرفیت باتری (نسخه ۲.۰)
باتریهای شارژی مثل لیتیوم-یون همهجا پیدا میشن و خیلی وقتها لازمه بدونیم دقیقا چقدر ظرفیت واقعی دارن. خیلی از باتریهای بازار ظرفیت الکی روی برچسبشون نوشته شده و تا خودت تستشون نکنی، نمیفهمی چقدر کارایی دارن. داشتن یه ابزار دقیق برای این کار، خیال آدم رو بابت استفاده از باتریهای دستدوم یا حتی نو راحت میکنه.
توی این پروژه قراره یه دستگاه تستر ظرفیت باتری خیلی کاربردی بسازیم. این مدار با استفاده از آردوینو نانو کار میکنه و به کمک یه نمایشگر، ولتاژ، جریان دشارژ و ظرفیت نهایی باتری رو بهت نشون میده. ما تو تیم آیسیمدار همیشه دنبال پروژههایی هستیم که علاوه بر جذابیت، یه نیاز واقعی رو روی میز کارت برطرف کنن و این تستر دقیقا یکی از همونهاست.
نسخه جدید این پروژه نسبت به قبل خیلی دقیقتر شده و حتی میتونی جریان تخلیه رو با دکمههایی که تعبیه کردیم تغییر بدی. بریم سراغ قطعات و ساخت این گجت خفن تا یه بار برای همیشه مشکل تشخیص باتریهای فیک رو حل کنیم.
قطعات موردنیاز
- قطعات مورد نیاز
- برد مدار چاپی (PCB)
- آردوینو نانو (Arduino Nano)
- آپامپ LM358
- رگولاتور ولتاژ مرجع (LM385BZ-1.2)
- نمایشگر OLED سایز 0.96 اینچ
- مقاومت آجری
- خازن 100nF
- خازن 220 میکروفاراد
- مقاومتهای 4.7 کیلواهم و 1M
- میکروسوئیچ (دکمه فشاری)
- سرپوش دکمه
- ترمینال پیچی
- برد سوراخدار (پروتوتایپ)
- اسپیسر برای برد
- وارنیش حرارتی
- هیتسینک
- ابزارهای مورد نیاز
- هویه
- کلمپ متر
- مولتیمتر
- سشوار صنعتی (برای وارنیش)
- کفچین
- سیملختکن
تحلیل شماتیک مدار
شماتیک این پروژه از چند بخش اصلی تشکیل شده که هر کدوم وظیفه خاصی دارن. اول از همه بخش تغذیه رو داریم که شامل یه جک آداپتور و دو تا خازن فیلتره. ولتاژ ورودی مستقیما به پین Vin آردوینو میره و از رگولاتور خود برد برای تبدیلش به 5 ولت استفاده میکنیم. بخش بعدی که قلب تپنده مدارمونه، مدار بار جریان ثابته. اینجا از آپامپ معروف LM358 استفاده کردیم.
پین خروجی PWM آردوینو (پین D10) بعد از عبور از یه فیلتر پایینگذر، به ورودی غیرمعکوسکننده آپامپ وصل میشه تا یه ولتاژ آنالوگ بسازه. ورودی معکوسکننده هم به عنوان فیدبک بین سورس ماسفت IRLZ44N و مقاومت شنت وصل شده.
ترکیب این آپامپ، ماسفت و مقاومت باعث میشه یه جریان ثابت و قابل کنترل داشته باشیم. وقتی ولتاژ ورودی رو تغییر میدیم، آپامپ تلاش میکنه ولتاژ دو سر مقاومت رو ثابت نگه داره و در نتیجه جریانی که از باتری کشیده میشه کاملا کنترلشده و یکنواخت خواهد بود. حالا خیلی راحت با تغییر پهنای پالس سیگنال PWM میتونیم جریان تخلیه باتری رو تنظیم کنیم.
برای اندازهگیری ولتاژ باتری هم از پین آنالوگ A0 آردوینو کمک گرفتیم که با دو تا خازن، نویزهای احتمالی مدار بار رو فیلتر کردیم تا دقت خوندن مقادیر پایین نیاد. بخش رابط کاربری هم شامل دو تا دکمه برای کم و زیاد کردن جریان تنظیمشده و یه نمایشگر OLED برای دیدن اطلاعاته.
مقاومتهای پولآپ برای دکمهها قرار داده شدن و خازنها هم اثر دیبانس (پرش کلید) رو از بین میبرن. یه دکمه سوم هم برای ریست کردن آردوینو تعبیه شده.
در نهایت یه بازر 5 ولتی هم به پین D9 متصل شده تا شروع و پایان تست رو با صدای هشدار بهت اعلام کنه.
مدار چطور کار میکنه؟
اساس کار این مدار روی مقایسه ولتاژ بین ورودیهای معکوسکننده (پین 2) و غیرمعکوسکننده (پین 3) آپامپ بنا شده. وقتی با تنظیم سیگنال PWM، ولتاژی رو به ورودی غیرمعکوسکننده میدیم، خروجی آپامپ گیت ماسفت رو باز میکنه.
به محض روشن شدن ماسفت، جریان از مقاومت عبور میکنه و یه افت ولتاژ به وجود میاره که فیدبک منفی رو برای آپامپ میسازه. این سیستم طوری ماسفت رو کنترل میکنه که ولتاژ دو تا ورودی آپامپ با هم برابر بشن. نتیجه این میشه که جریان عبوری از مقاومت بار، دقیقا متناسب با ولتاژی میشه که به آپامپ دادیم.
سیگنال PWM آردوینو هم با یه مدار فیلتر پایینگذر صاف میشه تا ولتاژ پایداری داشته باشیم. اگه شکل موج این فیلتر رو با اسیلوسکوپ ببینی، دقیقا متوجه عملکرد تمیز و یکنواختش برای ایجاد یه ولتاژ آنالوگ واقعی میشی.
منطق محاسبه ظرفیت باتری
تو این پروژه باتری تا زمانی که به ولتاژ حد پایین خودش یعنی 3.2 ولت برسه، تخلیه میشه. فرمول محاسبه ظرفیت خیلی ساده است: جریان (بر حسب میلیآمپر) ضربدر زمان (بر حسب ساعت).
از اونجایی که مدار ما یه بار جریان ثابته، مقدار جریانی که از باتری کشیده میشه در کل طول تست تغییر نمیکنه. این ویژگی کار محاسبه رو به شدت ساده و دقیق میکنه.
تو فقط کافیه با دکمههای روی برد جریان دلخواهت رو تنظیم کنی. زمان تست رو هم خود برنامه آردوینو با تایمرهای داخلیش اندازه میگیره و در نهایت با ضرب کردن این دو مقدار، ظرفیت واقعی روی صفحه نمایش داده میشه.
مونتاژ و ساخت مدار
حالا که با طرز کار قطعات آشنا شدی، وقت دست به هویه شدنه. همیشه پیشنهاد میکنم قبل از لحیمکاری، مدار رو یه بار روی برد بورد ببندی تا از کارکردش مطمئن بشی. اگه همهچیز اکی بود، بریم سراغ مونتاژ روی برد سوراخدار 7 در 5 سانتیمتری.
اول پینهدرهای مادگی رو برای آردوینو نانو برش بزن (دو ردیف 15 پین) و روی برد لحیم کن. حتما فاصله بین دو ردیف رو چک کن که آردوینو راحت جا بره. برای نمایشگر OLED هم یه پینهدر 4 تایی لازم داری که باید سر جای خودش لحیم بشه. بعد از نصب این سوکتها، بقیه قطعات مثل مقاومتها، خازنها، ترمینال و ماسفت رو طبق شماتیک روی برد بچین و لحیم کن.
برای سیمکشیهای پشت برد بهتره از سیمهای رنگی استفاده کنی تا اگه بعدا خواستی عیبیابی کنی، مسیرها رو به راحتی از هم تشخیص بدی.
راهاندازی نمایشگر OLED
برای اینکه بتونیم ولتاژ باتری، جریان تخلیه و ظرفیت نهایی رو به صورت زنده ببینیم، از یه نمایشگر OLED با ابعاد 0.96 اینچ استفاده کردیم. این نمایشگر رزولوشن 128 در 64 پیکسل داره و با پروتکل I2C کار میکنه. فقط کافیه پینهای ارتباطی رو به آردوینو وصل کنی. پین SDA نمایشگر به پین A4 آردوینو و پین SCL به A5 وصل میشه.
تغذیه نمایشگر هم با همون 5 ولت و GND تامین میشه. برای راهاندازی نرمافزاری هم از کتابخونه معروف Adafruit_SSD1306 استفاده میکنیم که باید حتما تو محیط آردوینو نصبش کرده باشی.
اضافه کردن بازر هشدار
برای اینکه وقتی تست شروع یا تموم میشه دستگاه بهت هشدار صوتی بده، یه بازر پیزو در نظر گرفتیم. پایههای بازر قطبیت دارن؛ پایه بلندتر مثبته و پایه کوتاهتر منفی. معمولا روی بدنه بازرهای نو هم علامت مثبت چاپ شده.
چون ممکنه روی برد اصلی فضای کافی برای بازر نداشته باشی، میتونی با دو تا تکه سیم اون رو به مدار وصل کنی و روی اتصالاتش وارنیش حرارتی بکشی تا اتصالی نکنه.
در نهایت پایه مثبت بازر رو به پین D9 آردوینو و پایه منفیش رو به GND متصل کن.
نصب پایههای نگهدارنده (اسپیسر)
بعد از اینکه کار لحیمکاری و سیمکشیهای پشت برد تموم شد، حتما چهار تا اسپیسر به گوشههای برد ببند. این کار باعث میشه پایههای تیز قطعات و سیمکشیهای زیر برد با سطح میز برخورد نکنن و خیالت از بابت اتصالیهای ناخواسته کاملا راحت باشه.
طراحی برد مدار چاپی (PCB)
اگه دوست داری پروژهات خیلی تمیزتر و حرفهایتر از یه برد سوراخدار بشه، میتونی برای این مدار یه PCB طراحی کنی. کافیه شماتیک رو تو نرمافزارهای طراحی برد پیاده کنی و قطعات رو با دقت کنار هم بچینی. سعی کن قطعات رو طوری قرار بدی که فضای کمتری اشغال کنن.
هرچی برد نهایی کوچیکتر و جمعوجورتر بشه بهتره. حتما چند تا سوراخ هم برای نصب برد داخل یه جعبه در نظر بگیر تا فیکس کردنش راحت باشه. مسیرکشی بین قطعات هم مثل حل کردن یه پازل جذابه. میتونی از هر دو لایه بالا و پایین برد استفاده کنی تا ترکها کوتاهتر بشن و روی هم نیفتن.
در نهایت با اضافه کردن راهنماها تو لایه مارکاژ (Silk) و ایجاد پلیگان مس برای اتصال زمین (GND)، فایل طراحیت آماده میشه تا برای تولید ارسالش کنی. Sign up PCBWay now to get a US $5 coupon. That means your first order is free of cost only you have to pay the shipping charges.
مونتاژ نهایی روی PCB
برای مونتاژ قطعات روی PCB به یه هویه خوب، سیم لحیم، کفچین و یه مولتیمتر نیاز داری. یه قانون طلایی تو لحیمکاری هست: همیشه از قطعات قدکوتاهتر شروع کن. اول مقاومتها، بعد خازنها و در نهایت قطعات بلندتر رو نصب کن. پایههای قطعه رو از سوراخ برد رد کن و برد رو برگردون. نوک هویه رو دقیقا محل اتصال پد و پایه قرار بده تا هر دو گرم بشن.
بعد سیم لحیم رو نزدیک کن تا ذوب بشه و کل پد رو بپوشونه. وقتی یه اتصال براق و محکم شکل گرفت، هویه رو بردار. همین مسیر رو برای تمام قطعات تکرار کن.
برنامهنویسی و کتابخونهها
قبل از آپلود کد روی آردوینو، باید دو تا کتابخونه رو تو محیط نرمافزار نصب کنی. کتابخونه JC_Button برای مدیریت دکمهها و Adafruit_SSD1306 برای راهاندازی نمایشگر. اما کد نیاز به کمی کالیبراسیون برای سختافزار تو داره. اول باید مقادیر آرایه جریان رو با سختافزار خودت هماهنگ کنی. یه مولتیمتر رو به صورت سری با باتری قرار بده.
دکمه بالا رو بزن و جریانی که روی مولتیمتر میخونی رو جایگزین اعداد داخل آرایه تو کد کن. مرحله بعد تنظیم ولتاژ Vcc هست. با همون مولتیمتر ولتاژ پین 5 ولت آردوینو رو اندازه بگیر و تو کد وارد کن (مثلا ممکنه مدار تو 4.96 ولت باشه).
یه نکته مهم دیگه تنظیم ولتاژ قطع (Low_BAT_Level) بر اساس جنس باتریته. برای حفظ سلامت باتری، بهتره یه حاشیه امنیت در نظر بگیری.
مثلا ولتاژ قطع برای باتریهای لیتیوم کبالت یا لیتیوم منگنز در نرخ تخلیه 1C حدود 2.5 ولته. برای باتریهای لیتیوم آهن فسفات همون 2.5 ولت و برای لیتیوم تیتانات حدود 1.8 ولته. تو نسخه بهروزرسانی شده این پروژه، تغییراتی تو طراحی داده شده تا دقت بالاتر بره.
اضافه شدن یه قطعه رفرنس ولتاژ دقیق مثل LM385BLP-1.2 به پین A1 باعث میشه برنامه ولتاژ مرجع 1.215 ولت رو بخونه و ولتاژ تغذیه رو محاسبه کنه تا نیازی به اندازهگیری دستی Vcc نباشه. همچنین استفاده از مقاومت آجری 1 اهم با خطای 1 درصد به جای نوع 5 درصد، دقت اندازهگیری جریان رو بهشدت بالا میبره.
علاوه بر این تو برنامهنویسی جدید، مقادیر PWM به صورت هوشمند محاسبه میشن تا جریانی که از باتری کشیده میشه تا جای ممکن به جریان تنظیمشده نزدیک باشه.
تست نهایی پروژه
برای تست دستگاه، یه باتری سالم مثل باتری 18650 شارژ شده رو به ترمینالها وصل کن. با دکمهها جریان تخلیه مورد نظرت رو تنظیم کن و بعد دکمه UP رو چند ثانیه نگه دار.
وقتی صدای تکبوق رو شنیدی، یعنی تست شروع شده. حالا میتونی ولتاژ و ظرفیت رو زنده روی نمایشگر مانیتور کنی تا زمانی که ولتاژ باتری به حد پایینش (مثلا 3.2 ولت) برسه. تو این مرحله مدار تست رو متوقف میکنه و با دو تا بوق طولانی بهت خبر میده که کار تموم شده. امیدوارم از ساخت این تستر باتری حسابی لذت برده باشی. این ابزار واقعا روی هر میز کاری نیازه.
حتما این پروژه رو بساز و عکس و تجربهات رو تو اپلیکیشن آیسیمدار با بقیه بچههای الکترونیک به اشتراک بذار تا بقیه هم از ساختنش الهام بگیرن. موفق باشی! If you like it, don't forget to share :) Subscribe for more DIY projects. Thank You.
فایلهای پیوست
تو میتونی اولین سازنده باشی!
اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر
این آموزش با استانداردهای اختصاصی آیسیمدار بازنویسی و بهینهسازی شده و تمامی حقوق انتشار آن متعلق به این مجموعه است و در صورت کپی یا بازنشر پیگرد قانونی خواهد داشت.








































گفتگوهای کاربران
هنوز نظری ثبت نشده؛ تو شروع کن!
هنوز نظری ثبت نشده؛ تو شروع کن!