תוכן עניינים:
- שלב 1: שינוי מפרויקט הבסיס
- שלב 2: V0.2 של הלוח
- שלב 3: לוח לחם: בקר תצוגת תווים I2c מורחב
- שלב 4: לוח לחם: תצוגת תווים עם I2c משולב
- שלב 5: מימוש
- שלב 6: הרחבה
- שלב 7: רשימת חלקים
- שלב 8: לוח: אפס, לחצן Gnd E לבחירת סוללה
- שלב 9: לוח: סיכות I2c ואספקת חשמל
- שלב 10: לוח: תרמיסטור ומדידת מתח
- שלב 11: לוח: התנגדות למדידת מתח
- שלב 12: שלב הלחמה: כל הסיכות
- שלב 13: שלבי הלחמה: הנגד הנפתח והתרמיסטור
- שלב 14: שלבי הלחמה: MOSFET, התנגדות לבדיקת מתח
- שלב 15: קוד
- שלב 16: תוצאה לאחר ההרכבה
- שלב 17: ראשית בחר סוג סוללה
- שלב 18: התחל פריקה
- שלב 19: חריגים: סוללה הוסרה
- שלב 20: חריגים: התראת טמפרטורה
- שלב 21: בדוק את העוצמה
- שלב 22: חבילה
וִידֵאוֹ: בודק סוללות עם טמפרטורה ובחירת סוללה: 23 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
בודק קיבולת סוללה.
עם מכשיר זה אתה יכול לבדוק את הכמות של סוללת 18650, חומצה ואחרות (הסוללה הגדולה ביותר שבדקתי היא סוללת 6v חומצה 4, 2A). תוצאת הבדיקה היא במיליאמפר/שעה.
אני יוצר את המכשיר הזה כי אני צריך את זה כדי לבדוק קיבולת של סוללת סין מזויפת.
ליתר ביטחון, הוספתי, באמצעות תרמיסטור, את הטמפרטורה של התנגדות החשמל והסוללה למניעת התחממות רבה מדי, בעזרת הטריק הזה אני יכול לבדוק סוללת חומצה 6v ללא אש הלוח (במחזור של פריקה זמן מה ללכת לנגד כוח חם. והמכשיר ממתין 20 שניות כדי להפחית את הטמפרטורה).
בחרתי בקר מיקרו קטן atmega328 תואם ננו (eBay).
כל הקוד נמצא כאן.
שלב 1: שינוי מפרויקט הבסיס
גנבתי את הרעיון מהפרויקט של OpenGreenEnergy, ואני עשיתי מחדש את הלוח כדי להוסיף תכונות, אז עכשיו נהיה כללי יותר.
v0.1
- VCC של Arduino מחושב כעת באופן אוטומטי;
- נוספה משתנה לשינוי ההגדרה בצורה נוחה יותר.
- נוסף אחוז הפריקה
- נוסף טמפרטורה של סוללה ונגד כוח
v0.2
- נוספה אפשרות לבחירת סוללה
- נוצר לוח אב טיפוס (תראה סכמטי), עם המסך, הכפתור והרמקול מחוץ ללוח כי בעתיד ארצה ליצור חבילה.
- נוסף ניהול של מגבלת הטמפרטורה לנגד החשמל, כך שאוכל לחסום את התהליך כאשר הטמפרטורה עולה מעל 70 ° (מעל הורדת הנגד של כוח הטמפרטורה).
v0.3
בקרוב לוח משירות זה
שלב 2: V0.2 של הלוח
ב- v0.2 כדי לתמוך בסוגים שונים של סוללות, יצרתי מבנה שחייבים למלא אותו בשם הסוללה, מתח מינימלי ומתח מרבי (אני צריך עזרה למלא אותו: P).
// מבנה מבנה הקלדה של סוללה BatteryType {שם שם [10]; לצוף maxVolt; float minVolt; }; #define BATTERY_TYPE_NUMBER 4 BatteryType batteryTypes [BATTERY_TYPE_NUMBER] = {{"18650", 4.3, 2.9}, {"17550", 4.3, 2.9}, {"14500", 4.3, 2.75}, {"6v Acid", 6.50, 5.91 }};
עכשיו אני משתמש בקבוצה של נגדים של 10k למפריד המתח כדי לקרוא טמפרטורה כפולה של קלט אנלוגי. אם אתה רוצה תמיכה במתח שינוי, עליך לשנות ערך זה (הסבר טוב יותר בהמשך):
// עמידות במתח הסוללה
#הגדר BAT_RES_VALUE_GND 10.0 #הגדר BAT_RES_VALUE_VCC 10.0 // התנגדות מתח נגדי כוח #הגדר RES_RES_VALUE_GND 10.0 #הגדר RES_RES_VALUE_VCC 10.0
אם אינך משתמש בטרמיסטור, הגדר זאת כ- false:
#הגדר USING_BATTERY_TERMISTOR נכון
#הגדר USING_RESISTO_TERMISTOR נכון
אם אתה משתמש בתצוגת i2c אחרת, עליך לכתוב מחדש את השיטה הבאה:
צייר חלל (חלל)
בפרויקט תוכלו למצוא סכימות, תמונות ועוד.
שלב 3: לוח לחם: בקר תצוגת תווים I2c מורחב
השתמשתי בתצוגת תווים כללית ובניתי את בקר i2c והשתמשתי בו עם הספרייה המותאמת אישית שלי.
אבל אם אתה רוצה, אתה יכול לקחת בקר i2c רגיל (פחות מ 1 €) עם ספרייה סטנדרטית, הקוד נשאר זהה. כל קוד התצוגה הוא בפונקציית צייר, כך שתוכל לשנות זאת מבלי לשנות דברים אחרים.
יותר טוב להסביר כאן.
שלב 4: לוח לחם: תצוגת תווים עם I2c משולב
אותה סכמה ללא בקרת i2c מורחבת.
שלב 5: מימוש
למדידת מתח אנו משתמשים בעקרון מחלק מתח (מידע נוסף בויקיפדיה).
במילים פשוטות, קוד זה הוא גורם המכפיל למדידת מתח הסוללה.
batResValueGnd / (batResValueVolt + batResValueGnd)
הכנסתי את 2 ההתנגדויות של הערך batResValueVolt ו- batResValueGnd לאחר ולפני חוט הקריאה האנלוגי.
batVolt = (sample1 / (1023.0 - ((BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)) * 1023.0))) * vcc;
מדגם 1 הוא הקריאות האנלוגיות הממוצעות;
מתח ארדואינו הפניה vcc;
1023.0 הוא הערך המקסימלי של התייחסות לקריאה אנלוגית (קריאה אנלוגית של Arduino עוברת מ -0 ל -1023).
כדי לקבל אמפר אתה צריך מתח אחרי ולפני נגד כוח.
כאשר יש לך את מדידת המתח לאחר ולפני הנגד כוח אתה יכול לחשב מיליאמפר שצורך את הסוללה.
ה- MOSFET משמש להפעלה ולהפסקת ניקוז הסוללות מנגד החשמל.
ליתר ביטחון הכנסתי 2 תרמיסטורים למעקב אחר טמפרטורת הנגד והסוללה.
שלב 6: הרחבה
אני מנסה לייצר לוח אב טיפוס שניתן להרחבה, אך לעת עתה אני משתמש רק בקבוצת סיכות מינימלית (בעתיד אוסיף נוריות וכפתורים אחרים).
אם אתה רוצה מתח תמיכה גדול מ- 10v עליך לשנות את ערך הנגד של הסוללה וההתנגדות בהתאם לנוסחה
(BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)
בסכימה מתח כוח הנגד
מתח כוח הנגד GND 1/2/(מתח כוח הנגד 2/2 + מתח כוח הנגד GND 1/2)
ורוד יורד הלחמה
שלב 7: רשימת חלקים
כמות נכסים של סוג חלק
- 2 5 מ"מ בורג מונח בלוק מסוף בורג הר PCB 8A 250V LW SZUS (eBay)
- שיבוט Arduino Pro Mini 1 (תואם ננו) (eBay)
- 1 בסיס FET P-Channel IRF744N או IRLZ44N (eBay)
- 11 נגד נגד 10kΩ 10kΩ (eBay)
- 2 חיישן טמפרטורה (תרמיסטור) 10kΩ; (eBay)
- * צורת כותרת גברית כללית ♂ (זכר); (eBay)
- * צורת כותרת גנרית כללית ♀ (נקבה); (eBay)
- לוח לוח אב טיפוס אחד 24x18 (Perfayboard) (eBay)
-
10R, 10W
נגד כוח (eBay) אני מוצא את שלי בטלוויזיה ישנה של crt.
שלב 8: לוח: אפס, לחצן Gnd E לבחירת סוללה
בחלק השמאלי של הסיכות אתה יכול למצוא את הכפתור והזמזם.
אני משתמש בשלושה כפתורים:
- אחד לשינוי סוג הסוללה;
- אחד להתחיל לפרוק את הסוללה שנבחרה;
- ואז אני משתמש בסיכת איפוס כדי להפעיל מחדש הכל ולהפעיל פעולה חדשה.
כל הסיכה כבר מושכת למטה, כך שעליך להפעיל באמצעות VCC
איפוס מופעל באמצעות GND
ורוד יורד הלחמה
שלב 9: לוח: סיכות I2c ואספקת חשמל
לבסיס אתה יכול לראות את VCC, GND ו- SDA, SCL לתצוגה (ועוד בעתיד).
ורוד יורד הלחמה
שלב 10: לוח: תרמיסטור ומדידת מתח
מימין ישנם סיכות לקריאת ערך התרמיסטור, אחת עבור תרמיסטור של resitsor או השני עבור (סיכות זכר/נקבה לחיבור) תרמיסטור סוללה.
לאחר מכן ישנם סיכות אנלוגיות המודדות מתח דיפרנציאלי לאחר ולפני הנגד כוח.
ורוד יורד הלחמה
שלב 11: לוח: התנגדות למדידת מתח
כאן אתה יכול לראות את הנגד המאפשר תמיכה במתח כפול מאשר סיכה ארדואינו (10v), עליך לשנות זאת כדי לתמוך במתח רב יותר.
ורוד יורד הלחמה
שלב 12: שלב הלחמה: כל הסיכות
ראשית אני מוסיף את כל הסיכות והלחמתי אותו.
שלב 13: שלבי הלחמה: הנגד הנפתח והתרמיסטור
לאחר מכן אני מוסיף את כל resitor הנפתח (לכפתורים) ומחבר i2c (תצוגה).
אז תרמיסטור הנגד כוח זה מאוד חשוב, כאשר סוללת חומצה מתחממת מדי.
שלב 14: שלבי הלחמה: MOSFET, התנגדות לבדיקת מתח
כעת עלינו להכניס mosfet להפעלת פריקה והתנגדות לבדיקת מתח.
2 התנגדות למתח לפני הנגד כוח 2 התנגדות למתח לאחר כוח, כאשר יש לך מתח זה אתה יכול לחשב צריכת מיליאמפר.
שלב 15: קוד
המיקרו -בקר תואם ננו, לכן עליך להגדיר את ה- IDE שלך להעלאת Nano Arduino.
כדי לעבוד עליך להוריד קוד ממאגר github שלי.
עליך להוסיף 3 ספרייה:
- חוט: ספריית ארדואינו סטנדרטית לפרוטוקול i2c;
- ספריית טרמיסטור מכאן לא הספרייה שתוכל למצוא ב- arduino IDE, אלא הגרסה שלי;
- LiquidCrystal_i2c: אם אתה משתמש בגרסה מורחבת/מותאמת אישית של מתאם i2c (הגרסה שלי) עליך להוריד את הספרייה מכאן, אם תשתמש ברכיב הסטנדרטי תוכל לקחת את הספרייה מ- arduino IDE, אך הכל מוסבר טוב יותר כאן.
אני לא בודק LCD עם ספרייה סטנדרטית, נראה לי שהם ניתנים להחלפה, אבל אם יש בעיה כלשהי, פנה לי לפנות אלי.
שלב 16: תוצאה לאחר ההרכבה
לוח הבסיס בתמונה, ואז נוכל לבדוק אותו.
שלב 17: ראשית בחר סוג סוללה
כפי שתואר יש לנו מפת ערך עם תצורת הסוללה.
// מבנה מבנה הקלדה של סוללה BatteryType {שם שם [10]; לצוף maxVolt; float minVolt; }; #define BATTERY_TYPE_NUMBER 4 BatteryType batteryTypes [BATTERY_TYPE_NUMBER] = {{"18650", 4.3, 2.9}, {"17550", 4.3, 2.9}, {"14500", 4.3, 2.75}, {"6v Acid", 6.50, 5.91 }};
שלב 18: התחל פריקה
לחיצה על הכפתור השני מתחילה לפרוק.
בתצוגה ניתן לראות מיליאמפר הנוכחי, מיליאמפר/שעות, אחוז פריקה, מתח הסוללה וטמפרטורת הנגד והסוללה.
שלב 19: חריגים: סוללה הוסרה
אם תסיר את תהליך פריקת הסוללה בהשהיה, כאשר אתה מכניס אותו מחדש מחדש בערך האחרון.
שלב 20: חריגים: התראת טמפרטורה
אם הטמפרטורה (סוללה או נגד מתח) מתחממת, תהליך הפריקה עובר להשהיה.
#הגדר BATTERY_MAX_TEMP 50
#הגדר RESISTANCE_MAX_TEMP 69 // 70 ° בגיליון הנתונים (נגדי ירידה) #הגדר TEMP_TO_REMOVE_ON_MAX_TEMP 20
ערך ברירת המחדל לטמפרטורה מקסימלית הוא 50 ° לסוללה ו- 69 עבור נגד כוח.
כפי שאתה יכול לראות בהערה הנגד כוח מושפע מהפחתת כאשר עוברים מעל 70 °.
אם ההתראה עולה, התחל TEMP_TO_REMOVE_ON_MAX_TEMP שניות של השהיה כדי להעלות טמפ 'נמוכה.
שלב 21: בדוק את העוצמה
התוצאה של בדיקת אמפר היא טובה.
שלב 22: חבילה
עם רכיב מופרד תוצאת החבילה פשוטה למימוש.
בקופסה חייב לעשות מלבן עבור LCD, החורים לכפתורי לחיצה וחבית נקבה חיצונית לאספקת מתח מאספקת החשמל.
כפתור לחיצה לא צריך נגד נפתח כי אני מוסיף אותו כבר על הסיפון.
כשיהיה לי זמן אני יוצר ומפרסם אותו.
מוּמלָץ:
בודק קיבולת סוללות של Arduino DIY - V2.0: 11 שלבים (עם תמונות)
בודק קיבולת סוללות של Arduino DIY - V2.0: כיום מצויות סוללות ליתיום ו- NiMH מזויפות בכל מקום הנמכרות על ידי פרסום בעל יכולות גבוהות יותר מהקיבולת האמיתית שלהן. אז באמת קשה להבחין בין סוללה אמיתית לבין סוללה מזויפת. באופן דומה, קשה לדעת את
בודק קיבולת סוללות של Arduino DIY - V1.0: 12 שלבים (עם תמונות)
בודק קיבולת סוללות של Arduino DIY - V1.0: [הפעל וידאו] הצלתי להציל כל כך הרבה סוללות ישנות (18650) לשימוש חוזר בהן בפרויקטים סולאריים שלי. קשה מאוד לזהות את התאים הטובים בחבילת הסוללות. מוקדם יותר באחד ממדריכי בנק הפאוור שלי סיפרתי כיצד לזהות
בודק סוללות וצג טעינה: 6 שלבים (עם תמונות)
בודק סוללות וצג טעינה: שלום חבר'ה במשך זמן רב קצרתי סוללות ליתיום יון להפעלת הפרויקטים שלי אבל לפעמים קיבלתי סוללות לא טובות שנראות בסדר … אז … יצרתי מכשיר בודק סוללות שיכול לבדוק את הסוללה ואומר לך
בודק קיבולת סוללות ליתיום (בודק כוח ליתיום): 5 שלבים
בודק קיבולת סוללות ליתיום (בודק כוח ליתיום): ============ אזהרה & כתב ויתור =========== סוללות ליתיום הן מסוכנות מאוד אם אינן מטופלות כראוי. אל תטען / תישרף / תפתח עטלפי לי-יון כל מה שאתה עושה עם המידע הזה הוא על אחריותך בלבד ====== =======================================
בודק LED בודק הנוכחי: 4 שלבים (עם תמונות)
בודק נוכחי LED מוסדר: אנשים רבים מניחים שניתן להפעיל את כל הלדים באמצעות מקור חשמל קבוע של 3V. ללדים למעשה יש יחסי מתח זרם לא לינארי. הזרם גדל באופן אקספוננציאלי עם המתח המסופק. יש גם את התפיסה השגויה שכל הנורות של