فهرست مطالب:
- مرحله 1: کاهش ولتاژ منبع تغذیه با استفاده از باتری LiPo
- مرحله 2: ساعت CPU را کاهش دهید
- مرحله 3: LED Power Power Power Regulator و پاور را بردارید
- مرحله 4: قطع اتصال USB D- Pullup Resistor (با علامت 152) از 5 ولت (VCC) و اتصال آن به USB V+
- مرحله 5: از Sleep به جای Delay () استفاده کنید
- مرحله 6: فیوزها را اصلاح کنید
- مرحله 7: اطلاعات بیشتر
تصویری: کاهش مصرف باتری برای Digispark ATtiny85: 7 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:51
یا: اجرای آردوینو با سلول سکه 2032 به مدت 2 سال.
با استفاده از برد Digispark Arduino خارج از جعبه با برنامه آردوینو ، 20 میلی آمپر در 5 ولت می گیرد.
با یک پاوربانک 5 ولتی 2000 میلی آمپر ساعتی تنها 4 روز کار می کند.
مرحله 1: کاهش ولتاژ منبع تغذیه با استفاده از باتری LiPo
با استفاده از باتری LiPo با ولتاژ 3.7 ولت ، منبع Digispark شما فقط 13 میلی آمپر مصرف می کند.
با باتری 2000 میلی آمپر ساعت به مدت 6 روز کار می کند.
مرحله 2: ساعت CPU را کاهش دهید
اگر در برنامه خود از اتصال USB ، ریاضیات سنگین یا نظرسنجی سریع استفاده نمی کنید ، سرعت ساعت را کاهش دهید. به عنوان مثال. IRMP کتابخانه گیرنده مادون قرمز رای گیری بسیار خوب در 8 مگاهرتز اجرا می شود.
در 1 مگاهرتز Digispark شما 6 میلی آمپر می گیرد. با باتری 2000 میلی آمپر ساعت به مدت 14 روز کار می کند.
مرحله 3: LED Power Power Power Regulator و پاور را بردارید
با شکستن سیم مسی که LED قدرت را به دیود با چاقو متصل می کند ، LED قدرت را غیرفعال کنید یا مقاومت 102 را بردارید / غیرفعال کنید.
از آنجا که در حال حاضر از باتری LiPo استفاده می کنید ، می توانید IC تنظیم کننده برق داخلی را نیز حذف کنید. ابتدا پین های بیرونی را با کمک آهن لحیم کاری و سنجاق بلند کنید. سپس کانکتور بزرگ را لحیم کرده و تنظیم کننده را بردارید. برای تنظیم کننده های کوچک ، از لحیم کاری بسیار زیاد استفاده کنید و هر 3 پین را با هم گرم کنید ، سپس آن را بردارید.
Digispark شما در 1 مگاهرتز و 3.8 ولت اکنون 4.3 میلی آمپر می گیرد. با باتری 2000 میلی آمپر ساعت به مدت 19 روز کار می کند.
مرحله 4: قطع اتصال USB D- Pullup Resistor (با علامت 152) از 5 ولت (VCC) و اتصال آن به USB V+
این اصلاح با نسخه های all1.x بوت لودر micronucleus سازگار است. اگر قبلاً یک بوت لودر 2.x جدید در برد خود دارید ، باید به یکی از نسخه های 2.5 با "activePullup" به نام آن ارتقا دهید. ساده ترین راه برای انجام این کار ، نصب بسته هیئت مدیره digispark جدید و سوزاندن بوت لودر با نسخه توصیه شده (نه پیش فرض یا تهاجمی !!!) است.
سیم مسی را در کنار مقاومت که به ATtiny اشاره می کند بشکنید. این رابط USB را غیرفعال می کند و به نوبه خود امکان برنامه ریزی برد Digispark از طریق USB را دارد. برای فعال کردن مجدد ، اما همچنان در مصرف برق ، مقاومت (با علامت 152) را مستقیماً به USB V+ وصل کنید که به راحتی در قسمت بیرونی دیود شاتک موجود است. با استفاده از دستگاه تست پیوستگی ، دیود و طرفهای صحیح آن را می توان یافت. یک طرف این دیود به پین 8 ATtiny (VCC) و Digispark 5V متصل است. طرف دیگر به USB V+متصل است. در حال حاضر مقاومت خروجی USB فقط در صورتی فعال می شود که برد Digispark به USB وصل شده باشد. در حین برنامه نویسی
2 مرحله اخیر نیز در اینجا مستند شده است.
Digispark شما در 1 مگاهرتز و 3.8 ولت 3 میلی آمپر می گیرد. با باتری 2000 میلی آمپر ساعتی به مدت 28 روز کار می کند.
مرحله 5: از Sleep به جای Delay () استفاده کنید
به جای تأخیرهای طولانی می توانید از خواب CPU صرفه جویی در مصرف برق استفاده کنید. خواب می تواند از 15 میلی ثانیه تا 8 ثانیه در مراحل 15 ، 30 ، 60 ، 120 ، 250 ، 500 میلی ثانیه و 1 ، 2 ، 4 ، 8 ثانیه طول بکشد.
از آنجا که زمان راه اندازی از خواب 65 میلی ثانیه با تنظیمات فیوز دیگ اسپارک کارخانه است ، فقط تاخیرهای بزرگتر از 80 میلی ثانیه را می توان با خواب جایگزین کرد.
در هنگام خواب Digispark شما 27 میکرو آمپر می کشد. با سلول دکمه ای 200 میلی آمپری 2032 ، 10 ماه می خوابد.
برای درست بودن ، Digispark باید حداقل هر 8 ثانیه از خواب بیدار شود ، حداقل 65 میلی ثانیه کار کند و جریان 2 میلی آمپر را بکشد. این منجر به جریان متوسط 42 میکرو آمپر و 6 ماه می شود. در این سناریو تقریباً هیچ فرقی نمی کند که برنامه شما به مدت 10 میلی ثانیه (هر 8 ثانیه) اجرا شود.
کد استفاده از خواب عبارت است از:
#شامل #شامل #فرار uint16_t sNumberOfSleeps = 0 ؛ خارجی فرار بدون علامت طولانی millis_timer_millis؛ void setup () {sleep_enable ()؛ set_sleep_mode (SLEEP_MODE_PWR_DOWN) ؛ // عمیق ترین حالت خواب…} حلقه خالی () {… sleepWithWatchdog (WDTO_250MS ، درست) ؛ // خواب برای 250 میلی ثانیه… sleepWithWatchdog (WDTO_2S ، درست) ؛ // خواب 2 ثانیه…}/ * * aWatchdogPrescaler می تواند 0 (15 میلی ثانیه) تا 3 (120 میلی ثانیه) ، 4 (250 میلی ثانیه) تا 9 (8000 میلی ثانیه) */ uint16_t computeSleepMillis (uint8_t aWatchdogPrescaler) {uint16_t tResultMillis = 8000؛ for (uint8_t i = 0؛ i 200 uA // صرفه جویی می کند // از wdt_enable () استفاده کنید زیرا نشان می دهد که بیت WDP3 در بیت 5 ثبت WDTCR wdt_enable (aWatchdogPrescaler) ؛ WDTCR | = _BV (WDIE) | _BV (WDIF) ؛ // وقفه Watchdog فعال + تنظیم مجدد پرچم وقفه -> نیاز به ISR (WDT_vect) sei ()؛ // فعال کردن وقفه های sleep_cpu ()؛ // // وقفه نگهبان ما را از خواب بیدار می کند wdt_disable ()؛ // زیرا وقفه بعدی در غیر این صورت انجام می شود منجر به بازنشانی شود ، زیرا wdt_enable () تنظیم مجدد WDE / Watchdog System Reset را فعال می کند ADCSRA | = ADEN ؛ / * * از آنجایی که ساعت تایمر ممکن است غیرفعال باشد ، تنها درصورتی که در حالت IDLE نخوابید میلی ثانیه تنظیم کنید (SM2… 0 بیت 000 است) * / اگر (aAdjustMillis && (MCUCR & ((_BV (SM1) | _BV (SM0))))! = 0) {millis_timer_millis += computeSleepMillis (aWatchdogPrescaler)؛}} / * * این وقفه cpu را از خواب بیدار می کند * / ISR (WDT_vect) {sNumberOfSleeps ++؛}
مرحله 6: فیوزها را اصلاح کنید
22 میلی آمپر از 27 میلی آمپر توسط BOD (تشخیص BrownOutDetection/undervoltage detection) ترسیم می شود. BOD را فقط می توان با برنامه ریزی مجدد فیوزها غیرفعال کرد ، که فقط با برنامه نویس ISP قابل انجام است. با استفاده از این اسکریپت می توانید جریان را تا 5.5 µA کاهش دهید و همچنین زمان راه اندازی از خواب را به 4 میلی ثانیه کاهش دهید.
5 عدد از 5.5 µA باقیمانده توسط شمارنده فعال نگهبان ترسیم می شود. اگر می توانید از تنظیمات مجدد خارجی برای بیدار شدن استفاده کنید ، میزان مصرف فعلی همانطور که در برگه داده ذکر شده است به 0.3 µA می رسد.
اگر نمی توانید به این مقدار برسید ، دلیل آن می تواند این باشد که جریان معکوس دیود شاتکی بین VCC و pullup بسیار زیاد است. به خاطر داشته باشید که یک مقاومت 12 MOhm نیز 0.3 میکرو آمپر را در 3.7 ولت می گیرد.
این امر به طور متوسط مصرف فعلی 9 میکرو آمپر (2.5 سال با سلول دکمه ای 200 میلی آمپر ساعتی 2032) را به دنبال دارد ، در صورتی که می خواهید. مانند اینجا ، هر 8 ثانیه داده ها را به مدت 3 میلی ثانیه پردازش کنید.
مرحله 7: اطلاعات بیشتر
نقاشی فعلی تخته Digispark.
پروژه را با استفاده از این دستورالعمل ها انجام دهید.
توصیه شده:
صرفه جویی در باتری ، سوئیچ برش محافظ تخلیه با ATtiny85 برای ماشین اسید سربی یا باتری لیپو: 6 مرحله
صرفه جویی در باتری ، سوئیچ برش محافظ تخلیه با ATtiny85 برای ماشین اسید سربی یا باتری لیپو: از آنجایی که من برای ماشین ها و سیستم های خورشیدی خود به چندین محافظ باتری نیاز دارم ، 49 دلار برای آنها گران قیمت بودم. آنها همچنین از قدرت بیش از حد با 6 میلی آمپر استفاده می کنند. هیچ دستورالعملی در مورد موضوع پیدا نکردم. بنابراین من خودم که 2 میلی آمپر می گیرد تهیه کردم. چگونه
جوشکار نقطه ای ساده با استفاده از باتری ماشین برای ساخت بسته باتری لیتیوم یون: 6 مرحله
جوشکار نقطه ای ساده با استفاده از باتری ماشین برای ساخت بسته باتری لیتیوم یون: به این ترتیب من یک جوشکار نقطه ای با باتری ماشین ساختم که برای ساخت بسته های باتری لیتیوم یون (Li-ion) مفید است. من موفق به ساخت بسته 3S10P و بسیاری از جوش ها با این جوشکار نقطه ای شده ام. این جوشکار نقطه ای شامل ، Functional Block Dia
کاهش مصرف برق رله - نگه داشتن در مقابل جریان وانت: 3 مرحله
کاهش مصرف برق رله - نگه داشتن در مقابل جریان وانت: اکثر رله ها برای فعال شدن در ابتدا نیاز به جریان بیشتری نسبت به نگه داشتن رله پس از بسته شدن مخاطبین دارند. جریان مورد نیاز برای نگه داشتن رله (جریان نگهدارنده) می تواند به میزان قابل توجهی کمتر از جریان اولیه مورد نیاز برای فعال شدن باشد
تعیین متوسط مصرف فعلی دستگاه متناوب کم مصرف: 4 مرحله
تعیین میانگین مصرف فعلی دستگاه متناوب کم مصرف: مقدمه از روی کنجکاوی می خواستم بدانم که باتری ها در سنسور دمای راه دور من چقدر می توانند دوام بیاورند. دو سلول AA به صورت سری طول می کشد ، اما کمک چندانی به قرار دادن آمپرمتر در خط و تماشای صفحه نمایش نمی کند زیرا برق مصرف می شود
چگونه می توان مصرف برق ماژول های ارتباطات بی سیم را در دوران مصرف کم مصرف به درستی اندازه گیری کرد؟: 6 مرحله
چگونه می توان میزان مصرف برق ماژول های ارتباطات بی سیم را در دوران مصرف کم انرژی اندازه گیری کرد ؟: مصرف کم برق یک مفهوم بسیار مهم در اینترنت اشیا است. اکثر گره های اینترنت اشیا نیاز به تغذیه باتری دارند. تنها با اندازه گیری صحیح مصرف برق ماژول بی سیم ، می توان میزان باتری را به طور دقیق تخمین زد