PLC program

Vi använder den grafiska PLC editorn för att skapa PLC program.

Innan vi börjar editera kopplar vi PlcPgm objektet till ett PlcThread objekt i nodhierarkin.
Detta avgör vilken tidbas som PLC programmet kommer att exekvera med.


Fig Den grafiska PLC editorn

Vi kommer att använde GRAFCET för att skapa programmet för trafikljusen. Det finns två sätt
att lösa problemet med de två arbets moderna normal och blinkande:

1. Använda en GRAFCET sekvens med villkorlig förgrening, en gren för den normal mod och en
och en för blinkande mod.
2. Använda två separata GRAFCET sekvenser med olika startvillkor.

Här väljer vi alternativ två. En mer detaljerad beskrivning av GRAFCET och
sekvensprogrammering finns i kapitel Grafisk PLC programmering.

GRAFCET program bygger på att ett aktivt tillstånd förflyttas mellan olika steg en sekvens.
I linjära sekvenser kan endast ett steg vara aktivt i taget. Till vare steg knyter man ett
antal order som ska exekveras när steget är aktivt. Detta kan vara att t ex sätta en digital
utgångssignal, som tänder en lampa. På så sätt styr PLC programmet de logiska signaler som
är kopplade till de fysiska kanalerna.


Fig Sekvens för blinkande ljus

Figuren ovan visar sekvensen som exekveras när ljusen ska blinka gult.

Startvillkoret för sekvensen är inverterat jämfört med startvillkoret för sekvensen för
normal arbetsmod. Det medför att de två sekvenserna inte kommera att exekvera samtidigt.


Fig Normal sekvens

Programmet för den normala arbetsmoden bygger på att trafikljusen följer sekvensen:

                 Nord-Syd          Väst-Öst
1               Röd         Röd
2               Röd, Gul         Röd
3               Grön         Röd
4               Gul, Grön         Röd
5               Röd         Röd
6               Röd         Röd, Gul
7               Röd         Grön
8               Röd         Gul, Grön
9               Tillbaka till steg 1
Programmet startar i initsteget. Om startvillkoret är uppfyllt, blir steg 1 aktivt och de
röda lamporna tänds. Efter en viss tid blir steg 1 inaktivt, och steg 2 aktivt, och en gul
lampa tänds, osv. När steg 8 har varit aktivt en viss tid, flyttas aktiviteten till
initsteget igen och sekvensen börjar om, så längs startvillkoret är uppfyllt.


Fig Triggsignaler

Programmet ovan visar logiken för att styra olika arbetsmoder.

Längst uppe till höger sätter man Dv signalen "Mode". Om den sätt till 1 kommer sekvensen
för normal arbetsmod att köras, annars körs sekvensen för blinkande ljus.

Dv signalen "Reset" kommer att vara att till 1 under ett exekverings varv när signalen
"Mode" ändrar värde. Detta medför att de två GRAFCET sekvenserna återgår till
initialtillståndet med initstegen aktiva. Den valda sekvensen kommer sedan att startas igen
när Reset återställs till 0.

PLC programmet måste kompileras innan det kan köras på en processtation.