คำอธิบาย
โมดูลแปลงสัญญาณ PWM Duty Cycle 0–100% ให้เป็นแรงดันอนาล็อก DC 0–5V หรือ 0–10V สำหรับเชื่อมต่อ Arduino, MCU, PLC, อินเวอร์เตอร์ และชุดควบคุมความเร็วมอเตอร์
คุณสมบัติเด่น
- แปลงสัญญาณ PWM 0–100% เป็นแรงดัน DC 0–10V
- เลือกช่วงเอาต์พุต 0–5V หรือ 0–10V ด้วยจัมเปอร์
- รองรับแหล่งจ่ายไฟ DC 12–30V
สเปกสินค้า (Specifications)
- P2V
- PWM to Voltage
- แรงดันไฟฟ้าทำงานของโมดูล Voltage Input DC 12-30V
- ช่วงการแปลง PWM 0%-100%
- error 5%
- ช่วงความถี่รับสัญญาณ PWM 1 – 3Khz
- ช่วงแปลงเป็นแรงดันไฟฟ้า DC 0-10V
- ระดับ Peak-to-Peak 4.5V ถึง 10V
- จัมเปอร์พินเสียบที่ตำแหน่ง 5V สำหรับการเชื่อมต่อ CPU, MCU 5V เช่น Arduino
- จัมเปอร์พินเสียบที่ตำแหน่ง 10V สำหรับการเชื่อมต่อ PLC
PCB Dimension
- 31x33mm

การตั้งค่าจัมเปอร์ Jumper 24V / 5V Setting
- Jumper 24V Shorted H คู่นอก PWM to Voltage Output 0-10V
- Jumper 5V Shorted L คู่ใน PWM to Voltage Output 0-5V
Terminal Connector

- J1 VCC, GND = Voltage Input DC 12-30V
- J2 PWM, GND = PWM Input
- J3 VOUT, GND = Voltage Output
การสอบเทียบ
- ตั้งจัมเปอร์ให้ตรงกับช่วงแรงดันเอาต์พุตที่ต้องการ
- จ่ายไฟ DC 12–30V ให้กับขั้ว VCC และ GND
- ป้อนสัญญาณ PWM ความถี่ 1–3kHz ที่ Duty Cycle 50%
- วัดแรงดันระหว่าง VOUT และ GND ด้วยมัลติมิเตอร์
- สำหรับช่วง 0–10V ให้ปรับ R3 จนได้ประมาณ 5V ที่ Duty Cycle 50%
- ตรวจสอบแรงดันเอาต์พุตที่ Duty Cycle 0% และ 100% ก่อนเชื่อมต่อกับอุปกรณ์จริง
เมื่อไม่มีสัญญาณ PWM แรงดันเอาต์พุตควรอยู่ใกล้ 0V และแรงดันจะเพิ่มขึ้นตาม Duty Cycle ของสัญญาณอินพุต
การใช้งานร่วมกับ Arduino
การต่อสัญญาณควบคุมอุปกรณ์ที่รับอินพุต 0–10V:
- Arduino D5 PWM ต่อกับ PWM ของโมดูล
- GND Arduino ต่อกับ GND ฝั่งอินพุตของโมดูล
- VOUT ของโมดูลต่อกับ AVI/SV 0–10V ของชุดควบคุม
- GND Output ต่อกับ Signal GND ของชุดควบคุม
- จ่ายไฟ DC 12–30V ให้โมดูลผ่านขั้ว VCC และ GND
- แนะนำให้ใช้ PWM ความถี่ 1–3kHz ตามสเปกของโมดูล
Arduino UNO ใช้ความถี่เริ่มต้นของขา D5 ประมาณ 980Hz ซึ่งอาจใช้งานได้ แต่ต่ำกว่าช่วง 1–3kHz เล็กน้อย หากต้องการความนิ่งและความแม่นยำ ควรตั้ง Timer ให้ความถี่อยู่ภายในช่วงที่กำหนด
// Arduino UNO – คุม WS55-220S ด้วย PWM→0-10V module
const int PIN_RUN = 7; // RUN/EN
const int PIN_DIR = 8; // F/R
const int PIN_PWM = 5; // PWM to converter module
// เปอร์เซ็นต์ความเร็ว -> duty PWM (0..255)
void setSpeedPercent(int pct) {
pct = constrain(pct, 0, 100);
int pwm = map(pct, 0, 100, 0, 255);
analogWrite(PIN_PWM, pwm); // ~490 Hz บน UNO; ถ้าใช้บอร์ดอื่นปรับเป็น ~1-3 kHz ได้
}
void setup() {
pinMode(PIN_RUN, OUTPUT);
pinMode(PIN_DIR, OUTPUT);
pinMode(PIN_PWM, OUTPUT);
// สมมุติ RUN เป็น Active-LOW? -> ปิดไว้ก่อน
digitalWrite(PIN_RUN, HIGH); // ถ้ารุ่นคุณ Active-HIGH ให้เริ่ม LOW แทน
digitalWrite(PIN_DIR, LOW);
setSpeedPercent(0);
delay(300);
// สั่ง RUN (แก้ตรรกะตามรุ่นจริง)
digitalWrite(PIN_RUN, LOW); // ถ้า Active-HIGH -> เปลี่ยนเป็น HIGH
setSpeedPercent(30); // เริ่มที่ 30%
}
void loop() {
// เดโมเร่ง/ผ่อนจาก 20% → 80% ไปกลับ
for (int p = 20; p <= 80; p += 5) { setSpeedPercent(p); delay(80); }
for (int p = 80; p >= 20; p -= 5) { setSpeedPercent(p); delay(80); }
// สลับทิศทุก ๆ รอบ
digitalWrite(PIN_DIR, !digitalRead(PIN_DIR));
delay(500);
}
การนำไปใช้งาน
- แปลงสัญญาณ PWM จาก Arduino หรือไมโครคอนโทรลเลอร์
- ควบคุมความเร็วมอเตอร์หรืออินเวอร์เตอร์ที่รับสัญญาณ 0–10V
- เชื่อมต่อกับ PLC และระบบควบคุมอัตโนมัติ
- ควบคุมวาล์ว แอคชูเอเตอร์ พัดลม ปั๊ม และอุปกรณ์อนาล็อก
- ใช้สร้างสัญญาณอ้างอิงแรงดัน DC ตามค่า Duty Cycle
Dimension
- ขนาด PCB: 31 × 33mm
ในชุดประกอบด้วย
- โมดูลแปลงสัญญาณ PWM เป็นแรงดัน 0–5V/0–10V จำนวน 1 ชิ้น
บอร์ดแปลงรุ่นอื่นๆ






รีวิว
ยังไม่มีบทวิจารณ์