ก่อนอื่นเรามาทำความรู้จักกับ PWM กันก่อนว่า PWM ย่อมาจากอะไร ??? PWM ย่อมาจาก Pulse Width Modulation ซึ่งถ้าจะแปลให้เข้าใจง่ายๆ มันก็คือ การปรับความกว้างของพัลซ์โดยการนำเอาสองสัญญาณมาเปรียบเทียบกัน และสองสัญญาณที่ว่านี้ก็คือสัญญาณ"สามเหลี่ยม" กับสัญญาณที่ต้องการปรับความกว้างของพัลซ์ ยกตัวอย่างเช่น ถ้าเรานำสัญญาณไฟฟ้ากระแสตรงมาเปรียบเทียบกับสัญญาณสามเหลี่ยม เราก็จะได้สัญญาณพัลซ์ที่มีความกว้างคงที่นั้นเองดังรูปข้างล่างนี้

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

คำถามต่อมา เราจะสร้างสัญญาณ PWM นี้ด้วยวงจรอระไร ??? คำตอบคือ วงจร Comparator หรืองจรเปรียบเทียบนั้นเอง และวงจร Comparator ที่นิยมใช้กันก็เห็นใช้ Op-Amp เพียงตัวเดียว ผมมีอยู่วงจรหนึ่ง ซึ่งเป็นพื้นฐานที่สามารถนำไปใช้จริงกันได้นะคะ ลองดูแล้วกัน


การเขียนโปรแกรมกำเนิดสัญญาณ PWM
สัญญาณ PWM มาจากชื่อเต็มว่า Pulse Width Modulation เป็นสัญญาณที่เกิดจากการผสมกันระหว่างสัญญาณรูปสามเหลี่ยม (Triangle wave) กับระดับแรงเคลื่อนสัญญาณไฟดีซีหรือสัญญาณอื่น ๆ ที่มีระดับไฟดีซีเป็นตัวรองรับ ผลที่ได้จากการผสมสัญญาณดังกล่าวจะได้รูปคลื่นสัญญาณพัลส์ที่มี 2 สถานะ คือON กับ OFF เมื่อเรานำสัญญาณพัลส์ที่ได้ไปขับอุปกรณ์กำลัง เช่น หลอดไฟ มอเตอร์ดีซี เราจะได้ผลการควบคุม คือเมื่อสัญญาณพัลส์มีสถานะ ON หลอดไฟจะติดสว่างเต็มที่ ถ้า OFF ไฟจะดับ หากสัญญาณมีความต่อเนื่องเช่นนี้ตลอดก็จะได้การติด – ดับ ของหลอดไฟต่อเนื่อง และหากการติดดับมีความถี่สูง ๆ จนสายตาไม่สามารถสังเกตการณ์ติด – ดับได้ เราก็จะสังเกตเห็นได้เพียงแสงที่หรี่ลง หากเราทำให้ช่วงเวลา ON น้อยลง และในทางตรงกันข้าม หากเราทำให้ช่วงเวลา ON มากขึ้นเรื่อย ๆ ก็จะทำให้หลอดไฟสว่างขึ้นเรื่อย ๆ จนถึงสว่างเต็มที่เมื่อ ON ตลอด
รายละเอียดของสัญญาณ PWM ประกอบด้วยส่วนต่าง ๆ ดังนี้ คือ
ความถี่ คือจำนวนรูปคลื่น ต่อวินาที ( Cycle / Second) ในการใช้งาน ความถี่จะต้องคงที่ไม่เปลี่ยนแปลง ความถี่ที่เหมาะสมในการใช้งานควบคุมอุปกรณ์กำลังต่าง ๆ คือ ตั้งแต่ 400 Hz - 10 KHz ส่วนความถี่ที่ใช้เป็นพาหะของสัญญาณเสียง (Audio) ควรจะสูงกว่า 50 KHz - 1 MHz
ดิวตี้ไซเกิล (Duty Cycle) เป็นค่าคาบเวลาช่วง ON ของไซเกิล โดยคิดเป็นเปอร์เซ็นต์ของ Full- cycle
ในโครงสร้างของไมโครคอนโทรลเลอร์ตระกูลไมโครชิพ เบอร์ PIC16F877 ที่ใช้ปฏิบัติในใบงานทดลองนี้ มีโมดูลสร้างสัญญาณ PWM แบบต่อเนื่องโดยฮาร์ดแวร์จำนวน 2 ชุด โดยใช้ความละเอียดในการปรับค่าดิวตี้ไซเกิล ตั้งแต่ 0 - 100 % จำนวน 256 ค่า โดยมีสัญญาณ PWM ช่องที่ 1 ออกที่ขา RC2 และช่องที่ 2 ออกที่ขา RC1 ส่วนเบอร์อื่น ๆ ให้ดูใน datasheet ให้ดูในขาที่มีฟังก์ชั่น CCP1 CCP2 .. คำสั่งภาษา Pic Basic Pro Compiler มีคำสั่งที่ทำให้ส่งสัญญาณ PWM ออกมา ได้แก่ HPWM
HPWM Channel, Duty Cycle, Frequency
Channel เป็นตำแหน่งขา I/O ที่ส่งสัญญาณ PWM ออกค่า 1 หมายถึง ขา RC2 และ 2 หมายถึงขา RC1 บางตัวอาจมีมากกว่านี้
***หมายเหตุ ขอบคุณเว็บ http://introduction-pwm.blogspot.com/2007/09/pwm.html ***
ไม่มีความคิดเห็น:
แสดงความคิดเห็น