Optimering af fraværsregistrering
|
|
- Christine Ebbesen
- 7 år siden
- Visninger:
Transkript
1 Rapport Optimering af fraværsregistrering Eksamensprojekt i Informationsteknologi B, klasse 3.4, 2011 AFLEVERET
2 Indhold Forord... 2 Indledende afsnit... 3 Problemanalyse... 3 Problemformulering... 3 Målgruppe... 4 Løsningsforslag... 4 Diskussion af valg af løsning... 4 Teori... 5 RFID... 5 Arduino... 6 Arduino s Programmeringssprog... 6 Produktet... 8 Design... 8 Hardware Softwaren Test Diskussion Konklusion Bilag Bilag 1 Produktkode, inklusiv kommentarer (software) Bilag 2 Arduino og RFID-system (hardware)
3 Forord Denne rapport præsenterer og dokumenterer det endelige produkt, samt dets udvikling, der er produceret i sammenhæng med eksamensprojektet i Programmering C og Informationsteknologi B 2014 af. På trods af, at to fag indgår i projektet, så er denne rapport udelukkende tiltænkt som besvarelse af opgaven i forhold til Informationsteknologi B, mens en separat journal dokumenterer arbejdet i forhold i til Programmering C. Rapporten indeholder en række indledende afsnit, samt teori og dokumentation af produktet. I de indledende afsnit gives der et indblik i en problemstilling, hvor produktet er en potentil løsning; i teorien bliver der formidlet den vigtigste viden, der er benyttet i sammenhæng med produktudviklingen; og dokumentationsafsnittet beskrives det endelige produkt fra top til tå. Produktet, udviklet i projektet, benytter hovedsageligt Arduino og RFID-systemer, der også bliver arbejdet med i sammenhæng med den almindelige undervisning i de to indgående fag. Min inspiration til at arbejde med lige præcis denne software og disse komponenter oprinder fra, at jeg tidligere har arbejdet med det, og at jeg mener det er en intuitiv og interessant måde at kode på. Projektet er bygget op omkring mit ønske om, at udvikle et produkt, som indbringer netop disse ting Jeg ønsker at takke mine vejledere i dette projektforløb, Karl G Bjarnason (IT B) og Mette Frost Nielsen (Pro C), som har ydet faglig hjælp, når der har været brug for det. 2
4 Indledende afsnit I dette kapitel bliver der gjort rede for den analyse og de indledende overvejelser, der fungerer som udgangspunktet i udviklingen af produktet. Kapitlet er hovedsageligt tiltænkt som supplerende overvejeler til produktet, i forhold til i hvilket scenarie det kan bruges og eventuelt implementeres. Problemanalyse På Roskilde Tekniske Gymnasium registreres der personfravær for elever vha. det online website Lectio. Et system, der påkræver, at der på gammeldagsvis bliver ført protokol af læreren for hvert modul. Dette betyder, at der hvert modul bliver brugt undervisningstid på at registrere elevernes fravær. Systemet er ikke karakteristisk for RTG, da det er udbredt og brugt næsten blandt alle gymnasier i landet. I mange fag, sidder eleverne ofte og arbejder andre steder end i undervisningslokalet i grupperum og på gangene. Hvis eleverne er klar over, at de skal fortsætte et projekt, mødes man ofte kun i lokalet for at blive registreret som tilstedeværende, hvorefter man fordeler sig i grupperum og på gangene. Dette er en tendens, der er begyndt at blive særdeles udbredt blandt flere gymnasier - hovedsageligt på tekniske gymnasier (grundet deres fokus på projekter og gruppearbejde). En øget tendens i at søge væk til andre opholdssteder end klasselokalet, for at lave gruppearbejde, vil resultere i et øget omfang af problemet omhandlende fraværsregistrering. Ud over det centrale problem, er der enkelte faktorer, der gør fraværsregistrering via lectio til et uhensigtsmæssigt system. Her indgår registrering af elever, der kommer for sent til undervisning. Problemet heri ligger, at efter læreren har ført den oprindelige protokol, skal han / hun nu have fat i sin computer for at logge ind på lectio igen, således fraværsregistreringen kan blive gennemført. Samtidigt skal læreren vurdere betydningen af elevens fravær, og angive et passende procentdel af timen eleven ikke har været tilstedeværende i. Problemformulering Som opsummering og specificering af overvejelserne og analysen formidles en skarp og præcis problemformulering: Elevers tendens til arbejde i andre rum end klasselokalet, grundet det manuelle arbejde der ligger fraværsregisteringen, gør det registreringen, vha. Lectio, til et uhensigtsmæssigt system. 3
5 Målgruppe Det er skolens lærer, der står for klassernes fraværsregistrering, og det er deres system jeg ønsker at ændre. Dog forventer jeg, at min løsning skal øge automatiseringen af fraværsregistreringen, og i en vis grad udelukke lærerne fra systemet. Derimod vil jeg eventuelt inddrage eleverne i højere grad. Min målgruppe er derfor både lærere og elever, dog med fokus på lærerne. Løsningsforslag Som et udgangspunkt for problemløsningen har jeg overvejet og redegjort for 3 forskellige løsningsforslag: 1. Personligt Elev-ID Første forslag, er et system, der er inspireret af DSB s Rejsekort -system. Elever på skolen får, eventuelt i sammenhæng med studiekort, et personligt ID, som de kan scanne, når de ankommer til modulet. Når eleven afslutter (eller er nødt til at gå fra) modulet, scanner han / hun sit ID igen, og fraværet bliver angivet derefter. Hvert lokale kan eventuelt udstyres med en scanner, eller den pågældende lærer kan bære en scanner, så eleverne skal opsøge læren for at blive registreret. 2. GPS Andet forslag, er et system, hvor eleverne vil blive udstyret med en tracker. Når eleven er på skolen og gerne vil blive registreret som tilstedeværende, aktiverer de trackeren, således systemet kan godkende deres placering. Bliver eleven væk fra undervisningen vil han / hun derfor blive registreret som fraværende. 3. Netværksregistrering Det tredje forslag inddrager en manuel registrering af eleverne selv, som ed at logge på et website produceret af skolen, kan eleverne gå ind og registrere sig som ankommet til undervisningen. Ved hjælp af et system på serveren, vil elevens placering blive vurderet i forhold til undervisningslokalet, via elevens computer. Eleven vil derefter blive registreret som ankommet eller fraværende. Diskussion af valg af løsning Der ligger visse etiske problemer i at bruge en GPS system, som kan spore eleverne også selvom de selv kan styre, hvornår den skal være tændt og ikke skal. På trods af løsningens funktionalitet, gør det systemet til en problematisk løsning. Men at inddrage eleverne til selv at skal være aktive i deres egen fraværsregistrering, virker som en god idé. På den måde får de selv en ansvar for deres eget fravær, og læreren skal ikke bruge tid på at registrere de enkelte elever. 4
6 Den tredje løsning, netværksregistrering, skaber, ligesom løsning 2, visse etiske problematikker i forhold til overvågning. Skolen indsamler information fra elevens computer og benytter dem til at vurdere, om de nu også overholder reglerne. Samtidigt, så er det ikke praktisk at være tvunget til at alle skal tænde deres computere, hver gang de skal registreres. Og hvad sker der, hvis internettet ryger? Jeg vælger derfor at arbejde videre med den første af de træ løsningsmuligheder: det personlige elev-id. Denne løsning kan være praktisk, i form af et kort (eventuelt elevens studiekort), og kræver nødvendigvis ikke indgreb fra lærerne. Teori I dette kapitel redegøres der for centrale og vigtigste teori, der er benyttet i sammenhæng med udviklingen af produktet. RFID I mit fremtidige produkt ønsker jeg at benytte et system, som kan transportere data mellem to objekter (elevens ID og en læser). Til dette benytter jeg et kendt og velegnet system kaldet radio frequency identification, eller bedre kendt som RFID, der dækker over alle teknologier, der anvender radiobølger til at identificere objekter. Dette system er praktisk, grundet dets evne til at kunne identificere forskellige objekter og differentiere mellem deres unikke ID. En variation af RFID-tags (kort og nøgleringe). De spiller alle samme formål, og har samme længde ID. I et RFID-system bruges der, overordnet set, to objekter: et RFID-tag og en RFID-læser. Et tag er et objekt med en indbygget hukommelse (det kan eksempelvis være et kort eller en lille chip), hvis information kan aflæses af en RFID-læser. Er læseren f.eks. tilkoblet en server af data, behøver tagget nødvendigvis ikke indeholde andet end et enkelt ID-nummer (også kaldet EPC-nummer), som er forbundet til en specifik række data på denne server. Et sådan RFID-tag kan derfor være meget lille, da det ikke skal lagre information, bortset fra et enkelt ID-nummer. Der skelnes mellem aktive og passive RFID-tags. Forskellen på de to er taggets evne til at kommunikere med en vilkårlig læser. Det passive RFID-tag reflekterer et signal sendt af læseren tilbage til læseren, hvorimod det aktive tag er tilkoblet en energikilde (det kan 5
7 være et batteri) og det kan derfor selv sende et signal til læseren. Dette gør at læseren kan spore aktivt RFID-tagget på afstande op til ca. 100m, hvorimod et passivt tag kun kan læses på meget kort afstand. Arduino Arduino er et open-source værktøj til databehandling af data fra den fysiske verden via et fysisk platform, der baseret på en standard microcontroller. Det fysiske værktøj suppleres, og kan programmeres, med det tilhørende Arduino IDE -software. Denne software er gratis og bruges til alle typer Arduino-boards. Arduino en, kodet via softwaren, kan bruges som selvstændige værktøjer, men også bruges være koblet til et større serversystem og/eller kommunikere software på en computer. Værktøjet kan, som nævnt, bruges til databehandling fra den fysiske verden ved at være tilkoblet forskellige kontakter og sensorer. Derudover kan værktøjet sende output-signaler til, og derved manipulerer, lys og andre fysiske objekter. Arduino-softwarens programmeringssprog er det samme som, den der bruges af den lignende open-sourcesoftware og microcontroller Wiring. Derudover kan programmeringssproget udvides med C++ biblioteker. Hvorfor det er valgt som værktøj Arduino blev valgt som værktøj, eftersom jeg selv har arbejdet med de før i anledningen af andre projekter, og uden for undervisningen i IT og Programmering. Derudover er sproget let at arbejde med, og det er nemt at søge hjælp omkring det, da både Arduino selv og andre brugere udgiver guides og yder forum hjælp. Derudover ved jeg, at Arduino en let kan arbejde sammen med en RFID-læser, som er det centrale for projektet, og vi har i en kort periode arbejdet med netop sådan et system. Arduino s Programmeringssprog Som tidligere nævnt, så inddrager Arduino s IDE-software det samme programmeringssprog, der er brugt til den lignende Wire-platform. Der vil her blive uddybet, hvordan de vigtigste elementer i dette programmeringssprog fungerer. Void-Setup og Void-Loop Overordnet set er det to rammer for et program skrevet i IDE-softwaren. Den første ramme er void-setup. Dette er en række funktioner, som kun køres en enkelt gang, når programmet startes. Heri starter man ting som f.eks. aflæsning af sensorer og indledende beskeder. Den anden ramme er void-loopet, som gentages indtil programmet stoppes. Det er heri befinder den centrale del af koden sig, og man kan derfor sige at sproget er opbygget af en gentagende kode. 6
8 Void setup(){ >kode< Void loop(){ >kode< Serial.print Dette er en funktion, som skriver et stykke tekst til det, der på Arduino en kaldes for Serial -porten. Ved at bruge IDE-softwarens Serial-overvågningsfunktion kan man aflæse, dét som porten opfanger, og derved den tekst man har printet. Dette er en måde, hvorpå man kan formidle en tekst ud fra Arduino ens kode. Variabler Bruger man variabler i IDE-softwaren, skal de påkaldes inden de bruges og uden for nogen af de to rammer (void-setup og void-loop). Variabler gives, ligesom i andre sprog, en type og kan gives en værdi: int i = 20 string s = Hej string st void setup If-statement En if-statement tjekker om en et givent udsagn er sandt, og i så fald vil det gennemføre en række funktioner angivet af programmøren: if(x > 1){ >kode< While-løkke En while-løkke vil gentage det tildelte stykke kode, så længe den angivet betingelse er sand eksempel på dette: while(x <= 10){ x += 1 7
9 Denne løkke vil gentage sig selv 10 gange, hvorefter den betingelsen ellers ikke vil være sand. Resten af programmets kode fortsættes ikke før, denne while-løkke bliver lukket ved at betingelsen ikke længere er sand. For-løkke En for-løkke vil gentage et stykke et stykke kode et givent antal gange. Dette gøres ved bruge en variabel, som bliver en start værdi, som enten falder eller stiger for hvert gentagelse. Løkken vil gentage sig indtil denne variabel ikke længere møder den indstillede betingelse. for(int i=0; i<5; i++){ Serial.println((int)i); I denne løkke bliver der erklæret en integer-variabel i, der er stigende, og løkken vil gentage sig indtil i = 5. For hver gentagelse vil den printe værdien af i i Serial-porten. Produktet Dette kapitel er hovedsageligt en dokumentation af produktet og dets funktioner, samt uddybelse af de vigtigste kodeelementer der ligger bag. Derudover vil der blive udført dokumenteret og beskrevet enkelte tests. Design Produktet er bestående af et fysisk RFID-system forbundet til en Arduino-Uno, hvori der er lagret en virtuel kode (det reelle programmeringsprodukt). Ved at forbinde Arduino en til en computer, kan databehandling formidles i tekst via Arduino-softwarens SerialRead funktion. Den fysiske hardware vil ikke uddybes i denne journal, men en illustration af opsætningen er vedlagt i Bilag 2 Arduino og RFID-system (hardware). Programmet starter et loop der gentages et vilkårligt antal gange i sekundet (kan justeres og er i sammenhæng med journalen sat til 4 gange / sekundet), indtil der er gået 20 sekunder. De 20 sekunder skal imitere et skole forløb, hvor der starter en 10 sekunders undervisning efter 10 sekunder. Efter de 20 sekunder er gået vil programmet stoppe. Ved at benytte fysiske RFID-tags kan man integrere med programmet via RFID-læseren, der er tilkoblet Arduino en. Programmet vil registrere hvert unikt tag som enkelte elever og justere elevernes fravær alt efter tidspunktet i forløbet de bliver registreret. Efter de 20 sekunder vil en oversigt over alle elevers fravær blive fremvist. 8
10 Flowdiagram For at skabe et overblik over produktets funktion er der herunder illustreret et flowdiagram, der forklarer, hvordan programmet arbejder i forhold til hvilke ting det evaluerer og hvilke handlinger det tager på baggrund af de evalueringer. 9
11 Hardware Inden udviklingen af programmet blev påbegyndt, skulle der sammensættes et fysisk hardwarekomponent, som ville være stand til at aflæse RFID-tags og videregive den indsamlede information til Arduino en. Komponenterne - Arduino (Uno) - RFID læser (chip inklusiv) model / producent er ukendt - Fumlebræt - Ledninger, 3 stk Disse komponenter sammensættes som illustreret på billedet herunder (se Bilag 2 Arduino og RFID-system (hardware) for større og flere billeder): Anses den øverste pin på chippen (der hvor den røde ledning sidder) som Pin5, skal chippen og Arduino en forbindes på følgende måde: - Pin 5 -> 5V - Pin 4 -> Ground (Gnd) - Pin 3 - Pin 2 - Pin 1 -> Digital Pin 2 (denne pin kan ændres, hvis den ændres i koden også) 10
12 Til pin 5 & 4 tilsættes den nødvendige strømkilde, som i dette tilfælde er Arduino en selv, og pin 1 bruges til overførsel af dataene opsamlet af RFID-læseren. Hvordan systemet sammensættes er inspireret af internetguide: som tidligere er brugt i undervisningen til netop at opstille et RFID system. Softwaren Softwaren virker som den centrale del af produktet, og vil udføre databehandlingen på de data, som RFID-læseren opfanger. I dette afsnit beskrives de vigtigste elementer i programmet, og dett færdige program, der bruges i det endelige produkt, kan findes i bilaget. Variabler I programmet bliver der brugt en række variabler, og for at give et overblik over de vigtigste er de beskrevet herunder i tabellen herunder i forhold til type, navn og deres funktion. Type Navn Funktion string msg Midlertidig lager til tag-id char c Midlertidig lager til enkelte tegn af tag-id string elever Permanent lager til tag-id string ankommet Lager til elever der er tilstede i undervisningen Float counter1 Lagrer tiden integer counter2 Bruges til at holde styr på, hvornår der er gået ét sekund float (array [10] ) attendance Lagring af de enkelte elevers tilstedeværelse integer elevantal Antallet af elever, registreret i systemet Biblioteket For at Arduino en skal kunne aflæse de signaler, som RFID-læseren opfanger, benyttes de digitale porte. Portene kan kun sættes i gang ved at inddrage biblioteket SoftwareSerial. Med dette bibliotek kan der tildeles et navn, og derved en identifikation, til en indgangsport (RX) samt en udgangsport (TX) med følgende kode: #include <SoftwareSerial.h> SoftwareSerial RFID = SoftwareSerial(2, 3); 11
13 Portene bliver tildelt navnet RFID, og vi benytter port 2 som indgangsport og port 3 som udgangsport. Aflæsningen af portene igangsættes på samme måde som serial-porten i void setup, hvor det tildelte navn benyttes i stedet: void setup(){ Serial.begin(9600); RFID.begin(9600); Ved at sætte RFID-læseren til denne indgangsporten kan Arduino en opfange det modtaget data og bearbejde det. Tiden Programmet er bestående af to dele: et void setup, hvori portene igangsættes, og et void loop, hvori den aktive del af programmet er. Denne overordnede void-løkke er tildelt en justérbar forsinkelse, således man kan ændrer på antallet af gentagelser løkken skal tage hvert sekund. #define hastighed x delay(1000 / hastighed) Uden for både void-setup og void-loop defineres en værdi x som hastighed. Under kodens kompilering vil alle de steder, der står hastighed blive udskiftet med denne værdi. Således opnås den justérbare frekvensfunktion. En tæller, i form af en float-variabel, holder styr på, hvor lang tid der er gået. En separat integer -tæller holder styr på, hver gang der er gået et sekund således det kan formidles i serial-overvågningen. counter1 += 1.0 counter2 += 1; if(counter2 == hastighed && counter1 <= 20){ Serial.println("Tid: "+String((int)counter1)); counter2=0; Kortet opfanges For at registrere kortet, benyttes en while-løkke og den digitale port RFID. I forhold til programmet, bruges RFID.available() i løkkens betingelse, der giver et tal, hvis dét, der er sat til porten opfanger noget data. Dataene opfanges i et enkelt tegn ad gangen, indtil al informationen er blevet aflæst (da vil betingelsen ikke længere være sand). De enkelte 12
14 tegn kan aflæses vha. funktionen RFID.read() og lagres i en char variabel, hvorefter det hele stykkes sammen i én tekst variabel og beskriver det pågældende tag-id. Dette gøres med følgende kode: while(rfid.available() >0){ c = RFID.read(); msg += c; Tjekker og registrerer tag-id For at holde styr på alle registrerede tags samles de i en string variabel. Der bruges her en if-statement for at sikre, at det samme tag ikke bliver registreret to gange: if(elever.indexof(msg) >=0){ else{ elever += msg; Først tjekkes der, om det læste tag-id er en del af de allerede-registrerede ved at bruge.indexof( )-funktionen, der sammenligner teksten i parentesen med teksten i funktionens variabel. Hvis ikke det pågældende tag-id er en del af de registrerede ID, så tilføjer programmet det i den efterfølgende else-statement. Ankommet eller gået Som beskrevet i det tidligere flowdiagram, så skal programmet nu evaluere, hvorvidt eleven er på vej ind eller ud af undervisningen, og hvorvidt eleven kommer for sent eller går for tidligt. Dette opnås ved at bruge en overordnet if-statement samt flere sub-statements. En if-statement sammenligner det gældende tag-id med listen over de ID, som er tilstede i undervisningen (string-variablen ankommet ) ved igen at bruge.indexof()-funktionen. if(ankommet.indexof(msg) >=0){ Er eleven allerede tilstede (det gældende tag-id er en del af variable ankommet ), skal elevens ID fjernes fra variablen. Dette gøres ved at lokalisere positionen af det pågældende ID i variablen, og skære de to bider af variablen omkring ID et væk, for at sætte dem sammen igen. Derved fås den samme variabel uden det gældende ID. Hertil gøres der brug af, at de det bruge tags har et ID på 13 tegn. 13
15 int pos=ankommet.indexof(msg); msg=""; msg += ankommet.substring(0,pos); msg += ankommet.substring(pos+12,ankommet.length()); ankommet=""; ankommet += msg; Dette fjerner eleven fra databasen over ankommet elever. Herefter skal programmet vurdere, hvorvidt eleven forlader lokalet før undervisningen er slut. Dette gøres ved at gøre brug af en simpel if-statement samt programmets tidstæller: if(ankommet.indexof(msg) >=0){ int pos=ankommet.indexof(msg); msg=""; msg += ankommet.substring(0,pos); msg += ankommet.substring(pos+12,ankommet.length()); ankommet=""; ankommet += msg; if(counter1<20 && counter1 > 10) Serial.println("Elev "+String(elevnummer)+" er gaaet foer tid"); //Vurderer om eleven går for tidligt else Serial.println("Elev "+String(elevnummer)+" er gaaet"); Er eleven ikke ankommet til undervisningen vil betingelsen i den overordnede if-statement være falsk, og den fortsætter derfor til en else-statement. Her skal eleven tilføjes til ankommet -variablen, og programmet skal vurdere, vha. af en if-statement, hvorvidt eleven kommer til tiden eller for sent. else{ if(counter1 < 20){ ankommet += msg; if(counter1>10) Serial.println("Eleven er ankommet for sent"); else Serial.println("Elev er ankommet"); else Serial.println("Timen er slut - eleven er ikke blevet registreret"); Hvis timen er slut, er der ingen grund til at eleven bliver registreret i det permanente system, og eleven bliver derfor ignoreret. 14
16 Fraværsregistreringen Programmet bearbejder alle elevers fravær, hver gang det overordnede void loop gentages. Dette gøres ved at tildele alle elever i string -variablen ankommet et antal sekunders tilstedeværelse, afhængigt af frekvensen på løkken. Ved at identificere hvert tag (eller hver elev) med et nummer, kan de tildeles separat og personligt tilstedeværelse ved at gøre bruge af en float-variabel med et array. Elevnumrene virker som et indeksnummer i denne variabel, således man kan få adgang til den enkelte elevs tilstedeværelse. float var[4]; var[0] = 1; var[1] = 2; var[3] = 5; Elevnumrene kan produceres ud fra string-variablen, der indeholde listen over alle registrerede elever. Da hvert ID består af 13 tegn, kan der for hvert 13. tegn udledes et nummer, som er nummeret til det pågældende ID: string s; int elevnummer = 0; s = elever.substring(elevnummer*12, (elevnummer+1)*12); Svarer elevnummer 0 til 1, så vil dette udlede det første ID i listen over elever. Ved at øge int-variablen (altså elevnummeret) kan man finde et ID til en vilkårlig elev. Ved at bruge denne model og en array variabel sammen med for-løkke kan man opbygge en funktion, der kan vurdere elevernes tilstedeværelse. Benytter vi en float-variabel ved navn attendance kan den samlede kode for registrering af tilstedeværelse for eleverne beskrives ved hjælp af dette: if(counter1 >= 10.0 && counter1 < 20.0){ for(int i=0; i<=(elevantal-1); i++){ s = elever.substring(i*12, (i+1)*12); if( ankommet.indexof(s) >= 0){ attendance[i] += 0.25; Optælling af tilstedeværelse (for-løkke) 15
17 For hver gentagelse af den overordnede void-løkke, tjekkes tiden, og hvorvidt undervisningen er slut. Er undervisningen slut (der er gået 20 sekunder) stoppes tælleren ved at være styret af if-statements, og oversigten over fravær formidles via Serial.print() og en for-løkke. if(counter1==20){ Serial.println("Undervisningen er slut"); Serial.println(""); Serial.println("Oversigt over fremmoede for alle elever:"); for(int i=0; i<=(elevantal-1); i++){ Serial.println("Elev "+String(i+1)+ ": "+String((int)(attendance[i]*10.0))+"%"); Test Både under og efter udviklingen, er produktet blevet testet vha. forskellige metoder. Hvordan disse tests er blevet udført, samt deres formål, er beskrevet herunder. Under udviklingen I sammenhæng med udviklingen af produktet blev der udført adskillige tests, som skulle sikre, at produktet blev udviklet i den ønskede retning. Dette indebar at programmet løbende blev kompileret og overført til Arduino en for at blive testet, inden udviklingen fortsatte til næste stadie. Disse tests sikrer at programmets enkelte dele fungerer fejlfrit, således der ikke opstår større fejl i programmets helhed og at de i så fald let kan lokalisere og rettes. Arduino-softwaren kan lokalisere syntaksfejl i programmet under kompileringen, men for at lokalisere logic-errors benyttes softwarens Serial.print() samt Serial-overvågning. Ved at programmet informere vha. en tekstbesked at en vis handling er udført, kan der let holdes styr på, hvilke dele af programmet, der fungerer og hvor eventuelle fejl befinder sig. Denne testmetode blev f.eks brugt til udviklingen af den if-statement, der skal fjerne et pågældende tag fra listen over ankommet elever. 16
18 Denne funktion (Serial.println(ankommet);) printer listen over de resterende tag-id efter det pågældende ID er blevet fjernet, så det kan vurderes om det er blevet fjernet rigtigt. Test af det færdige produkt Det endelige produkt er blevet testet ved at køre en Serial-overvågning af programmet mens det kører og bliver brugt. Et eksempel på overvågningen af sådan en test kan ses til højre, hvor 3 elever løbende bliver registreret i systemet. Testen viser at eleverne bliver registreret korrekt, og at de bliver tildelt den rigtige status på baggrund af deres daværende status, når de registreres. Denne test givet et eksempel af det færdige produkt uden nogen former for test-print brugt af programmøren. Ændre på hastigheden Frekvensen af void-loopet kan justeres, hvilket er implementeret, da det har betydning for, hvor ofte der tjekkes, om et forsøger at blive læst. Der udføres tests ved at ændre på hastigheden: - I eksemplet programmets totale forløb er void-loopet sat til at gentage sig selv 2 gange i sekundet. Der ses her, at elev 1, efter 18 sekunder, forlader undervisningen for at ankomme igen med det samme. 17
19 - I denne test sættes frekvensen til 4 gentagelser i sekundet. Dette giver samme resultat som den forrige, dog forværres problemet. - Sættes frekvensen til én gentagelse i sekundet, opstår samme problem på trods af, at kortet fjernes inden den bør læses igen. Denne test med at justere hastigheden giver et indblik i, at produktet blot er en prototype. På baggrund af resultaterne, tyder det på, at produktet denne ikke umiddelbart skyldes variationen i hastigheden, men snarer en anden fejl i programmet. Diskussion Dette udviklede produkt er blot en prototype af en del at et større koncept, der kan løse den stillede problemformulering. Grundet dette, har produktet visse mangler, der gør at det ikke umiddelbart er en funktionel løsning. Det kan dog stadig overvejes, hvilke ting, der kan forbedres på produktet og hvilke ting der skal til for netop at gøre det til en funktionel løsning. Produktet er tiltænkt et større system, hvor der skal placeres læsere i adskillige lokaler, som sender data til skolens Lectio, hvor den nuværende fraværsregistrering foregår. Men det fysiske produkt kommunikerer den indsamlede og behandlede data med forbrugeren i gennem IDE-softwaren, hvilket gør at Arduino en er nødt til at være forbundet direkte til en computer. Produktet er derfor ikke særlig praktisk, og der gøres ikke fuld brug af Arduino ens funktioner. En måde at optimere dette på ville være at tilføre Arduino en en mobil strømkilde samt en, eventuelt trådløs, forbindelse til en større database. Dette vil give mulighed for at produktet netop kan videresende de bearbejdede data direkte til skolens Lectio og justere elevfraværet. Samtidigt kan der hentes information omkring modulerne fra Lectio, således programmet kan tilpasse tider og evaluere, hvorvidt eleverne kommer for sent til et modul eller ej. Her viser produktet derimod, hvordan dataene kan bearbejdes på en hensigtsmæssigmåde, og hvordan en lagring og brug af forskellige ID kan udføres. 18
20 På trods af adskillige overvejelser af forskellige mulige scenarier, der kan opstå i sammenhæng med systemet, er der enkelte mangler. Mest åbenlyst er det et problem, at når undervisningen er slut, så er det ikke påkrævet, at man registrerer sig igen. Dette betyder, at man kan registrere sig som ankommet til tiden og forlade lokalet uden at komme tilbage og man bliver vurderet som at være tilstedeværende i hele modulet. Manglet blev først opdaget efter at produktet blev erklæret færdigt, og det blev derfor ikke rettet. Hvis det skulle rettes, ville det kunne gøres ved at forlænge den til programmet er funktionelt i, og indføre en periode efter timens afslutning, hvori elever skulle være registreret ud. Ved hjælp af en if-statement kan tiden vurderes, og en anden ifstatement kan tjekke om eleverne er en del af ankommet string-variablen, og ud fra dét vurdere om de har registreret sig ud. Som dokumenteret i test-afsnittet, blev der fundet få problemer og fejl i programmet, der hovedsageligt bestod af problemer i aflæsningen af tag-id. Hvorfor fejlen opstår er usikkert, men det antages at det stammer fra læseren, som opfanger kortet som nyt inden man når at fjerne det. Dette er dog ikke sikkert, da problemet fortsatte efter at sætte frekvensen af loopet op. Hvordan dette problem kan løses er uklart, men formodentlig kan man, ved at indsætte en pause for det pågældende ID efter registrering, forhindre kortet i at blive læst igen. Eksempelvis kan det gøres ved at forhindre kort placeret i en string-variabel i at blive læst vha. en if-statement. Kortet kan efter at blive læst første gange indsættes i denne variabel, og efter få sekunder fjernes fra den igen. Ser man bort fra denne fejl i programmet, så antages det for at være stabilt og fejlfrit. Kompileringen forekommer uden problemer og programmer udfører opgaverne således de er tiltænkt. Da programmet kun forventes at være funktionelt i en kort periode (20 sekunder), er det uvist, hvorvidt der vil forekomme run time errors, hvis det f.eks. skulle køre en hel dag i træk. På trods af, at programmet umiddelbart er fejlfrit, er det muligt, og forventet, er det kan optimeres i forhold til længde, og derved størrelse og hastighed. Dog vil det kræve yderligere indblik i Arduino s muligheder og funktioner for at kunne udføre en optimering på produktet, hvilket der hverken har været resurser eller viden til. 19
21 Konklusion På trods af at produktet blot er tiltænkt som en tidlig prototype på et potentielt system, formår det at eksemplificere, hvordan sådan et system kan udføres. Her hentydes til adskillige af produktets funktioner, såsom tidsbestemmelse i forhold til moduler samt vurderinger af de enkelte elevers fraværsprocent. Programmet gør brug af en bred variation af både kompliceret og simple programsætninger og funktioner, samt inddragelse af biblioteker. På den måde kommer produktet bredt omkring programmeringsfaget. Da produktet ikke forventes at implementeres på nuværende stadie, er det åbenlyst, at det besidder visse mangler, såsom kommunikation med en online database og en automatisering af undervisningstider. Mange mangler har indflydelse både på produktets funktioner, men også hvor flydende disse funktioner udføres. Dette betyder også, at produktet ikke er vurderet som at værende fejlrit og det kan derfor besidde ukendte run time errors, samt uhensigtsmæssige funktioner og kodeelementer. En implementering af det endelige produkt, som det er tiltænkt, vil overlade ansvarer for de enkelte elevers fravær til dem selv, og derved skabe e mere flydende og mobil registrering af elevernes tilstedeværelse i undervisningen. Havde der været flere resurser i form af tid, såvel som havde de været administreret anderledes, ville det have været muligt at udvikle et mere funktionelt produkt i forhold til at kunne spille sammen med en online database (Lectio). Dette kunne også have resulteret i at flere fejl i programmet ville blive rettet, samt mangler blive tilføjet. Men på trods af dette, så er jeg som elev, tilfreds med resultatet af mit arbejde, og jeg udviklede ikke hverken mere eller mindre end, hvad jeg oprindeligt havde tiltænkt da jeg igangsatte projektet. 20
22 Bilag Bilag 1 Produktkode, inklusiv kommentarer (software) Se vedlagt mappe Programmet, hvori der ligger en.ino-fil. Åben filen vha. af Arduinosoftwaren. Bilag 2 Arduino og RFID-system (hardware) Opsætningen mellem chippen og Arduino er som følgende: Pin 5 -> 5v, Pin 4 -> Ground, Pin 1 -> Digital Pin 2. Billederne stammer fra ( ), og er den samme opstilling som benyttet i dette produkt. 21
Optimering af fraværsregistrering
Journal Optimering af fraværsregistrering Eksamensprojekt i Programmering C, klasse 3.4, 2011 AFLEVERET 09-05-2014 Indhold Abstract... Fejl! Bogmærke er ikke defineret. Problemformulering... 2 Produktet...
Læs mereProgrammering C Eksamensprojekt. Lavet af Suayb Köse & Nikolaj Egholk Jakobsen
Programmering C Eksamensprojekt Lavet af Suayb Köse & Nikolaj Egholk Jakobsen Indledning Analyse Læring er en svær størrelse. Der er hele tiden fokus fra politikerne på, hvordan de danske skoleelever kan
Læs mereArduinostyret klimaanlæg Afsluttende projekt informationsteknologi B
Arduinostyret klimaanlæg Afsluttende projekt informationsteknologi B Udarbejdet af: Mathias R W Sørensen, klasse 3.4 Udleveringsdato: 02-03-2012 Afleveringsdato: 11-05-2012 IT-vejleder: Karl G. Bjarnason
Læs mereArduinostyret klimaanlæg Afsluttende projekt programmering C
Arduinostyret klimaanlæg Afsluttende projekt programmering C Udarbejdet af: Mathias R W Sørensen, klasse 3.4 Udleverings-dato: 02-03-2012 Afleverings-dato: 11-05-2012 Programmeringvejleder: Karl G. Bjarnason
Læs mereArduino Programmering
Microcontroller, Arduino I teknologi skal vi lære at lave programmer til uc for at have muligheden til eksamen at kunne lave intelligente el-produkter. I hvert fald skal vi have set mulighederne, og forstået
Læs mereIndholdsfortegnelse Indledning... 2 Projektbeskrivelse... 2 Dette bruger vi i projektet... 2 Komponenter... 2 Software... 2 Kalibrering...
Indholdsfortegnelse Indledning... 2 Projektbeskrivelse... 2 Dette bruger vi i projektet... 2 Komponenter... 2 Software... 2 Kalibrering... 3 Kildekoden... 4 Variabler... 4 Setup... 4 Loop... 4 Indledning
Læs mereEnes Kücükavci Roskilde Tekniske Gymnasium 20 05 2010 Mathias Turac Informationsteknolog B Vejleder: Karl Bjranasson Programmering C
Indhold Indledning(Enes)... 2 Problemstilling (Enes)... 2 Teori (Enes)... 2 Løsningsforslag (Enes)... 4 RFID relæet (Mathias)... 6 Krav (Enes og Mathias)... 8 Målgruppen (Mathias)... 8 Rekvirent... 8 Implementering(Mathias)...
Læs mereMicrocontroller, Arduino
Microcontroller, Arduino Programmerbar elektronik. uc Vi skal lære at lave programmer til uc for at kunne lave el-produkter. Forstå princippet i programmering af en uc og se mulighederne. Programmeringen
Læs mereMichael Jokil 11-05-2012
HTX, RTG Det skrå kast Informationsteknologi B Michael Jokil 11-05-2012 Indholdsfortegnelse Indledning... 3 Teori... 3 Kravspecifikationer... 4 Design... 4 Funktionalitet... 4 Brugerflade... 4 Implementering...
Læs mereArduino kursus lektion 3:
Arduino kursus lektion 3: I denne lektion skal vi lave få en diode til at fade op og ned! Herefter skal denne diode bruges sammen med en lysføler til at lave en smart lysfølsom diode som selv justere lyset
Læs mereKlasse 1.4 Michael Jokil 03-05-2010
HTX I ROSKILDE Afsluttende opgave Kommunikation og IT Klasse 1.4 Michael Jokil 03-05-2010 Indholdsfortegnelse Indledning... 3 Formål... 3 Planlægning... 4 Kommunikationsplan... 4 Kanylemodellen... 4 Teknisk
Læs mereLectio. Introduktion til Lectio Elevmodul. MaCom A/S Vesterbrogade 48, 1. 1620 København V Telefon: 33 79 79 00
Lectio Introduktion til Lectio Elevmodul 1992-2006 MaCom A/S MaCom A/S Vesterbrogade 48, 1. 1620 København V Telefon: 33 79 79 00 Telefax: 33 79 79 84 E-mail: mail@macom.dk Internet: www.macom.dk Baggrund
Læs mereAf: Safa Sarac Klasse 3.4 Skole: Roskilde Tekniske Gymnasium, HTX Vejleder(e): Karl B Dato: 26. marts 2012
Projektbeskrivelse til eksamen i informationsteknologi B og Programmering C - Projektnavn: Privat mailer Af: Safa Sarac Klasse 3.4 Skole: Roskilde Tekniske Gymnasium, HTX Vejleder(e): Karl B Dato: 26.
Læs mereIT sikkerhed Whitelist
IT sikkerhed Whitelist IT sikkerhed Whitelist Skrevet af: Anchelika V. Skjødt og Lasse B. Troelsen Kom/IT A Klasse 3.5 Side 1 af 7. Spam facts Spam er et af de største problemer med internettet på nuværende
Læs mereRF-ID Kompendium. RF-ID & Radio control. Dette kompendium indeholder materiale om RF-ID. Materialet er meget foreløbigt.
Senest redigeret 8. april 2014 RF-ID Kompendium Dette kompendium indeholder materiale om RF-ID Materialet er meget foreløbigt. Derfor modtages rettelser og forslag meget gerne. ------------------------
Læs mereMicrocontroller, Arduino
Microcontroller, Arduino Kompendium til Arduino-programmering i Teknologi. Vi skal lære at lave programmer til uc for at kunne lave el-produkter. Vi skal forstå princippet i programmering af en uc og se
Læs mereCykel Score når chips sætter gang i cyklisterne
Artikel til Vejforum 2011 Cykel Score når chips sætter gang i cyklisterne Civilingeniør Troels Andersen, Fredericia Kommune, troels.andersen@fredericia.dk CykelScore er et helt nyt kampagnekoncept til
Læs mereBetjening af SmartTID læseren version 2.0
Betjening af SmartTID læseren version 2.0 SmartTID læseren bruges til at registrere komme og gå tider, men kan også bruges til at registrere pause samt tid på opgaver. Generel anvendelse Al betjening foregår
Læs mere5/11/2015. Programmering. Hussein Al-Saidi ROSKILDE TEKNINSK GYMNASIE VEJLEDER: CHRISTOFFER S.
5/11/2015 Hussein Al-Saidi ROSKILDE TEKNINSK GYMNASIE VEJLEDER: CHRISTOFFER S. 1 Contents... 0 Indledning... 3 Analyse... 3 Problemformulering... 3 Målgruppe... 3 Løsningsforslag... 3 Detaljeret beskrivelse
Læs mereElevforudsætninger I forløbet indgår aktiviteter, der forudsætter, at eleverne kan læse enkle ord og kan samarbejde i grupper om en fælles opgave.
Undersøgelse af de voksnes job Uddannelse og job; eksemplarisk forløb 0-3.klasse Faktaboks Kompetenceområde: Fra uddannelse til job Kompetencemål: Eleven kan beskrive forskellige uddannelser og job Færdigheds-
Læs mereVisualiseringsprogram
Visualiseringsprogram Programmering C - eksamensopgave Rami Kaddoura og Martin Schmidt Klasse: 3.4 Vejleder: Karl Bjarnason Roskilde Tekniske Gymnasium Udleveringsdato: 02-03-2012 Afleveringsdato: 11-05-12
Læs mereProjekt Når maskinen reagerer - Dataopsamling og aktuatorer
Projekt Når maskinen reagerer - Dataopsamling og aktuatorer Af Nikki Mitchell og Jacob Thuesen Nikki Mitchell og Jacob Thuesen Side 1 af 20 08-02-2010 Indledning... 3 Formål... 3 Teori... 4 Arduino opgave
Læs mereTest af It-komponent
Test af It-komponent I programmeringssproget Java Programmet Login service Elev: Mads Funch Klasse 2.4 Mat, It, Programmering Skole: Roskilde Tekniske Gymnasium HTX Underviser: Karl Dato: 31-08-2016 Side
Læs mereAutomatisering Af Hverdagen
Automatisering Af Hverdagen Programmering - Eksamensopgave 10-05-2011 Roskilde Tekniske Gymnasium (Kl. 3,3m) Mads Christiansen & Tobias Hjelholt Svendsen 2 Automatisering Af Hverdagen Indhold Introduktion:...
Læs mereEKSEMPEL PÅ ELEVOPGAVE TIL ARBEJDET MED PROGRAMMERING AF ARDUIONO MED LED BÅND
EKSEMPEL PÅ ELEVOPGAVE TIL ARBEJDET MED PROGRAMMERING AF ARDUIONO MED LED BÅND side 1 LED bånd I dette opgavesæt skal du arbejde med et LED bånd og en Arudino. Diagrammet viser LED båndets tilslutningen.
Læs mereSpil Rapport. Spil lavet i GameMaker. Kevin, Mads og Thor 03-02-2011
Spil Rapport Spil lavet i GameMaker Kevin, Mads og Thor 03-02-2011 Indholdsfortegnelse Indledning... 2 HCI... 2 Planlægning / Elementær systemudvikling... 2 Kravspecifikationer... 4 Spil beskrivelse...
Læs mereMircobit Kursus Lektion 3 (Du skal her vælge Lets Code Og nederst Microsoft Block Editor.)
Mircobit Kursus Lektion 3 http://microbit.org/ (Du skal her vælge Lets Code Og nederst Microsoft Block Editor.) I sidste lektion var der en opgave man selv skulle prøve at løse. Man skulle lave et tabel
Læs mereOvervågningskamera. ~Af Svend, Valdemar og Frederik~
Lavet af Svend, Valdemar og Frederik 2.3 HTX - Roskilde Overvågningskamera ~Af Svend, Valdemar og Frederik~ I dette forløb har vi arbejdet med overvågningskameraer. Det handlede om at lære, hvordan et
Læs mereProgram Dokumentation PC Software Skrevet af. Gruppen. Version 1.0
Program Dokumentation PC Software Skrevet af Gruppen. Version 1.0 Indholds fortegnelse 1. INDLEDNING...3 1.1. FORMÅL...3 1.2. REFERENCER...3 1.3. VERSIONSHISTORIE...3 1.4. DEFINITIONER...3 1.5. DOKUMENTATIONENS
Læs mereIT projekt uge 4 9. Marie Vinter, Roskilde Tekniske Gymnasium, klasse 2.6 IT, bw, uge 4 9 2013
PHP-Projekt IT projekt uge 4 9 Marie Vinter, Roskilde Tekniske Gymnasium, klasse 2.6 IT, bw, uge 4 9 2013 4-3-2013 Indholdsfortegnelse Indledende afsnit... 2 Brainstorm... 2 User stories... 2 Problemformulering...
Læs mereTinkerCad - Arduino simulator
TinkerCad - Arduino simulator Dokument fra H.C.Ørsted Gymnasiet, delt i HTX-Strømspassergruppen. ( Lidt modificeret / Valle ) På tinkercad.com kan man både arbejde med 3D emner, men også elektroniske kredsløb.
Læs mereKom godt i gang med Fable-robotten
Kom godt i gang med Fable-robotten 1. Først skal du installere programmet på din computer. Gå ind på shaperobotics.com og under support vælger du download: Her vælger du, under PC App om du kører Windows
Læs mereGuide til din computer
Guide til din computer Computerens anatomi forklaret på et nemt niveau Produkt fremstillet af Nicolas Corydon Petersen, & fra Roskilde Tekniske Gymnasium, kommunikation & IT, år 2014 klasse 1.2 12-03-2014.
Læs mereKomunikation/It C Helena, Katrine og Rikke
HTX Afsluttende projekt E-learning Komunikation/It C Helena, Katrine og Rikke 1.1 01-05-2013 Systemudvikling Indledende aktiviteter Kommunikationsplanlægning for projektet, Laswells fem spørgsmål. o Hvem
Læs mereForberedelse. Forberedelse. Forberedelse
Formidlingsopgave AT er i høj grad en formidlingsopgave. I mange tilfælde vil du vide mere om emnet end din lærer og din censor. Det betyder at du skal formidle den viden som du er kommet i besiddelse
Læs mereProcesbeskrivelse - Webprogrammering
Procesbeskrivelse - Webprogrammering Indholdsfortegnelse Forudsætninger... 1 Konceptet... 2 Hjemmesiden... 2 Server-side... 3 Filstrukturen... 3 Databasehåndtering og serverforbindelse... 4 Client-side...
Læs mereSSI 6000.0400 GSM Fjernbetjenings system for porte/garage døre
1 SSI 6000.0400 GSM Fjernbetjenings system for porte/garage døre Vejledning SSIHuset v/svane Electronic ApS Arildsvej 27, Gråmose, DK-7442 Engesvang mail: ssi@svane-el.dk http: svane-el.dk 2 System for
Læs mereIT opgave. Informationsteknologi B. Vejleder: Karl. Navn: Devran Kücükyildiz. Klasse: 2,4
IT opgave Informationsteknologi B Vejleder: Karl Navn: Devran Kücükyildiz Klasse: 2,4 Dato:03-03-2009 1 Indholdsfortegnelse 1. Indledning... 3 2. Planlægning... 3 Kommunikationsplanlægning... 3 Problemstillingen...
Læs mereFable Kom godt i gang
Fable Kom godt i gang Vers. 1.3.1 Opdateret: 29-08-2018 Indholdsfortegnelse 1. Installer programmet 3 2. Pak robotten ud 5 3. I gang med at programmere 6 4. Programmér Fable til at køre fra 90 til -90
Læs mereListen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:
Denne guide er oprindeligt udgivet på Eksperten.dk SQL og ASP En artikel omkring simpel SQL og hvordan disse opbygges, udformes og udføres, sådan at man kan få et brugbart resultat i ASP. Dette ligefra
Læs mereBrugeradfærd i idræts- og kulturhuse - Målinger med RFID teknologi Suenson, Valinka
Aalborg Universitet Brugeradfærd i idræts- og kulturhuse - Målinger med RFID teknologi Suenson, Valinka Publication date: 2011 Document Version Accepteret manuscript, peer-review version Link to publication
Læs mereAVR MP3 29-05-08 05576 Ingeniørhøjskolen i Århus Michael Kaalund
AVR MP3 29-05-08 Indholdsfortegnelse 1 Introduktion...2 2 Udviklingsmiljø...2 3 Beskrivelse af systemet...3 3.1 VS1001k...3 3.2 MP3 file formatet...6 4 Konklusion...6 5 Litteratur liste...6 6 Illustrations
Læs mereIt-sikkerhedstekst ST8
It-sikkerhedstekst ST8 Logning til brug ved efterforskning af autoriserede brugeres anvendelser af data Denne tekst må kopieres i sin helhed med kildeangivelse. Dokumentnavn: ST8 Version 1 Maj 2015 Logning
Læs mereFable Kom godt i gang
Fable Kom godt i gang Opdateret: 26-03-2018 Indholdsfortegnelse 1. Først skal du installere programmet på din computer 3 2. Når programmet er installeret er du klar til at pakke robotten ud 4 3. Nu er
Læs mereIndholdsfortegnelse for kapitel 2
Indholdsfortegnelse for kapitel 2 Kapitel 2. Analyse.......................................................... 2 Analyse af 2.1...................................................... 2 Analysen af Database.................................................
Læs mereSoftware Dokumentation
Software Dokumentation Jan Boddum Larsen Teknologi B og A på HTX Dokumentation af software i Teknologi I samfundet sker der en bevægelse mod mere digitale løsninger i teknologi. Det betyder at software
Læs mereMini SRP. Afkøling. Klasse 2.4. Navn: Jacob Pihlkjær Hjortshøj, Jonatan Geysner Hvidberg og Kevin Høst Husted
Mini SRP Afkøling Klasse 2.4 Navn: Jacob Pihlkjær Lærere: Jørn Christian Bendtsen og Karl G Bjarnason Roskilde Tekniske Gymnasium SO Matematik A og Informations teknologi B Dato 31/3/2014 Forord Under
Læs mereFremtiden er her PRY-ID. RFID KABELTEKNOLOGI Til identifikation og dokumentation af kabelinstallationer
Fremtiden er her PRY-ID RFID KABELTEKNOLOGI Til identifikation og dokumentation af kabelinstallationer Fremtidens kabler med RFID chips Har du nogensinde tvivlet på, om du har fundet det rigtige kabel?
Læs mereStyringsteknik. Et projekt i faget styringsteknik. En rapport af Rune Zaar Østergaard
Styringsteknik Et projekt i faget styringsteknik. I1 & Q1 I2 En rapport af Rune Zaar Østergaard Styringsteknik 2007 Indholdsfortegnelse 1.0 Formål...3 2.0 Indledning (min ide)... 3 3.0 Problemdefinition...
Læs mereLæringsprogram. Christian Hjortshøj, Bjarke Sørensen og Asger Hansen Vejleder: Karl G Bjarnason Fag: Programmering Klasse 3.4
Læringsprogram Christian Hjortshøj, Bjarke Sørensen og Asger Hansen Vejleder: Karl G Bjarnason Fag: Programmering Klasse 3.4 R o s k i l d e T e k n i s k e G y m n a s i u m Indholdsfortegnelse FORMÅL...
Læs mereCANSAT & ARDUINO step by step
CANSAT & ARDUINO step by step Jens Dalsgaard Nielsen SATLAB Aalborg Universitet Danmark jdn@space.aau.dk 1/51 Arduino CANSAT - MÅL At måle ved hjælp af sensor temperatur, tryk, acceleration, CO2, lys,...
Læs mereOversigt over kriterier for klarmelding af bølge 2-løsninger i 2013
Notat Oversigt over kriterier for klarmelding af bølge 2-løsninger i 2013 Baggrund Frem mod 1. december 2013 gennemføresen klarmeldingsproces med tre statusrapporteringer i hhv. maj, oktober og november.
Læs mereSpecialiseringen Rapport Lavede Af Rasmus R. Sørensen Side 1 af 6
Side 1 af 6 Indholdsfortegnelse INDHOLDSFORTEGNELSE 1 INTRO 3 STARTEN AF SPECIALISERINGEN 3 ANKOMST TIL SKOTLAND 4 DATABASER 5 NETVÆRK 5 INTERAKTION 5 AFSLUTNING AF SPECIALISERINGEN 5 KONKLUSION 6 Side
Læs mereStart på Arduino og programmering
Programmering for begyndere Brug af Arduino Start på Arduino og programmering EDR Hillerød Knud Krogsgaard Jensen / OZ1QK 1 Start på Arduino og programmering Sidste gang (Introduktion) Programmeringssproget
Læs mereKaren Marie Lei, Sektionsleder og civilingeniør, COWI A/S klei@cowi.dk
Evaluering af pilotprojekt Variable tavler for cyklister ved højresvingende lastbiler Forfattere: Michael Bloksgaard, Ingeniør, Århus Kommune mib@aarhusdk Karen Marie Lei, Sektionsleder og civilingeniør,
Læs mere1.1 1.2 2.1 2.2 2.3 3.1 3.2 INTRODUCING YOUR MOBILE PHONE Learn about your mobile phone s keys, display and icons. Nøgler Fra forenden af apparetet vil du observere følgende elementer: (Se 1.1 Side 3)
Læs mereSvendeprøve Projekt Tyveri alarm
Svendeprøve Projekt Tyveri alarm Påbegyndt.: 8/2-1999 Afleveret.: 4/3-1999 Projektet er lavet af.: Kasper Kirkeby Brian Andersen Thomas Bojer Nielsen Søren Vang Jørgensen Indholds fortegnelse 1. INDLEDNING...3
Læs mereHvad skal du vide for at bygge din egen computer?
Hvad skal du vide for at bygge din egen computer? Kender du alle de her dele og hvad de gør godt for? Er du mellem 11 og 16 år, og tænker på at sammensætte din egen computer? Så er denne her guide lige
Læs mereAndreas Lauge V. Hansen klasse 3.3t Roskilde HTX
IT -Eksamen Andreas Lauge V. Hansen klasse 3.3t Roskilde HTX [Vælg en dato] Indhold Indledning... 2 Teori... 3 Hvorfor dette design... 4 Produktet... 4 Test og afprøvning... 9 Konklusion... 10 Indledning
Læs mereROSKILDE TEKNISKE GYMNASIUM. Læringsprogram. Lommeregner
ROSKILDE TEKNISKE GYMNASIUM Læringsprogram Lommeregner Programmering Malte Fibiger, Rasmus Ketelsen, Nicojal Jensen og Leon Bøgelund, Klasse 3.36 04-12-2012 Indholdsfortegnelse Indledende afsnit... 3 Problemformulering...
Læs mereDESIGN4OEE ANDROID MANUAL V.8
DESIGN4OEE ANDROID MANUAL V.8 OmniFleet til Android Version 8.3.0 OmniFleet til Android... 2 Introduktion... 3 Forudsætninger... 3 Download og installation... 3 Hovedmenuen... 4 Opsætning... 4 Køretøjsliste...
Læs merePostregistrering Eksamensprojekt i Programmering C Lavet af: Frantz Furrer Svendborg Erhvervsskole HTX Vejleder: Claus Borre
Postregistrering Eksamensprojekt i Lavet af: Frantz Furrer Vejleder: Claus Borre Side af 4 Titelblad: Skolens navn: Svendborg Tekniske Gymnasium - Rapport: Rapportens titel: Postregistrering Side antal:
Læs mereFremtidens kassesystem
Fremtidens kassesystem Gør hverdagen nemmere, og giver et smil på læben. Fremtidens kassesystem Dette projekt er lavet af Emil Toft, Thomas Gandrup Sørensen & Omran El-Habet (9. klasse, Antvorskovskole).
Læs mere2. SEMESTER PROJEKT 3 INTERAKTIONSUDVIKLING
2. SEMESTER PROJEKT 3 INTERAKTIONSUDVIKLING Baggrund Udgangspunktet er projekt 2, dvs. en blog om cupcakes, hvor målgruppe, afsender og modtager allerede er defineret. Du bliver nu bedt om at udvikle et
Læs mereMircobit Kursus Lektion 4 (Du skal her vælge Lets Code Og herefter Block Editor.)
Mircobit Kursus Lektion 4 http://microbit.org/ (Du skal her vælge Lets Code Og herefter Block Editor.) I sidste lektion var der en opgave man selv skulle prøve at løse. I skulle lave et stop ur man kunne
Læs mereVed indkøring påtrykkes en kendt amplitude (HUSK 50 ohms afslutning) og displayet aflæses.
/* Power Meter 2012 /* Rettet den 13.februar 2013 /* Version 1.2 /* Input medie er en AD8307, som forsynes fra Arduino Uno stabiliserede 5 volt. A/D input er på Arduino analog input pin A0 AREF er tilført
Læs mereMatematik A og Informationsteknologi B
Matematik A og Informationsteknologi B Projektopgave 2 Eksponentielle modeller Benjamin Andreas Olander Christiansen Jens Werner Nielsen Klasse 2.4 6. december 2010 Vejledere: Jørn Christian Bendtsen og
Læs mereDANSK SKOLEDATA APS. Tlf. 86 44 80 99 E-mail DSD@skoledata.dk DSA-Ventelisten
Indholdsfortegnelse Overordnet beskrivelse af programmets funktioner... 2 Log på... 2 Manuel oprettelse af elev.... 3 Optagelse af elever... 3 1 Gruppering og sortering af elever... 3 2 Udvælg aspiranter...
Læs mereUndervisningsbeskrivelse
Undervisningsbeskrivelse Programmering C ved mst Termin Juni 117 Institution Uddannelse Fag og niveau Lærer Hold Erhvervsskolerne Aars hhx Programmering C Michael Stenner (mst) 2-3g16 pro Forløbsoversigt
Læs mereVejledning til indberetningsløsning for statslige aktieselskaber m.v. www.offentlige-selskaber.dk
Vejledning til indberetningsløsning for statslige aktieselskaber m.v. www.offentlige-selskaber.dk 1 Offentlige-selskaber.dk s startside giver direkte adgang til at foretage en indberetning. Som en service
Læs mereHTX. Afsluttende projekt. E-learning Komunikation/It C Helena, Katrine og Rikke 1.1 01-05-2013
HTX Afsluttende projekt E-learning Komunikation/It C Helena, Katrine og Rikke 1.1 01-05-2013 Systemudvikling Indledende aktiviteter Kommunikationsplanlægning for projektet, Laswells fem spørgsmål. o Hvem
Læs mereUndervisningsbeskrivelse
Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Januar 2012 Institution Gymnasiet HTX Skjern Uddannelse Fag og niveau Lærer(e) Hold Htx Programmering C Henrik
Læs mereNetbaseret spørgeskemaundersøgelse
E-læringsmodul til samfundsfag i folkeskolen Netbaseret spørgeskemaundersøgelse It-færdighedsniveau: 1 2 3 4 5 Udarbejdet af: Hasse Francker Christensen Indhold af modulet Indholdsfortegnelse 1 - Hvorfor
Læs mereArduino Programmering
Microcontroller-programmering med Arduino I teknologi skal vi lære at lave programmer til en microcontroller for at have muligheden til eksamen at kunne lave intelligente el-produkter. I hvert fald skal
Læs mereBrugermanual 3D Webcam
Brugermanual 3D Webcam 2 Indholdsfortegnelse Kort introduktion... 4 Installation... 4 Hardware Installation... 4 Software Installation... 5 Forklaring til knapper... 6 Linse Focus... 6 3D Justering...
Læs mereHos Podconsultsbutik kan du finde vandpumpen i 3 udgaver, hvilket har betydning for hvordan du samler og forbinder pumpen til din Micro:bit.
Leg med vandpumper Hos Podconsultsbutik kan du finde vandpumpen i 3 udgaver, hvilket har betydning for hvordan du samler og forbinder pumpen til din Micro:bit. For nemheds skyld vil vi i denne guide kalde
Læs mereSKY. Kommunikations-IT. Alexander L, Anton og Mads Zillo
SKY Kommunikations-IT Alexander L, Anton og Mads Zillo Indhold i rapporten(uden sidetal) Funktionerer i programmet Brugervenlighed Fejlkilder/problemer undervejs Konklusion Design Ideen bag Game maker
Læs mereIndholdsfortegnelse Valg af opgave... 2 Introduktion... 2 Problem... 2 Målgruppe... 2 Afsender... 2 Budskab... 2 Kodning... 3 Effekt...
Indholdsfortegnelse Valg af opgave... 2 Introduktion... 2 Problem... 2 Målgruppe... 2 Afsender... 2 Budskab... 2 Kodning... 3 Effekt... 3 Information... 3 Programmering... 3 Design... 4 Brochure... 4 Hjemmeside...
Læs mereProgrammering af CS7002 GSM/GPRS modul Version 5
Comfort CSx75 Programmering af CS7002 GSM/GPRS modul Version 5 Introduktion CS7002 GSM/GPRS modulet er en fuldt integreret enhed som kan sende alarmer trådløst enten via GSM eller GPRS nettet. Der er desuden
Læs mereMircobit Kursus Lektion 1
Mircobit Kursus Lektion 1 I denne lektie skal vi se nærmere på den lille mini computer kaldt microbit. Egentlig kræver det at man har en fysisk microbit men man kan også næsten lave det samme med den simulator
Læs mereDANMARKS TEKNISKE UNIVERSITET
DANMARKS TEKNISKE UNIVERSITET Skriftlig prøve, 14. december 2018, 4 timer Side 1 af 18 Kursus navn: 02101 Indledende Programmering Kursus : 02101 Tilladte hjælpemidler: Ikke-digitale skriftlige hjælpemidler
Læs mereVi har valgt at analysere vores gruppe ud fra belbins 9 grupperoller, vi har følgende roller
Forside Indledning Vi har fået tildelt et skema over nogle observationer af gærceller, ideen ligger i at gærceller på bestemt tidspunkt vokser eksponentielt. Der skal nu laves en model over som bevise
Læs mereDette korte foredrag er opdelt i 3 dele: 1. ARDUINO i flere versioner, hvad er det? 2. DEMO-video 3. Din fremtidige Oscillator, SI5351A 4.
APPETITVÆKKEREN OZ6YM, Palle A. Andersen Efteråret 2017 Dette korte foredrag er opdelt i 3 dele: 1. ARDUINO i flere versioner, hvad er det? 2. DEMO-video 3. Din fremtidige Oscillator, SI5351A 4. DEMO-video
Læs mere1. Generelt om denne brugervejledning
Pro-Sec ApS. Yderholmvej 59. 4623 Lille Skensved. Version 02-2007 Indholdsfortegnelse 1. GENERELT OM DENNE BRUGERVEJLEDNING... 2 2. BRUGERE... 3 3. BRUGERE PROGRAMMERINGSTILSTAND... 4 4. ALARM-INDIKERING
Læs mereDet skrå kast, en simulation
Det skrå kast, en simulation Oplæg skrevet af Bartlomiej Rohard Warszawski den 5.november 29 Formål Eleven skal lave et program i Python, der udfører en simpel simulation af acceleration, hastighed, position,
Læs mereUndervisningsplan. Side 1 af 17. Termin Rybners Tekniske Gymnasium. Uddannelse. Fag og niveau. Informationsteknologi B
Undervisningsplan Termin 2014-2016 Institution Uddannelse Fag og niveau Lærer(e) Hold Rybners Tekniske Gymnasium HTX Informationsteknologi B Jeppe Moritz Led, Jens Ahlmann Hansen E13 Oversigt over undervisningsforløb
Læs mereDer er i det følgende taget små udklip fra rapporten: Bedst i test
SO - resumé Tekstil A: Bedst i test Elever: Tidsperiode: Periode: 5 semester Særfaglige mål: Projektet Bedst i test var et samspilsprojekt mellem teknik - faget, et eller flere af studieretningsfag og
Læs mereMaking digital life simple on this small planet
Making digital life simple on this small planet The Mission Verden er som altid i bevægelse, Onscope ser det som sin mission at skabe eller integrere det digitale workflow med den fysiske verden. Digitalisering
Læs mere