Benutzer-Werkzeuge

Webseiten-Werkzeuge


lcn_en

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

lcn_en [30.08.2018 17:08] (aktuell)
Frank Lahnor angelegt
Zeile 1: Zeile 1:
 +===== LCN ======
 +
 +The LCN protocol driver allows communication with LCN modules. ​
 +
 +The name of the LCN protocol driver is: lcn\\
 +The routing address of the first LCN protocol driver is 720\\
 +The data point list file of the first LCN protocol driver is: lcn1.txt\\
 +The configuration file for global settings of the first LCN protocol driver is: lcn1.cfg\\
 +
 +With regards to LCN protocol structure the protocol driver supports many different types of data points. The addressing can vary from the modul version. The most common types are:
 +
 +^Data point ^format^
 +^Relais|relstat|
 +^Output binary|relstat|
 +^Output analogue|setpval,​ newer modules '​var'​|
 +^Binary sensor|instat|
 +^Measured value A/​B|tempval,​ newer modules '​var'​|
 +^Measured value T|cntval|
 +^Set value controller|outcbrg|
 +
 +Data points can be defined as follows:
 +
 +^Type                                          ^Description ​                                          ^
 +|failure ​                                      |The communication between LCN-Driver and PCHK status ​ |
 +|lcnfailure ​                                   |LCN-PCHK communication status ​                        |
 +|var <trg> <​seg>​.<​mod>​.<​varnr> ​                |The variables (1..12) ​                                |
 +|thrsregval <trg> <​seg>​.<​mod>​.<​threg>​.<​thrsnr>​ |The thresholds value                                  |
 +|thrsregedif <trg> <​seg>​.<​mod>​.<​threg>​.<​thrsnr>​|The threshold change command relative to EEPROM value |
 +|thrsregcdif <trg> <​seg>​.<​mod>​.<​threg>​.<​thrsnr>​|The threshold change command relative to current value|
 +|thrsregctrl <trg> <​seg>​.<​mod>​.<​threg> ​        |The threshold register lock/unlock command ​           |
 +|outcbrg <trg> <​seg>​.<​mod>​.<​out> ​              |The output current brightness value                   |
 +|outcdim <trg> <​seg>​.<​mod>​.<​out> ​              |The output current dimming value                      |
 +|outtdim <trg> <​seg>​.<​mod>​.<​out> ​              |The output on/off tap-action switch dimming value     |
 +|outmdim <trg> <​seg>​.<​mod>​.<​out> ​              |The output memory tap-action switch dimming value     |
 +|outedim <trg> <​seg>​.<​mod>​.<​out> ​              |The output dimming stop command ​                      |
 +|outfcnt <trg> <​seg>​.<​mod>​.<​out> ​              |The output flash pulses value                         |
 +|outfmod <trg> <​seg>​.<​mod>​.<​out> ​              |The output flash mode value                           |
 +|outfspd <trg> <​seg>​.<​mod>​.<​out> ​              |The output flash speed value                          |
 +|outlbrg <trg> <​seg>​.<​mod>​.<​lim> ​              |The output lock max brightness value                  |
 +|outltime <trg> <​seg>​.<​mod>​.<​lim> ​             |The output lock time interval value                   |
 +|outsdim <trg> <​seg>​.<​mod>​.<​out> ​              |The output stairway light dimming value               |
 +|outstime <trg> <​seg>​.<​mod>​.<​out> ​             |The output stairway light time interval value         |
 +|shtctrl <trg> <​seg>​.<​mod> ​                    |The shutter control ​                                  |
 +|scnbrg <trg> <​seg>​.<​mod>​.<​out>​.<​set>​.<​reg> ​   |The scene brightness value                            |
 +|scndim <trg> <​seg>​.<​mod>​.<​out>​.<​set>​.<​reg> ​   |The scene dimming value                               |
 +|scnrset <trg> <​seg>​.<​mod> ​                    |The scene change register set command ​                |
 +|scnload <trg> <​seg>​.<​mod>​.<​scn> ​              |The scene load command ​                               |
 +|scnsave <trg> <​seg>​.<​mod>​.<​scn> ​              |The scene save command ​                               |
 +|relstat <trg> <​seg>​.<​mod>​.<​rel> ​              |The relay status ​                                     |
 +|motctrl <trg> <​seg>​.<​mod>​.<​mot> ​              |The motor control command ​                            |
 +|motpos <trg> <​seg>​.<​mod>​.<​mot> ​               |The motor position absolute value                     |
 +|motlim <trg> <​seg>​.<​mod>​.<​mot> ​               |The motor position limit value                        |
 +|keyprs <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​         |The key press short command ​                          |
 +|keyhold <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​        |The key press long command ​                           |
 +|keyrel <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​         |The key release command ​                              |
 +|keydel <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​         |The key press delayed command ​                        |
 +|keyplck <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​        |The key permanent lock command ​                       |
 +|keytlck <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​        |The key time limited lock command ​                    |
 +|lampctrl <trg> <​seg>​.<​mod>​.<​lamp> ​            |The lamp control command ​                             |
 +|lamptest <trg> <​seg>​.<​mod> ​                   |The lamp test command ​                                |
 +|tempval <trg> <​seg>​.<​mod>​.<​temp> ​             |The sensor temperature value                          |
 +|setpval <trg> <​seg>​.<​mod>​.<​setp> ​             |The setpoint value                                    |
 +|cntval <trg> <​seg>​.<​mod> ​                     |The counter value                                     |
 +|cntdif <trg> <​seg>​.<​mod> ​                     |The counter change command ​                           |
 +|regsetp <trg> <​seg>​.<​mod>​.<​reg> ​              |The regulator setpoint value                          |
 +|regprop <trg> <​seg>​.<​mod>​.<​reg> ​              |The regulator proportional band value                 |
 +|regctrl <trg> <​seg>​.<​mod>​.<​reg> ​              |The regulator lock/unlock command ​                    |
 +|whlctrl <trg> <​seg>​.<​mod> ​                    |The wheel lock/unlock command ​                        |
 +|thrsval <trg> <​seg>​.<​mod>​.<​thrs> ​             |The threshold current value                           |
 +|thrsedif <trg> <​seg>​.<​mod>​.<​thrs> ​            |The threshold change command relative to EEPROM value |
 +|thrscdif <trg> <​seg>​.<​mod>​.<​thrs> ​            |The threshold change command relative to current value|
 +|beepnorm <trg> <​seg>​.<​mod> ​                   |The beeper normal sound command ​                      |
 +|beepspec <trg> <​seg>​.<​mod> ​                   |The beeper special sound command ​                     |
 +|instat <trg> <​seg>​.<​mod>​.<​in> ​                |The digital input status ​                             |
 +|buzstat <trg> <​seg>​.<​mod>​.<​buzz> ​             |The buzzer status ​                                    |
 +
 +where:
 +
 +^Parameter^Range ​                                                                               ^Description ​                                             ^
 +|<​trg> ​   |*m = Module, g = Group                                             |The addressing type (meaning of <mod> field) ​            |
 +|<​seg> ​   |0..127 ​                                                                               |The device'​s segment number ​                             |
 +|<​mod> ​   |0..255 ​                                                                               |The device'​s module or group number (see <trg> field) ​   |
 +|<​out> ​   |1..3                                                                                  |The device'​s output number ​                              |
 +|<​lim> ​   |0 = None\\1 = First output\\2 = Second output\\3 = Outputs 1 and 2|The device'​s output number (special for brightness limit)|
 +|<​scn> ​   |1 = First output\\2 = Second output\\3 = Outputs 1 and 2               |The device'​s output number (special for scenes) ​         |
 +|<​set> ​   |0..9                                                                                  |The register set number ​                                 |
 +|<​reg> ​   |0..9                                                                                  |The register number ​                                     |
 +|<​rel> ​   |1..8                                                                                  |The relay number ​                                        |
 +|<​mot> ​   |1 or 2                                                                               |The motor number ​                                        |
 +|<​tab> ​   |1 = A\\2 = B\\3 = C\\4 = D                                        |The key table number ​                                    |
 +|<​key> ​   |1..8                                                                                  |The key identifier ​                                      |
 +|<​lamp> ​  ​|1..12 ​                                                                                |The lamp number ​                                         |
 +|<​temp> ​  |1 = A\\2 = B                                                                |The temperature sensor number ​                           |
 +|<​setp> ​  |1 = A\\2 = B\\3 = deviation ​                                           |The setpoint number ​                                     |
 +|<​reg> ​   |1 = A\\2 = B                                                                |The regulator number ​                                    |
 +|<​thrs> ​  ​|1..5 ​                                                                                 |The threshold number ​                                    |
 +|<​in> ​    ​|1..8 ​                                                                                 |The digital input number ​                                |
 +|<​buzz> ​  ​|1..4 ​                                                                                 |The buzzer number ​                                       |
 +|<​varnr> ​ |1..12 ​                                                                                |The variable number ​                                     |
 +|<​threg> ​ |1..4                                                                                  |The threshold register number ​                           |
 +|<​thrsnr>​ |1..4                                                                                  |The threshold number ​                                    |
 +
 +Format
 +
 +[T:<​trg>​] [D:<​def>​] [P:<​pol>​] [I:<​dly>​] [O:<​ofs>​] [F:<​fact>​] [M:<​ver>​]
 +
 +where:
 +
 +^Field ​  ​^Range ​                                                                                                                                                                                                                                              ​^Description ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                 ^
 +|T:<​trg>​ |0 = Don't trigger bus command\\1 = Trigger bus command (default) ​                                                                                                                                                                          |This flag is used in case of bus commands that contain more than one value. If the this flag is set to '​1'​ the corresponding bus command is triggered on each DPmngr write. In the case the flag value is '​0'​ the value written by DPmngr is saved in the internal data point list and no bus command is sent to the bus. In this way it is possible to configure a data point that will trigger the bus command after all the values that compose the bus command are valid.|
 +|D:<​def>​ |0..255 ​                                                                                                                                                                                                                                              |This flag is used in case of bus commands that contain more than one value. It specifies a default value for the nominal part of the data point value. It is useful in case the part of the bus command value that this data point represents is constant all the time.                                                                                                                                                                                                      |
 +|P:<​pol>​ |0..255 ​                                                                                                                                                                                                                                              |This flag is used in case of bus commands that need to be sent periodically. The <pol> value specifies the time interval in seconds. ​                                                                                                                                                                                                                                                                                                                                        |
 +|I:<​dly>​ |0..255 ​                                                                                                                                                                                                                                              |This flag is used in case of bus commands that need to be sent periodically. The <dly> value specifies the time interval in seconds that should elapse before sending the first polling command.\\ NOTE: For backward compatibility the delay value will be set to polling period ('​P'​ option) if not specified. ​                                                                                                                                                            |
 +|O:<​ofs>​ |32-bit floating point                                                                                                                                                                                                                               |This flag is used in case of bus commands that require value conversion. It is used in combination with F:<​fact>​ flag. When the value is sent to the LCN bus the following conversion is applied: result = value * factor + offset. When the value is received from the LCN bus the inverse conversion is performed: result = (value - offset) / factor ​                                                                                                                     |
 +|F:<​fact>​|32-bit floating point                                                                                                                                                                                                                               |This flag is used in case of bus commands that require value conversion. See O:<​ofs>​ above. ​                                                                                                                                                                                                                                                                                                                                                                                 |
 +|M:<​ver>​ |0 = The version of the modules > 170206/​Feb.2013 "new modules"​
 +(default)\\1 = The version of the modules < 170206/​Feb.2013 "old modules"​\\ \\ For the following data points, this flag must be set to 1.\\ * tempval\\ * cntval| ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
 +
 +Groups
 +
 +The following groups of data points have their values encoded in the same bus command. Special care must be taken when configuring these data points to ensure the proper trigger of the bus command. For this the '​T'​ and '​D'​ format flags should be used.
 +
 +^Address ​                                                                                                 ^Command ​              ​^Description ​                                                                                                                                                                                                                                                                                                                                                                                                        ^
 +|outcbrg <trg> <​seg>​.<​mod>​.<​out>​\\ \\ outcdim <trg> <​seg>​.<​mod>​.<​out> ​                                    ​|A1DIhhrr\\ \\ A2DIhhrr|This command turns the output on/off with dimming. The '​outcbrg'​ data point value is the brightness ('​hh'​ field) and the '​outcdim'​ data point value is the dimming ('​rr'​ field) ​                                                                                                                                                                                                                                    |
 +|outfmod <trg> <​seg>​.<​mod>​.<​out>​\\ \\ outfspd <trg> <​seg>​.<​mod>​.<​out>​\\ \\ outfcnt <trg> <​seg>​.<​mod>​.<​out>​|A1FLtgnn\\ \\ A2FLtgnn|This command turns the output flashing. The '​outfmod'​ data point value is the flash mode ('​t'​ field), '​outfspd'​ data point value is the flash speed ('​g'​ field) and the '​outfcnt'​ data point value is the number of flashes ('​nn'​ field) ​                                                                                                                                                                           |
 +|outlbrg <trg> <​seg>​.<​mod>​.<​lim>​\\ \\ outltime <trg> <​seg>​.<​mod>​.<​lim> ​                                   |ABalllzzze ​           |This command sets a limit for the brightness. The '​outlbrg'​ data point value is the brightness ('​lll'​ field) and '​outltime'​ data point value is the time ('​zzz'​ field). ​                                                                                                                                                                                                                                            |
 +|outsdim <trg> <​seg>​.<​mod>​.<​out>​\\ \\ outstime <trg> <​seg>​.<​mod>​.<​out> ​                                   |A1TEzzka\\ \\ A2TEzzka|This command sets the output in the '​stairway light' mode. The '​outsdim'​ data point value is the dimming ('​k'​ field) and '​outstime'​ data point value is the time ('​zz'​ field). ​                                                                                                                                                                                                                                     |
 +|scnbrg <trg> <​seg>​.<​mod>​.<​set>​.<​reg>​.<​out>​\\ \\ scndim <trg> <​seg>​.<​mod>​.<​set>​.<​reg>​.<​out> ​              ​|SZDssnn11rr22rr ​      |This command sets a scene register value. The '​scnbrg'​ data point value is the brightness ('​11'​ or '​22'​ field depending on the <out> address filed value) and '​scndim'​ data point value is the dimming ('​rr'​ fields depending on the <out> address filed value).\\ NOTE: For the described bus command 4 data points are actually needed: '​scnbrg'​ and '​scndim'​ for output 1 and '​scnbrg'​ and '​scndim'​ for output 2.|
 +
 +==== Value ====
 +
 +^Address ​                                    ​^Range ​                                                                     ^Description ​                                                          ^
 +|M failure ​                                  |0 = OK\\1 = Error                                                 ​|Reads the communication status ​                                       |
 +|S outcbrg <trg> <​seg>​.<​mod>​.<​out> ​          ​|0..100 ​                                                                     |Writes the current output brightness value                            |
 +|S outcdim <trg> <​seg>​.<​mod>​.<​out> ​          ​|0..250\\0 = No dimming\\250 = Maximum dimming ​                 |Writes the current output dimming value                               |
 +|S outtdim <trg> <​seg>​.<​mod>​.<​out> ​          ​|0..250\\0 = No dimming\\250 = Maximum dimming ​                 |Writes the on/off tap-action switch dimming value                     |
 +|S outmdim <trg> <​seg>​.<​mod>​.<​out> ​          ​|0..250\\ \\ * **0** No dimming\\ * **250** Maximum dimming ​                 |Writes the memory tap-action switch dimming value                     |
 +|S outedim <trg> <​seg>​.<​mod>​.<​out> ​          |* **0** Does nothing\\ * **1** Stops dimming ​                              ​|Stops the dimming ​                                                    |
 +|S outfcnt <trg> <​seg>​.<​mod>​.<​out> ​          ​|1..15 ​                                                                      ​|Writes the number of flash pulses ​                                    |
 +|S outfmod <trg> <​seg>​.<​mod>​.<​out> ​          |* **0** Light\\ * **1** Medium\\ * **2** Strong\\ * **3** Stop             ​|Writes the flash mode                                                 |
 +|S outfspd <trg> <​seg>​.<​mod>​.<​out> ​          |* **0** Slow\\ * **1** Medium\\ * **2** Fast                               ​|Writes the flash speed                                                |
 +|S outlbrg <trg> <​seg>​.<​mod>​.<​lim> ​          ​|0..100 ​                                                                     |Writes the brightness lock max value (percents) ​                      |
 +|S outltime <trg> <​seg>​.<​mod>​.<​lim> ​         |1..3888000 ​                                                                 |Writes the brightness lock time interval (seconds) ​                   |
 +|S outsdim <trg> <​seg>​.<​mod>​.<​out> ​          |* **0** Short\\ * **1** medium\\ * **2** long                              |Writes the stairway light dimming ​                                    |
 +|S outstime <trg> <​seg>​.<​mod>​.<​out> ​         |1..240\\ \\ 360..1440 ​                                                       |Writes the brightness lock time interval (seconds) ​                   |
 +|S shtctrl <trg> <​seg>​.<​mod>​.<​out> ​          |* **0** None\\ * **1** Start                                               ​|Starts the shutter ​                                                   |
 +|S scnbrg <trg> <​seg>​.<​mod>​.<​out>​.<​set>​.<​reg>​|0..100 ​                                                                     |Writes the scene brightness value (percents) ​                         |
 +|S scndim <trg> <​seg>​.<​mod>​.<​out>​.<​set>​.<​reg>​|0..250 ​                                                                     |Writes the scene dimming value                                        |
 +|S scnrset <trg> <​seg>​.<​mod> ​                ​|0..9 ​                                                                       |Selects the current register set                                      |
 +|S scnload <trg> <​seg>​.<​mod>​.<​out> ​          ​|0..9 ​                                                                       |Loads the current settings from a register of the current register set|
 +|S scnsave <trg> <​seg>​.<​mod>​.<​out> ​          ​|0..9 ​                                                                       |Saves the current settings into a register of the current register set|
 +|S relstat <trg> <​seg>​.<​mod>​.<​rel> ​          |* **0** Off\\ * **1** On                                                   ​|Reads/​writes the current relay status ​                                |
 +|S motctrl <trg> <​seg>​.<​mod>​.<​mot> ​          |* **0** Close\\ * **1** Open\\ * **2** Toggle\\ * **3** Stop\\ * **4** Auto|Writes a motor command ​                                               |
 +|S motpos <trg> <​seg>​.<​mod>​.<​mot> ​           |0..100 ​                                                                     |Moves the motor to a position ​                                        |
 +|S motlim <trg> <​seg>​.<​mod>​.<​mot> ​           |0..100 ​                                                                     |Writes the motor open limit                                           |
 +|S keyprs <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​     |* **0** None\\ * **1** Press                                               ​|Generates a short key press                                           |
 +|S keyhold <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​    |* **0** None\\ * **1** Press                                               ​|Generates a long key press                                            |
 +|S keyrel <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​     |* **0** None\\ * **1** Release ​                                            ​|Generates a key release ​                                              |
 +|S keydel <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​     |1..3888000 ​                                                                 |Generates a short key press after a delay (seconds) ​                  |
 +|S keyplck <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​    |* **0** Unlock\\ * **1** Lock                                              |Locks/​Unlocks a key permanently ​                                      |
 +|S keytlck <trg> <​seg>​.<​mod>​.<​tab>​.<​key> ​    ​|1..3888000 ​                                                                 |Locks a key temporarily (seconds) ​                                    |
 +|S lampctrl <trg> <​seg>​.<​mod>​.<​lamp> ​        |* **0** Off\\ * **1** On\\ * **2** Blink\\ * **3** Flash                   ​|Writes a lamp command ​                                                |
 +|S lamptest <trg> <​seg>​.<​mod> ​               |* **0** All off\\ * **1** All on\\ * **2** Test end                        |Writes a lamp test                                                    |
 +|M tempval <trg> <​seg>​.<​mod>​.<​temp> ​         |0..65535 ​                                                                   |Reads the temperature sensor value                                    |
 +|M setpval <trg> <​seg>​.<​mod>​.<​setp> ​         |0..65535 ​                                                                   |Reads the setpoint value                                              |
 +|M cntval <trg> <​seg>​.<​mod> ​                 |0..65535 ​                                                                   |Reads the counter value                                               |
 +|S cntdif <trg> <​seg>​.<​mod> ​                 |-30000 to 30000                                                            |Changes the counter value                                             |
 +|S regsetp <trg> <​seg>​.<​mod>​.<​reg> ​          ​|-2000 to 2000                                                              |Changes the regulator setpoint value (relative to current) ​           |
 +|S regprop <trg> <​seg>​.<​mod>​.<​reg> ​          ​|-2000 to 2000                                                              |Writes the regulator proportional band value                          |
 +|S regctrl <trg> <​seg>​.<​mod>​.<​reg> ​          |* **0** Unlock\\ * **1** Lock                                              |Locks/​unlocks the regulator ​                                          |
 +|S whlctrl <trg> <​seg>​.<​mod> ​                |* **0** Unlock\\ * **1** Lock                                              |Locks/​unlocks the input wheel                                         |
 +|M thrsval <trg> <​seg>​.<​mod>​.<​thrs> ​         |0..65535 ​                                                                   |Reads a threshold value                                               |
 +|S thrsedif <trg> <​seg>​.<​mod>​.<​thrs> ​        ​|-10000 to 10000                                                            |Changes the threshold value relative to EEPROM value                  |
 +|S thrscdif <trg> <​seg>​.<​mod>​.<​thrs> ​        ​|-10000 to 10000                                                            |Changes the threshold value relative to current value                 |
 +|S beepnorm <trg> <​seg>​.<​mod> ​               |1..15 ​                                                                      ​|Writes the number of normal beeps                                     |
 +|S beepspec <trg> <​seg>​.<​mod> ​               |1..15 ​                                                                      ​|Writes the number of special beeps                                    |
 +|M instat <trg> <​seg>​.<​mod>​.<​in> ​            |* **0** Off\\ * **** On                                                    |Reads a digital input status ​                                         |
 +|M buzstat <trg> <​seg>​.<​mod>​.<​buzz> ​         |* **0** Off\\ * **1** On                                                   ​|Reads a buzzer status ​                                                |
 +
 +==== Examples ====
 +
 +^Datapoint ​                                                                                                                        ​^Description ​                                                                                                                                                                                                                                                                               ^
 +|''​%%[M failure]%%'' ​                                                                                                              ​|Reads the communication status ​                                                                                                                                                                                                                                                            |
 +|''​%%[S outcbrg M 0.2.1]%%''​\\ \\ ''​%%format = T:0 D:​100%%''​\\ \\ \\\\ \\ ''​%%[S outcdim M 0.2.1]%%''​\\ \\ ''​%%format = T:1 D:​0%%''​|Turns on/off the output 1 of the module 2 in current segment. The command is triggered by writing the '​outcdim'​ data point (T:1 format option). In case there was no prior write to '​outcbrg'​ data point to specify a brightness value the default value 100 is taken (D:100 format option)|
 +
 +
  
lcn_en.txt · Zuletzt geändert: 30.08.2018 17:08 von Frank Lahnor