https//www.racom.eu/eng/support/protocols_docum/bc266__sepex.html
1. Example of SEP - SEP communication \|/..............\|/ _____ ___|__ __|___ _____ | SEP |-------| MR25 | | MR25 |-------| SEP | |_____| RS232 |______| |______| RS232 |_____| A 690F5505 690F5606 B prot.SEP prot.SEP The communication example illustrates communication for the commented monitoring on the RS232 link between unit SEP (A) and the CU, the sending of packets through the MORSE network during a change on the binary inputs BI, receipt of a MORSE packet by the target CU and final communication over RS232 between the CU and unit SEP (B). SEP-A - transmitting: Messages which are marked here with time 08:45:45 to 08:45:47 repeat with a period (p)oll and transmit information over the SCC about the state of sensors, commands for setting outputs and a message about the state of inputs. If an input change is registered a MORSE packet (08:45:47) is transmitted and the exchange of information over SCC continues. SEP-B - receipt: After receiving a MORSE packet (08:45:47) information about the state of inputs BI, AI0,AI1 is received from SEP-A inserted into the nearest cycle on the SCC (08:45:48.430) as a command for setting BO, AO0, A01 to SEP-B. Information about the state of counters in SEP-A is not transmitted to SEP-B. It can only be used in applications which may be connected. For transparency long rows of monitoring are shortened in such a way that data of counters C6, C7 are removed on the physical channel and C1 to C7 on the CNI. SEP A - transmitting Communication on the SCC link CU 690F5505 SEP A: 08:45:45.019 rx;i 29 | S00 011E 187F 3F21 F500 1300 5300 5700 6600 5C00 57FF FE00 3200 D600 1BD2 24 08:45:45.951 tx 8 | S00 0104 0010 0010 F003 08:45:46.016 rx;i 37 | S00 0104 2023 0000 0002 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 -- ---- -- -> state of counters C0=00000023 08:45:46.952 tx 10 | S00 011E 7F00 D700 1B00 474D 08:45:47.018 rx;i 29 | S00 011E 187F 3E21 F500 1300 5700 5700 6600 5C00 53FF FE00 3200 D600 1B6F B9 ++-- -- 3E=changed value BI, 21F5=stateAI0 MORSE packet sent to CU 690F5606: CNI mon |toa frm |dst src | size|TT N 08:45:47.029| |690F5606 690F5505|S00I OUT 58| 89 0user 7F3E 21F5 0013 0057 0057 0066 005C 0053 FFFE 0032 00D7 001B 0000 0023 0000 ++ ---- ---- ---- 3E=BI, 21F5=AI0, 00000023=C0 08:45:47.953 tx 8 | S00 0104 0010 0010 F003 08:45:48.009 rx;i 37 | S00 0104 2023 0000 0002 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 08:45:48.954 tx 10 | S00 011E 7F00 D700 1B00 474D 08:45:49.018 rx;i 29 | S00 011E 187F 3E21 F500 1300 5300 5700 6100 5C00 53FF FE00 3200 D600 1B26 3F 08:45:49.955 tx 8 | S00 0104 0010 0010 F003 08:45:50.010 rx;i 37 | S00 0104 2023 0000 0002 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 08:45:50.956 tx 10 | S00 011E 7F00 D700 1B00 474D 08:45:51.018 rx;i 29 | S00 011E 187F 3F21 F500 1300 5300 5C00 6600 5C00 53FF F900 3200 D600 1BDD 23 ++ -> found change 3F=BI, which is why a MORSE packet is sent: 08:45:51.028| |690F5606 690F5505|S00I OUT 58| 89 0user 7F3F 21F5 0013 0053 005C 0066 005C 0053 FFF9 0032 00D7 001B 0000 0023 0000 ++ -> 3F=BI changed value 08:45:51.957 tx 8 | S00 0104 0010 0010 F003 08:45:52.009 rx;i 37 | S00 0104 2024 0000 0002 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 ++ ++++ ++ -> new state of counter found C0=00000024,MORSE packet sent: 08:45:52.013| |690F5606 690F5505|S00I OUT 58| 89 0user 7F3F 21F5 0013 0053 005C 0066 005C 0053 FFF9 0032 00D7 001B 0000 0024 0000 ++++ ++++ new state C0=00000024 SEP B - receipt A MORSE packet arrived from CU 690F5505: CNI mon |toa frm |dst src | size|TT N 08:45:47.414| |690F5606 690F5505|S00I IN 5889 2user 7F3E 21F5 0013 0057 0057 0066 005C 0053 FFFE 0032 00D7 001B 0000 0023 0000 ++ ---- ---- ---- 3E=BI, 21F5=AI0, this is the state of inputs from CU 690F5505, 00000023 is the state of counter C0, it is not transferred to SEP B Communication CU 690F5606 SEP B, SCC link: 08:45:47.428 tx 8 | S00 0104 0010 0010 F003 08:45:47.463 rx;i 37 | S00 0104 2010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 08:45:48.430 tx 10 | S00 011E 3E21 F500 1300 F9E3 ++-- -- -> 3E is now the command for setting outputs BO in SEP B -> 21F5 is now the command for setting output AO0 in SEP B 08:45:48.475 rx;i 29 | S00 011E 183E 7F00 D700 1B00 7300 1C00 6A00 8000 0E00 2100 5D21 EC00 1301 A4 ++ -- -- SEP B reply contains the new state BO=3E and AO0=21EC (the difference 21F5->21EC arises through the conversion from physical dimensions to converter values) 08:45:49.431 tx 8 | S00 0104 0010 0010 F003 08:45:49.507 rx;i 37 | S00 0104 2010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 08:45:50.432 tx 10 | S00 011E 3E21 F500 1300 F9E3 08:45:50.517 rx;i 29 | S00 011E 183E 7F00 D700 1D00 5900 2200 6A00 8000 1300 2100 5C21 F100 1330 C2 A MORSE packet arrived from CU 690F5505: 08:45:51.413| |690F5606 690F5505|S00I IN 5889 3user 7F3F 21F5 0013 0053 005C 0066 005C 0053 FFF9 0032 00D7 001B 0000 0023 0000 ++ -> change 3F=BI 08:45:51.433 tx 8 | S00 0104 0010 0010 F003 08:45:51.508 rx;i 37 | S00 0104 2010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 A MORSE packet arrived from CU 690F5505: 08:45:52.398| |690F5606 690F5505|S00I IN 5889 4user 7F3F 21F5 0013 0053 005C 0066 005C 0053 FFF9 0032 00D7 001B 0000 0024 0000 change in content of counter C0 entry of =BO into SEP B Notes on monitoring: 1) Period (p)oll is set here to 1000ms for easier monitoring, normally 100 to 300ms are used. 2) The value of counters on SCC (SEP-A row 08:45:46.016) has an inverse order of bytes, see (08:45:47.029). The counter increments by the rising edge of BI. 3) State AI indicated by value FFFE (08:45:47.029), for example, arises when an input is disconnected due to the influence of negative calibration constant (l)ower. 4) Value AI0 = 0x21F5 (SEP-A 08:45:47.018) is transmitted and inserted into SEP-B (08:45:48.430) in the physical unit dimensions (here 0 to 20000 uA, i.e. 0 to 0x4E20). It is converted there according to the calibration constant to converter units (0 to 0xFFF) and inserted into the D/A converter AO0. Upon the next AO0 status request in SEP-B (08:45:48.475) the physical value AO0 is measured through the separate input AI9 with the result in the A/D converter range (0 to 0xFFF) converted to a physical dimension (0 to 0x4E20) and sent to the CU, here as AO0 = 0x21EC. These essential rounding errors are given by the comfort of communication with the user in physical units. We see that in the case of a neighbouring channel AI1, AO1, AI10, which have calibration constants set here to the range 0 to 0xFFF, i.e. 0 to 4095, alteration of the transmitted value 0x0013 doesn't occur here. 5) SEP protocol parameters used in the example: CU 690F5505 and SEP-A: SEP parameters: p(a)rtner:690F5606h t(i)me:0s (p)oll:100*10 ms (t)hr:250 (c)thr:1 (f)ilter:0 (m)ask:FFh (e)rr:SILENCE (v)er:SEP 1.03 (G)roup mode:OFF SEP-A had inputs BI6, BI7 on. During entry BI0 was on briefly. A current of 9mA was fed to AI0 CU 690F5606 a SEP-B: SEP parameters: p(a)rtner:690F5505h t(i)me:0s (p)oll:100*10 ms (t)hr:250 (c)thr:1 (f)ilter:0 (m)ask:FFh (e)rr:SILENCE (v)er:SEP 1.03 (G)roup mode:OFF SEP-B had input BI7 switched on 2. Example of SEP - CENTER communication \|/..............\|/ _____ ___|__ : __|___ _________ | SEP |----| MR25 | : | MR25 |----| CONTROL | |_____| |______| : |______| | CENTER | : |_________| 69112201 : 691122FF PLC Master prot.SEP : prot.Modbus : mode Cache \|/......: _____ ___|__ | SEP |----| MR25 | |_____| |______| 69112202 prot.SEP Transfer of binary input change to the center occurs the same way as in the previous example: The communication on RS232 - SEP always has address 01. Function 1E for controlling inputs/outputs alternates with function 04 for reading the state of counters: 011E 1800 FF00 1500 0000 0000 0000 0000 0000 0000 0000 0000 0000 0062 80 -- -> state of BI1 is 1111 1111 08:37:47.711 tx 8 | S00 0104 0010 0010 F003 08:37:47.744 rx;i 37 | S00 0104 2006 0000 0007 0000 0000 0000 0045 0000 0000 0000 0000 0000 0000 0000 -- ---- -- -> state of counter BI1 is 0000 0007 08:37:48.712 tx 10 | S00 011E 0000 0000 0000 7FC6 08:37:48.760 rx;i 29 | S00 011E 1800 FD00 1400 0000 0000 0000 0000 0000 0000 0000 0000 0000 00EB 28 ++ -> BI1 change on 1111 1101 08:37:48.766| |691122FF 69112202|S00I OUT 58| 89 0user 00FD 0014 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0006 0000 0006 ... -> SEP packet sent to the center (00FD at the beginning of the packet) 08:37:49.713 tx 8 | S00 0104 0010 0010 F003 08:37:49.747 rx;i 37 | S00 0104 2006 0000 0007 0000 0000 0000 0045 0000 0000 0000 0000 0000 0000 0000 08:37:50.714 tx 10 | S00 011E 0000 0000 0000 7FC6 08:37:50.762 rx;i 29 | S00 011E 1800 FD00 1500 0000 0000 0000 0000 0000 0000 0000 0000 0000 00FB F9 08:37:51.716 tx 8 | S00 0104 0010 0010 F003 08:37:51.752 rx;i 37 | S00 0104 2006 0000 0008 0000 0000 0000 0045 0000 0000 0000 0000 0000 0000 0000 ++ ++++ ++ -> change of state of counter BI1 08:37:51.756| |691122FF 69112202|S00I OUT 58| 89 0user 00FD 0015 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0006 0000 0008 ... -> SEP packet sent with change of counter to the center ++++ ++++ 08:37:52.717 tx 10 | S00 011E 0000 0000 0000 7FC6 08:37:52.765 rx;i 29 | S00 011E 1800 FF00 1500 0000 0000 0000 0000 0000 0000 0000 0000 0000 0062 80 ++ -> BI1 change recorded on 1111 1111 08:37:52.772| |691122FF 69112202|S00I OUT 58| 89 0user 00FF 0015 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0006 0000 0008 ... -> SEP packet sent with BI1 change to the center In the central CU this information is stored in cache memory of the Modbus protocol from where it is read by the Master PLC. We can monitor the state of cache using commands "mp0M". Remaining time (sec) of record validity for individual SEPs: >>a >> Station activity in Modbus cache: /1 /2 /3 /4 /5 /6 /7 /8 /9 /A /B /C /D /E /F /10 0 21 25 0 0 0 >> Content of cache for SEP 2: >>d2 >> cache data at position 2: /0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /A /B /C /D /E /F ASCII: 00000000 00 FD .. >> The length of cache is defined in the Art table related to the Modbus protocol in the CU 691122FF, see the description of the Modbus protocol. In the example the following are in Art: dest: gw: 0000001E 00010000 Cache created in this way has a length of 1 word and stores it with the first 2 bytes of the content of the SEP packet. The length of cache is selectable, e.g. for storing the whole packet: dest: gw: 0000001E 001C0000 Cache then looks as follows: >>d2 >> cache data at position 2: /0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /A /B /C /D /E /F ASCII: 00000000 00 FD 00 14 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000010 00 00 00 00 00 00 00 00 00 00 00 06 00 00 00 0B ................ 00000020 00 00 00 00 00 00 00 45 00 00 00 00 00 00 00 00 .......E........ 00000030 00 00 00 00 00 00 00 00 ........ >> The state of binary inputs Binp = FD is at address 01, The state of counter Binp1 = 0000 000B is at addresses 1C to 1F. Example of transmission of information from the center to SEP. In CU 691122FF we send a packet containing the Modbus command for setting Bin out on 0x01 to CU 69112202 using the "its" command: Send packet: (N):1 (d):69112202h -> target CU (t)ype:008Ah -> type of Protocol data packet s(o)urce:691122FFh d(a)ta:........?U -> 01 0F 00 00 00 08 01 01 3F 55 random data (l)ength:0byte -- (r)epeat period:0ms + (j)itter:0ms IP (P)ing (s)tart r(e)port sto(p) (q)uit >> Monitoring reaction of target CU: 08:06:49.862 tx 10 | S00 011E 0000 0000 0000 7FC6 08:06:49.926 rx;i 29 | S00 011E 1800 FF00 1500 0000 0000 0000 0000 0000 0000 0000 0000 0000 0062 80 08:06:50.863 tx 8 | S00 0104 0010 0010 F003 08:06:50.913 rx;i 37 | S00 0104 2000 0000 0000 0000 0000 0000 0011 0000 0000 0000 0000 0000 0000 0000 0000 ... -> initial state 08:06:51.641| |00000002 000000FF|S00I IN 10|8A 1user 010F 0000 0008 0101 3F55 ++ -> Modbus command 08:06:51.642| |691122FF 00000002|S00I OUT 10| 8A 0user 010F 0000 0008 0101 3F55 08:06:51.646| |691122FF 69112202|S00I OUT 58| 89 0user 01FF 0015 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 ... ++ -> reply to center contains original command + resulting packet SEP 08:06:51.864 tx 10 | S00 011E 0100 0000 0000 7E17 ++ -> command from SEP protocol to PLC SEP 08:06:51.926 rx;i 29 | S00 011E 1801 FF00 1500 0000 0000 0000 0000 0000 0000 0000 0000 0000 003F 15 ++ -> SEP reply with changed binary output 08:06:52.865 tx 8 | S00 0104 0010 0010 F003 08:06:52.912 rx;i 37 | S00 0104 2000 0000 0000 0000 0000 0000 0011 0000 0000 0000 0000 0000 0000 0000 0000 ... -> protocol SEP - PLC SEP communication continues Note - by transmitting the packet "010F 0000 0008 0100 FE95" from the center we can switch "Bin out" off again. Parameters of protocols used in the example: CU 691122FF and Modbus: MODBUS parameters:(m)ode:RADIOSLAVE (a)utomaster:OFF (c)ache:ON (p)acket:OFF (t)rans:OFF (M)aster (S)lave (A)utomaster (C)ache (P)acket (T)rans (s)ervices (O)ld menu (sw ver =< 5.74) (q)uit >>S slave parameters: Modbus (a)ddress:FFh (r)epeat discard:0 d(e)vice type:SEP -> for PLC SEP (q)uit >>q >>C cache parameters: (c)ache table No:4 # ART dest: gw: # nnnnffff hhhhllll # No Fce high low addr # BEWARE! IF YOU CHANGE CONTENT OF THE TABLE, # YOU SHOULD RESTART (INIT) THIS PROTOCOL! radioslave only: net (r)x TO - Mirror:30s adr o(f)fset:0 n(u)mber:5 net addresses address. t(y)pe: MORSE (s)imulator:OFF radiomaster only: net (t)x TO - mirror:30s (e)rr. report:NONE err. (a)dr:0h err. (m)ask:0000h (o)ld cache menu (since sw.630) (q)uit >>Q >>A Address Resolution Table: (N)o:4 (d)est:0000001E g(w):00010000 (g)et p(u)t (D)elete item de(f)ault gw (c)lear (r)ead all (q)uit >>r >> ART No 4: items: 1 default gw: 00000000 (0.0.0.0) dest: gw: 0000001E 00010000 (0.0.0.30 0.1.0.0) -> selected short cache >> SEP parameters CU 69112201 and 69112202: SEP parameters: p(a)rtner:691122FFh t(i)me:0s (p)oll:100*10 ms analog (t)hr:250*10 (f)ilter:0 (c)ounter thr:1 (m)ask:FFh (e)rr:SILENCE (v)er:SEP 1.03 (old - before 11.2001) (G)roup mode:OFF c(o)mpatibilty:OFF (g)roup params (C)alibration (T)est menu (o)ld menu (sw < 5.94) (q)uit 3. Example of configuration for Group mode In this example: group No0 of SEP at address 69109001 communicates with group No0 at 69109081 group No0 of SEP at address 69109002 communicates with group No1 at 69109081 *** CU with address 69109001 *** SEP parameters: p(a)rtner:69109081h t(i)me:30s (p)oll:10*10 ms analog (t)hr:10*10 (f)ilter:3 (c)ounter thr:10 (m)ask:FFh (e)rr:SILENCE (v)er:SEP 1.03 (old - before 11.2001) (G)roup mode:ON c(o)mpatibility:OFF (g)roup params (C)alibration (T)est menu (o)ld menu (sw < 5.94) (q)uit >>g Group processing: local threshold | remote group ani cnt | address group ------------------+--------------- (0) 100 000 | 81h 0 (1) 000 000 | 00h 0 (2) 000 000 | 00h 0 ... *** CU with address 69109002 *** SEP parameters: p(a)rtner:69109081h t(i)me:30s (p)oll:10*10 ms analog (t)hr:10*10 (f)ilter:3 (c)ounter thr:10 (m)ask:FFh (e)rr:SILENCE (v)er:SEP 1.03 (old - before 11.2001) (G)roup mode:ON c(o)mpatibility:OFF (g)roup params (C)alibration (T)est menu (o)ld menu (sw < 5.94) (q)uit >>g Group processing: local threshold | remote group ani cnt | address group ------------------+--------------- (0) 100 000 | 81h 1 (1) 000 000 | 00h 0 (2) 000 000 | 00h 0 ... *** Central CU with address 69109081 *** SEP parameters: p(a)rtner:69109001h t(i)me:30s (p)oll:10*10 ms analog (t)hr:10*10 (f)ilter:3 (c)ounter thr:10 (m)ask:FFh (e)rr:SILENCE (v)er:SEP 1.03 (old - before 11.2001) (G)roup mode:ON c(o)mpatibility:OFF (g)roup params (C)alibration (T)est menu (o)ld menu (sw < 5.94) (q)uit 5B109081h>g Group processing: local threshold | remote group ani cnt | address group ------------------+--------------- (0) 100 000 | 01h 0 (1) 100 000 | 02h 0 (2) 000 000 | 00h 0 ... 4. History Valid for sw version 657 from 4.3.2004.