Posts | Comments

Planet Arduino

Archive for the ‘current sensing’ Category

Laundry. It’s one of life’s inescapable cycles, but at least we have machines now. The downside of this innovation is that since we no longer monitor every step — the rock-beating, the river-rinsing, the line-hanging and -retrieving — the pain of laundry has evolved into the monotony of monitoring the robots’ work.

[Adam] shares his wash-bots with roommates, and they aren’t close enough to combine their lights and darks and turn it into a group activity. They needed an easy way to tell when the machines are done running, and whose stuff is even in there in the first place, so [Adam] built a laundry machine monitor that uses current sensing to detect when the machines are done running and sends a text to the appropriate person.

Each machine has a little Hall effect-sensing module that’s carefully zip-tied around its power cable. The signal from these three-wire boards goes high when the machine is running and low when it’s not. At the beginning of the load, the launderer simply presses their assigned button on the control box, and the ESP32 inside takes care of the rest.

Getting a text when your drawers are clean is about as private as it gets. Clean underwear, don’t care? Put it on a scrolling marquee.

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.

For his entry into the 2019 Hackaday Prize, [Luc Brun] is working on controller that can detect when the pump is running dry by monitoring the phase shift between voltage and current. With an inductive load like a pump, the current should lag behind the AC voltage a bit under normal operation. But if they become too far out of phase with each other, that’s a sign that the pump is running in a no-load condition because there’s no water to slow it down.

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.

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.

For his entry into the 2019 Hackaday Prize, [Luc Brun] is working on controller that can detect when the pump is running dry by monitoring the phase shift between voltage and current. With an inductive load like a pump, the current should lag behind the AC voltage a bit under normal operation. But if they become too far out of phase with each other, that’s a sign that the pump is running in a no-load condition because there’s no water to slow it down.

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.



  • Newsletter

    Sign up for the PlanetArduino Newsletter, which delivers the most popular articles via e-mail to your inbox every week. Just fill in the information below and submit.

  • Like Us on Facebook