PWM Servo Calculator
Calculate PWM pulse width, duty cycle, and servo angle.
Period = 20000 µs (1/50 Hz)
วิธีการทำงานของเครื่องคำนวณ PWM Servo
เครื่องคำนวณ PWM servo แปลงระหว่างมุม servo (0°–180°) ความกว้างพัลส์ (1–2 ms) และ duty cycle สำหรับความถี่ควบคุม servo มาตรฐาน 50 Hz นอกจากนี้ยังคำนวณค่า timer compare register (CCR) สำหรับ timer STM32 และค่า analogWrite หรือ microsecond สำหรับ Arduino และ ESP32 ขจัดการคำนวณ PWM ด้วยตนเองระหว่างการพัฒนาโครงการ RC robot, gimbal และ CNC
RC servo ควบคุมด้วยสัญญาณ PWM 50 Hz (คาบ 20 ms) ความกว้างพัลส์เข้ารหัสตำแหน่ง: 1 ms สอดคล้องกับ 0° (ซ้ายสุด) 1.5 ms กับ 90° (กลาง) และ 2 ms กับ 180° (ขวาสุด) servo บางตัวรับช่วง 0.5–2.5 ms สำหรับการเดินทางที่ขยายออก เครื่องคำนวณอนุญาตให้ปรับแต่งความกว้างพัลส์ขั้นต่ำและสูงสุดเพื่อให้ตรงกับช่วง datasheet ของ servo
ที่ 50 Hz คาบคือ 20 ms พัลส์ 1 ms ให้ duty cycle 5% พัลส์ 2 ms ให้ 10% library Arduino Servo จัดการการแปลงเหล่านี้ภายในผ่าน writeMicroseconds() แต่หากใช้ raw PWM ค่า duty cycle จะต่างกันอย่างมีนัยสำคัญ เครื่องคำนวณให้ค่าที่แก้ไขแล้วสำหรับทั้ง 8-bit (0–255) และ 16-bit (0–65535)
บนไมโครคอนโทรลเลอร์ STM32 PWM servo สร้างโดยใช้ช่อง timer ในโหมด PWM ARR กำหนดคาบ CCR กำหนดความกว้างพัลส์ สำหรับนาฬิกา 72 MHz พร้อม prescaler 71 และ ARR = 19999 พัลส์ 1 ms ต้องการ CCR = 999 และพัลส์ 2 ms ต้องการ CCR = 1999 เครื่องคำนวณแสดงค่า CCR สำหรับความถี่นาฬิกาและมุมเป้าหมายใดๆ
ESC สำหรับมอเตอร์ brushless ใช้โปรโตคอล PWM 50 Hz เดียวกันกับ servo แต่ตีความช่วงพัลส์ต่างกัน 1 ms คือ throttle ขั้นต่ำ (หยุด) 2 ms คือ throttle สูงสุด (ความเร็วเต็ม) การ calibrate ESC ต้องการการส่งพัลส์ 2 ms เมื่อเปิดเครื่อง จากนั้นพัลส์ 1 ms เพื่อเสร็จสิ้น เครื่องคำนวณโหมด ESC ให้ค่า microsecond ที่แม่นยำและโค้ด Arduino สำหรับลำดับการ calibrate เต็ม
คำถามที่พบบ่อย
- What PWM frequency do servos use?
- Standard RC servos use 50 Hz (20ms period) PWM. The pulse width from 500µs–2500µs maps to 0°–180°. Some digital servos support up to 333 Hz for faster response.
- What is the standard servo pulse range?
- Most hobby servos use 1000µs–2000µs (1ms–2ms) as the working range, with 1500µs as center (90°). Many servos actually accept 500µs–2500µs for extended range.
- How do I calculate the 16-bit timer compare value?
- For a 16-bit timer at 50 Hz: compare value = (pulse_µs / period_µs) × 65535. For example, 1500µs at 50 Hz = (1500/20000) × 65535 = 4915.
เครื่องมือที่เกี่ยวข้อง
- Resistor Color Code Calculator
Decode resistor color bands. Supports 4-band and 5-band.
- Ohm's Law Calculator
Calculate voltage, current, resistance, or power using Ohm's Law.
- Voltage Divider Calculator
Calculate output voltage for a resistor voltage divider.
- 555 Timer Calculator
Calculate frequency, duty cycle, and timing for 555 timer circuits.
- CRC Calculator
Calculate CRC checksums — CRC-8, CRC-16, CRC-32, and custom polynomials.