Brushless DC motors, and their associated drive electronics, tend to be expensive and complicated. [Ottoragam] was looking for a cheaper alternative and built this Brushed DC motor servo controller and the results look pretty promising. Check out the video after the break.
He needed a low cost, closed loop drive for his home-brew CNC. The servo drive is able to supply a brushed DC motor with up to 7 A continuous current at up to 36 V which works out to about 250 W or 1/3 HP. It does closed loop control with feedback from a quadrature encoder. The drive accepts simple STEP and DIRECTION signals making it easy to interface with micro controllers and use it as a replacement for stepper motors in positioning applications. All of the control is handled by an ATmega328P. It takes the input signals and encoder data, does PID control, and drives the motor via the DRV8701 full bridge MOSFET driver. There’s also some error detection for motor over-current and driver under-voltage. Four IRFH7545 MOSFETs in H-bridge configuration form the output power stage.
This is still work in progress, and [Ottoragam] has a few features pending in his wish list. The important ones include adding a serial interface to make it easy to adjust the PID parameters and creating a GUI to make the adjustment easier. The project is Open Source and all source files available at his Github repository. The board is mostly surface mount, but the passives are all 0805, so it ought to be easy to assemble. The QFN footprint for the micro controller could be the only tricky one. [Ottoragam] would love to have some beta testers for his boards, and maybe some helpful comments to improve his design.



Being an aficionado of big engineering helped [mechanicalsquid] come up with a style for his gauge – big old dials and meters. We hesitate to apply the “steampunk” label to every project that retasks old technology, but it sure looks like a couple of the gauges he used could have been for steam, so the moniker probably fits here. Weather data for favorite kitesurfing and windsurfing locales is scraped from the web and applied to the gauges to indicates wind speed and direction. [mechanicalsquid] made a valiant effort to drive the voltmeter coil directly from the Raspberry Pi, but it was not to be. Servos proved inaccurate, so steppers do the job of moving the needles on both gauges. Check out the nicely detailed build log for this one, too.


