Project tutorial
Water Softener

Water Softener

Sweeping frequency magnetic hard water conditioner

  • 33,118 views
  • 45 comments
  • 52 respects

Components and supplies

About this project

The electronic water descaler is more effective device than powerful magnets placed around the incoming mains water pipe. This device operates by wrapping coil of wire around the incoming water mains to pass a magnetic field through the water. The theory is that it causes the calcium in the water to stay in solution and so inhibit it from adhering to pipes, taps, baths and kettles.

Reading many sources about the way it works I decided to try and make one. A few days after installing it I noticed a difference in the behaviour of the deposit of lime scale in the kettle and around the sink, it was much easier to remove the deposit, also the scale deposit was reduced to about half the amount.

Since it's unknown the true benefits of lime to our health and we also don't know the effect of the residual magnetic in the lime, it is recommended to use the descaler for washing water only.

The coil on the water pipe is made of 5 meter long insulated wire of 24 to 20 gage. The wire is turned around the copper or plastic water pipe (it can not be steel pipe) in a single layer. On a pipe of 20mm diameter it will form 55 turns. Since the wire is 5 meter long the number of turns will be different for different pipe diameter.

Power supply to the Arduino is 7V up to 10V.

10 ohm resistor is limiting the coil current to max 400mA.

The 8 pins PDIP buffers is a mosfet driver. IC's that can be used are: TC4423,TC4424,TC4426,TC4427,MC33152,MC34152. These are very similar and pins are identical.

For more details and options see my website: http://www.moty22.co.uk/softener.php

Code

SoftenerC/C++
Timer2 in the Atmega is setup to output 50% duty cycle. The delay can be increased to slow the sweep. OCR2A sets the frequency, 10=25KHz and 255=1KHz. Frequencies can be changed.
/*
 *  Sweeping frequency water softener
 * Created: 15/01/2017 23:34:47
 *  Author: moty22.co.uk
 */ 


void setup() {
  // put your setup code here, to run once:

    //timer2
  OCR2A = 127;  //50% duty cycle 
  TCCR2A = _BV(COM2A0) | _BV(WGM21) | _BV(WGM20);  //toggle output, fast PWM mode 
  TCCR2B = _BV(WGM22) | _BV(CS21) | _BV(CS20); //   fast PWM mode, prescale 1:64
  pinMode(11, OUTPUT);

}

void loop()
{

  delay(200);   //duration of each frequency
  OCR2A += 10;    //step size of frequency change
  if(OCR2A >= 245){OCR2A = 10; }  //range of sweep, 245 is max. 
 
}

Schematics

softener2
Arduino softener2 ikdz6pmow4

Comments

Similar projects you might like

Water Quality Monitoring System

Project tutorial by Hao Jie Chan

  • 130,524 views
  • 75 comments
  • 172 respects

Water Quality Monitoring and Notification System

Project showcase by Emmanuel Ani

  • 110,506 views
  • 56 comments
  • 216 respects

Water Leakage Detector and Valve Control

Project tutorial by Philippe Libioulle

  • 30,782 views
  • 8 comments
  • 50 respects

Water Quality Monitoring Using MKR1000 and ARTIK Cloud

Project tutorial by Team Animo!

  • 16,971 views
  • 14 comments
  • 42 respects

Arduino-Based Automatic Water Tap Using IR Sensor

Project tutorial by Creatjet3D R&D Team

  • 24,981 views
  • 8 comments
  • 29 respects

How To Use DS18B20 Water Proof Temperature Sensor

Project showcase by Team IoTBoys

  • 152,690 views
  • 25 comments
  • 36 respects
Add projectSign up / Login