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.
Farmbot is the first open source cnc farming machine with the aim to create an open and accessible technology aiding everyone to grow food and to grow food for everyone. It runs on open source hardware like Arduino Mega 2560 and involves a community of contributors on the wiki and forum where you can find documentation, schematics, assembly guides, troubleshooting tips and many more on all currently supported and old FarmBots.
Documentation has been a key element of the project since the beginning and Farmbot founder, Rory Aronson at the 2015 Hackaday SuperConference, gave a talk about why great documentation is the key to building a community of hackers who continue to build upon open source technologies:
An instructables on how to make an Arduino based mini CNC plotter from old DVD drives by Ardumotive_com:
For the X and Y axes we will use two stepper motors and rails from dvd/cd drives and for the Z axis we will use a small servo motor that moves the pen up and down. For the mounting base we will use a small piece of plexiglass.
You can easily attach a pen (or pencil) – irrespective of its thickness – on it. I tried to use an extension of cutting tool (e.g.Dremel) to engrave materials with no success. So this mini cnc can only be used as a small plotter and not as an engraver machine.
The Arduino-based circuit is using the ATmega328 microcontroller, two L293 motor driver ICs and an usb to serial module. You can easily make it with the Arduino uno board and an breadboard.
During the Physical Computing and Creative Coding course at School of Form a team composed by Ernest Warzocha, Jakub Wilczewski, Maciej Zelaznowski worked on a project starting from the keyword “the aesthetics of interaction”. With the help of their lecturers – Wies?aw Bartkowski and Krzysztof Golinski – they decided to rethink about typical button-like interface of audio sequencer and design a unique tangible interface for it.
Instead of regular buttons we created wooden discs (4×8 circles) that placed in holes generate audio sequence. Each line corresponds to different instrument and columns are responsible for time when sample is played. To know in which point at timeline our sequence plays there is hidden LED on top of each column that blink through wood and informs user which one is currently played.
To create good-looking round shapes of table we used CNC router at our university. After the milling process we connected all electronics with table and sensors for each hole. The core of our project is Arduino UNO with multiplexers and MP3 module. With rendered samples and build-in speakers our project doesn’t require computer plugged in.
Important and somehow unique in our sequencer is usage of IR reflective sensors to change played instrument sample. To decide which sample we want to play sensor recognizes different grayscale color and intensity of the reflected light at bottom of our discs – actually everything placed on table can generate sound. Creating grayscale-based controller is experimental way to interact with device. Furthermore, using grayscale palette might be great idea for MIDI instrument. For this project we used two colors to show the concept. It’s possible to add more but it’s more sensitive to non-constant background light.
[Josh] got rid of the standard, factory gauges on his GSXR Super-bike and installed a custom built instrument panel which displays some additional parameters which the regular instrumentation cluster did not. He was working on converting his bike in to a Streetfighter – a stripped down, aggressive, mean machine. The staid looking gauges had to go, besides several other mods to give his bike the right look.
Luckily, he had the right skills and tools available to make sure this DIY hack lives up to the Streetfighter cred of his bike. The important parameter for him was to log the Air / Fuel mixture ratio so he could work on the carburation. Along the way, he seems to have gone a bit overboard with this build, but the end result is quite nice. The build centers around a Planar 160×80 EL graphic display lying in his parts bin. The display didn’t have a controller, so he used the Epson S1D13700 graphic controller to interface it with the microcontroller. An Atmel ATmega128L runs the system, and [Josh] wrote all of his code in “C”.
Bike speed is derived through a GPS module. The air/fuel ratios are read from a wideband O2 sensor. Other data shown on the display are the engine temperature, battery voltage, time (from GPS), and engine RPM. An ambient light sensor is used to auto-dim the display. The high refresh rate of the display, up to 240Hz, allows a large dimming range without flickering. The light sensor also controls the brightness of the other indicators. A BC127 Bluetooth module allows datalogging via the Serial Port Profile (SPP). In the future, this would possibly allow him to display SMS messages from his phone on the display. A bank of addressable LED’s can be driven to show several functions – indicator lights, RPM, battery voltage, engine temperature or air / fuel ratio – selected using a push button.
[Josh] used his CNC to mill out the housing using a 1″ thick acrylic. And the nice looking PCB is designed in Eagle and milled out using the same CNC. It’s all SMD with a large smattering of 0805 parts and shows rev B – so he’s probably made improvements over rev A. Check out the video below where [Josh] walks through some of the functions.
Oakkar7 has a nice build log on his DIY csCNC, he writes:
Since I started building DIY CNC, I checked the free, opensource motor controller. There are several alternatives. I chose linisteppr controller.
– Simple and cheap (my first priority :) ) and I can source required parts locally
– microstepping, open design (Especially, it’s PIC16F628A based. I’m PIC guy and a lot 16F628A in my stock)
Build log is fast, simple and straight. I used a simple perfboard for faster development.
After building the driver, I tested it with my buspirate using PWM function for generating stepping pulse. I started with 1kHz and increased to 4 kHz.