Jag kan dra ett exempel som visar hur det fungerar. Förhoppningsvis kan även de som inte pysslat
plc tidigare hänga med. För att göra det så enkelt som möjligt så visar jag inte hur bibliotek fungerar
och projektet blir att styra en motor med ett villkor.
Till att börja med skapar man ett nytt projekt. Det tomma projektet ser ut så här i projektstrukturen.
Nästa steg blir att skapa och öppna ett program. Mitt utvecklingsverktyg hanterar endast språket fbd.
FBD är idag det vanligaste programspråket för plc-programmering. Det finns ytterliggare fyra standardspråk
som de flesta större plc har stöd för.
- ST, strukturerad text, typ som c
- SFC, sequential function chart, grafiskt liksom fbd, används för att enkelt och lättöverskådligt skapa sekvenser
- LD, ladder diagram, påminner om reläschemor
- IL, instruktionslista, typ som assembler
Programeditorn består primärt av två delar. En variabellista upptill och fbd-editorn nertill.
Programeditorn med det tomma progammet ser ut såhär:
När man klickar på knappen "Inser FB" får man upp ett fönster där man väljer vilket
funktionsblock man vill sätta in. Ett funktionsblock (förkortat fb) motsvarar en funktion
i vanlig c-kod. Det kan, men måste inte ha in- och ut-parametrar. Skillnaden
mot en c-funktion är att ett fb kan ha flera utgångar utan att använda en strukturerad
variabel.
Efter att ha infogat några block ser det ut såhär:
För att koppla parametrarna på funktionsblocken måste man deklarera variabler först.
Det kan man göra lokalt(i fbd-editorn) eller globalt. I det här fallet ska vi deklarera globala
variabler. Den uppmärksamma såg att globala variabler finns med i projektstrukturen.
Så här ser det ut med i den globala variabellistan med våra global varaibler:
Nästa steg blir att knyta ihop funktionsblock och variabler. Genom att högerklicka
på en parameteranslutning för man upp ett fönster där man kan välja bland
alla möjliga variabler, både lokala och globala. Tillgänliga variabler med felaktig
datatyp visas inte.
När variablerna är knutna ser det ur så här:
Sista steget i fbd-editorn är att knyta ihop funktionsblock. Det gör man genom
att först markera en parameteranslutning och sedan håller man in ctrl och
klickar på den parameteranslutning man vill ansluta till
Så här ser det ut när alla anslutningar är gjorda. Hur logiken fungerar får
ni klura ut själva.
Så här långt har vi ett program med lite logik för att styra en motor. Men den
viktiga kopplingen till i/o är inte gjord än. Det gör man såklart i i/o-editorerna.
Editorn för digital ingångar ser ut såhär när vi knutit våra globala variabler:
Motsvarande koppling görs för de digitala utgångarna:
Då är all programmering utförd. Innan nedladdning måste man göra en "build"
i huvudfönstret. Förhoppningsvis får man följande resultat:
Nedladdning generar också lite output i resultatfönstret. Men jag sjäva plcn
undanstoppad för tillfället. Så en hw-genomgång får bli vid ett senare tillfället.