Tirsdag den 04 Mai

I går så lærte vi å utarbeide programmer som kan brukes til å lese inn data, utføre beregninger og skrive ut data. I dag så skal vi lære litt om kryptering og vi skal også lære utarbeide et program som kan kryptere og dekryptere data, dvs tekststrenger.

Når denne posten skrives så er det fortsatt litt uklart hvordan dagsprogrammet blir, og hvor mange timer vi kan sette av, men i alle fall så kan vi starte opp vedrørende dette tamaet og så gjennomføre det restrende senere «ved tid og anledning».

Det vil jo ellers være litt forkskjell på hva slags fag og yrke man er i, i forhold til hvor mye av «det tekniske» man behøver å kjenne til. For de som skal arbeide innenfor elektrofagene så er det sannsynligvis en fordel å kjenne til litt av «det tekniske» bak kryptering for datamaskiner og Internett.

Link til webside som handler om kryptering.

Mandag den 03 Mai

Nå har vi startet på sikkerhetsuken. På sist fredag så installerte vi Codeblocks slik at dette IDE’et skal være oppe og kjøre hos «alle sammen».

I morgen så skal vi lære om kryptering. Da skal vi utarbeide et program i C++ som kan kryptere og dekryptere tesktstrenger.

I dag så passer det kanskje å gå i gang med å utarbeide et par program, der vi leser inn data, utfører beregninger og skriver ut data. Da er vi godt i gang. Se vedlagte læringsoppdrag.

 

Fredag den 30 April

A og B Klassen

Vi fikk noen dager med hjemmeundervisning som i utgangspunktet ikke var planlagt. Det som var meningen planlagt det var at de forskejellige prosjektgruppene skulle lære litt av hverandre i forbindelse med gjennomføring av de forskjellige utviklingsprosjektene.

Det var i utgangspunktet bare en prosjektgruppe som skulle jobbe med «styring av varmepumpe» men på grunn av at dette med  en «termostat» inngår i læreplanmålene for alle elevene, så har begge klassene og alle elevene nå jobbet litt med utviklingen av en termostat.

Hvis vi nå har kommet så langt at vi eventuelt er stort sett ferdige med «termostatprosjektet» så kunne det kanskje være interessant å lære litt om «ordentlig programmering» i C++ for alle elevene. Det er en prosjektgruppe som har «programmwring i C++» som «hovedprosjekt» men det kunne kanskje vært interessant å lære litt om dette temaet for alle elvene. (??!!)

Dette vil jo da medføre at alle elevene lærer litt om programmering og at de forskjellige arbeidsgruppene får litt bedre kunnskaper om hverandres prosjekter.

Tidligere så har vi egentlig bare «scriptet». Denne gangen skal vi prøve ut «programmering på ordentlig» ved hjelp av IDE og kompilator (Hva er det?)

Det IDE’et vis skal prøve ut er Codeblocks og de to programmeringsspråkene vi skal kjøre en liten test med er C og C++

Først kan dere installere Codeblocks ut i fra denne «oppskriften»:

Det er også noen detaljer for instalalsjonen her, på denne linken.

Dere kan bruke denne «oppskriften» for å prøve ut Codeblocks og programmering i C og C++.

For Windows:

Du kan laste ned IDE’et (Codeblocs) fra denne linken:

https://sourceforge.net/projects/codeblocks/files/Binaries/20.03/Windows/codeblocks-20.03mingw-setup.exe

For Mac:

Det kan se ut som at Codeblocks ikke fungerer på nyeste versjon av Mac operativsystem. Dette har jeg ikke testet (på grun av mangel på Mac) men det bør vel fungere å bruke Visual Studio Code i stedet:

Bare fro Mac: https://code.visualstudio.com/download

Bare for Mac: https://code.visualstudio.com/docs/languages/cpp

(Ettersom resten av kurset vårt er bygd opp rundt Codeblocks så er det nok lurt å bruke dette IDE’et hvis mulig. Visual Studio Code bør fungere, men det kreves kanskje noen»tilpasninger».)

Oppgave:

Installer Codeblocks og prøv ut de to små programeksemplene i henholdsvis C og C++. Eksperimenter og forandre også litt på dem og se hva som skjer.

Hva er forskjellen på et «tolket» og et «kompilert» programmeringsspråk og hva er forskjellen på «scripting» og «programmering»? Vi skal også generere en eksekverbar fil, og hva er nå det?

Hvilken av de to syntaksene liker du best og hva betyr egentlig «syntaks» ?

For den kjempe-spesielt interesserte:

Man sier at C++ er et «objektorientert programmeringsspråk» mens C ikke er det. Hva betyr det og hva er da C hvis språket ikke er «objektorientert»?

Tirsdag den 27 april

Robotarm 1 og 2.

Den fysikse byggingen av robotarmene er nå gjennomført.

Det som mangler nå er å få til noen litt mer avanserte programmer slik at robotene kan fungere som robot.

Først så tester vi ut og eksperimenterer og så etterpå og på litt sikt, så forsøker vi å få robotarmen til å flytte gjenstander fra posisjon A til posisjon B.

Edit: En av gruppene klarte å styre roboten fra posisjon til posisjon. Roboten kunne også løfte opp en gjenstand på en posjosn og sette den fra seg på en annen posisjon.

Robotbil.

Det viste seg at de tegningene som fulgte med kittet var ganske dårlige slik at det var vanskelig å gjennomføre prosjektet av den grunn. Vi får nå låne en ferdigbygd robotbil av Henrik. Det bør forenkle og forbedre gjennomføringen av dette prosjektet.

Edit: Vi har fått lånt en ferdigbygd robotbil og jobber videre med dette prosjektet.

Varmepumpe.

Prosjektgrupen har utarbeidet en oversikt over inn og utganger til styring og til PLS. Dette tegnes nå om til et fullstendig koblingsskjema. Vi har utviklet en termostat ifbm hjemmeundervisning som bør kunne brukes i dette prosjektet.

Edit: Vi kikket litt på hvor start og stoppknapper og kontrollys kan så. Vi konkluderte at det enkleste var å bruke et eksternt betjeningspanel og koble opp via rekkeklemmene.

3D-Printing

Arbeidsgruppen som arbeider med 3D printing har fått printet ut sin første «testgjenstand». Tilbakemeldingen fra biblioteket er om en prosjektgruppe som jobber veldig bra.

Her er en link til en webside med 3-D tegninger for printing av gripeklør til roboten.

Vi har diskutert å bruke dette og dette dataprogrammet til prosjektet.

 

Mandag den 26 April

A-Klassen – Hjemmeundervisning

Forrige mandag ogfredag så var vi på skolen og da jobbet vi med prosjektene våre. Sist fredag så var vi hjemme og da jobbet vi med en simularingsoppgave som gikk ut på å bruke en temperatursensor på en slik måte at vi kunne tenne og slukke 3 forskjellige lysdioder på 3 forskjellige temperaturnivåer. Vi jobbet med denne oppgaven.

Nå skal vi forsøke oss litt på det som heter «dybdelæring«, dvs å bruke det vi har lært tidligere i en ny og ukjent situasjon. (På godt norsk: «Lære å tenke sjæl».)

En termostat er en temperaturstyrt bryter. Termostaten brukes til å styre oppvarmingen i bygninger og den brukes også til å starte og stoppe varmepumper. For at termostaten ikke skal få for mange inn og utkoblinger, slik at det tekniske anlegget ikke blir slitt ut for tidlig, så er det vanlig å la termostaten koble inn og ut ved forskjellige temperaturer,

Du skal bruke eksemplet fra forrige gang, og det du lærte forrige gang til å utvikle din egen termostat. I første omgang så kan dette gjøres som simulert modell.

Du skal utvikle en elektrisk styrt bryter eller en termostat som skal kunne brukes til å starte og stoppe en varmepumpe eller en varmeovn. Termostaten skal starte varmepumpa eller varmeovnen når det er kaldt i rommet. Vi setter denne grensen til 20 grader Celcius. Når det har blitt varmt i rommet så akal varmepumpen stanse. Vi setter denne temperaturen til 24 grader celsius.

Med andre ord: En elektronisk styrt bryter som kobler inn på 20 C og ut på 24 C.

Forrige gang så styrte vi bare en diode på og av. Her er en tegning som viser hvordan vi kan ta styresignalet fra an diode og også styre et rele. Grunnen til at releet står «opp ned» er

Note: Foreløpig så er det 0 elever som har fått til denne oppgaven. Hvem vil være først til å få til denne oppgaven? (Det som ingen så langt har fått til er å styre varmepumpen/varmeovnen av og på ved forskjellige temperaturer.

*******

Når vi har hjemmeundervisning, så jobber vi på en kanskje litt tradisjonell måte, der vi gjennomgår lærestoffet i fellesskap.

I forbindelse med de litt større læringsoppdragene som vi gjennomfører mot slutten av skoleåret så jobber vi på en litt annen måte. Dette skal vi snakke om senere, men hvis det er noen som har interesse av å kikke på dette, så ligger det litt forklaring her.

Tirsdag den 20 April

B-Klassen-Hjemmeundervisning

Forrige gang så lærte vi å programmere Arduino med en elektronisk temperatursensor. Vi kunne lese ut temperaturen via seriekommunikasjon og så var det 3 forskjellige lysdioder som ble tent ved forskjellige temperaturnivåer. (Grønn-Gul-Rød)

Nå skal vi forsøke oss litt på det som heter «dybdelæring«, dvs å bruke det vi har lært tidligere i en ny og ukjent situasjon. (På godt norsk: «Lære å tenke sjæl».)

En termostat er en temperaturstyrt bryter. Termostaten brukes til å styre oppvarmingen i bygninger og den brukes også til å starte og stoppe varmepumper. For at termostaten ikke skal få for mange inn og utkoblinger, slik at det tekniske anlegget ikke blir slitt ut for tidlig, så er det vanlig å la termostaten koble inn og ut ved forskjellige temperaturer,

Du skal bruke eksemplet fra forrige gang, og det du lærte forrige gang til å utvikle din egen termostat. I første omgang så kan dette gjøres som simulert modell.

Du skal utvikle en elektrisk styrt bryter eller en termostat som skal kunne brukes til å starte og stoppe en varmepumpe. Termostaten skal starte varmepumpa når det er kaldt i rommet. Vi setter denne grensen til 20 grader Celcius. Når det har blitt varmt i rommet så akal varmepumpen stanse. Vi setter denne temperaturen til 24 grader celsius.

Med andre ord: En elektronisk styrt bryter som kobler inn på 20 C og ut på 24 C.

Kan dere få til dette?

Edit:

Det viste seg at de fleste eller i alle fall noen fikk til denne løsningen med med ett enkelt unntak.

Det ble laget en termostatfunksjon, men denne koblet ut og inn ved den samme temperatur. Dette vil gi veldig mange ut og innkoblinger slik at dette ikke vil fungere i praksis.

Vi må se på den løsningen vi har fått laget, og så må vi jobbe litt med å finne en løsning for programmet som medfører at termostaten kobler ut og inn ved forskjellige temperaturer.

Den skal koble inn ved 20 grader og koble ut ved 24 grader.

Mandag den 19 April

A-Klassen

Inndeling i grupper:

  • Robotarm 1: Mads – Trym – Thor.
  • Robotarm 2: Oskar – Kjetil – Zaid
  • Robotbil 1: Yonas – Fami – Joakim
  • Robotbil 2: Emil – Jonas – Leon
  • Programmering i C++ : Cristie – Loke – Kevin

Siste gruppe må eventuelt være litt «selvgående» men vi har litt «undervisningopplegg» for det.

«Alle» behøver først å levere inn en plan som minimum må inneholde:

  • Hvem man skal jobbe sammen med.
  • En kort beskrivelse av jobben.
  • En risikovurdering.
  • Oversikt over tegninger og dokumentasjon.
  • En estimert framdriftsplan.

Fredag den 16 April

A og B-Klassen

På grunn av hjemmeundervisning, så ble prosjektene våre satt på pause, i alle fall denne ene dagen. Vi kan jo jobbe videre med dem når vi er på skolen. På den annen side så står vi «litt til rest» i forhold til læreplanen i forhold til det som går på «analoge målinger ved hjelp av mikrokontroller». Derfor så passer det veldig bra å gjennomføre dette som «simulert modell», nå i dag.

Arduino med analog temperatursensor

  • Ved «veldig lav» temperatur skal ingen av LED’ene lyse.
  • Ved lav temperatur skal bare grønn LED lyse.
  • Ved middels temperatur skal grønn og gul LED lyse
  • Ved høy temperatur skal alle 3 LED’ene lyse.

Dere skal gjennomføre oppgaven som simulert modell vha Tinkercad. Så skal dere utarbeide en liten rapport der dere legger kopi av eget skjermbilde og egen programkode og en liten beskrivelse av virkemåte.

Oppgaven levers inn og er med på sen samlede vurderingen av karakter for faget.