Til hovedinnhold

125-2 PC verktøy for test og debugging av sanntids styresystemer for kraftelektronikk omformere

125-2 PC verktøy for test og debugging av sanntids styresystemer for kraftelektronikk omformere

Seniorforsker

Motivasjon og relevans

Moderne kraftelektronikk-omformere styres av avansert digital elektronikk. Sanntids styrealgoritmer kjøres gjerne på mikrokontroller, DSP eller FPGA basert hardware. Et særpreg ved slike styresystemer er de harde sanntidskravene. Monitorering og debugging i slike styresystemer kan ikke forstyrre normal kjøring av programvaren for reguleringssløyfene. Kjente debugmetoder, som å sette inn breakpoint i koden, kan ikke brukes da det lett kan oppstå heller dramatiske bivirkninger hvis programkjøringen stopper mens omformeren er i drift.

Det finnes få egnede debug /test verktøy til denne typen harde sanntidssystemer, og ingen av de er lisensfrie. Det er derfor behov for nye programvareverktøy for utvikling, test og feilsøking i omformerstyringer.

Bakgrunn

Ved Sintef Energi utvikler vi kraftelektronikk-omformere til mange forskjellige anvendelser, alt fra enkle 2-nivå omformere via motorstyringer og DCDC omformere til skalamodeller av ekstremt komplekse state of the art modulære multinivå omformere (MMC) for HVDC systemer. Utviklingsgraden er alt fra primitive testoppsett til vel utviklede prototyper.

Styresystemene til omformerne våre kjøres på et kretskort som er basert på en kraftig System-On-Chip(SoC) brikke (Xilinx Zynq7030), som inneholder to ARM prosessorkjerner og en stor FPGA. Denne programmeres i VHDL (et språk for FPGA utvikling) og i C/C++.
I et typisk laboratorieoppsett styres gjerne en omformer med programvare som er ikke er ferdig utviklet. Enkelte funksjoner kan mangle, mens andre kan inneholde feil. I en slik test og prøvekjøringsfase er det behov for verktøy som kan gi innsyn i det indre liv i styresystemet mens omformeren er i drift, uten at programkjøringen stopper. Typiske operasjoner er å logge data samt å lese og skrive verdier til utvalgte variabler i styresystemet samt å inspisere og endre minneområder og registre i systemet.

I dag bruker vi bl.a en del egenutviklet programvare basert på Matlab til dette. Dette har imidlertid en del begrensninger gitt av Matlab-plattformen. I tillegg kreves en kostbar Matlab-lisens på alle PC-er der det brukes. Vi ønsker derfor å lage et nytt verktøy som er basert på fritt tilgjengelig platformer som Phyton eller C/C++.

Oppgaven består i

  • Sette seg inn i kommunikasjon mellom innbakte (embedded) styrystemer og PC.
  • Skrive om eksisterende Matlab-basert verktøy til Phyton.
  • Utvikle rutiner for å hente ut debuginformasjon fra binærfiler med programvare som lastes ned på prosessorkort, lage lister med informasjon om variablene i programmet.
  • Lage mekanismer som gjør det lett å inspisere og endre variabler mens programsystemet kjører.

Les om prosjektet BestPath

Forutsetninger

  • Erfaring med programmering i Python og/eller C /C++
  • Kjennskap til Matlab
  • Interesse for kraftelektronikk
  • Interesse for labarbeid

Medveiledere:  Giuseppe Guidi og  Kjell Ljøkelsøy

Søknadsfristen er utgått.