สงวนลิขสิทธิ์ © 2018 KidBright.info : พัฒนาโดย ร้านไอโอเอ็กซ์ฮ๊อบ
PWM
PWM

PWM

รายละเอียด (Description)

สร้างเมื่อ วันศุกร์ที่ 18 มกราคม พ.ศ.2562 10:48 น. • อัพเดทเมื่อ วันศุกร์ที่ 18 มกราคม พ.ศ.2562 16:33 น. • โดย ร้านไอโอเอ็กซ์ฮ๊อบ

ปลั๊กอินเสริมใช้ควบคุมการทำงานของอุปกรณ์กรณ์ภายนอก เช่น หลอดไฟ พัดลม ให้ควบคุมการทำงานได้แบบ PWM คือปรับระดับความแรง / ความสว่าง / ความร้อนได้

การควบคุมการทำงานแบบ PMW มีปัจจัยที่คำนึงถึง 2 ประการ คือ

  • ความถี่ (f) คือ อัตตราการเปลี่ยนแปลงจากลอจิก 0 เป็น 1 หรือจากลอจิก 1 เป็น 0 ต่อหน่วยวินาที เช่น มีการเปลี่ยนจาก 0 เป็น 1 และเปลี่ยน 1 กลับมาเป็น 0 รวมใช้เวลา 0.02 วินาที ก็จะได้ความถี่เป็น 1 / 0.02 = 50Hz เป็นต้น สำหรับปลั๊กอินนี้ตั้งความถี่ไว้ที่ 500Hz
  • ค่าดิวตี้ไซเคิล (Duty cycle) เป็นค่าที่ใช้ควบคุมเวลาที่สัญญาณเป็น 0 และเป็น 1 เช่น ให้ค่าเป็น 0% หมายถึงให้ปล่อยลอจิก 0 ตลอดเวลา หรือให้ค่าดิวตี้เป็น 100% หมายถึงให้เป็นลอจิก 1 ตลอดเวลา แต่ถ้าให้ค่าดิวตี้เป็น 50% หมายถึง ให้เป็นลอจิก 0 และลอจิก 1 สลับกัน โดยมีช่วงเวลาที่เท่ากัน

9y5XVZ.jpg

ที่มารูปภาพ : http://function-generator-05.blogspot.com/2013/11/function-generator-oscillator-multi.html

ยิ่งค่าดิวตี้มาก ยิ่งส่งผลให้อุปกรณ์ที่ควบคุมมีเวลาทำงานมาก ทำให้เกิดผลที่สังเกตได้คือ มีความร้อนออกมามาก (ฮีตเตอร์ / ขดลวดความร้อน) สว่างมาก (หลอดไฟ)

กลับกัน หากค่าดิวตี้น้อย ส่งผลให้อุปกรณ์มีเวลาทำงานน้อย ทำให้มีความร้อนออกมาน้อย (ฮีตเตอร์ / ขดลวดความร้อน) สว่างน้อย (หลอดไฟ)

การติดตั้ง

ติดตั้งด้วย Source

รองรับทุก OS ให้ดาวน์โหลดไฟล์เวอร์ชั่น Source Code มา แล้วแตกไฟล์ จะได้โฟลเดอร์ gpio ให้ย้ายโฟลเดอร์ gpio นี้ ไปไว้ในโฟลเดอร์ [ไดร์ที่ติดตั้ง Windows]\Users[Username]\AppData\Local\KidBright\app-[version]\resources\app\kbide\plugins โดยทับโฟลเดอร์เก่าไปได้เลย

หลังการติดตั้ง บล็อกจะอยู่ในเมนู ปลั๊กอิน > จีพีไอโอ

บล็อกที่มีให้ใช้งาน

บล็อกกำหนดค่าดิวตี้ไซเคิล

9yjydQ.png

ใช้กำหนดค่าดิวตี้ไซเคิลให้กับขาสัญญาณใด ๆ ก็ตาม เช่น พัดลมที่ต่อกับช่อง USB-A มอเตอร์ที่ต่ออยู่กับช่อง OUT1 เป็นต้น กรณีใช้กับ USB-A ปลั๊กอินกลับสัญญาณให้แล้ว กำหนดค่าดิวตี้ไซเคิลได้ 0 ถึง 100 และใส่จุดทศนิยมได้

ข้อมูลเชิงเทคนิค

ปลั๊กอินนี้ใช้ Timer 0 ใช้ LEDC ตั้งแต่ช่องที่ 0 ขึ้นไป

เวอร์ชั่น (Version)

PWM V1.1 (Source)

PWM V1.0 Beta

ความคิดเห็น (Comment)

x

ตัวอย่างบล็อก