Volume pwrb | |
Attributes: Runtime | Development | System | Template | Detail C Binding: Struct | Class  ClassTree | INDEX NO INDEX |
Class PlcPgm![]() |
||
---|---|---|
Version | 1.0 | |
Modified | 15-JAN-2025 13:23:37.00 |
Representerar ett PLC program. PlcPgm-objekt konfigureras under $ PlantHier-objekt med hjälp av Configuration Editor och dess innehåll, själva PLC programmen, med PLC Editorn. Under PlcPgm-objektet skapas ett WindowPlc objekt, som blir förälderobjekt till objekten i PLC programmet. PlcPgm-objekten namn fungerar som etiketter på olika PLC program. PlcPgm-objekt representera både kod och data. Olika PlcPgm-objekt med samma värde på ScanTime kommer att exekvera i en och samma PLC- subprocess. NB! PLC-subprocessen med kortaste cykeltiden, dvs. med högsta frekvensen, kallas basefrekvenssubprocessen. Den hanterar också inläsning/utställning av Di-, Do-, Dv- och Co-signaler anslutna till nodens lokala I/O-system. De övriga subprocesserna benämns gemensamt som delfrekvenssubprocesserna.
RtBody attributes pwr_sClass_plc | |||
---|---|---|---|
String80 | Description | Optional the text to describe the program. | |
Objid | ThreadObject | ||
AttrRef | HostObject | Used by the code generator. | |
ConfigStatusEnum | ConfigurationStatus | Configuration status. | |
SafetyLevelEnum | SafetyLevel | Safety level. |
DevBody attributes | |||
---|---|---|---|
Float32 | ScanTime | ScanTim | Anger, i sekunder, den nominella tiden mellan två successiva exekveringar av PLC programmet. Minsta tillåtna värde på ScanTime är 0.02 sekunder. Vid 'Create Plc Files ...' erhålls meddelande om ScanTime ? heltalsmultipel av 20 millisekunder. Lämnas ScanTime blankt kommer det att få värdet 0.02. En ändring av ScanTime med hjälp av Configuration Editor eller Utilities Window kommer att beaktas utan att PLC programmet omkompileras förutsatt att nya 'load files' och ny 'boot file' skapas. Eftersom systemklockans upplösning är 10 ms är det lämpligt att ange ScanTime med högst 2 decimaler. ScanTime and Slip frekvenssubprocessen och därmed I/O-hanteringen. Praktiska överväganden får avgöra detta val; vad klarar I/O:et, vad får det kosta i CPU-last , storleksordningen av processens dödtider etc. Vanliga val är 0.02 (=50 Hz) och 1 (= 1 Hz). Basfrekvenssubprocessen arbetar i två steg enligt följande: Inläsning och utställning av digitala signaler. Inläsning av Co-signaler. Exekverar PlcPgm-kod. Dvs under denna cykel beräknade utsignaler ställs ut först vid nästa basfrekvenscykel. Sätts delfrekvenssubprocessernas ScanTime = 'heltalsmultipel av basperioden' kommer delfrekvenssubprocesserna att få 'färska' insignalvärden. Om inte, säg t.ex. att basperioden är 60 sek och en delfrekvenssubprocess har ScanTime = 100 sek, då är de till delfrekvenssubprocessen inlästa signalvärdena drygt 40 sek gamla när de tidigast börjar användas och signalerna från delfrekvenssubprocessen kommer att ställs ut drygt 20 sek efter det att de beräknats! En ytterligare aspekt till valet av ScanTime är hanteringen av övriga signaler mellan hårdvara och I/O-kopierad area. Analoga signaler hanteras med frekvensen 5 Hz, räknares ActualValue uppdateras med 1 Hz (av separat IO_COMM-jobb). är det fråga om distribuerat I/O av typen RTP spelar också konfigureringen av DIOC ( 'Distributed IO Controller') in. (PLC-jobbet är inte synkroniserat med IO_COMM-jobbet.) |
AttrRef | ResetObject | ResObj | Anger komplett namn på det Di -, Dv - eller Do-objekt som används som resetsignal i PLC programmets Grafcet-kedja/or. Vad gäller resetsignalens användning. Saknas behov av att kunna göra reset på Grafcet-kedja lämnas attributet blankt. Naturligtvis kan Objekts Editorn alltid användas för att ange namn på ResetObject . Men i PLC Editorn kan följande metod vara ett alternativ: Öppna Edit-menyn under ikonpaletten och välj ShowPlcAttr . Skapa på vanligt sätt ett ShowPlcAttr-objekt i PLC programmet. Välj nu namnet på önskat ResetObject i Navigator genom att med MB1 klicka på det och därefter dubbel-klicka med CTRL/MB1 i Reset-fältet. |
Int32 | ExecuteOrder | ExecOrd | Kontrollerar exekveringsordning av olika PlcPgm på samma tråd. Lägre värden av ExecuteOrder exekverar före högre. |
PlcProgram | PlcProgram |
Description Intern | ||
---|---|---|
Klass | Intern | |
Typ | String80 | |
Flags | ||
Kropp | RtBody |
Optional the text to describe the program.
ThreadObject Intern | ||
---|---|---|
Klass | Intern | |
Typ | Objid | |
Flags | ||
Kropp | RtBody |
HostObject Intern | ||
---|---|---|
Klass | Intern | |
Typ | AttrRef | |
Flags | INVISIBLE | |
Kropp | RtBody |
Used by the code generator.
ConfigurationStatus Intern | ||
---|---|---|
Klass | Intern | |
Typ | ConfigStatusEnum | |
Flags | ||
Kropp | RtBody |
Configuration status. Status in the development environment for an hierarchy, plcprogram or process graph, set by the designer to indicate the current state. If a status is set for an object, it is marked red, yellow or green in the configurator. Also the status text if viewed surrounded by angel brackets.
SafetyLevel Intern | ||
---|---|---|
Klass | Intern | |
Typ | SafetyLevelEnum | |
Flags | ||
Kropp | RtBody |
Safety level. Safety level in the development environment for an hierarchy, plcprogram or process graph, set by the designer to indicate the level. If a level is set for an object, it is marked with a warning trangle.
ScanTime Intern | ||
---|---|---|
Klass | Intern | |
Typ | Float32 | |
Flags | INVISIBLE | |
GraphName | ScanTim | |
Kropp | DevBody |
Anger, i sekunder, den nominella tiden mellan två successiva exekveringar av PLC programmet. Minsta tillåtna värde på ScanTime är 0.02 sekunder. Vid 'Create Plc Files ...' erhålls meddelande om ScanTime ? heltalsmultipel av 20 millisekunder. Lämnas ScanTime blankt kommer det att få värdet 0.02. En ändring av ScanTime med hjälp av Configuration Editor eller Utilities Window kommer att beaktas utan att PLC programmet omkompileras förutsatt att nya 'load files' och ny 'boot file' skapas. Eftersom systemklockans upplösning är 10 ms är det lämpligt att ange ScanTime med högst 2 decimaler. ScanTime and Slip frekvenssubprocessen och därmed I/O-hanteringen. Praktiska överväganden får avgöra detta val; vad klarar I/O:et, vad får det kosta i CPU-last , storleksordningen av processens dödtider etc. Vanliga val är 0.02 (=50 Hz) och 1 (= 1 Hz). Basfrekvenssubprocessen arbetar i två steg enligt följande: Inläsning och utställning av digitala signaler. Inläsning av Co-signaler. Exekverar PlcPgm-kod. Dvs under denna cykel beräknade utsignaler ställs ut först vid nästa basfrekvenscykel. Sätts delfrekvenssubprocessernas ScanTime = 'heltalsmultipel av basperioden' kommer delfrekvenssubprocesserna att få 'färska' insignalvärden. Om inte, säg t.ex. att basperioden är 60 sek och en delfrekvenssubprocess har ScanTime = 100 sek, då är de till delfrekvenssubprocessen inlästa signalvärdena drygt 40 sek gamla när de tidigast börjar användas och signalerna från delfrekvenssubprocessen kommer att ställs ut drygt 20 sek efter det att de beräknats! En ytterligare aspekt till valet av ScanTime är hanteringen av övriga signaler mellan hårdvara och I/O-kopierad area. Analoga signaler hanteras med frekvensen 5 Hz, räknares ActualValue uppdateras med 1 Hz (av separat IO_COMM-jobb). är det fråga om distribuerat I/O av typen RTP spelar också konfigureringen av DIOC ( 'Distributed IO Controller') in. (PLC-jobbet är inte synkroniserat med IO_COMM-jobbet.)
ResetObject Intern | ||
---|---|---|
Klass | Intern | |
Typ | AttrRef | |
Flags | ||
GraphName | ResObj | |
Kropp | DevBody |
Anger komplett namn på det Di -, Dv - eller Do-objekt som används som resetsignal i PLC programmets Grafcet-kedja/or. Vad gäller resetsignalens användning. Saknas behov av att kunna göra reset på Grafcet-kedja lämnas attributet blankt. Naturligtvis kan Objekts Editorn alltid användas för att ange namn på ResetObject . Men i PLC Editorn kan följande metod vara ett alternativ: Öppna Edit-menyn under ikonpaletten och välj ShowPlcAttr . Skapa på vanligt sätt ett ShowPlcAttr-objekt i PLC programmet. Välj nu namnet på önskat ResetObject i Navigator genom att med MB1 klicka på det och därefter dubbel-klicka med CTRL/MB1 i Reset-fältet.
ExecuteOrder Intern | ||
---|---|---|
Klass | Intern | |
Typ | Int32 | |
Flags | ||
GraphName | ExecOrd | |
Kropp | DevBody |
Kontrollerar exekveringsordning av olika PlcPgm på samma tråd. Lägre värden av ExecuteOrder exekverar före högre.
PlcProgram Buffer | ||
---|---|---|
Klass | Buffer | |
Typ | PlcProgram | |
Flags | INVISIBLE | |
Kropp | DevBody |