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

6065 commits

Author SHA1 Message Date
9ef01d068e update year in copyright notices 2022-08-30 12:22:40 -04:00
c7180e729a fixes for villas-fpga-pipe 2022-08-30 12:22:36 -04:00
fb824a82f9 cleanup of comments 2022-08-30 12:21:46 -04:00
5c68a22ffe add new IP core for standard Xilinx Aurora cores 2022-08-30 12:21:46 -04:00
8a6832edc3 card: allow loading IPs devicetree from extra file 2022-08-30 12:21:46 -04:00
0597e975a0 update gitignore 2022-08-30 12:21:46 -04:00
a433ba5d44 add VSCode configuration for GDB debugging as root 2022-08-30 12:21:46 -04:00
f2a1c78f96 harmonize logger names 2022-08-30 12:21:45 -04:00
bcec3efd5f update code to latest common submodule 2022-08-30 12:21:45 -04:00
28262ef79b remove old configs 2022-08-30 12:21:45 -04:00
b202f11d05 update hardware submodule 2022-08-30 12:21:45 -04:00
7e3a58ce2e update gitignore 2022-08-30 16:36:01 +02:00
Philipp Jungkamp
8e09bbb3ad Use master lib60870 instead of fork
The main repository of lib60870 has merged the pkg-config file fork used
until now.

Use the main lib60870 instead of my fork for 'packaging/deps.sh'.
2022-08-13 16:58:32 +00:00
Philipp Jungkamp
6fdf8b037e node-60870-5-104: minor fixes
Fixes an issue where global interrogation would not respond when the
configured asdu_type includes a timestamp.

Fixes incorrect configuration asdu_type_id strings.

Fix an issue where multiple connections may be established in single
redundacy mode which causes the message queue to corrupt on shutdown.
2022-08-10 16:39:58 +00:00
fb7ba7c52b iec60870: fix vectorize 2022-07-27 15:56:32 +02:00
4d27c63157 harmonize example configs 2022-07-27 15:55:45 +02:00
56e8918196 Final code-style tweaks 2022-07-27 15:46:17 +02:00
Philipp Jungkamp
f54ad3c6fa Remove superfluous empty line 2022-07-27 12:34:29 +00:00
Philipp Jungkamp
2bdf1fae8e Fix OpenAPI docs 2022-07-27 12:13:22 +00:00
Philipp Jungkamp
e82a8dde36 Update License headers 2022-07-27 11:31:35 +00:00
Philipp Jungkamp
f9d23fcd9e add OpenAPI documentation for the IEC104 node 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
6c117b812f Fix switch-case statement code style 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
73b42d85ab IEC104: Expose apci config options 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
d3f31e47f0 move member initializers from header to contructor 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
44ef9226f1 remove unused member variable 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
fe68debbe0 Allow to interpret duplicate IOAs a sequence
If `duplicate_ioa_is_sequence` is enabled in the `out` section of the
node config, a duplicate ioa will be increased. This only works for
subsequently defined signals with the same IOA.
2022-07-27 11:14:55 +00:00
Philipp Jungkamp
9cbb96ddb5 treat missing ioa as increase of previous one 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
5be220a857 remove unnecessary braces on short if statements 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
2bea88043d fix code formatting
Remove "this->" and add spaces behind commata.
2022-07-27 11:14:55 +00:00
1b253ad43c add initial OpenAPI schema for IEC 60870 node 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
7e10188c2d Allow sending multiple ASDUs for a sample
ASDUs have a limited capacity, this creates multiple ASDUs if a single
one is not able to hold all sample values.
2022-07-27 11:14:55 +00:00
Philipp Jungkamp
d97beaf2d1 Wait for all messages to be send when stopping 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
58a9ed94f6 Change server mode to single redundancy
Single redundancy implies a single queue of messages which buffers
messages until a client connects. In contrast to the previous multiple
redundancy group mode, this mode can only accept one client at a time.
2022-07-27 11:14:55 +00:00
Philipp Jungkamp
90886dcc8f Cleanup config parsing and pointer style 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
11b84bc2b9 Fix out of bounds vector access 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
3e787eeb85 Minor cleanup
- Move lambde `fill_asdu` to dedicated function SlaveNode::fillASDU.
- Remove "-slave" suffix from node name so it does not mess up logging
  and help message.
- Expose queue sizes settings in config
2022-07-27 11:14:55 +00:00
Ubuntu
44203fa77c node-iec60870: Satisfy cppcheck
Rename `SlaveNode::out` to `SlaveNode::output`, because base class
`Node` and derived class `SlaveNode` both defined a member `out`.
2022-07-27 11:14:55 +00:00
Philipp Jungkamp
19be7d8f4f minor fixes 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
8164ce7693 Remove wrong NodeFactory::Flags::SUPPORTS_READ from the iec60870 slave node 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
c635f112e3 some style improvements 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
54037c89e5 use correct constant for matching the qualifier of interrogation
the cause of transmission and qualifier of interrogation share the numeric meanings,
e.g the QOI for "station" equals the COT for "interrogated by station".

Thus the previous code was not wrong, but still confusing to the reader.
2022-07-27 11:14:55 +00:00
Philipp Jungkamp
a019465109 move example to correct directory 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
e9a12362d7 integrate with example flege-deployment
Features:
- respond with last value when interrogated
- log connection events
- allow IEC60870-5 TypeIDs in the config file (as "asdu_type_id")

Fixes:
- wrong handling of MeasuredValueNormalized
2022-07-27 11:14:55 +00:00
Philipp Jungkamp
81ca448d8a add example config for iec60870-5-104-slave node 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
6dc75b8408 initial support for iec60870-5-104-slave node
This allows sending periodic signals using the new node.

The node does not yet support...

...proper logging of ASDUs.
...providing data on Global Interrogation.
...buffering setValue commands to read values which have been sent to slave.
...clockSync commands, what would the proper handling be?
2022-07-27 11:14:55 +00:00
Philipp Jungkamp
adb70138c8 start iec60870 node + sample to ASDU conversion 2022-07-27 11:14:55 +00:00
Philipp Jungkamp
ba6c810956 Add new lib60870 dependency to deps.sh and CMakeLists.txt 2022-07-27 11:14:48 +00:00
277424b274 cmake: add new WITHOUT_GPL flag in order to build VILLASnode without any GPL licensed dependencies 2022-07-14 15:05:24 +00:00
Manuel Pitz
6622cc8431 fix: correct time alignment for phasor rate calculation 2022-07-06 19:20:55 +02:00
b94746effb relicense VILLASnode to Apache 2.0 2022-07-04 18:23:57 +02:00