DC/DC Cuk Converter by using Arduino UNO

ในโครงงานนี้จะเป็นวงจรดีซี ทู ดีซี แบบชุก คอนเวอร์เตอร์ (Cuk Converter) ซึ่งจะเป็นคอนเวอร์เตอร์อีกแบบหนึ่งที่มีรูปแบบการทำงานแตกต่างจากคอนเวอร์เตอร์ที่ได้นำเสนอมาก่อนหน้านี้ โดยในโครงงานจะต่ออุปกรณ์ต่างๆ เป็นวงจรขนาดเล็ก เพื่อเรียนรู้การทำงาน การควบคุมการทำงานของวงจรชุก คอนเวอร์เตอร์ และการเขียนโปรแกรมสำหรับทดลอง รวมทั้งสำหรับสังเกตุการทำงานร่วมกับบอร์ดควบคุม Arduino UNO ในการประมวลผลกันแบบเบื้องต้น

DC/DC Cuk Converter by using Arduino UNO
รูปที่ 1 เริ่มต้นเตรียมอุปกรณ์สำหรับประกอบวงจรชุก คอนเวอร์เตอร์
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 2 เริ่มประกอบส่วนของอุปกรณ์ขับกำลังต่างๆ

รูปที่ 1 และรูปที่ 2 เป็นการเตรียมอุปกรณ์ต่างๆ สำหรับประกอบโครงงาน โดยตัวเหนี่ยวนำ L1 และ L2 จะใช้แบบสำเร็จที่มีจำหน่ายทั่วไป ขนาด L1 = 470uH และ L2 = 330uH โดยในรูปจะเป็นบอร์ดในส่วนของขับกำลังวงจรชุก คอนเวอร์เตอร์ ซึ่งในส่วนของบอร์ดควบคุม Arduino UNO จะเชื่อมต่อถึงกันผ่านสายแพรสำหรับส่งสัญญาณควบคุมการทำงานและรับค่าสัญญาณป้อนกลับต่างๆ เพื่อประมวลผลนั้นเอง

DC/DC Cuk Converter by using Arduino UNO
รูปที่ 3 ลักษณะของบอร์ดขับกำลังที่ประกอบเสร็จเรียบร้อย
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 4 การเชื่อมต่อบอร์ดขับกำลังเข้ากับบอร์ดประมวลผล Arduino UNO
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 5 แสดงตัวต้านทานโหลด 30 โอห์ม 5 วัตต์ ที่ใช้ในการทดสอบโครงงาน
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 6 ลักษณะของการเตรียมทดลองโครงงาน

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

 
 /*
    Arduino Code for DC-DC Cuk Converter Topology
    MCU : Arduino UNO
    Fs = 35kHz   
    Vi = 10V-20V/2A
    Vo = 16V/500mA
    Output Power : 7W (Continuous)
    R&D by : www.electronicsdna.com
    Date : 2-12-2022 (V.0)       
 */

#include <PWM.h>

int PinPWM = 9;                
int Output_PWM = 0;
int32_t frequency = 35000;     // frequency (in Hz)

void setup()
{   
  Serial.begin(9600);
  InitTimersSafe();   
  bool success = SetPinFrequencySafe(PinPWM, frequency);   
  if(success) {   
    pinMode(9,OUTPUT);  
  }
}

void loop()
{
     int Voutput = analogRead(A1);  
     //    Serial.print(" Vo = ");  
     //    Serial.println(Voutput);      
         
         if(Voutput>503){Output_PWM = Output_PWM-1; goto goPWMSignal;}   
         if(Voutput<497){Output_PWM = Output_PWM+1; goto goPWMSignal;} 
         
 goPWMSignal:
         if(Output_PWM>230){Serial.print("\t MAX "); Output_PWM=230; goto setPWMSignal;}            
         if(Output_PWM<0)  {Serial.print("\t MIN "); Output_PWM=0; goto setPWMSignal;}
         
 setPWMSignal:           
         pwmWrite(PinPWM,Output_PWM);   
         delay(1);   
}

Download Library ——-> PWM.h

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

DC/DC Cuk Converter by using Arduino UNO
รูปที่ 7 ลักษณะสัญญาณขับขาเกต (VGS) ตำแหน่งช่องสัญญาณ CH1 และสัญญาณกระแสที่ไหลผ่านตัวเหนี่ยวนำ L1

รูปที่ 7 แสดงลักษณะของสัญญาณพัลซ์วิดมอดูเลตชั่นจะค่อนข้างแคบ ในขณะที่วงจรอยู่ในโหมดสแตนบาย (Standby mode) ซึ่งแรงดันเอาต์พุตยังคงไว้ที่ 16V และความถี่สวิตชิ่งจะกำหนดไว้ที่ 35kHz

DC/DC Cuk Converter by using Arduino UNO
รูปที่ 8 แรงดันอินพุตที่กำหนดไว้สำหรับในโหมดสแตนบาย
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 9 แสดงค่าแรงดันเอาต์พุตที่กำหนดไว้ประมาณ 16V โหมดสแตนบาย
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 10 การใช้แคล้มมิเตอร์สำหรับวัดกระแสที่จ่ายให้โหลด
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 11 แหล่งจ่ายไฟเลี้ยงสำหรับทดลองวงจรชุก คอนเวอร์เตอร์
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 12 แหล่งจ่ายไฟเลี้ยงสำหรับบอร์ดควบคุม Arduino UNO

ในรูปที่ 11 และรูปที่ 12 เป็นแหล่งจ่ายไฟเลี้ยงสำหรับใช้ในการทดลองโครงงานโดยในรูปที่ 11 เป็นแหล่งจ่ายแบบปรับค่าได้สำหรับทดสอบการทำงานวงจรชุก คอนเวอร์เตอร์ในโหมดต่างๆ และในรูปที่ 12 จะเป็นแหล่งจ่ายไฟเลี้ยงสำหรับบอร์ดควบคุม Arduino UNO ขนาด 15VDC โดยในส่วนนี้จะแยกออกจากชุดไฟเลี้ยงสำหรับวงจรชุก คอนเวอร์เตอร์ เพื่อให้การทำงานคงที่

DC/DC Cuk Converter by using Arduino UNO
รูปที่ 13 การทดลองที่ 1 จ่ายไฟเลี้ยงจ่ายไฟเลี้ยงอินพุตประมาณ 16V
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 14 การทดลองที่ 1 สัญญาณพัลซ์วิดธ์มอดูเลตชั่นที่ตอบสนองเมื่อจ่ายแรงดันอินพุตที่ 16V
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 15 การทดลองที่ 1 แสดงค่าแรงดันเอาต์พุตเมื่อทดลองจ่ายแรงดันอินพุตที่ 16V
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 16 การทดลองที่ 1 แสดงค่ากระแสที่ไหลผ่านตัวต้านทานโหลดที่แรงดันอินพุต 16V

รูปที่ 13 ถึงรูปที่ 16 เป็นการทดลองที่ 1 ในเบื้องต้น ซึ่งในการทดลองนี้จะกำหนดค่าแรงดันอินพุตและเอาต์พุตให้มีระดับใกล้เคียงกัน (ที่แรงดัน 16V) และให้วงจรจ่ายกระแสโหลดประมาณ 0.59A (แสดงในรูปที่ 16) จากนั้นสังเกตสัญญาณพัลซ์วิดมอดูเลตชั่นที่เกิดขึ้น ซึ่งจะมีค่าความกว้างที่ประมาณ 50% (ในรูปที่ 14) ทั้งนี้ค่าแรงดันเอาต์พุตยังคงมีค่าประมาณ 16V ที่เกิดขึ้นการควบคุมของโปรแกรมนั้นเอง

DC/DC Cuk Converter by using Arduino UNO
รูปที่ 17 การทดลองที่ 2 จ่ายไฟเลี้ยงจ่ายไฟเลี้ยงอินพุตประมาณ 10V
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 18 การทดลองที่ 2 สัญญาณพัลซ์วิดธ์มอดูเลตชั่นที่ตอบสนองเมื่อจ่ายแรงดันอินพุตที่ 10V
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 19 การทดลองที่ 2 แสดงค่าแรงดันเอาต์พุตเมื่อทดลองจ่ายแรงดันอินพุตที่ 10V
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 20 การทดลองที่ 2 แสดงค่ากระแสที่ไหลผ่านตัวต้านทานโหลดที่แรงดันอินพุต 10V

สำหรับการทดลองที่ 2 รูปที่ 17 ถึงรูปที่ 20 เป็นการทดลองด้วยการป้อนแรงดันอินพุตที่ 10V ซึ่งต่ำกว่าแรงดันเอาต์พุต ทั้งนี้เพื่อสังเกตการทำงานของวงจรให้เป็นโหมดบูท คอนเวอร์เตอร์ และสังเกตเห็นว่าสัญญาณพัลซ์วิดมอดูเลตชั่นจะมาค่ามากกว่า 50% เพื่อรักษาระดับแรงดันเอาต์พุตให้คงที่ (แสดงในรูปที่ 18) ในรูปที่ 19 จะเป็นการวัดค่าแรงดันเอาต์พุตที่เกิดขึ้นซึ่งจะยังคงที่ประมาณ 16V

DC/DC Cuk Converter by using Arduino UNO
รูปที่ 21 การทดลองที่ 3 จ่ายไฟเลี้ยงจ่ายไฟเลี้ยงอินพุตประมาณ 20V
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 22 การทดลองที่ 3 สัญญาณพัลซ์วิดธ์มอดูเลตชั่นที่ตอบสนองเมื่อจ่ายแรงดันอินพุตที่ 20V
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 23 การทดลองที่ 3 แสดงค่าแรงดันเอาต์พุตเมื่อทดลองจ่ายแรงดันอินพุตที่ 20V
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 24 การทดลองที่ 3 แสดงค่ากระแสที่ไหลผ่านตัวต้านทานโหลดที่แรงดันอินพุต 20V

ในรูปการทดลองที่ 21 ถึงรูปที่ 24 การทดลองที่ 3 สำหรับในการทดลองนี้จะทดลองให้แรงดันอินพุตมากกว่าแรงดันทางด้านเอาต์พุต และสังเกตการตอบสนองของสัญญาณพัลซ์วิดมอดูเลตชั่น ซึ่งจากการทดลองจะเห็นว่าสัญญาณพัลซ์วิดธ์มอดูเลตชั่นจะมีค่าน้อยกว่า 50% และการรักษาค่าแรงดันเอาต์พุตให้คงที่ (Line Regulation) โดยในโหมดนี้จะเป็นการทำงานแบบบัก คอนเวอร์เตอร์

DC/DC Cuk Converter by using Arduino UNO
รูปที่ 25 แสดงลักษณะการทดลองโครงงาน Cuk Converter

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

DC/DC Cuk Converter by using Arduino UNO
รูปที่ 26 วงจรในส่วนของบอร์ดควบคุมสำหรับ Cuk Converter
DC/DC Cuk Converter by using Arduino UNO
รูปที่ 27 วงจรขับกำลังสำหรับ Cuk Converter

สำหรับโครงงานนี้ส่วนหนึ่งที่แตกต่างจากคอนเวอร์เตอร์ที่นำเสนอผ่านมาคือ ในส่วนของแรงดันเอาต์พุตจะสลับขั้วของการจ่ายกำลังไฟฟ้า กล่าวคือที่ตำแหน่งกราวด์ทางด้านอินพุตนั้น เมื่อเราจ่ายพลังงานให้กับโหลดจะเป็นขั้วบวกแทน VOUTPUT(+) และในส่วนเอาต์พุตใกล้กับตัวเหนี่ยวนำ L2 จะเป็นขั้วลบแทน VOUTPUT(-) สำหรับการควบคุมแรงดันเอาต์พุตจะใช้ออปโต้คัปเปิ้ล (PC817) เข้ามาช่วยในการป้อนกลับ สำหรับแก้ไขการสลับขั้วของการจ่ายกำลังไฟฟ้าทางด้านเอาต์พุตครับ.

Reference

  1. https://www.jncet.org/Manuscripts/Volume-3/Issue-2/Vol-3-issue-2-M-06.pdf
  2. https://fardapaper.ir/mohavaha/uploads/2017/12/Fardapaper-Controller-Design-for-Cuk-Converter-Using-Model-Order-Reduction.pdf
  3. https://www.researchgate.net/publication/305331216_Design_and_Control_of_Cuk_Converter_and_modified_IC_MPPT_Technique_for_Off-Grid_PV_Systems
  4. https://www.ijrte.org/wp-content/uploads/papers/v8i2S11/B12330982S1119.pdf
  5. https://www.mdpi.com/2079-9292/10/14/1720/pdf
  6. https://www.ti.com/lit/ds/symlink/lm2611.pdf?ts=1641091518098&ref_url=https%253A%252F%252Fwww.google.com%252F
  7. https://en.wikipedia.org/wiki/%C4%86uk_converter
  8. https://www.youtube.com/watch?v=P4r5WOsngXk
  9. https://www.youtube.com/watch?v=hkG7-XZASWw
  10. https://www.youtube.com/watch?v=AwOaOsi8cDw
  11. https://www.youtube.com/watch?v=sW-lwkybHrw