SO-projekt Marts 2014

Relaterede dokumenter
Mini SRP. Afkøling. Klasse 2.4. Navn: Jacob Pihlkjær Hjortshøj, Jonatan Geysner Hvidberg og Kevin Høst Husted

Dataopsamling og modellering

Michael Jokil

SO: Mini-SRP Matematik/IT

Matematik A og Informationsteknologi B

ROSKILDE TEKNISKE GYMNASIUM 2. ÅR MAT. A & IT B MARTS Mini SRP - Projekt. Afkøling. Af Lars-Emil Jakobsen & Jacob Ruager.

Indre modstand og energiindhold i et batteri

Løsning af simple Ligninger

Arduinostyret klimaanlæg Afsluttende projekt informationsteknologi B

Eksponentielle modeller

Kom godt i gang med Fable-robotten

Fysikrapport Joules lov. Gruppe Nr. 232 Udarbejdet af Nicolai og Martin

Maple. Skærmbilledet. Vi starter med at se lidt nærmere på opstartsbilledet i Maple. Værktøjslinje til indtastningsområdet. Menulinje.

Erik Vestergaard 1. Opgaver. i Lineære. funktioner. og modeller

Fable Kom godt i gang

Indholdsfortegnelse Indledning... 2 Projektbeskrivelse... 2 Dette bruger vi i projektet... 2 Komponenter... 2 Software... 2 Kalibrering...

Programmering C Eksamensprojekt. Lavet af Suayb Köse & Nikolaj Egholk Jakobsen

Klasse 1.4 Michael Jokil

Fysikrapport: Rapportøvelse med kalorimetri. Maila Walmod, 1.3 HTX, Rosklide. I gruppe med Ulrik Stig Hansen og Jonas Broager

SRO. Newtons afkølingslov og differentialligninger. Josephine Dalum Clausen 2.Y Marts 2011 SRO

Eksponentielle modeller

Vi har valgt at analysere vores gruppe ud fra belbins 9 grupperoller, vi har følgende roller

Læringsprogram. Christian Hjortshøj, Bjarke Sørensen og Asger Hansen Vejleder: Karl G Bjarnason Fag: Programmering Klasse 3.4

Arduinostyret klimaanlæg Afsluttende projekt programmering C

Differentialregning. Ib Michelsen

f(x)=2x-1 Serie 1

Studieretningsopgave

HTX, RTG. Rumlige Figurer. Matematik og programmering

Pointen med Differentiation

Daniells element Louise Regitze Skotte Andersen

Ide med Diff. Mål. Tidsplan. 1.uge: 2.uge:

1 monotoni & funktionsanalyse

TinkerCad - Arduino simulator

Fable Kom godt i gang

Arduino Programmering

Automatisering Af Hverdagen

2 Erik Vestergaard

Tværfagligt Projekt. Matematik og IT

Introduktion til Laplace transformen (Noter skrevet af Nikolaj Hess-Nielsen sidst revideret marts 2013)

Pointen med Funktioner

Lineære sammenhænge, residualplot og regression

Matematik opgave Projekt afkodning Zehra, Pernille og Remuss

Kapitel 3 Lineære sammenhænge

Matematik og Fysik for Daves elever

Her er et spørgsmål, du måske aldrig har overvejet: kan man finde to trekanter med samme areal?

Dokumentation af programmering i Python 2.75

Lineære differentialligningers karakter og lineære 1. ordens differentialligninger

Afstande, skæringer og vinkler i rummet

π er irrationel Frank Nasser 10. december 2011

Rumfang af væske i beholder

Projektopgave 1. Navn: Jonas Pedersen Klasse: 3.4 Skole: Roskilde Tekniske Gymnasium Dato: 5/ Vejleder: Jørn Christian Bendtsen Fag: Matematik

Eksponentielle modeller

Excel tutorial om lineær regression

Differentialregning Infinitesimalregning

Microcontroller, Arduino

Microcontroller, Arduino

Afstande, skæringer og vinkler i rummet

Lineære sammenhænge. Udgave Karsten Juul

Introduktion til differentialregning 1. Jens Siegstad og Annegrethe Bak

Kompendium i faget. Matematik. Tømrerafdelingen. 2. Hovedforløb. Y = ax 2 + bx + c. (x,y) Svendborg Erhvervsskole Tømrerafdelingen Niels Mark Aagaard

Tak for kaffe! Tak for kaffe! Side 1 af 16

El-Teknik A. Rasmus Kibsgaard Riehn-Kristensen & Jonas Pedersen. Klasse 3.4

Studieretningsopgave Temperatur af en væske

Undersøgelse teknologi og resurser: Eleverne skal lære om enkel produktudvikling fra ide til implementering.

Differentialregning. Et oplæg Karsten Juul L P

matx.dk Differentialregning Dennis Pipenbring

Funktioner. 1. del Karsten Juul

Besvarelser til Calculus og Lineær Algebra Globale Forretningssystemer Eksamen - 8. Juni 2015

Integralregning Infinitesimalregning

Apparatur: 1 EV3 startkasse, målebånd, sort bred lærredstape, oplader, kan benyttes som passer, kridt, plader til at lave bakker med, niveauborde.

ysikrapport: Maila Walmod, 1.3 HTX, Rosklide I gruppe med Morten Hedetoft, Kasper Merrild og Theis Hansen Afleveringsdato: 28/2/08

IT opgave. Informationsteknologi B. Vejleder: Karl. Navn: Devran Kücükyildiz. Klasse: 2,4

Gennemsnit og normalfordeling illustreret med terningkast, simulering og SLUMP()

Matematik B. Anders Jørgensen

Projekt Når maskinen reagerer - Dataopsamling og aktuatorer

Mini-formelsamling. Matematik 1

Sammenhæng mellem variable

Læringsprogram. Numeriske metoder. Matematik A Programmering C Studieområdet. Roskilde Tekniske Gymnasium Klasse 3.4

Kapitel 7 Matematiske vækstmodeller

Progression frem mod skriftlig eksamen

Gruppemedlemmer gruppe 232: Forsøg udført d. 6/ Joule s lov

Naturvidenskab. En fællesbetegnelse for videnskaberne om naturen, dvs. astronomi, fysik, kemi, biologi, naturgeografi, biofysik, meteorologi, osv

APPENDIX A INTRODUKTION TIL DERIVE

Eksponentielle sammenhænge

Lærervejledning Matematik på Smartboard

Stokerbot 1.0. Bruger vejledning. Denne vejledning er stadig i et meget tidligt stadie, og mange ting er ikke forklaret grundigt nok.

Computerundervisning

Programmering C RTG

Emneopgave: Lineær- og kvadratisk programmering:

Resonans 'modes' på en streng

Byg EN HULE LAMPE VARIGHED: LANGT FORLØB

Løsningsforslag MatB December 2013

AFKØLING Forsøgskompendium

Transkript:

SO-projekt Marts 2014 Matematik A - IT B Kaffeafkøling Lavet af: Mads Hougaard, Philip Elbek og Frederik Bagger Under vejledning af: Jørn Christian Bendtsen og Karl Bjarnason

Indholdsfortegnelse Forord... 3 1 Indledning... 4 1.2 - Læsevejledning... 4 2 Afkølingsproblematikken... 4 3 - Modelbegrebet... 5 3.1 - Modelleringsprocessen...5 4 - Opstilling af matematisk model... 6 5 Forsøgsopstilling... 9 6 - Måleinstrument... 9 6.1 - Brugerhistorier... 10 6.2 - Kravspecifikation... 10 6.3 - Testspecifikation... 11 6.4 - Design... 12 6.4.1 - Komponenter... 12 6.4.2 - Kredsløbet... 14 6.4.3 - Programmer... 15 6.5 - Fremstilling og test... 18 6.5.1 - Måleproben... 18 6.5.2 - Kredsløbet... 20 6.5.3 - Test af måleinstrument... 21 7 - Opstilling og vurdering af afkølingsfunktioner... 22 7.1 - Opsamling og analyse... 22 7.2 Funktion nr. 1 (Første og sidste punkt)... 23 7.3 Funktion nr. 2 (Tredige og sidste punkt)... 24 7.4 Funktion nr. 3 (fjerde og 28. punkt)... 26 7.5 Funktion nr. 4 (Udskiftning af starttemperatur)... 28 7.6 Delkonklusion... 28 8 - Konklusion... 29 8.1 - Evaluering af gruppearbejde... 29 9 - Litteraturliste... 29 10 - IT Værktøjer... 30 Kaffeafkøling Side 2 af 30

Forord Roskilde Tekniske Gymnasium Klasse 2.4 Denne rapport er skrevet på baggrund af sammenspillet imellem matematik (A) og IT (B) Gruppen er bestående af 3 medlemmer: Frederik Bagger Philip Elbek og Mads Hougaard Projektarbejdet foregik mellem i marts 2014. Formålet ved rapporten er at eftervise de matematiske modeller og vise dem i den fysiske verden, ved hjælp af et IT produkt, som skal kunne aflæse data til matematisk brug. Vi vil gerne takke Jørn Christian Bendtsen og Karl G. Bjarnson, for deres hjælp og støtte igennem arbejdet for at skrive denne rapport, og hjælp med det praktiske arbejde, for at fremmane vores produkt Kaffeafkøling Side 3 af 30

1 Indledning I denne Mini-SRP opgave, vil vi komme ind på problematikken med måling af ukendte grader, i væsker. Dette vil vi gøre, ved hjælp af et IT-Produkt, som er lavet fra bunden, hvilket der vil blive vel dokumenteret senere i rapporten. Der vil også blive gennemgået det teoretiske bag målingen, og komme med forklaringer om de forskellige begreber der bruges, for at finde målingerne af graderne, samt prøve med eget eksperiment, at opstille det praktisk. På denne måde, vil vi eftervise afkølingsloven. Vi analysere så vores målingsresultater videre og herefter opstiller dem i grafer. Der vil også blive lavet en reggresionslinje til graferne, for at vise vores afvigelse fra vores målresultater og vores teoretiske udregning. Alt dette bliver beskrevet i vores modellering og modelleringsproces, hvor vi får en beskrivelse af, hvordan vi er gået til værks. 1.2 - Læsevejledning Rapportens hovedafsnit starter med 2. afsnit Afkølingsproblematikken. Heri bliver afkølingsproblemstilling præsenteret og uddybet. I det efterfølgende afsnit 3 Modelbegrebet forklares hvad en matematisk model er, og hvordan en model kan opstilles ved hjælp af en iterativ proces. Denne modelleringsproces anvendes i afsnit 4 Opstilling af matematisk model, hvor at en matematisk model opstilles til at formidle tendenser og sammenhænge i en afkølingsudvikling. I afsnit 5 forsøgsopstilling opstilles et fysisk forsøg, således at der kan fås et datasæt, som der kan laves en grafisk matematisk model. I afsnit 6 Måleinstrument udvikles et måleinstrument til brug i forsøgsopstillingen. Der bliver blandt andet gennemgået krav til måleinstrumentet, design og den egentlige fremstilling. I afsnit 7 Opstilling og vurdering af afkølingsfunktioner visualiseres de matematiske modeller og disse bliver vurderet på deres evne til at reflektere virkeligheden. Til sidst konkluderes der på projektarbejdet og på gruppearbejdet i afsnit 8 Konklusion og der følger derefter en litteraturliste med anvendte kilder (afsnit 9 Litteraturliste ) og en kort liste af brugte IT værktøjer (afsnit 10 IT værktøjer ). 2 Afkølingsproblematikken Vi kender alle det, at vi lige har skænkes os en varm kop kaffe, te eller måske varm chokolade, men at der lige pludselig kommer noget imellem, så man kommer til at glemme den varme drink. Det kan være at man fik en vildt god idé til arbejdet eller skolen, eller at man kom i tanke om en aftale man havde med familien eller vennerne. Den varme drink vil så komme til at miste sin temperatur, og så når man endelig kommer i tanke om den kop kaffe man virkelig godt kunne tænke sig for en time siden, er den blevet kold. Men hvor lang tid går der egentlig, inden at den varme drink er blevet udrikkelig? Det kommer selvfølgelig an på hvad det er man drikker, og hvor vild man er med kold kaffe eller te, men spørger man de fleste, så vil de nok hælde den ud i vasken, og enten lave en ny, eller bilde sig selv ind, at man ikke behøver det alligevel. Ser man på fysikken, er der én bestemt lov, der handler om afkøling, og det er termodynamikkens 0. lov, som handler om en udveksling af energi, mellem forskellige legemer 1. Hvis der er en temperaturforskel mellem forskellige legemer, der ligger op ad hinanden, vil de efter en tidsperiode, dele energien fra varmen mellem hinanden, og derefter nærme sig den samme temperatur. Hvis der er flere legemer i en 1 Birkeling, C. Termodynamikkens Hovedsætninger. http://fysikleksikon.nbi.ku.dk/t/termodynamik/ [27/3 2014] Kaffeafkøling Side 4 af 30

lukket beholder, vil det legeme med den laveste temperatur opsuge energi, mens det legeme med den laveste temperatur vil afgive energi. Da man som regel sætter en kop i et åbent rum, vil luften omkring opsuge energi, men da der i princippet er uendelig meget luft, vil temperaturen uden for koppen ikke stige, mens at temperaturen af koppen vil falde. Dette er som sagt en lov, som ikke indeholder fysiske formler, men som forklarer et princip. Til at forklare hastigheden på en temperaturændring, skal vi bruge flere fysiske formler. Det handler om noget el-lære, newtons afkølingslov og specifik varmekapacitet. 3 - Modelbegrebet Virkeligheden er svær at overskue, og det kan være en udfordring at finde mønstre og tendenser ved udelukkende at kigge på et område af virkeligheden. Derfor benyttes matematiske modeller til at analysere på og til illustrere virkeligheden i en mere overskuelig form I dette projekt skal en afkøling af varm kaffe/opvarmet vand undersøges. Det er ikke muligt at iagttage temperatursvinger med det blotte øje og det kan umiddelbart være besværligt at sætte ord på en tendens udelukkende ved at kigge på tal i et datasæt. Derfor kan man opsætte en matematisk model, som eventuelt kan vise sammenhæng og tendenser grafisk. 3.1 - Modelleringsprocessen Opstilling af matematiske modeller opfattes som regel som en ensrette proces, men hvis man skal have det bedste og mest præcise resultat, skal modelopstilling ses som en iterativ proces, som gentages indtil at man opnår en tilfredsstillende model, som på en eller anden måde er en refleksion over virkeligheden. Modelprocessen opdeles i 4 trin: 1. Systemafgrænsningen 2. Den matematiske model opstilles 3. Modellens matematiske resultater bestemmes 4. Modellens konklusioner Første trin går ud på at specificere en forenklet problemstilling ud fra virkeligheden. Her findes de størrelser, som har mest betydning for modellen. I andet trin opstilles en model, enten som et matematisk udtryk eller som en grafisk illustration. Modellen udtrykkes ved hjælp af de væsentlige størrelser, som der er fundet frem til i første trin. I tredje trin foretages en matematisk analyse og der findes løsninger på modellen, såfremt det er nødvendigt I fjerde trin sammenlignes modellen med virkeligheden og der bestemmes hvorfor modellen kan modificeres til at blive en bedre refleksion af virkeligheden. Hvis der modellen ønskes modificeret, starter Virkelighed Model Kaffeafkøling Side 5 af 30

cyklussen om igen og modellen modificeres og behandles igen. Det er umuligt at skabe en fuldkommen præcis model over virkeligheden, da der ofte spiller utallige variabler ind i eksempelvis et biologisk forsøg. 1. Problemstilling 4. Konklusion Iterativ proces 2. Model 3. Matematisk konklusion Figur 1 - Modelleringsprocessen som en iterativ proces Modelleringsprocessen kan gennemgås rigtig mange gange indtil at modellen er en næsten præcis refleksion af virkeligheden. Dog bliver modellen også mere og mere avanceret eftersom at der skal tages højde for de modificeringer, der er foretaget undervejs i modelleringsprocessen. Det kan derfor nogle gange være bedst kun at lave en simpel model, som ikke nødvendigvis er en helt præcis model over virkeligheden. En simpel model giver en bedre forståelse af problemstillingen, mens at en avanceret model giver en bedre forståelse af virkelighedens tendenser og eventuelle sammenhænge i en udvikling. En model er altså en tilnærmelsesvis præsentation af virkeligheden, som fremmer forståelsen af en udvikling. Den proces hvor modeller udvikles er iterativ, det vil sige at den gentages, og det gøres den indtil at en tilfredsstillende model er opnået. Derimod skal også gøres overvejelse om hvorvidt en model skal være simpel eller avanceret. I naturvidenskabelige sammenhæng er det naturligvis bedst at bruge en avanceret model, men denne kan være tidskrævende at fremskabe. Derfor er det vigtigt at huske, at det er bedre at have en simpel model end slet ingen model. 4 - Opstilling af matematisk model Til opstillingen af den matematiske model, skal der bruges 3 fysiske love, og vores egne observationer fra vores måleapparat. De 3 fysiske modeller er Newtons afkølingslov, en lov omkring varmeenergi og en energi lov. De ses alle 3 neden under. Kaffeafkøling Side 6 af 30

(1) (2) (3) Newtons afkølingslov er givet ved en konstant, ganget mellem temperaturforskellen mellem det indre legeme og omgivelserne. Dette resulterer i Effekt. Noget andet der giver effekt er Energi divideret med tiden. Eller som man også kan sige, effekt er lig med joule per sekund. Den sidste beskriver energien tilført, eller fjernet fra et legeme, efter en temperaturændring i legemet. Her ganger man den specifikke varmekapacitet for legemet, med mængden af legemet der bliver brugt. Herefter ganger man med temperaturændringen. kan i stedet skrives, hvor er varmekapacitet. Vi kan sætte (3) ind i (2), for at skrive et udtryk for effekten. Vi kan herefter sætte det nye udtryk (4), lig med newtons afkølingslov (1). (4) (5) Varmekapaciteten divideres over på højre side af lighedstegnet. Herved Har vi stående alene. Denne brøk kan i differentialregning kaldes for en differenskvotient, som afspejler en sekanthældning. Hvis vi ser det med den vinkel, kan vi skrive det sådan her: Enheder ( ) Vi har herved fået en afledet funktion af indsætte i (5), i stedet for. ( ), og den aflede kan vi ( ) Da begge er konstanter, kan vi i stedet for skrive det således: ( ) (6) I (6) ser vi at vi har fået en differentialligning. Herved indgår både den aflede funktion og den ikke aflede funktion. Det er en ligning af avanceret grad, og kræver avancerede regneregler at regne ud. I denne opgave har vi fået udleveret resultatet til differentialligningen, som er givet ved nedenstående funktion: ( ) (7) Kaffeafkøling Side 7 af 30

Formålet med følgende afsnit, er at bevise at funktionen i (7) er et resultat til differentialligningen i (6). Det gøres ved at teste lighedstegnet i (6). Hvis ( ) i (6) erstattes med højre side af lighedstegnet i (7), og ( ) i (6), erstattes med den aflede funktion af (7), kan lighedstegnet i (6) testes. Da første del af opgaven stort set er løst, vil jeg give mig til at differentiere funktionen i (7). ( ) er en konstant, og når en konstant ganges med en anden funktion, i dette tilfælde ( ), forbliver konstanten som den er. Havde konstanten skullet være trukket fra eller lagt til funktionen, ville den forsvinde ved en differentiering. Funktionen ( ) er en sammensat funktion, bestående af den indre funktion, ( ), og den ydre funktion, ( ). Når en sammensat funktion skal differentieres, differentiere man den ydre funktion, og lader den indre stå, og ganger med den indre differentieret. ( ) ( ( )) ( ) Når ( ) skal differentieres, hedder differentialkvotienten faktisk det samme som den ikke aflede. Herved er ( ) Når ( ) skal differentieres, ser vi at vi har en førstegradsfunktion, hvor variablen forsvinder ved en differentiering, og konstanten bliver stående. Vi kan derfor skrive både ( ) og ( ) op, og undersøge om resultatet passer. ( ) ( ) Test af resultatet, ved indsættelse af ( ) og ( ) i (6). Som det kan ses er lighedstegnet gyldigt, da faktorernes orden er ligegyldig. Vi kan herved bekræfte at (7) er et resultat til differentialligningen i (6). Vi kan herved konstatere at vi kan gøre brug af funktionen ( ), til opstilling af en funktion for varmeoverførslen fra et varmt legeme til omgivelserne. Men først skal vi have udviklet et måleapparat. Kaffeafkøling Side 8 af 30

5 Forsøgsopstilling For at kunne lave dette forsøg, skal vi bruge nogle forskellige komponenter, disse skal kunne være til rådighed her på RTG. Vores måleinstrument skal kunne udgive nogle data, som vi kan analysere og bruge igennem vores modeller. 1. Dette er vores computer, som skal ved hjælp af et program, kunne læse og gemme vores data, som vi herefter kan analysere ved hjælp af vores tillærte matematiske modeller. 2. En form for overgang imellem vores produkt og program. 3. Produktet læser vores data fra vores beholder (5) som skal opbevare vores væske 4. Afmålingsenhed, som skal måle vores væskes temperatur. 5. En opbevaringsenhed for en væske. Dette behøver ikke at være en kop, men skal kunne opbevare vores væske. 6. Måleenhed. Denne skal bruges, for at eftervise at vores produkt fungere. Da vi ellers ikke ved, hvor vidt om vores produkt taler sandt. 6 - Måleinstrument Til at måle temperaturerne skal der, som det fremgår af projektoplægget, fremstilles en prototype af et måleinstrument, som kan bruges i forsøgsopstillingen (se afsnit 5). Kaffeafkøling Side 9 af 30

6.1 - Brugerhistorier For at skabe overblik over hvad måleinstrumentet skal gøre for brugeren og hvad brugeren kræver af måleinstrumentet, fremstilles følgende brugerhistorier som retningslinjer for måleinstrumentets design og funktionalitet: Som elev på RTG ønsker jeg at måleinstrumentet kan aflæse data i vilkårlige tidsintervaller, så jeg kan opstille matematiske modeller over måledataene. Som elev på RTG vil jeg kunne aflæse mine data som grader i celsius. Som elev på RTG har jeg brug for at måleinstrumentet fungere i vand i både høje og lave temperaturer for at jeg kan afmåle temperaturændringer. Som elev på RTG har jeg behov for at måleinstrumentet kan aflæses og indstilles fra en PC. Som elev på RTG vil jeg kunne gemme mine måledata hurtigt og nemt i på min PCs lagerenhed. Ovenstående brugerhistorier er udvalgt på baggrund af projektets tidsramme og de tilgængelige resurser og de vil ligge til grund for produktets kravsspecifikation og endelige design. 6.2 - Kravspecifikation Følgende krav sættes til produktet design og funktionalitet: A. Produktet skal kunne afmåle temperature i celsius over vilkårlige tidsintervaller. Dette vil være muligt ved at lave et samspil mellem et Arduino board (Uno/Leonardo) og noget SD (Serial Data) aflæsningssoftware på en PC. Arduinoen vil modtage analoge signaler, som den kan sende ud igennem USB. Dette data kan manipuleres både på Arduino boardet og på PCen, alt efter hvilken software, der vælges. Såfremt datamålingerne foretages i celsius vil det give brugeren mulighed for at relatere til tallene, såfremt denne er bekendt med enheden celsius. Vilkårlige tidsintervaller vil give brugeren mulighed for at opstille matematiske modeller over måledataene. B. Produktet skal have en vandtæt måleprobe, der kan tåle 0-80 o celsius. Dette kan opnås ved at gøre brug af en LM355 temperatursensor. Hovedet på en LM355 er kun 0,5 cm i diameter og omkring 0,5 i højden, hvilket gør den oplagt til formålet, såfremt den placeret på enden af en vandtæt ledning. Såfremt produktet kan måle temperature i væsker med relativt høje temperature vil det være muligt for brugeren at afmåle temperature i sammenhæng med undersøgelse af en eventuel afkølingsproblematik. C. Produktet skal kunne afmåle temperature med 1-2 grader celsius nøjagtighed. LM355 temperatursensor kan afmåle temperaturer med 1-2 graders nøjagtighed. Ved hjælp af en kalibrering kan dette opnås (se krav G.). Kaffeafkøling Side 10 af 30

Såfremt produktet kan afmåle temperature med 1-2 grader celsius nøjagtighedm kan brugeren benytte målinger fra måleinstrumentet til at lave matematisk modeller over den pågældende aflæsning. D. Produktet skal kunne aflæse og vise data på en PC. Arduinos IDE kan vise seriel data fra boardets dataporte, såfremt et passende program er indlæst på Arduino boardets bootloader. Såfremt produktet kan afmåle og vise data til brugeren på en PC, vil det være muligt for brugeren nemt at finde eventuelle fejlkilder, samt det generelt vil være nemt at tilgå dataene. E. Produktet skal kunne blive indstillet fra en PC. Produktet kan blive indstillet fra et program på den tilsluttede PC, såfremt et stykke software håndterer tilslutningen. Dette stykke software udvikles eksklusivt til produktet, om enten det er skrevet i Python, Processing eller andet. Såfremt produktet kan indstilles fra en PC, vil det være muligt for brugeren nemt at ændre tilslutningsindstillinger. F. Produktet skal kunne gemme data på en PCs lagerenhed. I dette tilfælde kan Processing eller Python anvendes. Det vil det blive en del af programmet, som udvikles i sammenhæng med produktudviklingen. Såfremt måledataene kan gemmes på den tilsluttede PCs lagerenhed, vil det være muligt for brugeren af tilgå og analysere sine data efter de egentlige målinger er afsluttet. G. Måleinstrumentet skal kunne kalibreres. Kalibrering af måleinstrumentet kan foregå enten i den egentlige opstilling (evt. via en variabel modstand, se afsnit 6.4.1 Komponenter ) Såfremt produktet kan kalibreres, vil brugeren kunne indstille sit måleinstrument til at vise den korrekte temperatur. 6.3 - Testspecifikation Når produktet synes at passe kravspecifikationen, skal produktet testes. Følgende testprocedure følges for at produktets funktionalitet og design blive sat på prøve i forhold til kravene (se afsnit 6.2 Kravspecifikation ): 1. Måleinstrumentet tilsluttes en PC og det nødvendige software på PC startes. 2. Måleproben nedsættes i en beholder med vand sammen med et termometer. 3. Måleinstrumentet kalibreres, så temperaturen stemmer overens med termometret. 4. Måleinstrumentet indstilles til at foretage afmålinger hvert 30. sekund over en periode på 5 minutter. 5. Der aflæses og noteres temperatur på termometret hvert 30. sekund indtil målingen er færdig. 6. Måleinstrumentets måledata sammenlignes med de noterede måledata fra termometret. 7. Måledataene analyseres Når testen er overstået reflekteres der over kravsspecifikationen, og der kan eventuelt foretages ændringer deri. Kaffeafkøling Side 11 af 30

6.4 - Design Som tidligere nævnt stiller RTG Arduino boards til rådighed, samt fumlebræt, kabler, modstande, LM355a og så videre. Måleinstrumentet skal bestå af 2 komponenter*, en måleprobe og et printkort (prototype på fumlebræt), hvor at det elektroniske kredsløb skal være. Måleproben tilsluttes til printkortet, og ved hjælp af Arduino boardet sendes der data til en PC, hvor et program aflæser og logger måledataene på den tilsluttede PC s lagerenhed. *Arduino board og printkort opfattes som én del. 6.4.1 - Komponenter Arduino Uno/Leonardo Til at fremstille prototypen stiller RTG Arduino Uno/Leonardo til rådighed, samt diverse el komponenter (modstande, kabler osv.). Arduino boards er en små microcontroller boards baseret microcontroller chips fra Atmel, hovedsageligt ATmega328 og ATmega32u4. Microcontrolleren er præ-programmeret med en boot loader, som gør det muligt at indlæse programmer direkte ind på microcontrollerens hukommelse. Alle Arduino boards er bygget op omkring et open-source design, som gør det muligt for andre virksomheder eller privatpersoner frit at producere Arduino boards. Alle Arduinos originale designs er licenseret under Creative Commons Attribution Share-Alike licens, hvilket vil sige at det det er tilladt at kopiere designet, modificere det og endda at det er tilladt at gøre brug af designet kommercielt. Der gælder dog en række betingelser, nemlig at den oprindelige ophaver skal navngives og ændringer skal oplyses i sammenhæng med distributionen. Desuden skal al modificeret materiale udgives under samme licens, som den originale. Arduino har desuden udviklet et udviklingsmiljø i Java, som kan bruges til at programmere Arduinos boards med. Arduino IDE er udgivet under en GNU GPL, Arduinos software må altså frit deles, men der må ikke foretages nogen ændringer i programmets kildekode. Måleproben Måleproben skal kunne fungere i vand ved temperature mellem 0-90 o C. Dertil anvendes den analoge temperatursensor LM355a, som kan måle temperature både i væsker og i rummet. LM355a kan tåle at Figur 2 - LM355 Analog temperatur sensor Kaffeafkøling Side 12 af 30

blive udsat for -40 o C til 100 o C, samt at den kan afmåle temperature med en nøjagtighed på +/- 1 o C 2. De tre ben på en LM355a (se figur 1) har hver deres funktion. Set fra neden Adj. V + V - Adj. (forkortelse af adjust) bruges til at kalibrere sensoren, for eksempel ved hjælp af en variabel modstand. V + tilsluttes en strømkilde. V - er stel (0v). Figur 3 - De tre ben på LM355a Måleproben skal anvendes i vand (se afsnit 5 Forsøgsopstilling ), hvorfor måleproben skal være vandtæt. Dertil anvendes der isoleringsplastik, som ved opvarmning krymper. Den anvendte isoleringsplastik foretrækkes at være gennemsigtig, således at det vil tydeligt, hvis der skulle være en løs forbindelse mellem temperatursensoren og diverse ledninger. LM355a Isolering Gul: Adjust Rød: V + Sort: V - Modstande Måleinstrumentet skal kunne tilsluttes en PC. LM355a er en analog temperatursensor, hvilket vil sige at temperaturen skal læses analogt. Dertil anvendes et Arduino Uno board, som kan aflæse analoge signaler og behandle disse data på boardets mikrocontroller ved hjælp af et program indlæst på bootloaderen. Af kravsspecifikationen (se afsnit 6.2 Kravsspecifikation ) fremgår det at måleinstrumentet skal kunne kalibreres. Dertil ønsker vi at anvende en Figur 4-102T 10 2 (+figur 1) 04-03-14 - http://pdf.datasheetcatalog.com/datasheet/stmicroelectronics/2158.pdf - 2014 Datasheet Catalog Kaffeafkøling Side 13 af 30

variabel modstand i form af en 102T 10kΩ trimmer resistor. Det er altså en modstand, som kan indstilles fra <0kΩ til 10kΩ. Denne variable modstand betegnes også som et potentiometer. Potentiometret har tre ben, som har hver deres funktion Adj. Adj er outputtet til adjust V + tilsluttes en strømkilde V - tilsluttes stel (0v) V + V - Figur 5 - De tre ben på 102T 10k Arduino boardet kan udsende 3,3v og 5v direkte, men begge disse ville få LM355a eren til at overophede og derfor gå i stykker. Af den grund afvendes en 2kΩ modstand. Figur 6-2kΩ modstand 6.4.2 - Kredsløbet Der skal altså bruges 4 komponenter 3 til at lave hele måleinstrumentet. Det færdige design kan ses på figur 7. Der kan både anvendes Arduino Uno og Arduino Leonardo, da det ikke vil have noget betydning for opsætningen. 3 Hvis Arduino Uno boardet medtages som et komponent Kaffeafkøling Side 14 af 30

6.4.3 - Programmer Arduino boards kan få programmer indlæst på deres mikrocontrollers bootloader. Denne mulighed ønsker udnyttet, således at der kan aflæses data fra temperatursensoren. Sproget der anvendes på Arduino boards er C++, hvilket er et meget avanceret programmeringssprog. Af den grund anvendes Arduino boardet udelukkende til at konvertere de læste data fra kredsløbet til celsius. Arduino program Der defineres først to variabler, kelvin og celsius, som er de to tale måleinstrumentet skal arbejde med. Arduinoen skal sende data serielt til en tilsluttet PC. Derfor startes åbnes dataoverførslen med Serial.begin(9600). 9600 er den mængde bits der sendes per sekund (pulser per sekund) igennem boardets USB port. Det måles i baud [Bd]. Arduinoen skal behandle data hele tiden. Derfor behandles de analoge data i loop(), som kører konstant mens Arduino en er tilsluttes en strømkilde. Kelvin omregnes til celsius ved at trække 273,15 fra. Efter at en måling er blevet behandlet, skal den transmitteres, så den kan blive aflæst på en PC. Serial.println() printer dataen til den tilsluttede computer. Til sidst forsinkes løkken, så der bliver fortaget målinger hver 500. millisekund. Kaffeafkøling Side 15 af 30

Hele koden ender med at se sådan ud. Programmet uploades til Arduino boardet ved hjælp af Arduino IDE (se afsnit 11 Værktøjer ). PC program Som det fremgår af kravsspecifikationen, skal et program til PC udvikles, som kan aflæses data fra en tilsluttet Arduino. Dertil anvendes programmeringssproget Python, som er et yderst kraftigt sprog med en nem syntaks. Derudover anvendes modulet PySerial (se afsnit 11 Værktøjer ). PySerial bruges til at kommunikere igennem serial porte. Den første handling programmet skal foretage sig, er en importering af serialmodulet og time-modulet. Time modulet giver mulighed for at skabe forsinkelser for brugeren. Efter modulerne er importerede defineres en funktion, som kaldes, når der skal tilsluttes en Arduino. Der laves en løkke som gentager sig selv indtil at LoopSer1 bliver False. På den måde er det muligt at håndtere fejl uden af programmet crasher. Kaffeafkøling Side 16 af 30

Variablen port er COM port som Arduino er tilsluttet. ser1 åbner for forbindelsen. ser1 gøres global, dvs. at variablen kan bruges uden for ConnectLogName(). Hvis brugeren ved en fejl ikke indtaster en port laves en if - erklæring, som tjekker om der står noget i feltet. Hvis ikke, stopper den løkken og kalder ConnectLogName() igen. Hvis der står noget i feltet spørgers brugeren hvad logfilen skal hedde. Igen globaliseres en variabel, nemlig LogFilnavn, så den kan bruges uden for Connect(). Hvis der genereres en fejl som følge af brugerens input, kaldes except, som så håndtere fejlen. Det første programmet gør, er at lukke den serial port, der er åben. Derefter følger en universal fejlmeddelelse, løkken stoppes og ConnectLogName() gentages. Kaffeafkøling Side 17 af 30

En ny funktion skabes, som håndtere selves datamålingen. Brugerens informeres først om sit valg af filnavn til logfilen. Logfilen åbnes med w+, dvs. at programmet kan læse og skrive filer, samt at det kan slette filer. Der laves en pause, så brugeren selv starter datamålingen. Når brugeren trykker enter starter datamålingen i form af en løkke der kører x gange y gange. Her høres løkken 10 gange på 60 sekunder. Når løkken har kørt færdig, lukkes logfilen med close() og serial porten lukkes også med close(). Connect() kaldes i slutningen af koden. Python kører ikke funktioner automatisk og springer derfor ovenstående funktion over ved mindre en funktion kaldes med det samme. 6.5 - Fremstilling og test 6.5.1 - Måleproben 1 rød, 1 gul og 1 sort ledning blev klippet af deres ledningeruller. De blev klippet af, så de cirka var en halv meter lange. Derefter blev de afisoleret. Den ene ende af hver ledning blev isoleret med cirka 1 cm, mens den anden ende blev afisoleret med cirka en halv cm. Kaffeafkøling Side 18 af 30

LM335A erens ben blev klippet af, som det ses på billedet til højre. Grunden til dette var at når ledningerne skulle loddes på hver deres ben, ville lodningerne ikke fylde specielt meget, frem for hvis lodningerne var lige ud for hinanden. Dette ville komme til fordel senere. Ledningerne blev loddet på hver deres ben. Dette skete ved at der var en person det holdte LM335A eren og en ledning, mens at der var en anden der loddede deres ben sammen. Det var vigtigt at den gule ledning blev loddet på det venstre ben, den røde blev loddet på det midterste og den sorte på det højre. Det er grundet at farverne symboliserer hvilken strøm der kommer ud af de forskellige, så det er for at hjælpe sig selv. Efter at de var blevet loddet på, skulle vi sørge for at metallet ikke ville komme til at komme i kontakt med andet metal, da det ville skabe en kortslutning, og gøre at vi skulle starte helt forfra. Derfor skulle vi tage en tyk ledning, og klippe et stykke på 5 cm af. Derefter skulle al indmaden af ledningen tages ud, så det kun var isoleringen tilbage. Derefter blev den trukket op om den midterste ledning, hvorefter at den ville forhindre de 2 yderste ledninger i at røre ved hinanden. Til sidste skulle det hele gøres vandtæt. Dette skete ved at noget isoleringsplastic blev trykket op omkring, så det næsten var over temperatursensoren. Der skulle nemlig noget pistollim på siden af sensoren, så når plastikken blev trukket helt op omkring, ville limen størkne, og lukke det hele tæt. Dog var det lidt svært, at isoleringsplastikken trak limen med sig, som sad på siden af sensoren, men noget sad tilbage, så det gik. Efter dette skulle plastikken lukkes tæt om ledningerne. Det blev gjort ved at smelte det med en lighter. Det krævede egentlig ikke så meget, men der var stadigvæk ret mange nerver på, da lighteren skulle holdes i forholdsvis lang tid ved plastikken, før at den smeltede. Det der kunne ske, var at man kunne smelte hul, og når man til sidst manglede en rigtig lille de, ville man skulle starte helt forfra med hele sensorledningen, da det ville være umuligt at fjerne isoleringen. Heldigvis gik det. Kaffeafkøling Side 19 af 30

6.5.2 - Kredsløbet Kredsløbet samles på et fumlebræt i størrelsen 45x35mm. Fumlebrættet er delt op i to dele, det vil sige at brættet er delt op på midten hvad angår forbindelse. Der er altså kun forbindelse vertikalt i 5 huller ad gangen (se figuren til venstre). Figur 8-45x35mm fumlebræt Kaffeafkøling Side 20 af 30

6.5.3 - Test af måleinstrument Måleinstrumentet testes ved hjælp af den opsatte testspecifikation. Programmet blev sat til at køre i 60 minutter med 1 minuts intervaller. Det viste sig hurtigt at der var en fejl. Som det kan ses på udsnittet af måledataene til højre i siden, låste et tal sig i 5 min ad gangen samtidigt med at tallene ikke ændrede sig ret meget i forhold til vandets egentlige temperatur. Måleinstrumentet blev efterfølgende skilt ad og samlet igen adskillige gange. Det viste sig senere at Arduino IDE viste den korrekte temperatur igennem dets serial monitor (se billede til højre). Python mistænkes at være problem. Det er sandsynligvis kommandoen readline(), som læser og låser et stykke data over tid. Grundet mangel på tid var der ikke tid til at fejlsøge Python koden. Af den grund benyttes der måledata fra Arduinos Serial monitor efter at Arduino koden er blevet modificeret til dette (tidsintervallet ændredes til 1 minuts intervaller fremfor ½ minuts). Figur 9 - Arduinos serial monitor viste temperaturen fint 68.80 68.80 68.80 68.80 68.31 68.31 68.31 68.31 68.31 68.31 68.31 67.83 68.31 68.31 67.83 67.83 67.83 67.83 67.83 67.83 67.83 67.34 67.34 67.34 67.34 67.34 67.34 67.34 67.34 67.34 67.34 66.85 66.85 66.85 66.85 66.85 66.85 66.85 66.85 66.85 66.85 66.36 66.36 66.36 66.36 66.36 66.36 66.36 66.36 65.87 65.87 65.87 65.87 65.87 65.87 65.87 Kaffeafkøling Side 21 af 30