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

2553 commits

Author SHA1 Message Date
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
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
Manuel Pitz
addef9a1e5 Hook pmu dft classes 2022-06-01 18:15:29 +02:00
69c70d17bc api: be more foregiving in regard to parsing payloads 2022-05-19 17:20:23 +02:00
dce51b2d52 fix parsing of signals in vector and object notation 2022-05-19 11:49:30 +02:00
Manuel Pitz
17c7ff7ede add power hook 2022-04-08 18:16:01 +02:00
Manuel Pitz
376ff12d08 fix auto merge error 2022-04-08 17:38:10 +02:00
Manuel Pitz
f9c2c1e343 cleanup 2022-04-08 17:38:10 +02:00
Manuel Pitz
0e6bf3f20d fix pmu_dft 2022-04-08 17:38:10 +02:00
Manuel Pitz
39c96feecb add lpdft as estimation algorithm and update estimation function 2022-04-08 17:38:10 +02:00
6ab0fbdf13 hook-pmu_dft: fix timetagging of phasor 2022-04-08 17:38:10 +02:00
849876a349 hook-rms: fix integration error. previously using the next value to
update accumulator
2022-04-08 17:02:29 +02:00
5feb82e7a3 openapi: add missing OpenAPI docs 2022-04-05 17:32:37 +02:00
d0da86ae3f example: add missing files for example 2022-04-01 18:06:28 +02:00
17b83cb4e1 example: port example node-type to C++ 2022-04-01 18:06:28 +02:00
79f930301f api: fix cppcheck warnings 2022-03-29 21:30:53 +02:00
56fa561493 api: implement first version of universal data-exchange API 2022-03-28 18:06:47 +02:00
f09f91a9e2 fix cppcheck warnings 2022-03-28 16:26:41 +02:00
7d6a6ea265 mqtt: add OpenAPI docs 2022-03-28 11:10:49 +02:00
c0bbcd910b api: provide node output signals 2022-03-28 11:10:49 +02:00
9b9f880d18 signal: fix json encoding 2022-03-28 11:10:49 +02:00
183867b17a api: move some files 2022-03-28 11:10:49 +02:00
fea12dbfc3 stats: fix initialization 2022-03-28 11:10:49 +02:00
Manuel Pitz
f63ec3a6c9 Doc update 2022-03-28 10:32:28 +02:00
Manuel Pitz
634d95362a Update pps_ts.cpp 2022-03-23 12:29:21 +00:00
Manuel Pitz
6a8081857f Update pps_ts.cpp 2022-03-23 12:29:21 +00:00
Manuel Pitz
4340ce39b5 Documentation update 2022-03-23 10:02:22 +01:00
Manuel Pitz
08c4d98d80 cleanup unused variables in pmu_dft and update documentation 2022-03-22 20:33:01 +01:00
Manuel Pitz
7fc87985a7 add capability to compensate for phase, amplitude, frequency and rocof offset 2022-03-22 18:42:10 +00:00
Manuel Pitz
426726ad79 fixes and update of pmu_dft hook 2022-03-22 18:42:10 +00:00
Manuel Pitz
71f2bc9b7f add round hook 2022-03-22 18:42:10 +00:00
Manuel Pitz
5a6c135083 add renumbering for decimate to allow detection of missed samples even if decimating 2022-03-22 18:15:28 +01:00
Manuel Pitz
76bfd3f6f4 hook: change sync to middle of second to avoid errors when system time is mostly synced 2022-03-22 17:56:13 +01:00
5cdce16d3f remove empty lines and file beginnings 2022-03-15 09:29:20 -04:00