
باتریهای قابل شارژ لیتیومی امروزه در بسیاری از وسایل الکترونیکی، از گوشی و لپتاپ گرفته تا پهپاد، اسپیکر، تجهیزات قابل حمل و پروژههای الکترونیکی استفاده میشوند. در میان مدلهای مختلف، باتری لیتیوم یونی و…
ادامه مطلب۰۹ آذر ۱۴۰۱

نظرهای متفاوتی درباره اشتباه بودن شارژ کردن گوشی از شب تا صبح وجود دارد. حتی اگر در گوگل هم جستوجو کنید در بعضی از مقالهها این کار را بدون مشکل و بعضی این را کاری اشتباه میدانند. هرچند اکثر گوشیهای هوشمند جدید، قطعه محافظ داخلشان دارند که از شارژ شدن بیش از حد جلوگیری میکند. در این پروژه به ساخت یک شارژر گوشی تایمر دار میپردازیم که کاربردی مشابه مسئلهای که گفته شد دارد.
PCB Universal
شارژر موبایل (ترجیحاً ارزانقیمت)
سیم
کیس آداپتور قدیمی
دو سوکت مادگی 220v
تفنگ چسب شیشهای
ATTINY85
Arduino nano (خرید Arduino nano)
4 عدد LED
دیود 1N4007
ترانزیستور NPN2222
3 عدد مقاومت 100Ω
1 مقاومت 10Ω
1 مقاومت 10kΩ
Push button
هویه
رله 5 ولت
در این پروژه قصد داریم از آی سی تایمر Attiny85 استفاده کنیم.
ویژگیهای Attiny85:
خروجی آن 220v است. ( توانایی اتصال شارژر)
تنظیم تایمر را بر روی 1 تا 4 ساعت
Auto cut-off
یک LED برای نشاندادن پروسه
ابعاد مناسب
توجه: اگر تجربه کار با ولتاژ 220v را ندارید، ترجیحاً این پروژه را انجام ندهید!
برای بستن LEDها به دلیل محدودیت تعداد پایه باید از تکنیک Charlieplexing استفاده کنیم که در ادامه آن را به طور خلاصه توضیح دادیم.
Charlieplexing یک تکنیک اجرای نمایش مولتی پلکسبرای زمانی است که از تعداد کمی پین ورودی/خروجی استفاده میکنیم. این متد از تواناییهای منطق سهحالته (Tri-state) میکروکنترلرها که از مولتی پلکسهای قدیمی پربازدهتر است، استفاده میکند.
بر اساس شمارهگذاریهای شکل بالا در جدول زیر حالتهای مختلف پینهای 0،1،2 را بررسی کردیم که هرکدام از LEDها زمانی که روشن میشوند نشاندهنده یکی از حالتهای زیر است.
مطابق شکل زیر اتصالات پینهای ATTINY را به فرم زیر انجام میدهیم:
پین شماره 3 به پوش باتن
پین شماره 2 به ترانزیستور NPN2222
پینهای 5،6،7 به مجموعه دیودهای Charlieplexing
پین Vcc (پین 8) به 5v
نکته: شماره پینهای ATTINY داخل شکل صرفاً برای راهنمایی قرار داده شدهاند و روی خود قطعه نوشته نشدهاند، بنابراین سعی کنید از روی نیمدایره بالای قطعه، نحوه قرارگیری آن را درک کنید تا اتصالات را متوجه شوید. همچنین سیمهای قرمزرنگ داخل شکل، سیمهای 220v هستند.
برای درک بهتر، در شکل زیر مشخصات پینهای ATTINY85، رله و ترانزیستور NPN2222 را مشاهده میکنید.
ابتدا مدار نمونه اولیه را مطابق شکل زیر میبندیم و برنامه نوشته شده در گام بعدی را اجرا میکنیم. بعد از نوشتن و دیباگ آن، کد را روی ATTINY85 بهوسیله Arduino Nano پروگرام میکنیم.
مدار پروگرام کردن بهصورت زیر است:
کد پروگرام کردن ATTINY85 را در این لینک برایتان قرار دادهایم.
سپس با استفاده از قطعات، مطابق شکل زیر روی PCB Universal قطعات را قرار داده و آنها را لحیم میکنیم. مراحل ساخت این بخش را به ترتیب در شکلهای زیر مشخص کردهایم که ابتدا محل قرارگیری هرکدام را ترسیم نمایید، آنها را روی برد قرار دهید و پس از جاگیری درست آنها را لحیم نمایید.
از هر میکروکنترلر آردوینو میتوان استفاده کرد. در این پروژه ما برای ساخت بهتر نمونه اولیه از آردوینو نانو استفاده کردیم. ابتدا کتابخانه ATTINY85 را دانلود و بر روی IDE نصب کنید.
1- ابتدا شماره پینهای متصل به ATTINY85 را مشخص میکنیم، سپس وضعیت اولیه دکمه، میزان تأخیر، فلگ، تعداد ساعات را مشخص میکنیم.
2- در بخش بعدی، توابعی را تعریف میکنیم که حالتهای مختلفی که در جدول بالاتر بررسی کردیم را برای ما پیادهسازی کند. در اولین تابع، همه LEDها روشن و در توابع بعدی، فقط یکی از LEDها روشن خواهد بود. دلیل این کار را در تابع بعدی میبینیم که با تعریف یک flag، حالتبندیهای منظمی را تشکیل میدهیم.
3- تابع select_hrs()، وضعیت دکمه را میخواند و آن را داخل یک متغیر میریزد. در این صورت، با هر بار فشار دادن دکمه، وضعیت LEDها تغییر پیدا میکند و اگر بیش از 4 بار دکمه فشار داده شود، به حالت اول برمیگردد. سپس بر اساس فلگ مشخص شده، تابع تعیین وضعیت LED اجرا میشود.
4- تابع قبلی برای حالتی بود که دکمه را (بیش از 5 ثانیه) نگه نداشته باشید. درصورتیکه بیش از 5 ثانیه دکمه را نگه دارید، فلگ دیگری (select_hrs) را تغییر میدهد که حالتبندی دیگری را در استفاده از آن در تابع loop() مشخص میکند.
5- در تابع setup()، پینهای متصل به پوش باتن و رله را بهعنوان ورودی انتخاب میکنیم.
6- در تابع loop()، تا زمانی که فلگ select_hrs برابر مقدار پیشفرض (صفر) باشد تابع select_hrs() را فراخوانی میکنیم و این تابع همانطور که گفته شد با دکمه وضعیت LEDها را تغییر میدهد. زمانی که فلگ select_hrs مقدارش تغییر کند، از حلقه بیرونآمده و با صفر نبودن فلگ، رله را HIGH میکند.
7- درصورتیکه تعداد ساعات کمتر از یک ساعت باشد، تابع وضعیت LEDها را فعال میکند، سپس همه را خاموش میکند و به تعداد ساعات یکی اضافه میکند. سپس (در صورت صفر نبودن) مقدار فلگ را یکی کاهش میدهد و در آخر اگر فلگ صفر باشد، رله را LOW میکند و فلگ select_hrs را به حالت اول برمیگرداند.
نکته: برای تست کدهای پرینت متغیرها در سریال مانیتور قرار گرفته است. در فایل کد بهصورت کامنت درآمدهاند؛ اما برای تست آنها را از حالت کامنت درآوردید و بررسیهای لازم را انجام دهید، سپس در آخر آن بخشها را دوباره به فرم کامنت درآورید.
1- ابتدا برای تست تایمر را بر روی 10Secs تنظیم کنید.
2- سپس وقتی بهدرستی کار کرد، متغیر را بر روی 3600secs و فرکانس داخلی را روی 1MHz تنظیم کنید.
برای ساخت کیس از کیس یک آداپتور قدیمی خراب استفاده کنید.
همانطور که در شکل زیر مشاهده میکنید یک شکاف در کیس آداپتور ایجاد کنید و به فرم نشاندادهشده، فضای خالی را پر کنید و با چسب حرارتی آن را بچسبانید.
نکته: اگر اولینبار است که این کار را انجام میدهید، طرف دیگر کیس را چسب نزنید تا برای تست و تغییر ساختار و همچنین کد، راحتتر تغییرات را اعمال کنید.
ابتدا 4 تا LED را به فرم Charlieplex روی PCB لحیم کنید.
بر اساس فاصله بین هر LED، 4 سوراخ بر روی کیس با استفاده از هویه ایجاد کنید.
سپس مطابق شکل زیر 4 تا LED را با چسب حرارتی بچسبانید.
برای پوش باتن سوراخ ایجاد کنید و آن را سر جایش بهطوریکه سر پینهایش بیرون باشد با چسب حرارتی بچسبانید. دقت کنید که 4 عدد LED و پوش باتن باید جلوی کیس قرار بگیرند.
پینهای ATTINY85 را به LED ها،ترانزیستور و رله را به مقاومتها و دیودها مطابق دیاگرام مدار متصل کنید.
دقت کنید که در این مرحله سیمهای 220v را متصل نکنید!
برای تغذیه رسانی به مدار از یک شارژر ارزان قدیمی موبایل کوچک استفاده کنید که بتوانید همه وسایل را در کیس قرار دهید.
از تمامی اتصالات DC مطمئن شوید تا بتوانیم همه قطعات را داخل کیس قرار دهید.
از مولتی متر برای بررسی صحیح بودن همه اتصالات استفاده کنید تا از نبود اتصال کوتاه مطمئن شوید.
در تصاویر زیر، نحوه سرهم کردن مرحلهبهمرحله نمایشدادهشده است.
اتصالات را به فرم زیر انجام دهید:
دو سیم 220v به ورودی آداپتور 5v
سیم آبیرنگ ac به خروجی
سیم قرمزرنگ ac به پایه مشترک رله
سیم قرمز دیگر رله به سوکت خروجی
قبل از بستهشدن کیس، همه چیز را تست کرده و متغیر را روی 3600secs تنظیم کنید و کیس را ببندید.
تبریک میگویم، شارژر تایمر دار شما آماده استفاده است!
در این مقاله صفر تا صد ساخت یک شارژر تایمردار را برای گوشی شرح دادیم. درست است که در نسل جدید گوشیهای هوشمند، شارژرهای هوشمندی وجود دارند که به صورت خودکار جریان ورودی به گوشی را پس از شارژ شدن کامل قطع میکند، اما درست کردن صفر تا صدی یکی از این شارژرها برای عاشقان الکترونیک خالی از لطف نیست و میتوانید از تجربهای که در این پروژه به دست آوردهاید در سایر پروژههای مشابه استفاده کنید. اکثر قطعههای مورد نیاز این پروژه را میتوانید از فروشگاه جم ترونیک تهیه کنید.
اگر سوالی درباره این پروژه دارید زیر همین پست از ما بپرسید.
سایر مقالههای آموزشی ما را میتوانید در مجله جم ترونیک مطالعه کنید.

نویز برق یکی از مشکلات رایج در مدارهای الکترونیکی است که میتواند به شکل صدای اضافی در سیستمهای صوتی، اختلال در عملکرد سنسورها، نوسان سیگنال، خطا در تجهیزات دیجیتال یا حتی عملکرد نامنظم یک…

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