Most of the projects we feature on Hackaday are built for personal use; designed to meet the needs of the person creating them. If it works for somebody else, then all the better. But occasionally we may find ourselves designing hardware for a paying customer, and as this video from [Proto G] shows, that sometimes means taking the long way around.
The initial task he was given seemed simple enough: build a display that could spin four license plates around, and make it so the speed could be adjusted. So [Proto G] knocked a frame out of some sheet metal, and used an ESP32 to drive two RC-style electronic speed controllers (ESCs) connected to a couple of “pancake” brushless gimbal motors. Since there was no need to accurately position the license plates, it was just a matter of writing some code that would spin the motors in an aesthetically pleasing way.
Unfortunately, the customer then altered the deal. Now they wanted a stand that could stop on each license plate and linger for a bit before moving to the next one. Unfortunately, that meant the ESCs weren’t up to the task. They got dumped in favor of an ODrive motor controller, and encoders were added to the shafts so the ESP32 could keep track of the display’s position. [Proto G] says he still had to work out some kinks, such as how to keep the two motors synchronized and reduce backlash when the spinner stopped on a particular plate, but in the end we think the results look fantastic. Now if only we had some license plates we needed rotisseried…
If [Proto G] knew he needed precise positioning control from the start, he would have approached the project differently and saved himself a lot of time. But such is life when you’re working on contract.
The sort of pumps used in the filtration systems of fountains and swimming pools don’t take kindly to running dry. So putting such a pump on a simple timer to run while you’re away comes with a certain level of risk: if the pump runs out of water while you’re gone, you might come home to a melted mess. One possible solution is a float sensor to detect the water level in whatever you’re trying to pump, but that can get complicated when you’re talking about something as large as a pool.
As [Luc] explains in the project write-up, simply monitoring the pump’s peak current could work, but it would be less reliable. The problem is that different motors have different current consumptions, so unless you calibrated the controller to the specific load it’s protecting, you could get false readings. But the relationship between current and voltage should remain fairly consistent between different motors.
The controller is powered by a Arduino Nano and uses a ACS712 current sensor to take phase measurements. Since he had the ability to toggle the pump on and off with a relay attached to the Arduino, [Luc] decided to add in a few other features. The addition of a DS1307 Real Time Clock means the pump can be run on a schedule, and an HC-05 Bluetooth module lets him monitor the whole system from his smartphone with an Android application he developed.
Since the theme of this year’s Hackaday Prize is designing a product rather than a one-off build, judges will be looking for exactly the sort of forward thinking that [Luc] has demonstrated here. As the controller is currently a mass of individual modules held inside a waterproof enclosure, the next steps for this project will likely be the finalization of the hardware design and the production of a custom PCB.
Running a brushed motor in muddy or dusty environments takes a toll on controllers, with both heavy back EMF and high stall currents. This explains one of the challenge in Europe’s Hacky Racer series, which is decidedly more off-road than America’s Power Racing Series.
In pushing these little electric vehicles to the limits, many builders use brushless Chinese scooter motors since they’re both available and inexpensive. Others take the brushed DC route if they’re lucky enough to score a motor — and then the challenge becomes getting the most performance without burning up your controller. To fix this, [MechanicalCat] has come up with a current limiter for cheap DC motor controllers.
The full write-up is in the included PDF file, and describes the set-up of an Arduino Nano sitting between throttle and controller, and taking feedback from a current sensor. The controller in question is a 4QD Porter 10 so an extra component is a DC-to-DC converter to provide a floating ground for the Arduino. However, there is also the intriguing possibility of the same set-up being used with absurdly cheap Chinese motor controllers. There is also advice on fitting flyback diodes, something which might have saved one controller in the Hackaday pits last year.
It’s yet to be seen what effect this will have on Hacky Racer competitiveness, however its applications go far beyond that field into anywhere a reliable small DC motor drive on the cheap is required. Meanwhile, if you’re unsure where this Hacky Racer stuff came from, you could start here.
Driving a brushless motor requires a particular sequence. For the best result, you need to close the loop so your circuit can apply the right sequence at the right time. You can figure out the timing using a somewhat complex circuit and monitoring the electrical behavior of the motor coils. Or you can use sensors to detect the motor’s position. Many motors have the sensors built in and [Electronoobs] shows how to drive one of these motors in a recent video that you can watch below. If you want to know about using the motor’s coils as sensors, he did a video on that topic, earlier.
The motor in question was pulled from an optical drive and has three hall effect sensors onboard. Having these sensors simplifies the drive electronics considerably.
This project starts with an unusually cool Power Wheels toy, based on the famous Grave Digger monster truck. During the modification process, it was quickly realised that the original motor controller wasn’t going to cut the mustard. With only basic on/off control, it gave a very jerky ride and was harsh on the transmission components, too. [PoppaFixit] decided to upgrade to an off-the-shelf 24 V motor controller to give the car more finesse as well as speed. The controller came with a replacement set of pedals, both accelerator and brake, to replace the stock units. On the motor side, a couple of beefier Traxxas units were substituted for the weedy originals.
Acceleration is now much improved, not just due to the added power, but because the variable throttle allows the driver to avoid wheelspin on hard launches. It also makes the car much more comfortable and safe to drive, thanks to the added controllability. Another way to tell the project was a success is the look of pure joy on the new owner’s face!
This was a fairly basic install, very accessible to the novice. These sort of electric vehicle hop-ups are commonplace enough that there are a wide variety of suppliers who sell easy-to-use kits for this sort of work. For that reason, we’ve seen plenty of hacks of this sort – like this modified scooter, or these Power Wheels set up for racing.
Current. Too little of it, and you can’t get where you’re going, too much and your hardware’s on fire. In many projects, it’s desirable to know just how much current is being drawn, and even more desirable to limit it to avoid catastrophic destruction. The humble current shunt is an excellent way to do just that.
To understand current, it’s important to understand Ohm’s Law, which defines the relationship between current, voltage, and resistance. If we know two out of the three, we can calculate the unknown. This is the underlying principle behind the current shunt. A current flows through a resistor, and the voltage drop across the resistor is measured. If the resistance also is known, the current can be calculated with the equation I=V/R.
This simple fact can be used to great effect. As an example, consider a microcontroller used to control a DC motor with a transistor controlled by a PWM output. A known resistance is placed inline with the motor and, the voltage drop across it measured with the onboard analog-to-digital converter. With a few lines of code, it’s simple for the microcontroller to calculate the current flowing to the motor. Armed with this knowledge, code can be crafted to limit the motor current draw for such purposes as avoiding overheating the motor, or to protect the drive transistors from failure.
In fact, such strategies can be used in a wide variety of applications. In microcontroller projects you can measure as many currents as you have spare ADC channels and time. Whether you’re driving high power LEDs or trying to build protection into a power supply, current shunts are key to doing this.
The hack begins as [Jerry] decides to gut a Maytag MAH7500 Neptune front loader. Many projects exist that borrow the motor but rely on a seperately sourced variable frequency drive, so the goal was to see if the machine’s original controller was usable. The machine was first troubleshooted using a factory service mode, which spins the drum at a set speed if everything is working correctly.
From there, it was a relatively simple job to source the machine schematics to identify the pinouts of the various connectors. After some experimentation with a scope and a function generator, [Jerry] was able to get the motor spinning with the original controller doing the hard work.
It’s a simple hack, and one that relies on the availability of documentation to get the job done, but it’s a great inspiration for anyone else looking to drive similar motors in their own projects. The benefit is that by using the original motor controller, you can be confident that it’s properly rated for the motor on hand.
Perhaps instead of an induction motor, you’d rather drive a high powered brushless DC motor? This project can help.