I am new to LabView but I need some help. I have a Data Logger Thermometer model that looks identical to the one in this manual: http://www.omega.com/manuals/manualpdf/M4147.pdf (OMEGA model # HH309).
I connect the thermometer to a PC via a RS232-to-USB (Keyspan adapter) connection. The software that comes with the device (SE309 - Four Channel Thermometer Software v 3.6) detects and monitors the temperature through the COM3 port with no problems.
However, I need to interface this device with LabView 2011 and I am having difficulties getting it to communicate successfully. I use the example VI called "Basic Serial Write and Read.vi" to open a VISA session. I use the default communication parameters (baud rate, data bits, etc...) but change the VISA resource name to COM3. After figuring out a few RS-232 transmit and receive commands I am able get some strange responses.
For example, if I send "C", the thermometer temperature reading changes from Celsius to Fahrenheit and vice-versa. When I send "E" the thermometer beeps. If I send "P" the screen of the thermometer shows "SEend" followed by "Err". Then the "read string" in LabView shows strange ASCII characters like: ÿÿÿÿÿÿÿÿ .
I would like to know the following:
(1) What communication parameters should I be using (baud rate, data bits, parity, stop bits, flow control, delay, etc...).
(2) What else can I try to get the temperature reading in LabView?
(3) How can I interpret the ASCII characters I receive from the "read string" such as: È€ ? (see screen shot attached)
Solved! Go to Solution.
Thanks for the reply Dennis_Knutson
I emailed the company and they sent me the protocols for my device (I attached them below). I suppose the next step will be to figure out how to decode the received bytes/bits in LabView? Do you have any suggestions what I should do next to decode the received "frame" ? I'm not sure if simply changing the read string format to hexadecimal helps. I just get something like this: FFFF FFFF FFFF FFFF 0000 0000 FF00 0220 FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF
Changing the display format will better allow you to match the bytes read with the explanation of the bytes in the manual. You will have to decode the information. I would start by using the String to Byte Array function. With that, you can use the Index Array to get specific bytes and manipulate it further as needed.
I was able to figure out which bytes contain the temperature. When I get around to it, I'll make a VI to take readings and plot the temperature over time. Thanks for the help.
I have another question and I don't want to make a new thread if it can be answered here. I just want to confirm that if I buy a sensor from NI such as a thermocouple or pressure sensor I wont need to worry about reading bits and bytes correct? Same goes with non-NI devices that have 3rd party drivers for LabView? Is there an online catalog or list that summarizes the supported sensors I can buy? I found this: http://sine.ni.com/np/app/main/p/ap/daq/lang/en/pg/1/sn/n17:daq,n36:12556/
But I'm looking for something that has a full list to print and show my supervisor.
You are confused. A sensor such as a thermocouple or one for pressure, is connected to some sort of acquisition device. It could be be a USB/PCI DAQ device, serial instrument, GPIB instrument, etc. You have a serial instrument. If you were to use an NI DAQ card with a thermocouple connected, then you would use completely different software to read the DAQ card. The link you have is for data acquistion devices and it lists some of the different types of sensors that can be connected. Same is true if you were to use a completely different serial instrument that accepted different types of sensor connections. If you decided to use a different serial instrument, then I would recommend you search for it in the Instrument Driver Network. If you find an existing instrument driver, that means that someone has already determined the protocol and written LabVIEW code to read and interpret it.
p.s. NI does not sell sensors.
Good info to know, thanks again for the reply! I was given a couple other devices and asked to check if I can interface them in LabView, including a fiber optic spectrometer(Ocean Optics USB2000) which I was able to find working drivers for in the Instrument Driver Network. I got it to work with LabView so that's a good start.
Now I am being asked to look online for supported temperature and pressure sensors. I will keep searching but I figure it might be worth asking here if you have any suggestions?
The only things I have used is the Agilent 34970 for temperature and various NI DAQ devices. For specifics on NI devices, you should contact your local sales engineer or NI directly. They have so many options that it would be impossible for me to recomend anything without getting a lot more details.
you posted while ago about your experience with reading data from omega thermometer in LabView.
i have similar issue but with different model. Could explain how you figured out which commands from protocol (that comes with thermometers) should be used to get temperature from the device? my protocol is attached below just in case
Hi I am trying to interface with the omega data logger thermometer HH 309 using labview to record and monitor temperature. Can someone from this earlier thread help me with it if they have figured out which commands to use to initiate reading temperature.