Volume pwrb | |
Attributes: Runtime | Development | System | Template | Detail C Binding: Struct | Class | Code  ClassTree | INDEX NO INDEX |
Class Mode | ||
---|---|---|
Version | 2.0 | |
Modified | 26-MAY-2023 14:29:27.00 | |
Kod | rt_plc_pid.c |
Hanterar val av reglermod (MANUAL / AUTO / CASCADE) och s.k. tvångsstyrning åt Pid-objekt.
Följande reglermoder finns: MANUAL -- då operatören själv sätter Pid-objektets styrsignal. AUTO -- då operatören väljer börsvärde och Pid-objektet beräknar styrsignal. CASCADE -- utsignalen från ett objekt, t.ex. Pid-objekt, används som börvärde av det med Mode-objektet associerade Pid-objektet. Tvångsstyrning innebär att Pid objektets OutVal baseras på Mode objektets attribut XForceVal , inte på PID-algoritmen. Pid-objektet har två utgångar som båda kan användas som styrsignal. Vilken som används i det enskilda fallet beror på hur regleringen är ordnad: OUT (attributet OutVal ) innehåller ett värde som kan komma från evalueringen av PID-algoritmens 'positional form', från operatören i läge MANUAL eller vara ett s.k. tvångsstyrningsvärde. Kunskapen om var ställdonet ska stå ligger i detta fall på regulatorsidan eftersom hela värdet används. OC (attributet OutChange ) anger hur ställdonet ska ändras mellan två successiva programcykler. I detta fall talar man om PID-algoritmens 'velocity' eller 'incremental form'.Objektsbild
RtBody attributes pwr_sClass_mode | |||
---|---|---|---|
Float32 | XSetVal | XSV | Externt börvärde (= Set point Val ue). Attributet används enbart i läge CASCADE och då på så sätt att SetVal = XSetVal . |
Float32 | ProcVal | PV | ärvärde (= Proc ess Val ue). Attributet används i Mode objektets objektbild vid visning av ärvärdet. |
Float32 | XForcVal | XFO | Externt tvångsstyrningsvärde (= Forc ed Val ue). Attributet används enbart vid tvångsstyrning (dvs. Force1 eller Force2 är TRUE) och då på så sätt att ForceVal = XForceVal . |
Boolean | Forc1 | fo1 | Anger om ovillkorlig tvångsstyrning valts eller ej. |
Boolean | Forc2 | fo2 | Anger, i läge AUTO och CASCADE, om tvångsstyrning valts eller ej. |
Float32 | OutVal | OUT | Då reglerkretsen sätts i läge MANUAL skulle processen få en större eller mindre stöt ('bump') om värdet på ForcVal inledningsvis avvek från det aktuella ärvärdet, ProcVal . För att undvika detta gäller följande: Vid omkoppling till läge MANUAL initieras internt FOV-utgången med värdet av OutVal . Alltså återstår att se till att värdet på OutVal ger 'bumpless transfer'. Detta brukar lösas med en analog återkoppling från Pid-objektets OUT -utgång. |
Float32 | SetVal | SV | Anger, i läge AUTO och CASCADE, aktuellt börvärde. Attributet kan i läge - MANUAL och AUTO, ändras från Mode objektets objektbild - CASCADE, internt tilldelas värdet av XSetVal . Ofta ansluts utgången till motsvarande ingång på efterföljande Pid-objekt. |
Float32 | ForcVal | FOV | Normalt ansluts utgången till motsvarande ingång på efterföljande Pid-objekt. Värdet på Pid-objektets utgångar OUT och OC kommer att baseras på ForcVal i följande fall: ovillkorlig tvångsstyrning, dvs Forc1 är TRUE och ForceVal = XForceVal villkorlig (= reglermod är AUTO eller CASCADE) tvångsstyrning då Force2 = TRUE och ForceVal = XForceVal OpMod = MANUAL. ForcVal sätts av operatören, t.ex från Mode-objektets objektbild. |
Boolean | Force | for | Normalt ansluts utgången till motsvarande ingång på efterföljande Pid - objekt. Attributet anger för Pid-objektet om värdena till utgångarna OUT och OC ska hämtas från algoritmen eller ej. FALSE betyder att AUTO eller CASCADE gäller, dvs. värdena baseras på algoritmen. TRUE innebär att tvångskörning eller MANUAL gäller och att värdena istället ska bygga på FOV-utgångens värde. |
Boolean | AutMode | aut | Anger om reglermod AUTO valts eller ej. FALSE betyder att annan mode gäller; TRUE innebär att AUTO valts. Eftersom ett efterföljande Pid-objekt inte behöver skilja mellan AUTO och CASCADE används attributet ofta för ren indikering. |
Boolean | CascMod | cas | Indicates if the control mode CASCADE is selected or not. FALSE means that CASCADE is not the control mode; TRUE means that CASCADE is the control mode. A subsequent Pid object does not have to make any distinction between AUTO or CASCADE, so this attribute is often used only as information. |
Boolean | ManMode | man | Indicates if the control mode MANUAL is selected or not. FALSE means that MANUAL is not the control mode; TRUE means that MANUAL is the control mode. This attribute is used only as information. |
PidOpModeEnum | OpMod | OpMod | Anger vald reglermod. Attributet kan ändras från Mode-objektets objektbild. = 1 MANUAL. Operatören väljer regulatorns styrsignal. Regulatorns styrsignal tvångsstyrs till angivet värde i ForceVal. MinOut och MaxOut definierar styrsignalens tillåtna intervall. = 2 AUTO. Operatören väljer börvärde, Regulatorns börvärde = SetVal och styrsignalen räknar regulatorn fram. MinSet och MaxSet definierar böbrvärdets tillåtna intervall. = 4 CASCADE. Som i AUTO men regulatorns börvärde = XSetVal. Illustrates the Connection between Forced Control and Control Modes |
PidModeEnum | AccMod | AccMod | Anger operatörens behörighet att ändra värde på OpMod . Följande behörigheter är möjliga: 1 -- Bara MANUAL 5 -- CASCADE / MANUAL 2 -- Bara AUTO 6 -- CASCADE / AUTO 3 -- MANUAL / AUTO 7 -- MANUAL / AUTO / CASCADE 4 -- Bara CASCADE |
Int32 | AccOut | AccOut | Ej implementerad funktion. Anger operatörens behörighet att ändra ForcVal . Följande behörigheter är möjliga: 0 -- Ingen ändring tillåten ? 0 -- ändring tillåten. |
Float32 | MinOut | MinOut | The choice of the operator of ForcVal is checked against the interval { MinOut, MaxOut}. ForcVal may be changed in the control mode MANUAL from the display of the Mode object. |
Float32 | MaxOut | MaxOut | Största tillåtna värde vid operatörsändring av ForcVal . I läge MANUAL kan ForcVal ändras från Mode-objektets objektbild. |
Int32 | AccSet | AccSet | Ej implementerad funktion. Anger operatörens behörighet att ändra SetVal . Följande behörigheter är möjliga: 0 -- Ingen ändring tillåten ? 0 -- ändring tillåten. |
Float32 | MinSet | MinSet | The choice of the operator of SetVal is checked against the interval { MinSet, MaxSet}. The value may be changed in the control modes MANUAL and AUTO from the display of the Mode object. |
Float32 | MaxSet | MaxSet | Största tillåtna värde vid operatörsändring av SetVal . I läge MANUAL och AUTO kan SetcVal ändras från Mode-objektets objektbild. |
Float32 | SetMinShow | SetMinShow | Undre gräns vid presentation av är-och börvärde i Mode-objektets objektbild. Gränserna kan ändras från objektbilden. |
Float32 | SetMaxShow | SetMaxShow | Övre gräns vid presentation av är-och börvärde i Mode-objektets objektbild. Gränserna kan ändras från objektbilden. |
String16 | SetEngUnit | SetEngUnit | Anger ingenjörsenheten för XSetVal / SetVal / SetMinShow / SetMaxShow, t.ex kg. Används i Mode-objektets objektbild. |
FloatPrecisionEnum | SetPrecision | SetPrecision | Specifies the number of characters displayed after the decimal point for set value and process value in the object graph. |
Float32 | OutMinShow | OutMinShow | Undre gräns vid presentation av Pid-objektets OutVal i Mode - objektets objektbild. Gränserna kan ändras från Mode-objektets MERbild. |
Float32 | OutMaxShow | OutMaxShow | Övre gräns vid presentation av Pid-objektets OutVal i Mode - objektets objektbild. Gränserna kan ändras från Mode-objektets MERbild. |
String16 | OutEngUnit | OutEngUnit | Anger ingenjörsenheten för XForcVal / OutVal /ForcVal / OutMinShow / OutMaxShow, t.ex %. Används i Mode-objektets objektbild. |
FloatPrecisionEnum | OutPrecision | OutPrecision | Specifies the number of characters displayed after the decimal point for output value in the object graph. |
Float32 | Error | Error | The difference between process value and set value. |
Float32 | ErrorMinShow | ErrorMinShow | The lower respectively upper limits in the graphical display of the error in the object graph. |
Float32 | ErrorMaxShow | ErrorMaxShow | |
Boolean | AdjustableRanges | Specifies that the ranges for set value, process value and output in the object graph can be adjusted. |
|
Objid | PidObjDId | PidObjDId | Anger fullständigt namn på det med Mode-objektet associerade Pid-objektet. Attributet gör det möjligt att via knapp i Mode-objektets objektbild starta objektbilden för det associerade Pid-objektet. |
DevBody attributes | |||
---|---|---|---|
PlcNode | PlcNode |
GraphPlcNode | |
---|---|
object_type | 151 |
parameters[0] | 6 |
parameters[1] | 0 |
parameters[2] | 5 |
parameters[3] | 0 |
subwindows | 0 |
graphmethod | 0 (standard, individual attributes) |
graphindex | 0 |
default_mask[0] | 35 |
default_mask[1] | 7 |
segname_annotation | 1 |
compmethod | 4 |
compindex | 0 |
executeordermethod | 2 |
objname | Mode |
graphname | Mode |
debugpar |
Template Object | |
---|---|
OpMod | 1 |
AccMod | 3 |
AccOut | 15 |
AccSet | 15 |
MaxOut | 100.0 |
MaxSet | 100.0 |
OutMaxShow | 100.0 |
SetMaxShow | 100.0 |
OutEngUnit | % |
SetEngUnit | % |
SetPrecision | 1 |
OutPrecision | 1 |
ErrorMinShow | -10.0 |
ErrorMaxShow | 10.0 |
XSetVal Input | ||
---|---|---|
Klass | Input | |
Typ | Float32 | |
Flags | STATE | NOEDIT | REDUTRANSFER | |
GraphName | XSV | |
Kropp | RtBody |
Externt börvärde (= Set point Val ue). Attributet används enbart i läge CASCADE och då på så sätt att SetVal = XSetVal .
ProcVal Input | ||
---|---|---|
Klass | Input | |
Typ | Float32 | |
Flags | STATE | NOEDIT | REDUTRANSFER | |
GraphName | PV | |
Kropp | RtBody |
ärvärde (= Proc ess Val ue). Attributet används i Mode objektets objektbild vid visning av ärvärdet.
XForcVal Input | ||
---|---|---|
Klass | Input | |
Typ | Float32 | |
Flags | REDUTRANSFER | |
GraphName | XFO | |
Kropp | RtBody |
Externt tvångsstyrningsvärde (= Forc ed Val ue). Attributet används enbart vid tvångsstyrning (dvs. Force1 eller Force2 är TRUE) och då på så sätt att ForceVal = XForceVal .
Forc1 Input | ||
---|---|---|
Klass | Input | |
Typ | Boolean | |
Flags | STATE | NOEDIT | NOINVERT | REDUTRANSFER | |
GraphName | fo1 | |
Kropp | RtBody |
Anger om ovillkorlig tvångsstyrning valts eller ej.
Forc2 Input | ||
---|---|---|
Klass | Input | |
Typ | Boolean | |
Flags | STATE | NOEDIT | NOINVERT | REDUTRANSFER | |
GraphName | fo2 | |
Kropp | RtBody |
Anger, i läge AUTO och CASCADE, om tvångsstyrning valts eller ej.
OutVal Input | ||
---|---|---|
Klass | Input | |
Typ | Float32 | |
Flags | STATE | NOEDIT | REDUTRANSFER | |
GraphName | OUT | |
Kropp | RtBody |
Då reglerkretsen sätts i läge MANUAL skulle processen få en större eller mindre stöt ('bump') om värdet på ForcVal inledningsvis avvek från det aktuella ärvärdet, ProcVal . För att undvika detta gäller följande: Vid omkoppling till läge MANUAL initieras internt FOV-utgången med värdet av OutVal . Alltså återstår att se till att värdet på OutVal ger 'bumpless transfer'. Detta brukar lösas med en analog återkoppling från Pid-objektets OUT -utgång.
SetVal Output | ||
---|---|---|
Klass | Output | |
Typ | Float32 | |
Flags | REDUTRANSFER | |
GraphName | SV | |
Kropp | RtBody |
Anger, i läge AUTO och CASCADE, aktuellt börvärde. Attributet kan i läge - MANUAL och AUTO, ändras från Mode objektets objektbild - CASCADE, internt tilldelas värdet av XSetVal . Ofta ansluts utgången till motsvarande ingång på efterföljande Pid-objekt.
ForcVal Output | ||
---|---|---|
Klass | Output | |
Typ | Float32 | |
Flags | STATE | NOEDIT | REDUTRANSFER | |
GraphName | FOV | |
Kropp | RtBody |
Normalt ansluts utgången till motsvarande ingång på efterföljande Pid-objekt. Värdet på Pid-objektets utgångar OUT och OC kommer att baseras på ForcVal i följande fall: ovillkorlig tvångsstyrning, dvs Forc1 är TRUE och ForceVal = XForceVal villkorlig (= reglermod är AUTO eller CASCADE) tvångsstyrning då Force2 = TRUE och ForceVal = XForceVal OpMod = MANUAL. ForcVal sätts av operatören, t.ex från Mode-objektets objektbild.
Force Output | ||
---|---|---|
Klass | Output | |
Typ | Boolean | |
Flags | STATE | NOEDIT | REDUTRANSFER | |
GraphName | for | |
Kropp | RtBody |
Normalt ansluts utgången till motsvarande ingång på efterföljande Pid - objekt. Attributet anger för Pid-objektet om värdena till utgångarna OUT och OC ska hämtas från algoritmen eller ej. FALSE betyder att AUTO eller CASCADE gäller, dvs. värdena baseras på algoritmen. TRUE innebär att tvångskörning eller MANUAL gäller och att värdena istället ska bygga på FOV-utgångens värde.
AutMode Output | ||
---|---|---|
Klass | Output | |
Typ | Boolean | |
Flags | STATE | NOEDIT | REDUTRANSFER | |
GraphName | aut | |
Kropp | RtBody |
Anger om reglermod AUTO valts eller ej. FALSE betyder att annan mode gäller; TRUE innebär att AUTO valts. Eftersom ett efterföljande Pid-objekt inte behöver skilja mellan AUTO och CASCADE används attributet ofta för ren indikering.
CascMod Output | ||
---|---|---|
Klass | Output | |
Typ | Boolean | |
Flags | STATE | NOEDIT | REDUTRANSFER | |
GraphName | cas | |
Kropp | RtBody |
Indicates if the control mode CASCADE is selected or not. FALSE means that CASCADE is not the control mode; TRUE means that CASCADE is the control mode. A subsequent Pid object does not have to make any distinction between AUTO or CASCADE, so this attribute is often used only as information.
ManMode Intern | ||
---|---|---|
Klass | Intern | |
Typ | Boolean | |
Flags | STATE | NOEDIT | REDUTRANSFER | |
GraphName | man | |
Kropp | RtBody |
Indicates if the control mode MANUAL is selected or not. FALSE means that MANUAL is not the control mode; TRUE means that MANUAL is the control mode. This attribute is used only as information.
OpMod Intern | ||
---|---|---|
Klass | Intern | |
Typ | PidOpModeEnum | |
Flags | REDUTRANSFER | |
GraphName | OpMod | |
Kropp | RtBody |
Anger vald reglermod. Attributet kan ändras från Mode-objektets objektbild. = 1 MANUAL. Operatören väljer regulatorns styrsignal. Regulatorns styrsignal tvångsstyrs till angivet värde i ForceVal. MinOut och MaxOut definierar styrsignalens tillåtna intervall. = 2 AUTO. Operatören väljer börvärde, Regulatorns börvärde = SetVal och styrsignalen räknar regulatorn fram. MinSet och MaxSet definierar böbrvärdets tillåtna intervall. = 4 CASCADE. Som i AUTO men regulatorns börvärde = XSetVal. Illustrates the Connection between Forced Control and Control Modes
AccMod Intern | ||
---|---|---|
Klass | Intern | |
Typ | PidModeEnum | |
Flags | ||
GraphName | AccMod | |
Kropp | RtBody |
Anger operatörens behörighet att ändra värde på OpMod . Följande behörigheter är möjliga: 1 -- Bara MANUAL 5 -- CASCADE / MANUAL 2 -- Bara AUTO 6 -- CASCADE / AUTO 3 -- MANUAL / AUTO 7 -- MANUAL / AUTO / CASCADE 4 -- Bara CASCADE
AccOut Intern | ||
---|---|---|
Klass | Intern | |
Typ | Int32 | |
Flags | ||
GraphName | AccOut | |
Kropp | RtBody |
Ej implementerad funktion. Anger operatörens behörighet att ändra ForcVal . Följande behörigheter är möjliga: 0 -- Ingen ändring tillåten ? 0 -- ändring tillåten.
MinOut Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | REDUTRANSFER | |
GraphName | MinOut | |
Kropp | RtBody |
The choice of the operator of ForcVal is checked against the interval { MinOut, MaxOut}. ForcVal may be changed in the control mode MANUAL from the display of the Mode object.
MaxOut Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | REDUTRANSFER | |
GraphName | MaxOut | |
Kropp | RtBody |
Största tillåtna värde vid operatörsändring av ForcVal . I läge MANUAL kan ForcVal ändras från Mode-objektets objektbild.
AccSet Intern | ||
---|---|---|
Klass | Intern | |
Typ | Int32 | |
Flags | ||
GraphName | AccSet | |
Kropp | RtBody |
Ej implementerad funktion. Anger operatörens behörighet att ändra SetVal . Följande behörigheter är möjliga: 0 -- Ingen ändring tillåten ? 0 -- ändring tillåten.
MinSet Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | ||
GraphName | MinSet | |
Kropp | RtBody |
The choice of the operator of SetVal is checked against the interval { MinSet, MaxSet}. The value may be changed in the control modes MANUAL and AUTO from the display of the Mode object.
MaxSet Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | ||
GraphName | MaxSet | |
Kropp | RtBody |
Största tillåtna värde vid operatörsändring av SetVal . I läge MANUAL och AUTO kan SetcVal ändras från Mode-objektets objektbild.
SetMinShow Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | REDUTRANSFER | |
GraphName | SetMinShow | |
Kropp | RtBody |
Undre gräns vid presentation av är-och börvärde i Mode-objektets objektbild. Gränserna kan ändras från objektbilden.
SetMaxShow Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | REDUTRANSFER | |
GraphName | SetMaxShow | |
Kropp | RtBody |
Övre gräns vid presentation av är-och börvärde i Mode-objektets objektbild. Gränserna kan ändras från objektbilden.
SetEngUnit Intern | ||
---|---|---|
Klass | Intern | |
Typ | String16 | |
Flags | ||
GraphName | SetEngUnit | |
Kropp | RtBody |
Anger ingenjörsenheten för XSetVal / SetVal / SetMinShow / SetMaxShow, t.ex kg. Används i Mode-objektets objektbild.
SetPrecision Intern | ||
---|---|---|
Klass | Intern | |
Typ | FloatPrecisionEnum | |
Flags | ||
GraphName | SetPrecision | |
Kropp | RtBody |
Specifies the number of characters displayed after the decimal point for set value and process value in the object graph.
OutMinShow Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | REDUTRANSFER | |
GraphName | OutMinShow | |
Kropp | RtBody |
Undre gräns vid presentation av Pid-objektets OutVal i Mode - objektets objektbild. Gränserna kan ändras från Mode-objektets MERbild.
OutMaxShow Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | REDUTRANSFER | |
GraphName | OutMaxShow | |
Kropp | RtBody |
Övre gräns vid presentation av Pid-objektets OutVal i Mode - objektets objektbild. Gränserna kan ändras från Mode-objektets MERbild.
OutEngUnit Intern | ||
---|---|---|
Klass | Intern | |
Typ | String16 | |
Flags | ||
GraphName | OutEngUnit | |
Kropp | RtBody |
Anger ingenjörsenheten för XForcVal / OutVal /ForcVal / OutMinShow / OutMaxShow, t.ex %. Används i Mode-objektets objektbild.
OutPrecision Intern | ||
---|---|---|
Klass | Intern | |
Typ | FloatPrecisionEnum | |
Flags | ||
GraphName | OutPrecision | |
Kropp | RtBody |
Specifies the number of characters displayed after the decimal point for output value in the object graph.
Error Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | STATE | NOEDIT | |
GraphName | Error | |
Kropp | RtBody |
The difference between process value and set value.
ErrorMinShow Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | ||
GraphName | ErrorMinShow | |
Kropp | RtBody |
The lower respectively upper limits in the graphical display of the error in the object graph.
ErrorMaxShow Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | ||
GraphName | ErrorMaxShow | |
Kropp | RtBody |
AdjustableRanges Intern | ||
---|---|---|
Klass | Intern | |
Typ | Boolean | |
Flags | ||
Kropp | RtBody |
Specifies that the ranges for set value, process value and output in the object graph can be adjusted.
PidObjDId Intern | ||
---|---|---|
Klass | Intern | |
Typ | Objid | |
Flags | ||
GraphName | PidObjDId | |
Kropp | RtBody |
Anger fullständigt namn på det med Mode-objektet associerade Pid-objektet. Attributet gör det möjligt att via knapp i Mode-objektets objektbild starta objektbilden för det associerade Pid-objektet.
PlcNode Buffer | ||
---|---|---|
Klass | Buffer | |
Typ | PlcNode | |
Flags | INVISIBLE | |
Kropp | DevBody |