08-30-2012 07:16 AM
I'm not sure if this is a LabVIEW specific question, or just a more general question, but in any case I'm stuck!
One piece of equipment we just got at the lab is a Geokon LC-2x16 Datalogger which is used to read in 16 (vibrating wire type) strain gages.
Unfortunately, the DAQ comes with it's own proprietary software, which I always like to avoid if possible.
The reason is that I have many different pieces of instrumentation, and I like to have them all coordinated in LabVIEW for various reasons, but basically I just have more control and customization that way.
In any case, the Geokon software has to be running in order to run the Datalogger (due to excitation of the strain gages, communication, etc).
This software communicates with the DAQ over a COM port.
My hope was that I could just use LabVIEW to listen to traffic on that port and I could parse out the data as it came in as sort of a backdoor solution to this. Once I have the data, I can do whatever I need to do within LabVIEW and avoid the other software entirely.
Here's the problem though: If the Geokon software is connected to that specific COM port (say COM 3), then no other software can simultaneously connect to that port. I've tried with LabVIEW and even Hyperterminal, neither will seem to work.
Anyone have some insight on how I could go about this?
Solved! Go to Solution.
08-30-2012 07:37 AM
08-30-2012 07:38 AM
That's how serial ports work, there's one process in control of the port.
I guess either you have to duplicate what the Geokon software does (excitation, communication, ...) into your software as well (you could use a serial port monitor to see what is sent and received) or you'll have to talk to the Geokon software in a way (don't know what interface they have) to get the data you want or to set the parameters you want.
08-30-2012 07:49 AM
Take a look in the directory of the LogView directory. See if there are any DLLs or such that can be used.
08-30-2012 08:42 AM
I think reverse engineering the Geokon software may prove to be a bit over my head.
A serial port sniffer definitely looks like a viable option.
I seem to be having an issue with PortMon though, the "capture" icon is greyed out so I can't select any ports to monitor.
I found a few other pieces of software such as Serial Port Monitor, Serial Mon, Serial Port Monitor, etc. but they all seem to either cost money or they are actively controlling the COM port, rather than passively sniffing. I'll keep rooting around, this method does show some hope. Thanks for all the help so far.
08-30-2012 08:42 AM
How about a bit of lateral thinking? Instead of monitoring the port in software, do it in hardware.
Try wiring another serial port in parallel with the data receive at the PC end (Data in / ground pins only) and read the data on that port. You'll need to run without handshaking, and you'll have to read and parse the data fast enough and without any knowledge of the data flowing in the other direction. I've done something similar to this before and it worked.
Rod.
08-30-2012 09:07 AM
So looking into the actual LogView software that Geokon uses, it looks like they have a terminal that you can see what is going on. Here's a snapshot that shows some data coming in
Every one of those lines that start with LC1123101742 is an array of data at a given time.
I'm gonna root around a little bit and see if I can figure out if I can directly access the data from this terminal somehow.
08-30-2012 09:55 AM
Cory,
The manual for this includes all the ASCII commands for configuring/controlling this instrument. Should be all you need to create your own LV driver.
08-30-2012 10:26 AM - edited 08-30-2012 10:27 AM
Wayne you are a life saver! Thanks a ton, that's exactly what I needed!
Who would've thought the answer was right in the manual?
08-30-2012 10:34 AM
Glad I could help. "Even the blind squirrel finds a nut on occasion."