Att programmera en legohiss

Igår var vi igång och labbade i Elektrotekniken igen (labbarna är ett obligatoriskt moment och genomförs med jämna mellanrum under hela kursen). Just nu håller vi på med digitalteknik, d.v.s. enklare programmering (ettor och nollor). Således handlade den här labben om att programmera ett styrsystem för en hiss, i detta fall en legohiss (kolla bilden till höger, hur cool?!).

Hisskonstruktionen hade två våningar och på respektive våning fanns en givare som kände av om hissen stod på den våningen eller inte. Tillsammans med signalerna från knapparna inuti hissen och utanför på respektive våning kallas dessa insignaler. Utsignalerna är två stycken och talar om för hissmotorn om den skall få hissen att åka upp eller ned. Mellan in och utsignaler sker själva programmeringen. För vilka givna villkor skall vad hända? Om jag trycker på nedknappen inuti hissen vill jag ju att hissen skall åka ned men vad händer om jag trycker på både upp- och nedknappen samtidigt? Eller om jag redan är på övre våningen och trycker på uppknappen? Allt detta är möjliga scenarion som måste täckas upp i ett så kallat sanningsdiagram, vad skall hända när helt enkelt.

Det mesta löser man först på papper med hjälp av verktyg vid namn Boolesk algebra och Karnaughdiagram. Dessa papperslösningar översätts sedan till kod som skrivs in i programmet LabView och det färdiga resultatet kan ni se sedan – hissen fungerar!

http://www.youtube.com/watch?v=BxkgKS0x7F0

Det må verka både svårt, udda, lätt, konstigt eller föga imponerande men jag var galet stolt i slutet av den här labben. Enligt mig är detta i särklass det roligaste vi gjort hittills i Elektrotekniken. Att faktiskt själv kunna programmera hur en enkel hiss skall fungera efter givna insignaler tycker jag är superspännande och ger en bra fingervisning om vad masterprogrammet Mekatronik handlar om, något jag funderar allt mer på att läsa.