جدول المحتويات:
- الخطوة 1: تقليل جهد الإمداد باستخدام بطارية LiPo
- الخطوة الثانية: تقليل ساعة وحدة المعالجة المركزية
- الخطوة 3: قم بإزالة مؤشر الطاقة الموجود على اللوحة ومنظم الطاقة
- الخطوة 4: فصل USB D- Pullup Resistor (الذي يحمل علامة 152) من 5 فولت (VCC) وتوصيله بـ USB V +
- الخطوة 5: استخدم النوم بدلاً من التأخير ()
- الخطوة 6: تعديل الصمامات
- الخطوة 7: مزيد من المعلومات
فيديو: تقليل استهلاك طاقة البطارية لـ Digispark ATtiny85: 7 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:36
أو: تشغيل Arduino بخلية عملة 2032 لمدة عامين.
باستخدام لوحة Digispark Arduino الخاصة بك خارج الصندوق مع برنامج Arduino ، فإنها تسحب 20 مللي أمبير عند 5 فولت.
مع بنك طاقة بقوة 5 فولت بقوة 2000 مللي أمبير ، سوف يعمل لمدة 4 أيام فقط.
الخطوة 1: تقليل جهد الإمداد باستخدام بطارية LiPo
باستخدام بطارية LiPo بقوة 3.7 فولت كمصدر إمداد ، فإن لوحة Digispark لا تستهلك سوى 13 مللي أمبير.
ببطارية 2000 مللي أمبير في الساعة تعمل لمدة 6 أيام.
الخطوة الثانية: تقليل ساعة وحدة المعالجة المركزية
إذا كنت لا تستخدم اتصال USB أو الرياضيات الثقيلة أو الاقتراع السريع في برنامجك ، فقم بتقليل سرعة الساعة. على سبيل المثال مكتبة استقبال الأشعة تحت الحمراء الثقيلة IRMP تعمل بشكل جيد عند 8 ميجا هرتز.
عند 1 ميجاهرتز ، تستقطب Digispark 6 مللي أمبير. ببطارية 2000 مللي أمبير في الساعة تعمل لمدة 14 يومًا.
الخطوة 3: قم بإزالة مؤشر الطاقة الموجود على اللوحة ومنظم الطاقة
قم بتعطيل مؤشر LED للطاقة عن طريق كسر السلك النحاسي الذي يربط مؤشر الطاقة LED بالصمام الثنائي بسكين أو إزالة / تعطيل المقاوم 102.
نظرًا لأنك تستخدم بطارية LiPo الآن ، يمكنك أيضًا إزالة IC منظم الطاقة الموجود على اللوحة. قم أولاً برفع المسامير الخارجية بمساعدة مكواة لحام ودبوس. ثم قم بتوصيل الموصل الكبير وإزالة المنظم. بالنسبة للمنظمات الصغيرة ، استخدم الكثير من اللحام وقم بتسخين جميع المسامير الثلاثة معًا ، ثم قم بإزالتها.
عند 1 ميجاهرتز و 3.8 فولت ، تسحب Digispark الآن 4.3 مللي أمبير. ببطارية 2000 مللي أمبير في الساعة تعمل لمدة 19 يومًا.
الخطوة 4: فصل USB D- Pullup Resistor (الذي يحمل علامة 152) من 5 فولت (VCC) وتوصيله بـ USB V +
هذا التعديل متوافق مع إصدارات all1.x من أداة تحميل إقلاع النواة الصغيرة. إذا كان لديك بالفعل محمل إقلاع 2.x جديد على اللوحة الخاصة بك ، فيجب عليك الترقية إلى أحد الإصدارات 2.5 مع "activePullup" في اسمه. أسهل طريقة للقيام بذلك ، هي تثبيت حزمة لوحة digispark الجديدة وحرق أداة تحميل التشغيل بالإصدار الموصى به (!!! ليس الإصدار الافتراضي أو العدواني !!!).
قم بكسر السلك النحاسي الموجود على جانب المقاوم الذي يشير إلى ATtiny ، مما يؤدي إلى تعطيل واجهة USB وبالتالي إمكانية برمجة لوحة Digispark عبر USB. لتمكينه مرة أخرى ، مع الحفاظ على الطاقة ، قم بتوصيل المقاوم (الذي يحمل علامة 152) مباشرة بـ USB V + الذي يتوفر بسهولة في الجانب الخارجي من الصمام الثنائي shottky. يمكن العثور على الصمام الثنائي وجوانبه الصحيحة باستخدام اختبار الاستمرارية. يتم توصيل جانب واحد من هذا الصمام الثنائي بالدبوس 8 من ATtiny (VCC) و Digispark 5V. الجانب الآخر متصل بـ USB V +. يتم الآن تنشيط المقاوم سحب USB فقط إذا كانت لوحة Digispark متصلة بـ USB على سبيل المثال أثناء البرمجة.
تم توثيق الخطوتين الأخيرتين هنا أيضًا.
عند 1 ميجاهرتز و 3.8 فولت ، تسحب Digispark الآن 3 مللي أمبير. ببطارية 2000 مللي أمبير في الساعة تعمل لمدة 28 يومًا.
الخطوة 5: استخدم النوم بدلاً من التأخير ()
بدلاً من التأخيرات الطويلة ، يمكنك استخدام سكون وحدة المعالجة المركزية الموفر للطاقة. يمكن أن يستمر النوم من 15 مللي ثانية إلى 8 ثوانٍ في خطوات من 15 و 30 و 60 و 120 و 250 و 500 مللي ثانية و 1 و 2 و 4 و 8 ثوانٍ.
نظرًا لأن وقت بدء التشغيل من وضع السكون يبلغ 65 مللي ثانية مع إعدادات فتيل المصنع الرقمي ، يمكن فقط استبدال التأخيرات التي تزيد عن 80 مللي ثانية بالنوم.
أثناء النوم ، رسم Digispark الخاص بك 27 µA. بخلية زر 200 مللي أمبير في الساعة 2032 ستظل سكون لمدة 10 أشهر.
لكي تكون صحيحًا ، يجب أن يستيقظ Digispark كل 8 ثوانٍ على الأقل ، ويعمل لمدة 65 مللي ثانية على الأقل ويسحب حوالي 2 مللي أمبير من التيار. هذا يؤدي إلى تيار متوسط 42 µA و 6 أشهر. في هذا السيناريو ، لا يحدث أي فرق تقريبًا إذا كان برنامجك يعمل لمدة 10 مللي ثانية (كل 8 ثوانٍ).
رمز استخدام النوم هو:
# تضمين # تضمين uint16_t sNumberOfSleeps = 0 ؛ مللي ثانية طويلة غير موقعة خارجية متقلبة ؛ إعداد باطل () {sleep_enable () ؛ set_sleep_mode (SLEEP_MODE_PWR_DOWN) ، // وضع السكون الأعمق …} حلقة فارغة () {… sleepWithWatchdog (WDTO_250MS ، صحيح) ؛ // sleep لمدة 250 مللي ثانية … sleepWithWatchdog (WDTO_2S ، صحيح) ؛ // sleep لمدة ثانيتين…} / * * aWatchdogPrescaler يمكن أن يكون من 0 (15 مللي ثانية) إلى 3 (120 مللي ثانية) ، 4 (250 مللي ثانية) حتى 9 (8000 مللي ثانية) * / uint16_t computeSleepMillis (uint8_t aWatchdogPrescaler) {uint16_t tResultMillis = 8000 ؛ لـ (uint8_t i = 0 ؛ أحفظ 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 Enable ADCSRA | = ADEN ؛ / * * نظرًا لأنه قد يتم تعطيل ساعة المؤقت ، قم بضبط المللي فقط إذا لم يتم النوم في وضع IDLE (SM2 … 0 بت هي 000) * / إذا (aAdjustMillis && (MCUCR & ((_BV (SM1) | _BV (SM0)))))! = 0) {millis_timer_millis + = computeSleepMillis (aWatchdogPrescaler) ؛}} / * هذه المقاطعة تستيقظ وحدة المعالجة المركزية من وضع السكون * / ISR (WDT_vect) {sNumberOfSleeps ++ ؛}
الخطوة 6: تعديل الصمامات
يتم رسم 22 مللي أمبير من 27 مللي أمبير بواسطة BOD (اكتشاف BrownOutDetection / انخفاض الجهد). لا يمكن تعطيل BOD إلا عن طريق إعادة برمجة الصمامات ، والتي لا يمكن القيام بها إلا باستخدام مبرمج ISP. باستخدام هذا البرنامج النصي ، يمكنك تقليل التيار إلى 5.5 µA وتقليل وقت بدء التشغيل من وضع السكون إلى 4 مللي ثانية.
يتم رسم 5 من 5.5 A المتبقية بواسطة عداد المراقبة النشط. إذا كان بإمكانك استخدام عمليات إعادة التعيين الخارجية للاستيقاظ ، فيمكن أن ينخفض الاستهلاك الحالي إلى 0.3 A كما هو مذكور في ورقة البيانات.
إذا لم تكن قادرًا على الوصول إلى هذه القيمة ، فقد يكون السبب هو أن التيار العكسي للديود شوتكي بين VCC وسحب السحب مرتفع جدًا. ضع في اعتبارك أن المقاوم 12 Mohm يسحب أيضًا 0.3 A عند 3.7 فولت.
ينتج عن هذا متوسط استهلاك حالي يبلغ 9 A (2.5 سنة بخلية زر 200 مللي أمبير في الساعة 2032) إذا كنت على سبيل المثال معالجة البيانات كل 8 ثوانٍ لمدة 3 مللي ثانية كما هو الحال هنا.
الخطوة 7: مزيد من المعلومات
الرسم الحالي للوحة Digispark.
المشروع باستخدام هذه التعليمات.
موصى به:
طاقة البطارية الوهمية: 6 خطوات (بالصور)
طاقة البطارية الوهمية: Heyo ، استبدلت ابنتي بعض أجهزة الصوت وانتهى بها الأمر بميكروفون مكثف ، والذي يبدو رائعًا جدًا. المشكلة هي أنها تحتاج إلى طاقة وهمية ، ولم يكن هناك أي شيء متوفر على أي من معداتها. هناك الكثير من مصادر الطاقة الوهمية
Raspberry Pi في البرية! الفاصل الزمني الممتد مع طاقة البطارية: 10 خطوات (بالصور)
Raspberry Pi في البرية! Extended Timelapse مع طاقة البطارية: الدافع: أردت استخدام كاميرا Raspberry Pi التي تعمل بالبطارية لالتقاط صور مرة واحدة في اليوم في الهواء الطلق لإنشاء مقاطع فيديو طويلة المدى. تطبيقي الخاص هو تسجيل نمو نبات الغطاء الأرضي في الربيع والصيف القادمين. التحدي: D
تقليل استهلاك طاقة الترحيل - التثبيت مقابل تيار الالتقاط: 3 خطوات
تقليل استهلاك طاقة الترحيل - التثبيت مقابل تيار الالتقاط: تتطلب معظم المرحلات تيارًا أكبر للتشغيل في البداية أكثر مما هو مطلوب لتثبيت المرحل بمجرد إغلاق جهات الاتصال. يمكن أن يكون التيار المطلوب لعقد المرحل على (القابضة الحالية) أقل بكثير من التيار الأولي المطلوب لتشغيل
كيف تقيس بشكل صحيح استهلاك الطاقة لوحدات الاتصال اللاسلكي في عصر انخفاض استهلاك الطاقة؟: 6 خطوات
كيف يمكن قياس استهلاك الطاقة بشكل صحيح لوحدات الاتصال اللاسلكي في عصر انخفاض استهلاك الطاقة ؟: يعد استهلاك الطاقة المنخفض مفهومًا مهمًا للغاية في إنترنت الأشياء. تحتاج معظم عقد إنترنت الأشياء إلى أن تعمل بالبطاريات. فقط من خلال قياس استهلاك الطاقة للوحدة اللاسلكية بشكل صحيح ، يمكننا تقدير مقدار البطارية بدقة
تحويل Belkin FM Transmitter من طاقة البطارية إلى طاقة السيارة: 8 خطوات
تحويل Belkin FM Transmitter من طاقة البطارية إلى طاقة السيارة: لدي أحد أجهزة إرسال Belkin Tunecast FM الأصلية لجهاز iPod الخاص بي. بعد أن أطعمته زوجًا واحدًا من بطاريات AA ، قررت أنني بحاجة إلى طريقة أفضل. إذن ، إليك كيفية تحويل شاحن الهاتف الخلوي ولاعة السجائر في السيارة إلى طريقة لتشغيل جهازي