Kompilera ett styrprogram för en programmerbar styrenhet

Kompilera ett styrprogram för en programmerbar styrenhetProgrammerbara styrenheter är designade för cykliskt programmerad styrning av metallskärmaskiner och olika teknisk utrustning, utrustade med sensorer och ställdon som arbetar enligt tvåläges "på-av"-principen. I artikeln övervägs processen att kompilera ett kontrollprogram på exemplet med en styrenhet av MKP-1-modellen.

Beroende på version låter denna styrenhet dig styra 16, 32 eller 48 enheter. Antalet ingångskretsar för anslutning av sensorer motsvarar antalet utgångar. Varje ingång och utgång har sin egen adress.

Styrenheten ger styrning av drivenheter, tar emot information från sensorer om utrustningens tillstånd, genererar fördröjningar, organiserar villkorliga och ovillkorliga övergångar enligt styrprogrammet och utför även andra funktioner.

Utformningen av styrenheten reduceras till två steg: 1 — upprättande av ett diagram för anslutning av sensorer och ställdon till styrenheten, 2 — upprättande av ett styrprogram enligt det algoritmiska schemat.

Ansluta sensorer

DIP-knappar och sensorer är anslutna till kontrollenhetens ingångar enligt tabell 1. Varje ingång har sin egen adress.

För att driva ingångskretsarna krävs en strömförsörjning med utspänning Un = 20 … 30 V. Utlösning av sensorn motsvarar stängning av ingångskretsen (binär nivå 1), kretsens öppna tillstånd motsvarar binär nivå 0 .

Ett exempel på anslutning av sensorkontakten till regulatoringången visas i fig. 1

Kopplingsschema för sensorkontakten

Fikon. 1. Kopplingsschema för sensorkontakten

Tabell 1. Styrenhetens ingångskretsar

Styrenhetens ingångskretsar

Anslutning av verkställande enheter

Ställdon (reläspolar, ingångskretsar för beröringsfria enheter) är anslutna till styrenhetens utgångskontakter i enlighet med tabell 2.

Tabell 2. Styrenhetens utgångskretsar

Styrenhetens utgångskretsar

Ett exempel på anslutning av reläspolarna till styrenhetens utgångar visas i fig. 2.

Kopplingsschema över reläspolar

Fikon. 2. Kopplingsschema för reläspolar


Ett exempel på ett komplett schema för anslutning av externa enheter till styrenheten

Ett exempel på ett komplett schema för anslutning av externa enheter till styrenheten

Digital System Controller

Styrenheten arbetar med tal uttryckta i hexadecimal notation. Grunden för systemet är decimaltalet 16, alfabetet består av tio siffror (0 ... 9) och sex latinska bokstäver (A, B, C, D, E, F). Bokstäverna motsvarar decimaltalen 10, 11, 12, 13, 14, 15.

Lär dig mer om det hexadecimala talsystemet: Nummersystem

Under programmering anges alla numeriska värden i hexadecimal. Tabell 3 visar ett intervall av tal i hexadecimal N16 och deras decimalekvivalenter Nl0.

Tabell 3. Siffror i hexadecimal notation

Hexadecimala tal

En uppsättning kontrollkommandon

Den programmerbara styrenheten är utrustad med ett styrsystem utformat för att lösa mjukvarukontrollproblem. Tabell 4 visar en liten del av styrenhetens kommandon.

Kommandot består av två delar: koden för operationen som ska utföras (CPC) och operanden, som anger adressen till objektet som operationen utförs på. I detta fall fungerar både sensorerna och ställdonen och kommandon för själva programmet som ett sådant objekt. När du anger tidsintervall är operanden längden på dessa intervall.

Tabell 4. Styrkommandouppsättning

En uppsättning kontrollkommandon

Diagram av algoritmer

Funktionsordningen för varje enhet kan beskrivas med hjälp av grafiska symboler som bildar ett algoritmdiagram. Fyra typer av symboler som kallas hörn kan användas när man konstruerar ett diagram (fig. 3).

Algoritmiska diagram, hörn

Ris. 3. Vertices för algoritmschemat

«Start»-punkten motsvarar det initiala tillståndet för kontrollanordningen före nedslaget på den av kontrollerna, till exempel «Start»-knappen.

"Slut"-punkten motsvarar slutet av kontrollprocessen, till exempel efter att ha tryckt på "Stopp"-knappen.

Driftpunkten motsvarar utförandet av en viss elementär operation av enheterna som utgör styrenheten, till exempel att slå på eller stänga av ett relä. Den utförda operationen registreras på diagrammet inuti den översta ikonen.

En villkorlig vertex definierar villkoret för att flytta från en arbetspunkt till en annan. Tillståndet ställs in av sensorn, kontrollknapp eller annan enhet. Tillståndet för sensorn eller knappen och utgångarna från hörnen, respektive, indikeras med siffrorna 1 eller 0.

Till exempel: rörelseomkopplare «på» — 1; "Av" - 0.

Att sammanställa ett algoritmdiagram reduceras till att ansluta hörn i enlighet med den erforderliga operationsordningen för den automatiserade enheten. Ett fragment av diagrammet för algoritmen visas i fig. 4. I diagrammet står symbolen X1 för omkopplaren, Δt är tidsintervallet.

Sammanställning av ett kontrollprogram

Varje kommando i programmet skrivs under sitt eget serienummer, vilket är dess adress. Programmet är kompilerat enligt algoritmens schema och måste innehålla en uppsättning kommandon som utför alla operationer som anges i schemat.

Innan programmet utvecklas är det nödvändigt att upprätta ett anslutningsschema för sensorer och drivenheter. Beroende på var dessa enheter är anslutna får de ett eget nummer, vilket är deras adress i programmet.

Skapandet av programmet bör börja från toppen av «Start»-diagrammet och sedan programmera operationerna sekventiellt till toppen av «Slut».

Om en operation utförs efter att en knapp, gränslägesbrytare eller annan sensor har aktiverats, ställs kommando 02 in och numret på den sensorn skrivs som operanden. I det här fallet kommer styrenheten att utföra kommandot att slå på eller stänga av de verkställande enheterna endast efter att ha mottagit en triggersignal från denna sensor.

Enheterna slås på eller av med kommandona 05 respektive 06. Numret på den påslagna enheten skrivs till operanden

Tidsintervall ställs in med kommando 07. Koefficienten skrivs i operanden, som multiplicerad med 0,1 sek. ger den nödvändiga fördröjningstiden.

Till exempel, när du ställer in t = 2,6 sek.operanden innehåller talet 1A (26 i decimalnotation). Den maximala tidsfördröjningen som ställs in av ett enda 07-kommando är 25,5 sek (07 FF-kommando). Om det är nödvändigt att erhålla en fördröjning som är större än 25,5 sekunder, måste flera 07-kommandon successivt inkluderas i styrprogrammet, tillsammans tillhandahålla det erforderliga tidsintervallet.

För att implementera villkorliga hopp i programmet (i algoritmdiagrammet, en villkorlig vertex med både «1» och «0» operationer), måste du först ställa in kontrollkommandot till denna vertex 04.

Om sensorn som motsvarar denna vertex är i tillståndet «1» genereras villkorsbiten BU = 1. Om sensorn är i tillståndet «0» kommer BU = 0 att genereras.

OA-kommandot utfärdas sedan, vilket, om BU = 1 sattes i det föregående kommandot, kommer att växla styrenheten att utföra kommandot specificerat i operanden för det kommandot.

Med BU = 0 kommer styrenheten att utföra kommandot efter OA-kommandot.

Vid kompilering av ett program rekommenderas det att först skriva en sekvens av kommandon som styrenheten ska utföra när BU = 0, utan att specificera operanden i OA-kommandot. skrivet, kommandot , uppfyllt enligt villkoret «1», läggs in i programmet. Adressen för detta kommando anges i operanden för OA-kommandot.

OBS: För villkorsbiten är initialtillståndet BU = 1, vilket ställs in efter att styrenheten slås på och efter att de villkorliga hoppkommandona exekveras.

Ett exempel på att skriva ett program för ett fragment av algoritmdiagrammet i fig. 4 visas i tabell 5.

Ett fragment av algoritmdiagrammet  

Ris. 4. Fragment av diagrammet för algoritmen

Fragment av kontrollprogrammet

Tabell 5. Fragment av förvaltningsprogrammet

Vi råder dig att läsa:

Varför är elektrisk ström farlig?