01-03-2018 04:47 PM
I am new to LabVIEW, and trying to develop an interface that will trigger a run in ChemStation. The LabVIEW VI controls and monitors my reactor system, but I want to use ChemStation to control my LC, analyze the data, and store the data. I just need a way to periodically (a specific time set by the users) have LabVIEW trigger Chemstation to run the method. Any thoughts?
01-03-2018 06:28 PM
ChemStation appears to be control software for assorted Agilent hardware. I took a quick peek at the documentation and saw no mention of any automation interface for it.
It is possible to have LabVIEW use user32.dll or something like it to programatically send keystrokes or mouse clicks to other applications. ChemStation appears to have the ability to run macros stored in text files. As such, if you could create a macro file using LabView, then direct ChemStation to run it by sending the right series of keystrokes/mouse clicks to it.
01-04-2018 11:05 AM
Hey nschweit302! This may help you program the keystrokes you need.
http://digital.ni.com/public.nsf/allkb/15D9EAAE7AF1132586256FB70066E0DD?OpenDocument
Hope this may help you!
01-04-2018 11:32 AM
According to the information on Agilent's site You should be able to automate your work using macros and calling the ChemStation application via the command line. You can use the System Exec.vi to call the application. I could not find any direct communication interfaces to the instruments. ou may be able to reverse engineer it using a LAN analyzer to capture the communication between ChemStation and the instruments, at least for the network based instruments.
01-04-2018 01:32 PM
Thanks for the help everyone.
Can you help me with an alternative approach? I could connect directly to the instrument using Agilent's Remote cable port. This document has the specifications on the REMOTE connection: http://orsat.com/pdfs/APG_Remote_Specification.pdf
Do I need some additional hardware (some sort of hub) to control the instrument this way? What protocol do I use to connect to the instrument?
01-04-2018 03:59 PM
That document makes it look like there isn't really a 'protocol' persay, just a combination of pins that you can statically drive high or low to tell the instrument what you want it to do, and read back what state the instrument is in. You'd need some hardware that can read and drive digital lines to the voltage and current levels specified.
The document is recommending building a drive circuit to do this. You can probably control the drive circuit using an X Series DAQ card, or some other Digital card to read and write to digital lines on the circuit. I'm not sure a DAQ card could do the driving and reading to the instrument itself, though, based on the current requirements. Maybe with some additional resistors you could do it.
Anyway, if you got it all hooked up, you would just do a software-timed read and software-timed write tasks in LabVIEW to the digital lines corresponding to each pin to set it High or Low, depending on what you want the instrument to do. That's what it looks like to me, anyway.