สารบัญ:

เครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ไมโครคอนโทรลเลอร์: 9 ขั้นตอน (พร้อมรูปภาพ)
เครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ไมโครคอนโทรลเลอร์: 9 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ไมโครคอนโทรลเลอร์: 9 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ไมโครคอนโทรลเลอร์: 9 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: เครื่องฟื้นฟูแบตเตอรี่ อัจริยะ ใช้ได้ทั้งมอเตอร์ไซค์และรถยนต์ Battery Charger รุ่น AJ-618E 2024, กรกฎาคม
Anonim
เครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ไมโครคอนโทรลเลอร์
เครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ไมโครคอนโทรลเลอร์
เครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ไมโครคอนโทรลเลอร์
เครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ไมโครคอนโทรลเลอร์
เครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ไมโครคอนโทรลเลอร์
เครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ไมโครคอนโทรลเลอร์

วงจรที่คุณกำลังจะได้เห็นคือเครื่องชาร์จแบตเตอรี่อัจฉริยะที่ใช้ ATMEGA8A พร้อมระบบตัดไฟอัตโนมัติ พารามิเตอร์ต่างๆ จะแสดงผ่านจอ LCD ในสถานะการชาร์จที่แตกต่างกัน นอกจากนี้ วงจรจะส่งเสียงผ่านออดเมื่อการชาร์จเสร็จสิ้น

ฉันสร้างที่ชาร์จโดยพื้นฐานเพื่อชาร์จแบตเตอรี่ Li-ion 11.1v/4400maH โดยทั่วไปแล้ว เฟิร์มแวร์เขียนขึ้นเพื่อชาร์จแบตเตอรี่ประเภทนี้โดยเฉพาะ คุณสามารถอัปโหลดโปรโตคอลการชาร์จของคุณเองเพื่อตอบสนองความต้องการของคุณในการชาร์จแบตเตอรี่ประเภทอื่นๆ

อย่างที่คุณทราบ เครื่องชาร์จแบตเตอรี่อัจฉริยะมีวางจำหน่ายทั่วไปตามท้องตลาด แต่ในฐานะที่เป็นผู้คลั่งไคล้อุปกรณ์อิเล็กทรอนิกส์ มักจะดีกว่าสำหรับฉันที่จะสร้างของตัวเองแทนที่จะซื้อเครื่องที่มีฟังก์ชันคงที่/ไม่เปลี่ยนแปลง ในโมดูลนี้ ฉันมีแผนที่จะ อัปเกรดในอนาคตดังนั้นฉันจึงมีพื้นที่ว่างเกี่ยวกับเรื่องนั้น

เมื่อฉันซื้อแบตเตอรี่ Li-ion 11.1v/2200mah ก่อนหน้านี้ ฉันค้นหาเครื่องชาร์จแบตเตอรี่ DIY ที่มีการควบคุมอัจฉริยะบนอินเทอร์เน็ต แต่ฉันพบทรัพยากรที่จำกัดมาก ดังนั้นในตอนนั้น ฉันจึงสร้างเครื่องชาร์จแบตเตอรี่โดยใช้ LM317 และใช้งานได้ ดีมากสำหรับฉัน แต่เนื่องจากแบตเตอรี่ก่อนหน้าของฉันหมดลงเมื่อเวลาผ่านไป (โดยไม่มีเหตุผล) ฉันซื้อแบตเตอรี่ Li-ion อีก 11.1v/4400mah แต่คราวนี้ การตั้งค่าก่อนหน้านี้ไม่เพียงพอที่จะชาร์จแบตเตอรี่ใหม่ของฉัน เพื่อให้ตรงกับของฉัน ฉันเรียนทางเน็ตมาบ้าง และสามารถออกแบบเครื่องชาร์จอัจฉริยะของตัวเองได้

ฉันกำลังแบ่งปันสิ่งนี้เนื่องจากฉันคิดว่างานอดิเรก / ผู้ที่ชื่นชอบจำนวนมากอยู่ที่นั่นซึ่งหลงใหลในการทำงานเกี่ยวกับอุปกรณ์อิเล็กทรอนิกส์กำลังและไมโครคอนโทรลเลอร์และจำเป็นต้องสร้างเครื่องชาร์จอัจฉริยะด้วยตนเอง

มาดูวิธีการชาร์จแบตเตอรี่ Li-ion แบบย่อกัน

ขั้นตอนที่ 1: โปรโตคอลการชาร์จสำหรับแบตเตอรี่ลิเธียมไอออน

ในการชาร์จแบตเตอรี่ Li-ion จะต้องปฏิบัติตามเงื่อนไขบางประการ หากเราไม่รักษาสภาพแบตเตอรี่ไว้ ไม่ว่าแบตเตอรี่จะชาร์จไม่เต็มหรือจะถูกจุดไฟ (หากชาร์จเกิน) หรือจะได้รับความเสียหายอย่างถาวร

มีเว็บไซต์ที่ดีมากที่รู้ทุกอย่างที่จำเป็นเกี่ยวกับแบตเตอรี่ประเภทต่างๆ และแน่นอน คุณรู้ชื่อของเว็บไซต์ถ้าคุณคุ้นเคยกับการทำงานเกี่ยวกับแบตเตอรี่…ใช่ ฉันกำลังพูดถึง batteryuniversity.com

นี่คือลิงค์เพื่อทราบรายละเอียดที่จำเป็นในการชาร์จแบตเตอรี่ Li-ion

หากคุณขี้เกียจอ่านทฤษฎีเหล่านี้ทั้งหมด สาระสำคัญมีดังนี้

1. การชาร์จแบตเตอรี่ Li-ion 3.7v เต็มคือ 4.2v ในกรณีของเราแบตเตอรี่ Li-ion 11.1v หมายถึงแบตเตอรี่ 3 x 3.7v สำหรับการชาร์จเต็มแบตเตอรี่จะต้องอยู่ที่ 12.6v แต่ด้วยเหตุผลด้านความปลอดภัยเรา จะชาร์จได้ถึง 12.5v.

2.เมื่อแบตเตอรี่ใกล้จะชาร์จเต็มแล้ว กระแสไฟที่แบตเตอรี่ดึงออกมาจากเครื่องชาร์จจะลดลงเหลือเพียง 3% ของความจุของแบตเตอรี่ที่กำหนด ตัวอย่างเช่น ความจุของแบตเตอรี่ในชุดเซลล์ของฉันคือ 4400 มิลลิแอมป์ ดังนั้นเมื่อแบตเตอรี่ถูกชาร์จจนเต็ม กระแสที่ดึงออกมาจากแบตเตอรี่จะถึงเกือบ 3% -5% ของ 4400ma เช่น ระหว่าง 132 ถึง 220ma เพื่อหยุดการชาร์จอย่างปลอดภัย การชาร์จจะหยุดเมื่อกระแสดึงลดลง 190ma (เกือบ 4% ของความจุสูงสุด)

3. กระบวนการชาร์จทั้งหมดแบ่งออกเป็นสองส่วนหลัก 1- กระแสคงที่ (โหมด CC) 2- แรงดันคงที่ (โหมด CV) (นอกจากนี้ยังมีโหมดการชาร์จเติม แต่เราจะไม่ใช้สิ่งนั้นในเครื่องชาร์จของเราเป็นเครื่องชาร์จ จะแจ้งให้ผู้ใช้ทราบเมื่อชาร์จเต็มโดยเตือนจากนั้นต้องถอดแบตเตอรี่ออกจากเครื่องชาร์จ)

โหมด CC -

ในโหมด CC เครื่องชาร์จจะชาร์จแบตเตอรี่ด้วยอัตราการชาร์จ 0.5c หรือ 1c ทีนี้มันมีค่าแค่ไหนกัน 0.5c/1c ???? พูดง่ายๆ ถ้าความจุของแบตเตอรี่ของคุณอยู่ที่ 4400mah แล้วในโหมด CC จะอยู่ที่ 0.5c จะเป็น 2200ma และ 1c จะเป็นกระแสไฟชาร์จ 4400ma 'c' หมายถึงอัตราการชาร์จ / คายประจุ แบตเตอรี่บางก้อนยังรองรับ 2c เช่นในโหมด CC คุณสามารถตั้งค่ากระแสไฟสูงสุด 2xbattery ได้ แต่นั่นมันบ้า!!!!!

แต่เพื่อความปลอดภัย ฉันจะเลือกกระแสไฟชาร์จ 1000ma สำหรับแบตเตอรี่ 4400mah เช่น 0.22c ในโหมดนี้ เครื่องชาร์จจะตรวจสอบกระแสที่ดึงออกมาโดยแบตเตอรี่โดยไม่ขึ้นกับแรงดันชาร์จ กล่าวคือ เครื่องชาร์จจะรักษากระแสไฟชาร์จ 1A โดยเพิ่มขึ้น / ลดแรงดันไฟออกจนกว่าประจุแบตเตอรี่จะถึง 12.4v

โหมด CV -

เมื่อแรงดันแบตเตอรี่สูงถึง 12.4v เครื่องชาร์จจะรักษาระดับ 12.6 โวลต์ (ไม่ขึ้นกับกระแสที่แบตเตอรี่ดึงออกมา) ที่เอาต์พุต ตอนนี้เครื่องชาร์จจะหยุดรอบการชาร์จขึ้นอยู่กับสองสิ่ง หากแรงดันไฟฟ้าของแบตเตอรี่ข้าม 12.5v และหากกระแสไฟชาร์จลดลงต่ำกว่า 190ma (4% ของความจุแบตเตอรี่ที่กำหนดตามที่อธิบายไว้ก่อนหน้านี้) รอบการชาร์จจะหยุดและจะมีเสียงกริ่งดังขึ้น

ขั้นตอนที่ 2: แผนผังและคำอธิบาย

ทีนี้มาดูการทำงานของวงจรกัน แผนผังที่แนบมาในรูปแบบ pdf ในไฟล์ BIN.pdf

แรงดันไฟขาเข้าของวงจรสามารถเป็น 19/20v. ฉันใช้ที่ชาร์จแล็ปท็อปรุ่นเก่าเพื่อให้ได้ 19v

J1 เป็นขั้วต่อเทอร์มินอลสำหรับต่อวงจรกับแหล่งจ่ายแรงดันไฟขาเข้า Q1, D2, L1, C9 กำลังสร้างตัวแปลงบั๊กอยู่ นี่มันอะไรกันเนี่ย??? นี่คือตัวแปลงสเต็ปดาวน์ DC เป็น DC ในประเภทนี้ ของตัวแปลง คุณสามารถบรรลุแรงดันเอาต์พุตที่ต้องการโดยเปลี่ยนรอบการทำงาน หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับตัวแปลงบั๊ก โปรดไปที่หน้านี้ แต่พูดตามตรง พวกมันต่างจากทฤษฎีโดยสิ้นเชิง เพื่อประเมินค่าที่เหมาะสมของ L1 & สำหรับความต้องการของฉัน C9 ใช้เวลา 3 วันในการทดลองและข้อผิดพลาด หากคุณกำลังจะชาร์จแบตเตอรี่ที่แตกต่างกัน อาจเป็นไปได้ว่าค่าเหล่านี้จะเปลี่ยนไป

Q2 เป็นทรานซิสเตอร์ตัวขับสำหรับ power mosfet Q1. R1 เป็นตัวต้านทานการให้น้ำหนักสำหรับ Q1 เราจะป้อนสัญญาณ pwm ในฐานของ Q2 เพื่อควบคุมแรงดันเอาต์พุต C13 เป็นฝาครอบแยกส่วน

ตอนนี้เอาต์พุตถูกป้อนไปยัง Q3 คำถามสามารถถามว่า "Q3 มีประโยชน์อะไรที่นี่?" คำตอบค่อนข้างง่าย มันทำหน้าที่เหมือนสวิตช์ธรรมดา เมื่อใดก็ตามที่เราจะวัดแรงดันไฟฟ้าของแบตเตอรี่ เราจะปิด Q3 เพื่อตัดการเชื่อมต่อเอาต์พุตแรงดันไฟชาร์จจากตัวแปลงบั๊ก Q4 เป็นไดรเวอร์สำหรับ Q3 ที่มีตัวต้านทานการให้น้ำหนัก R3

สังเกตว่ามีไดโอด D1 อยู่ในเส้นทางไดโอดมาทำอะไรที่นี่ในเส้นทาง คำตอบนี้ก็ง่ายมาก เมื่อใดก็ตามที่วงจรจะถูกตัดการเชื่อมต่อจากพลังงานอินพุตขณะเสียบแบตเตอรี่ที่เอาต์พุตกระแสจากแบตเตอรี่จะ ไหลในเส้นทางย้อนกลับผ่านไดโอดของร่างกายของ MOSFET Q3 & Q1 ดังนั้น U1 และ U2 จะได้รับแรงดันแบตเตอรี่ที่อินพุตและจะจ่ายไฟให้กับวงจรจากแรงดันแบตเตอรี่ เพื่อหลีกเลี่ยงปัญหานี้ จะใช้ D1

จากนั้นเอาต์พุตของ D1 จะถูกป้อนไปยังอินพุตเซ็นเซอร์ปัจจุบัน (IP+) นี่คือเซ็นเซอร์กระแสฐานเอฟเฟกต์ฮอลล์ เช่น ส่วนการตรวจจับปัจจุบันและส่วนเอาต์พุตจะถูกแยกออก จากนั้นเอาต์พุตเซ็นเซอร์ปัจจุบัน (IP-) จะถูกป้อนไปที่ แบตเตอรี่ ที่นี่ R5, RV1, R6 กำลังสร้างวงจรแบ่งแรงดันเพื่อวัดแรงดันไฟแบตเตอรี่/แรงดันเอาต์พุต

ADC ของ atmega8 ใช้สำหรับวัดแรงดันและกระแสของแบตเตอรี่ ADC สามารถวัดได้สูงสุด 5v แต่เราจะวัดค่าสูงสุดที่ 20v (ด้วย headroom บางส่วน) เพื่อลดแรงดันไฟลงที่ช่วง ADC, a 4:ใช้ตัวแบ่งแรงดันไฟฟ้า 1 ตัว หม้อ (RV1) ใช้สำหรับปรับแต่ง/สอบเทียบแบบละเอียด ฉันจะพูดถึงมันในภายหลัง C6 คือฝาปิดตัวแยกคัปปลิ้ง

เอาต์พุตของเซ็นเซอร์กระแส ACS714 นั้นถูกป้อนไปยังพิน ADC0 ของ atmega8 ด้วยเซ็นเซอร์ ACS714 นี้ เราจะวัดกระแส ฉันมีบอร์ดฝ่าวงล้อมจากรุ่น pololu 5A และใช้งานได้ดีมาก ฉันจะพูดถึงในขั้นตอนต่อไป วิธีการวัดกระแส

LCD เป็นจอ LCD ขนาด 16x2 ปกติ จอ LCD ที่ใช้ในที่นี้ได้รับการกำหนดค่าในโหมด 4 บิต เนื่องจากจำนวนพินของ atmega8 ถูกจำกัด RV2 เป็นช่องปรับความสว่างสำหรับ LCD

atmega8 นั้นโอเวอร์คล็อกที่ 16mhz ด้วยคริสตัลภายนอก X1 พร้อมตัวแยกสัญญาณสองตัว C10/11 หน่วย ADC ของ atmega8 นั้นใช้พลังงานจากพิน Avcc ผ่านตัวเหนี่ยวนำ 10uH C7, C8 เป็นตัวแยกแคปที่เชื่อมต่อกับ Agnd วางเป็น อย่างใกล้ชิดที่สุดกับ Avcc และ Aref ตามลำดับในขณะที่ทำ PCB โปรดสังเกตว่าพิน Agnd ไม่แสดงในวงจร พิน Agnd จะเชื่อมต่อกับกราวด์

ฉันได้กำหนดค่า ADC ของ atmega8 ให้ใช้ Vref ภายนอก เช่น เราจะจ่ายแรงดันอ้างอิงผ่านพิน Aref เหตุผลหลักที่อยู่เบื้องหลังสิ่งนี้เพื่อให้ได้ความแม่นยำในการอ่านสูงสุดที่เป็นไปได้ แรงดันอ้างอิงภายใน 2.56v นั้นไม่ค่อยดีนักใน avrs นั่นเป็นเหตุผลที่ฉันกำหนดค่าจากภายนอก นี่คือสิ่งที่ควรสังเกต 7805 (U2) จัดหาเฉพาะเซ็นเซอร์ ACS714 และพิน Aref ของ atmega8 เพื่อรักษาความแม่นยำสูงสุด ACS714 ให้แรงดันเอาต์พุต 2.5v ที่เสถียรเมื่อ ไม่มีกระแสไหลผ่าน แต่สำหรับพูดถ้าแรงดันไฟฟ้าของ ACS714 จะลดลง (พูด 4.7v) แรงดันเอาต์พุตปัจจุบัน (2.5v) จะไม่ลดลงเช่นกันและจะสร้างการอ่านกระแสไฟฟ้าที่ไม่เหมาะสม / ผิดพลาด.นอกจากนี้ ในขณะที่เรากำลังวัดแรงดันไฟฟ้าเทียบกับ Vref แรงดันอ้างอิงบน Aref จะต้องปราศจากข้อผิดพลาดและเสถียร นั่นเป็นเหตุผลที่เราต้องการ 5v ที่เสถียร

หากเราจะจ่ายไฟให้กับ ACS714 & Aref จาก U1 ซึ่งจ่าย atmega8 และ LCD แสดงว่าแรงดันไฟตกที่เอาต์พุตของ U1 และค่าแอมแปร์และแรงดันไฟจะผิดพลาด นั่นเป็นสาเหตุที่ U2 ถูกใช้ที่นี่เพื่อขจัดข้อผิดพลาด โดยการจัดหา 5v ที่เสถียรให้กับ Aref และ ACS714 เท่านั้น

กด S1 เพื่อปรับเทียบการอ่านแรงดันไฟฟ้า S2 สงวนไว้สำหรับใช้ในอนาคต คุณสามารถเพิ่ม/ไม่เพิ่มปุ่มนี้ตามที่คุณต้องการ

ขั้นตอนที่ 3: การทำงาน….

ทำหน้าที่….
ทำหน้าที่….
ทำหน้าที่….
ทำหน้าที่….
ทำหน้าที่….
ทำหน้าที่….

เมื่อเปิดเครื่อง atmega8 จะเปิดตัวแปลงบั๊กโดยให้เอาต์พุต pwm 25% ที่ฐานของ Q2 ในทางกลับกัน จากนั้น Q2 จะขับ Q1 และตัวแปลงบั๊กจะเริ่มต้นขึ้น Q3 จะถูกขับออกเพื่อตัดการเชื่อมต่อเอาต์พุตของตัวแปลงบั๊ก และแบตเตอรี่ จากนั้น atmega8 จะอ่านแรงดันไฟฟ้าของแบตเตอรี่ผ่านตัวแบ่งตัวต้านทาน หากไม่มีการเชื่อมต่อแบตเตอรี่ atmega8 จะแสดงข้อความ "ใส่แบตเตอรี่" ผ่านจอ LCD ขนาด 16x2 และรอแบตเตอรี่ หากต่อแบตเตอรี่แล้ว atmega8 จะตรวจสอบแรงดันไฟฟ้า หากแรงดันไฟฟ้าต่ำกว่า 9v แล้ว atmega8 จะแสดง "แบตเตอรี่ผิดพลาด" บนหน้าจอ LCD ขนาด 16x2

หากพบแบตเตอรี่ที่มีมากกว่า 9v เครื่องชาร์จจะเข้าสู่โหมด CC ก่อนแล้วจึงเปิดเอาต์พุต mosfet Q3 โหมดชาร์จ (CC) จะอัปเดตให้แสดงผลทันทีหากพบแรงดันแบตเตอรี่มากกว่า 12.4v แล้ว mega8 จะออกจากโหมด CC ทันที และจะเข้าสู่โหมด CV หากแรงดันไฟฟ้าของแบตเตอรี่น้อยกว่า 12.4v แล้ว mega8 จะรักษากระแสไฟชาร์จ 1A โดยการเพิ่ม/ลดแรงดันเอาต์พุตของตัวแปลงบั๊กตามรอบการทำงานของ pwm ที่แตกต่างกัน. กระแสไฟชาร์จจะถูกอ่านโดยเซ็นเซอร์กระแสไฟ ACS714 แรงดันเอาต์พุตบั๊ก, กระแสไฟชาร์จ, รอบหน้าที่ PWM จะได้รับการอัปเดตเป็นระยะในจอ LCD

. แรงดันแบตเตอรี่จะถูกตรวจสอบโดยปิด Q3 หลังจากทุก ๆ 500ms ช่วงเวลา แรงดันแบตเตอรี่จะได้รับการอัปเดตเป็น LCD ทันที

หากแรงดันไฟฟ้าของแบตเตอรี่เกิน 12.4 โวลต์ในระหว่างการชาร์จ mega8 จะออกจากโหมด CC และจะเข้าสู่โหมด CV สถานะโหมดจะอัปเดตเป็น LCD ทันที

จากนั้น mega8 จะรักษาแรงดันเอาท์พุตไว้ที่ 12.6 โวลต์โดยเปลี่ยนรอบการทำงานของเจ้าชู้ ที่นี่แรงดันแบตเตอรี่จะถูกตรวจสอบทุกๆ 1 วินาที ทันทีที่แรงดันไฟแบตเตอรี่มากกว่า 12.5 โวลต์ จากนั้นจะทำการตรวจสอบ หากกระแสที่ดึงออกมาต่ำกว่า 190ma หากตรงตามเงื่อนไขทั้งสอง รอบการชาร์จจะหยุดโดยการปิด Q3 อย่างถาวร และจะมีเสียงกริ่งเมื่อเปิด Q5 นอกจากนี้ mega8 จะแสดง "การชาร์จเสร็จสิ้น" ผ่านจอ LCD

ขั้นตอนที่ 4: ชิ้นส่วนที่จำเป็น

อะไหล่ที่จำเป็น
อะไหล่ที่จำเป็น

รายการด้านล่างเป็นส่วนที่จำเป็นในการทำโครงการให้เสร็จสมบูรณ์ โปรดดูเอกสารข้อมูลสำหรับ pinout มีลิงก์แผ่นข้อมูลชิ้นส่วนที่สำคัญเท่านั้น

1) ATMEGA8A x 1.(เอกสารข้อมูล)

2) เซ็นเซอร์กระแสไฟ ACS714 5A จาก Pololu x 1 (ฉันขอแนะนำอย่างยิ่งให้ใช้เซ็นเซอร์จาก Pololu เนื่องจากมีความแม่นยำดีที่สุดในบรรดาเซ็นเซอร์อื่นๆ ทั้งหมดที่ฉันเคยใช้ คุณสามารถค้นหาได้ที่นี่) Pinout อธิบายไว้ในภาพ

3) IRF9540 x 2.(เอกสารข้อมูล)

4) 7805 x 2 (แนะนำจากอะไหล่แท้ของ Toshiba เนื่องจากให้เอาต์พุต 5v ที่เสถียรที่สุด) (เอกสารข้อมูล)

5) 2n3904 x 3.(เอกสารข้อมูล)

6) 1n5820 schottky x 2.(เอกสารข้อมูล)

7) 16x2 LCD x 1.(เอกสารข้อมูล)

8) 330uH/2A power inductor x 1 (แนะนำจาก coilmaster)

9) ตัวเหนี่ยวนำ 10uH x 1 (เล็ก)

10) ตัวต้านทาน - (ตัวต้านทานทั้งหมดเป็นแบบ MFR 1%)

150R x 3

680R x 2

1k x 1

2k2 x 1

10k x 2

22k x 1

5k pot x 2 (แบบติดตั้งบน pcb)

11) ตัวเก็บประจุ

หมายเหตุ: ฉันไม่ได้ใช้ C4 ไม่จำเป็นต้องใช้หากคุณใช้แหล่งจ่ายไฟแล็ปท็อป/แหล่งจ่ายไฟที่มีการควบคุมเป็นแหล่งพลังงาน 19v

100uF/25v x 3

470uF/25v x 1

1000uF/25v x 1

100n x 8

22p x 2

12) สวิตช์กดชั่วขณะของ PCB mount x 2

13) ออด 20v x 1

14) ขั้วต่อเทอร์มินัลบล็อก 2 ขา x 2

15) ตู้ (ผมใช้ตู้แบบนี้) จะใช้อะไรก็ได้ตามใจชอบ

16) แหล่งจ่ายไฟแล็ปท็อป 19v (ฉันแก้ไขแหล่งจ่ายไฟแล็ปท็อป hp คุณสามารถใช้แหล่งจ่ายไฟประเภทใดก็ได้ตามที่คุณต้องการหากคุณต้องการสร้างให้ไปที่คำแนะนำนี้ของฉัน)

17)ฮีตซิงก์ขนาดกลางสำหรับ U1 & Q1 คุณสามารถใช้ประเภทนี้หรืออ้างอิงจากภาพวงจรของฉัน แต่อย่าลืมใช้ฮีตซิงก์สำหรับทั้งคู่

18) ขั้วต่อกล้วย - ตัวเมีย (ดำ & แดง) x 1 + ตัวผู้ (ดำ & แดง) (ขึ้นอยู่กับความต้องการตัวเชื่อมต่อของคุณ)

ขั้นตอนที่ 5: เวลาคำนวณ……

การคำนวณการวัดแรงดัน:

แรงดันไฟฟ้าสูงสุด เราจะวัดโดยใช้ atmega8 adc คือ 20v แต่ adc ของ atmega8 สามารถวัดได้สูงสุดที่ 5v ดังนั้นเพื่อให้ 20v ภายในช่วง 5v จะใช้ตัวแบ่งแรงดัน 4: 1 ที่นี่ (เช่น 20v/4=5v) ดังนั้นเราจึงสามารถทำได้โดยเพียงแค่ใช้ตัวต้านทานสองตัว แต่ในกรณีของเรา ฉันได้เพิ่มหม้อระหว่างตัวต้านทานคงที่สองตัว เพื่อให้เราสามารถปรับความแม่นยำได้ด้วยตนเองโดยการหมุนหม้อ ความละเอียดของ ADC คือ 10 บิต เช่น adc จะแสดง 0v ถึง 5v เป็นตัวเลขทศนิยม 0 ถึง 1023 หรือ 00h ถึง 3FFh.('h' หมายถึงตัวเลขฐานสิบหก) การอ้างอิงถูกตั้งค่าเป็น 5v ภายนอกโดยใช้พิน Aref

ดังนั้นแรงดันที่วัดได้ = (การอ่านค่า adc) x (Vref=5v) x (ตัวประกอบตัวหารตัวต้านทานเช่น 4 ในกรณีนี้) / (การอ่าน adc สูงสุดเช่น 1023 สำหรับ 10 บิต adc)

สมมติว่าเราได้ค่า adc 512 จากนั้นแรงดันไฟฟ้าที่วัดได้จะเป็น -

(512 x 5 x 4) / 1023 = 10v

การคำนวณการวัดปัจจุบัน:

ACS714 จะให้เอาต์พุตที่เสถียร 2.5v ที่ขาออกเมื่อไม่มีกระแสไหลจาก IP+ ไปยัง IP- มันจะให้ 185mv/A เหนือ 2.5v เช่นถ้ากระแส 3A ไหลผ่านวงจร acs714 จะให้ 2.5v+(0.185 x 3)v = 3.055v ที่ขาออก

ดังนั้นสูตรการวัดปัจจุบันจึงเป็นดังนี้ -

วัดกระแส=(((อ่านadc)*(Vref=5v)/1023)-2.5)/0.185.

สำหรับการอ่านค่า adc คือ 700 จากนั้นกระแสที่วัดได้จะเป็น - (((700 x 5)/1023) - 2.5)/0.185 = 4.98A

ขั้นตอนที่ 6: ซอฟต์แวร์

ซอฟต์แวร์ถูกเข้ารหัสใน Winavr โดยใช้ GCC ฉันได้ทำให้เป็นโมดูลของรหัส เช่น ฉันได้สร้างไลบรารีที่แตกต่างกัน เช่น ไลบรารี adc, ไลบรารี lcd เป็นต้น ไลบรารี adc มีคำสั่งที่จำเป็นในการตั้งค่าและการโต้ตอบกับ adc ไลบรารี lcd มีทั้งหมด ฟังก์ชันเพื่อขับเคลื่อน LCD ขนาด 16x2 คุณยังสามารถใช้ lcd_updated _library.c ได้เนื่องจากลำดับการเริ่มต้นของ LCD ได้รับการแก้ไขในไลบรารีนี้ หากคุณต้องการใช้ไลบรารีที่อัปเดตแล้ว ให้เปลี่ยนชื่อเป็น lcd.c

ไฟล์ main.c มีฟังก์ชันหลัก โปรโตคอลการชาร์จสำหรับ li-ion ถูกเขียนไว้ที่นี่ โปรดกำหนด ref_volt ใน main.c โดยการวัดเอาท์พุตของ U2 (7805) ด้วยมัลติมิเตอร์ที่แม่นยำเพื่อให้ได้ค่าการอ่านที่ถูกต้องตามการคำนวณ จะขึ้นอยู่กับมัน

คุณสามารถเบิร์นไฟล์.hex ได้โดยตรงใน mega8 ของคุณเพื่อเลี่ยงผ่าน headche

สำหรับผู้ที่ต้องการเขียนโปรโตคอลการชาร์จอื่น ฉันได้ใส่ความคิดเห็นเพียงพอโดยที่แม้แต่เด็ก ๆ ก็สามารถเข้าใจได้ว่าเกิดอะไรขึ้นสำหรับการดำเนินการแต่ละบรรทัด เพียงแค่คุณต้องเขียนโปรโตคอลของคุณเองสำหรับแบตเตอรี่ประเภทต่างๆ หากคุณใช้ Li- ไอออนที่มีแรงดันไฟฟ้าต่างกัน คุณต้องเปลี่ยนพารามิเตอร์เท่านั้น (แม้ว่าจะไม่ได้ทดสอบแบตเตอรี่ลิเธียมไอออนอื่นๆ/แบตเตอรี่ประเภทอื่นๆ คุณต้องดำเนินการด้วยตัวเอง)

ฉันไม่แนะนำอย่างยิ่งว่าอย่าสร้างวงจรนี้ หากนี่เป็นโครงการแรกของคุณหรือคุณยังใหม่ต่อไมโครคอนโทรลเลอร์/อุปกรณ์อิเล็กทรอนิกส์กำลัง

ฉันได้อัปโหลดทุกไฟล์แล้วเนื่องจากเป็นรูปแบบดั้งเดิม ยกเว้น Makefile เนื่องจากกำลังสร้างปัญหาในการเปิด ฉันได้อัปโหลดในรูปแบบ.txt แล้ว เพียงคัดลอกเนื้อหาและวางลงใน Makefile ใหม่ และสร้างโครงการทั้งหมด Voila….คุณพร้อมที่จะเบิร์นไฟล์ hex แล้ว

ขั้นตอนที่ 7: พอทฤษฎี…..มาสร้างมันกันเถอะ

พอทฤษฎี…..มาสร้างมันกันเถอะ
พอทฤษฎี…..มาสร้างมันกันเถอะ
พอทฤษฎี…..มาสร้างมันกันเถอะ
พอทฤษฎี…..มาสร้างมันกันเถอะ
พอทฤษฎี…..มาสร้างมันกันเถอะ
พอทฤษฎี…..มาสร้างมันกันเถอะ
พอทฤษฎี…..มาสร้างมันกันเถอะ
พอทฤษฎี…..มาสร้างมันกันเถอะ

นี่คือรูปภาพของต้นแบบของฉันตั้งแต่ breadboarded ไปจนถึงขั้นสุดท้ายใน pcb โปรดอ่านบันทึกย่อของรูปภาพเพื่อทราบข้อมูลเพิ่มเติม รูปภาพถูกจัดเรียงตามลำดับตั้งแต่ต้นจนจบ

ขั้นตอนที่ 8: ก่อนรอบการชาร์จครั้งแรก…….ปรับเทียบ!!!

ก่อนชาร์จแบตเตอรี่โดยใช้เครื่องชาร์จ คุณต้องปรับเทียบแบตเตอรี่ก่อน มิฉะนั้น จะไม่สามารถชาร์จแบตเตอรี่/ชาร์จเกินได้

การสอบเทียบมีสองประเภท 1) การสอบเทียบแรงดันไฟฟ้า 2) การสอบเทียบปัจจุบัน มีขั้นตอนดังต่อไปนี้เพื่อสอบเทียบ

ขั้นแรก ให้วัดแรงดันเอาต์พุตของ U2 จากนั้นกำหนดใน main.c เป็น ref_volt. Mine คือ 5.01 เปลี่ยนตามการวัดของคุณ นี่เป็นขั้นตอนหลักที่จำเป็นสำหรับการสอบเทียบแรงดันและกระแส สำหรับการสอบเทียบปัจจุบัน ไม่มีอะไร อย่างอื่นจำเป็น ทุกอย่างจะได้รับการดูแลโดยซอฟต์แวร์เอง

ตอนนี้เมื่อคุณเผาไฟล์ฐานสิบหกหลังจากกำหนดโวลต์อ้างอิงใน main.c ให้ฆ่าพลังของยูนิต

. ตอนนี้วัดแรงดันแบตเตอรี่ที่คุณจะชาร์จโดยใช้มัลติมิเตอร์และเชื่อมต่อแบตเตอรี่เข้ากับตัวเครื่อง

ตอนนี้ให้กดปุ่ม S1 ค้างไว้และเปิดวงจรในขณะที่กดปุ่ม หลังจากหน่วงเวลาสั้น ๆ ประมาณ 1 วินาที ให้ปล่อยปุ่ม S1 โปรดทราบว่าเครื่องจะไม่เข้าสู่โหมดการปรับเทียบหากคุณเปิดเครื่องวงจรก่อน จากนั้นกด เอส1

ตอนนี้คุณสามารถเห็นในจอแสดงผลว่าวงจรถูกป้อนเข้าสู่โหมดการปรับเทียบ "โหมด cal" จะแสดงขึ้นบนหน้าจอ LCD พร้อมกับแรงดันไฟฟ้าของแบตเตอรี่ ตอนนี้จับคู่แรงดันไฟฟ้าของแบตเตอรี่ที่แสดงบนจอ LCD กับการอ่านมัลติมิเตอร์ของคุณโดยการหมุนหม้อ หลังจากที่คุณทำเสร็จแล้ว ให้กดสวิตช์ S1 อีกครั้ง กดค้างไว้ประมาณหนึ่งวินาทีแล้วปล่อย คุณจะออกจากโหมดการปรับเทียบ รีเซ็ตที่ชาร์จอีกครั้งโดยการปิดเครื่องและเปิดใหม่

กระบวนการข้างต้นสามารถทำได้โดยไม่ต้องต่อแบตเตอรี่ คุณต้องเชื่อมต่อแหล่งพลังงานภายนอกเข้ากับขั้วเอาต์พุต (J2) หลังจากเข้าสู่โหมดการปรับเทียบแล้ว ให้ปรับเทียบโดยใช้หม้อ แต่คราวนี้ให้ถอดแหล่งจ่ายไฟภายนอกออกก่อน จากนั้นกด S1 เพื่อออกจากโหมดการปรับเทียบ จำเป็นต้องถอดแหล่งจ่ายไฟภายนอกออกก่อนเพื่อหลีกเลี่ยงการทำงานผิดปกติของยูนิตใดๆ

ขั้นตอนที่ 9: เปิดใช้งานหลังจากการปรับเทียบ…..ตอนนี้คุณพร้อมที่จะเขย่าแล้ว

การเปิดเครื่องหลังการปรับเทียบ…..ตอนนี้คุณพร้อมแล้วหรือยัง
การเปิดเครื่องหลังการปรับเทียบ…..ตอนนี้คุณพร้อมแล้วหรือยัง
การเปิดเครื่องหลังการปรับเทียบ…..ตอนนี้คุณพร้อมที่จะเขย่าแล้ว
การเปิดเครื่องหลังการปรับเทียบ…..ตอนนี้คุณพร้อมที่จะเขย่าแล้ว
การเปิดเครื่องหลังการปรับเทียบ…..ตอนนี้คุณพร้อมที่จะเขย่าแล้ว
การเปิดเครื่องหลังการปรับเทียบ…..ตอนนี้คุณพร้อมที่จะเขย่าแล้ว

ตอนนี้เมื่อการสอบเทียบเสร็จสิ้น คุณจะสามารถเริ่มกระบวนการชาร์จได้ ติดแบตเตอรี่ก่อน จากนั้นเปิดเครื่อง ส่วนที่เหลือจะได้รับการดูแลโดยเครื่องชาร์จ

วงจรของฉันทำงานและทดสอบได้ 100% แต่หากคุณสังเกตเห็นสิ่งใด โปรดแจ้งให้เราทราบ นอกจากนี้ อย่าลังเลที่จะติดต่อสอบถามใดๆ

สร้างสุข.

Rgds//ศรัณยา

แนะนำ: