04-04-2018 07:58 AM
Hi everyone,
I'm an interne technician at a Quebec university, I was tasked to set up à LabVIEW interface capable of communicating with a Eurotherm 2416 to simplify its usages for students. I'm presently using LabVIEW 2017 with the et24xx driver found on the national instrument web site. From the start, many problems started appearing when using some sub vi or examples of the driver.
problem number one: an error (-1074001422) originate from the initialize.vi/utility read from register.vi/ Utility MODBUS RTU Receive Message.vi/Utility Generate instrument Error.vi
note: the hardware and setup values seems fine since I can easily communicate with the Eurotherm via Itools.
I've added a folder with screenshots of the sub vi initialize to help the understanding of everyone.
Thank you for all the help you can bring me, I've been trying to understand the cause of these problems for the past week.
Solved! Go to Solution.
04-04-2018 09:08 AM
I've done more test and I have come to the conclusion that the string that is read is for some reasons the same as the one that was written. in my case, the string that initializes sends is: 04/03/00z/00/01/A5/86
04 = address
03 = command
00z/00 = 122 = register address
01 = nb of register
A5/86 = CRC
and the read buffer after the read via is the following: 04/03/00z/00/01/A5/86
does anybody know if the Eurotherm send back the same message when there is an error?
It would explain the error of the initialize if the Eurotherm is simply not giving an answer.
Thank you for any help you can bring me.
04-04-2018 10:02 AM
Are you interfacing the instrument by RS485? It's possible that an echo of the output is collected as input, unless the HW interface is configured to drop the echo. Probably, the LabVIEW driver is not aware of the echo and expects a RS232 connection, where no echo is possible.
This should be documented somewhere, though.
04-04-2018 10:17 AM - edited 04-04-2018 10:18 AM
Hi, Paolo
Thank you for your response,
Yes, I'm interfacing the instrument by RS485. The string leaves through RS232 and is converted to RS485 before reaching the Eurotherm as seen in the connection diagram I have added below. I have a 220 Ohm resistance between HF and HE of the Eurotherm and a 220 Ohm resistance between RX+ and Rx-. to prevent having echo problems.
If it is, in fact, some kind of echo, Itools doesn't seem to mine (see itools work.PNG) it since I can locate the Eurotherm and navigate through its menu and change, for example, the setpoint value on the computer which translates in the same change on the Eurotherm, it's self.
04-04-2018 10:46 AM
I don't recognize those specific Modbus subVI functions that show in your code. What is the source of those subVI's?
04-04-2018 10:51 AM
All the subVI are from the driver found the NI site:
I downloaded the driver through the application finds Instrument Drivers available on LabVIEW.
04-04-2018 11:00 AM
Echo is not a problem if the software is aware of it (and it seems that iTools indeed is). Echo is simply related to the fact that the RS485 bus features a single pair of wires, so whatever is output to the cable may be also received in input, unless the RS485 interface takes care to temporarily shut down the receiver.
I downloaded a driver which seems the same you used. At a first glance, it does not take into account any echo.
Try to modify the vi My ET24XX Utility MODBUS RTU Send Message, adding a Read after the Write. The Read should swallow up the echoed packet. See the attachment as an example. If there is an echo (and we are very lucky), it should work.
04-04-2018 11:50 AM
thanks, Paolo,
this seems to work, the initialize subVI didn't generate any error this time and the value received from the Eurotherm falls within the established limited found in the VI.
Thank you for your help
And thank you to everyone who tried to find a solution to help me.
hope this can help many others.