2014InfB24

From rtgkomArkiv
Jump to: navigation, search

Velkommen !!![edit]

Dette er klasse 2.4 side til Informationsteknologi B.

Vi kan finde læreplanen for faget her:

IT B på www.uvm.dk


/Mette Frost Nielsen

Styring af kamera vha Android App[edit]

Det første projekt handler om udvikling af en App til styring af et overvågningskamera.


Plan for perioden:

uge 33

to: Introduktion til faget og projektet. Første erfaring med AppInventor. Gruppedannelse: 3-4 i hver (da vi har 8 kameraer)


uge 34

ti: Få kameraet op og køre trådløst, så det kan styres fra en computer/smartphone. Følg vejledningen der medfølger kameraet. Iøvrigt feedback på kom/it afsluttende opgave.

to: Opstart af udvikling af App til styring af kameraet. Brainstorm til yderligere funktionalitet.


uge 35

ti: Videreudvikling af App. Fokus på læringsmål i projektet. Præsenter Studieplanen.

to: Færdigudvikling og afprøvning


uge 36

ti: Dokumentering og aflevering (Husk idrætsdag !)


Rejsebeskrivelser[edit]

I forbindelse med, at I skal på studietur til Barcelona, laver vi et projekt om rejsebeskrivelser. Projektet kommer til at indgå som en del af et samlet SO-studietursprojekt. IT-delen af projektet kan I læse om i det udleverede oplæg, som også findes på Lectio (Dokumenter for holdet)


Afleveringsfrist er tirsdag d. 21. oktober


Plan for perioden:

uge 36

to: Præsentation af oplæg, gruppedannelse, informationssøgning


uge 37

ti: Beskrivelse af afsender, samt krav til produkt, tidsplan, userstories (eXtremeProgramming)

Userstories, eXtremeProgramming:[edit]

 Som en del af eXtremeProgramming
 An Agile Introduction (lidt eksempler)
 Wiki

to: Roughs, design-principper/skabelon, brugergrænsefladen


uge 38-40: videreudvikling ud fra egen tidsplan


uge 41: studietur, hvor I indsamler dokumentation f.eks. i form af billeder/film og viden


uge 43

ma: dokumentering, læg billeder og film ind og gør klar til aflevering

ti: afleveringsdag - vi har ingen timer denne dag !!

Virtuelle niveauer[edit]

Når man beskriver et IT-system, opdeler man det ofte i tre virtuelle niveauer:

  • Datalaget
  • Logiklaget
  • Præsentationslaget

Eksponentielle modeller[edit]

Vi skal lave et projekt i samarbejde med matematik. Her får vi brug for viden om, hvordan vi programmere i Python.

Afleveringsfrist: 1. december 2014


Uge 43 torsdag: Python: installering, variable, strenge, integers, float, input fra brugeren, if-sætning og øvelse

Uge 44 mandag: while-løkker, algoritmer, kommentarer, funktioner og flere øvelser. Derudover introduktion til projektet

Uge 44 torsdag: Introduktion til VPython-modulet. Hent det her VPython.org og slå op i dokumentationen.

Uge 45 mandag: Videreudvikling ud fra projektgruppernes tidsplan

Uge 45 torsdag: Videreudvikling ud fra projektgruppernes tidsplan. Her er et link til hjælp, når du vil have brugeren til at indtaste en funktion: Brugerindtastet funktion

Uge 46 mandag:

Uge 46 fredag:

Uge 47 mandag:

Ugr 47 torsdag:

Uge 48 mandag:

Uge 48 fredag:


Licens på egne produkter: Creative Commons

Arduino[edit]

Forløbet med Arduinoer kommer til at forløbe i uge 49-51.

Vi skal lave et program, som tager hensyn til input fra omverdenen. Det gør vi ved hjælp af RFID tags.


Vi arbejder med de faglige mål:

  • redegøre for grundlæggende funktioner af it-komponenter (hardware og software) og samspillet mellem dem
  • vælge og bruge it-komponenter som værktøj til løsning af et problem med relation til elevens, uddannelsens, virksomheders og samfundets brug
  • realisere prototyper på it-systemer, herunder kunne installere, konfigurere og tilpasse relevante it-komponenter


Uge 49 torsdag

0. Forberedelse inden I kommer: Installer software til Arduinoen her: Arduino.cc.

1. Derefter skal I følge linket Getting Started with Arduino så I ender med at have Blink-eksemplet kørende.


Uge 50 mandag + torsdag

1. For at koble RFID læseren til, skal I følge dette link: How to connect Arduino and RFID

  Der er følgende ændringer til instruktionen:
  1.	Den grønne skal ikke sidde i TX-1, men i 2 (Digital 2 på Arduino Uno)
  2.	Det skal ikke stå NewSoftSerial som skal hentes ekstra, det er inkluderet nu og hedder SoftwareSerial
        Kode:
        #include <SoftwareSerial.h>
        #define ADD_TAG_CODE "400086E96F40"  //change this ID with your own card TAG
        #define DEL_TAG_CODE "400086E64565"
        SoftwareSerial RFID(2, 3);
  3.	Få vist din TAGs ID ved at fjerne kommentarsymbolet. Her kan du også aflæse ID på dit Add og Delete card og indskrive i koden.
        Fjern også kommentarsymbolet for den følgende print (msg.length()) . Koden skal blive ved med at være ukommenteret.


2. I skal arbejde videre med at få RFID systemet til at virke. Til sidst har I et system, hvor der er to kort som kan hhv give og tage adgang fra andre tags.


Uge 51 mandag + torsdag

1. Udvikl videre på jeres system, gerne med hensyn til en god brugeroplevelse. Kombiner f.eks. de to øvelser med blink og RFID, så lyset tændes, når man kommer med en tag, der har adgang og lyset slukker, hvis taggen ikke har adgang.

2. Skriv på jeres Studieweb, hvad formålet er med jeres system, hvilken situation skal det bruges og hvordan skal det implementeres. Tag desuden billeder/film af jeres system og gør film og den kommenterede kode tilgængelig fra jeres StudieWeb.

Python og sorteringsalgoritmer[edit]

I dette forløb går vi videre med Python. Vi skal især arbejde med lister, som skal sorteres. Når tal eller filer skal sættes i rækkefølge, bliver der brugt forskellige sorteringsalgoritmer. Der findes mange af disse sorteringsalgoritmer og hver algoritme har sine fordele og ulemper.

I dette forløb sætter vi fokus på følgende sorteringsalgoritmer:

  • Bubble-up sort
  • Insertionsort
  • Quicksort (her skal vi bruge rekursive funktioner)

Disse skal vi sammenligne ved at noterer os, hvor mange byt der laves og hvor køretiden er.

Vi skal også se på forskellige lister, der skal sorteres: Tilfældige, omvendt rækkefølge, næsten sorteres og lister med mange ens tal.

I hvilken situation er det bedst at bruge en bestemt algoritme? Hvilken algoritme vil du bruge i en bestemt situation?

Se oplæg og aflevering på Lectio.

Thymio robotter[edit]

I den næste periode skal vi arbejde med robotter.

Målet er at gennemføre en bane på hurtigst og mest elegant vis :-)

Vi bruger ugerne 5-7 på projektet.


Faglige mål:

• Redegøre for grundlæggende funktioner af it-komponenter (hardware og software) og samspillet mellem dem

• Beskriv sammensatte systemer opbygget af virtuelle niveauer


Kernestof:

• It-komponenter og deres samspil indbyrdes og med det fysiske miljø


Trin 1

Bliv fortrolig med robotten:

Tænd/sluk

Afprøvning af de forskellige funktioner (Behaviors)

Lav en bane med en tyk streg (hvor tyk skal den mon være?) og få robotten til at følge stregen.


Trin 2

Hent softwaren på www.thymio.org

Lav de første programmer vha den grafisk brugerflade og se samtidig på den kode der dannes bagved.


Trin 3

Kig på Aseba Studio

Marker ”auto” ved ”Variables”

Se f.eks. på prox.horizontal og hvad der sker, når du tager fingeren foran sensorerne


Trin 4

Få robotten til at følge en sort markeret linje (ca. 4 cm bred)

- Overvej hastighed i forhold til at skulle rette op på at være kommet udenfor stregen

Hvad sker der når den støder på et firkantet sving?

Kan den komme ud af en stor sort flade?


Trin 5

Lidt mere avancerede udfordringer:

Kan robotten komme uden om en forhindring, f.eks. hvis der står en kop på banen?

Hvis man forestiller sig en rundkørsel, kunne man stille som krav at tage højre vej rundt og tage første afkørsel.

Lav en bane, som din robot kan gennemføre.

Prøv de andres baner (du kan nå at justere din robot inden konkurrencen næste uge)


Trin 6

Alle gruppers robotter gennemfører de andres baner og det bliver noteret om den kunne gennemføre, hvilke udfordringer den evt. ikke klarede og tiden det tog at gennemføre.

Beskriv hvad jeres robot kan, og hvilke udfordringer man kunne arbejde videre på.

Beskriv de virtuelle niveauer ”robot-systemet” er opbygget af (system, programkode, brugergrænseflade):

  • Beskriv robotten: hvilke sensorer og aktuatorer (motorer) består den af og hvordan kan man kommunikere med den?
  • Tag et billede af udviklingsmiljøet og beskriv opbygningen. Vis ”kode”-eksempler.
  • Beskriv robottens brugergrænseflade. Hvordan kan den kommunikere med brugeren?

Aflever aktiviteterne under trin 6 på Lectio og dit Studieweb. Se frist på Lectio.

Afkøling[edit]

Mat-It projekt. Uge 9 - 12.

I skal i den næste periode arbejde med at konstruere et termometer, kalibrere det og anvende det til at lave et afkølingsforsøg.

Stikord: temperaturmåling, Arduino, modellering og differentialliginger.


Plan for perioden (It-modulerne)

Uge 9 tirsdag: præsentation: mål, it-komponenter, kilder, Kelvin/Celsius, variable modstande, krympeplast, kalibrering og is-vand.

Alle grupper får udleveret hardware, laver simpel opstilling, begyndende lodning af ledninger på temperaturmåler.

Uge 9 fredag: få lavet de vandtætte termometre, samt de første forsøg på kalibrering

Uge 10 tirsdag: validere kalibrering, fokus på output af data

Uge 11 mandag: lave forsøg og målinger

Uge 11 tirsdag: sidste forsøg og målinger

Uge 12 tirsdag (2 moduler): refleksion over arbejdet, skrive rapport


Kilder:

Temperatur-måling:

http://www.ti.com/lit/ds/symlink/lm335.pdf


Flere links:

http://arduino.cc/

https://www.google.dk/?gws_rd=cr&ei=xIzYVLz-NcPXat74gpAD#q=lm335

http://www.ti.com/product/lm335

http://web.mit.edu/rec/www/workshop/lm335.html

http://www.ti.com/lit/ds/symlink/lm335.pdf


God fornøjelse :-)

Mette FN;

Databaser[edit]

Det næste område handler om databaser. Hvordan opbygger man dem? Hvordan trækker man data ud fra dem og lægger data ind? - og kan vi lave en dynamisk hjemmeside, som kan anvende og opdatere end database?

Tre ting skal vi arbejde med for at nå målet:

  • MySQL
  • Opbygning af databaser
  • Php


Foreløbig plan for perioden:

Uge 13 (mandag + tirsdag): Arbejder vi med MySQL

  Trin 1: Installer en WAMP server (hvis du har en Windows-maskine alternativt LAMP eller MAMP), f.eks. herfra: www.wampserver.com. Følg evt. denne vejledning: [1]
   
  Trin 2: Åben delen, der hedder phpMyAdmin
  Trin 3: Opret en database, der hedder myfirstdb
  Trin 4: Importer data fra myfirstdb.sql. Du finder den på Lectio.
  Trin 5: Følg den udleverede vejledning. Ligger også på Lectio.

Uge 15 + 16 (tirsdag + mandag + tirsdag): Opbygning af databaser


MiniSRP[edit]

Uge 17. Arbejde på informationssøgning på fag og emner og formulering af oplæg.


Selvvalgt projekt[edit]

Uge 17 - 21. I grupper på maks 3 personer udarbejde et selvvalgt IT-projekt.

Fokus på systemudviklingsprocessen, projektbeskrivelse, udvikling og dokumentation.

Her kan de enkelte grupper lægge links til deres dokumentation.



GruppeNavneTemaLink til dokumentation
AAnders, Marcus GPython, lommeregnerhttps://drive.google.com/folderview?id=0B6p1zSATGBSzfkZiY3lGUDVrVWVaVDdVOU9LaHJtdU5pb0M1Q3dyUlhvaXlmVklmUFVvamc&usp=sharing
BCasper B, Morten, NickiUnity - 2D tetrishttps://drive.google.com/folderview?id=0B32Y_6LSDNcLfjIzSEdmbW5BRmpFV1E3czB1ZllPX0tweG5DQXFCN0ZwdVhVakQxUVZiVXM&usp=sharing
CJonas T, Peter, StefanUnity, puzzle, 2D
DJonas L, Michael, KennethUnity - 2D Spiludviklinghttps://drive.google.com/open?id=0ByCAz6sqV4IHQVkyVFFWTHlsRkE&authuser=0
EAndreas, Emil D, OliverRobotter - koordinater, post
FFrederikHjemmeside-parallax
GBasthiann, Joachim, TobiasUnity - spiludvikling
HLouis, Markus D, MikkelGamemaker - "TanMan"https://docs.google.com/document/d/1vlSyWJnztgDPSzNgHoYx2zPBUhoCyMsgAoo4aSbElec/edit?usp=sharing
IEmil S, Asbjørn, AdeelMindstorm
JCasper JThymio