1
0
Fork 0
mirror of https://git.rwth-aachen.de/acs/public/villas/node/ synced 2025-03-09 00:00:00 +01:00

more updates to documentation

This commit is contained in:
Steffen Vogel 2016-02-10 19:58:05 +01:00
parent cbd1982f6e
commit e79f3edae7
4 changed files with 56 additions and 24 deletions

View file

@ -4,11 +4,16 @@
### Prerequisites
Install libraries including developement headers for:
Install libraries and developement headers for:
- [libconfig](http://www.hyperrealm.com/libconfig/) for parsing the config file
- [libnl3](http://www.infradead.org/~tgr/libnl/) for the network communication & emulation support
- libOpal{AsyncApi,Core,Utils} for running the S2SS server as an Asynchronous process inside your RT-LAB model
- [libconfig](http://www.hyperrealm.com/libconfig/) for parsing the configuration file.
- [libnl3](http://www.infradead.org/~tgr/libnl/) for the network communication & emulation support of the `socket` node-type.
- libOpal{AsyncApi,Core,Utils} for running the S2SS server as an Asynchronous process inside your RT-LAB model.
- [pciuitils](http://mj.ucw.cz/sw/pciutils/) for enumerating PCI devices. Required by `gtfpga` node-type.
- [libjansson](http://www.digip.org/jansson/) JSON parser for `websocket` and `ngsi` node-types.
- [libwebsockets](http://libwebsockets.org) for the `websocket` node-type.
- [libcurl](https://curl.haxx.se/libcurl/) for HTTP REST requests by the `ngsi` node-type.
- [libuuid](http://sourceforge.net/projects/libuuid/) for generating random IDs. Required by the `ngsi` node-type.
Use the following command to install the dependencies under Debian-based distributions:
@ -27,5 +32,20 @@ Afterwards, start the compilation with:
$ make
Append `V=5` to `make` for a more verbose debugging output.
Append `DEBUG=1` to `make` to add debug symbols.
### Installation
Install the files to your search path:
$ make install
Append `PREFIX=/opt/local` to change the installation destination.
### Test
Verify everything is working and required node-types are compiled-in:
$ s2ss server
Will show you the current version of the server including a list of all supported node-types.

View file

@ -1,22 +1,27 @@
# Nodes {#nodes}
# Node-types {#nodes}
Every server needs clients which act as sinks / sources for simulation data. In case of S2SS these clients are called _nodes_.
Every node is an instance of a node type. S2SS currently supports the following node types:
Every node is an instance of a node-type. S2SS currently supports the following node-types:
@subpage gtfpga
@subpage opal
@subpage file
@subpage socket
@subpage websocket
@subpage ngsi
#### @subpage gtfpga
- RTDS via GTFPGA and PCIexpress (Linux vfio, uio)
#### @subpage opal
- OPAL via Asynchronous Process (libOpalAsyncApi)
Use cases:
#### @subpage file
- Log & replay of sample values
- Static load profiles
- RTDS via GTFPGA and UDP (`socket`)
- RTDS via GTFPGA and PCIexpress (`gtfpga`)
- OPAL via Asynchronous Process and UDP (`socket`)
- OPAL via Asynchronous Process and Shared memory (`opal`)
- NGSI 9/10 (FIRWARE context broker, `ngsi`)
- WebSockets for live monitoring (`websocket`)
- Labview (*planned*)
- Simulink (*planned*)
#### @subpage socket
- RTDS via GTFPGA and UDP
- OPAL via Asynchronous Process and UDP
#### @subpage websocket
- WebSockets for live monitoring and user interaction
#### @subpage ngsi
- NGSI 9/10 a.k.a. FIRWARE context broker
#### @subpage labview
- NI LabView RT-targets

7
doc/nodes/LabView.md Normal file
View file

@ -0,0 +1,7 @@
# LabView {#labview}
We build an example LabView model which is using the UDP message format of the `socket` node-type to communicate with the S2SS server.
Have a look at the `clients/labview/` directory.
@todo Add screenshot

View file

@ -4,10 +4,10 @@ The communication between OPAL-RT models and the S2SS is established by using as
Asynchronous programs are are a feature of RT-LAB. They are used to exchange data between Simulink models and custom C programs.
There are two ways to exchange sample values with an OPAL-RT simulator:
1. Use our adapted version of OPAL-RT's AsyncIP example for asynchronous processes (see `clients/opal`)
1. Use our adapted version of OPAL-RT's AsyncIP example for asynchronous processes (see `clients/opal/` directory)
In this mode, OPAL will send sample data via UDP to S2SS. S2SS has to use the `socket` node-type.
2. Run S2SS as an asynchronous process itself. This is a highly experimental feature and implemented in the node-type `opal`.
It requires a 32-bit version of the `s2ss-server`. Data exchange is then handled using OPAL-RT's libAsyncApi.
It requires a 32-bit version of the `s2ss-server`. Data exchange is then handled using OPAL-RT's libOpalAsyncApi.
The following description applies only to the `opal` node-type: