Explanation
I am using a Rpi 2 model B, and PIGPIO to generate PWMs. Goal is to run a three phase permanent magnet synchronous motor using the Rpi 2 with IRAMS10UP60A. Need 6 repeatable waveforms to create what is know as a trapezoidal drive control for the motor. IRAMS10UP60A driver needs 5V pull down. I was able to pull down using the Rpi 2/PIGPIO with a 1k resistor between the IRAMS10UP60A driver and Rpi pins.
Below is a pic of the waveforms to generate on 6 different GPIO pin set in pull down mode. At any instant only two switches are on, this is critical as overlap in the waves will fry the IRAMS10UP60A chip.
There are two frequencies: PWM frequency known here as the carrier frequency (shown in the picture pulses), and the modulation frequency which is the time for one electrical cycle (the whole picture repeating itself). The modulation frequency would be the total waveform time, after which the cycle repeats itself.
Example desired numbers for PWM frequency: 10 to 20khz. For the modulation frequency 50-200 hz.
Questions
- Possible solution: using PIGPIO ideally creating 6 different waveforms at the PWM 1 frequency for G4,G6,G2 and PWM 2 frequency for G1,G3,G5. Then repeating the waveforms at the modulation frequency. For this scenario how well would the waveforms sync? Will there be any overlap?
- My python and PIGPIO experience is new, although I have an idea of what to do, I need help in the implementation. Can someone give me some code examples on how to implement two waves out of phase and at different PWM frequency, and both waves repeating and a different modulation frequency?