06-02-2009 04:20 PM
A few months ago I wrote and delivered some software that operates four MFCs using the PCI-6229's four analog-out ports. Everything seemd fine at the time but now the user is having an odd problem where one MFC appears to be unstable, sometimes, and it is reporducable.
My software includes a manual control mode where the user can turn a dial to command an MFC. All this does is set the voltage (0-5 volts range) for an analog-out channel. My software them reads the voltage output by the MFC and displays the result on the screen. This all seems to be working fine.
In automation, the software will set the voltages for all four analog-out channel in quick succession. After that, these voltages are not touched until the end of the user's process. But, one MFC seems to be fluctuaing wildly. The user currently is checking their hardware to verify if it is the analog out or analog in signal that is fluctuating. That will help me figure out if the problem is in the analog-in or analog-out operations.
But, the confusing part, when the user uses the manual mode to set the MFC in advance, then starts the automated procedure, they don't have a problem. ??? That seems to eliminate the MFC as the problem, but also the analog in and out operations.
My software is using the same analog-in procedures during manual and automation mode. During these operations I do read from four thermocouples plus the four MFCs, but these are handled in seperate tasks.
This wasn't a problem when I delivered the software. Everything was working fine. So now I'm wondering is something might be failing on the PCI-6229, maybe something that messes up during my analog-out loop where I send each MFC a voltage in quick succession. Or, is this an issue in the PCI-6229 boards, something along the lines of the analog-in ghosting I've read about? Should I leave more time between these analog-out tasks? Or should I ramp up the values instead of just sending a new voltage level?
Of course, the problem could be in the MFC since only one seems to be malfunctioning. But, only during my automation routines?
Thanks.
Mike
06-03-2009 09:26 AM
Have you tried to swap the MFCs around to determine whether the problem follows the MFC or the particular analog input/output. You make it sound like there is another test setup that was created? Does this program work still in automatic mode? Is there anyway that your Customer changed parameters in the software that you created that would be applicable to the automatic mode only?
Can you expand a little on what you mean when in automatic mode the voltages are set in quick succession?
To tell you the truth it sounds like there is something wrong or something that has changed in setting your voltages in automated procedure.
Let us know how this shapes up
06-03-2009 01:41 PM
Thanks for the reply. I know that it does look suspiciuosly like the software was changed, and since the software can't change itself, the user would have had to do it.
The only settings available to the user are the channel addresses and a calibration constant that is used for the flow rate-to-voltage conversion, and these same constants are used in the manual mode and during process automation. The same goes for the routines that create and execute the analog-out task.
Automation in this case means test/process automation and involves talking to some temperature controllers, monitoring the analog inputs, and at the beginning and end of the test, setting a fixed value at the analog-out channels. After the output voltage is set at the beginning of the process it is not changed until the process is done.
By "quick succesion", I mean that I use a for i:=... loop to call the routine that creates and executes a task that sets the voltage out for each channel. In manual mode only one analog-out channel is involved, although it may be called a number of times in a brief time interval.
I've asked my user to put a voltmeter on the system to help me narrow the problem down to being an analog-out issue or an analog-in problem. I've also asked them to send me the software's configuration file so I can make sure everything is OK there. I've also asked the to make sure the cabling is secure.
Sorry, much of this problem seems to depend on my code, but the symptoms are pretty clear -- everything seems to be working when I command one analog-out channel repeatedly versus all four channels in a rapid sequence. If the user sets the analog output value manually, then starts the test/process, the instability is gone. If the user just starts the test/process, where the analog-outputs are all initially 0 volts, one channel is unstable.
06-04-2009 10:38 AM
I think that your initial troublehsooting steps are the correct ones and I think will help us narrow down the problem significantly. Please go ahead and re-post once you've received that information back from your customer.
Thank you
06-23-2009 05:52 PM
I thought I'd follow up on this close it out.
My customer checked the outputs at their unit and the voltage is indeed fluctuating, so I am reading that correctly at the PCI-6229.
They then checked the PCI-6229's analog output at their equipment and the voltage is steady, as it should be. So again the PCI-6229 is working properly, and there are no cabling issues or anything like that.
The conclusion is that either the MFC is not working properly or that the downstream gas flow is causing gas to back up through this MFC. There are check valves in this circuit, but none at the output of this MFC.
The problem was in the plumbing, not the eletronics.
06-24-2009 08:51 AM