Praktiskt exempel på digital krets

Vi har blivit anlitade som konsulter åt företaget Fabriken AB. Vår uppgift är att konstruera ett digitalt kontrollsystem för en av maskinerna i deras fabrik. Vårt system skall visa maskinens status på tre lysdioder, en fjärde lysdiod skall tändas om ett fel har uppstått i maskinen, och när ett fel har uppstått skall det skickas en signal som stoppar maskinen Följande vet vi:

Insignaler: a Statussignal a, skall skickas till diod
b Statussignal b, skall skickas till diod
c Statussignal c, skall skickas till diod
Utsignaler: error Signal för fel, skall skickas till diod

continue

Signal som talar om för maskinen om den ska stå stilla eller stanna av.
Villkor för fel: Ett fel har uppstått om a,b och c har värdet "1" samtidigt. Vid fel ska en lysdiod tändas.
Villkor för continue: Continue signalen ska vara "1" så länge inget fel har inträffat. När ett fel inträffar ska signalen bli "0".

Lösning:

Med våra kunskaper om grindar och boolsk algebra i bagaget inser vi att signalen error kan konstrueras med AND-grindar, eftersom att de kollar om båda insignalerna har värdet "1". Eftersom att vi har tre insignaler innebär det att vi måste kombinera två AND-grindar för att få önskat resultat.

Vi inser också att utsignalen signalen continue helt enkelt är inversen (omvändningen) av error signalen, och därför kan vi konstruera stop genom att skicka error singalen genom en ICKE-grind.

Statussignalerna ska bara skickas vidare till dioder, så dem behöver vi inte göra något åt.

Schema för logiken:

Som vi ser i schemat så har vi utnyttjat två stycken OCH-grindar. Först kollar vi om både b och c har värdet "1", och resultatet skickas vidare till nästa OCH-grind där det kollas om både resultatet och insignalen a har värdet "1". Om så är fallet kommer utsignalen error också få värdet "1", annars "0". Genom att även skicka resultatet genom en ICKE-grind, får vi automatiskt ut utsignalen continue.

Schema för kretsen:

I uppgiften ingick det att koppla insignalerna a,b och c samt error till lysdioder. Nedan visas ett fulltsändigt kopplingsschema för lösningen.

Observera att om insignalernas spänning är högre än vad lysdioderna tål, måste man koppla in resistorer i serie med lysdioderna för att få ner spänningen till lagom nivå. I annat fall kan det hända att lysdioderna brinner. Det är också ganska vanligt att man vänder på logiken och låter "0" tända lysdioden. Anledningen till att man kan vilja göra så är att vissa kretsar får bättre drivförmåga då. Om en sådan konstruktion skall fungera, skall man ansluta lysdioderna till en lämplig matningsspänning, istället för som nu till jord (GND).