Author Topic: Analog problem  (Read 12827 times)

can

  • Full Member
  • Posts: 160
  • I'm a llama!
    • View Profile
Analog problem
« on: June 12, 2014, 09:53:44 AM »
Hi. I'm using i7017 to take reading from 4 lvdt. However, the timing allowed is only approximately 0.4s. Possible to get a goodand stable reading?  I've tried using only 1 analog channelp of  fmd88 to take stable readings but there are approximately 11 units of fluctuation. Any idea how to get repeatable and accurate results?

garysdickinson

  • Hero Member
  • Posts: 502
  • Old PLC Coder
    • View Profile
Re:Analog problem
« Reply #1 on: June 12, 2014, 11:48:43 AM »
I assume you are asking about how to reduce the noise (randomness of ADC readings) when using the ADC built into the FMD PLC.

As you are aware, the PLC ADC inputs are "single ended".  This means that signal voltage that you are measuring with the ADC is referenced to the 0V at the ADC converter on the PLC circuit board.  If this 0V reference is at a different voltage than the 0V at the LVDT then you will have an ADC measurement error. If this voltage difference is not, and it never is, a constant voltage, then you may observe many different ADC readings for a constant input.

As a simple experiment, take a good DVM and measure the voltage between the 0V terminal on the PLC power supply and the 0V ADC reference (on the ADC connector).  Use the DVM. To measure both the AC and the DC voltages.  If you measure 0.000V (AC and DC) you are lying.  If you measure anything else then you are observing part of the noise problem.

The problem gets a bit more complicated because I'll bet that your LVDTs are being powered by a separate power supply and there may be a signal conditioner between the LVDTs and the PLC.

You can repeat the DVM measurement and measure from the PLC ADC 0V reference to the LVDT 0V reference. If you see either AC OR DC voltages other than 0.000, then this is part of the random ADC readings.

Reworking the wiring to get every thing that should be 0V to actually be 0V will solve much of the problem.

If the noise still exists, then you enter into the world of shielding and filtering. Focus on the signal wiring between the LVDT and the ADC.

You can do a lot of filtering in the digital domain.  Sample the ADC every 10ms and keep a running average.  There is software support in the PLC to simplify this task.

Oh, I forgot to ask...how important are the least few digits?  What would happen to your system if you simply discarded the least significant 3 bits?  

    A = Adc(1) And &hfffffff8    ' force 3 LSBs to 0

Problem solved!


Good luck,

Gary D

« Last Edit: June 12, 2014, 12:44:14 PM by garysdickinson »

support

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3174
    • View Profile
    • Internet Programmable PLCs
Re:Analog problem
« Reply #2 on: June 12, 2014, 09:56:18 PM »
Are you saying that the value vary approximately +/-5 from middle value?  That translate to approximately +/- 6mV variation which is likely due to digital noise present in the system.

You can compute an average reading of the ADC which basically mathematically remove the variation:

E.g.

A = 0

FOR I = 1 to 100
    A = A + ADC(1)
NEXT

B = A/100

B will contain the average ADC reading which can be very stable down to about +/-1 lsb (depending on the noise level in the system).

Since the built-in ADC very fast conversion type the 100 readings will be completed in much shorter time than a single reading by the I-7017.
« Last Edit: June 12, 2014, 09:58:59 PM by support »
Email: support@triplc.com
Tel: 1-877-TRI-PLCS

can

  • Full Member
  • Posts: 160
  • I'm a llama!
    • View Profile
Re:Analog problem
« Reply #3 on: July 03, 2014, 01:27:58 AM »
Hi Guys. Thanks for the input. I'm wondering if there will be noise introduced into the system if I use a 15 core data cable with aluminium wrap for FMD88 to communicate with the load cell amplifier. I'll be having 4 adc signal in the same cable. In addition, it will have 0 ref and Vcc in the same cable too.

From the load cell amplifier, I have 3 cable. 1 is analogue, 1 is com, and 1 is shield. Do I connect com and shield to the 0v ref?

support

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3174
    • View Profile
    • Internet Programmable PLCs
Re:Analog problem
« Reply #4 on: July 04, 2014, 10:03:24 PM »
Under normal circumstances the current flowing in the wires from the load cell to the ADC will be very low due to the high impedance of the ADC inputs, so they are unlikely to crosstalk and influence each other's signal level. The more likely noise source is what could be coupled to the cable from external noise source such as VFD or high current switching current or even from a bad power supply.
Email: support@triplc.com
Tel: 1-877-TRI-PLCS