Rene Raaijmakers publiceerde
in de Bits&Chips van 7 oktober 1999 het volgende artikel, waarin de
kreet 'besturingssysteem' plots een heel andere lading krijgt. Wij
hebben van Rene toestemming gekregen om dit artikel ook integraal
op deze site over te nemen.
Frog schuift Lynx en PowerPC opzij
Frog Navigation Systems uit Utrecht nam
in 1998 een rigoureuze beslissing.
Er was al voor tienduizenden guldens geïnvesteerd in
PowerPC-hardware om een nieuw, krachtig platform te ontwikkelen
voor de besturing en navigatie van automatisch geleide voertuigen
(AGV's). Als embedded besturingssysteem koos Frog voor Lynx OS.
Toch maakte het bedrijf in dit stadium nog een overstap. 'Ik was niet
gelukkig met de keuze voor Lynx OS', zegt
Joep Jansen, product manager voor
kleine en middelgrote AGV's bij Frog Navigation Systems. 'We hadden onder
meer moeite met de licentiekosten van 500 en hoger die bij elk geleverd
voertuig terugkomen.'
Sinds dit jaar rijden de eerste onbemande voertuigen met Linux-software rond
bij de containerterminal ECT in Rotterdam. Het bedrijf ontwerpt nu geheel
nieuwe voertuigsoftware in C++ voor nieuwe generaties AGV's op een
Linux-besturing. Daarnaast werken medewerkers van Frog aan een
driedimensionale simultie-omgeving in VRML (virtual reality markup
language) voor onbemande voertuigen.
Frog ziet RT-Linux als optie
Vorig jaar besloot Frog Navigation Systems grondig in te grijpen in het
systeemontwerp van zijn automatisch geleide voertuigen (AGV's). De
onbemande transportwagens werden al tien jaar lang bestuurd door in eigen
huis ontwikkelde software. De hardware - een 19-inch rack met een Motorola
68020 processor en een VME-bussysteem - was niet meer van deze tijd.
Er werd een PowerPC/Lynx OS ontwikkelsysteem aangeschaft voor R&D. Alles
leek in kannen en kruiken, maar de hoge kosten en beperkte
groeimogelijkheden begonnen toch te knagen aan Joep Jansen,
product manager kleine en middelgrote voertuigen.
'Met een 'off the shelf' PC/104 processormodule konden we ontwikkelkosten
besparen en meegroeien met de snelle ontwikkelingen in de pc-wereld.'
Een ander struikelblok vond hij Lynx' runtime licentie van 500
[gulden - HK] of meer per AGV.
Jansen overtuigde de bedrijfsleiding om de stap naar Linux te maken. Frog
gebruikte bij de ontwikkeling al pc's met Linux, naast Sparc werkstations.
Linux op een x86-platform vergemakkelijkt het ontwikkelen en testen van
software. De beschikbaarheid van de broncode vindt Jansen een groot
voordeel. 'Je hebt daarmee de volledige controle over je product en kunt
problemen zelf oplossen. Veel applicaties en drivers zoals voor Ethernet en
seriële poorten kun je gewoon van internet halen.'
Voor speciale toepassingen ontwikkelde hij eigen drivers. 'We hebben een
grote hoeveelheid I/O', zegt Jansen. 'Zowel via digitale als analoge
kanalen.' Bijvoorbeeld meten magneetlinealen onder de chassis van de AGV's
de positie aan de hand van in de vloer aangebrachte magneten. De
bemonstering is 400 keer per seconde. Jansen voegde daarvoor real-time
gedrag toe in de vorm van een programmeerbare periodieke interupt
generator. Daarvoor kostte de driverontwikkeling ongeveer twee weken.
Het resultaat is de FrogBox: een kast met een moederbord dat alle
I/O-functies bevat en waarop een PC/104 processormodule is geplaatst. Deze
compacte industriële processorkaart van 10 cm bij 10 cm bevat een 133 MHz
586 microprocessor, 24 Mbyte flashgeheugen, ISA-bus, I/O-controllers,
parallelle poort en een IDE-poort voor harde-schijftoegang. Draadloze
communicatie is mogelijk via een smalband radiosysteem, 'maar we gebruiken
ook draadloos Ethernet en dat geeft een perfecte combinatie met Linux',
zegt Jansen. 'De voertuigen zijn dan te zien als stations in een netwerk.
Vroeger was voor de netwerkfunctionaliteit nog een apart kastje nodig, nu
biedt de FrogBox in combinatie met Linux de hele netwerkondersteuning. Met
behulp van NFS (Network File System) kunnen we files voor data en logging
via het netwerk op de AGV's beschikbaar maken.'
De huidige applicaties zijn via een vertaalslag naar Linux gepoort.
Momenteel ontwikkelt Frog met de bestaande kennis en ervaring geheel nieuwe
voertuigsoftware voor Linux op basis van C++. 'We willen nieuwe
mogelijkheden voor ingewikkelde bewegingen en hoge snelheden
gemakkelijk aan bestaande voertuigsystemen kunnen toevoegen', zegt
Jansen. Hij denkt dat Frog in de toekomst op beperkte schaal ook
RT-Linux (een real time extensie voor Linux) zal gaan gebruiken. 'Maar
alleen daar waar we echt tijdkritische eisen hebben.' Want Jansen
realiseert zich dat deze ontwikkeling aanzienlijk complexer is. 'De
real-time modules draaien in kernel space, net als de kernel en device
drivers. Je hebt rechtstreeks toegang tot het geheugen en I/O en de fouten
die je maakt zijn veel moeilijker op te sporen. Je systeem kan vastlopen of
in een eindeloze lus terecht komen. Bij Unix en dus Linux is niet voor
niets zo'n strikte scheiding tussen de kern en stuurprogramma's en de
gebruikersruimte.'
|