Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater

โครงงานนี้ทดลองใช้บอร์ดควบคุม Arduino UNO สำหรับสร้างสัญญาณให้กับอินเวอร์เตอร์แบบฮาร์ฟบริดจ์ เพื่อขับเพาเวอร์มอสเฟตในการสร้างความร้อนด้วยการเหนี่ยวนำที่ความถี่ 31.372kHz โดยโครงงานจะมีขนาดเล็กสำหรับเป็นวงจรต้นแบบในการพัฒนาครั้งต่อไป ซึ่งในการทดลองจะใช้แรงดันไฟฟ้าสำหรับวงจรเหนี่ยวนำความร้อน 50V, ปรับค่าดิวตี้ไซเกิลไว้ประมาณ 20% และได้พลังงานความร้อน 75 วัตต์

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 1 เตรียมอุปกรณ์ต่างๆ สำหรับโครงงาน

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

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 2 เริ่มประกอบส่วนแรกก่อน

รูปที่ 2 เริ่มต้นประกอบอุปกรณ์ในของสวิตชิ่งชิ่งกำลังเพาเวอร์มอสเฟต Q1 และ Q2, ออปโต้คัปเปิ้ลสำหรับขับสัญญาณให้กับเพาเวอร์มอสเฟต และตัวเก็บประจุสำหรับวงจร Tank circuit เป็นหลักก่อน

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 3 พันขดลวดเหนี่ยวนำความร้อน

รูปที่ 3 เป็นลักษณะของขดลวดเหนี่ยวนำความร้อนที่พันขึ้นครั้ง 1 สำหรับใช้ในการทดลองโดยใช้ลวดเบอร์ 16AWG พัน 10 รอบ และเส้นผ่าศูนย์กลางประมาณ 2 เซนติเมตร

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 4 ประกอบขดลวดเหนี่ยวนำความร้อนบนบอร์ด

รูปที่ 4 เป็นลักษณะของการนำขดลวดเหนี่ยวนำความร้อนบัดกรีลงในแผ่นวงจรพิมพ์ และให้สามารถถอดและประกอบครั้งต่อไปได้สะดวกสำหรับการปรับแต่งวงจรภายหลัง

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 5 ต่อสายไฟเลี้ยงและสายสัญญาณควบคุม

รูปที่ 5 เป็นการต่อสายไฟต่างๆ ให้กับวงจร ซึ่งจะมีส่วนของไฟเลี้ยงให้กับวงจรหลักอินดักชั่นฮีต ซึ่งจะมีจุดต่อ 3 จุดคือ บวก (+VBUS) , กราวด์ (GND) และเซนเตอร์ (CT) และส่วนของการควบคุมจะมีสัญญาณขับเพาเวอร์มอสเฟต Q1 และ Q2 และกราวด์

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 6 บอร์ดต้นแบบครั้งที่ 1

รูปที่ 6 เป็นลักษณะของวงจรต้นแบบของการทดลอง ซึ่งจากการทดลองพบว่าค่าความเหนี่ยวนำของ L1 (Work coil) จะมีค่าน้อย ซึ่งทำให้ประสิทธิภาพการทำงานยังไม่ดีเท่าที่ควร ทั้งนี้ส่วนหนึ่งเกิดความถี่สวิตชิ่งจะถูกกำหนดไว้ที่ประมาณ 31.372kHz เป็นค่าคงที่

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 7 บอร์ดต้นแบบครั้งที่ 2

รูปที่ 7 เป็นวงจรต้นแบบครั้งที่ 2 ซึ่งปรับให้ค่าความเหนี่ยวนำของ L1 (Work coil) เพิ่มขึ้น โดยยังใช้บอร์ดเดิมเป็นหลัก ด้วยการปรับขนาดเส้นผ่าศูนย์กลางของเหนี่ยวนำของ L1 ลดลงมาที่ 15 มิลลิเมตร พันจำนวนรอบเพิ่มที่ 15 รอบ และใช้ขนาดลวดเบอร์เดิม 16AWG

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 8 ลักษณะของการทดลองโครงงาน

รูปที่ 8 ลักษณะของการทดลองต่างๆ โดยใช้ดิจิตอลออสซิลโลสโคปวัดสัญญาณต่างๆ เช่นสัญญาณขับเพาเวอร์มอสเฟต สัญญาณแรงดันตกคร่อมที่วงจร Tank circuit, แคล้มมิเตอร์วัดค่ากระแสไฟเลั้ยงสำหรับวงจร, มัลติมิเตอร์สำหรับวัดค่าแรงดันที่จ่ายให้กับวงจรอินเวอร์เตอร์ ในกรณีที่มีโพรบกระแส (Current Probe) จะช่วยให้เราวิเคราะห์ประสิทธิภาพได้เพิ่มขึ้น เช่น พลังงานสูญเสียในตัวเพาเวอร์มอสเฟต เป็นต้น

/*
 Simple Code Control Half-Bridge Inverter for Induction Heater
 Adj Power : POT = 10K(B) at A0
 Dev by : Nattapon
 Date : 18/6/2021, V.0
 */ 

  int setPWM = 0;
 void setup() 
  {
   Serial.begin(9600);
   pinMode (9, OUTPUT);    
   pinMode (10, OUTPUT);   

  TCCR1A=0b10110001;   // Generate inverted PWM signals in output 
  TCCR1B=0b00000001;   // Set Fsw = 31.372kHz
  delay(500); 
  OCR1A = setPWM;           
  OCR1B = 255-setPWM;      
   } 

 void loop()
  {
 int sensorValue = analogRead(A0); 
      setPWM = (sensorValue/8);
      OCR1A = setPWM;           
      OCR1B = 255-setPWM;  
      delay(50);  
  }

ในส่วนโปรแกรมโปรแกรมข้างบนนี้ เป็นตัวอย่างเบื้องต้นสำหรับการทดลองโครงงาน ซึ่งเป็นระบบควบคุมแบบเปิด (Open loop) โดยเราสามารถควบคุมการจ่ายกำลังไฟฟ้าจากตัวต้านทานปรับค่าเข้ามาที่ขา A0 และนอกจากนี้ผู้อ่านสามารถนำไปพัฒนาเพิ่มเติมให้สำหรับการควบคุมแบบปิดต่างๆ เช่น PID Control หรือ Fuzzy Logic control รวมทั้งการควบคุมกระแสให้กับวงจรอินเวอร์เตอร์

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 9 การทดลองสัญญาณที่ตอบสนองต่อวัสดุรับความร้อน

รูปที่ 9 เป็นลักษณะการทดลองเพื่อสังเกตการเปลี่ยนแปลงของแรงดันที่ตกคร่อมวงจร Tank circuit เมื่อนำวัสดุ หรือชิ้นงานต่างๆ สำหรับให้ความร้อน เข้ามายังตัวขดลวดเหนี่ยวนำความร้อน (Work coil)

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 10 การทดลองปรับสัญญาณขับที่ขาเกต (Vgs)

รูปที่ 10 เป็นการทดลองวัดสัญญาณที่เกิดขึ้นจากบอร์ดควบคุม Arduino UNO โดยเราสามารถปรับความกว้างของสัญญาณพัลซ์วิดธ์มอดูเลตชั่น (Duty cycle) ได้ในช่วง 0 ถึง 45% ซึ่งจะหมายถึง การปรับค่าการจ่ายพลังงานสำหรับเหนี่ยวนำความร้อนให้กับชิ้นงานที่ต้องการ

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 11 การทดลองให้วงจรสร้างความร้อนกับวัสดุ

รูปที่ 11 เป็นการทดลองให้วงจรสร้างความร้อนกับตะปูขนาดประมาณ 2 นิ้ว ซึ่งจากการทดลองใช้เวลาประมาณ 25 วินาที ตะปูก็จะแดงขึ้น ตามรูปในกรอบสีแดงพลังงานที่ใช้ประมาณ 75 วัตต์

Simple Arduino UNO Control Half-Bridge Inverter for Induction Heater
รูปที่ 12 วงจรที่ใช้ในการทดลองสำหรับโครงงาน

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

*สำหรับโครงงานอินดักชั่นฮีตก่อนหน้านี้ (Mini Induction Heater By Self Oscillating) สามารถติดตามได้ที่ลิงก์นี้ครับ https://www.electronicsdna.com/mini-induction-heater-by-self-oscillating/

สำหรับโครงงานนี้เป็นอีก 1 โครงงานกับการสร้างความร้อนด้วยการเหนี่ยวนำขนาดเล็ก ซึ่งยังเป็นวงจรต้นแบบในการเรียนรู้เบื้องต้น โดยใช้วงจรอินเวอร์เตอร์แบบฮาร์บริดจ์ และเป็นรูปแบบการทำงานอีกลักษณะหนึ่ง นอกจากนี้บอร์ดควบคุมจะใช้ Arduino UNO ในการสร้างสัญญาณขับเพาเวอร์มอสเฟตด้านบน (High side) และด้านล่าง (Low side) สำหรับ Q1 และ Q2 รวมทั้งปรับขนาดความกว้างของสัญญาณพัลซ์วิธดธ์ได้ และคิดว่าโครงงานนี้จะแนวความคิดเบื้องต้นและเป็นประโยชน์สำหรับนำไปพัฒนาต่อตามความเหมาะสมนะครับ.

Reference

  1. http://www.mit.edu/~milesdai/projects/inductionheater/index.html
  2. http://danyk.cz/induk2_en.html
  3. https://vtechworks.lib.vt.edu/bitstream/handle/10919/77400/Amrhein_AA_T_2015.pdf?sequence=1&isAllowed=y
  4. https://www.st.com/resource/en/application_note/dm00189871-induction-cooking–igbts-in-resonant-converters-stmicroelectronics.pdf
  5. https://www.semanticscholar.org/paper/New-Built-In-Induction-Heating-Cooker-Using-ZVS-PWM-Sugimura-Saha/99bf7d487b0fec71a7a2dc95a58a6b944f69eed5
  6. https://www.iosrjournals.org/iosr-jeee/Papers/Vol11%20Issue%205/Version-4/C1105041823.pdf
  7. https://www.66pacific.com/calculators/coil-inductance-calculator.aspx