diff --git a/documentation/Mainpage.md b/documentation/Mainpage.md index 51de56a7d..773c834e9 100644 --- a/documentation/Mainpage.md +++ b/documentation/Mainpage.md @@ -1,5 +1,7 @@ S2SS is a client server application based on UDP/IP to connect simulation equipment. +It's designed with focus on low latency to establish soft-realtime communication. + ## Contact This project is developed at the [Institute for Automation of Complex Power Systems](www.acs.eonerc.rwth-aachen.de) (ACS) at the EON Energy Research Center (EONERC) at the [RWTH University](http://www.rwth-aachen.de) in Aachen. @@ -42,42 +44,4 @@ or: See [configuration](Configuration.md) for more information. -## Usage -The S2SS server (`server`) expects the path to a configuration file as a single argument. - - Usage: ./server CONFIG - CONFIG is a required path to a configuration file - - Simulator2Simulator Server 0.1-d7de19c (Jun 4 2014 02:50:13) - Copyright 2014, Institute for Automation of Complex Power Systems, EONERC - Steffen Vogel - -The server requires root privileges for: - - - Enable the realtime fifo scheduler - - Increase the task priority - - Configure the network emulator (netem) - - Change the SMP affinity of threads and network interrupts - -### Examples - - 1. Start server: - - $ ./server etc/example.conf - - 2. Receive/dump data to file - - $ ./receive *:10200 > dump.csv - - 3. Replay recorded data: - - $ ./send 4 192.168.1.12:10200 < dump.csv - - 4. Send random generated values: - - $ ./random 1 4 100 | ./send 4 192.168.1.12:10200 - - 5. Test ping/pong latency: - - $ ./test latency 192.168.1.12:10200 diff --git a/documentation/Server.md b/documentation/Server.md index 7864a4ea1..57a3aa221 100644 --- a/documentation/Server.md +++ b/documentation/Server.md @@ -1,3 +1,9 @@ # Server {#server} +@defgroup server Server + +@subpage Configuration +@subpage Usage +@subpage Netem + @todo Move documentation from Mainpage to Server. diff --git a/documentation/Usage.md b/documentation/Usage.md deleted file mode 100644 index 48e27e32e..000000000 --- a/documentation/Usage.md +++ /dev/null @@ -1,42 +0,0 @@ -# Usage Instructions - -1. Start putty.exe (SSH client for Windows) - - - Should be already installed on most systems - - Or load .exe from this website (no installation required) - http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe - -2. Connect to S2SS server - -| Setting | Value | -| :------- | :------------- | -| IP | 130.134.169.31 | -| Port | 22 | -| Protocol | SSH | -| User | acs-admin | - -3. Go to S2SS directory - - $ cd /home/acs-admin/msv/s2ss/server/ - -4. Edit configuration file - - $ nano etc/opal-test.conf - - - Take a look at the examples and documentation for a detailed description - - Move with: cursor keys - - Save with: Ctrl+X => y => Enter - -5. Start server - - $ sudo ./server etc/opal-test.conf - - - `sudo` starts the server with super user priviledges - -6. Terminate server by pressing Ctrl+C - -7. Logout - - $ exit - - diff --git a/documentation/clients/GTFPGA.md b/documentation/clients/GTFPGA.md index ae6999080..b89a6c419 100644 --- a/documentation/clients/GTFPGA.md +++ b/documentation/clients/GTFPGA.md @@ -1,5 +1,7 @@ # GTFPGA {#gtfpga} +@defgroup gtfpga GTFPGA + The GTFPGA card is an extension card for simulator racks from RTDS. The manufacturer provides a VHDL module to exchange data via fiber optics between the GTFPGA and GPC cards. @@ -8,4 +10,10 @@ This board consists of a Virtex 5 FPGA, Ethernet and Fiberoptic MACs and an inte The PowerPC core is used to forward values between RTDS and the S2SS server. +## Source Code + +The source code for the PowerPC is located at: + + /clients/gtfpga/s2ss/ + @todo Add documentation for GTFPGA card. diff --git a/documentation/clients/OPAL.md b/documentation/clients/OPAL.md index 115782f56..d002c4430 100644 --- a/documentation/clients/OPAL.md +++ b/documentation/clients/OPAL.md @@ -1,14 +1,25 @@ # OPAL-RT {#opal} +@defgroup opal OPAL-RT + +The communication between OPAL-RT models and the S2SS is established by using ansychronus programs. +Asynchronous programs are a feature of RT-LAB. + +## Source Code + +The source code of the asynchronus program is located at: + + /clients/opal/models/AsyncIP_sl/s2ss/ + ## Arguments for OPAL-RT block -Param | Description | Example Value ---------------- | ------------- | -------------- -FloatParam[0] | Protocol | -FloatParam[1] | RemotePort | 10200 -FloatParam[2] | LocalPort | 10201 -StringParam[0] | RemoteAddr | 192.168.0.10 -StringParam[1] | LocalAddr | 192.168.0.11 -StringParam[2] | InterfaceName | eth2 +| Param | Description | Example Value | +| :------------- | :------------ |:-------------- | +| FloatParam[0] | Protocol | | +| FloatParam[1] | RemotePort | 10200 | +| FloatParam[2] | LocalPort | 10201 | +| StringParam[0] | RemoteAddr | 192.168.0.10 | +| StringParam[1] | LocalAddr | 192.168.0.11 | +| StringParam[2] | InterfaceName | eth2 | @todo Complete documentation for the OPAL-RT Simulink module. diff --git a/documentation/figures/path_states.dia b/documentation/figures/path_states.dia new file mode 100644 index 000000000..804951d9f Binary files /dev/null and b/documentation/figures/path_states.dia differ diff --git a/documentation/Configuration.md b/documentation/server/Configuration.md similarity index 97% rename from documentation/Configuration.md rename to documentation/server/Configuration.md index 8cb8b5498..f53be34f7 100644 --- a/documentation/Configuration.md +++ b/documentation/server/Configuration.md @@ -1,4 +1,4 @@ -# Configuration +# Configuration {#Configuration} ## File diff --git a/documentation/Netem.md b/documentation/server/Netem.md similarity index 97% rename from documentation/Netem.md rename to documentation/server/Netem.md index 7179b3d5f..b0b691cca 100644 --- a/documentation/Netem.md +++ b/documentation/server/Netem.md @@ -1,4 +1,4 @@ -# Network Emulation +# Network Emulation {#Netem} S2SS supports the emulation of wide-area network characterisics. diff --git a/documentation/server/Usage.md b/documentation/server/Usage.md new file mode 100644 index 000000000..b2ae02025 --- /dev/null +++ b/documentation/server/Usage.md @@ -0,0 +1,80 @@ +# Usage Instructions {#Usage} + +The S2SS server (`server`) expects the path to a configuration file as a single argument. + + Usage: ./server CONFIG + CONFIG is a required path to a configuration file + + Simulator2Simulator Server 0.1-d7de19c (Jun 4 2014 02:50:13) + Copyright 2014, Institute for Automation of Complex Power Systems, EONERC + Steffen Vogel + +The server requires root privileges for: + + - Enable the realtime fifo scheduler + - Increase the task priority + - Configure the network emulator (netem) + - Change the SMP affinity of threads and network interrupts + +## Step-by-step + +1. Start putty.exe (SSH client for Windows) + + - Should be already installed on most systems + - Or load .exe from this website (no installation required) + http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe + +2. Connect to S2SS server + +| Setting | Value | +| :------- | :------------- | +| IP | 130.134.169.31 | +| Port | 22 | +| Protocol | SSH | +| User | acs-admin | + +3. Go to S2SS directory + + $ cd /home/acs-admin/msv/s2ss/server/ + +4. Edit configuration file + + $ nano etc/opal-test.conf + + - Take a look at the examples and documentation for a detailed description + - Move with: cursor keys + - Save with: Ctrl+X => y => Enter + +5. Start server + + $ sudo ./server etc/opal-test.conf + + - `sudo` starts the server with super user priviledges + +6. Terminate server by pressing Ctrl+C + +7. Logout + + $ exit + +## Examples + + 1. Start server: + + $ ./server etc/example.conf + + 2. Receive/dump data to file + + $ ./receive *:10200 > dump.csv + + 3. Replay recorded data: + + $ ./send 4 192.168.1.12:10200 < dump.csv + + 4. Send random generated values: + + $ ./random 1 4 100 | ./send 4 192.168.1.12:10200 + + 5. Test ping/pong latency: + + $ ./test latency 192.168.1.12:10200