Skip to content

Commit

Permalink
README catchup
Browse files Browse the repository at this point in the history
  • Loading branch information
pascaldekloe committed Jul 16, 2024
1 parent 7500964 commit b07d23c
Showing 1 changed file with 19 additions and 25 deletions.
44 changes: 19 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,38 +17,32 @@ This is free and unencumbered software released into the

## Definitions

At its essence, part 5 formalizes reliable means to exchange data and commands.

The initiating stations are called *primary* and the responding stations are
*secondary*. With *unbalanced* transmission stations are either primary or
secodary [master/slave] and with *balanced* transmission stations can act both
as primary and as secondory [peer-to-peer].
At its essence, part 5 formalizes reliable means to exchange measurements and
commands. Commands are used by controlling stations to cause a change of state
in operational equipment. Controlled stations may then optionally either
[confirm](http://godoc.org/github.com/pascaldekloe/part5/info#Actcon) or
or [reject](http://godoc.org/github.com/pascaldekloe/part5/info#NegFlag) the
execution. Controlled stations can also optionally indicate completion with a
[terminate](http://godoc.org/github.com/pascaldekloe/part5/info#Actterm).

Addressing follows this initiate–respond context; an origin address remains that
of the primary and a destination address points to (something on) the secondary,
regardless of the message direction.
Controlling stations are called *primary* and the controlled stations are called
*secondary*. With *unbalanced* transmission one station is primary and the other
is secodary, a.k.a. master/slave, and with *balanced* transmission stations can
both act as primary and as secondory, a.k.a. peer to peer.

A *common address* can be seen as a data set wherein each data element has its
own predefined *information object address*. The set may be retreived with an
Every *information object address* resides in a *common address*. Primaries may
acquire the information present in a common address with an
[interrogation command](http://godoc.org/github.com/pascaldekloe/part5/info#C_IC_NA_1).
E.g., run `iecat -host station1.example.com -inro 42` to aquire a listing of
common address 42 on the terminal.

The standard provides commands that operate on data and they may trigger remote
procceses by agreement. Again, each command is applied to a single information
object address. Secondaries either
[confirm](http://godoc.org/github.com/pascaldekloe/part5/info#Actcon) or
[reject](http://godoc.org/github.com/pascaldekloe/part5/info#NegFlag) execution.
Optionaly the command may indicate completion with a *terminate*
[message](http://godoc.org/github.com/pascaldekloe/part5/info#Actterm).
Some commands can be preceded with a *select*
[directive](http://godoc.org/github.com/pascaldekloe/part5/info#Cmd.Exec)
which locks down processing to one at a time.

## To Do

## TODO
The following is not implement yet.

* file transfer
* parameters
* complete ASDU encoding types
* file transfer, type identifier F_*
* parameter of measured value, type identifeir P_*


## iecat
Expand Down

0 comments on commit b07d23c

Please sign in to comment.