A Node-RED node to interact with Siemens S7 PLCs
npm install node-red-contrib-s7-tempo~/.node-red on Linux or %HOMEPATH%\.nodered on Windows
msg.payload contains the variable's value and msg.topic has the variable's name.
msg.payload contains an object with all configured variables and their values. If _diff_ is checked, a message is sent if at least one of the variables changes its value.
DB5,X0.1 | DB5.DBX0.1 | Boolean | Bit 1 of byte 0 of DB 5 |
DB23,B1 or DB23,BYTE1 | DB23.DBB1 | Number | Byte 1 (0-255) of DB 23 |
DB100,C2 or DB100,CHAR2 | DB100.DBB2 | String | Byte 2 of DB 100 as a Char |
DB42,I3 or DB42,INT3 | DB42.DBW3 | Number | Signed 16-bit number at byte 3 of DB 42 |
DB57,WORD4 | DB57.DBW4 | Number | Unsigned 16-bit number at byte 4 of DB 57 |
DB13,DI5 or DB13,DINT5 | DB13.DBD5 | Number | Signed 32-bit number at byte 5 of DB 13 |
DB19,DW6 or DB19,DWORD6 | DB19.DBD6 | Number | Unsigned 32-bit number at byte 6 of DB 19 |
DB21,R7 or DB21,REAL7 | DB21.DBD7 | Number | Floating point 32-bit number at byte 7 of DB 21 |
DB2,S7.10* | - | String | String of length 10 starting at byte 7 of DB 2 |
I1.0 or E1.0 | I1.0 or E1.0 | Boolean | Bit 0 of byte 1 of input area |
Q2.1 or A2.1 | Q2.1 or A2.1 | Boolean | Bit 1 of byte 2 of output area |
M3.2 | M3.2 | Boolean | Bit 2 of byte 3 of memory area |
IB4 or EB4 | IB4 or EB4 | Number | Byte 4 (0 -255) of input area |
QB5 or AB5 | QB5 or AB5 | Number | Byte 5 (0 -255) of output area |
MB6 | MB6 | Number | Byte 6 (0 -255) of memory area |
IC7 or EC7 | IB7 or EB7 | String | Byte 7 of input area as a Char |
QC8 or AC8 | QB8 or AB8 | String | Byte 8 of output area as a Char |
MC9 | MB9 | String | Byte 9 of memory area as a Char |
II10 or EI10 | IW10 or EW10 | Number | Signed 16-bit number at byte 10 of input area |
QI12 or AI12 | QW12 or AW12 | Number | Signed 16-bit number at byte 12 of output area |
MI14 | MW14 | Number | Signed 16-bit number at byte 14 of memory area |
IW16 or EW16 | IW16 or EW16 | Number | Unsigned 16-bit number at byte 16 of input area |
QW18 or AW18 | QW18 or AW18 | Number | Unsigned 16-bit number at byte 18 of output area |
MW20 | MW20 | Number | Unsigned 16-bit number at byte 20 of memory area |
IDI22 or EDI22 | ID22 or ED22 | Number | Signed 32-bit number at byte 22 of input area |
QDI24 or ADI24 | QD24 or AD24 | Number | Signed 32-bit number at byte 24 of output area |
MDI26 | MD26 | Number | Signed 32-bit number at byte 26 of memory area |
ID28 or ED28 | ID28 or ED28 | Number | Unsigned 32-bit number at byte 28 of input area |
QD30 or AD30 | QD30 or AD30 | Number | Unsigned 32-bit number at byte 30 of output area |
MD32 | MD32 | Number | Unsigned 32-bit number at byte 32 of memory area |
IR34 or ER34 | IR34 or ER34 | Number | Floating point 32-bit number at byte 34 of input area |
QR36 or AR36 | QR36 or AR36 | Number | Floating point 32-bit number at byte 36 of output area |
MR38 | MR38 | Number | Floating point 32-bit number at byte 38 of memory area |
DB1,DT0 | - | Date** | A timestamp in the DATE_AND_TIME format |
DB1,DTZ10 | - | Date** | A timestamp in the DATE_AND_TIME format, in UTC |
DB2,DTL2 | - | Date** | A timestamp in the DTL format |
DB2,DTLZ12 | - | Date** | A timestamp in the DTL format, in UTC |
Date are _always_ represented in UTC. Please use other nodes like node-red-contrib-moment to properly handle type conversions
I | 1024 - 1031 | DB1,BYTE1024 or DB1,X1024.5 or DB1,WORD1024 | Reads input terminals 1...8 or 6 or 1...16 |
AI | 1032 - 1063 | DB1,WORD1032 | Reads analog input terminal 1. Always word sized. |
Q | 1064 - 1071 | DB1,BYTE1064 or DB1,X1064.5 or DB1,WORD1064 | Reads output terminals 1...8 or 6 or 1...16 |
AQ | 1072 - 1103 | DB1,WORD1072 | Reads analog output terminal 1. Always word sized. |
M | 1104 - 1117 | DB1,BYTE1104 or DB1,X1104.5 or DB1,WORD1104 | Reads bit flags M1...M8 or M6 or M1...16 |
AM | 1118 - 1245 | DB1,WORD1118 | Reads analog flag 1. Always word sized. |
NI | 1246 - 1061 | DB1,BYTE1246 or DB1,X1246.5 or DB1,WORD1246 | Reads network input 1...8 or 6 or 1...16 |
NAI | 1262 - 1389 | DB1,WORD1262 | Reads analog network input 1. Always word sized. |
NQ | 1390 - 1405 | DB1,BYTE1390 or DB1,X1390.5 or DB1,WORD1390 | Reads network output 1...8 or 6 or 1...16 |
NAQ | 1406 - 1469 | DB1,WORD1406 | Reads network output 1. Always word sized. |
0 | DB1,BYTE0 | R/W access |
1 | DB1,X1.3 | R/W access Note: use booleans |
2..3 | DB1,WORD2 | R/W access |
4..7 | DB1,DWORD4 | R/W access |