Continuous Integration (CI) med “Hardware in the loop”

BO23-F31

De tre prosjektdeltakerne Viktoria Jacobsen, Håkon Skogen og Eirik Skoglund står på rekke med hunden Theis i front.

Fra venstre: Viktoria Jacobsen, Håkon Skogen og Eirik Skoglund. I front: Theis

Om prosjektet

NxTech bruker utviklingskort som stadig får inn ny firmware fra deres utviklere. De trenger en systematisk kvalitetssikring av ny kode som skal legges inn på et utviklingskort. Prosjektet går ut på å sette opp et system for automatisk testing av kode som legges over på hardware. Systemet består av GitLab, egen server med GitLab runner, testprogram, Digital Discovery og et utviklingskort med innebygget debugger. Dette vil automatisere prosessen fra utviklere produserer kode og frem til den fungerende koden er i produksjon.

Systemet fungerer med at kode lastes opp til sitt eget repository (repo) i versjonskontrollsystemet GitLab, dette utløser det GitLab kaller en pipeline. En pipeline er en automatisert måte å bygge, teste og distribuere kode på, og er definert i en YAML-fil som ligger i repoet. I dette systemets YAML-fil er det definert at koden skal bygges og legges over på et utviklingskort. Denne delen av pipelinen utføres av GitLab runneren.
Testprogrammet tar inn input fra en Digital Discovery enhet som er koblet til utviklingskortet og GitLab runner serveren. Denne inputen blir så tolket og validert av tester definert i et test-regelsett i repoet. Når testprogrammet har kjørt ferdig sine tester, lages det en rapport som sendes tilbake til GitLab repoet. Rapporten brukes videre til å validere og kvalitetssikre at ny kode fungerer som tiltenkt på utviklingskortet.

Bilder:

  1. Illustrasjon av automatisert pipeline fra utvikler til utviklingskort.
  2. Utviklingskort og Digital Discovery i bruk som del av pipelinen.
  3. Utviklingskort og Digital Discovery koblet til serveren med Gitlab Runner.

Prosjektdeltakere

Viktoria Jacobsen
Håkon Skogen
Eirik Skoglund

Om oppdragsgiveren

NxTech er et firma med røtter fra den norske projektorindustrien (ASK, Proxima og InFocus). Firmaet ble etablert i 2008 og har siden da jobbet med multidisiplinære oppdrag for små og store bedrifter. Selskapet har spesialisert seg på utvikling av avansert programvare og teknologi for ulike industrier, inkludert offshore og energisektoren. Oppdragene varierer fra trackere, blant annet for kjæledyr, til husholdningsapparater og maritimt utstyr. Bedriften har 32 ansatte med kompetanse innenfor hardware og software. Bedriften har også en egen testlab med klimakammer, EMC-kammer og annet utstyr for å kunne teste produkter. Labben leies også ut til andre bedrifter.

Kontaktperson: Mats Jørgen Øyan, Software Lead

Veileder

Maben Rabi, Høgskolen i Østfold.

Publisert 25. apr. 2023 08:47 - Sist endret 24. mai 2023 13:30