คำอธิบาย
PWM to voltage module converts PWM 0%-100% to Voltage 0-10V
- แรงดันไฟฟ้าทำงานของโมดูล 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
- Terminal J1 VCC, GND = Voltage Input DC 12-30V
- Terminal J2 PWM, GND = PWM Input
- Terminal J3 VOUT, GND = Voltage Output 0-5V / 0-10V (H/L)
คำแนะนำการใช้งาน
- หลังจากจ่ายไฟเมื่อไม่มีสัญญาณอินพุต เอาต์พุตจะเป็น 0V
- เมื่อใช้งานครั้งแรก ควรทำการสอบเทียบ หาสัญญาณที่มี Duty Cycle Input 50% แล้วเชื่อมต่อกับ PWM และ GND แอมพลิจูดจะสอดคล้องกับจัมเปอร์พินที่เกี่ยวข้อง ความถี่คือ 1 – 3Khz
- ใช้มัลติมิเตอร์วัด VOUT และ GNDมิเตอร์จะแสดงแรงดันประมาณ 5V ปรับโพเทนชิออมิเตอร์ R3 บนบอร์ดเพื่อให้มิเตอร์แสดงผล 5V ปรับเทียบสัญญาณพัลส์
- แรงดันไฟฟ้าขาออก จะเปลี่ยนแปลงตาม Duty Cycle Input
- สามารถปรับความแม่นยำได้โดยการปรับโพเทนชิออมิเตอร์ R3
โมดูลแปลง PWM→0–10 V การใช้งานร่วมกับ Arduino
PWM to 0–10V converter module (มีออปโตแยกวงจร)
ต่อสาย:
- Arduino D5 (PWM) → IN (PWM) ของโมดูล
- GND Arduino → GND โมดูล (ฝั่งสัญญาณ)
- OUT ของโมดูล → ขั้ว AVI/SV (0–10 V) ของ WS55-220S
- GND OUT → GND สัญญาณ ของ WS55-220S
-
ตั้งความถี่ PWM ~1–3 kHz จะนิ่ง (UNO ค่าเดิม ~490 Hz ก็พอได้ แต่ 1–10 kHz จะสวยกว่า)
โค้ดตัวอย่าง: ใช้ “โมดูล PWM→0–10 V”
// 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);
}





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