Introduction: How to Convert 8Ch PWM to Pulse Position Modulation
We will review 2 output signal formats of radio Receivers for radio-controlled models (or RC models). The traditional and most common type of Receiver signal is PWM, and usually PWM requires only one wire per channel. PPM signaling is now getting more and more popular because it can handle all channels on a single wire. So, sometimes there is a need to convert PWM signaling to PPM. The goal of this Instructable is to design a circuit that can convert 8Ch PWM signals to PPM.
Below we described steps needed understand how the solution has been programmed to create the converter 8Ch PWM to pulse position modulation. However, if you just want to get the result of programming, download GreenPAK software to view the already completed GreenPAK Design File. Plug the GreenPAK Development Kit to your computer and hit program to create the converter 8Ch PWM to pulse position modulation.
Step 1: Input and Output Signals
Figure 1 shows the input and output signals used in this Instructable. The PWM signals (one for each channel) are output one by one by the Receiver and the duty cycle information represents the users desired position by the Transmitter. In contrast, the PPM signal contains the duty cycle information of all the PWM channels. In both cases, the value of each channel is represented in a standardized way. The interpreted width of a 1 mS positive pulse represents 0 % position, and 2 mS represents 100%.
In PPM signaling, the values of each channel are represented by the delay between rising edges of positive pulses each having 400 uS fixed width.
Step 2: GreenPAK Design
The design approach is to detect the Rising and Falling Edges of each PWM channel, generate PPM pulses from each edge, and then combine them into one PPM channel. For this the GreenPAK design uses DLY3 Both Edge Detector, P DLY Both Edge Detector and LUTs, Both Edge Detector structure with Buffer and XOR LUT, as shown in Figure 2. Further, Both Edge pulses go to an 8-bit OR structure that consists of 3-bit LUTs 7,5 and 4-bit LUT0 configured as OR gates. At the 4-bit LUT0 output, all Edge Pulses are combined and then sent to a rising edge triggered one-shot structure that consists of a Pipe Delay and 400 us DLY0 to generate the PPM signal. Also, each input PIN has an internal 100k Ohm pull down resistor for noise stability if some inputs are not used.
The sequence of these operations is clearly presented in Figure 3. It represents 8 PWM to 1 PPM channels conversion.
Step 3: PCB Design
The functional prototype of this design with RC Transmitter & Receiver is shown in Figure 4.
Step 4: Results
In Figure 5 waveforms, the signals/channels legend is: D1 = CH1, .... D8 = СH8 accordingly, and Channel 1 (blue) = PPM Converter output. Figure 5 shows 8 channels of PWM signals converted to one channel of PPM signal.
Also, this PPM Converter can process less than 8 channels of PWM signals. For example, Figure 6 shows 4 channels of PWM signals converted to one channel of PPM signal.
Conclusions
In this Instructable we designed, built, and verified a circuit for converting PWM signals to Pulse Position Modulation (PPM) signals using only a single GreenPAK CMIC. It can process anywhere from one to eight PWM channels. Major advantages of using GreenPAK are availability of on-chip circuit blocks, very small physical area, low power, and low cost. Other functionality or integration can be configured into the same CMIC by using leftover available circuit blocks, thereby reducing product size and cost even further.
This Instructable shows how to create an 8 Cannel PWM signals to PPM signal Converter using only one GreenPAK CMIC. Detection of Rising and Falling Edges of each PWM channel signal and their "merger" allowed to get PPM signal. A single GreenPAK CMIC Converter can process anywhere from one to eight PWM channels.