Our DNO range is ideally suited for use as an interface between a Raspberry Pi and a motor. The Pi can provide a PWM output via its GPIO pins and this can be fed directly into the input of the DNO.
A configuration that we have used successfully is as follows;
- Connect the ground of the Pi [pin 6] to pin F [green] on the DNO 6 way connector.
- Connect GPIO8 [pin24] of the Pi to to pin E [blue] on the DNO 6 way connector.
- Connect a 10k ohm resistor between pins D and F on the DNO 6 way connector to bypass the pot fault detection circuit.
- Pins A and B on the DNO 6 way connector need to be connected together to activate the ignition circuit.
- Adjust the gain pot on the DNO to maximum to allow full speed to be achieved with the 3.3V output from the Pi.
We have tested the DNO satisfactorily between 10Hz and 10kHz.
There are a number of programs / scripts available that give control of the frequency and duty cycle of the PWM output from the Pi. We have written a sample control program in Python which you can download.
Note; you may need to pay attention to ground loops through the PSU for the Pi. For the circuit above we used an isolated PSU plugged in to the mains. If you wish to run the Pi with a non-isolated PSU from the same battery that drives the DNO / motor, then, if the ground of the PSU is connected directly to B- there is the possibility of creating a ground loop, which will compromise the reverse polarity protection of the DNO. The ground of the PSU can be fed into pin F of the 6 way connector but depending on the current this PSU / Pi draws, there is the possibility of blowing the fuse track F2 [~2A]. If this is likely then pin F can be linked to the unprotected side of F2.
We’ll be testing our other controllers and putting details of those in the knowledge base as soon as we can.