- โหมด CC และ CV สำหรับเครื่องชาร์จแบตเตอรี่:
- แผนภูมิวงจรรวม
- LM317 Regulator ปัจจุบัน
- LM317 ตัวควบคุมแรงดันไฟฟ้า
- การจัดเรียงรีเลย์เพื่อสลับระหว่างโหมด CC และ CV
- การวัดแรงดันแบตเตอรี่ลิเธียม
- การวัดกระแสการชาร์จ
- Arduino และ LCD
- การออกแบบและผลิต PCB โดยใช้ EasyEDA
- การคำนวณและการสั่งซื้อตัวอย่างออนไลน์
- การเขียนโปรแกรม Arduino สำหรับการชาร์จแบตเตอรี่ลิเธียมสองขั้นตอน
- การทำงานของเครื่องชาร์จแบตเตอรี่ลิเธียมสองขั้นตอน 7.4V
ความก้าวหน้าในยานยนต์ไฟฟ้าโดรนและอุปกรณ์อิเล็กทรอนิกส์เคลื่อนที่อื่น ๆ เช่นอุปกรณ์ IoT ดูเหมือนว่าจะมีแนวโน้มในอนาคต สิ่งหนึ่งที่พบบ่อยในบรรดาสิ่งเหล่านี้คือแบตเตอรี่ทั้งหมดใช้พลังงาน ตามกฎหมายของมัวร์อุปกรณ์อิเล็กทรอนิกส์มักจะมีขนาดเล็กลงและสามารถดื่มได้มากขึ้นอุปกรณ์พกพาเหล่านี้ควรมีแหล่งพลังงานในการทำงานของตัวเอง ตัวเลือกแบตเตอรี่ที่พบมากที่สุดสำหรับอุปกรณ์อิเล็กทรอนิกส์แบบพกพาในปัจจุบันคือแบตเตอรี่ลิเธียมไอออนหรือลิเธียมโพลิเมอร์ ในขณะที่แบตเตอรี่เหล่านี้มีความหนาแน่นของประจุที่ดีมาก แต่ก็ไม่เสถียรทางเคมีภายใต้สภาวะที่ไม่เอื้ออำนวยดังนั้นควรใช้ความระมัดระวังขณะชาร์จและใช้งาน
ในโครงการนี้เราจะสร้างเครื่องชาร์จแบตเตอรี่สองขั้นตอน (CC และ CV)ที่สามารถใช้ชาร์จแบตเตอรี่ลิเธียมไอออนหรือลิเธียมโพลิเมอร์ได้วงจรชาร์จแบตเตอรี่ถูกออกแบบมาสำหรับ 7.4V แพ็คแบตเตอรี่ลิเธียม (สอง 18650 ใน Series) ซึ่งผมมักจะใช้ในหุ่นยนต์มากที่สุดโครงการ แต่วงจรที่สามารถแก้ไขได้อย่างง่ายดายเพื่อให้พอดีกับในที่ต่ำกว่าหรือสูงกว่าเล็กน้อยแพ็คแบตเตอรี่ต้องการสร้างเครื่องชาร์จแบตเตอรี่ลิเธียม 3.7หรือเครื่องชาร์จแบตเตอรี่ลิเธียมไอออน 12vอย่างที่คุณอาจทราบว่ามีเครื่องชาร์จสำเร็จรูปสำหรับแบตเตอรี่เหล่านี้ แต่แบตเตอรี่ที่มีราคาถูกนั้นช้ามากและแบตเตอรี่ที่เร็วนั้นมีราคาแพงมาก ดังนั้นในวงจรนี้ฉันจึงตัดสินใจสร้างเครื่องชาร์จน้ำมันดิบอย่างง่ายด้วย LM317 ICs พร้อมโหมด CC และ CV. นอกจากนี้สิ่งที่สนุกไปกว่าการสร้างอุปกรณ์ของคุณเองและเรียนรู้ในกระบวนการนี้
โปรดจำไว้ว่าควรใช้แบตเตอรี่ลิเธียมอย่างระมัดระวัง การชาร์จไฟมากเกินไปหรือการลัดวงจรอาจทำให้เกิดการระเบิดและไฟไหม้ได้ดังนั้นควรอยู่รอบ ๆ อย่างปลอดภัย หากคุณยังใหม่กับแบตเตอรี่ลิเธียมอย่างสมบูรณ์เราขอแนะนำให้คุณอ่านบทความเกี่ยวกับแบตเตอรี่ลิเธียมก่อนดำเนินการต่อ ที่กล่าวมาเข้าโครงการกันเถอะ
โหมด CC และ CV สำหรับเครื่องชาร์จแบตเตอรี่:
เครื่องชาร์จที่เราตั้งใจจะสร้างขึ้นที่นี่เป็นเครื่องชาร์จแบบสองขั้นตอนซึ่งหมายความว่าจะมีโหมดการชาร์จสองโหมดคือค่าคงที่ (CC) และแรงดันไฟฟ้าคงที่ (CV) ด้วยการรวมสองโหมดนี้เราจะสามารถชาร์จแบตเตอรี่ได้เร็วกว่าปกติ
ค่าคงที่ (CC):
โหมดแรกที่จะเข้าสู่การทำงานคือโหมด CC จำนวนกระแสชาร์จที่ควรเข้าสู่แบตเตอรี่ได้รับการแก้ไขแล้ว เพื่อรักษากระแสนี้แรงดันไฟฟ้าจะแปรผันตาม
แรงดันไฟฟ้าคงที่ (CV):
เมื่อโหมด CC เสร็จสมบูรณ์โหมด CV จะเริ่มทำงานที่นี่แรงดันไฟฟ้าจะคงที่และกระแสจะได้รับอนุญาตให้เปลี่ยนแปลงตามความต้องการในการชาร์จของแบตเตอรี่
ในกรณีของเราเรามีชุดแบตเตอรี่ลิเธียม 7.4V ซึ่งไม่มีอะไรเลยนอกจากเซลล์ 18650 สองเซลล์ 3.7V แต่ละเซลล์เชื่อมต่อเป็นอนุกรม (3.7V + 3.7V = 7.4V) ควรชาร์จก้อนแบตเตอรี่นี้เมื่อแรงดันไฟฟ้าลดลงเหลือ 6.4V (3.2V ต่อเซลล์) และสามารถชาร์จได้ไม่เกิน 8.4V (4.2V ต่อเซลล์) ดังนั้นค่าเหล่านี้ได้รับการแก้ไขแล้วสำหรับก้อนแบตเตอรี่ของเรา
ต่อไปเราได้ตัดสินใจกระแสชาร์จในโหมด CC ซึ่งโดยปกติจะพบได้ในแผ่นข้อมูลของแบตเตอรี่และค่าจะขึ้นอยู่กับระดับ Ah ของแบตเตอรี่ ในกรณีของเราฉันได้ตัดสินใจที่ค่าของ800mA เป็นค่าคงที่ชาร์จในปัจจุบันดังนั้นในตอนแรกเมื่อเชื่อมต่อแบตเตอรี่เพื่อชาร์จเครื่องชาร์จควรเข้าสู่โหมด CC และดัน 800mA เข้าไปในแบตเตอรี่โดยเปลี่ยนแรงดันไฟฟ้าในการชาร์จตาม สิ่งนี้จะชาร์จแบตเตอรี่และแรงดันไฟฟ้าของแบตเตอรี่จะเริ่มเพิ่มขึ้นอย่างช้าๆ
เนื่องจากเรากำลังผลักกระแสไฟฟ้าหนักเข้าไปในแบตเตอรี่ด้วยค่าแรงดันไฟฟ้าที่สูงขึ้นเราจึงไม่สามารถปล่อยให้เป็น CC ได้จนกว่าแบตเตอรี่จะชาร์จเต็ม เราต้องเปลี่ยนเครื่องชาร์จจากโหมด CC เป็นโหมด CV เมื่อแรงดันแบตเตอรี่ถึงค่าที่กำหนด ก้อนแบตเตอรี่ของเราที่นี่ควรเป็น 8.4V เมื่อชาร์จเต็มเพื่อให้เราสามารถเปลี่ยนจากโหมด CC เป็นโหมด CV ที่ 8.2V
เมื่อเครื่องชาร์จเปลี่ยนเป็นโหมด CV แล้วเราควรรักษาแรงดันไฟฟ้าให้คงที่ค่าของแรงดันคงที่คือ 8.6Vในกรณีของเรา แบตเตอรี่จะระบายกระแสไฟในโหมด CV น้อยกว่าโหมด CC มากเนื่องจากแบตเตอรี่เกือบจะถูกชาร์จในโหมด CC เอง ดังนั้นที่ 8.6V คงที่แบตเตอรี่จะใช้กระแสไฟฟ้าน้อยลงและกระแสไฟฟ้านี้จะลดลงเมื่อแบตเตอรี่ถูกชาร์จ ดังนั้นเราต้องตรวจสอบกระแสไฟฟ้าเมื่อถึงค่าที่ต่ำมากบอกว่าน้อยกว่า 50mA เราถือว่าแบตเตอรี่ชาร์จเต็มแล้วและถอดแบตเตอรี่ออกจากเครื่องชาร์จโดยอัตโนมัติโดยใช้รีเลย์
สรุปขั้นตอนการชาร์จแบตเตอรี่ได้ดังนี้
- เข้าสู่โหมด CC และชาร์จแบตเตอรี่ด้วยกระแสไฟที่มีการควบคุม 800mA คงที่
- ตรวจสอบแรงดันแบตเตอรี่และเมื่อถึง 8.2V เปลี่ยนเป็นโหมด CV
- ในโหมด CV ให้ชาร์จแบตเตอรี่ด้วยแรงดันไฟฟ้าที่ควบคุมไว้ที่ 8.6V
- ตรวจสอบกระแสชาร์จเมื่อลดลง
- เมื่อกระแสถึง 50mA ถอดแบตเตอรี่ออกจากเครื่องชาร์จโดยอัตโนมัติ
ค่า 800mA, 8.2V และ 8.6V ได้รับการแก้ไขเนื่องจากเรามีชุดแบตเตอรี่ลิเธียม 7.4V คุณสามารถเปลี่ยนค่าเหล่านี้ได้อย่างง่ายดายตามความต้องการของชุดแบตเตอรี่ของคุณ โปรดทราบว่ามีเครื่องชาร์จหลายขั้นตอน เครื่องชาร์จแบบสองขั้นตอนเช่นนี้เป็นเครื่องชาร์จที่ใช้บ่อยที่สุด ในเครื่องชาร์จสามขั้นตอนจะเป็น CC, CV และ float ในเครื่องชาร์จสี่หรือหกขั้นตอนจะพิจารณาความต้านทานภายในอุณหภูมิและอื่น ๆ ตอนนี้เรามีความเข้าใจสั้น ๆ ว่าเครื่องชาร์จแบบสองขั้นตอนควรทำงานอย่างไรมาดู Circuit Diagram
แผนภูมิวงจรรวม
แผนภาพวงจรทั้งหมดสำหรับเครื่องชาร์จแบตเตอรี่ลิเธียมนี้มีอยู่ด้านล่าง วงจรถูกสร้างขึ้นโดยใช้ EasyEDA และ PCB จะถูกสร้างขึ้นโดยใช้แบบเดียวกัน
อย่างที่คุณเห็นวงจรค่อนข้างเรียบง่าย เราได้ใช้ไอซีควบคุมแรงดันไฟฟ้าตัวแปร LM317 สองตัวตัวหนึ่งควบคุมกระแสและอีกตัวหนึ่งเพื่อควบคุมแรงดันไฟฟ้า รีเลย์ตัวแรกใช้เพื่อสลับระหว่างโหมด CC และ CV และรีเลย์ตัวที่สองใช้เพื่อเชื่อมต่อหรือถอดแบตเตอรี่เข้ากับเครื่องชาร์จ มาแบ่งวงจรออกเป็นส่วน ๆ และทำความเข้าใจกับการออกแบบ
LM317 Regulator ปัจจุบัน
LM317 IC สามารถทำหน้าที่เป็นตัวควบคุมกระแสด้วยความช่วยเหลือของตัวต้านทานตัวเดียว วงจรสำหรับสิ่งเดียวกันดังแสดงด้านล่าง
สำหรับเครื่องชาร์จของเราเราจำเป็นต้องควบคุมกระแส 800mA ตามที่กล่าวไว้ข้างต้น สูตรสำหรับการคำนวณค่าของตัวต้านทานสำหรับกระแสที่ต้องการจะได้รับในแผ่นข้อมูลเป็น
ตัวต้านทาน (โอห์ม) = 1.25 / กระแส (แอมป์)
ในกรณีของเราค่าของกระแสคือ 0.8A และด้วยเหตุนี้เราจึงได้ค่า 1.56 โอห์มเป็นค่าตัวต้านทาน แต่ค่าที่ใกล้เคียงที่สุดที่เราสามารถใช้ได้คือ 1.5 โอห์มซึ่งระบุไว้ในแผนภาพวงจรด้านบน
LM317 ตัวควบคุมแรงดันไฟฟ้า
สำหรับโหมด CV ของเครื่องชาร์จแบตเตอรี่ลิเธียมเราต้องควบคุมแรงดันไฟฟ้าเป็น 8.6V ตามที่กล่าวไว้ก่อนหน้านี้ LM317 สามารถทำได้อีกครั้งด้วยความช่วยเหลือของตัวต้านทานเพียงสองตัว วงจรสำหรับสิ่งเดียวกันดังแสดงด้านล่าง
สูตรคำนวณแรงดันเอาต์พุตสำหรับ LM317 Regulator ให้เป็น
ในกรณีของเราแรงดันเอาต์พุต (Vout) ควรเป็น 8.6V และค่าของ R1 (ที่นี่ R2) ควรน้อยกว่า 1,000 โอห์มดังนั้นฉันจึงเลือกค่า 560 โอห์ม ด้วยสิ่งนี้ถ้าเราคำนวณค่า R2 เราจะได้ 3.3k โอห์ม หรือคุณสามารถใช้ค่าใดก็ได้ของการรวมตัวต้านทานหากคุณได้รับแรงดันขาออกเป็น 8.6V คุณสามารถใช้เครื่องคิดเลข LM317 ออนไลน์เพื่อทำให้งานของคุณง่ายขึ้น
การจัดเรียงรีเลย์เพื่อสลับระหว่างโหมด CC และ CV
เรามีรีเลย์ 12V สองตัวซึ่งแต่ละตัวขับเคลื่อนโดย Arduino ผ่านทรานซิสเตอร์ BC547 NPN ทั้งการจัดเรียงรีเลย์แสดงอยู่ด้านล่าง
Relay แรกจะใช้ในการสลับระหว่าง CC และ CV โหมดการชาร์จ, Relay นี้ถูกเรียกโดยขา Arduino ระบุว่าเป็น“โหมด” โดยค่าเริ่มต้นรีเลย์จะอยู่ในโหมด CC เมื่อถูกกระตุ้นการทำงานจะเปลี่ยนจากโหมด CC เป็นโหมด CV
ในทำนองเดียวกันRelay ที่สองคือการใช้เพื่อเชื่อมต่อหรือถอดอุปกรณ์ชาร์จจากแบตเตอรี่; รีเลย์นี้ถูกกระตุ้นโดยขา Arduino ที่มีข้อความว่า“ Charge” ตามค่าเริ่มต้นรีเลย์จะตัดการเชื่อมต่อแบตเตอรี่ออกจากเครื่องชาร์จเมื่อถูกกระตุ้นจะเชื่อมต่อเครื่องชาร์จเข้ากับแบตเตอรี่ นอกเหนือจากนี้ไดโอดสองตัว D1 และ D2 ยังใช้สำหรับป้องกันวงจรจากกระแสย้อนกลับและใช้ตัวต้านทาน 1K R4 และ R5 เพื่อ จำกัด กระแสที่ไหลผ่านฐานของทรานซิสเตอร์
การวัดแรงดันแบตเตอรี่ลิเธียม
ในการตรวจสอบกระบวนการชาร์จเราต้องวัดแรงดันแบตเตอรี่จากนั้นเราสามารถเปลี่ยนเครื่องชาร์จจากโหมด CC เป็นโหมด CV เมื่อแรงดันแบตเตอรี่ถึง 8.2V ตามที่กล่าวไว้ เทคนิคทั่วไปที่ใช้ในการวัดแรงดันไฟฟ้าด้วยไมโครคอนโทรลเลอร์เช่น Arduino คือการใช้วงจรแบ่งแรงดันไฟฟ้า รายการที่ใช้ที่นี่แสดงไว้ด้านล่าง
ดังที่เราทราบแรงดันไฟฟ้าสูงสุดที่ขา Arduino Analog สามารถวัดได้คือ 5V แต่แบตเตอรี่ของเราอาจสูงถึง 8.6V ในโหมด CV ดังนั้นเราจึงต้องลดแรงดันไฟฟ้านี้ให้เป็นแรงดันไฟฟ้าที่ต่ำลง สิ่งนี้ทำได้โดยวงจรแบ่งแรงดันไฟฟ้า คุณสามารถคำนวณค่าของตัวต้านทานและเรียนรู้เพิ่มเติมเกี่ยวกับตัวแบ่งแรงดันไฟฟ้าโดยใช้เครื่องคำนวณตัวแบ่งแรงดันไฟฟ้าออนไลน์นี้ ที่นี่เราได้อนุมานแรงดันไฟฟ้าขาออกโดยครึ่งหนึ่งของแรงดันไฟฟ้าขาเข้าเดิมจากนั้นแรงดันไฟฟ้าขาออกนี้จะถูกส่งไปยังขา Arduino Analog ผ่านป้าย " B_Voltage " เราสามารถดึงค่าดั้งเดิมในภายหลังได้ในขณะที่เขียนโปรแกรม Arduino
การวัดกระแสการชาร์จ
พารามิเตอร์ที่สำคัญอีกอย่างที่ต้องวัดคือกระแสไฟชาร์จ ในระหว่างโหมด CV แบตเตอรี่จะถูกตัดการเชื่อมต่อกับเครื่องชาร์จเมื่อกระแสไฟชาร์จต่ำกว่า 50mA แสดงว่าการชาร์จเสร็จสมบูรณ์ มีหลายวิธีในการวัดกระแสวิธีที่ใช้บ่อยที่สุดคือการใช้ตัวต้านทานแบบแบ่ง วงจรสำหรับสิ่งเดียวกันดังแสดงด้านล่าง
แนวคิดเบื้องหลังคือกฎโอห์มธรรมดา กระแสทั้งหมดที่ไหลไปยังแบตเตอรี่ถูกสร้างขึ้นเพื่อไหลผ่านตัวต้านทานแบบแบ่ง 2.2R จากนั้นตามกฎของโอห์ม (V = IR) เรารู้ว่าแรงดันตกคร่อมตัวต้านทานนี้จะเป็นสัดส่วนกับกระแสที่ไหลผ่าน เนื่องจากเราทราบค่าของตัวต้านทานและแรงดันไฟฟ้าที่สามารถวัดได้โดยใช้ Arduino Analog pin จึงสามารถคำนวณค่าของกระแสได้อย่างง่ายดาย ค่าของแรงดันตกคร่อมตัวต้านทานจะถูกส่งไปยัง Arduino ผ่านป้ายกำกับ “ B_Current ” เรารู้ว่ากระแสชาร์จสูงสุดจะเป็น 800mA ดังนั้นโดยใช้สูตร V = IR และ P = I 2 R เราสามารถคำนวณค่าความต้านทานและค่ากำลังของตัวต้านทานได้
Arduino และ LCD
ในที่สุดทางฝั่ง Arduino เราต้องเชื่อมต่อ LCD กับ Arduino เพื่อแสดงขั้นตอนการชาร์จให้กับผู้ใช้และควบคุมการชาร์จโดยการวัดแรงดันกระแสไฟฟ้าจากนั้นจึงเรียกรีเลย์ตามนั้น
Arduino Nano มีตัวควบคุมแรงดันไฟฟ้าในตัวดังนั้นแรงดันไฟฟ้าจึงถูกจ่ายให้กับ Vin และ 5V ที่มีการควบคุมจะใช้เพื่อเรียกใช้ Arduino และจอ LCD 16x2 แรงดันและกระแสสามารถวัดได้โดยพินอนาล็อก A0 และ A1 ตามลำดับโดยใช้ป้ายกำกับ“ B_Voltage” และ“ B_Current” รีเลย์สามารถทำงานได้โดยการสลับพิน GPIO D8 และ D9 ซึ่งเชื่อมต่อผ่านป้ายกำกับ“ โหมด” และ“ ชาร์จ” เมื่อแผนผังพร้อมแล้วเราสามารถดำเนินการสร้าง PCB ได้
การออกแบบและผลิต PCB โดยใช้ EasyEDA
ในการออกแบบวงจรเครื่องชาร์จแบตเตอรี่ลิทัมนี้ เราได้เลือกเครื่องมือ EDA ออนไลน์ที่เรียกว่า EasyEDA ก่อนหน้านี้ฉันเคยใช้ EasyEDA หลายครั้งและพบว่ามันสะดวกมากที่จะใช้เนื่องจากมีการรวบรวมรอยเท้าที่ดีและเป็นโอเพ่นซอร์ส หลังจากออกแบบ PCB แล้วเราสามารถสั่งซื้อตัวอย่าง PCB โดยบริการผลิต PCB ต้นทุนต่ำ นอกจากนี้ยังมีบริการจัดหาส่วนประกอบที่มีส่วนประกอบอิเล็กทรอนิกส์จำนวนมากและผู้ใช้สามารถสั่งซื้อส่วนประกอบที่ต้องการพร้อมกับคำสั่งซื้อ PCB
ในขณะที่ออกแบบวงจรและ PCB ของคุณคุณยังสามารถทำให้การออกแบบวงจรและ PCB ของคุณเป็นแบบสาธารณะเพื่อให้ผู้ใช้รายอื่นสามารถคัดลอกหรือแก้ไขได้และสามารถใช้ประโยชน์จากงานของคุณได้เรายังทำให้วงจรและเลย์เอาต์ PCB ทั้งหมดของเราเป็นแบบสาธารณะสำหรับวงจรนี้ด้วยตรวจสอบ ลิงค์ด้านล่าง:
easyeda.com/CircuitDigest/7.4V-Lithium-Charger-with-MCU
คุณสามารถ ดูเลเยอร์ใดก็ได้ (บน, ล่าง, ท็อปซิล, พื้นและอื่น ๆ) ของ PCB โดยการเลือกเลเยอร์จากหน้าต่าง 'เลเยอร์' คุณยังสามารถดูPCB เครื่องชาร์จแบตเตอรี่ลิเธียมวิธีดูแลการประดิษฐ์โดยใช้ ปุ่มมุมมองภาพถ่ายใน EasyEDA:
การคำนวณและการสั่งซื้อตัวอย่างออนไลน์
หลังจากออกแบบPCB เครื่องชาร์จแบตเตอรี่ลิเธียมเสร็จแล้ว คุณสามารถสั่งซื้อ PCB ผ่าน JLCPCB.com ในการสั่งซื้อ PCB จาก JLCPCB คุณต้องมีไฟล์ Gerber หากต้องการดาวน์โหลดไฟล์ Gerber ของ PCB ของคุณเพียงคลิกปุ่มสร้างไฟล์การผลิตบนหน้าตัวแก้ไข EasyEDA จากนั้นดาวน์โหลดไฟล์ Gerber จากที่นั่นหรือคุณสามารถคลิกสั่งซื้อที่ JLCPCB ดังที่แสดงในภาพด้านล่าง สิ่งนี้จะเปลี่ยนเส้นทางคุณไปยัง JLCPCB.com ซึ่งคุณสามารถเลือกจำนวน PCB ที่คุณต้องการสั่งซื้อจำนวนชั้นทองแดงที่คุณต้องการความหนาของ PCB น้ำหนักทองแดงและแม้แต่สีของ PCB เช่นเดียวกับภาพรวมที่แสดงด้านล่าง:
หลังจากคลิกสั่งซื้อที่ปุ่ม JLCPCB จะนำคุณไปยังเว็บไซต์ JLCPCB ซึ่งคุณสามารถสั่งซื้อ PCB ในอัตราที่ต่ำมากซึ่งอยู่ที่ $ 2 เวลาในการสร้างของพวกเขายังน้อยกว่ามากซึ่ง 48 ชั่วโมงด้วยการจัดส่ง DHL 3-5 วันโดยทั่วไปคุณจะได้รับ PCBs ภายในหนึ่งสัปดาห์หลังจากสั่งซื้อ
หลังจากสั่งซื้อ PCB แล้วคุณสามารถ ตรวจสอบ ความคืบหน้าในการผลิต PCB ของคุณ พร้อมวันที่และเวลา คุณตรวจสอบได้โดยไปที่หน้าบัญชีและคลิกที่ลิงค์ "ความคืบหน้าการผลิต" ใต้ PCB เหมือนดังที่แสดงในภาพด้านล่าง
หลังจากไม่กี่วันของการสั่งซื้อ PCB ฉันได้รับตัวอย่าง PCB ในบรรจุภัณฑ์ที่ดีดังที่แสดงในภาพด้านล่าง
หลังจากตรวจสอบให้แน่ใจว่าแทร็กและรอยเท้าถูกต้อง ฉันดำเนินการประกอบ PCB ต่อไปฉันใช้ส่วนหัวของผู้หญิงในการวาง Arduino Nano และ LCD เพื่อที่ฉันจะได้ลบออกในภายหลังหากต้องการสำหรับโครงการอื่น ๆ บอร์ดบัดกรีทั้งหมดมีลักษณะดังนี้ด้านล่าง
การเขียนโปรแกรม Arduino สำหรับการชาร์จแบตเตอรี่ลิเธียมสองขั้นตอน
เมื่อฮาร์ดแวร์พร้อมแล้วเราสามารถดำเนินการเขียนโค้ดสำหรับ Arduino Nano ได้ โปรแกรมที่สมบูรณ์สำหรับโครงการนี้มีให้ที่ด้านล่างของหน้าคุณสามารถอัปโหลดไปยัง Arduino ของคุณได้โดยตรง ตอนนี้เรามาแยกโปรแกรมออกเป็นตัวอย่างเล็ก ๆ และทำความเข้าใจว่าโค้ดทำอะไรได้จริง
และเช่นเคยเราจะเริ่มต้นโปรแกรมโดยการเริ่มต้น I / O หมุด ดังที่เราทราบจากฮาร์ดแวร์ของเราพิน A0 และ A2 ใช้เพื่อวัดแรงดันและกระแสตามลำดับและพิน D8 และ D9 ใช้ควบคุมรีเลย์โหมดและรีเลย์ชาร์จ รหัสที่จะกำหนดเหมือนกันแสดงอยู่ด้านล่าง
const int rs = 2, th = 3, d4 = 4, d5 = 5, d6 = 6, d7 = 7; // พูดถึงหมายเลขพินสำหรับการเชื่อมต่อ LCD LiquidCrystal lcd (rs, en, d4, d5, d6, d7); ค่า int = 9; // ปักหมุดเพื่อเชื่อมต่อหรือถอดแบตเตอรี่เข้ากับวงจร int Mode = 8; // ปักหมุดเพื่อสลับระหว่างโหมด CC และโหมด CV int Voltage_divider = A0; // ในการวัดแรงดันแบตเตอรี่ int Shunt_resistor = A1; // ในการวัดกระแสการชาร์จแบบ ลอย Charge_Voltage; ลอย Charge_current;
ภายใน ติดตั้ง ฟังก์ชั่นที่เราเริ่มต้นการทำงานของแอลซีดีและแสดงข้อความบทนำบนหน้าจอนอกจากนี้เรายังกำหนดพินรีเลย์เป็นพินเอาต์พุต จากนั้นทริกเกอร์รีเลย์การชาร์จให้เชื่อมต่อแบตเตอรี่เข้ากับเครื่องชาร์จและโดยค่าเริ่มต้นเครื่องชาร์จจะอยู่ในโหมด CC
การตั้งค่าเป็นโมฆะ () { lcd.begin (16, 2); // เริ่มต้น 16 * 2 LCD lcd.print ("7.4V Li + charger"); // Intro Message line 1 lcd.setCursor (0, 1); lcd.print ("- CircuitDigest"); // Intro Message line 2 lcd.clear (); pinMode (ชาร์จเอาท์พุท); PinMode (โหมด, เอาท์พุท); digitalWrite (ชาร์จสูง); // เริ่มต้น Chargig โดยการเชื่อมต่อแบตเตอรี่ digitalWrite (Mode, LOW); // สูงสำหรับโหมด CV และโหมด CC ต่ำเริ่มต้นโหมด CC ล่าช้า (1,000); }
ถัดไปภายในอนันต์ ห่วง ฟังก์ชั่นที่เราเริ่มต้นโปรแกรมโดยการวัดแรงดันไฟฟ้าแบตเตอรี่และการชาร์จไฟในปัจจุบันค่า 0.0095 และ 1.78 จะถูกคูณด้วยค่าอนาล็อกเพื่อแปลง 0 ถึง 1024 ให้เป็นค่าแรงดันและค่ากระแสจริงคุณสามารถใช้มัลติมิเตอร์และแคลมป์มิเตอร์เพื่อวัดค่าจริงจากนั้นคำนวณค่าตัวคูณ นอกจากนี้ยังคำนวณค่าตัวคูณในทางทฤษฎีตามตัวต้านทานที่เราใช้ แต่มันไม่แม่นยำเท่าที่ฉันคาดไว้
// วัดแรงดันและกระแสเริ่มต้น Charge_Voltage = analogRead (Voltage_divider) * 0.0092; // วัดแรงดันแบตเตอรี่ Charge_current = analogRead (Shunt_resistor) * 1.78; // วัดกระแสชาร์จ
หากค่าใช้จ่ายแรงดันน้อยกว่า 8.2V เราเข้าสู่โหมด CC และถ้ามันจะสูงกว่า 8.2V แล้วเราเข้าสู่โหมดแต่ละโหมดมีของตัวเอง while ลูป ภายในลูปโหมด CC เราจะให้พินโหมดเป็น LOW เพื่อให้อยู่ในโหมด CC จากนั้นตรวจสอบแรงดันและกระแสต่อไป ถ้าแรงดันไฟฟ้าเกินเกณฑ์ 8.2V เราจะทำลาย CC ลูปโดยใช้คำสั่งแบ่ง สถานะของแรงดันประจุยังแสดงบน LCD ภายในลูป CC
// ถ้าแรงดันแบตเตอรี่น้อยกว่า 8.2V ให้เข้าสู่โหมด CC ในขณะที่ (Charge_Voltage <8.2) // CC MODE Loop { digitalWrite (Mode, LOW); // อยู่ในโหมด CC // วัดแรงดันและ ประจุ กระแสไฟฟ้า_ แรงดันไฟฟ้า= analogRead (Voltage_divider) * 0.0095; // วัดแรงดันแบตเตอรี่Charge_current = analogRead (Shunt_resistor) * 1.78; // วัดกระแสชาร์จ // พิมพ์detials บน LCD lcd.print ("V ="); lcd.print (Charge_Voltage); lcd.setCursor (0, 1); lcd.print ("ในโหมด CC"); ล่าช้า (1,000); lcd.clear (); // ตรวจสอบว่าเราต้องออกจากโหมด CC if (Charge_Voltage> = 8.2) // ถ้าใช่{ digitalWrite (Mode, HIGH); // เปลี่ยนเป็นโหมดแบ่งCV ; } }
สามารถใช้เทคนิคเดียวกันสำหรับโหมด CV ได้เช่นกัน หากแรงดันไฟฟ้าเกิน 8.2V เครื่องชาร์จจะเข้าสู่โหมด CV โดยทำให้ขาโหมดสูง สิ่งนี้ใช้ 8.6V คงที่ในแบตเตอรี่และกระแสไฟในการชาร์จจะแตกต่างกันไปตามความต้องการของแบตเตอรี่ จากนั้นจะมีการตรวจสอบกระแสการชาร์จนี้และเมื่อถึงระดับต่ำกว่า 50mA เราสามารถยุติกระบวนการชาร์จได้โดยการถอดแบตเตอรี่ออกจากเครื่องชาร์จ ในการดำเนินการนี้เราต้องปิดรีเลย์การชาร์จตามที่แสดงในรหัสด้านล่าง
// หากแรงดันแบตเตอรี่มากกว่า 8.2V ให้เข้าสู่โหมด CV ในขณะที่ (Charge_Voltage> = 8.2) // CV MODE Loop { digitalWrite (Mode, HIGH); // อยู่ในโหมด CV // วัดแรงดันและ ประจุ กระแสไฟฟ้า_ แรงดันไฟฟ้า= analogRead (Voltage_divider) * 0.0092; // วัดแรงดันแบตเตอรี่Charge_current = analogRead (Shunt_resistor) * 1.78; // วัดกระแสชาร์จ // แสดงรายละเอียดให้ผู้ใช้ใน LCD lcd.print ("V ="); lcd.print (Charge_Voltage); lcd.print ("ฉัน ="); lcd.print (Charge_current); lcd.setCursor (0, 1); lcd.print ("ในโหมด CV"); ล่าช้า (1,000); lcd.clear (); // ตรวจสอบว่ามีการชาร์จแบตเตอรี่หรือไม่โดยตรวจสอบกระแสการชาร์จหาก (Charge_current <50) // ถ้าใช่ { digitalWrite (ชาร์จต่ำ); // ปิดการชาร์จ ในขณะที่ (1) // ปิดเครื่องชาร์จไว้จนกว่าจะรีสตาร์ท { lcd.setCursor (0, 1); lcd.print ("ชาร์จเสร็จสมบูรณ์"); ล่าช้า (1,000); lcd.clear (); } } } }
การทำงานของเครื่องชาร์จแบตเตอรี่ลิเธียมสองขั้นตอน 7.4V
เมื่อฮาร์ดแวร์พร้อมแล้วให้อัปโหลดโค้ดลงในบอร์ด Arduino จากนั้นเชื่อมต่อแบตเตอรี่เข้ากับขั้วชาร์จของบอร์ด ตรวจสอบให้แน่ใจว่าคุณเชื่อมต่อในขั้วที่ถูกต้องการกลับขั้วจะทำให้แบตเตอรี่และบอร์ดเสียหายอย่างร้ายแรง หลังจากเชื่อมต่อแบตเตอรี่แล้วเครื่องชาร์จโดยใช้อะแดปเตอร์ 12V คุณจะได้รับการต้อนรับด้วยข้อความแนะนำและที่ชาร์จจะเข้าสู่โหมด CC หรือโหมด CV ตามสถานะของแบตเตอรี่หากแบตเตอรี่หมดในขณะที่ชาร์จแบตเตอรี่จะเข้าสู่โหมด CCและ LCD ของคุณจะแสดงสิ่งนี้ด้านล่าง
ในฐานะที่เป็นแบตเตอรี่ที่ได้รับการเรียกเก็บแรงดันไฟฟ้าจะเพิ่มขึ้นตามที่ปรากฏในวิดีโอด้านล่าง เมื่อแรงดันไฟฟ้าถึง 8.2V เครื่องชาร์จจะเข้าสู่โหมด CV จากโหมด CCและตอนนี้จะแสดงทั้งแรงดันและกระแสตามที่แสดงด้านล่าง
จากตรงนี้การใช้พลังงานแบตเตอรี่จะลดลงอย่างช้าๆเมื่อได้รับการชาร์จ เมื่อกระแสถึง 50mA หรือน้อยกว่าเครื่องชาร์จจะถือว่าแบตเตอรี่ถูกชาร์จจนเต็มแล้วจึงถอดแบตเตอรี่ออกจากเครื่องชาร์จโดยใช้รีเลย์และแสดงหน้าจอต่อไปนี้ หลังจากนั้นคุณสามารถถอดแบตเตอรี่ออกจากเครื่องชาร์จและใช้ในแอปพลิเคชันของคุณได้
หวังว่าคุณจะเข้าใจโครงการและสนุกกับการสร้างมัน การทำงานที่สมบูรณ์สามารถพบได้ในวิดีโอด้านล่างหากคุณมีคำถามใด ๆ ให้โพสต์ไว้ในส่วนความคิดเห็นด้านล่างของการใช้ฟอรัมสำหรับคำถามทางเทคนิคอื่น ๆ อีกครั้งวงจรมีไว้เพื่อการศึกษาเท่านั้นดังนั้นควรใช้อย่างมีความรับผิดชอบเนื่องจากแบตเตอรี่ลิเธียมไม่เสถียรภายใต้สภาวะที่ไม่เอื้ออำนวย