|
|
Line 303: |
Line 303: |
| </table> | | </table> |
|
| |
|
| ==Modbus Serial Master==
| | {{#ifeq:{{{name}}} | RUT955 | |
| | | {{Template:Networking_device_manual_modbus_serial |
| ===RS232===
| | | file_rs232 = {{{file_rs232}}} |
| ----
| | | file_rs485 = {{{file_rs485}}} |
| | | | file_slave_settings = {{{file_slave_settings}}} |
| [[File:{{{file_rs232}}}]]
| | | file_slave_requests = {{{file_slave_request}}} |
| | | | file_slave_alarm = {{{file_slave_alarm}}} |
| <table class="nd-mantable">
| | }} |
| <tr>
| | |}} |
| <th>Field</th>
| |
| <th>Value</th>
| |
| <th>Description</th>
| |
| </tr>
| |
| <tr>
| |
| <td>Enabled</td>
| |
| <td>yes | no; default: <b>no</b></td>
| |
| <td>Turns the Modbus RTU via RS232 on or off.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Baud rate</td>
| |
| <td>300 | 1200 | 2400 | 4800 | 9600 | 19200 | 38400 | 57600 | 115200; default: <b>19200</b></td>
| |
| <td>Serial data transmission rate (in bits per second).</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Data bits</td>
| |
| <td>5 | 6 | 7 | 8; default: <b>8</b></td>
| |
| <td>Number of data bits of each character.</td>
| |
| </tr>
| |
| <tr> | |
| <td>Parity</td>
| |
| <td>None | Even | Odd; default: <b>Even</b></td>
| |
| <td>In serial transmission, parity is a method of detecting errors. An extra data bit is sent with each data character, arranged so that the number of 1 bits in each character, including the parity bit, is always odd or always even. If a byte is received with the wrong number of 1s, then it must have been corrupted. However, an even number of errors can pass the parity check.
| |
| <ul>
| |
| <li><b>None</b> (<b>N</b>) - no parity method is used.</li>
| |
| <li><b>Odd</b> (<b>O</b>) - the parity bit is set so that the number of "logical ones (1s)" has to be odd.</li>
| |
| <li><b>Even</b> (<b>E</b>) - the parity bit is set so that the number of "logical ones (1s)" has to be even.</li>
| |
| </ul>
| |
| </td>
| |
| </tr>
| |
| <tr> | |
| <td>Stop bits</td>
| |
| <td>1 | 2; default: <b>1</b></td>
| |
| <td>Stop bits sent at the end of every character allow the receiving signal hardware to detect the end of a character and to resynchronise with the character stream. Electronic devices usually use one stop bit. Two stop bits are required if slow electromechanical devices are used.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Flow control</td>
| |
| <td>None | RTS/CTS | Xon/Xoff; default: <b>None</b></td>
| |
| <td>In many circumstances a transmitter might be able to send data faster than the receiver is able to process it. To cope with this, serial lines often incorporate a "handshaking" method, usually distinguished between hardware and software handshaking.
| |
| <ul>
| |
| <li><b>RTS/CTS</b> - hardware handshaking. RTS and CTS are turned OFF and ON from alternate ends to control data flow, for instance when a buffer is almost full.</li>
| |
| <li><b>Xon/Xoff</b> - software handshaking. The Xon and Xoff characters are sent by the receiver to the sender to control when the sender will send data, i.e., these characters go in the opposite direction to the data being sent. The circuit starts in the "sending allowed" state. When the receiver's buffers approach capacity, the receiver sends the Xoff character to tell the sender to stop sending data. Later, after the receiver has emptied its buffers, it sends an Xon character to tell the sender to resume transmission.</li>
| |
| </ul>
| |
| </td>
| |
| </tr>
| |
| </table>
| |
| | |
| ===RS485===
| |
| ----
| |
| | |
| [[File:{{{file_rs485}}}]]
| |
| | |
| <table class="nd-mantable">
| |
| <tr> | |
| <th>Field</th>
| |
| <th>Value</th>
| |
| <th>Description</th>
| |
| </tr>
| |
| <tr>
| |
| <td>Enabled</td>
| |
| <td>yes | no; default: <b>no</b></td>
| |
| <td>Turns the Modbus RTU via RS485 on or off.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Baud rate</td>
| |
| <td>300 | 1200 | 2400 | 4800 | 9600 | 19200 | 38400 | 57600 | 115200; default: <b>19200</b></td>
| |
| <td>Serial data transmission rate (in bits per second).</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Data bits</td>
| |
| <td>5 | 6 | 7 | 8; default: <b>8</b></td>
| |
| <td>Number of data bits of each character.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Parity</td>
| |
| <td>None | Even | Odd; default: <b>Even</b></td>
| |
| <td>In serial transmission, parity is a method of detecting errors. An extra data bit is sent with each data character, arranged so that the number of 1 bits in each character, including the parity bit, is always odd or always even. If a byte is received with the wrong number of 1s, then it must have been corrupted. However, an even number of errors can pass the parity check.
| |
| <ul>
| |
| <li><b>None</b> (<b>N</b>) - no parity method is used.</li>
| |
| <li><b>Odd</b> (<b>O</b>) - the parity bit is set so that the number of "logical ones (1s)" has to be odd.</li>
| |
| <li><b>Even</b> (<b>E</b>) - the parity bit is set so that the number of "logical ones (1s)" has to be even.</li>
| |
| </ul>
| |
| </td>
| |
| </tr>
| |
| <tr>
| |
| <td>Stop bits</td>
| |
| <td>1 | 2; default: <b>1</b></td>
| |
| <td>Stop bits sent at the end of every character allow the receiving signal hardware to detect the end of a character and to resynchronise with the character stream. Electronic devices usually use one stop bit. Two stop bits are required if slow electromechanical devices are used.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Flow control</td>
| |
| <td>None | RTS/CTS | Xon/Xoff; default: <b>None</b></td>
| |
| <td>In many circumstances a transmitter might be able to send data faster than the receiver is able to process it. To cope with this, serial lines often incorporate a "handshaking" method, usually distinguished between hardware and software handshaking.
| |
| <ul>
| |
| <li><b>RTS/CTS</b> - hardware handshaking. RTS and CTS are turned OFF and ON from alternate ends to control data flow, for instance when a buffer is almost full.</li>
| |
| <li><b>Xon/Xoff</b> - software handshaking. The Xon and Xoff characters are sent by the receiver to the sender to control when the sender will send data, i.e., these characters go in the opposite direction to the data being sent. The circuit starts in the "sending allowed" state. When the receiver's buffers approach capacity, the receiver sends the Xoff character to tell the sender to stop sending data. Later, after the receiver has emptied its buffers, it sends an Xon character to tell the sender to resume transmission.</li>
| |
| </ul>
| |
| </td>
| |
| </tr>
| |
| </table>
| |
| | |
| ===Slaves===
| |
| ----
| |
| | |
| [[File:{{{file_slave_settings}}}]]
| |
| | |
| <table class="nd-mantable">
| |
| <tr>
| |
| <th>Field</th>
| |
| <th>Value</th>
| |
| <th>Description</th>
| |
| </tr>
| |
| <tr> | |
| <td>Enabled</td>
| |
| <td>yes | no; default: <b>no</b></td>
| |
| <td>Turns the slave on or off.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Slave ID</td>
| |
| <td>integer [1..255]; default: <b>1</b></td>
| |
| <td>Slave ID. Each slave in a network is assigned a unique identifier randging from 1 to 255. When the master requests data from a slave, the first byte it sends is the Slave ID.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Period</td>
| |
| <td>integer [1..9999]; default: <b>10</b></td>
| |
| <td>Interval (in minutes) at which requests are sent to the slave device.</td>
| |
| </tr>
| |
| </table>
| |
| ====Slave requests====
| |
| ----
| |
| | |
| [[File:{{{file_slave_request}}}]]
| |
| | |
| <table class="nd-mantable">
| |
| <tr>
| |
| <th>Field</th>
| |
| <th>Value</th>
| |
| <th>Description</th>
| |
| </tr>
| |
| <tr> | |
| <td>Enabled</td>
| |
| <td>yes | no; default: <b>no</b></td>
| |
| <td>Turns the request on or off.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Function</td>
| |
| <td>Read Coil | Read Discrete Input | Read Holding Registers | Read Input Registers; default: <b>Read Holding Registers</b></td>
| |
| <td>Modbus function used in Modbus request.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>First Register</td>
| |
| <td>integer [1..65536]; default: <b>1</b></td>
| |
| <td>First Modbus register from which data will be read.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Number of Registers</td>
| |
| <td>integer [1..2000]; default: <b>none</b></td>
| |
| <td>Number of Modbus registers that will be read during the request/</td>
| |
| </tr>
| |
| </table>
| |
| | |
| ====Slave alarms====
| |
| ----
| |
| | |
| [[File:{{{file_slave_alarm}}}]]
| |
| | |
| <table class="nd-mantable">
| |
| <tr>
| |
| <th>Field</th>
| |
| <th>Value</th>
| |
| <th>Description</th>
| |
| </tr>
| |
| <tr>
| |
| <td>Enabled</td>
| |
| <td>yes | no; default: <b>no</b></td>
| |
| <td>Turns the alarm on or off.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Function</td>
| |
| <td>Read Coil | Read Discrete Input | Read Holding Registers | Read Input Registers; default: <b>Read Holding Registers</b></td>
| |
| <td>Modbus function used in Modbus request.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Register</td>
| |
| <td>integer [1..65536]; default: <b>1</b></td>
| |
| <td>Number of the Modbus coil/input/holding register/input register that will be read.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Condition</td>
| |
| <td>More than | Less than | Equal to | Not equal to; default: <b>More than</b></td>
| |
| <td>When a value is obtained it will be compared against the value specified in the following field. The comparison will be made in accordance with the condition specified in this field.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Value</td>
| |
| <td>integer [0..65535]; default: <b>0</b></td>
| |
| <td>The value against which the read data will be compared.</td>
| |
| </tr>
| |
| <tr>
| |
| <td>Action</td>
| |
| <td>SMS | Trigger output | Modbus request; default: <b>SMS</b></td>
| |
| <td>Action that will be taken if the condition is met. Possible actions:
| |
| <ul>
| |
| <li><b>SMS</b> - sends and SMS message to a specified recipient(s).</li>
| |
| <li><b>Trigger output</b> - changes the state of a specified output(s).</li>
| |
| <li><b>Modbus Request</b> - sends a Modbus request to a specified slave.</li>
| |
| </ul>
| |
| </td>
| |
| </tr>
| |
| </table>
| |
| | |
| ==Modbus Data to Server== | | ==Modbus Data to Server== |
|
| |
|