Question:

Electrical Engineering Project Troubles?

by  |  earlier

0 LIKES UnLike

My project is to control a pressure reducing valve from 3000psi to 10psi using a program call LabView. Really all I need to do is run the proportional amplifier card which runs from 0 - 10VDC. I keep running around in circles trying to figure out what LabView actually outputs and how to change that output to 0-10VDC. So the RS232 only sends one bit at a time, good old 1's and 0's. I am using a standard 9 pin serial connector. Is the signal from the computer digital? I would think it would but but I couldn't find a definite answer. Because I know the amplifier card requires analog. Anything you can tell me would help.

Thanks,

Casey

 Tags:

   Report

2 ANSWERS


  1. Hi, I'm a certified NI CLAD.

    I'm confused, though, are you writing a VI to output data to an RS232 port, or are you trying to write a VI to interface directly to a PCI card?

    Is your amplifier card PCI? Serial? PXI? Made by NI?  Custom made?

    Labview can output a great many things, depending on what you have connected.

    Email me for more help (with your ampilifer card make / model numbers)

    Edit:

    I recommend finding a serial to parallel converter (shift register or UART) that will expose each bit from the serial port.

    You could use bits 0 to 3 as a BCD or hexadecimal value, and feed that into a 4 bit D to A converter.  Connect the output of the D/A to the setpoint (green wire) of your wandfluh card(s).

    You could then output bits 4 through 7 to a demultiplexer, to address (enable) up to 16 different cards, one at a time, using the release/block (white wire) on the card.

    If you have the luxury of one serial port for every card, you could output the full 8 bits to an 8 bit D to A, then feed that into setpoint of the card for better resolution.

    Using labview, you just need an array of 8 binary switches (controls), and set up a while loop to write that byte to a VISA serial port every 100 ms, or whatever rate you like.

    For more advanced control, you could use 2 k**b controls with 16 positions each, and wire them together to form the byte you need to write to the port - but this could propagate the value through the different cards as you change the card k**b - unless you add an extra control like a 'send' button to write one time to the port when it is clicked.

    Edit two:  Yes, the serial port output is digital, hence the need for a D to A converter.  Furthermore, a logic 1 can be anything between minus 5 and minus 15 volts, and a logic 0 can be anywhere between +5 and +15 volts.


  2. I agree with the previous answerer that your question is not clear. It sounds to me like you have a scaling problem.

    Since you are using an RS232 input, it means you have some hardwired components. The proportional amplifier only understands percentages, i.e., full scale of the input (10V) would be 100%, as would be the full stroke of your PRV.

    So,

    1. Convert the analog variable,10 vdc, into an equivalent digital value through an A/D converter to the RS232, or USB. You can get them from omega.com.

    2. Put it through the proportional amplifier calculating module in Labview.

    3. Deconvert it with a D/A module connected to the RS232, or USB. into an analog value, to control the valve.

    A gain of 1 of the proportional amplifier would mean that the  valve will move full stroke for a full 10v input. If you need more action, you increase the gain from there on. A gain of 2 means you need only 5v to move the valve full stroke, and so on.

    .

Question Stats

Latest activity: earlier.
This question has 2 answers.

BECOME A GUIDE

Share your knowledge and help people by answering questions.