Først lidt om mig selv: Jeg hedder Jacob Bang, 22 år og går på 5. semester på Softwareingeniør studiet på Aalborg Universitet.
Vi har nu i 2 semestre lavet lidt videoer af vores projekter for at andre kan se hvad det er vi går rundt og laver. Det er lidt et tilfælde at begge semestre indeholder noget med LEGO men det gør bare videoerne mere spændende at se på. Jeg vil ikke bruge vildt meget på at komme ind på dybden i de enkelte projekter men hvis nogen synes det er spændende kan jeg linke til rapporterne (samt kildekoden hvis nogen synes det er enormt spændende) som giver et godt billede af projekterne.
4. semester projekt: KittyCranium
I dette semester var opgaven er lave vores eget programmeringssprog med tilhørende compiler. Vi valgte at lave sproget KittyCranium (vi har en intern humor der indeholder meget Hello Kitty) som kan bruges til at programmere en containerkran. For at gøre projektet mere spændende og visuelt valgte vi at bygge en containerkran i LEGO NXT og lave sådan at vores compiler outputter kode der direkte kan ligges over på en LEGO NXT. Der er 2 videoer hvor vi viser 2 forskellige programmer som kranen benytter. Sproget er meget simpelt og nemt at gå til. Compileren er lavet i Java og oversætter koden til LejOS Java for NXT. Source koden til Compiler og det LEGO Lib vi udviklere til LEGO kranen kan udleveres hvis det ønskes.
Til dem der ikke ved hvad en compiler er så er det et program der oversætter fra et programmeringssprog til et andet sprog. Det kan fx være et program der oversætter noget fra C til kode som computeren forstår.
Direkte link til videoerne for KittyCranium projektet (vi kører lidt fast-forward for det ikke skal gå alt for langsomt):
http://www.youtube.com/watch?v=KuLcxa54pTA
http://www.youtube.com/watch?v=O7vcUuEJUgw
Ved den sidste video er det denne kode skrevet i KittyCranium der kører. Som det kan se er det meget enkelt at se hvad der faktisk foregår.(koden til den første video er noget længere og vil derfor ikke lige poste den her):
Code: Select all
AREA storageArea = [E1,D2,D1,C2,C1,B2,B1,A2,A1];
AREA incomingArea = [E2];
EVENT CONTAINER c IN incomingArea {
IF (IS storageArea.isFull() EQUAL TO FALSE) {
MOVE c TO storageArea;
GOTO incomingArea;
} ELSE {
system.error('Storage area is full.');
}
}
5. semester projekt: RTSorter
Vi arbejder stadig på dette projekt som skal afleveres i løbet af december. Som det kan ses har vi her valgt løbende at udgive YouTube videoer så man nemmere kan se projektet som en process. Opgaven i dette semester er at lave et såkaldt Real Time system. For dem der ikke ved hvad sådan noget går ud på så er det systemer der har fx hårde deadlines og som der forventes altid fungerer som de skal. Fx hvis du har en stor sav på en fabrik så er der måske et system der gør at den skal stoppe saven hvis en hånd kommer for tæt på. Her er det ret vigtigt at dette system altid virker som det er dokumenteret det skal samt at den når at stoppe saven inden armen kommer ind i den.
Nå men vores projekt handler så ikke om en sav men om sortering af slik ud fra farver. Jeg vil ikke komme ind på så mange detaljer her andet end at i kan se videoer som forklare meget godt hvad det går ud på. Indtil videre har vi lavet følgende videoer men der kommer løbende:
http://www.youtube.com/watch?v=2c85Mc_ZpPk
http://www.youtube.com/watch?v=q53HkuLv6y4
http://www.youtube.com/watch?v=Uz5efoqQ8MQ
http://www.youtube.com/watch?v=XMp94flNZTQ
http://www.youtube.com/watch?v=g_oov8C7c14 <- skal ikke tages alt for seriøst. Vi forsøger bare at vise at systemet også virker udmærket i ekstreme situationer.
Der mangler stadig nogle enkelte dele af projektet og der kodes stadig for at få det hele til at fungere helt optimalt. Fx har vi fornyligt udviklet vores netværksprotokol mellem de to NXT'er til at fungerer langt bedre og det har virkelig givet stabilitet. Kan være vi laver en video omkring dette en gang (vi tager gerne imod forslag hvis nogen vil have beskrevet noget yderligere).
Link til vores channel og hvis i kan lide det så Abonner på os:
http://www.youtube.com/s406a
Jeg håber da at der er nogen herinde der finder alt dette spændende og føler sig inspireret til at tage en IT-uddannelse (fx Softwareingeniør). Hvis ikke er det også ligemeget men giv gerne kommentarer til alt dette. Jeg vil forsøge svare på alle spørgsmål der måtte være både omkring projekterne men også om studiet.