FPGA-chip giver effektiv motorstyring

MAN Diesel har med sin nye dataopsamler udviklet et helt system på en enkelt FPGA-chip. Det kan let flyttes til andre FPGA'er og er dermed langtidsholdbart.

Af Eskil Sørensen, fredag 20. nov 2009 kl. 00:45

Motordata i realtid er en forudsætning for at styre en 14 cylinders skibsmotor. Derfor er det et kæmpe fremskridt, elektronikingeniørerne hos MAN Diesel i København har gjort med deres nye hurtige dataopsamler, der er baseret på en FPGA-chip.

Stort set et helt elektronisk print har udviklerne lagt på en chip. Kun ram, A/D-konverter og et par andre mindre komponenter ligger ikke inde i FPGA'en.

MAN Diesel har valgt den forholdsvist prisbillige Xilinx Spartan III med en Microblaze soft-processor indkodet, som er gratis, når man køber FPGA'en. Spartan III er blandt andet valgt, fordi den har mange pin-outs, og dermed kan samle data fra mange cylindre.

Dataopsamleren, som lige er færdigudviklet, samler kontinuert store mængder realtidsdata om driftstilstanden i en 14 cylinders motor. Den nye system-on-a-chip-løsning er ikke blot væsentligt hurtigere, men giver samtidig langt flere funktionaliteter end den hidtidige CPU-baserede løsning.

Chefen for MAN Diesels elektronik og software, Henrik Olesen, er godt tilfreds med resultatet.

»Vi regner med, at kommende controllere også skal drives af FPGA-teknologien,« siger han.

Data for hver enkelt akselomgang

MAN Diesels hidtidige motorstyringsenhed, der byggede på en CPU-løsning, var ved at være forældet og desuden langsom.

»Det trængte til en afløser, og den blev en system-on-a-chip-løsning. Den gamle løsning kunne kun levere datakurver, som var en sampling over ti akseomgange i motoren. Den nye løsning er meget hurtigere. Den kan vise data for hver enkelt omgang,« fortæller Henrik Olesen.

Det er ikke uvæsentligt, for motorstyringen skal hele tiden og helst fra omgang til omgang justere den mængde brændstof, som sprøjtes ind i hver cylinder. Behovet er hele tiden vekslende på grund af vejr og bølger. Skruen kan endda være oven vande kortvarigt, og så skal brændstoftilførslen stoppes, for at skruen ikke kører løbsk. Derfor er samplede data over ti omgange ikke så værdifulde som faktiske data fra én omgang.

FPGA-ekspert Morten Zilmer har været konsulent på projektet. Han mener ikke, at en CPU-løsning kunne have fungeret lige så godt.

»Det ville være svært at lave det samme realtidselektronik med en CPU. FPGA'en kan sørge for at ekspedere data hurtigt. En CPU kan risikere at 'hænge'.«

MAN Diesel har været trygge ved at vælge en system-on-a-chip-løsning.

»De første frontløbere har taget de første fejl, og nu mener vi, at det er sundt nok at hoppe med på system-on-a-chip. Der vil i fremtiden være endnu flere komponenter, som man kan købe og installere i en FPGA,« siger Henrik Olesen.

Langtidsholdbar løsning

Der ligger flere mandeårs arbejde i den ny dataopsamler. Til gengæld mener Henrik Olesen, at MAN Diesel nu har fundet en løsning, som er langtidsholdbar.

Den virtuelle CPU, som ligger på FPGA'en, er nemlig uafhængig af den givne FPGA. MAN Diesel er med andre ord ikke afhængig af, at en bestemt CPU eller en bestemt FPGA stadig produceres.

»Vi kan flytte CPU'en fra en FPGA til en anden, og vi kan eksekvere tidligere software på ny hardware, så vi er uafhængige af en processorleverandør. Man skal huske på, at skibe holder i 30 år, og i den periode skal vi kunne servicere systemet,« siger Henrik Olesen.

Han mener desuden, at MAN Diesel kan spare mange penge på at indhente nye typegodkendelser hver gang der skiftes hardware, fordi det i princippet er den samme processor, firmware og software, som ligger i systemet.

FPGA-teknologien har i MAN's tilfælde vist sin fleksibilitet ved at udviklingsfolkene nu er i gang med at genbruge dataopsamleren til en helt anden opgave, nemlig til en gassikkerhedsenhed.

»Ved at sætte et netværkskort og et ekstra print på vores system-on-a-chip har vi designet gassikkerhedsenheden. Så genbrugsmulighederne er voldsomt store,« understreger han.

Og det er netop skønheden ved FPGA-løsninger siger Morten Zilmer:

»Man kan lave ét printkort og bruge det i mange forskellige applikationer. Man kan bare redefinere FPGA'en. Det betyder, at udviklingstiden kan skæres drastisk ned.«