Rockwell Automation Publication 1756-UM058G-EN-P - November 2012 97
Fast Module Features Chapter 5
Pulse Width Modulation
Pulse Width Modulation (PWM) provides precise, onboard control of an 
output’s pulse train with no program variability. To configure a PWM signal, you 
define two real-time values for the pulse train in the module’s output tags:
• Cycle time—The duration of a pulse cycle in seconds from 1 ms…1 hour.
• On time—The pulse width, or length of time that a pulse is active within a 
cycle from 200 µs…1 hour. You can define the On time in seconds or as 
0…100 percent of the cycle time. You may want to use a steady-state On 
time, such as for gluing applications, or a dynamic On time that is defined 
by program logic.
If the cycle time or On time is outside the valid range for an output, the 
corresponding bit in the Fault input tag is set and the module responds as 
described below. 
If the cycle time or On time value changes while the output is generating a PWM 
signal, the changes are not applied until the next cycle of the PWM output. For 
instance, if the cycle time is erroneously set to an hour, a new cycle time will not 
go into effect until the last cycle of the hour is complete. To trigger the PWM 
output to restart immediately with a new cycle time or On time, turn the output 
Off and then back On.
Condition Result
PWMCycleTime <
 minimum of 1ms PWMCycleTime = 1 ms
PWMCycleTime > maximum of 1 hour PWMCycleTime = 1 hour
PWMCycleTime 
≤ PWMOnTime Output is always On
PWMOnTime < minimum of 200 µs Output is always Off
PWMOnTime > maximum of 1 hour PWMOnTime = 1 hour
If PWMOnTime is 0.1 second and PWMCycleTime is 1.0 second and the 
PWMCycleTime is changed to 0.5 second just after the output turns On, the 
output will stay on for 0.1 second and then turn Off for 0.9 second to complete 
the cycle before the new 0.5 second cycle begins.
Before PWM will function, you must enable PWM during configuration and 
define the PWM cycle time and On time in the PWMCycleTime and 
PWMOnTime output tags.
If PWM is enabled (PWMEnable = 1) and the output is instructed to turn On 
(Data = 1), the output generates a PWM signal.