| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| en:sw:01-mervis:multiple-unipi-through-sscp-hidden [2020/06/15 14:02] – jan_kozak | en:sw:01-mervis:multiple-unipi-through-sscp-hidden [2025/09/26 06:36] (current) – [1 Basic project settings in Mervis IDE] translate Czech text kcerny |
|---|
| ====== Controlling a PLC through SSCP protocol from another PLC ====== | ====== Controlling a PLC through SSCP protocol from another PLC ====== |
| The SSCP protocol (Shark Slave Communication Protocol) is a proprietary communication protocol of Mervis systems. When compared to Modbus, SSCP holds the advantage of higher data transmission speed and support of secured communication. It serves for configuration, programming or data transfers. Data transfers are then the main focus of this tutorial - specifically, it demonstrates how to set up two PLC to allow one controller to control the other. | <WRAP group> |
| | <WRAP half column 81%> |
| | The SSCP protocol (Shark Slave Communication Protocol) is a proprietary communication protocol of Mervis systems. When compared to Modbus, SSCP holds the advantage of higher data transmission speed and support of secured communication. It serves for configuration, programming or data transfers. Data transfers are then the main focus of this tutorial - specifically, it demonstrates how to set up two PLC to allow one controller to control the other. |
| | </WRAP> |
| | <WRAP half column 15%> |
| | ;;# |
| | <html><span class="dev-tag dev-patron">Patron</span></html> \\ |
| | <html><span class="dev-tag dev-neuron">Neuron</span></html> \\ |
| | <html><span class="dev-tag dev-gate">Gate</span></html> \\ |
| | <html><span class="dev-tag dev-unipi11">Unipi 1.1</span></html> \\ |
| | <html><span class="dev-tag dev-axon">Axon</span></html> |
| | ;;# |
| | </WRAP> |
| | </WRAP> |
| |
| ==== Prerequisites ==== | <WRAP center round box> |
| | <html><span class="kbBlue-H4alt">Prerequisites:</span></html> |
| * Two [[https://www.unipi.technology/axon-c20|Unipi]] controllers running [[en:files:software:os-images:00-start|Mervis OS]] | * Two [[https://www.unipi.technology/axon-c20|Unipi]] controllers running [[en:files:software:os-images:00-start|Mervis OS]] |
| * [[https://www.unipi.technology/accessories-c4|24V DC power supply]] | * [[https://www.unipi.technology/accessories-c4|24 V⎓ power supply]] |
| * Local network connectivity (any switch or router)) | * Local network connectivity (any switch or router)) |
| * 3× network cable (RJ45) | * 3× network cable (RJ45) |
| | </WRAP> |
| |
| ===== 1 Basic project settings in Mervis IDE ===== | ===== 1 Basic project settings in Mervis IDE ===== |
| </figure></html> | </figure></html> |
| |
| Create the project in Simple Mode and then [[https://kb.unipi.technology/en:sw:01-mervis:creating-new-project-hidden#switching_from_simple_mode_to_full_mode|switch it to Full Mode]]. Then connect the first PLC to the project by right-clicking on <html><span class="avBlueText">PLC</span></html> and selecting <html><span class="avBlueText">Attach PLC</span></html>. | Create the project in Simple Mode and then [[en:sw:01-mervis:creating-new-project-hidden#switching_to_full_mode|switch it to Full Mode]]. Then connect the first PLC to the project by right-clicking on <html><span class="avBlueText">PLC</span></html> and selecting <html><span class="avBlueText">Attach PLC</span></html>. |
| |
| <html><figure ondblclick="redirectImg(this)" class="zoom" onclick="zoom(event)" style="background-image: url(https://kb.unipi.technology/_media/cs:sw:01-mervis:002_multiple-unipi-through-sscp-cz.png)"> | <html><figure ondblclick="redirectImg(this)" class="zoom" onclick="zoom(event)" style="background-image: url(https://kb.unipi.technology/_media/cs:sw:01-mervis:002_multiple-unipi-through-sscp-cz.png)"> |
| </figure></html> | </figure></html> |
| |
| | <html><div class="directTag" id="set-task"></div></html> |
| Double-click on <html><span class="avOrangeText">PLC_Slave</span></html> to open its properties. Right-click into the blank space to display a context menu, in which select <html><span class="avBlueText">Add Task</span></html>. | Double-click on <html><span class="avOrangeText">PLC_Slave</span></html> to open its properties. Right-click into the blank space to display a context menu, in which select <html><span class="avBlueText">Add Task</span></html>. |
| |
| </figure></html> | </figure></html> |
| |
| | <html><div class="directTag" id="custom_endpoint"></div></html> |
| Name the device <html><span class="avOrangeText">slave_PLC</span></html>, select it and look into the right panel <html><span class="avBlueText">Properties</span></html>. In <html><span class="avBlueText">SSCP device parameters</span></html> you need to select <html><span class="avBlueText">Source substation</span></html> and <html><span class="avBlueText">Custom</span></html> endpoint. By doing so another configuration will be displayed. All necessary info can be found in PLC properties. For communication with the local network enter the following parameters: | Name the device <html><span class="avOrangeText">slave_PLC</span></html>, select it and look into the right panel <html><span class="avBlueText">Properties</span></html>. In <html><span class="avBlueText">SSCP device parameters</span></html> you need to select <html><span class="avBlueText">Source substation</span></html> and <html><span class="avBlueText">Custom</span></html> endpoint. By doing so another configuration will be displayed. All necessary info can be found in PLC properties. For communication with the local network enter the following parameters: |
| |
| <html><span class="kbBlueText">Parametry TCP:</span></html> | <html><span class="kbBlueText">TCP parameters:</span></html> |
| * **Device address:** Enter the IP address/domain | * **Device address:** Enter the IP address/domain |
| * **Device port:** 12346* | * **Device port:** 12346 |
| *since Mervis IDE/OS 2.3.0 you can use port 12347 for secure SSCP communication | |
| | /* FIXME -> since Mervis IDE/OS 2.3.0 you can use port 12347 for secure SSCP communication */ |
| |
| <html><span class="kbBlueText">SSCP device parameters:</span></html> | <html><span class="kbBlueText">SSCP device parameters:</span></html> |
| It is also possible for two PLCs to communicate through SSCP over vast distances. In this case, you also need to configure <html><span class="avBlueText">proxy</span></html> on <html><span class="avOrangeText">PLC_Slave</span></html>. | It is also possible for two PLCs to communicate through SSCP over vast distances. In this case, you also need to configure <html><span class="avBlueText">proxy</span></html> on <html><span class="avOrangeText">PLC_Slave</span></html>. |
| |
| If you want to use the proxy and it is already configured on the said PLC, adjust the following paramaters of the <html><span class="avOrangeText">SSCP_TCP</span></html> channel: | ---- |
| | |
| | <WRAP center round info> |
| | If you want to use the proxy and it is already configured on the said PLC, adjust the following paramaters of the <html><span class="avOrangeText">SSCP_TCP</span></html> channel: |
| | </WRAP> |
| | |
| |
| <html><span class="kbBlueText">TCP Parameters:</span></html> | <html><span class="kbBlueText">TCP Parameters:</span></html> |
| * **Device address:** [[urls-hidden|proxy.unipi.technology]] | * **Device address:** [[urls-hidden|proxy.unipi.technology]] |
| * **Port device:** 12348* | * **Port device:** 12348 |
| *since Mervis IDE/OS 2.3.0 you can use port 12349 for secure communication via proxy | |
| | /* FIXME -> since Mervis IDE/OS 2.3.0 you can use port 12349 for secure communication via proxy */ |
| |
| <html><span class="kbBlueText">SSCP Device Parameters:</span></html> | <html><span class="kbBlueText">SSCP Device Parameters:</span></html> |
| * **Proxy ID:** vaše unikátní [[https://www.unipi.technology/getmervis|Proxy ID from the Unipi customer account]] | * Your unique **Proxy ID:** [[https://www.unipi.technology/getmervis|Proxy ID from the Unipi customer account]] |
| |
| Proxy connection variant is not recommended for control. It is, however, useful for collecting data (ie. temperatures) from multiple controllers into a single PLC for further use. | Proxy connection variant is not recommended for control. It is, however, useful for collecting data (ie. temperatures) from multiple controllers into a single PLC for further use. |
| </figure></html> | </figure></html> |
| |
| The next step is to use <html><span class="avBlueText">Autogen</span></html>, to create variables for data points. Right-click on each <html><span class="avBlueText">device</span></html> for each<html><span class="avBlueText">channel</span></html> and select <html><span class="avBlueText">set Autogen</span></html>. More info about Autogen is availabl [[autogen-hidden|here]]. | The next step is to use <html><span class="avBlueText">Autogen</span></html>, to create variables for data points. Right-click on each <html><span class="avBlueText">device</span></html> for each <html><span class="avBlueText">channel</span></html> and select <html><span class="avBlueText">set Autogen</span></html>. More info about Autogen is availabl [[autogen-hidden|here]]. |
| |
| <html><figure ondblclick="redirectImg(this)" class="zoom" onclick="zoom(event)" style="background-image: url(https://kb.unipi.technology/_media/cs:sw:01-mervis:019_multiple-unipi-through-sscp-cz.png)"> | <html><figure ondblclick="redirectImg(this)" class="zoom" onclick="zoom(event)" style="background-image: url(https://kb.unipi.technology/_media/cs:sw:01-mervis:019_multiple-unipi-through-sscp-cz.png)"> |