บทความนี้อธิบายวงจรอินเวอร์เตอร์คลื่นไซน์บริสุทธิ์อย่างง่ายโดยใช้ Arduino ซึ่งสามารถอัพเกรดเพื่อให้ได้กำลังขับที่ต้องการตามความต้องการของผู้ใช้
การทำงานของวงจร
ในบทความที่แล้วเราได้เรียนรู้ วิธีสร้างการมอดูเลตความกว้างพัลส์คลื่นไซน์หรือ SPWM ผ่าน Arduino เราจะใช้บอร์ด Arduino ตัวเดียวกันเพื่อสร้างวงจรอินเวอร์เตอร์คลื่นไซน์บริสุทธิ์แบบธรรมดาที่เสนอการออกแบบนั้นตรงไปตรงมาอย่างมากดังแสดงในรูปต่อไปนี้
คุณเพียงแค่ต้อง โปรแกรมบอร์ด arduino ด้วยรหัส SPWM ตามที่อธิบายไว้ในบทความก่อนหน้านี้และเชื่อมต่อกับอุปกรณ์ภายนอกบางอย่าง
พิน # 8 และพิน # 9 สร้าง SPWM สลับกันและเปลี่ยน mosfets ที่เกี่ยวข้องด้วยรูปแบบ SPWM เดียวกัน
ในทางกลับกัน mosfst จะเหนี่ยวนำหม้อแปลงที่มีรูปคลื่น SPWM กระแสสูงโดยใช้พลังงานแบตเตอรี่ทำให้รองของ trafo สร้างรูปคลื่นที่เหมือนกัน แต่ ที่ระดับไฟ AC .
วงจรอินเวอร์เตอร์ Arduino ที่นำเสนอสามารถอัปเกรดเป็นระดับวัตต์ที่สูงขึ้นที่ต้องการได้เพียงแค่อัปเกรด mosfets และการจัดอันดับ trafo ตามนั้นหรือคุณสามารถแปลงสิ่งนี้เป็นสะพานแบบเต็มหรือ อินเวอร์เตอร์คลื่นไซน์ H-bridge
เปิดบอร์ด Arduino
ในแผนภาพบอร์ด Arduino สามารถเห็นได้จากวงจร 7812 IC ซึ่งสามารถสร้างได้โดยการเดินสายไฟ a มาตรฐาน 7812 IC ในลักษณะต่อไปนี้ IC จะตรวจสอบให้แน่ใจว่าอินพุตไปยัง Arduino ไม่เกินเครื่องหมาย 12V แม้ว่าสิ่งนี้อาจไม่สำคัญอย่างยิ่งเว้นแต่แบตเตอรี่จะได้รับการจัดอันดับมากกว่า 18V
หากคุณมีคำถามใด ๆ เกี่ยวกับวงจรอินเวอร์เตอร์ SPWM ข้างต้นโดยใช้ Arduino ที่ตั้งโปรแกรมไว้โปรดอย่าลังเลที่จะถามพวกเขาผ่านความคิดเห็นที่มีค่าของคุณ
รูปภาพรูปคลื่นสำหรับ Arduino SPWM
ภาพรูปคลื่น SPWM ที่ได้จากการออกแบบอินเวอร์เตอร์ Arduino ข้างต้น (ทดสอบและส่งโดย Mr. Ainsworth Lynch)
สำหรับรหัสโปรแกรมโปรดไปที่ลิงค์ต่อไปนี้:
วงจรกำเนิด Arduino SPWM
อัพเดท:
ใช้ BJT Buffer Stage เป็น Level Shifter
เนื่องจากบอร์ด Arduino จะให้เอาต์พุต 5V จึงอาจไม่ใช่ค่าที่เหมาะสำหรับการขับมอสเฟตโดยตรง
ดังนั้นอาจจำเป็นต้องใช้ขั้นตอนการเปลี่ยนระดับ BJT ระดับกลางเพื่อเพิ่มระดับเกตเป็น 12V เพื่อให้มอสเฟ็ททำงานได้อย่างถูกต้องโดยไม่ทำให้อุปกรณ์ร้อนขึ้นโดยไม่จำเป็น แผนภาพที่อัปเดต (แนะนำ) สามารถดูได้ด้านล่าง:
การออกแบบข้างต้นเป็นแบบที่แนะนำ! (อย่าลืมเพิ่มตัวตั้งเวลาหน่วงตามคำอธิบายด้านล่าง !!)
คลิปวิดีโอ
ส่วนรายการ
ตัวต้านทานทั้งหมดคือ 1/4 วัตต์ CFR 5%
- 10K = 4
- 1K = 2
- BC547 = 4nos
- Mosfets IRF540 = 2nos
- Arduino UNO = 1
- Transformer = 9-0-9V / 220V / 120V กระแสตามความต้องการ
- แบตเตอรี่ = 12V ค่า Ah ตามความต้องการ
ผลล่าช้า
เพื่อให้แน่ใจว่าสเตจ mosfet ไม่เริ่มต้นในระหว่างการบูต Arduino หรือเริ่มต้นระบบคุณสามารถเพิ่มตัวสร้างความล่าช้าต่อไปนี้และเชื่อมต่อที่ฐานของทรานซิสเตอร์ BC547 ด้านซ้าย วิธีนี้จะป้องกัน mosfets และป้องกันไม่ให้เกิดการลุกไหม้ระหว่างเปิดสวิตช์เปิดเครื่อง Arduino
โปรดทดสอบและยืนยันเอาต์พุตความล่าช้าด้วยไฟ LED ที่คอลเลคเตอร์ก่อนที่จะปิดอินเวอร์เตอร์
การเพิ่มตัวควบคุมแรงดันไฟฟ้าอัตโนมัติ
เช่นเดียวกับอินเวอร์เตอร์อื่น ๆ เอาต์พุตจากการออกแบบนี้อาจเพิ่มขึ้นถึงขีด จำกัด ที่ไม่ปลอดภัยเมื่อชาร์จแบตเตอรี่จนเต็ม
เพื่อควบคุมสิ่งนี้ เครื่องควบคุมแรงดันไฟฟ้าอัตโนมัติ สามารถจ้างได้ตามที่แสดงด้านล่าง
ตัวสะสม BC547 ควรเชื่อมต่อกับฐานของคู่ BC547 ด้านซ้ายซึ่งเชื่อมต่อกับ Arduino ผ่านตัวต้านทาน 10K
สำหรับวงจรแก้ไขแรงดันไฟฟ้ารุ่นแยกเราสามารถแก้ไขวงจรด้านบนด้วยหม้อแปลงดังที่แสดงด้านล่าง
ตรวจสอบให้แน่ใจว่าได้ต่อสายลบเข้ากับขั้วลบของแบตเตอรี่
วิธีการตั้งค่า
ในการตั้งค่าวงจรแก้ไขแรงดันไฟฟ้าอัตโนมัติให้ป้อน 230V หรือ 110V ที่เสถียรตามข้อกำหนดอินเวอร์เตอร์ของคุณไปยังด้านอินพุตของวงจร
จากนั้นปรับค่าที่ตั้งไว้ล่วงหน้า 10k อย่างระมัดระวังเพื่อให้ไฟ LED สีแดงสว่างขึ้น นั่นคือทั้งหมดที่ปิดผนึกที่ตั้งไว้ล่วงหน้าและเชื่อมต่อวงจรกับบอร์ด Arduino ด้านบนเพื่อใช้การควบคุมแรงดันไฟฟ้าขาออกอัตโนมัติที่ตั้งใจไว้
ใช้ CMOS Buffer
การออกแบบอื่นสำหรับวงจรอินเวอร์เตอร์ Arduino sinewave ด้านบนสามารถดูได้ด้านล่าง CMOS IC ใช้เป็นไฟล์ ช่วยบัฟเฟอร์ สำหรับเวที BJT
สำคัญ:
เพื่อหลีกเลี่ยงการเปิดสวิตช์โดยไม่ได้ตั้งใจก่อนที่จะบูต Arduino วิธีง่ายๆ ล่าช้าในวงจรจับเวลา อาจรวมอยู่ในการออกแบบข้างต้นดังที่แสดงด้านล่าง:
ก่อนหน้านี้: Arduino SPWM Generator Circuit - รายละเอียดโค้ดและไดอะแกรม ถัดไป: เครื่องวัดความถี่ Arduino ใช้จอแสดงผล 16 × 2