# how to get a clean AC current waveform for power-factor calculations

I've been doing a project to figure out the power factor of a load by comparing the zero crossings of the voltage and current signals (of a AC signal) and hence finding the phase difference using an arduino UNO. the application is confidential but i can say that im using a load which can introduce change the inductance in the circuit and hence give me a phase difference and also increase the effective resistance which further decreases to current consumed. i have my voltage signal available through a particular method and im using a ACS712 hall effect current sensor module for current sensing.

Ive been able to get cleaner waveforms using a low pass filter (from 500ma to 300ma i can get good power factor readings) for currents up till 300mA, but currents lower than that become comparable to the inherent noise of the sensor. Hence im looking for other options to get a clean current waveform, i looked into similar sensors with the current ranges and sensitivities that my application desires, but they aren't readily available and may cost a lot on a production level for my company.

I cant use a CT cause my currents are already at very low values, lowering them further through a CT wont help and as per my calculations for 1:50 turns CT will end up with similar low current signals as the ACS712 (dont know about the noise effects though), hence im looking at the shunt resistor method. my questions are as follows:

1) Is there any other approach i could follow to calculate the power factor?

2) can i still use a CT? considering its an isolation method. but how would i measure currents in the range 500ma to 50ma that is required for my application.

3) i have tried using a 5 ohm resistor as a shunt (5*0.2 = 1Vpp) and tried to observe the output, the signal seems to be very noisy to begin with, how do i go about this? additionally how do i make it safer considering there is galvanic contact with the AC lines as opposed to other methods.

4) should i follow any other approach to get this done?

so im in a bind :/ need help!!! :cry: (sorry for the big paragraph and list of Questions! 8-O )

• CT is the gold standard way to do this, it gives you galvanic isolation, so you use a suitable sized resistor to convert current to voltage. Nov 18, 2017 at 6:33
• (1) You have only specified the minimum current. What is the maximum? (2) How will you handle non-sinusoidal currents such as from switched mode power supplies (SMPS)? (3) You have no links to datasheets for devices mentioned. Nov 18, 2017 at 7:18
• This is displacement power factor NOT power factor
– user16222
Nov 18, 2017 at 12:24
• "i have tried using a 5 ohm resistor as a shunt (5*0.2 = 1Vpp) and tried to observe the output, the signal seems to be very noisy to begin with" - it shouldn't be noisy if you did it right. Is 200mA the maximum expected peak current? Nov 19, 2017 at 20:59