Reads and writes information to Eurotherm controllers via Modbus RTU protocols. Currently only tested with serial RS232, but should work the same with RS485 if wired correctly. So far only tested with Eurotherm 2416 and 3216 temperature controllers but they all use the same language so it should be widely applicable. The code is well commented so you should be able to modify it easily. I've currently only implemented it using read and write n words (codes 3 and 16), but I'd be happy to implement the other features, such as fast status read etc. (code 7). This code is derived from that in CO2gui, but is implemented using the native MATLAB serial interface only.
To use it:
1. Generate the serial object (this one is done on COM7)
serialObject = tempobj(7);
2. Connect to the object:
tempobjconnect(serialObject)
3. Start sending commands!
format:
tempobjcomm(commandType, serialObject, deviceAddress, parameterAddress, values)
e.g. to get the set temperature and the current temperature (process variable) in one go, do:
(assuming a default device address of 1)
data = tempobjcomm('read', serialObject, 1, 1, 2);
To use it:
1. Generate the serial object (this one is done on COM7)
serialObject = tempobj(7);
2. Connect to the object:
tempobjconnect(serialObject)
3. Start sending commands!
format:
tempobjcomm(commandType, serialObject, deviceAddress, parameterAddress, values)
e.g. to get the set temperature and the current temperature (process variable) in one go, do:
(assuming a default device address of 1)
data = tempobjcomm('read', serialObject, 1, 1, 2);
where data(1) is the current temperature and data(2) is the set temperature. Note that if your temperature controller has decimal places on the front panel, the outputs using 'read' will be scaled. E.g. if 1 decimal place, 24.2 will be returned as 242.
Higher resolution can be obtained using 'readfullres' instead, and also avoids any scaling issues.
To set a new set temperature:
Eurotherm 3508 Controller Manual
Models 2404/2408 PID Controllers Installation and Operation handbook ENG. Dmx controller mac. These are available on www. Installation and Operation Handbook Installation 2408 and 2404 Controller 1-1 Chapter 1 INSTALLATION Figure 1-1 2408 1/8 DIN controller. 3504, 3508 - Precision control of temperature and process variables The latest range of advanced process controllers from Eurotherm provide precision control of temperature and a host of other process variables together with an abundance of advanced options making it the most adaptable product in its class.
tempobjcomm('write', serialObject, 1, 2, newTemperature)
'writefullres' can be used again if required for higher resolution. The same scaling issues apply as above for reading temperatures.
UPDATE
User Manual C905a
A deviceAddress can included in the initial serial object (see notes) for persistence' sake. Download movie app for laptop.
A host of sample settings files for Eurotherm controllers are included (with a device address of 1, but these can be easily modified).