+5V. start. Styrsystem. stopp. Tillståndsmaskiner

Relevanta dokument
+5V. start. Styrsystem. stopp. Tillståndsmaskiner

Digitalteknik 7.5 hp distans: 5.1 Generella sekvenskretsar 5.1.1

Digital- och datorteknik

Sekvensnät i VHDL del 2

IE1205 Digital Design: F9: Synkrona tillståndsautomater

Laboration D159. Sekvensnät beskrivna med VHDL och realiserade med PLD. Namn: Datum: Epostadr: Kurs:

Styrteknik: SFC Introduktion

TSIU05 Digitalteknik. LAB1 Kombinatorik LAB2 Sekvensnät LAB3 System

Digital elektronik CL0090

Exempel på tentamensfrågor Digitalteknik

IE1205 Digital Design: F10: Synkrona tillståndsautomater del 2

F5 Introduktion till digitalteknik

LABORATIONER I DIGITALTEKNIK. Laboration 3 Speciella sekvenskretsar

Laboration i digitalteknik

SEKVENSKRETSAR. Innehåll

Exempel på LAX-uppgifter

Ladderprogrammering steg för steg

Laboration i digitalteknik Speciella sekvenskretsar

Beskrivning av sorteringsverket. Automationsteknik Sortering av cylindrar 1(5)

Tentamen i IE1204/5 Digital Design onsdagen den 5/

Konstruktionsmetodik för sekvenskretsar. Föreläsning 7 Digitalteknik, TSEA22 Mattias Krysander Institutionen för systemteknik

Försättsblad till skriftlig tentamen vid Linköpings universitet

Tentamen i IE1204/5 Digital Design onsdagen den 5/

DIGITALTEKNIK I. Laboration DE2. Sekvensnät och sekvenskretsar

Tentamen. TSEA22 Digitalteknik 5 juni, 2015, kl

Ladderprogrammering steg för steg

IE1205 Digital Design: F8: Minneselement: Latchar och Vippor. Räknare

IE1204/IE1205 Digital Design

Konstruktionsmetodik för sekvenskretsar

Tentamen i Digitalteknik 5p

Tentamen IE Digital Design Fredag 13/

Uppgift 12: Konstruera en elektronisk tärning. Resultatet av ett tärningskast ska visas på en 7- segmentindikator.

Sekvensnät Som Du kommer ihåg

Du har följande material: 1 Kopplingsdäck 2 LM339 4 komparatorer i vardera kapsel. ( ELFA art.nr datablad finns )

LEJON LABORATION3. Laborationens syfte

Laboration 2 i Styrteknik

Klientkonfiguration för Ethiris Mobile i Ethiris VMS 8.2

Programmera i teknik - kreativa projekt med Arduino

Rapport Digitala Projekt EITF11 Grupp 4 Axel Sundberg, Jakob Wennerström Gille Handledare: Bertil Lindvall

ATU. Användarmanual. Larmöverföringsenhet Firmware Version

Kodlås. Kopplingsschema över kodlåset PAL-18

LABORATIONSINSTRUKTION

Laboration i digitalteknik Introduktion till digitalteknik

AVR 5. Styrning av trafikljus. Digitala system 15 p

Högskolan i Halmstad Digital- och Mikrodatorteknik 7.5p. Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien

Industriella styrsystem, TSIU06. Föreläsning 2

Programmerbar logik (PLD) Programmeringsspråket VHDL Kombinatoriska funktioner i VHDL för PLD Sekvensfunktioner i VHDL för PLD

Felsökning av bakgavellyft

Elektronik grundkurs Laboration 6: Logikkretsar

Tentamen i Digitalteknik TSEA22

TSEA22 Digitalteknik 2019!

DIGITALTEKNIK. Laboration D172

(2B1560, 6B2911) HT08

Micro:bit. Börja skapa egna program

std_logic & std_logic_vector

Repetition och sammanfattning av syntes och analys av sekvensnät

Tentamen i Grundläggande ellära och digitalteknik ETA 013 för D

Styrsystem till ABAB 255.

Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp

Tentamen IE Digital Design Fredag 15/

Exempeluppgift i Logikstyrning. 1 Inledning. 2 Insignaler och utsignaler

Experiment med schmittrigger

Sekvensstyrning Grafcet och IEC

Laboration D184. ELEKTRONIK Digitalteknik. Sekvensnät beskrivna med VHDL och realiserade med PLD

Laboration 1: Styrning av lysdioder med en spänning

Digital- och datorteknik

FlyBot. Copyright Sagitta Pedagog AB

Tentamen EDAA05 Datorer i system

Laborationshandledning för mätteknik

12 VDC LED (RGB) Färgpalett (FP) 8 färger. Färgsekvensmotor (FSM) 11 färgscheman 2 justerbara tider

Omtentamen IE Digital Design Måndag 14/

Datorprojekt, del 1. Digitala system 15 p

1 Strömmen I skall mätas med en amperemeter. Amperemetern är inställd på området 30 ma. Vad kommer amperemetern att visa?

-c wc. Pre- Next state Out- Vi ser att tillstånden är redan sorterade i grupper med olika utsignaler,

5:2 Digitalteknik Boolesk algebra. Inledning OCH-funktionen

Lösningförslag till Exempel på tentamensfrågor Digitalteknik I.

PROJEKT LJUD. KOPIERINGSUNDERLAG Martin Blom Skavnes, Staffan Melin och Natur & Kultur Programmera i teknik ISBN

Kortlaboration DIK. Digitalteknik, kombinatorik.

Eftersom det endast är en fristående strömslinga man påverkar då man trycker på knappen säger man att omkopplaren i bild 1 är en enpolig omkopplare.

IE1204 Digital Design

Laboration D181. ELEKTRONIK Digitalteknik. Kombinatoriska kretsar, HCMOS v 2.1

Maximanus. Tangenter med speciell betydelse på Maximanus. Uppkoppling

Konstruktionsmetodik för sekvenskretsar. Föreläsning 7 Digitalteknik Mattias Krysander Institutionen för systemteknik

Instruktion för I/O-Kort, med USB-anslutning.

K44 Duo. Installation & User Manual EN SV DE FR DA FI NO

Digital Design IE1204

IE1204 Digital Design

Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 Mikrodatorteknik

HOFFER Walkie-talkie set PMR446/SSP3381 Svenska

HOMEPLUG ADAPTER EXPANSION

DIGITALTEKNIK. Laboration D164. Logiska funktioner med mikroprocessor Kombinatoriska funktioner med PIC16F84 Sekvensfunktioner med PIC16F84

Steglöst reglerbar ljudkänslighet i ett stort område. Digitalt ljudfilter med 4 förprogrammerade nivåer för att undvika felutlösning

Att programmera arduinon

Tentamen i IE Digital Design Fredag 21/

Objekt-orienterad programmering. Klassbegreppet och C++ UML. UMLs fördelar

Alltid redo att hjälpa till. Registrera din produkt och få support på SRP3011. Frågor? Kontakta Philips.

Moodifier LED driver

MultiDrive 2 PB.F2 / RMS

Sortering av cylindrar

Laboration II Elektronik

Transkript:

Tillståndsmaskiner Beteendet hos en stor klass av tekniska system kan beskrivas, modelleras, med tillståndsmaskiner. En tillståndsmaskin är en sekvens av tillstånd som beror av händelser och som ger olika svar. I ett tillstånd, eller vid uträde ur eller inträde till, kan åtgärder utföras. När en händelse inträffar kan den ge upphov till en övergång från ett tillstånd till ett annat. En bild, eller vy, av ett tekniskt system bestående av en lysdiod och en två återfjädrande tryckknappar visas i figur 1. Funktionen ligger i det som kallas styrsystem. Bilden säger inget om hur systemet fungerar, men troligen kan man ge en bra gissning. Funktionen skall vara att då startknappen trycks in skall lysdioden tändas och när knappen släpps skall lysdioden fortsätta att lysa. När stoppknappen trycks in skall lysdioden släckas och den skall förbli släckt då stoppknappen släpps. start stopp in1 in2 Styrsystem ut Figur 1 Lysdiod som styrs av två knappar. I figur 2 visas en tillståndsmaskin, en annan vy av av systemet, där funktionen framgår. Tillstånden är inringade och namngivna. I tillstånden står även de åtgärder som skall utföras. En åtgärd innebär ofta att en utsignal får ett nytt värde. I detta fall är de två tillstånden namngivna till Tänd och Släckt. Systemet kan endast befinna sig i ett tillstånd i taget. I tillståndet Släckt är åtgärden att signalen ut skall sättas till 5V. Detta innebär att ingen ström flyter genom lysdioden som då är släckt. I tillståndet Tänd är åtgärden att signalen ut sätts till 0V och att ström flyter genom lysdioden som då lyser. Tillstånden är förbundna med pilar som anger övergångar mellan tillstånden. Vid dessa pilar anges övergångsvillkoren. Ett övergångsvillkor anger det villkor som skall vara uppfyllt för att en övergång från ett tillstånd till ett annat skall ske. Ett vanligt övergångsvillkor är att en insignal ändrar sitt värde.

Övergångsvillkoret från tillståndet Släckt till Tänd är att knappen start trycks ned. Detta innebär att insignalen in1 blir 5V. När knappen sedan släpps befinner sig systemet i tillståndet Tänd. Övergången från tillståndet Tänd till tillståndet Släckt sker då knappen stopp trycks ned, vilket innebär att insignalen in2 antar värdet 5V. Figur 2 Tillståndsmaskin eller tillståndsdiagram som beskriver funktionaliteten. Ofta styrs ett system av en enda knapp (kan kanske heta power ) istället för två knappar. Systemet innehåller färre insignaler men det behövs fler tillstånd. Följande funktion önskas. Om lampan är släckt och knappen trycks in tänds lampan som förblir tänd då knappen släpps. Om lampan är tänd och knappen trycks in släcks lampan som förblir släckt även då knappen släpps. knapp Styrsystem ut

Figur 3 Lysdiod som styrs av en knapp. I detta fall är fyra tillstånd lämpligt. Dessa kan heta Släckt, Tänd&knapp, Tänd samt Släckt&knapp. Det finns ett starttillstånd som alltid skall vara med i alla tillståndsmaskiner. Starttillståndet är temporärt och lämnas efter att systemet har startat upp ordentligt. Startillståndet är symboliserat med en svart punkt och har namnet start skrivet vid punkten. Efter att systemet har startat sker en övergång till tillståndet släckt. Där är åtgärden att sätta variabeln lys till 0 som i sin tur styr utsignalen där lysdioden är ansluten till det värde som ger en släckt lysdiod. Figur 4 Tillståndsmaskin eller tillståndsdiagram med fyra tillstånd och ett obligatoriskt starttillstånd. Ett system som beskrivs med en tillståndsmaskin kan konstrueras eller realiseras med olika typer av teknologier. Tillståndsmaskiner började användas vid konstruktion av digital hårdvara och byggelementen kallades grindar och vippor. Efterhand har utvecklingen av system mer och mer blivit baserad på programvara, men tillståndsmaskinerna är såpass generella och teknologioberoende att de är användbara även vid programvaruutveckling. Vid utvecklingen av programvara har emellertid nya begrepp tillkommit förutom de ursprungliga som har behandlats ovan. Inte nog med det, tillståndsmaskiner har även blivit ett verktyg i en större verktygslåda som kallas UML (Unified Modeling Language).

Nedan beskrivs hur en tillståndsmaskin kan realiseras med i form av ett program. Vi utgår från tillståndsmaskinen i Figur 4.

//Start (det som kommer efter tecknen // är kommentarer och //tillhör inte programmet Tillstånd = Släckt; // Tillståndsmaskinen omsluts av en evighetsslinga genom //while(1) som gör att koden innanför genomlöps igen och igen while(1) { switch(tillstånd) { case Släckt : if (knapp==1) Tillstand = Tänder; case Tänder : lys = 1; if (knapp==0) Tillstand = Tänd; case Tänd : lys = 1; if (knapp==1) Tillstand = Släcker; } case Släcker : if (knapp==0) Tillstand = Släckt; //Variabeln lys skall styra utgången ut. Till exempel //som nedan, kod kan se olika ut beroende på vilken //processor och hårdvara som används. if (lys==0) ut = 1; //ut = 1 släcker dioden som //nämnts tidigare if (lys==1) ut = 0; }// Här slutar evighetsslingan 140919/HJ,PK