Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Slowing an input signal down - capacitors??

Status
Not open for further replies.

DJ T.

New Member
Good evening all!
I am a hobbyist just getting started with electronics (discrete circuits, at least). I am working on
interfacing an Arduino microcontroller with a water heater. One of the things that I absolutely want is a
way to measure power consumed.
The simplest way to do this appears to be with an IC such as an Allegro ACS756 because it'll measure up to
50A, but I am also open to other suggestions! The only issue that I have is to get a halfway accurate sample of
power used is to make a bunch of measurements per cycle (10? 20?) and take the average. I would like to use the
microcontroller for other things also and am worried about overloading the processor.
So far, the best way around this seems to be to use a sample and hold setup (LM398?), but then I still have to
strobe the sample-hold chip while locked to the peak and valley of the AC wave going through the ACS756. Simpler
solution would be a capacitor to just hold the output signal of the ACS756 for a few milliseconds.
1 complete cycle of AC power in the US (60Hz) is 16.6 milliseconds, time from 0 to first peak should be around
4ms. I am VERY willing to sacrifice accuracy over a few cycles between the time the heater turns on and off
because it should be dealing in minutes, while the inaccuracy waiting for the capacitor to charge and
discharge is a few cycles...
The partial circuit that I'm thinking looks kinda like this:

R 1M --/\/\/\--
| |
C .047uf -----||----
| |
R 100K | |
| |
sample >--/\/\-------------------> arduino input
from ACS756
(1.5 - 4.5v)

Calculator at http://hyperphysics.phy-astr.gsu.edu/hbase/electric/capdis.html
gives a discharge time of .047s (about 4 cycles)
Calculator at http://hyperphysics.phy-astr.gsu.edu/hbase/electric/capchg.html#c2
Charge time should be about ten times faster with a resistor between capacitor and input of 1/10th value of discharge resistor.
Does this make any sense at all?
Am I headed down the right path?
Is there an easier or better way that I am missing?
Recommendations for basic learning that I am missing?

Thanks all!

DJ
 
Your very simple circuit has horrible schematic-drawing software. I do not see which connects to what.
I draw all my schematics with Microsoft Paint program. It can copy and paste resistors, capacitors, opamps, logic gates and many other things from existing schematics.
Straight lines are made with the Shift Key held down. Here is a sample of my schematics:
 

Attachments

  • Sound Level Indicator schematic rev1.PNG
    Sound Level Indicator schematic rev1.PNG
    66.4 KB · Views: 543
Since the heater is a resistive load and there should be insignificant current distortion, then you could get reasonable accuracy by just measuring the average value of the current. That way you can sample the signal at a slow rate (say a few times per second) and still get good accuracy. Do this by running the AC output of the Allegro through a series capacitor to remove the DC offset, rectify it with a full-wave precision rectifier, and run that through an RC LP filter to get the DC average value. You can then multiply that average by .707/.636 = 1.111 to get the RMS value of the current.
 
Is the heater one which simply switches on and off? If so, and you know its power rating, all you need to do is measure how long it is on for.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top