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

36 commits

Author SHA1 Message Date
Steffen Vogel
aa16979fdd Apply clang-format changes
Signed-off-by: Steffen Vogel <steffen.vogel@opal-rt.com>
2023-09-07 13:00:16 +02:00
68654f95f2 Add periods after file headers and fix email addresses
Signed-off-by: Steffen Vogel <post@steffenvogel.de>
2023-09-07 11:16:04 +02:00
Steffen Vogel
0735eb0f89 Make project REUSE compliant
And various other cleanups and harmonizations

Signed-off-by: Steffen Vogel <steffen.vogel@opal-rt.com>
2023-09-07 11:16:04 +02:00
Steffen Vogel
7749a3a922 No not pass super-node UUID to Node::parse() any longer
Signed-off-by: Steffen Vogel <steffen.vogel@opal-rt.com>
2023-06-30 10:51:01 +02:00
Steffen Vogel
f409e05c35 Refactor naming of json_t variables
Signed-off-by: Steffen Vogel <steffen.vogel@opal-rt.com>
2023-06-29 08:15:49 +02:00
Philipp Jungkamp
b9c8ffce5b node-iec60870: ignore -Wmaybe-uninitialized false positive
Signed-off-by: Philipp Jungkamp <Philipp.Jungkamp@opal-rt.com>
2023-06-23 12:00:08 +02:00
Steffen Vogel
ea1f8c3d51 iec60870: fix compiler warning
Signed-off-by: Steffen Vogel <steffen.vogel@opal-rt.com>
2023-06-21 11:48:04 +02:00
Steffen Vogel
a709a8a0fb iec60870: fix coding style
Signed-off-by: Steffen Vogel <steffen.vogel@opal-rt.com>
2023-06-21 11:48:04 +02:00
Philipp Jungkamp
f1dfccd8ef fix release compile errors
Signed-off-by: Philipp Jungkamp <Philipp.Jungkamp@opal-rt.com>
2023-06-19 17:47:37 +02:00
Philipp Jungkamp
79f39ff0e8 fix warnings in release builds
Signed-off-by: Philipp Jungkamp <Philipp.Jungkamp@opal-rt.com>
2023-06-15 09:49:59 +02: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
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
e82a8dde36 Update License headers 2022-07-27 11:31:35 +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
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
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
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
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