สารบัญ:
- ขั้นตอนที่ 1: MPPT คืออะไรและเหตุใดเราจึงต้องการ
- ขั้นตอนที่ 2: MPPT ทำงานอย่างไร
- ขั้นตอนที่ 3: การใช้ MPPT บน Arduino
- ขั้นตอนที่ 4: ตัวแปลงบั๊ก
- ขั้นตอนที่ 5: สัมผัสสุดท้าย -
- ขั้นตอนที่ 6: อัปเดต: - ไดอะแกรมวงจรจริง BOM & Code
วีดีโอ: Arduino - เครื่องชาร์จพลังงานแสงอาทิตย์ PV MPPT: 6 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
มีตัวควบคุมการประจุจำนวนมากในตลาด ตัวควบคุมการประจุไฟฟ้าราคาถูกทั่วไปไม่มีประสิทธิภาพในการใช้พลังงานสูงสุดจากแผงโซลาร์เซลล์ สิ่งที่มีประสิทธิภาพมีราคาแพงมาก
ดังนั้นฉันจึงตัดสินใจสร้างตัวควบคุมการชาร์จของตัวเองซึ่งมีประสิทธิภาพ และฉลาดพอที่จะเข้าใจความต้องการของแบตเตอรี่และสภาพแสงอาทิตย์ ต้องใช้การดำเนินการที่เหมาะสมเพื่อดึงพลังงานสูงสุดจากพลังงานแสงอาทิตย์และใส่ไว้ในแบตเตอรี่อย่างมีประสิทธิภาพ
หากคุณต้องการความพยายามของฉันมากกว่าโปรดลงคะแนนคำแนะนำนี้
ขั้นตอนที่ 1: MPPT คืออะไรและเหตุใดเราจึงต้องการ
แผงโซลาร์ของเรานั้นโง่และไม่ฉลาดที่จะเข้าใจสภาพแบตเตอรี่ สมมติว่าเรามีแผงโซลาร์เซลล์ขนาด 12v/100 วัตต์ และจะให้เอาต์พุตระหว่าง 18V-21V ขึ้นอยู่กับผู้ผลิต แต่แบตเตอรี่ได้รับการจัดอันดับสำหรับแรงดันไฟฟ้า 12v เมื่อชาร์จเต็มในสภาวะจะเป็น 13.6v และจะเป็น 11.0v ที่เต็ม การปลดปล่อย ตอนนี้สมมติว่าแบตเตอรี่ของเราอยู่ที่การชาร์จ 13v แผงให้ 18v, 5.5A ที่ประสิทธิภาพการทำงาน 100% (ไม่สามารถมีได้ 100% แต่ให้สมมติ) ตัวควบคุมทั่วไปมีตัวควบคุมแรงดันไฟฟ้า PWM ckt ซึ่งลดแรงดันไฟฟ้าลงเหลือ 13.6 แต่ไม่มีกระแสเพิ่มขึ้น มันให้การป้องกันการชาร์จเกินและกระแสไฟรั่วไปยังแผงในช่วงกลางคืนเท่านั้น
เราจะได้ 13.6v*5.5A = 74.8 วัตต์
เราหลวมประมาณ 25 วัตต์
เพื่อพบปัญหานี้ฉันได้ใช้ตัวแปลง smps buck ตัวแปลงประเภทนี้มีประสิทธิภาพมากกว่า 90%
ปัญหาที่สองที่เรามีคือเอาต์พุตที่ไม่เป็นเชิงเส้นของแผงโซลาร์เซลล์ พวกเขาจำเป็นต้องดำเนินการที่แรงดันไฟฟ้าบางอย่างเพื่อเก็บเกี่ยวพลังงานสูงสุดที่มีอยู่ ผลผลิตแตกต่างกันไปในแต่ละวัน
เพื่อแก้ปัญหานี้ใช้อัลกอริทึม MPPT MPPT(การติดตามจุดไฟสูงสุด) ตามชื่อที่แนะนำอัลกอริธึมนี้ติดตามพลังงานสูงสุดที่มีอยู่จากแผงควบคุมและเปลี่ยนพารามิเตอร์เอาต์พุตเพื่อรักษาสภาพ
ดังนั้นโดยการใช้ MPPT แผงของเราจะผลิตพลังงานสูงสุดและตัวแปลงบั๊กจะทำให้ประจุนี้มีประสิทธิภาพในแบตเตอรี่
ขั้นตอนที่ 2: MPPT ทำงานอย่างไร
ฉันจะไม่พูดถึงเรื่องนี้ในรายละเอียด ดังนั้นหากคุณต้องการทำความเข้าใจให้ดูที่ลิงค์นี้ - MPPT คืออะไร?
ในโครงการนี้ ฉันได้ติดตามลักษณะอินพุต V-I และเอาต์พุต V-I ด้วย โดยการคูณอินพุต V-I และเอาต์พุต V-I เราสามารถมีกำลังเป็นวัตต์
สมมติว่าเรากำลังมี 17 V, 5 A นั่นคือ 17x5 = 85 วัตต์ตลอดเวลาของวัน ในเวลาเดียวกันเอาต์พุตของเราคือ 13 V, 6A เช่น 13x6 = 78 Watt
ตอนนี้ MPPT จะเพิ่มหรือลดแรงดันเอาต์พุตโดยเปรียบเทียบกับกำลังอินพุต/เอาต์พุตก่อนหน้า
หากกำลังไฟฟ้าอินพุตก่อนหน้าสูงและแรงดันเอาต์พุตต่ำกว่าปัจจุบัน แรงดันเอาต์พุตจะลดลงอีกครั้งเพื่อกลับสู่กำลังสูง และหากแรงดันเอาต์พุตสูง แรงดันปัจจุบันจะเพิ่มขึ้นเป็นระดับก่อนหน้า ดังนั้นจึงยังคงแกว่งไปมารอบจุดกำลังสูงสุด ความผันผวนนี้จะลดลงโดยอัลกอริทึม MPPT ที่มีประสิทธิภาพ
ขั้นตอนที่ 3: การใช้ MPPT บน Arduino
นี่คือสมองของเครื่องชาร์จนี้ ด้านล่างนี้คือโค้ด Arduino เพื่อควบคุมเอาต์พุตและการนำ MPPT ไปใช้ในบล็อกโค้ดเดียว
// Iout = กระแสไฟขาออก
// Vout = แรงดันขาออก
// Vin = แรงดันไฟฟ้าขาเข้า
// Pin = กำลังไฟฟ้าเข้า, Pin_previous = กำลังไฟฟ้าเข้าล่าสุด
// Vout_last = แรงดันเอาต์พุตล่าสุด, Vout_sense = แรงดันเอาต์พุตปัจจุบัน
โมฆะ Regulation (float Iout, float Vin, float Vout) { if((Vout>Vout_max) || (Iout>Iout_max) || ((Pin>Pin_previous && Vout_sense<Vout_last) || (PinVout_last)))
{
ถ้า(duty_cycle>0)
{
duty_cycle -=1;
}
analogWrite (buck_pin, duty_cycle);
}
อื่นถ้า ((Vout
{
ถ้า(duty_cycle<240)
{ duty_cycle+=1;
}
analogWrite (buck_pin, duty_cycle);
}
Pin_previous = ปักหมุด;
Vin_last = วิน;
Vout_last = Vout;
}
ขั้นตอนที่ 4: ตัวแปลงบั๊ก
ฉันใช้ N-channel mosfet เพื่อสร้างตัวแปลงบั๊ก โดยปกติผู้คนจะเลือกมอสเฟต P-channel สำหรับการสลับด้านสูงและหากพวกเขาเลือกมอสเฟต N-channel เพื่อจุดประสงค์เดียวกันจะต้องใช้ IC ไดรเวอร์หรือการรัดบูต ckt
แต่ฉันแก้ไขตัวแปลงบั๊ก ckt เพื่อให้มีการสลับด้านต่ำโดยใช้ N-channel mosfet ฉันใช้ N-channel เพราะสิ่งเหล่านี้มีต้นทุนต่ำ เรตติ้งพลังงานสูงและการกระจายพลังงานที่ต่ำกว่า โปรเจ็กต์นี้ใช้มอสเฟตระดับลอจิก IRFz44n ดังนั้นจึงสามารถขับเคลื่อนด้วยพิน Arduino PWM ได้โดยตรง
สำหรับกระแสโหลดที่สูงขึ้นควรใช้ทรานซิสเตอร์เพื่อจ่าย 10V ที่เกตเพื่อให้มอสเฟตอิ่มตัวอย่างสมบูรณ์และลดการกระจายพลังงาน ฉันก็ทำเช่นเดียวกัน
อย่างที่คุณเห็นใน ckt ด้านบน ฉันได้วาง mosfet ไว้ที่ -ve แรงดัน ดังนั้นใช้ +12v จากแผงควบคุมเป็นกราวด์ การกำหนดค่านี้ทำให้ฉันสามารถใช้ N-channel mosfet สำหรับตัวแปลงบั๊กที่มีส่วนประกอบขั้นต่ำ
แต่ก็มีข้อเสียอยู่บ้าง เนื่องจากคุณมีแรงดันไฟฟ้าที่แยกจากกันทั้งสองข้าง คุณจึงไม่มีพื้นอ้างอิงทั่วไปอีกต่อไป ดังนั้นการวัดแรงดันไฟฟ้าจึงเป็นเรื่องยากมาก
ฉันได้เชื่อมต่อ Arduino ที่ขั้วอินพุต Solar และใช้บรรทัด -ve เป็นกราวด์สำหรับ Arduino เราสามารถวัดอินพุตโวลาเทกได้อย่างง่ายดาย ณ จุดนี้โดยใช้ตัวแบ่งแรงดัน ckt ตามความต้องการของเรา แต่ไม่สามารถวัดแรงดันเอาท์พุตได้ง่ายๆ เนื่องจากเราไม่มีกราวด์ร่วมกัน
ตอนนี้การทำเช่นนี้มีเคล็ดลับ แทนที่จะวัดแรงดันไฟฟ้าของตัวเก็บประจุเอาต์พุต ฉันได้วัดแรงดันไฟฟ้าระหว่างเส้นสองเส้น ใช้ solar -ve เป็นกราวด์สำหรับ arduino และ output -ve เป็นสัญญาณ / แรงดันที่จะวัด ค่าที่คุณได้รับจากการวัดนี้ควรหักออกจากแรงดันไฟฟ้าขาเข้าที่วัดได้ และคุณจะได้แรงดันเอาต์พุตจริงในตัวเก็บประจุเอาต์พุต
Vout_sense_temp=Vout_sense_temp*0.92+float(raw_vout)*volt_factor*0.08; // วัดความผันผวนระหว่างอินพุต gnd และเอาต์พุต gnd
Vout_sense=Vin_sense-Vout_sense_temp-diode_volt; // เปลี่ยนความแตกต่างของแรงดันระหว่างสองกราวด์เป็นแรงดันเอาต์พุต..
สำหรับการวัดกระแส ฉันใช้โมดูลตรวจจับกระแส ACS-712 พวกเขาได้รับพลังงานจาก Arduino และเชื่อมต่อกับอินพุต gnd
ตัวจับเวลาภายในได้รับการแก้ไขเพื่อรับ 62.5 Khz PWM ที่พิน D6 ซึ่งใช้ในการขับมอสเฟต จะต้องใช้ไดโอดบล็อกเอาต์พุตเพื่อให้มีการรั่วไหลย้อนกลับและการป้องกันขั้วย้อนกลับ ใช้ไดโอด schottky ของพิกัดกระแสที่ต้องการสำหรับจุดประสงค์นี้ ค่าของตัวเหนี่ยวนำขึ้นอยู่กับความถี่และความต้องการกระแสไฟขาออก คุณสามารถใช้เครื่องคำนวณตัวแปลงบั๊กที่มีจำหน่ายออนไลน์หรือใช้โหลด 100uH 5A-10A ไม่เกินกระแสไฟขาออกสูงสุดของตัวเหนี่ยวนำ 80%-90%
ขั้นตอนที่ 5: สัมผัสสุดท้าย -
คุณยังสามารถเพิ่มคุณสมบัติเพิ่มเติมให้กับที่ชาร์จของคุณได้ เช่นเดียวกับของฉันมี LCD แสดงพารามิเตอร์และสวิตช์ 2 ตัวเพื่อรับอินพุตจากผู้ใช้
ฉันจะอัปเดตรหัสสุดท้ายและทำไดอะแกรม ckt ให้เสร็จในไม่ช้า
ขั้นตอนที่ 6: อัปเดต: - ไดอะแกรมวงจรจริง BOM & Code
อัปเดต:-
ฉันได้อัปโหลดโค้ด บอม และวงจรแล้ว มันแตกต่างจากของฉันเล็กน้อยเพราะมันง่ายกว่าที่จะทำสิ่งนี้
แนะนำ:
อาร์เรย์แผงโซลาร์เซลล์พร้อมโมดูล MPPT ภาษาจีน: 11 ขั้นตอน
อาร์เรย์แผงโซลาร์เซลล์พร้อมโมดูล MPPT ภาษาจีน: คำอธิบายสั้น ๆ ของฉันเกี่ยวกับการทำแผงโซลาร์เซลล์ให้ทำงานได้ดีและค่อนข้างถูกในนั้น…ฉันไม่รับประกันเนื้อหาใด ๆ เลย จริงๆ แล้วอาจเป็นแค่คำพูดเพ้อเจ้อของคนบ้า สงสัยจะ…มีภาพบางภาพ
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): 6 ขั้นตอน (พร้อมรูปภาพ)
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): การชาร์จแบบเหนี่ยวนำ (เรียกอีกอย่างว่าการชาร์จแบบไร้สายหรือการชาร์จแบบไร้สาย) เป็นการถ่ายโอนพลังงานแบบไร้สาย ใช้การเหนี่ยวนำแม่เหล็กไฟฟ้าเพื่อจ่ายกระแสไฟฟ้าให้กับอุปกรณ์พกพา แอปพลิเคชั่นที่พบบ่อยที่สุดคือ Qi Wireless Charging st
MPPT Charge Controller ตอนที่ 1: 4 ขั้นตอน
MPPT Charge Controller ส่วนที่ 1: ดังที่เราทราบดีว่าพลังงานแสงอาทิตย์จะเป็นอนาคตของอุปกรณ์อิเล็กทรอนิกส์ทั้งหมด แต่การใช้พลังงานแสงอาทิตย์อย่างมีประสิทธิภาพ เราจำเป็นต้องมีวงจรที่ซับซ้อนเล็กน้อย ดังที่เราทราบเกี่ยวกับเครื่องชาร์จพลังงานแสงอาทิตย์แบบ PWM แบบดั้งเดิม มันสร้างได้ง่ายและมีต้นทุนต่ำ แต่มันเปลืองมาก
การเพิ่มเครื่องชาร์จพลังงานแสงอาทิตย์ MPPT ลงในชุดแบตเตอรี่: 4 ขั้นตอน
การเพิ่มเครื่องชาร์จพลังงานแสงอาทิตย์ MPPT ลงในชุดแบตเตอรี่: นี่เป็นแนวคิดที่สร้างขึ้นจากการนำแบตเตอรี่แล็ปท็อปเก่ากลับมาใช้ใหม่จากคำแนะนำก่อนหน้าของฉัน ถึงเวลาแล้วที่จะนำก้อนแบตเตอรี่ไปใช้ให้เกิดประโยชน์ อันดับแรก เราควรมีวิธีชาร์จก้อนแบตเตอรี่ วิธีที่ง่ายและสนุกในการทำสิ่งนี้คือ
Arduino ที่ถูกที่สุด -- Arduino ที่เล็กที่สุด -- Arduino Pro Mini -- การเขียนโปรแกรม -- Arduino Neno: 6 ขั้นตอน (พร้อมรูปภาพ)
Arduino ที่ถูกที่สุด || Arduino ที่เล็กที่สุด || Arduino Pro Mini || การเขียนโปรแกรม || Arduino Neno:…………………………… โปรดสมัครสมาชิกช่อง YouTube ของฉันสำหรับวิดีโอเพิ่มเติม……. โปรเจ็กต์นี้เกี่ยวกับวิธีเชื่อมต่อ Arduino ที่เล็กที่สุดและถูกที่สุดเท่าที่เคยมีมา Arduino ที่เล็กที่สุดและถูกที่สุดคือ arduino pro mini คล้ายกับ Arduino