Eksamensoppgaven: Hele oppgavesettet består av 8 oppgaver. Hver oppgave har en %-angivelse som angir hvor mye den teller ved sensurering.

Like dokumenter
består av 7 sider inklusiv denne forsiden og vedlegg. Kontroller at oppgaven er komplett før du begynner å besvare spørsmålene.

Emnenavn: Datateknikk. Eksamenstid: 3 timer. Faglærere: Robert Roppestad. Hele oppgavesettet består av 8 oppgaver, samt 1 vedlegg.

EKSAMEN. Informasjon om eksamen. Emnekode og -navn: ITD13012 Datateknikk. Dato og tid: timer. Fagansvarlig: Robert Roppestad

Høgskoleni østfold EKSAMEN. Oppgavesettet består av 8 sider inklusiv denne forsiden og vedlegg.

EKSAMEN (Del 1, høsten 2015)

NY EKSAMEN Emnekode: ITD13012

EKSAMEN (Del 2, våren 2015) Løsningsforslag

Emnenavn: Datateknikk. Eksamenstid: 3 timer. Faglærer: Robert Roppestad. består av 5 sider inklusiv denne forsiden, samt 1 vedleggside.

EKSAMEN Emnekode: ITD13012

Høgskoleni østfold EKSAMEN. Emnekode: Emne: ITD13012 Datateknikk (deleksamen 1, høstsemesteret) Dato: Eksamenstid: kl til kl.

EKSAMEN (Del 1, høsten 2014)

1. del av Del - EKSAMEN

Høgskoleni østfold EKSAMEN. Dato: Eksamenstid: kl til kl. 1200

Løsningsforslag til EKSAMEN

Løsningsforslag til 1. del av Del - EKSAMEN

Emnenavn: Industriell IT. Eksamenstid: 4 timer. Faglærer: Robert Roppestad

Løsningsforslag til 2. del av Del - EKSAMEN

Løsningsforslag til 1. del av Del - EKSAMEN

Bruk av interrupt og Timer i Arduino-program.

EKSAMEN. Oppgavesettet består av 3 oppgaver. Alle spørsmål på oppgavene skal besvares, og alle spørsmål teller likt til eksamen.

Prototyping med Arduino del 2

EKSAMEN Løsningsforslag Emne: Fysikk og datateknikk

Løsningsforslag til 2. del av Del - EKSAMEN

UNIVERSITETET I OSLO

Løsningsforslag til EKSAMEN

Høgskoleni østfold EKSAMEN. Emnekode: Emne: ITD30005 Industriell IT. Dato: Eksamenstid: kl til kl. 1300

WORKSHOP BRUK AV SENSORTEKNOLOGI

EKSAMEN. Emne: Fysikk og datateknikk

EKSAMEN. Oppgave 1. (26%)

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

Høgskoleni Østfold. 1. del av Del - EKSAMEN. Datateknikk. Oppgavesettet består av 3 oppgaver. Alle sporsmal teller likt til eksamen.

Antall vedlegg O Tillatte hjelpemidler:

HØGSKOLEN I SØR-TRØNDELAG

EKSAMEN. Ta med utregninger i besvarelsen for å vise hvordan du har kommet fram til svaret.

EKSAMEN. Dato: 9. mai 2016 Eksamenstid: 09:00 13:00

Datakonvertering. analog til digital og digital til analog

Analog til digital omformer

Test av USB IO-enhet. Regulering og HMI.

EKSAMEN. Evaluering av IT-systemer. Eksamenstid: kl 0900 til kl 1300

Emnenavn: Eksamenstid: Faglærer: Christian F Heide

Universitetet i Agder. Fakultet for teknologi og realfag E K S A M E N. Elektriske kretser og PLS-programmering

Steg 1: Installere programvaren

Blinkende lysdiode Introduksjon Arduino Lærerveiledning

UNIVERSITETET I OSLO

INF1510: Bruksorientert design

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

EKSAMEN. Operativsystemer. 1. Læreboken "A Practical Guide to Red Hat Linux" av Mark Sobell 2. Maks. tre A-4 ark med selvskrevne notater.

UNIVERSITETET I OSLO

EKSAMEN. Oppgavesettet består av 3 oppgaver. Alle spørsmål på oppgavene skal besvares, og alle spørsmål teller likt til eksamen.

Løsningsforslag til EKSAMEN

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi LØSNINGSFORSLAG EDT208T-A. Programmerbare logiske styringer

IN1060: Bruksorientert design

Høgskoleni østfold EKSAMEN. ITD33506 Bildebehandling og monstergjenkjenning. Dato: Eksamenstid: kl 9.00 til kl 12.00

INF1510: Bruksorientert design

Oppgavesettet består av 7 sider, inkludert denne forsiden. Kontroll& at oppgaven er komplett før du begynner å besvare spørsmålene.

EKSAMEN. Algoritmer og datastrukturer

En to-timers oppskrift for å bygge og programmere en Arduino-drevet strikk-

EKSAMEN. Emne: Algoritmer og datastrukturer

UNIVERSITETET I OSLO.

Tittel: Design av FSK-demodulator. Forfattere: Torstein Mellingen Langan. Versjon: 1.0 Dato: Innledning 1

EKSAMEN. Oppgavesettet består av 3 oppgaver. Alle spørsmål på oppgavene skal besvares, og alle spørsmål teller likt til eksamen.

EKSAMEN. Bildebehandling og mønstergjenkjenning

Øving 1 ITD Industriell IT

Datakonvertering. analog til digital og digital til analog

Ultralydsensor. Introduksjon. Litt om ultralydsensorer. Arduino. Skrevet av: Martin Ertsås & Morten Minde Neergaard

Litt mer om Arduino. Roger Antonsen Sten Solli INF januar 2011

E K S A M E N FAKULTET FOR TEKNOLGI OG REALFAG. Emnekode: ELE217 Emnenavn: Mikrokontrollere og styresystemer.

EKSAMEN. Oppgavesettet består av 3 oppgaver. Alle spørsmål på oppgavene skal besvares, og alle spørsmål teller likt til eksamen.

EKSAMEN Emnekode: ITD12011

Løsningsforslag til EKSAMEN

Høgskolen i Østfold Avdeling for informasjonsteknologi. Programmering av PLS-styrt Modellandsby ved hjelp av Phoenix Profinet / PCWorX

EKSAMEN. Emne: Datakommunikasjon

EKSAMEN. Informasjon om eksamen. Emnekode og -navn: ITD37018 Anvendt Robotteknikk. Dato og tid: , 3 timer. Faglærer: Haris Jasarevic

Regulator for elektrokjeler. type:

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

UNIVERSITETET I OSLO

PLS PC-øving nr. 3 Global Label og Local Label, flagg og CJ

Løsningsforslag til EKSAMEN

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE

EKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad.

UNIVERSITETET I OSLO

Eksamen i emne TFE4110 DIGITALTEKNIKK MED KRETSTEKNIKK. Lørdag 5. juni Tid kl. 09:00 13:00. Digital sensorveiledning

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer

UNIVERSITETET I OSLO

ASU Monitor inng.: 0= frakoblet, 1= kontakt, 2= temperatur, 3= kont. + temp. 3.

INF1510: Bruksorientert design

Høgskoleni østfold EKSAMEN. Emne: Innføring i programmering

Løsningsforslag til EKSAMEN

MAX MIN RESET. 7 Data Inn Data Ut. Load

EKSAMEN Løsningsforslag

Løsningsforslag til EKSAMEN

Eivind, ED0 Ingeniørfaglig yrkesutøvelse og arbeidsmetoder Individuell fremføring

EKSAMEN. Innføring i bedriftsøkonomisk analyse med IKT

Høgskoleni østfold NY/UTSATT EKSAMEN

1 Innledning. 2 Virkemåte for kortet. Bli kjent med USB I/O kort K8055. NB! Ta med multimeter og lite skrujern!

Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer

Transkript:

Informasjon om eksamen EKSAMEN Emnekode og -navn: ITD13012 Datateknikk, deleksamen 2 Dato og tid: 15. mai 2018, 3 timer (fra 09:00 til 12:00) Faglærer: Robert Roppestad Tillatte hjelpemidler: To A4-ark (fire sider) med egne notater Kalkulator som kan lånes av HIØ Eksamensoppgaven: Hele oppgavesettet består av 8 oppgaver. Hver oppgave har en %-angivelse som angir hvor mye den teller ved sensurering. Dersom du mener det er feil eller ufullstendige opplysninger i noen oppgaver, må du selv gjøre dine egne forutsetninger og løse oppgaven etter beste evne. Presiser i så fall hvilke forutsetninger du har tatt. Sensurfrist: 5. juni 2018 Karakterene er tilgjengelige på Studentweb.

1 Oppgave 1. (10%) Hva betyr det at en vippe er flanketrigget? Forklar hvordan en positiv flanketrigget D-vippe virker. Hva kan den benyttes til? Hva må du gjøre hvis du skal lagre 8 bit med D-vipper? Anta at du har koblet opp en vippe på en digital trainer. Du har tilgang til et oscilloscop. Hva kan du benytte et oscilloscop til? Hva bruker vi trigge-funksjonen på oscilloscopet til?

2 Oppgave 2. (8%) Hva er primæroppgavene til et skiftregister? Beskriv kort hva skiftregistre kan anvendes til. Hva er et UART interface i en datamaskin, og hva oppgave har skiftregister i den forbindelsen?

3 Oppgave 3. (10%) En CPU skal summere to tall. Forklar hvilke trinn (operasjoner) som må utføres, og hvilke enheter i CPU'en som er involvert i en slik oppgave. Forklar hva instruksjonsettet til en CPU er, og beskriv noen instruksjoner som en CPU kan utføre. Hvilke egenskaper er det en mikrokontroller (MCU) har som gjør den så anvendelige til mange oppgaver?

4 Oppgave 4. (8%) Du skal digitalisere (sample) et analogt signal. Forklar hva antall bit A/D-omformeren benytter har å si for oppløsning og nøyaktighet. Anta at du benytter en 12 bit A/D-omformer for å sample et signal som varierer mellom 0 og 10 volt. Hva er den beste nøyaktigheten du kan oppnå. Oppgi svaret i volt. Anta at signalet som skal samples inneholder sinuskomponenter med høyeste frekvens opp til 125 Hz. Begrunn hvilken samplingsfrekvens som bør benyttes. Hva vil kunne skje hvis du benytter for lav samplingsfrekvens?

5 Oppgave 5. (8%) Hva blir skrevet ut i monitoren hvis følgende program blir kjørt på en Arduino-enhet? void setup() { Serial.begin(9600); } void loop() { int antall = 42, verdi= 43; char navn[5][20]={"arne", "Monika","Fredrik","Veronika", "Ron"}; for (int i = 0; i <= 4 ; i++) { Serial.println(navn[i]); Serial.println(strlen(navn[i])); } Serial.println(sizeof(int)); Serial.println(sizeof(float)); Serial.println(sizeof(navn[0])); Serial.println(sizeof(navn)); strcat(navn[0]," og "); strcat(navn[0],navn[1]); Serial.println(navn[0]); int k=0; while ( navn[3][k]!= '\x00') { Serial.println(navn[3][k]); k++; } strcpy(navn[1],navn[4]); Serial.println(navn[1]); Serial.println( String (navn[2]) + " = " + String (antall)); Serial.println(" res = " + String (antall/verdi)); for(;;) {} } // Tips!! // '\x00' angir nulltermineringstegnet i C

6 Oppgave 6. (10%) A. Prelling (bounce) i brytere tilkoblet Arduino-enheten kan gi utfordringer. Beskriv problemet, og forklar hvordan dette kan unngås. Beskriv gjerne flere metoder. B. Anta at en bryter er tilkoblet en Arduino-enhet for å varsle interrupt (starte en interrupt-rutine). Forklar hvordan du med programkode kan hindre at interrupt-rutina utfører den aktive koden i rutina flere ganger enn ønsket på grunn av prelling. C. For å sikre entdyig deteksjon av enten 5 Volt eller 0 Volt (høy/lav) på en digital inngang til Arduinoen kan vi benytte pull-up eller pulldown motstander sammen med en bryter. Forklar hvordan du må koble en bryter og motstand slik at du oppnår dette. Forklar både pull-up og pull-down, og tegn gjerne en figur som viser dette.

7 Oppgave 7. (23%) Anta at du har et Arduino Starterkit. Du skal i denne oppgaven lage en prototyp for styring av et lyskryss. Beskrivelse. Anta at vi har et vanlig lyskryss med en vei i nord-syd (NS) retning og vei i øst-vest (ØV) retning. I tillegg har vi fotgjenegroverganger. Du skal i denne opgaven lage et program for biler i NS-retningen og for fotgjengere som skal kunne krysse over samme vei. For å simulere lyskrysset er følgende koblet opp på Arduinoenheten. Rødt lys i NS-retning til digital utgang 3. Gult lys i NS-retning til digital utgang 4. Grønt lys i NS-retning til digital utgang 5. Rødt lys for fotgjengere til digital utgang 6. Grønt lys for fotgjengere til digital utgang 7. En startbryter for lyskrysset er koblet til digital inngang 8. En stoppbryter for lyskrysset er koblet til digital inngang 9. En "jeg vil over veien bryter" for fotgjengere er koblet til digital inngang 2. A. Du skal lage et program som løser følgende oppgave: Hvis startbryteren ikke er trykket skal gult lys i NS-retningen blinke med 1 sekund på/av periode. Lys for fotgjengere skal være avslått. Når startbryteren trykkes skal trafikklyset aktiveres, og NSretningen skal veksle på følgende vis. Rødt lys skal være på i 10 sekunder. Deretter skal rødt og gult være på i 4 sekunder. Deretter skal grønt lys være på i 10 sekunder Dertter skal gult lys være på i 4 sekunder før det veksles tilbake til rødt lys, og trafikklyset starter forfra. Fotgjengere skal ha rødt lys, og kun få grønt lys i den perioden bilene har rødt lys. Hvis stoppbryteren trykkes skal lyskrysset deaktiveres, og bilene i NS-rtningenen skal få blinkende gult lys, og lys for fotgjengere skal slås av. B. Bryteren som fotgjengere kan trykke på er koblet til digital inngang 2, og den skal når den trykkes aktivere en intterupt-rutine fotgjenger().

Interrupt-rutina skal sørge for at fotgjengere får 30 sekunder grønt lys (forlenget tid) ved første mulighet. Bilene i NS-retning skal da få 30 sekunder med rødt lys. Skriv koden som skal til for at dette skal virke. Du trenger ikke å skrive koden i A på nytt, men påpek hvor du eventuelt må gjøre endringer for at alt skal virke som beskrevet.

8 Oppgave 8. (23%) Du skal i denne oppgaven benytte en Arduino-enhet og beskrevne sensorer for å teste en løsning for styring av temperaturen i et drivhus. Følgende er gitt: En analoge temperatursensor er tilkoblet analog inngang A0 på Arduino. Den kan måle temperatur fra -50 0 C til +100 0 C med et analogt utsignal mellom 0 Volt og 5 Volt. Temperatursensoren benyttes for å måle temperaturen i drivhuset. En serrvomotor er tilkoblet digital utgang 6. For å styre servomotoren benytter vi et bibliotek gitt i servo.h. (Se Tips nedenfor). Servomotoren er tilkoblet en lufteluke som vi skal kunne styre fra lukket når servovinkelen er 0 grader, og til fullt åpen når servovinkelen er 90 grader. Lag et program for Arduino som gjør følgende. A. I setup() skal nødvendige initialiseringer utføres. I loop()-funksjonen skal temperaturen i drivhuset måles. Til monitoren skal både bitverdien fra A/D, beregnet voltverdi og den beregnede temperaturen i 0 C skrives ut. Styringen av lufteluken skal gjøres etter følgende krav. Hvis temperaturen er mindre enn 20 grader skal luken være stengt (servoen skal gi ut en vinkel på 0 grader). Hvis temperaturen er 50 grader eller mer skal lufteluken være fullt åpen (servoen skal da styres til en vinkel på 90 grader). Hvis temperaturen ligger nellom 20 og 50 grader skal servovinkelen styres proporsjonalt med målt temperatur. Det betyr at hvis det for eksempel måles en temperatur på 35 grader skal servovinkelen stilles til 45 grader. Beregnet servovinkel skal også skrives til monitoren. loop() skal gå med en periodetid på 60 sekund. Bruk gjerne delay()-funksjonen til dette. B. Eieren av drivhuset ønsker å vite hva maksimum og minimumstemperaturen, samt gjennomsnittemperaturen er i drivhuset de siste 24 timer. Ta utgangspunkt i at temperaturen logges hvert 60 sekund som beskrevet i oppgave A.

Lag en funksjon som utfører oppgaven, og som skriver disse verdiene til monitoren hver 24 time. Etter utskrift til monitoren skal beregnde verdier nulles, og ny beregning for neste 24 timer skal starte forfra. Tips! servo.h har flere funksjoner som vi kan benytte. myservo.attach( int digital_utgang) // Kobler servo-objektet til valgt digital utgang. myservo.write(int servovinkel) // Vil flytte servomotoren til gitt vinkel 24 timer utgjør 1440 minutter.