| MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Onafhankelijk nieuwsmagazine voor de hightechindustrie 13e jaargang
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Visit the Model-Driven Development Day 2011 Platinum sponsor
Gold sponsors
Flip over for the exhibition catalogue > Register now www.bits-chips.nl/events/mdday/visitors
|
5 |
|
|
Onafhankelijk nieuwsmagazine voor de hightechindustrie 13e jaargang 22 april 2011 www.bits-chips.nl
MODELGEBASEERD ONTWIKKELEN • bij ASML • in een pathologiescanner • in pretparkvoertuigen • op het spoor
Nieuws
Intel eist rol op in embedded
Interview
TUE-prof Baeten ziet graag meer Verums
Learn, create and make it work!
Join Our Team !!!
CIMSOLUTIONS Weekend in Londen 2010
Salaris tot € 100.000,- plus auto en onkostenvergoeding CIMSOLUTIONS B.V. levert sinds 1992 hoogwaardige diensten en oplossingen op het gebied van bestuurlijke, administratieve en technische automatisering. Dit doen wij vanuit twee divisies: Business en Industry. Wij richten ons op het in- en toepassen van state-of-the-art ICT-concepten en technieken met als doel een optimale oplossing voor onze klanten. Onze expertise dekt alle fasen van de ICT levenscyclus van behoeftebepaling, ontwerp, ontwikkeling, testen tot en met onderhoud. CIMSOLUTIONS is onafhankelijk zodat wij onze klanten optimaal kunnen adviseren en ondersteunen. Wij zijn ISO gecertificeerd en in 2010 voor de vierde keer uitgeroepen tot Top Employer ICT. CIMSOLUTIONS opereert vanuit vijf vestigingen in Nederland: Vianen, Best, Deventer, Rotterdam en Amsterdam. Begin 2011 openen wij vestigingen in Groningen en in Bangladesh. Wij zoeken, voor zowel technische als administratieve en business automatisering, ervaren én ambitieuze professionals met een voorliefde voor ICT, die klantgericht zijn, zowel zelfstandig als in teamverband goed functioneren, communicatief en sociaal vaardig zijn en uitblinken in kwaliteit en professionaliteit voor actuele functies als:
- Tester / Testcoördinator / Testmanager - Software Architect / Technisch Ontwerper - Functioneel / Applicatie / Systeem Beheerder - Projectleider / Projectmanager
-
C# / C++ / Java / Embedded Software Engineer Informatie Analist / Functioneel Ontwerper Database Administrator / Database Ontwerper Commercieel Manager
Voor meer actuele en uitdagende vacatures en vereiste kennis en ervaring, zie www.cimsolutions.nl. Ook gekwalificeerde ZZP’ers/zelfstandigen/freelancers mogen reageren. Wij hebben continu uitdagende projecten. Wij bieden: - de kans om mee te groeien in een dynamische en gezonde onderneming; - zelfontplooiing door gevarieerd werk en opleiding; - uitdagende en state-of-the-art en hightech projecten; - uitstekende arbeidsvoorwaarden, zoals een auto en onkostenvergoeding; - collegiale, informele en professionele werksfeer bij een Top Employer ICT. Interesse? Als je geïnteresseerd bent in een functie bij CIMSOLUTIONS, stuur dan je sollicitatiebrief met cv naar CIMSOLUTIONS, Postbus 183, 4130 ED Vianen of mail naar hrm@cimsolutions.nl. Voor meer informatie kun je onze website bezoeken bij www.cimsolutions.nl en/of bellen met Jos Peek, telefoon 0347-368100 tot 21.00 uur. Vianen | Best | Deventer | Rotterdam | Amsterdam | Groningen | Dhaka CIMSOLUTIONS B.V. | Havenweg 24, 4131 NM Vianen | Postbus 183, 4130 ED Vianen | The Netherlands Phone: (+31) 347-368100 | Fax: (+31) 347-373777 | E-mail: cimsolutions@cimsolutions.nl | Internet: www.cimsolutions.nl
REDACTIONEEL Colofon
Bits&Chips is een onafhankelijk nieuwsmagazine voor mensen die werken aan slimme producten en machines. Bits&Chips is een publicatie van Techwatch bv in Nijmegen.
Snelliusstraat 6 – 6533 NV Nijmegen tel +31 24 3503532 – fax +31 24 3503533 info@techwatch.nlbv– www.techwatch.nl
Techwatch
Redactie Nieke Roos – hoofdredacteur Techwatch tel +31 24 3503534 – nieke@techwatch.nl Alexander Pil – chef redactie tel +31 24 3504580 – alexander@techwatch.nl René Raaijmakers – redacteur tel +31 24 3503065 – rene@techwatch.nl Pieter Edelman – redacteur tel +31 24 3503534 – pieter@techwatch.nl Paul van Gerven – redacteur tel +31 24 3504580 – paul@techwatch.nl Vormgeving Justin López – vormgever tel +31 24 3505028 – justin@techwatch.nl Marketing en events Daniëlle Jacobs – marketingmanager tel +31 24 3505195 – danielle@techwatch.nl Kim Huijng – eventmanager tel +31 24 3505544 – kim@techwatch.nl Marjolein Vissers – marketing- en eventmedewerker tel +31 24 3505544 – marjolein@techwatch.nl Ellen Lely – coördinator trainingen tel +31 24 3505195 – ellen@techwatch.nl Adviseur Maarten Verboom Medewerkers Joris van Gurp, Bart van Mierlo, Esther van Voskuijlen, Jacqueline van Woerkom Columnisten en externe auteurs Jos Baeten, Arend-Jan Beltman, Sander Berg, Machiel van der Bijl, Paul Hoogendijk, Angelo Hulshout, Albert Mietus, Asia van de Mortel-Fronczak, Ravi Patil, Hans Martin Ritt, Anton van Rossum, Rien Schot, Egbert-Jan Sol, Hans Spitshuis, Jan Kees van der Veen, Peter van de Velde, Chris Washington Uitgever René Raaijmakers tel +31 24 3503065 – rene@techwatch.nl ISSN 1879-6443 Verantwoordelijk uitgever voor België René Raaijmakers Biesheuvelstraat 1 2370 Arendonk, België Drukkerij Senefelder Misset, Doetinchem bv
Snelliusstraat 6 | 6533 NV Nijmegen | www.techwatch.nl
Abonneren Abonnement op privéadres: 81 euro Bedrijfsabonnement: 140 euro Internationaal abonnement: 210 euro Studentenabonnement: gratis Prijzen op jaarbasis en inclusief btw. Abonnementen lopen van januari tot en met december. Opzeggen tot uiterlijk één maand voor het verstrijken van de abonnementsperiode. Studenten en professionals die werken aan slimme producten en machines (zoals elektronica- en softwareontwerpers, systeemarchitecten, chipdesigners en technisch managers) kunnen Bits&Chips gratis thuis ontvangen. Vul het aanvraagformulier in op www.bits-chips.nl. Deze gratis abonnementen zijn beperkt tot België en Nederland. Losse nummers op aanvraag: 10 euro. Klachten over bezorging Heeft u Bits&Chips niet of te laat ontvangen of heeft u andere opmerkingen over de bezorging? Laat het ons weten. Stuur een e-mail naar info@techwatch.nl. Adverteren Advertentietarieven staan vermeld op onze website (www.bits-chips.nl). Wanneer u op de hoogte gehouden wilt worden van komende thema’s en specials of voor het reserveren van advertenties, neem dan contact op met de afdeling sales, tel +31 24 3505544 – sales@techwatch.nl. Verschijningsdata 22 april, 6 mei, 3 juni, 17 juni, 8 juli, 9 september, 23 september, 21 oktober, 4 november, 2 december, 23 december Copyright Alle rechten voorbehouden. (c) 2011 Techwatch bv. Niets uit deze uitgave mag worden verveelvoudigd, opgeslagen in een geautomatiseerd gegevensbestand of openbaar gemaakt, in enige vorm of op enige wijze, hetzij elektronisch, mechanisch, door fotokopieën, opnamen of enige andere manier, zonder voorafgaande toestemming van de uitgever. Disclaimer Uitgever en redactie betrachten uiterste zorgvuldigheid bij het maken, samenstellen en verspreiden van de informatie in Bits&Chips, maar kunnen op geen enkele wijze instaan voor de juistheid of volledigheid van de informatie. Uitgever en redactie aanvaarden geen aansprakelijkheid voor schade die zou kunnen ontstaan als gevolg van de publicatie van informatie in Bits&Chips. Columnisten en externe medewerkers schrijven op persoonlijke titel. Reacties van lezers vallen buiten de verantwoordelijkheid van uitgever en redactie. Uitgever en redactie aanvaarden geen aansprakelijkheid met betrekking tot de inhoud en ondertekening van reacties van lezers. De redactie behoudt zich het recht voor reacties niet of gedeeltelijk te plaatsen of te bewerken. Fotografie Productfoto’s zijn van fabrikanten, overige foto’s zijn van Techwatch bv (c), tenzij anders vermeld.
D
De foundry van Kroes
e Europese Commissie maakt zich sinds kort weer zorgen over de tanende halfgeleiderproductie in Europa. Na in de jaren tachtig en negentig vergelijkbare sentimenten te hebben gekoesterd, leek het er in recenter tijden op dat bestuurlijk Europa zich had neergelegd bij geleidelijke overheveling van de hightechproductie naar Azië. Toen de Crolles-alliantie werd ontbonden en Qimonda failliet ging, bleef het in Brussel oorverdovend stil. Het snelle herstel van maakland Duitsland uit de financiële crisis, een grondstoffen hamsterend China en een lobby van Semi, de vereniging van hightech toeleveranciers, wisten Eurocommissaris Kroes ervan te overtuigen het onderwerp terug op de agenda te plaatsen. Daarom onderzoekt een tweetal analistenbureaus inmiddels de impact van een 450-millimeterlijn op Europese bodem. Ook is er een heuse High Level Group in het leven geroepen om te bekijken welke maatregelen moeten worden genomen om IC-productie te behouden voor Europa. Dat levert een tragikomische situatie op. Inheemse Europese halfgeleiderbedrijven sputteren Paul van Gerven is tegen, bang dat hun eigen onderredacteur van Bits&Chips. zoeksprogramma’s worden afgeroomd ten gunste van projecten om productietechnologie te ontwikkelen die ze zelf niet nodig hebben – Semi natuurlijk wel. Dit tot ergernis van Kroes, die hen ervan betichtte ‘het verleden te melken’ in plaats van te investeren in de toekomst. Zijn deze ongebruikelijk harde woorden een prelude voor een grootschalige ingreep in de markt door Brussel? Krijgen halfgeleiders vanwege hun ‘strategisch belang’ een status vergelijkbaar met de rijkelijk gesubsidieerde Europese landbouw? Het valt niet te hopen. Want wat zou zo’n Europese 450-millimeterfabriek moeten produceren? De geheugenmarkt is een ramp, daar wil je niet eens tussen komen te zitten. Hard tegen hard tegen Intel lijkt ook niet zo’n slimme zet. Blijft over een foundry. Die zou realistisch gezien het leeuwendeel van zijn klandizie uit het Europese achterland moeten betrekken, maar dat is geen vetpot. TSMC haalt slechts zo’n tien procent van zijn omzet uit Europa, terwijl alle ‘grote’ Europese chipmakers toch echt een fablitekoers varen. Zo’n Europese foundry hangt dus binnen de kortste keren opnieuw aan het EU-infuus om de lichten te laten branden. De zaken liggen iets anders als Intel in Ierland of Globalfoundries in Dresden een 450-millimeterlijn wil opzetten in Europa. Zonder subsidie doen deze bedrijven dat vast niet, maar de strategische controle over de fabriek zullen ze onder geen beding willen delen met de EU. Geen aantrekkelijke deal voor de Europese belastingbetaler dus. Sowieso is een geavanceerde fab op Europese grond een oplossing voor een probleem dat niet bestaat. Onze relatie met chipproducerende landen als Japan, Korea, Taiwan en de Verenigde Staten is uitstekend, dus reëel gevaar dat onze aanvoer om politieke redenen wordt afgesneden, dreigt er niet. De forse investeringen van en de stevige concurrentie tussen Globalfoundries en TSMC maken het onwaarschijnlijk dat er krapte op de markt ontstaat. Kroes heeft beslist gelijk dat Europa industriële productie niet moet veronachtzamen, maar een geavanceerde fab is op dit moment niet wenselijk. Beter R&D’t Europa zichzelf naar enkele dominante posities in technologie die nu nog in de kinderschoenen staat. Laat de EU daar de portemonnee voor trekken in plaats van prestigeprojecten te steunen. Alle R&D-arbeidsplaatsen in Europa een stevige ‘WBSO’, zodat beknibbelende nationale overheden – we noemen geen namen – geld overhouden om hun publieke kennisinfrastructuur op peil te houden. Is er een betere manier om van de Lage Landen, pardon, Europa in 2020 de meest innovatieve regio ter wereld te maken?
22 april 2011 |
| nr. 5 | 3
BITS&CHIPS
4e editie
HARDWARE
CONFERENCE 9 JUNI 2011
Goudsponsor
Techwatch organiseert op 9 juni de vierde editie van de Bits&Chips Hardware Conference. Dit event is dé jaarlijkse ontmoetingsplaats voor professionals en technisch managers in de high-end elektronica- en IC-ontwikkeling. In het lezingenprogramma staan technologische trends en marktontwikkeling in de elektronica- en halfgeleiderindustrie centraal. De thema’s dit jaar zijn herconfigureerbare logica, productietechnologie, organische elektronica, analoog en embedded computers. Op de Bits&Chips Hardware Conference 2011 praat u op één dag bij met vakgenoten, experts en leveranciers van componenten, tooling, kennis en diensten.
Standhouders Adeas Altera/EBV Elektronik AnSem ASML Barco Silex Bruco Integrated Circuits CB Distribution Dekimo/Layers Easics GreenPeak Technologies HDL Works The High Tech Institute JTAG Technologies MathWorks MEN Mikro Elektronik Neways Electronics International Parhelia Rohde & Schwarz Rutronik Sogeti tbp electronics Belgium TMC Electronics
Inschrijvingen geopend Vanaf nu is het mogelijk om u in te schrijven voor de Bits&Chips Hardware Conference. Vooraf registreren is verplicht en is mogelijk tot en met 6 juni. U kunt zich aanmelden via www.hardwareconference.nl/bezoekers Actie Ontvang nu € 20 korting op de standaard entreeprijs van € 95 (incl. btw). Geïnteresseerd? Schrijft u zich dan nu in met de volgende kortingscode: 901959124 Standhouders
Er zijn nog standplaatsen beschikbaar. Als standhouder of sponsor kunt u gebruikmaken van de gunstige advertentie- en promotietarieven in Bits&Chips. Voor meer informatie: events@techwatch.nl of +31 24 3505544.
Workshops
Workshops op de Bits&Chips Hardware Conference zijn een unieke gelegenheid om uw technologie, tooling of producten onder de aandacht te brengen bij ontwikkelaars en engineers in de elektronica. Bij de workshop is uitgebreide promotie via Bits&Chips en onze nieuwsbrieven inbegrepen. Lees op de website over de mogelijkheden of bel met René Raaijmakers, +31 24 3503065.
Partner
Noteer in uw agenda:
Bits&Chips Hardware Conference | 9 juni 2011 1931 Congrescentrum Brabanthallen | ’s-Hertogenbosch
www.hardwareconference.nl
INHOUD THEMA
THEMA
20
26
ASML proeft aan modelgebaseerd ontwikkelen
THEMA
28
Regie over mechatronica met ASD en Mathworks
Supervisory control theory toegepast op pretparkvoertuigen
INTERVIEW MET JOS BAETEN
39 De waarde van vroeg en formeel modelleren 41 Waarom het wiel steeds opnieuw uitvinden? 43 Een modelgebaseerde app overzetten van Android naar Iphone
VERDER IN DIT NUMMER NIEUWS
6 Geprinte elektronica: nog niet 8 ‘Intel is nooit echt niet-embedded geweest’ 12 Eindhovens Iphion doet gooi naar IP-tv 13 Scherpe geluiden op Hightech Topevent 15 Ruis
OPINIE
3 De foundry van Kroes – Paul van Gerven 7 Kangoeroes in Den Haag – Egbert-Jan Sol 11 Welke werkbank? – Angelo Hulshout 15 Vraag het de headhunter – Anton van Rossum 33 Luchtkastelen? – Albert Mietus
Binnenkort in
16 De hele wereld aan de modelgebaseerde systeemontwikkeling
THEMA MODELGEBASEERDE ONTWIKKELING
20 ASML proeft aan modelgebaseerd ontwikkelen 26 Regie over mechatronica met ASD en Mathworks 28 Supervisory control theory toegepast op pretparkvoertuigen 35 Testautomatisering helpt nieuwe communicatie met seinen en wissels te verbeteren 37 MDD voor multicore
Nr. 6 Thema Verkeer en vervoer
EN VERDER
44 Cursusagenda 44 Eventagenda 44 Advertentie-index 45 Wegwijzer
Nr. 7 Beursnummer Bits&Chips Hardware Conference
Nr. 8 Thema Multicore
Een interessante bijdrage? nieke@techwatch.nl Adverteren in deze nummers? sales@techwatch.nl
22 april 2011 |
| nr. 5 | 5
NIEUWS
Geprinte elektronica: nog niet De reclame- en verpakkingssector zitten met smart te wachten op geprinte elektronica, maar Oled zal het bal openen. Een impressie van de Printed Electronics Europe-conferentie. Paul van Gerven
‘M
arkten zijn moeilijker dan moleculen.’ Met deze uitspraak verwoordde keynoter Karen Gleason, hoogleraar bij MIT, een sentiment dat veel van de deelnemers aan de Printed Electronics Europe-conferentie op 5 en 6 april in Düsseldorf zullen herkennen. Met de nodige inspanning kun je vaak wel moleculen vinden die doen wat je wilt, maar wat wil je eigenlijk dat ze doen? Aldus dansen technologieontwikkeling
en toepassing als worstelaars om elkaar heen. Nog wel. Het wachten is op het moment dat ze elkaar in de houdgreep nemen. Organisator IDTechex deed desalniettemin een dappere poging om techneuten en toepassers nu al dichter bij elkaar te brengen. Zo stak een marketeer van snoepfabrikant Mars niet onder stoelen of banken dat hij begint te watertanden bij de aanvullingen op zijn gereedschapskist die geprinte elektronica belooft te leveren. Als verkoper van een product dat de meeste mensen weliswaar lekker vinden, maar ook proberen te vermijden, is niets belangrijker dan opvallen. Een geanimeerd logo op elke
6 |
| nr. 5 | 22 april 2011
reep doet natuurlijk veel om de zichtbaarheid te vergroten. Ook in de marketingsfeer, maar wel al gereed voor de markt, is de Aircode Touch van het Duitse bedrijf Printechnologics. De Aircode Touch is een op papier, karton of folie gedrukte digitale code, tot 140 bit groot, die met elk multitouchdisplay kan worden uitgelezen simpelweg door label en scherm met elkaar in contact te brengen. Een app interpreteert vervolgens de instructies, die bijvoorbeeld bestaan uit het opstarten van een website. Een Aircode op een advertentie in een tijdschrift zou een bestelsite kunnen oproepen, een Aircode op een verpakking de uitgebreide gebruiksaanwijzing. Vrijwel elk printsysteem kan de code aanbrengen.
van de markt voor zijn rekening. Dat komt op het conto van mobiele-telefoonschermpjes, maar dat blijft niet zo. ‘Ook al is lcd-technologie in de loop der jaren sterk verbeterd, het is onvermijdelijk dat Oled haar uiteindelijk passeert’, aldus Das. De laatste hobbel is volgens hem de stuurelektronica, waar jaren van onderzoek naar organische TFT’s niet het gewenste resultaat heeft opgeleverd. Het wachten is daarom op positieve resultaten met metaaloxides, die eveneens kunnen worden geprint. Een gedelegeerde van Oled-marktleider Samsung was een andere mening toegedaan, maar het geprinte OTFT-display dat hij liet zien, was verre van indrukwekkend. OPV is een achterblijver en speelt in de groeiprojectie slechts een bescheiden rol. Volgens Das heeft deze technologie zeker Binnenshuis nog tien tot vijftien jaar nodig om op kosCEO Raghu Das van IDTechex, dat ook een ten te kunnen concurreren met andere PVanalistenbureau is, denkt dat de komende concepten. Tot die tijd moet OPV het zien te rooien met unieke selling points. Flexibiliteit is daarvan de bekendste, maar wist u dat plastic zonnecellen onder sommige omstandigheden zelfs nu al beter presteren dan de concurrentie? Mauro Morana van Konarka, dat een organische zonnecel met een recordefficiëntie van 8,3 procent op zijn naam heeft staan, legde uit dat het niet fair is om OPV uitsluitend op zijn – toegegeven – ‘Het is onvermijmatig tot slechte rendement af te delijk dat Oled rekenen. Vooral binnenshuis, onder lcd-technologie kunstmatig of beperkt licht verzapasseert’, zegt melt een organische zonnecel meer IDTechex-CEO energie dan de meeste anorganiRaghu Das. sche exemplaren. Dat komt doordat Beeldkwaliteit is organische zonnecellen al bij een één reden: boven lagere lichtintensiteit stroom belcd, onder Oled. ginnen te produceren. Buitenshuis profiteert OPV van een rendement dat verbetert met stijgende temperatuur, terwijl de meeste zonnecellen juist slechter gaan presteren. Het is tijd, aldus Morana, om duidelijkere en eerlijkere standaarden op te stellen, zoals onlangs Oled-displaymakers zich niet langer de testprocedures van tien jaar steeds meer van dit soort producten de lcd-industrie lieten opdringen. de kop opsteken. Hij verwacht dat de markt Rennen voor geprinte elektronica zal groeien van De heilige graal van de geprinte elektronica, 2,2 miljard dollar dit jaar naar 45 miljard dollar over tien jaar. Dat is overigens nog al- ten slotte, is geprinte logica. Een product als de Aircode laat het rekenwerk over aan de tijd maar een fractie van wat de traditionele chips in het leesapparaat, maar dat heeft zo halfgeleiderindustrie omzet. In 2010 was dat zijn beperkingen. Voor producten als actieve zo’n driehonderd miljard dollar. En eigenlijk RFID-labels of (medische) sensoren zou een moet daarbij de display- en solarindustrie beetje intelligentie grote toegevoegde waarnog worden opgeteld, want Oled-schermen de hebben. Successen zijn echter tot op heen organische PV (OPV) worden ook tot de den vrijwel uitsluitend in het researchdoprintbare elektronica gerekend. Sterker nog: Oled-displays zijn de primai- mein behaald. ‘De bedrijven in dit segment proberen te rennen voordat ze kunnen lore drijvende kracht achter deze groei. Nu al pen’, oordeelt Das dan ook. neemt Oled met één miljard dollar de helft
Kangoeroes in Den Haag
S
kippy van de oude tv-serie was een intelligent dier. Op tv kun je een droombeeld schetsen, maar in werkelijkheid zijn kangoeroes niet zo slim. Kijk alleen al naar het aantal aangereden kangoeroes op Australische wegen. Politiek Den Haag schetst ook graag haar eigen beeld van de werkelijkheid. Als iedereen zich daarin kan vinden, dan kun je vanuit die versie een meerderheidsbeslissing vinden. Neem het beeld dat Den Haag bij de top van de kenniseconomieën wil behoren. Omdat je niet in alles top kunt zijn, wijst het kabinet daarom negen topsectoren aan. Daarover gaan we anderhalf miljard euro per jaar verdelen. Het idee is dat bedrijven om bij de top te horen hetzelfde bedrag erbovenop doen. In zijn dromen ziet Den Haag zelfs een verdubbeling, zodat we de Lissabon-norm halen. Om daarmee te helpen, krijgt het bedrijfsleven meer WBSO, minder winstbelasting en een ongelimiteerde innovatiebox. Bij elkaar zijn deze maatregelen meer dan zeshonderd miljoen euro waard. Iedereen kan zich in dit beeld vinden. Maar is de werkelijkheid Egbert-Jan Sol misschien niet ietsje anders? Voorheen stak de overheid twee miljard euro per jaar in het innovatiesys teem. Volgend jaar wordt dat vijfhonderd miljoen per jaar minder. Dat zou wel eens equivalent kunnen zijn aan vijfduizend banen in de innovatie en op termijn een veelvoud aan banen in de industrie en bijbehorende dienstensector. Vaste banen stoppen is lastig. Per jaar promoveren in Nederland vierduizend mensen. Het ligt voor de hand om bij zo’n bezuiniging een groot aantal promotieplaatsen niet in te vullen. Vanaf 2016 droogt dan de stroom promoties flink op. Een bijzaak is dat de universiteiten uit de eerstegeldstroom tweehonderd miljoen euro per jaar minder krijgen bij tweeduizend minder promoties per jaar. Op dat moment worden ook de effecten van het stoppen van de masterbeurs en het beboeten van langstudeerders voelbaar. Studenten starten misschien nog met een lastige studie in bèta of techniek, maar kiezen daarna voor een eenjarige master economie. Ergo: over vijf jaar komen er nauwelijks nog afgestudeerde bèta- of techniekpromovendi uit de pijplijn. Dat is allemaal niet zo erg. Op dat moment zijn er door de bezuinigingen op de universiteiten en bij TNO en de GTI’s toch minder vaste banen. Helaas gelooft Den Haag in zijn missie om tot de ‘topwerkelijkheid’ te komen. In de hofstad weten ze alles van geld uitgeven. Maar geld verdienen is iets anders. Als de financieel controller via belastingen geld binnen kan krijgen, dan wordt dat als winst gezien. Als een ontwikkelchef moeite doet om met andere spelers een subsidieproject te doen, zal hij zorgen dat het project een succes wordt en tot zinvolle innovatie in het bedrijf leidt. Wie garandeert dat een bedrijf met extra belastinginkomsten extra gaat innoveren? Waarom geeft de overheid het stuur uit handen? Als je voorop wilt geraken, dan moet je verder springen dan anderen. In de Haagse versie van de werkelijkheid wordt het beeld geschetst dat kangoeroes met een minder volle buidel verder kunnen springen. Helaas geldt in die schijnwerkelijkheid ook: hoe minder subsidieproviand in de buidel, hoe hoger wij in de innovatietop van de wereld terechtkomen – dankzij het bedrijfsleven. Alleen een kniesoor heeft oog voor het probleem van de vijfduizend dode kangoeroes langs de weg. Egbert-Jan Sol is directeur High-Tech Systems & Materialen bij TNO.
KORT VAN INTERNET Lithografie
ASML schakelt R&D op vanwege EUV-achterstand
ASML trekt zijn R&D-budget het tweede en mogelijk het derde kwartaal met vijf miljoen euro op naar 150 miljoen om de achterstand in de ontwikkeling van een volwaardige EUV-machine niet verder op te laten lopen. Dat heeft het bedrijf bekendgemaakt bij de presentatie van de eerstekwartaalcijfers. Het pijnpunt is en blijft de lichtbron, die voor een belangrijk deel de doorvoer van de machine bepaalt – en dus de geschiktheid voor commerciële productie.
Halfgeleiders
Catena-directeur: ‘We moeten voorbeeld Singapore volgen’
Als we niet uitkijken, zou de halfgeleiderindustrie wel eens uit Nederland kunnen verdwijnen. Daarvoor waarschuwt Rien Geurtsen. De directeur van het Delftse chipdesignhuis Catena vindt dat we een voorbeeld moeten nemen aan Singapore of Taiwan. ‘Dat zijn ook landen zonder natuurlijke delfstoffen, maar ze slagen er veel beter in om de kennis niet te laten wegvloeien.’
Beveiliging
Intrinsic-ID haalt random getallen uit transistorruis
Écht willekeurige getallen zijn lastig te verkrijgen, maar een vereiste voor zo’n beetje alle beveiligingsprotocollen. Het Eindhovense Intrinsic-ID komt met een oplossing voor dit probleem die de ruis van SRamgeheugen inzet om daadwerkelijk willekeurige nummers te genereren. IRNG, zoals het product heet, is beschikbaar als IP-blok om in te bouwen in nieuwe IC’s, of als C-bibliotheek voor bestaande hardware.
Energie
Superbatterij zuigt snel en veel energie op
Amerikaanse onderzoekers hebben een energieopslagsysteem ontwikkeld dat de eigenschappen combineert van een batterij en een supercondensator. Deze ‘superbatterij’ kan niet alleen grote hoeveelheden energie opslaan, zij kan die ook in korte tijd afgeven of opnemen. Supercondensatoren kunnen grote stromen aan, maar kunnen dat slechts korte tijd, omdat de tank snel vol of leeg is. Bij batterijen is het min of meer andersom. De meeste degraderen snel wanneer ze snel op- of ontladen, maar ze kunnen wel relatief veel energie opslaan.
Halfgeleiders
TI betaalt 6,5 miljard voor National Semiconductor
Texas Instruments neemt National Semiconductor over voor 6,5 miljard dollar. De deal combineert twee grote spelers in de markt voor analoge halfgeleiders. TI was in 2010 marktleider met een omzet van 6,0 miljard dollar en een aandeel van 14 procent. National boekte een omzet van 1,6 miljard dollar en bediende daarmee 3 procent van de markt. Over zes tot negen maanden verwachten de twee bedrijven de transactie te hebben afgerond.
22 april 2011 |
| nr. 5 | 7
NIEUWS
I
ntel en embedded, de relatie tussen deze twee kenmerkt zich door pieken en dalen. Door de jaren heen heeft het chipbedrijf diverse platforms voor diep embedded gehad, maar met de verkoop van zijn Arm-gebaseerde XScale-productlijn aan Marvell in 2006 leek het definitief een punt te zetten achter aspiraties om het stempel ‘Intel inside’ te krijgen op zaken als consumentenelektronica en handheld apparatuur. Weliswaar bleven de industriële varianten van de Intel-processoren, met langetermijnbeschikbaarheid en grote temperatuurtoleranties, onverminderd populair in embedded bordjes, maar naar de buitenwacht toe draaide het alleen nog om pc’s en servers. De onderkant van de embedded-markt – de energiezuinige, goedkope en nauw geïntegreerde processoren – was een blinde vlek in Intels aanbod. In 2008 sloeg het klimaat echter volledig om. Met de introductie van zijn Atomarchitectuur zette de chipgigant plotseling weer volop in op de embedded-wereld – niet alleen met het aanbod maar zeker ook de profilering. Vandaag de dag heeft Intel zijn markt onderverdeeld in negen groepen, waarvan er slechts twee de traditionele business vertegenwoordigen: eentje voor datacentrumoplossingen en eentje voor pc’s. Deze vormen veruit het grootste deel van het bedrijf. Vorig jaar haalde het 72 procent van de inkomsten uit de pc-activiteiten en twintig procent uit het datacentrumsegment. De zeven andere bedrijfonsderdelen waren samen goed voor slechts acht procent van de inkomsten. Overigens: dat is nog steeds 3,5 miljard euro. De andere bedrijfsonderdelen zijn de groep voor Nand-flashgeheugen, een afdeling voor software en diensten en een divisie gericht op gezondheidszorg, met name op telehealth. De overige zijn allemaal op een bepaalde manier als ‘embedded’ te bestempelen. Wind River, de embedded-softwarespecialist die Intel in 2009 overnam voor 884 miljoen dollar, is een aparte groep. Digital Home werkt aan Intel Architecturegebaseerde (IA) oplossingen voor tv’s, settopboxen en dergelijke met internetverbinding. De Ultramobility-groep doet verwoede pogingen om IA-gebaseerde systeemchips voor smartphones te ontwikkelen – en de bijbehorende business. En dan is er Embedded and Communications-groep, met aan het hoofd Ton Steenman. Bits&Chips sprak met hem over de strategie die Intel volgt op embedded-gebied.
Waarom proberen jullie weer terug te komen in de embedded-markt? ‘We zijn nooit echt niet-embedded geweest. Het bedrijf is opgericht op het embeddedsegment, maar laat in de jaren tachtig werd de pc de belangrijkste trend. Er kwam zo
8 |
| nr. 5 | 22 april 2011
veel focus op het ontwikkelen daarvan, dat Intel vooral daarom bekend werd. Toen ik in 1982 in Nederland bij Intel startte, moest ik voortdurend uitleggen wat het bedrijf deed. Niemand wist wat Intel was.’ ‘Gedurende de jaren negentig en nul werden we zeer zichtbaar in de pc-markt. In die tijd bleven we soort van in de embedded-markt, hoewel dat niet altijd zichtbaar was. Het duurde tot het midden van de jaren negentig voor de Intel-architectuur een belangrijke kracht werd in embedded en we significante groei zagen. En toen we vijf of zes jaar geleden serieus om ons heen keken voor verdere diversificatie en groeikansen, zagen we drie verschillende markten waarvan we geloofden dat er significante groei mogelijk is: telefoons en mobiele devices, de digital home en embedded.’
‘Intel is nooit echt niet-embedd geweest’ Intel profileert zich sinds een paar jaar volop als embedded-leverancier. De Atom-architectuur speelt hierin een sleutelrol, maar bij het volstoppen van de omgeving met intelligentie komt de hele productlijn aan bod, plus een flinke dosis software. Bits&Chips sprak met
Is het niet gek dat XScale algemeen manager van Intels Embedded and verkocht is en dat Intel nu met Atom weer probeert Communications-groep Ton Steenman over de binnen te komen? embedded-strategie. ‘Dat is niet gek. Toen we die stap namen, hadden we al de Atom-microprocessoren in Pieter Edelman ontwikkeling. En toen we keken naar de opeenvolgende generaties van knooppunten en procestechnologieën werd het voor ons dui- pen, zijn nieuw voor Intel. En het is een brede variëteit aan toepassingen. We hebdelijk dat we met de Atom hetzelfde niveau van integratie en energiegebruik konden ha- ben bijvoorbeeld een ontwerp voor interlen als met XScale. Dus dat was geen beper- actieve fitnessapparatuur. Dat hebben we king meer. En toen ontdekten we dat onze nog niet eerder gehad. We hebben zowel klanten echt aanzienlijke voordelen haalden een ontwerp met Atom als een Core 2 Duouit het feit dat ze hun software op een enkele gebaseerd ontwerp. Deze fitnessmachines architectuur konden uitrollen, van hoog naar weten min of meer je workoutroutine, je laag. Er zijn een hoop bedrijven die onze niveau en ze monitoren dat en vertellen je Xeon- of Core-processoren gebruiken, en ze welk type oefening je het beste kunt doen. hebben nu de kans om dit verder te schalen We hebben ook een design-win voor een naar de low-end toepassingen waar er nooit grote oogstmachine die nu in verbinding een goede IA-gebaseerde oplossing was.’ staat met gps en waarmee ze nu ’s nachts kunnen oogsten, iets wat ze hiervoor nooit Doet de architectuur er zo veel toe dan? konden doen.’ Afgezien van het low-level-niveau heb je als programmeur toch nooit met de Waarom hebben jullie deze vier groepen instructieset te maken? die ‘embedded’ Socs ontwikkelen? ‘Maar dat niveau is waar het altijd mis gaat. ‘Telefoons zijn een markt waar een zeer speDe low-level drivers en infrastructuur zijn cifiek op maat gemaakte Soc nodig is, en beschikbaar voor onze processoren, en ze voor digital home met slimme tv’s en setzijn direct in te zetten.’ topboxen geldt hetzelfde. We hebben een organisatie genaamd Atom and System-onWat voor bedrijven zetten jullie a-Chip Development Group die de kern van producten nu in? de microprocessoren ontwikkelt en veel ‘Zestig procent van de bedrijven aan wie van het standaard IP daaromheen dat alle we momenteel Atom-processoren verko- bedrijfsgroepen gebruiken.’
ded
En het IP van Infineon Wireless, dat jullie hebben overgenomen, komt daar ook terecht? ‘Uiteindelijk wel. Dat zal ook in standaard IP-bouwblokken terechtkomen binnen het bedrijf.’
Privacy Intels embedded-en-communicatiegroep zet in op vier groeigebieden. De eerste is retail en signage, waar intelligente bebording, betaalterminals, verkoopmachines en de koppelingen naar servers en internet onder vallen. Vooral het idee om een klant te herkennen en hierop in te spelen, is een gebied waar Intel veel in ziet. De tweede tak draait om energie en smart grids, variërend van grootschalige stroomnetwerken tot energiebeheer in huis. De derde poot richt zich op automotive-infotainmentsys temen. Onderlinge voertuigcommunicatie met bijbehorende intelligentie en netwerkverbinding zijn de belangrijkste legitimaties van Intel-silicium in dit segment. Als vierde is er communicatie-infrastructuur. Intel denkt bij zijn vier focusgebieden het overgrote deel van de toepassingen te
kunnen bestrijken. Aan de high-end kant voor krachtige centrale functies met zijn Xeon-processorlijn, aan de low-end met Atom, en de Core-processoren voor tussenliggende toepassingslagen. Daarbij probeert het rond deze thema’s ook partners om zich heen te verzamelen en standaarden op te stellen. En de chipmaker timmert ook zelf hard aan de weg met het ontwikkelen van de benodigde softwarestacks. Op dat punt zou het nog wel eens een sterke troef in handen kunnen hebben: McAfee. Het bedrijf van Steenman telde hier vorig jaar acht miljard dollar voor neer, een deal die menig wenkbrauw deed fronsen. Voor de pc-markt is er immers een actief ecosysteem aan beveiligingsspecialisten en het is geheel niet duidelijk wat een chipmaker hier voor strategisch voordeel uit haalt. Naar nu blijkt, moet althans een deel van de reden gezocht worden in de diverse embedded-marktsegmenten. Naar gelang devices steeds meer genetwerkt raken, nemen ook de kopzorgen rond beveiliging en privacy toe. Daarvoor ontbreekt nog een vergelijkbaar ecosysteem van beveiligers, en dat is waar Intel via M cAfee op wil inspelen.
Is er ook plaats voor microcontrollers en andere architecturen in deze ecosysteemvisie? ‘Tegenwoordig zijn er embedded toepassingen variërend van Xeon helemaal naar beneden tot praktisch zand. Dekken we dit vandaag de dag of zelfs in onze visie allemaal af met IA? Nee. We dekken absoluut alles af van volledig bovenaan tot zo’n beetje halfweg naar beneden en ons doel is om verder te schalen naarmate devices meer verbonden worden en intelligentie gaan vragen.’ ‘Veel van de groei die we hebben gezien bij Atom zijn devices die vijf jaar geleden geen prestaties van Atom-klasse nodig hadden, maar vandaag de dag wel. Want ze zijn genetwerkt en de gebruikersinterface is zo veel rijker. En de verwachting van consumenten voor de interactie met embedded devices verandert ook aanzienlijk. Als je naar een digitaal display in een warenhuis kijkt, dan was het vijf jaar geleden goed genoeg dat het alleen maar een interessante grafische interface had. Als je nu dag naar een warenhuis gaat en je ziet een digitaal display en je kijkt naar het gedrag van mensen, met name kinderen, is het eerste wat ze doen ernaartoe lopen en van die typische telefoonbewegingen maken zoals uitzoomen. Mensen beginnen dat gewoon te doen en ze verwachten dat type interactiviteit met elektronische systemen.’ ‘Veel devices zijn statisch en bedoeld voor specifieke functionaliteit, maar vandaag de dag willen mensen ze kunnen upgraden en een half jaar later nieuwe diensten toevoegen. Dus er moet schaalbaarheid en bewegingsruimte zijn om dat te doen. Je kunt niet meer ontwerpen voor precies dat ene proces dat het op dat moment moet doen.’ Hoe komen jullie bij deze vier gebieden? ‘Dit zijn de gebieden waar we de grootste nood zien voor een significante toename aan meer intelligentie en interactiviteit.’ Komen er in de toekomst nog andere focusgebieden bij? ‘Het enige dat waarschijnlijk zal veranderen, is dat we verder naar beneden schalen. Dus we zullen wellicht categorieën toevoegen. Ofwel omdat we de capaciteiten van met name Atom-Socs hebben geschaald naar een kleinere footprint, een lagere prijs of een hogere integratie, ofwel omdat het device is geëvolueerd waardoor het een aantrekkelijke markt voor ons wordt. Zes of zeven jaar geleden toen we onze samenwerking met BMW startten, werd duidelijk dat de toekomstige generatie van verbonden voertuigen een nieuw niveau van interactiviteit en gebruikerservaring nodig had met applicatiedownloads en een verlenging van het digitale huis. En dus werd het vrij natuurlijk een groot en erg strategisch focusgebied.’
22 april 2011 |
| nr. 5 | 9
How do you reposition a wafer, nanometer accurate, every 50 μs? Join ASML’s Software Engineering Team and help to push the boundaries of what’s possible. At ASML we bring together the most creative minds in physics, electronics, mechatronics, computer science, software and precision engineering to develop lithography machines that are key to producing cheaper, faster, more energy-efficient microchips. Our machines need to image billions of structures in a few seconds with an accuracy of a few silicon atoms. The speed and precision of our machines are critical to help our customers meet their production targets. As a result, our software-controlled lithography machines have to reposition silicon wafers to nanometer accuracy in all three axes every 50 microseconds. It’s a complex piece of choreography that requires multi-disciplinary skills and real teamwork. If you’re a team-oriented software engineer who is challenged by complex technical problems, expert in programming and modeling for critical real-time applications and capable of working to demanding deadlines, you’ll find working in ASML’s Software Engineering Team a highly rewarding experience. Per employee we’re Europe’s largest private investor in R&D, giving you freedom to experiment and a culture to get things done.
www.asml.com/careers
For engineers who think ahead
OPINIE
Welke werkbank?
O
p het web, op Twitter, in nieuwsbrieven, in reclame en ook in bladen als Bits&Chips komen we de laatste jaren steeds meer en steeds betere ontwikkelomgevingen tegen voor modelgebaseerde ontwikkeling, steeds vaker aangeduid als language workbenches. Blijkbaar slaat het concept aan, zowel bij ontwikkelorganisaties als bij softwareontwikkelaars zelf. Nadeel is wel – zoals altijd – dat veel aanbod veel variatie betekent in functionaliteit en andere kwaliteiten. Dat maakt de keuze voor de juiste workbench minder triviaal. Het begint al met de keuze voor de definitie van de modelleertalen: gaan we voor grafisch, voor tekstueel of voor een mengvorm? En gaan we voor een zelfgedefinieerde domeinspecifieke taal, voor een standaard als UML of voor uitbreidingen op een programmeertaal? En wat gaan we vervolgens doen met de modellen? Documentatie schrijven bij de plaatjes of code genereren – het ultieme doel van modelgebaseerd ontwikkelen? Allemaal vragen die afhankelijk zijn van de omgeving waarin we werken en de doelen die we willen bereiken. De keuze voor de juiste workbench was ook een veelbesproken thema tijdens de Code Generation-conferentie in Cambridge vorig jaar juni. Zodanig veelbesproken dat een groep met daarin onder andere Markus Völter, Steven Kelly, Eelco Visser, Jos Warmer en ondergetekende tot de conclusie kwam dat er een vergelijking moest komen op een aantal belangrijke kenmerken Angelo Hulshout van language workbenches. Medio angelo@ juli lag er een conceptopdracht voor delphino-consultancy.nl een zogeheten Language Workbench Competition. Wie daaraan wil deelnemen, moet op basis van een gegeven generieke casus op drie niveaus van complexiteit laten zien wat met een language workbench naar keuze mogelijk is. Waar moet een workbench dan zoal aan voldoen? Allereerst moet het mogelijk zijn om structurele talen te definiëren, met daarbij ondersteuning voor correct gebruik, zeg maar ingebouwde grammaticacontrole. Met deze talen moeten modellen worden gemaakt, waaruit zonder al te veel problemen code in een gangbare programmeertaal kan worden gegenereerd – daar was het tenslotte om begonnen. Daarnaast moet het mogelijk zijn modellen op te delen in kleinere stukken die onafhankelijk van elkaar kunnen worden aangepast zonder dat de samenhang verloren gaat. Ook in modelgebaseerde ontwikkeling is de omvang van projecten en daarmee van teams en modellen groter dan de standaard ‘Hello world’-demonstratie. In het verlengde van dat laatste kan het ook zinvol zijn om meerdere talen te ondersteunen, evenals meerdere codegeneratoren. De meeste softwaresystemen zijn nu eenmaal gevarieerd van aard – data, gedrag en onderhoud vragen elk om hun eigen taal en werkwijze. Ook integratie met bestaande programmeertalen mag niet ontbreken. Wie met modelgebaseerde ontwikkeling aan de slag gaat, begint zelden met volledig nieuwe software en wil ook niet al zijn bestaande code weggooien. Ten slotte speelt ook continuïteit in ontwikkeling een rol. Dat betekent dat een workbench evolutie van modelleertalen en generatoren moet ondersteunen, al dan niet in combinatie met een configuratiemanagementsysteem. Ook schaalbaarheid speelt een rol: net zoals de hoeveelheid code in een systeem toeneemt van release op release, zal dat ook met modellen gebeuren – wat vervolgens weer de noodzaak introduceert om werken in teams te ondersteunen. Of de ideale workbench bestaat, die dit allemaal ondersteunt? Ik betwijfel het, maar de Language Workbench Competition heeft inmiddels tien deelnemers die de komende weken keihard aan het werk gaan om te laten zien wat mogelijk is. Wat begon als een losse flodder bij een barbecuelunch in Cambridge heeft geresulteerd in een eendaagse workshop, een jaar na dato – op 24 mei 2011. Over de resultaten zal hopelijk nog veel worden gecorrespondeerd.
KORT VAN INTERNET Lithografie
ASML verpletterde Nikon in 2010
In VLSI Research’ overzicht van grootste leveranciers aan waferfabs in 2010, groeide de omzet van ASML met ruim 215 procent tot boven de vijf miljard dollar, de hoogste relatieve stijging in het hele lijstje. Nikon daarentegen was de enige die kromp, al was het maar met -0,8 procent. In termen van omzet was ASML daarmee bijna zeven keer zo groot als zijn Japanse concurrent.
Medisch
UT-spin-off koppelt bloedmeter aan trombosedienst
Mobihealth en de trombosedienst van de Isala Klinieken in Zwolle bouwen de komende maanden een koppeling tussen een thuismeetsysteem voor bloedstolling en het webportaal van de dienst. Ook ontwikkelt de UT-spin-off een algoritme dat op basis van de meetwaarden de dosering bepaalt. De provincie Overijssel stelt een ton subsidie beschikbaar, de helft van de ontwikkelkosten.
Elektronica
Neways neemt 54 industrieel ontwikkelaars over van DHV
Advies- en ingenieursbureau DHV uit Amersfoort verkoopt zijn Eindhovense engineeringgroep aan Neways. Bij de afdeling ontwikkelen 54 mensen elektronische systemen voor de hightechindustrie. De bedrijven werkten al regelmatig samen aan projecten voor onder meer ASML en Fei.
Consumentenelektronica
‘Van Houten grijpt hard in bij tv-tak’
De nieuwe Philips-CEO Frans van Houten gaat stevig bezuinigen op de televisieactiveiten. Dat hebben ingewijden gezegd in De Telegraaf. De tv-business is al lange tijd een blok aan het been. Ook in 2011 lijkt de ommekeer uit te blijven: het eerste kwartaal stevent het onderdeel al af op een operationeel verlies van honderd tot honderdtwintig miljoen euro, zo blijkt uit een winstwaarschuwing die Philips onlangs afgaf.
Halfgeleiders
NXP verschuift automotivefocus naar China
NXP verhuist zijn hoofdkwartier voor automotive-sales en -marketing naar Sjanghai en opent er gelijk een R&D-centrum voor dit marktsegment. De markt voor NXP’s automotiveproducten laat de sterkste groei zien in China, geeft de chipfabrikant als reden. Behalve dat de Chinese thuismarkt ontluikt, zetten alle belangrijke Europese en Amerikaanse klanten van het bedrijf er significante bedrijfs- en ontwikkeloperaties op.
Medisch
Magnetische-bolletjestest Philips eind 2012 in kliniek
Philips denkt eind volgend jaar de markt op te kunnen met zijn biosensor gebaseerd op magnetische bolletjes. De Magnotech-test zal in eerste instantie worden ingezet voor het snel monitoren van operaties aan de bijschildklieren. Ook een snelle test voor hartaanvallen staat op het programma.
22 april 2011 |
| nr. 5 | 11
NIEUWS
Eindhovens Iphion doet Terwijl internetradio al jaren doodgewoon is, bestaat er nog steeds geen internet-tv (IP-tv). Er zijn namelijk twee grote hordes te nemen: het garanderen van broadcastkwaliteit en het adequaat beveiligen van de content. Iphion claimt beide problemen te hebben opgelost en start binnenkort een proef met HD-IPtv op het glasvezelnet in thuisstad Eindhoven. Jan Kees van der Veen
V
ideo streamen over het web gebeurt al lang, bijvoorbeeld bij Youtube, maar de resolutie is laag en de timing moeizaam, omdat internet nu eenmaal niet is ontworpen voor bewegende beelden. De datastroom wordt in stukjes gehakt, die via verschillende routes de eindbestemming kunnen bereiken. Als het druk is op het web, Een belangkomt een pakrijke taak van ketje soms niet de Iphionop tijd aan. De speler is het kijker ziet dan decrypten van secondenlang het tv-signaal. een bevroren beeld. Bovendien legt de huidige methode van streaming een directe een-op-eenverbinding tussen zender en ontvanger (unicast). Als veel mensen tegelijk streamen, geeft dit een enorme belasting van het web, die excessief wordt als de resolutie van het tv-signaal naar broadcastkwaliteit zou gaan. En dan is er nog een probleem. De contenteigenaren en broadcasters zijn zuinig op hun materiaal, willen zeker zijn van hun inkomsten en vinden internet eng. Om ze mee te krijgen, moet er een waterdichte beveiliging komen van broadcaster tot huiskamer, die hackers en zwartkijkers geen kans geeft. Ook dit is een stevige uitdaging. Veel grote en kleine bedrijven hebben de afgelopen jaren hun tanden stuk gebeten op IP-tv, en zijn afgehaakt. Een van de weinige overblijvers is Iphion, een vijtien man sterk bedrijf op het TU-terrein in Eindhoven, dat met zijn vernuftige oplossing wel eens hoge ogen zou kunnen gaan gooien. Iphion werd in 2006 opgericht door twee door de wol geverfde ondernemers, Merien ten Houten en Willem Jan Withagen. Ze stonden aan de wieg van respectievelijk de zoekmachine Ilse en Internet Access Eindhoven. Ze hadden een visie: in de toekomst ontvangen huishoudens hun informatie- en
12 |
| nr. 5 | 22 april 2011
communicatiediensten alleen nog via internet. Aparte kabels voor telefoon en tv en systemen als Digitenne zullen verdwijnen; internet biedt namelijk veel meer flexibiliteit en is goedkoper. Voor telefonie is hun voorspelling uitgekomen. Geruisloos is vrijwel al het telefoonverkeer overgegaan op IP. Niemand klaagt over de kwaliteit en de prijzen zijn sterk gedaald. Ten Houten en Withagen willen hetzelfde kunstje uithalen met broadcast-tv. De twee wisten waar ze aan begonnen en hadden er vier jaar voor uitgetrokken. Het zijn er vijf geworden, maar het is gelukt een concept te ontwikkelen dat niet alleen technisch goed doortimmerd is, maar ook de instemming heeft van alle belanghebbenden in de broadcastketen. De proeftuin waar het systeem zich nu moet gaan bewijzen, met high-definition-IP-tv, is het glasvezelnetwerk in Eindhoven.
Decrypten De infrastructuur van servers en repeaters is klaar en de Iphion-spelers (clients) om IP-tv te ontvangen, zijn sinds enkele weken te koop voor klanten van Onsneteindhoven. De videostromen van diverse tv-kanalen worden aangeboden aan Iphion-servers in Amsterdam, daar versleuteld (DVBCSA) en doorgestuurd naar repeaters in Eindhoven, die voor de echte distributie zorgen. Deze repeaters zijn stream multipliers, die tienduizenden clients kunnen voorzien van de door hen aangevraagde streams. Om de uptime zo hoog mogelijk te maken, hebben ze peer-topeer-functionaliteit – ze kunnen elkaars taak overnemen. Het netwerk is daardoor
zelfreparerend en makkelijk uit te breiden. De Iphion-spelers, settopboxen van vijftien bij vijftien centimeter, zijn feitelijk kleine, op maat gesneden computers die met internet communiceren. ‘We wilden een netwerktopologie die zo efficiënt mogelijk omgaat met bandbreedte’, licht Withagen toe. ‘Niet iedere client zijn eigen stream vanaf de repeater, maar intelligente clients die pakketjes kunnen doorgeven aan andere clients. Peer-to-peerstreaming is niet nieuw, maar om de timing goed te regelen – er mogen immers geen gaten vallen in het tv-signaal – hebben we een extra laag boven op UDP ontwikkeld: het Iphion Peer-Assisted Protocol. Dat scheelt zestig procent in de bandbreedte.’
Prodrive tekent voor de ontwikkeling en productie van de PCB in het Iphion-kastje.
gooi naar IP-tv
Iphion-oprichters Willem Jan Withagen (links) en Merien ten Houten hadden een visie: in de toekomst ontvangen huishoudens hun informatie- en communicatiediensten alleen nog via internet. Een belangrijke taak van de Iphion-speler is het decrypten van het tv-signaal. Via een beveiligd kanaal levert een ID-server hiervoor elke twintig minuten een andere sleutel. Gezien de sleutellengte zou ontcijferen van één sleutel al jaren kosten, dus hacken is vrijwel onmogelijk. Verdere functies van de speler zijn het verzorgen van de userinterface (afstandsbediening wordt meegeleverd) en de elektronische programmagids (EPG). Het Iphion-systeem kan HD-tv distribueren in glasvezelnetwerken. Bij ADSL-netwerken, waar de bandbreedte net te krap is, is alleen standaard tv mogelijk.
IP-tv-race De Iphion-speler is, min of meer toevallig, een regionaal product geworden. Belangrijkste componenten zijn twee NXP-chips: een 32 bit Mips-processor – door Philips veel toegepast in embedded systemen – en een Trimedia-processor. Voor de ontwikkeling en productie van de PCB tekent Prodrive in Son, dat al de nodige ervaring had met settopboxen. Ten Houten: ‘We hebben ook naar toeleveranciers in het Verre Oosten gekeken, maar uiteindelijk gekozen voor een lokaal bedrijf, vanwege de veel eenvoudigere communicatie. De specificatie die we hun gaven,
besloeg minder dan één A4’tje. We hebben er nog een paar keer over vergaderd, maar drie maanden later lag er een werkend prototype. Prodrive had bovendien een goede prijs.’ Het systeem draait op Linux, waar Iphion zijn eigen software bovenop heeft ontwikkeld voor de netwerktopologie en de userinterface. Omdat de speler een connected device is, kunnen anderen in systemen eromheen applicaties ontwikkelen om het kastje te besturen en te integreren. Binnenkort geeft Iphion een set Api’s vrij die externe partijen deze mogelijkheid gaat bieden. Op dit moment is de speler al te besturen met een smartphone, via Wifi. NSpyre, dat op loopafstand van Iphion zit, heeft Adobe Flash Light in het kastje geïntegreerd, zodat partners eigen grafische gebruikersinterfaces en internettoepassingen kunnen inbouwen. Integratie van een browser zit in de planning. Het is te verwachten dat de software van de speler zeker in de aanloopperiode regelmatig (remote) een update zal krijgen. Iphion heeft niet de ambitie een kastjesleverancier te worden: de Eindhovenaren zullen hardware van anderen ondersteunen; hun corebusiness is de ontwikkeling van geavanceerde netwerkarchitecturen voor de distributie van content. Als het nu gelanceerde concept aanslaat, is de verwachting dat de functionaliteit van de speler op den duur in de tv zelf zal terechtkomen, want niemand houdt van losse kastjes. Iedere televisie zal dan een eigen Ethernet-aansluiting krijgen. Gaat het een succes worden? Ten Houten: ‘Dat we als een van de weinige partijen in de IP-tv-race zijn overgebleven, hebben we aan twee dingen te danken: aan onze aanzienlijke technische bagage en lange ervaring in internetapplicaties en, misschien nog wel belangrijker, aan het feit dat we vanaf het begin heel goed naar de klant hebben geluisterd. We hebben vier jaar lang intensief overleg gehad met alle partijen in de keten en vertrouwen weten op te bouwen dat onze oplossing echt werkt. We zijn er trots op dat het gelukt is en we ons systeem kunnen gaan uitrollen.’
Scherpe geluiden op Hightech Topevent Paul van Gerven
‘H
oe gaat het team voorkomen dat Nederland het IJsland van de hightechinnovatie gaat worden?’ Dat niet iedereen zich heeft neergelegd bij de vijfhonderd miljoen euro per jaar die het kabinet bezuinigt op innovatie, werd wel duidelijk op het Hightech Topevent, 13 april in ’s-Hertogenbosch. Aan het slot van een volle dag workshoppen en brainstormen kon de sector daar in debat met het zogenoemde topteam, dat in juni advies aan de minister moet uitbrengen over de verdeling van onderzoeksgeld in de Nederlandse hightech. De commissie bestaat uit Amandus Lundqvist (AWT), Marc Hendrikse (NTS Group), Dave Blank (Mesa+) en de niet aanwezige Hans de Groene (NWO). Zij beloofde de input van de workshops en het debat mee te nemen in haar advies. Ook directeur Innovatie op het ministerie van Economische Zaken, Landbouw en Innovatie Renée Bergkamp verzekerde dat ‘er geprioriteerd moet worden, maar u heeft vandaag wel invloed’. De zaal leek zich het meest zorgen te maken over de publieke infrastructuur, met name opleiding en onderwijs. TNO-directeur Innovatie Egbert-Jan Sol luidde de noodklok over het tekort aan promovendi dat dreigt te ontstaan door de bezuinigingen. Elders in dit blad doet hij dat nog eens dunnetjes over (zie pagina 7). Frencken Europe-baas Henk Tappel trok het breder. Hij ziet op alle opleidingsniveaus rampzalige tekorten ontstaan en laakte de versnippering die de techniekpromotie kenmerkt. TUE-hoogleraar Maarten Steinbuch verwoordde veel van het zeer aan publieke zijde door Tappel te vragen of hij bereid was de extra WBSO terug te sluizen naar een kennisinstelling. De ondernemer gaf geen krimp: ‘Daarover valt te praten.’ Het topteam stelde zich constructief op en wuifde de kritiek niet weg. Lund qvist wekte de indruk dat hij zich wél bij de politieke realiteit had neergelegd, maar er nog het beste van wilde maken. ‘Een topteam maakt achttien miljard euro bezuinigingen niet ongedaan’, temperde hij de verwachtingen.
22 april 2011 |
| nr. 5 | 13
TOPIC Embedded Systems: embedded in your future?
Passie voor techniek? Wij dagen je uit! In je carrière wil je groeien. Het beste uit jezelf halen en je ambities verwezenlijken. Dat begrijpen wij bij TOPIC maar al te goed. Als high-tech systeemhuis, gespecialiseerd in embedded systeemontwikkeling, dagen wij je uit. Iedere dag opnieuw. Sterker nog: uitdaging is bij ons een arbeidsvoorwaarde! Bij ons werk je aan afwisselende en uitdagende projecten in technische software-ontwikkeling, test-, integratie- & configuratiemanagement en digital hardware design voor embedded systemen. Bij gerenommeerde klanten in consumenten-
electronica, medische- en professionele systemen. Werk dat past bij jouw ambities. Ook biedt TOPIC je gedegen en persoonlijke coaching, het Personal Improvement Program en uitdagende secundaire arbeidsvoorwaarden. Ben jij die Embedded Software Engineer of Digital Hardware Designer op zoek naar een nieuwe uitdaging? Mail dan snel je motivatie met CV naar recruitment@topic.nl of bel eerst met Frank de Roo, Business Manager, (0499) 336 979.
Voor meer informatie:
WWW.TOPIC.NL
OPINIE
Vraag het de headhunter M.R. vraagt: Ik heb een hbo-studie technische informatica gedaan en aansluitend een tweedefaseopleiding. Daarna ben ik aan de slag gegaan als IT’er in diverse rollen, meestal infrastructuurgerelateerd, maar ook op het gebied van beveiliging en applicatieontwerp. Al deze rollen speelden zich echter niet af in de technische IT maar in administratieve omgevingen. Ik ben nu al weer heel wat jaartjes IT-infrastructuurarchitect, de laatste jaren als zzp’er. Ik begin me echter af te vragen of ik dit wel tot mijn pensioen wil doen. Technische IT is me altijd blijven boeien en ook in mijn vrije tijd ben ik daarmee bezig. Hoewel ik me ervan bewust ben dat het gras bij de buren altijd groener lijkt, vraag ik me af of ik een horizontale overstap naar de technische IT zou kunnen maken om zo weer nieuwe uitdagingen aan te kunnen gaan. Ik heb als architect Anton van Rossum anton.van.rossum@ inmiddels behoorlijk ervaring opir-search.nl gedaan in het communiceren met klanten, het denken in concepten en het overzien van het grote geheel. Ik stel me zo voor dat dit voor bedrijven in de technische IT interessante bagage is. Ook merk ik in gesprekken met mensen die daar werkzaam zijn dat ik problemen anders aanvlieg omdat ik een andere achtergrond heb. Natuurlijk ben ik wat voorzichtig om mijn oude schoenen weg te gooien voor ik nieuwe heb. Hoe schat u de kans op een succesvolle horizontale overstap?
De headhunter antwoordt: Uit navraag bij experts uit mijn netwerk is gebleken dat overstappen voor jou beslist niet onmogelijk is. Er zijn echter een paar dingen waar je rekening mee moet houden. In hoeverre ben jij nog thuis in de embedded-systeemwereld? Daar hangt veel van af. Het zou kunnen dat ingenieurs met vijf jaar ervaring veel meer bij kunnen dragen dan jij. Ik kan dat zo niet beoordelen, maar het lijkt mij niet ondenkbeeldig. Hoe kun jij uit de voeten met een chip en een datasheet? Kun je hier zelfstandig mee aan de slag? Weet je welke hulpmiddelen je moet gebruiken? Kun je overweg met een oscilloscoop? Heb je oog voor resources? Het zijn geen giga- maar megahertzen, dat is een heel verschil. Voor een horizontale overstap zul je vermoedelijk wel wat bijscholing nodig hebben. Hoeveel je nodig hebt is één ding, wie het gaat betalen is een ander. Dit brengt ons op het volgende, niet onbelangrijke onderwerp: het financiële aspect. Op dit moment ben je zzp’er en je vertelde me dat je bij dertienhonderd declareerbare uren per jaar een omzet maakt boven de twee ton. Je moet je realiseren dat dit binnen de embedded-systeemhoek niet snel mogelijk is. De uurtarieven en salarissen liggen – gek genoeg maar daarom niet minder waar – een stuk lager dan in de administratieve automatisering en IT-infrastructuur. Dit impliceert dat je om je technische uitdaging te bevredigen onverbiddelijk een stapje terug zult moeten doen. Enerzijds zul je niet-declareerbare uren moeten besteden aan bijscholing, anderzijds zijn de wel declareerbare tarieven lager. Of je er in zult slagen opdrachten binnen te halen, hangt verder af van je vermogen je bagage en skills op overtuigende wijze te presenteren. Hierbij is het van belang of je kunt aantonen dat en hoe je in je professionele carrière het verschil hebt kunnen maken met je ideeën en oplossingen. Ben je nog steeds geïnteresseerd? Dan is er maar één manier om erachter te komen of en hoeverre je kunt ‘overstappen’: ga eens praten met een relevant bedrijf in de embedded-wereld.
Een opvallend groot percentage Franse kantoorklerken schrikt er niet voor terug een upgrade van hun slome computer af te dwingen door het systeem fysiek te slopen, blijkt uit een enquête van een back-upspecialist. Hun tegenpolen zijn de Britten, maar die zitten dan ook met gemiddeld de oudste computers opgescheept. Voor wie zich doodergert aan dat irritante klikgeluid van de computermuis de hele dag komt de Nederlandse firma Nexus na vier jaar noeste arbeid met een stille muis op de markt. En voor wie een doorsnee virusscanner of firewall te gewoon vindt, brengt beveiligingsbedrijf Kaspersky Lab nu een Ferrari-editie uit, mét rood kleurtje en logo. En als we het dan toch hebben over computerbeveiliging: een groep experts heeft de website van McAfee eens goed tegen het licht gehouden en vond allerhande beveiligingslekken. Twee mijl toiletpapier en een gang zonder einde waren ervoor nodig, maar het wereldrecord papiervouwen is verbroken. Een groep middelbare scholieren en hun leraar uit Boston claimen toiletpapier dertien keer dubbel te hebben gevouwen, één keer meer dan het oude record uit 2002. De gang zonder einde refereert naar de Infinite Corridor, een 251 meter lange hal die het oosten en westen van de MIT-campus met elkaar verbindt. Om zijn duurzame oplossingen onder de aandacht te brengen, speurt communicatieapparatuurspecialist Aastra België, Frankrijk en Luxemburg af naar de oudste nog in gebruik zijnde telefooncentrale. De winnaar krijgt een milieuvriendelijke vervanger. U kunt tot 2 september insturen. Ook EBM-Papst heeft duurzaamheid hoog in het vaandel. De nieuwe Bio-Fanventilator voor industriële machines is gemaakt uit houtgebaseerde composieten, maar voldoet toch aan de strengste eisen voor levensduur, stabiliteit en thermische fluctuatie. En is ook zonder laklaag corrosiebestendig. De relativiteitstheorie legt uit dat hoe sneller je beweegt, hoe langzamer de tijd loopt. Er is nu een Iphone-app om bij te houden hoeveel nanoseconden je hebt gewonnen door te bewegen in plaats van stil te staan. Pieter Edelman / Paul van Gerven
22 april 2011 |
| nr. 5 | 15
INTERVIEW MET JOS BAETEN
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
De hele wereld aan de modelgebaseerde systeemontwikkeling MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
16 |
| nr.5 | 22 april 2011
Steeds meer bedrijven kijken naar modelgebaseerde methodes om de toenemende systeemcomplexiteit te beteugelen. De adoptie ervan laat echter nog te wensen over. Behalve dat de industrie zelf een tandje moet bijzetten, vindt Jos Baeten dat de academische wereld actiever mag evangeliseren. In het bijzonder pleit de TUE-hoogleraar systeemengineering voor meer universitaire spinoffs in modelgebaseerde tooling. Nieke Roos
M
odelgebaseerde ontwikkeling is in en er komen dan ook steeds meer tools voor op de markt. In principe zijn er echter maar drie soorten, naar het type model dat ze hanteren. ‘Grofweg onderscheiden we modellen uit de werktuigbouw, waar we aan rekenen met continue wiskunde zoals differentiaalvergelijkingen’, vertelt Jos Baeten, hoogleraar systeemengineering aan de Technische Universiteit Eindhoven. ‘Daarnaast zijn er de modellen uit de informatica, die discrete wiskunde toepassen zoals automaten met toestandsovergangen. Ten slotte zijn er de modellen die omgaan met onzekerheid. Die gebruiken stochastische wiskunde en verbinden bijvoorbeeld kansen aan die overgangen.’ Matlab en Simulink van Mathworks en Labview van National Instruments zijn bekende voorbeelden van tools die leunen op continue wiskunde. Typisch discreet zijn de Analytical Software Design-methode (ASD) van Verum en de gereedschapskist rond de Micro Common Representation Language 2 (MCRL2), gebouwd en onderhouden bij de TUE-groep van Jan Friso Groote. Een naam die volgens Baeten niet mag ontbreken in het laatste rijtje is Uppaal, een gezamenlijke ontwikkeling van de universiteiten van Uppsala en Aalborg onder leiding van de Deense professor Kim Larsen. Deze ASDconcurrent is vooral populair onder academici en nog niet echt doorgedrongen tot de industrie. Hetzelfde geldt voor tools die rekenen met stochastische wiskunde zoals Markov-ketens. In het werkgebied van de hoogleraar sys teemengineering komen de stromingen samen. ‘Aan de ene kant heb je de regeltechniek, met continue beschrijvingen van de wereld – het speelveld van Matlab en Simulink. Aan de andere kant is er de besturingssoftware, met discrete representaties van de wereld – het terrein van gereedschap waarmee toestanden en de overgangen daartussen zijn te beschrijven, zoals ASD, MCRL2 en Uppaal.’ Er duiken ook steeds meer hybride oplossingen op die continu en discreet combineren. ‘Mijn groep heeft bijvoorbeeld Chi. Verder doen wij veel met SpaceEx van Goran Frehse uit Grenoble. Dat heeft ook een goede koppeling naar Matlab. En in Aken werkt Joost-Pieter Katoen
aan een hybride met stochastische functies. Dan heb je de drie bij elkaar.’ Alles volledig in één tool vatten, is volgens Baeten onmogelijk én onwenselijk. ‘Bij realistische systeemontwikkeling heb je altijd te maken met verschillende modellen voor verschillende deelaspecten of componenten. Elke discipline heeft zijn eigen favoriete beschrijvingsmethodes en gereedschappen. Dat moet je allemaal niet in één tool willen stoppen. Belangrijk is dat je kunt omgaan met al die oplossingen en er gemakkelijk tussen kunt schakelen.’ Daarom heeft zijn groep het Compositional Interchange Format (Cif) ontwikkeld voor hybride systemen. ‘Dat maakt het mogelijk verschillende tools te koppelen en informatie daartussen uit te wisselen. Je kunt bijvoorbeeld een specificatie maken in Chi en die via Cif verifiëren met de modelchecker van Uppaal. Cif zelf is ook weer een hybride taal waarmee je zowel continue als discrete wiskunde kunt doen.’
Patiënttafel De wortels van Baeten zelf liggen in de discrete wiskunde, in de procesalgebra om precies te zijn. ‘Dat is een theorie waarmee je parallelle gedistribueerde systemen kunt beschrijven, dus systemen die bestaan uit verschillende onderdelen die samen taken uitvoeren maar tegelijk ook onafhankelijk van elkaar opereren. Je brengt de processen die er lopen in kaart door de informatie-uitwisseling over tijd te vatten in een wiskundige constructie, een algebra – Chi of MCRL2 bijvoorbeeld. Vervolgens kun je eraan gaan rekenen en specifiek gedrag bewijzen. Van een communicatieprotocol kun je zo laten zien dat het doet wat het hoort te doen. Of juist niet: we hebben eens het boek van Andy Tanenbaum doorgeploegd en verschillende fouten aangetoond in zijn protocollen.’ Baeten ging in 1972 wiskunde studeren aan de Universiteit Utrecht omdat hij tot de basis van de discipline wilde doordringen. Zes jaar later rondde de geboren en getogen
Tilburger zijn opleiding af met als specialisatie de logica en de grondslagen van het vakgebied. Op voorspraak van zijn professor Henk Barendregt kon hij zijn wetenschappelijke loopbaan vervolgen aan de University of Minnesota met een ultratheoretisch promotieproject, uitmondend in een proefschrift dat ‘misschien tien mensen in de hele wereld kunnen lezen’. Terug in Nederland ging hij in 1984 aan de slag als onderzoeker bij het CWI in Amsterdam, waar hij de overstap maakte naar de theoretische informatica en de procesalgebra. Vanaf 1985 was hij daarbij universitair informaticadocent aan de UvA, tot er begin jaren negentig een leerstoel vrijkwam aan de TUE. In Eindhoven is Baeten negentien jaar lang hoogleraar theoretische informatica geweest bij Wiskunde & Informatica. Vorig jaar april verruilde hij zijn leerstoel Formele Methoden echter voor de leerstoel Systeemengineering bij de buren van Werktuigbouwkunde. Hoewel dit voor veel opgetrokken wenkbrauwen zorgde binnen zijn oude faculteit, vindt Baeten de overstap zelf niet raar. Hij was toe aan een nieuwe uitdaging en toen Koos Rooda met emeritaat ging en diens leerstoel beschikbaar kwam, was een en een twee. Bovendien doet hij nog steeds niet veel anders dan tijdens zijn beginjaren als wiskundige. ‘Ik gebruik wiskunde om te redeneren, te analyseren, te construeren. Alleen het object van studie is veranderd: van de wiskunde zelf, naar software, naar systemen.’ Bij Werktuigbouwkunde focust Baeten met zijn groep momenteel op supervisory control synthesis. Dat is een methode om de overkoepelende besturing van een complexe machine te produceren uit modellen van de samenstellende componenten in combinatie met een geformaliseerde set requirements. ‘Als je voor elk onderdeel van je systeem de vereisten hebt vastgelegd, dus wat het moet doen, dan kun je daaruit automatisch de code genereren voor de volledige besturingssoftware. Op basis van Cif hebben
‘Het zou een goede ontwikkeling zijn als er meer Verums komen’
22 april 2011 |
| nr. 5 | 17
18 nov e mb er 20 11 | E voluon | E ind hoven | N L
Goudsponsor
Cosponsors
Lezingenoproep Keynote
Eric Meurice - ASML We treffen de CEO van ’s werelds grootste maker van lithomachines op het moment dat zijn bedrijf het ergste achter de rug heeft. Na een historisch dieptepunt doorwinterd te hebben in de eerste maanden van 2009 vond ASML de tweede helft van het jaar weer de lijn omhoog, mede dankzij een forse bezuinigingsoperatie die duizend meest tijdelijke arbeidsplaatsen deed verdwijnen. Bij de presentatie van de derdekwartaalcijfers in oktober kon Meurice de verlossende woorden spreken: er was weer winst, zij het bescheiden. Voor de eerste drie maanden van 2010 is er zelfs zicht op een ouderwets omzetniveau en een ouderwetse winstmarge. Van de tijdelijke contracten die vervielen, zijn er inmiddels zeshonderd weer ingevuld. Voor ASML hadden drie kwartalen verlies op rij een extra nare bijsmaak, vertelt Meurice. ‘We hadden publiekelijk aangekondigd dat we groot en robuust genoeg waren geworden om onder alle marktomstandigheden winstgevend te zijn: een beetje op het dieptepunt van een cyclus en zeer winstgevend op het hoogtepunt daarvan’, zegt de van oorsprong ingenieur mechanica en energieopwekking in doordacht Engels, met een Frans accent dat een verblijf in de Verenigde Staten – eerst voor een MBA in Stanford, later in dienst bij onder meer Intel – niet heeft kunnen uitwissen. Gezien de uitzonderlijke plek in de historie die economen de recente recessie toedichten, lijkt een duik in het rood ondanks eerdere beloften niet iets om zwaar aan te tillen. Wie verwacht er nu van een topman dat hij gebeurtenissen voorziet die zich één keer per eeuw voordoen? Meurice zat er wel degelijk mee in zijn maag. ‘De eerste maanden van 2009 voelden we ons beschaamd, als management. We wisten dat het orderniveau naar tien machines per kwartaal zou kunnen dalen, maar met drie bestellingen per kwartaal hadden we echt geen rekening gehouden. Klanten hadden alleen machines nodig voor R&D aan de volgende generatie chips.’ Hij zag zijn geloofwaardigheid gered toen aan het eind van de zomer de geheugenindustrie weer aanklopte in Veldhoven met een achterstand in capaciteit. ‘Achteraf moesten onze klanten vaststellen dat ze wat al te rigoureus de kraan hadden dichtgedraaid. Het was geen cyclus, maar een volledige blokkering. De banken leken zich rond oktober te herstellen en de macro-economische indicatoren gingen omhoog, maar ook als de economie het maar nét zou redden, moesten ze gaan bestellen om hun achterstand goed te maken.’ ‘Daar kwam een tweede herstelgolf bovenop die we eigenlijk al uit ons hoofd hadden gezet: de foundry’s. Die hadden al zeer lange tijd geen machines meer aangeschaft. Deze bestellingen vielen samen met de bevestiging dat de economie inderdaad wat aantrok. Daarop volgde ten slotte een derde golf, toen het besef was ingedaald dat het minder slecht was geweest met de economie dan gevreesd. De verkoop van pc’s, tv’s en zelfs auto’s was in feite goed gebleven, uitgedrukt in eenheden.’
Standhouders Alten PTS ASML CIMSOLUTIONS Embedded Systems Institute ENTER Mbedded Green Hills Software GreenPeak Technologies The High Tech Institute HUMIQ IBM INDES-IDS Parasoft Profit Nederland Programming Research PROMEXX Technical Automation Sioux Embedded Systems Sogeti TASS Technolution Texas Instruments TMC Embedded Verifysoft Technology Wind River Yrz
Op vrijdag 18 november organiseert Techwatch voor de tiende keer de conferentie Bits&Chips Embedded Systemen, hét jaarlijkse event rondom embedded systemen en software. Bij deze jubileumeditie hoort een bijzondere keynotespreker: Eric Meurice. De ASMLtopman trapt de dag af met een lezing over de huidige en toekomstige positie van zijn bedrijf in de Nederlandse hightechindustrie, met speciale aandacht voor de kansen en uitdagingen in R&D en productie, en de toenemende waarde die toeleveranciers en dienstverleners kunnen toevoegen. Decor is zoals vanouds het Evoluon in Eindhoven. Het lezingenprogramma komt tot stand in samenwerking met het Embedded Systems Institute en zal bestaan uit parallelle tracks met bijdragen uit de academische wereld en het bedrijfsleven en zal bestaan uit parallelle tracks met bijdragen uit de academische wereld en het bedrijfsleven. Thema managementsessie •S amenwerking in de regio, met (moeder)bedrijven aan de andere kant van de wereld, met kennisinstituten – nu en in de toekomst Thema’s technische sessies •A fhankelijkheid en betrouwbaarheid van embedded systemen • Agile in complexe multidisciplinaire projecten • Hightech systemen in de gezondheidszorg • Best practices in de omgang met legacy • De invloed van multicore op het ontwikkeltraject • Test en integratie van complexe systemen We nodigen onderzoekers en professionals uit de industrie uit om voorstellen in te sturen rondom deze thema’s. Het definitieve programma komt tot stand in samenwerking met een commissie van deskundigen uit de academische wereld en het bedrijfsleven. De spreektijd is 35 minuten, gevolgd door 5 minuten dis-
cussie. De taal is bij voorkeur Nederlands, maar Engels is ook mogelijk. Mocht u mensen kennen in uw netwerk die iets interessants zou kunnen vertellen, dan willen wij u vragen om deze uitnodiging aan hen over te brengen. Gelieve de voorstellen op te sturen naar Teade Punter (teade.punter@esi.nl) en Nieke Roos (nieke@techwatch. nl). U kunt bij ons ook terecht voor vragen over deze lezingenoproep. Een voorstel bestaat uit: • titel lezing; • abstract lezing (maximaal 300 woorden); • naam presentator, functie, werkgever; • taal lezing (Nederlands, eventueel met Engelstalige slides, of Engels); • korte biografie presentator (maximaal 100 woorden); • portretfoto presentator (JPG-bestand van minimaal 100 kbyte); • correspondentieadres en (mobiel) telefoonnummer. Uit het voorstel moet duidelijk zijn: • wat het onderwerp is van de lezing en waarom het relevant is voor een of meerdere van de conferentiethema’s; • wat de lezing gaat behandelen, bijvoorbeeld: een idee, een ontwerp, ervaringen met het toepassen van een ontwerp, enzovoorts. Belangrijke deadlines: 1 juni 2011 - laatste inzenddatum lezingvoorstel 1 juli 2011 - uitslag over acceptatie 1 november 2011 - laatste inzenddatum presentatie Met vriendelijke groet, Teade Punter (ESI) Nieke Roos (Techwatch/Bits&Chips)
w w w . emb ed d ed - s y s tem e n . n l
INTERVIEW MET JOS BAETEN wij hiervoor een omgeving gebouwd met de synthesetool van Chuan Ma. Dat is een promovendus van Murray Wonham, die de onderliggende theorie in 1984 ontwikkelde samen met Peter Ramadge. Onze omgeving hebben we al bij verschillende bedrijven succesvol toegepast. In een experiment bij Philips Healthcare hebben we bijvoorbeeld de besturing gegenereerd voor de patiënttafel van een MRI-scanner. In een paar uur, en gegarandeerd deadlockvrij.’
Actiever evangeliseren Baeten komt regelmatig over de vloer bij bedrijven. Toch vindt zijn academische waar daar nog niet echt gretig aftrek. ‘Onderzoekssamenwerking vinden ze prima, maar voor de tools in hun productontwikkeling hebben ze liever de professionele ondersteuning
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
denten ook om hun eigen bedrijf te beginnen. Jammer genoeg gebeurt het te weinig. Het zou een goede ontwikkeling zijn als er MODEL-DRIVEN DEVELOPMENT DAY meer Verums komen.’ Wetenschappelijke 29 APRIL 2011 speeltjes zoals MCRL2 of Uppaal uitspinnen in een commerciële onderneming zou hun industriële adoptie een flinke impuls geven, is Baetens stellige overtuiging. Bovendien: meer concurrentie voor Verum houdt ze scherp in Waalre. Los daarvan vindt Baeten dat bedrijven uit zichzelf meer aan modelgebaseerde ontwikkeling zouden moeten doen. ‘Dat is de weg vooruit. Bij ASML is dat besef in ieder geval doorgedrongen. Daar hebben ze ingezien dat als ze op de oude voet doorgaan met software ontwikkelen dat ze dan meer ontwikkelaars nodig gaan hebben dan Nederland in een jaar produceert. Andere bedrijven willen
ring: ze gaan bij een bedrijf zitten en maken het model zelf. In Grenoble doet Hubert Garavel het tegenovergestelde: die stelt de CADP-toolkit met begeleiding beschikbaar aan de industrie. Ik weet niet wat beter is, maar de Fransen zeggen zelf dat meer en meer bedrijven hun gereedschap gebruiken. En bij Matlab heeft een soortgelijke aanpak zeker zijn succes bewezen.’
Beslagen ten ijs ‘De hele wereld moet aan de modelgebaseerde systeemontwikkeling’, formuleert Baeten zijn ultieme doel. ‘Wij dragen ons steentje bij door met Cif allerlei tools te koppelen en informatie heen en weer te vertalen. Op den duur zie ik een filosofie van systeemontwikkeling ontstaan waarbij de verschillende disciplines in een voor hen gemakkelijk formalisme hun delen van het systeem modelleren en de bijbehorende eisen opstellen. Een systeemontwerper coördineert het geheel. In mijn visie is dat geen informaticus, elektronicus of werktuigbouwer, maar iemand die op elk vakgebied kan meepraten. Tooling breit vervolgens alles aan elkaar door de overkoepelende besturingssoftware te genereren.’ Vanuit zijn onderwijstaak wil Baeten studenten hierop voorbereiden, zodat de ontwikkelaars van morgen beter beslagen ten ijs komen. ‘De drie vormen van wiskunde moeten tot de basis behoren van de opleiding werktuigbouwkunde hier. Met het grote aandeel van regeltechniek in het huidige curriculum is het continue redeneren stevig verankerd in het hoofd van de engineer; voor het discrete en stochastische denken is mijn inziens nog te weinig aandacht, waardoor deze vormen veel minder zijn ingedaald. Dat moet meer in balans komen. Door studenten meer discrete en stochastische bagage te geven, wil ik bereiken dat de volgende generatie engineers de modelgebaseerde werkwijze helpt verbreiden, in plaats van toch weer code te gaan kloppen. Waar het vroeger ging om ijzer in de systeemontwikkeling, is er nu ook een belangrijke rol weggelegd voor software. Dat ik als informaticus benoemd ben bij Werktuigbouwkunde zie ik als erkenning voor dat toegenomen belang.’
‘Bedrijven hebben liever de professionele ondersteuning van een commerciële leverancier’
van een commerciële leverancier. Mijn groep biedt wel support, best uitgebreid zelfs, maar een volwaardige helpdesk hebben we niet. Hetzelfde geldt voor Uppaal, dat echt heel bruikbaar is in de praktijk. Op papier is daar wel een partij voor die tussen academia en industrie in staat, maar in feite is die leeg en kom je toch weer uit bij de universiteit. Tot nu toe is het in onze samenwerkingen met bedrijven zo geweest dat onze tools voornamelijk worden gebruikt door onszelf. En als we weg zijn, gaan zij er ook niet mee verder.’ De Eindhovense hoogleraar pleit voor meer start-ups die academische vindingen vermarkten. ‘De faciliteiten daarvoor zijn in ruime mate aanwezig, zeker hier aan de TUE, en de universiteit stimuleert stu-
wel en snuffelen er een beetje aan, maar er zijn er maar weinig die de noodzaak zien. Je doet het ook niet zomaar even. Het is een heel traject voor een organisatie om de modelgebaseerde werkwijze tussen de oren van de ontwikkelaars te krijgen.’ De wetenschappelijke wereld heeft daar volgens Baeten te weinig oog voor en laat het initiatief te veel aan de industrie, met als gevolg dat het daar niet zo’n vaart loopt met de inburgering van de modelgebaseerde aanpak. Academici zouden wat hem betreft ook best wat actiever mogen evangeliseren. Hij is er alleen niet over uit welke aanpak daarbij het meest effectief is: zelf het stuur pakken of op de bijrijdersstoel plaatsnemen. ‘Bij MCRL2 volgen ze de wij-doen-het-voor-jullie-benade-
Tijdens de Model-Driven Development Day op 29 april in Eindhoven verzorgt Jos Baeten een inleidende keynote over modelgebaseerde systeemontwikkeling. Hierin zal hij een overzicht geven van het veld, met speciale aandacht voor supervisory control synthesis.
22 april 2011 |
| nr. 5 | 19
THEMA MODELGEBASEERDE ONTWIKKELING Om het ontwerpen van steeds complexere systemen behapbaar te kunnen houden, staat modelgebaseerd ontwikkelen de laatste tijd vol in de schijnwerpers. ASML voerde diverse proefprojecten uit met modellen voor de constructie en voor de analyse van delen van zijn lithografiemachines. Met overwegend positieve resultaten. In dit artikel beschrijft het zijn
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
ASML proeft aan modelgebaseerd ontwikkelen MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
ervaringen bij de invoering van modelgebaseerd ontwikkelen. Wilbert Alberts Theo Baan Niels Brouwers Marc Hamilton Wouter Tabingh Suermondt
C
omplexe systemen zoals lithografiemachines lijken een onbedwingbare behoefte aan ontwikkelcapaciteit te kennen. De ontwikkelafdeling van ASML is in 25 jaar tijd van ongeveer zestig mensen gegroeid naar meer dan tweeduizend en de vraag naar capaciteit stijgt nog steeds. Met name de softwareontwikkelafdeling is onevenredig gegroeid en bedraagt op dit moment een derde van de populatie. In termen van het V-model ligt ASML’s kracht in het zo vroeg mogelijk beginnen aan het integratietraject. Daarbij nemen we voor lief dat er mogelijk onvolkomenheden in het ontwerp zitten en dat er later gecorrigeerd en opnieuw geïntegreerd moet worden. Door de groeiende complexiteit neemt echter ook het aantal onvolkomenheden toe, waardoor het oplevermoment steeds moeilijker is te plannen. De problemen liggen in de rechterkant van de V, maar de oplossing ervoor moet aan de linkerkant worden gezocht. Door meer aandacht te leggen op de functionele en niet-functionele ontwerpeisen, budgettering van resources, de vroegtijdige verificatie van het ontwerp en zo veel mogelijk aspecten in het ontwerptraject te automatiseren, kunnen verrassingen in het integratietraject namelijk worden voorkomen. Design for integration is dan ook het motto, waarbij de linkerkant van de V expliciet tot doel krijgt om het integratietraject zo efficiënt mogelijk te laten verlopen. Daarvoor is eigenlijk een andere werkwijze nodig dan we traditioneel gewend zijn. Zo wil je tijdens het redeneren over het ontwerp al uitspraken kunnen doen over de prestaties van het systeem en de marges, en wil je snel weten welke gevolgen een
20 |
| nr. 5 | 22 april 2011
ontwerpbeslissing heeft. Ook wil je handwerk zo veel mogelijk automatiseren om de doorlooptijd en de kans op fouten te reduceren. Om het redeneren over het ontwerp te vereenvoudigen, wil je zo veel mogelijk spreken in termen van abstracte ontwerppatronen in plaats van implementatie details. Daarnaast wil je dat de verschillende ontwerpdisciplines zo veel mogelijk met hun eigen, domeinspecifieke, notaties kunnen werken. Tijdens de integratie wil je echter de ontwerpen tegen elkaar kunnen verifiëren en valideren, dus moeten die beschrijvingen wel formeel aan elkaar kunnen worden gerelateerd. Deze manier van werken is mogelijk wanneer een modelgedreven benadering de huidige werkwijze aanvult. In de mechanica- en de halfgeleiderontwerpwereld wordt deze benadering al met veel succes toegepast. Momenteel lopen er ook voor de embeddedsoftwareontwikkeling van ASML drie proefprojecten: Lace (Logical Action Component Environment), Drife (Subsystem Driver Framework Environment) en het DavinciWings-project.
Domeinspecifiek Bij modelgedreven ontwikkeling gaan we er vanuit dat de primaire artefacten van de ontwikkeling bestaan uit modellen. Die worden gevormd door data en gerepresenteerd met behulp van grafische of tekstuele syntaxen. Feitelijk kan alle broncode, ongeacht de programmeertaal, gezien worden als een model, maar in het algemeen noemen we dat niet zo. Het verschil zit vooral in het abstractieniveau dat we met de modellen willen bereiken. Als we binnen een besloten context met een groepje ingewijde ontwikkelaars bij de koffieautomaat of in informele documenten redeneren over een deelsysteem, hanteren we een jargon dat ons in staat stelt zeer efficiënt te communiceren. In onze modelgedreven aanpak vangen we dit jargon in goed gedefinieerde data-elementen en voorzien we deze van een geschikte syntax. Het resultaat is een zeer specifieke maar daardoor hoogabstrac-
te modelleertaal waarin we ons deelsysteem kunnen beschrijven. Deze beschrijving is processable, zodat we daaruit bijvoorbeeld code kunnen genereren. Een belangrijk uitgangspunt in onze benadering van modelgedreven ontwikkeling is het onderkennen van twee typen modellen, die allebei een rol spelen bij de ontwikkeling van een (deel)systeem. Constructiemodellen dragen direct bij aan de constructie van het systeem, terwijl de analyse-, verificatie- en validatiemodellen (AVV) dienen ter onderbouwing van de keuzes en het reduceren van risico’s in de constructie. Bij de Lace- en Drife-projecten ligt onze focus op de ontwikkeling van constructiemodellen, terwijl het Davinci-Wings-project zich richt op de benodigde AVV-modellen. Constructiemodellen zetten we vooral in bij de ontwikkeling van nieuwe componenten. Het model is daarbij het primaire artefact waaruit we broncode genereren. Dat wil niet zeggen dat er geen handmatig geschreven code meer aan te pas komt. Die scheiden we wel van gegenereerde code in aparte bestanden. Zo blijft het model consistent met de code en heeft hergeneratie weinig impact. Bij het ontwikkelen moet de focus zo veel mogelijk liggen op de ontwerpbeslissingen en niet op bijzaken. De taal om het ontwerp in constructiemodellen vast te leggen, moet dan ook zo veel mogelijk gebaseerd zijn op het jargon dat de ontwikkelaar hanteert. Technische details die afleidbaar zijn, worden uit die taal geweerd. Daarvoor zetten we domeinspecifieke talen in (domain-specific languages of DSL’s). Die zijn vaak zo specifiek dat ze alleen binnen ASML betekenis hebben, en dan nog zelfs alleen binnen een deelgebied zoals een architectuurlaag van een productfamilie. De semantiek van deze constructietalen wordt bepaald door het definiëren van transformaties naar executeerbare realisaties. Dat maakt dan gelijk de geautomatiseerde constructie vanuit de DSL’s mogelijk. Modellen dienen aan een structuur te voldoen. Net zoals de UML-regels de structuur voor UML-modellen opleggen, specifi-
ceren DSL’s regels waaraan een model binnen die taal moet voldoen. Deze structuur is op zijn beurt ook weer vastgelegd in een model, een zogeheten metamodel.
Winst Een praktijkvoorbeeld van deze aanpak is het Lace-project, dat zich richt op de ontwikkeling van logische-actiecomponenten. Deze bevinden zich in een architectuurlaag die de abstracte logische acties vertaalt naar een lijst van subsysteemacties die optimaal parallel worden uitgevoerd. Voordat we met Lace begonnen, gebruikten we een document dat het logische-actiedomein beschrijft en een softwarebibliotheek om de implementatie te vereenvoudigen. Toch kostte het nog een aanzienlijke effort om een component te ontwikkelen: de vertaling van het gewenste gedrag naar instructies voor de bibliotheek was allerminst triviaal. Bovendien was er veel detailkennis nodig van de interfaces van de softwarebibliotheek. Met Lace kunnen we nu het gewenste gedrag van de component specificeren aan de hand van concepten die inherent zijn aan de architectuurlaag. Kennis van de bibliotheek is verankerd in codegeneratoren, gemaakt door experts die alle details van het mechanisme kennen. Deze aanpak schermt de details af voor Lace-gebruikers. Op dit moment is Lace volwassen en het gebruik ervan verplicht gesteld. Eerder uit-
gevoerde pilots laten zien dat we zeventig tot honderd procent van de C-implementatie kunnen genereren. De effort van requirements tot en met onderhoud is daarbij gereduceerd met een factor vijf. Een ander project rond constructiemodellen is Drife. Deze faciliteit richt zich op de subsysteemarchitectuurlaag met soft-realtime softwarecomponenten voor toegang tot mechatronische subsystemen en complexe sensoren. Hier verkeren we nog in een wat vroegere fase. Bij het definiëren van het domeinmodel bleek dat zelfs experts initieel verschillende interpretaties van sommige concepten hadden. Vanwege de complexiteit van het domein en om toch voortgang te kunnen laten zien en feedback te kunnen verwerken, hebben we gekozen voor een incrementele aanpak. Na de algehele opzet van model en implementatie pakken we functionaliteiten op als initialisaties of het veranderen van setpoints. Door deze aanpak evolueren handgeschreven en modelgegenereerde implementaties naast elkaar. Drife was echter snel in te zetten. Al bij de eerste toepassing hebben we naast de ontwerpdocumentatie zo’n veertig procent van de C++-implementatie gegenereerd. De winst in deze prille fase schatten
Initialisatievoorbeeld
Het metamodel beschrijft de domeinspecifieke concepten en hun eigenschappen. Het is gebaseerd op het jargon van de specialisten van een ontwerp. Een model is een instantie van dit metamodel. Om het op een begrijpelijke manier te representeren, worden grafische en/of tekstuele editors gemaakt waarin de syntax naar behoefte kan worden gekozen. Deze worden geïntegreerd in de modelleeromgeving. De transformaties worden in meerdere stappen onderverdeeld, waarbij in de eerste stappen model-naarmodeltransformaties worden gebruikt. Hierin wordt de complexiteit van de abstractieoverbrugging opgelost (het ontwerpjargon wordt vertaald naar broncodeconcepten). Op het laagste niveau van de transformaties worden model-naar-teksttransformaties gebruikt om de gewenste codeartefacten te produceren.
we op vijftien procent, van requirements tot en met onderhoud.
Handmatig AVV-modellen zijn bedoeld om ontwerpkeuzes te analyseren, te verifiëren of te valideren. Daarvoor moet het deelontwerp in een executeerbare of berekenbare (formele) representatie worden gevangen en samengevoegd met andere bijdragen aan het deelsysteem. Zo moet een model van een softwarecomponent voor een prestatieanalyse samen te voegen zijn met de modellen van hardware, firmware en andere relevante software. Dat resulterende model kunnen we dan voorzien van stimuli, zodat we het systeemgedrag kunnen voorspellen. Daarmee is het ontwerp tijdig bij te sturen, zelfs voordat de hardware is gerealiseerd. We spreken dan ook wel over vroegtijdige integratie. Het resulterende model representeert slechts de te analyseren aspecten van het systeem, maar moet daarvoor soms veel gedetailleerder zijn dan nodig voor de constructie. Zo kan het cachegedrag van een processor relevant zijn voor de analyse, terwijl dat bij de constructie geen rol speelt. De AVV-modellen zijn dus essentieel anders dan de constructiemodellen. Het opstellen ervan is arbeidsintensief en vergt gespecialiseerde kennis van formalismen waarover de ontwerper doorgaans niet beschikt. Het is dus zaak dat de ontwerper ze automatisch kan opstellen aan de hand van de keuzes die zijn vastgelegd in constructiemodellen. Dit wordt mogelijk door bibliotheken aan te leggen die de relevante details beschrijven voor veel gebruikte ontwerpeenheden. Op basis van de constructiemodellen kunnen we dan via modeltransformaties de informatie uit deze bibliotheken parametriseren en combineren tot geschikte AVV-modellen. Zo zijn er bijvoorbeeld drie configuraties van een bepaald bord beschikbaar. Voor het constructiemodel selecteren we er daar een van. Vervolgens worden de bijbehorende cache-eigenschappen van de processor er voor het AVV-model bij gezocht in een bibliotheek.
Zuid Nederland kenmerkt zich als sterk innovatief en high tech. Het is dan ook niet vreemd dat we hier als technisch dienstverlener met ruim 280 specialisten sterk zijn vertegenwoordigd. Nspyre is in de Regio Zuid competentiegericht georganiseerd. Dat vinden we belangrijk omdat we daarmee naadloos aansluiten op de behoefte van onze klanten en de interesse van onze medewerkers. Klanten en medewerkers dagen elkaar dan ook echt uit. De inspiratie en passie die daar bij los komt maakt Nspyre tot het leukste bedrijf om voor en mee te werken. Ligt er een uitdaging, dan pakken we die graag op! www.joinnspyre.nl
Heb je ambities met Android in de High Tech industrie? Neem contact op voor meer informatie met Maarten Fekkers, +31 6 215 119 23 of werken@nspyre.nl
THEMA MODELGEBASEERDE ONTWIKKELING
Toenemende mate van detail
Davinci-Wings hebben we samen met het Embedded Systems Institute geïnitieerd. Dit project had als doel om een model te bouwen dat de (timing)prestaties van de embedded besturingen kan verifiëren. Een domeinspecifiek model representeert de keuzes van de ontwerpers. Dit model is onderverdeeld in een gescheiden applicatie-, platform- en mapping-model volgens het Ychart-paradigma. Hieruit genereren we een executeerbaar prestatieanalysemodel op basis van de Poosl-taal van de TUE-vakgroep Electronic Systems. Vorig jaar is de eerste generatie opgeleverd en toegepast op een ASML-case. Dat leverde inzichten op in de aspecten die de prestaties beïnvloeden. Uit deze resultaten hebben we een pakket maatregelen afgeleid waarmee we nu ook daadwerkelijk verbeteringen kunnen doorvoeren. Ook toonden we aan dat ontwerpalternatieven met behulp van de modellen gemakkelijk en snel zijn door te rekenen, zodat je een onderbouwde ontwerpkeuze kunt maken. De modellen leveren een uitstekende basis voor een prestatiegebaseerde architectuur en technologieroadmap. In deze eerste versie werd het domeinspecifieke model nog handmatig afgeleid uit het bestaande ontwerp. Vorig jaar startte echter het vervolgproject Davinci-Wings2. Doel is nu om een volledig automatische koppeling met de ASML-ontwerpwereld te maken. Daarmee kunnen we modelgebaseerde prestatieanalyse en verificatie daadwerkelijk inpassen in het bestaande ontwerptraject. Verder besteden we extra aandacht aan de mechatronische context (waarin de besturingen en dus ook de prestatiemodellering opereren). Dit laatste is essentieel omdat hier de basis ligt van de redenatie over het te realiseren (sub)systeem. Op dit moment bevat het model alleen de informatie die nodig is voor de prestatieanalyse. Het is echter mogelijk om synergie met de constructiewereld te realiseren als het model voldoende informatie bevat om daaruit (delen van) de software voor het embedded systeem te genereren. De AVV-wereld en de constructiewereld hebben dan een gemeenschappelijke bron. In de figuur op de
volgende pagina worden de gestippelde pijlen dan omgedraaid.
Brugarchitecten
Formele, executeerbare talen
Systeemconstructie
Onderbouwing van beslissingen
HW, SW
HW, SW
Prestatiemodellering engineeringwereld
analysewereld
Consistentie in de modeldriehoek
Uit de constructiemodellen worden zowel AVV-modellen geconstrueerd als de daadwerkelijke producten. Dit is enkel zinvol als de AVVmodellen de producten MODEL-DRIVEN op de relevante eigenschappen voldoende DEVELOPMENT DAY nauwkeurig beschrijven. Het is relatief duur om201 voor elke specifieke 29 APRIL 1 DSL deze relaties te kunnen garanderen. Om toch de consistentie tussen de AVV-modellen en de daadwerkelijke afgeleide systemen te vergroten, kunnen we reeds beschikbare (dus generieke) ontwikkelomgevingen inzetten die deze consistentie op bepaalde deelaspecten kunnen garanderen (bijvoorbeeld via property-preserving codegeneratoren). Een voorbeeld hiervan is een state machine-gebaseerde tool die deadlocks kan analyseren, maar die ook code genereert die de state machine respecteert. Vanwege ontwikkelkosten zullen dergelijke omgevingen meestal breed toepasbaar moeten zijn, waardoor het abstractieniveau van hun constructiemodellen aanmerkelijk lager ligt dan wat bereikbaar is met specifieke DSL’s. Dit is dus minder efficiënt voor de ontwerper. Door transformatie van de ASML-specifieke naar de generiekere constructietaal kan echter voor zo’n deelaspect wel een beschikbare ontwikkelomgeving worden ingebed zonder aan efficiëntie in te boeten.
In de modelgedreven aanpak ontstaat een omgeving met gereedschapsmakers (het ‘secundaire proces’) en gereedschapsgebruikers (het ‘primaire’ proces). Gereedschapsmakers zorgen voor de middelen waarmee de verschillende aspecten van een systeem goed zijn te beschrijven en voor de ontwikkeling van generatoren om deze beschrijvingen te transformeren naar targets die op het systeem kunnen worden geïnstalleerd. De gereedschapsgebruikers zetten deze middelen vervolgens in. Bij een bedrijf als ASML ligt de focus op de ontwikkeling van complexe mechatronische systemen. De gereedschapsgebruikers, werkzaam in het primaire proces, nemen daar de belangrijkste plaats in. Een interessant gevolg van deze werkwijze is dat het werkgebied van de softwareontwikkelaar verandert. Voorheen werd zijn bijdrage direct in het systeem toegepast, maar bij het gebruik van constructiemodellen is deze code meer en meer het resultaat van generatoren. Softwareontwikkelaars zijn steeds meer bezig met het ontwikkelen van de modellen (als gereedschapsgebruikers) of met het maken en/of configureren van de codegeneratoren (als gereedschapsmakers). Het is niet ongewoon dat ontwikkelaars met affiniteit voor hardware minder interesse tonen voor het werken aan codegeneratoren. Hun kennis zal steeds meer verschuiven van softwareontwikkeling naar het systeem onder ontwikkeling. De gereedschapsmakers bestaan uit DSL- en modelleringspecialisten. Van hen verwachten we ook verstand van model integratie. Zij dienen in staat te zijn het overzicht te bewaren over de verzameling
Domeinspecifieke talen (DSL’s), geoptimaliseerd voor ontwikkeling
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Bij ASML wordt er met twee typen modellen gewerkt: constructiemodellen worden opgesteld in high-level domeinspecifieke talen en gebruikt om implementaties uit te genereren; AVV-modellen worden gebruikt om ontwerpkeuzes door te rekenen.
(meta)modellen en verbanden ertussen te kunnen leggen of definiëren. Deze specialismen zijn traditioneel niet altijd bij systeembouwers te vinden en kunnen wellicht beter worden ingekocht of ingehuurd in plaats van zelf ontwikkeld. Naarmate de omgeving van gereedschapsmakers en -gebruikers zich verder uitkristalliseert, wordt ook de behoefte aan een brugfunctie zichtbaar. Er zijn architecten nodig die de verschillende aspecten van het systeemdomein kunnen vertalen naar specificaties voor de gereedschapsmakers. Domein- en taaldefinitie vergen andere capaciteiten dan implementatie op een embedded platform. Deze brugarchitecten moeten beschikken over abstractievermogen en inzicht in de mogelijkheden en beperkingen van de modeltechnologie. Migratie naar een modelgedreven ontwikkelmethode brengt veranderingen in de werkwijze met zich mee. Dat gaat vaak met weerstand gepaard. Projectmanagement is dan ook belangrijk. Formele verificatie met een AVV-model kan fouten vroegtijdig aan het licht brengen, terwijl ze anders pas tijdens integratie geconstateerd zouden worden. Maar er moet wel tijd en ruimte zijn om deze AVVmodellen te maken en te gebruiken. Ook de communicatie tussen verschillende disciplines verandert bij een modelgedreven aanpak. Waar de communicatie tussen disciplines vaak informeel was, zal dit in de modelgedreven aanpak formeler zijn om relaties te leggen tussen verschillende modellen. De invoering van een modelgedreven aanpak voor de softwareontwikkeling heeft dus ook invloed op de andere disciplines. Hiervoor is onderlinge afstemming vereist. De aanpak heeft dan ook alleen kans van slagen als de betrokkenen daaraan mee willen werken.
Editors Het ontwikkelen van talen en ontwikkelomgevingen voor de constructie- en AVV-
22 april 2011 |
| nr. 5 | 23
International
8th Automotive Congress.NL
F U T U R E P OW E RT R A I N S & S M A RT M O B I L I T Y May 16 – 17, 2011 Eindhoven, University of Technology – The Netherlands Keynote presentations by:
• high-profile 2-day international automotive conference • 450 automotive Directors, Managers and Engineers • Key-note presentations by leading OEMs and TIERs • 56 technical presentations divided over parallel sessions • Forum Discussions with experts from industry • Large Company Exhibition Area of 1.500 m2 • Live Vehicle Demonstrations • ATC Innovation Award
The 8th International Automotive Congress 2011 is one of the events during the Automotive Week 2011 organized by
AUTOMOTIVE TECHNOLOGY CENTRE
www.automotivecongress.nl
sponsored by
Toenemende mate van detail
THEMA MODELGEBASEERDE ONTWIKKELING Domeinspecifieke talen (DSL’s), geoptimaliseerd voor ontwikkeling
Formele, executeerbare talen
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
modellen is niet triviaal. Gespecialiseerde senteerd. De tooling is onbekend met de manier vastgelegd en bestaat validatie van tools die de gereedschapsmakers hierbij implementatietaal en zal geen onderscheid het ontwerp uit een review van de (inforhelpen, zijn daarom essentieel. De laatste maken tussen de relevante en niet-relevante meel weergegeven) documentatie. Dat SysteemOnderbouwing jaren zijn deze gereedschappen sterk ververschillen. Het napluizen van deze verschilwordt in de modelgedreven aanpak vervanconstructie van MODEL-DRIVEN DEVELOPMENT beterd en gestandaardiseerd. len en het oplossen van de conflicten is een gen door het opstellen en DAY valideren van de beslissingen HW, SW HW, SW 29 APRIL 2011 De gespecialiseerde tools die ons onderfoutgevoelig proces. Bij tooling die de modelexecuteerbare AVV-modellen. Dit vereist besteunen bij de ontwikkeling van DSL’s zijn gedreven aanpak expliciet ondersteunt, wordt halve een formalisme ook een zekere mate gebundeld in de DSL-toolkit. Deze van volledigheid. Bij een review van Prestatiemodellering helpt de gereedschapsmaker met het een informele ontwerpbeschrijving definiëren van metamodellen. Dit kan kan het gebeuren dat een voor coranalysewereld engineeringwereld door een geheel nieuwe taal te ontwikrectheid essentieel detail ontbreekt kelen of door een reeds bestaande taal en er bij de implementatie een fout voorspellingen prestatiemetingen van de prestaties aan te passen. Daarnaast biedt de toolwordt gemaakt. Om dit te voorkokit de mogelijkheid om editors te ontmen, is het van belang dat een forDomeinspecifiek model wikkelen om een model te maken en mele verificatie het ontbreken van te onderhouden. Hierin zijn grofweg essentiële details detecteert. Dit applicatiemodel twee categorieën: tekstuele notaties ‘dwingt’ ontwerpers om deze inforzoals programmacode en grafische nomatie vast te leggen. Embedded systeem Embedded systeem mapping taties zoals het UML-classdiagram. Uit Een nadeel is dat het hierdoor kan executeerbaar ontwerp en de praktijk blijkt dat de beste notatie lijken dat de modelgedreven aanpak model realisatie sterk afhankelijk is van persoonlijke meer inspanning vereist. Maar de platformmodel voorkeuren en de aard van het proinformatie had eigenlijk ook deel reverse engineeing bleem. Dankzij de toolkit kunnen we moeten uitmaken van de informele verschillende representaties van hetbeschrijving en bovendien zal het zelfde model bieden en toch de consiherstellen van een dergelijk gebrek stentie ertussen garanderen. tijdens implementatie meer tijd en Bij het Davinci-Wings-project van ASML en het Esi Een andere belangrijke rol van de kosten met zich meebrengen dan zijn ontwerpkeuzes van een embedded besturing DSL-toolkit is het helpen bij de onthet voorkomen ervan. gevat in een domeinspecifiek model, dat onderwikkeling van modeltransformaties. verdeeld is in applicatie-, platform- en mappingSysteeminzicht Deze zijn verantwoordelijk voor de model. Met de Poosl-taal wordt hieruit een execuUit de resultaten van onze interne automatische constructie van een softteerbaar model gegenereerd voor de analyse van projecten blijkt dat de gebruikers waresysteem uit constructiemodellen. de prestaties. In de eerste modelversie werd het DSL’s voor constructie als natuurAnaloog kunnen modeltransformaties domeinspecifieke model handmatig afgeleid uit lijk ervaren. De vooral grafische worden gecreëerd om vanuit de conrepresentaties sluiten goed aan op structiemodellen de AVV-modellen af het daadwerkelijke ontwerp, maar bij het Davinci– hun beleving. De reviews met de te leiden. De toolkit bevat talen die Wings2-project moet het domeinspecifieke model gegenereerde documentatie leiden speciaal voor dit soort transformaties juist de bron vormen voor de implementatie. tot discussie over de inhoud in zijn ontwikkeld. Wij gebruiken bijvoorplaats van over onnodige details of beeld QVT om model-naar-modeltranshet mogelijk de nadruk te leggen op de relevorm. Bovendien is de drempel om te beformaties te definiëren. Deze bevatten mapvante verschillen. Door deze in een domeinginnen laag, omdat de eerste gegenereerde pings met eenduidig vastgelegde regels om specifieke taal weer te geven, kan de kans op implementatie out-of-the-box werkt. Waar (verzamelingen van) concepten uit het ene fouten ook worden verkleind. in het verleden redesigns soms duur wametamodel te vertalen naar (verzamelingen Stel je bijvoorbeeld voor dat de initialisaren, kunnen we nu het model aanpassen en van) concepten in een ander metamodel. tiesequentie van een systeem wordt beschrecode hergenereren. Transformaties van model naar tekst, bijven in termen van initialisatiestappen die in Bij AVV-modellen ligt de focus vooral op voorbeeld om programmacode te genereren, modules worden gerealiseerd. Indien twee risicovolle of kostbare ontwerpaspecten. realiseren wij met een templategebaseerde versies van de sequentie met elkaar worden Een goed voorbeeld is de uiteindelijke titransformatietaal zoals XPand. vergeleken, zou een taalspecifieke vergelijmingperformance van een realtime embedDaarnaast biedt het systeem de mogekingstool de verschillen kunnen weergeven ded systeem. Hier konden we aantonen dat lijkheid om verschillende transformaties met uitspraken als: ‘versie X bevat een additihet mogelijk is om voorspellingen te doen zelfstandig in een bepaalde volgorde uit te onele initialisatiestap Y’ of ‘initialisatiestap Z en alternatieve configuraties vooraf door te voeren. Dat is een vereiste voor de automativerwijst naar een andere realisatie’. rekenen. Verder geeft het maken en kalische constructie van het softwaresysteem. Het releasen van software baseren we nu breren van de modellen op zichzelf al veel Essentieel detail op de toestand van het codearchief op een systeeminzicht omdat de benodigde kennis Bij de modelgedreven aanpak moeten alle bepaald moment in tijd, een baseline. In uit verschillende disciplines komt. Ook het codegerelateerde procesaspecten worden de modelgedreven aanpak zal er een mocreëren van dat systeemoverzicht helpt de meegenomen. Denk bijvoorbeeld aan parallel dellenarchief ontstaan waaruit baselines besluitvorming en vergroot de zekerheid ontwikkelen en de releasestrategie. Waar nu kunnen worden gegenereerd. Het archief doordat disciplineonafhankelijk redeneren meer ontwikkelaars parallel aan code van een moet modellen van verschillende disciplimogelijk is geworden. (sub)systeem werken, zullen ze in een modelnes kunnen bevatten. Die modellen moeten gedreven aanpak met een gezamenlijk model zelf geschikt zijn voor het definiëren van Wilbert Alberts, Theo Baan, Niels Brouwers, ervan bezig zijn. Daar zijn mogelijk meerdere relaties tussen entiteiten in modellen van Marc Hamilton en Wouter Tabingh Suerdisciplines bij betrokken. verschillende disciplines. mondt zijn werkzaam bij ASML. Bij code worden conflicten tussen verBij een conventioneel ontwerpproces Redactie Pieter Edelman schillende opleveringen tekstueel gereprewordt ontwerpinformatie op een informele
22 april 2011 |
| nr. 5 | 25
THEMA MODELGEBASEERDE ONTWIKKELING
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Regie over mechatronica met ASD en Mathworks MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
CCM past al enkele jaren succesvol een modelgebaseerde aanpak toe op het gebied van regeltechiek. De controlesoftware, die de regie voert over de verschillende regelsystemen, vereist echter een andere aanpak. Bij de ontwikkeling van een Philips-scanner voor microscoopglaasjes werd voor het eerst Verums ASD-aanpak ingezet. De nauwkeurige specificatie van de interfaces die deze methode afdwong, vereenvoudigde de integratie van de deelsystemen aanzienlijk. Een waardevolle aanvulling op de vertrouwde Mathworks-tooling. Arend-Jan Beltman Hans Spitshuis
A
l 42 jaar bedienen we bij CCM de high techindustrie met mechatronische oplossingen, in een breed applicatie domein en voor een diversiteit van klanten. In die jaren hebben we heel wat veranderin gen meegemaakt, maar de laatste jaren lijkt deze industrie in een stroomversnelling te zijn gekomen. Nieuwe technologieën die nen zich in een rap tempo aan. We zien een toename in functionaliteit en prestatie in de producten en machines die we voor onze klanten ontwikkelen. Daarnaast zijn ook de businessmodellen en manieren van samenwerken aan het verande ren. We zien steeds vaker dat CCM risicodra gend participeert in een productontwikkeling met meerdere partners. In de rol als sys teemintegrator moeten we de verschillende deelstukken tot een geheel samensmelten dat zijn functies volgens de specificatie uitvoert. Dat moet steeds sneller, door toenemende druk van de markt en de concurrentie. Onze ontwerpers moeten in steeds minder tijd meer functionaliteit met betere prestaties en hogere betrouwbaarheid ontwikkelen. De systeemarchitecten moeten een raamwerk neerleggen waarmee deelsystemen en com ponenten parallel, door verschillende partijen tegelijkertijd, zijn te ontwikkelen. De integra tor staat voor de uitdaging deze deelsystemen te integreren. Enkele jaren geleden hebben we ons bij CCM gerealiseerd dat modelgebaseerd design kan helpen om hiermee om te gaan. Voor de mechatronica zetten we al een tijd met suc ces ontwikkelgereedschappen in van bijvoor beeld Mathworks, Controllab en Ansys. Deze tools zijn voor CCM echter minder geschikt om de ‘controle’-software te ontwikkelen, die alle deelsystemen functioneel aan elkaar knoopt, maar er ook en vooral voor zorgt dat het systeem in orde is. Voor dit deel is recen telijk een op formele basis gestoelde maar
26 |
| nr. 5 | 22 april 2011
praktisch hanteerbare modelgebaseerde aan pak beschikbaar gekomen, namelijk Verums Analytical Software Design-methode (ASD).
Temperatuur Begin 2009 begon CCM samen met Frencken, Philips en Prodrive voor Philips Digital Pa thology aan de ontwikkeling van een scanner voor microscopische glaasjes. De technische uitdaging was om ’s werelds snelste scanner met de allerhoogste resolutie en beeldkwali teit te ontwikkelen. Bovendien moesten we in twaalf maanden een eerste werkend prototype realiseren. Alle mechanische en elektronische hardware, de optiek en alle software, inclu sief de nodige complexe algoritmes, hebben meerdere partners daarbij in een parallel tra ject ontwikkeld. Bij dit project hebben we voor het eerst ASD naast de vertrouwde Mathworks-om geving ingezet. In dit geval kwam de kracht van ASD vooral tot uiting bij het vastleggen van de interfaces tussen de componenten. Dat vereenvoudigde de uiteindelijke integra tie van de door diverse partners ontwikkelde componenten aanzienlijk.
De scanner voor microscopische glaasjes is een gezamenlijke ontwikkeling van CCM, Frencken, Philips en Prodrive, met behulp van Verum en Mathworks.
In de besturing van een mechatronisch systeem herkennen we, simpel gezien, drie controlelagen (Figuur 1). In de onderste laag, de fysische-controlelaag, wordt de hardware aangestuurd en geregeld. Denk hierbij aan servoregeling van beweging, temperatuur of een andere grootheid. Een wat complexere machine zal uit een groot aantal verschil lende fysieke subsystemen bestaan. De laag daarboven, de behavioral control-laag, coör dineert de interactie tussen de verschillende subsystemen. De normale processequentie en de afhandeling van uitzonderingssituaties gebeuren in deze laag. Op dit niveau zie je typisch parallelle processen die veel moeten communiceren en die vaak door middel van toestandsdiagrammen zijn te beschrijven. De bovenste laag in ons model is de user controllaag. Hiermee kan de gebruiker (of een ander systeem) interacteren met het systeem.
Machinecode De onderste laag, waarin de fysica wordt be teugeld, is het domein van de Mathworkstooling. Veel regeltechnici zijn hiermee al tijdens de studie in aanraking gekomen en we hebben een geavanceerde bibliotheek ontwikkeld met software- en hardwareon derdelen van waaruit systeemontwerpers het benodigde regeltechnische vraagstuk kunnen samenstellen. De bouwstenen in deze Saxcsbibliotheek bieden een uniforme interface richting de behavioral control. In de fysische-controlelaag worden re kenkundig gezien zeer verschillende eisen gesteld. Er zijn vraagstukken waarbij infor matie in het MHz-domein moet worden ge ïnterpreteerd, zoals interpolatie van encoder informatie. De uitkomst van die interpretatie kan veelal door digitale filters worden geleid met een bemonstertijd van typisch tweehon derd microseconden. Het komt echter ook voor dat die filters het signaal iedere vijf mi croseconden moeten doorrekenen. Parallel aan deze rekentaak staat er een toestandsma chine mee te doen om fysische transities op de gewenste manier te bewerkstelligen. Alle informatie komt samen in de processor van een standaard (industriële) pc, die onderdeel is van het product of apparaat. We merken dat de eisentoename bij veel projecten vooral in deze onderste laag tot uiting komt. Mede hierdoor willen we tijdens de ontwikkeling zo vroeg mogelijk weten of bedachte oplossingen echt gaan werken. De modelgebaseerde aanpak helpt hierbij. Door een totaalsysteem, dus fysica plus regeltech niek, te modelleren, kan de haalbaarheid van
de gestelde specificaties wor functionaliteit, prestaties en be den bevestigd. Hierbij door trouwbaarheid in minder tijd, en loopt de ontwerper de cirkel is een goede manier om samen User control te werken met verschillende ont van concept naar design en si wikkelpartners. Maar er worden mulatie vaak een aantal keren. ook eisen gesteld aan de organi Ook kan de machinecode voor satie. Zowel voor de Mathworksde processor met de Math works-gereedschappen wor als de Verum-aanpak geldt dat er meer tijd moet worden geïn den gemaakt. Producing PCB’s Idle Start Waiting for PCB vesteerd in de specificatie- en Daarnaast is de modelroute ontwerpfase van een project. essentieel voor het concurRemoving PCB Behavioral control Project- en lijnmanagement rent engineering-proces. Als Abort from Mes Pause Resume de regeltechnicus een oplos moeten zich hiervan bewust sing met Saxcs heeft ‘gecom zijn. Zeker in de eerste projecten Paused Removing PCB Abort from UI poneerd’, kan hij die op zijn kan dit spanningen opleveren. eigen computer tot in detail De aanpak stelt ook eisen aan doorrekenen en verifiëren. de ontwerpers. Er wordt meer Vervolgens brengen we deze gevraagd van hun abstraherende Controle Actuatoren Motion Sensoren oplossing naar de beoogde Referentie en analytische vermogens. Van besturingscomputer die in een ontwerper wordt daarbij Fysische simulatiemodus staat, wat een precisie verwacht die niet controle bij iedereen even goed past. Hij wil zeggen dat de fysica en wordt gedwongen om compleet beoogde regelstrategie wor te zijn, ook als hij dat niet wil. den nagebootst. De software Via training zijn de methodes ontwerpers van de behavioral Figuur 1: De besturing van een mechatronisch systeem is op te delen goed te leren. Investering hierin control kunnen zo in een in drie lagen: de fysische-controlelaag die de hardware aanstuurt, de is belangrijk, maar echt goed vroeg stadium hun software behavioral control die de interactie tussen de subsystemen coördimodelgebaseerd ontwikkelen integreren, interfaces veri neert en de user control om te interacteren met het systeem. is het best te leren door het te fiëren en testen tegen een doen. Reken op een forse inves realistische simulatie van het ten toe modelleert en een designmodel dat tering in ‘learning on the job’ en zet hierbij uiteindelijke systeem. Gedurende het pro het interne gedrag beschrijft. Dit gebeurt in liefst ervaren ontwerpers in. Bij ASD hebben ject wordt gesimuleerde hardware stapsge een beschrijvingstaal die softwareontwerpers we bijvoorbeeld moeten werken aan een set wijs vervangen door echte hardware. goed kunnen toepassen zonder kennis van designpatronen die een goed met ASD reali Voor de pathologiescanner is bijvoorbeeld de formele wiskunde. De Verum-tools ver seerbaar ontwerp opleveren. Wie te veel vast het dynamische gedrag van de bewegende talen de modellen onder water wel naar een houdt aan een bestaand design of bestaande assen gemodelleerd. In een aantal iteraties (concept-design-simulatie) werd een ont formele taal, waarna een model-checker de aanpak kan behoorlijk uit de bocht vliegen. werp bereikt dat aan zowel de prestatie- als correctheid verifieert en op ontwerpfouten Belangrijk is ook te leren wanneer de metho de kostprijseisen voldoet. Ook konden de wijst zoals racecondities, deadlocks, livelocks, des optimaal zijn in te zetten en wanneer de eisen voor de implementatie helder worden et cetera. Als het model correct is, wordt het traditionele aanpak volstaat. doorgezet naar Prodrive, dat de daadwerke met de codegeneratieknop naar, in ons geval, ASD is vooral zeer geschikt om gedrag te C++ geconverteerd. De Verum-tooling onder lijke aansturing heeft ontwikkeld. Parallel modelleren. De formele verificatie helpt om steunt ook diverse andere talen. hieraan hebben we bij CCM een prototype fouten er zo veel mogelijk in het ontwerptra Door ASD in te zetten voor de behavioral besturing opgetuigd zodat we al het dyna ject uit te halen en automatische codegenera control-software bij de ontwikkeling van de mische gedrag vooraf aan de totale integra tie verkort het implementatietraject aanzien Philips-scanner konden we het complete ge tie konden verifiëren. lijk. Het kleine aantal echte softwarefouten drag van het apparaat specificeren – zowel de dat we in de periode erna vonden, toont aan Happy flow ‘happy flow’ als de uitzonderingsscenario’s. dat de kwaliteit hoog is. Maar de grootste In de fysische-controlelaag kom je typisch De ASD-aanpak dwong om alle softwarewinst zit in de systeemintegratie. Hiermee componenten tegen die een duidelijk afge interfaces inclusief alle gedragsaspecten goed wordt de extra tijd van de specificatie- en architectuurfase ruimschoots goedgemaakt. vast te leggen. Dit gold ook voor de interfaces bakende taak hebben met weinig onderlinge Dataprocessing is echter de achilleshiel van van de deelsystemen ontwikkeld door de ver interactie. Voor de coördinatie tussen deze de aanpak. Dit is juist een domein waar de schillende partners. componenten is de behavioral control verant Mathworks-tooling sterk is. In combinatie Met name dit aspect bleek een groot voor woordelijk. Deze laag bepaalt in grote mate deel van de Verum-aanpak. Ondanks de com goed ingezet geldt dat een en een drie is. het gedrag van het systeem en regelt zowel de goedweer- als de slechtweerscenario’s. Dit plexiteit van het project – niet alleen van het is het terrein waar de ASD-aanpak van Verum apparaat maar ook van de samenwerking met Arend-Jan Beltman en Hans Spitshuis wertot zijn recht komt. meerdere partijen – kon de integratie van ken beiden bij CCM. Beltman is manager Een ontwikkeling met ASD begint tra software en hardware binnen enkele dagen mechatronics en CTO, Spitshuis is manager ditioneel met de requirementsanalyse. De succesvol worden afgerond. Normaal zou dat electrotechnics en software. Tijdens de softwarespecificatie die daaruit volgt, vormt eerder in de maanden lopen. Model-Driven Development Day op 29 april de input voor de architectuurfase, die onder verzorgt de laatste een presentatie over Achilleshiel meer de beschrijving oplevert van de ver de modelgebaseerde ontwikkeling van de De modelgebaseerde aanpak biedt ons de schillende systeemcomponenten. Vervolgens Philips-scanner. nodige handvatten om systeemontwikkeling maakt de ontwikkelaar voor iedere compo Redactie Pieter Edelman naar het vereiste hogere plan te tillen qua nent een interface die het gedrag naar bui
22 april 2011 |
| nr. 5 | 27
THEMA MODELGEBASEERDE ONTWIKKELING
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Supervisory control theory toegepast op pretparkvoertuigen Supervisory control synthesis maakt het mogelijk om besturingen automatisch af te leiden. Aan de hand van een casestudy over pretparkvoertuigen evalueren Jos Baeten en Asia van de Mortel-Fronczak de toepasbaarheid van recent ontwikkelde technieken op dit gebied en de integratie ervan in een systeemontwikkeltraject. De gesynthetiseerde besturing is succesvol geïmplementeerd en geïntegreerd in het bestaande platform. Jos Baeten Asia van de Mortel-Fronczak
D
e hightechindustrie staat voor de uitdaging om de functionaliteit en kwaliteit van een product te verhogen en tegelijkertijd de doorlooptijd en de kosten van het ontwikkeltraject te verlagen. Nieuwe systeemontwikkelprocessen kunnen hierbij helpen. In dit artikel willen we laten zien hoe de zogeheten supervisory control theory (SCT) van Murray Wonham and Peter Ramadge uit 1984 kan bijdragen aan de ontwikkeling van besturingssystemen en hoe we supervisorsynthese kunnen integreren in een systeemontwikkelproces. Supervisory control synthesis gaat uit van een te besturen systeem (plant) P en een supervisor S (Figuur 1). Eerst leggen we de requirements R vast van het systeem, op basis
28 |
| nr. 5 | 22 april 2011
waarvan we een systeemdesign D definiëren en een opdeling in de te besturen plant en de supervisor. Vervolgens specificeren we de eisen aan de supervisor RS en aan de te besturen plant RP. De eerste modelleren we formeel; met de tweede maken we een ontwerp DP en een of meer plant-modellen. Uit het model RS en een plant-model met discrete acties leiden we ten slotte de supervisor af, de synthese. De plant-modellen kunnen we ook in simulatie gebruiken om het gedrag te analyseren van de plant die wordt bestuurd door de supervisor. Als we modellen hebben van alle systeemcomponenten, kunnen we verschillende analysetechnieken inzetten om het geheel te testen in een vroeg stadium van het ontwikkeltraject.
Figuur 1: Systeemontwikkelproces met supervisorsynthese
In systeemontwikkeling op basis van synthese kunnen we eigenschappen die in traditionele en modelgebaseerde ontwikkeling pas achteraf worden gecheckt, gebruiken als input voor het ontwerp van een component die correct is door constructie. Als gevolg hiervan hoeven we het design en de implementatie niet te testen op de gestelde eisen. We kunnen de verificatie dus overslaan. Dit verandert het ontwikkeltraject: we hoeven de fouten niet meer uit het ontwerp en de implementatie te halen, maar in plaats daarvan uit de gestelde eisen. Figuur 2 toont een schematisch overzicht van het besturingsgedeelte van een hightech systeem. Onderaan staat het te besturen systeem afgebeeld met de fysieke hardware-
Figuur 2: De plaats van supervisory control
componenten. Hierop zitten sensoren en actuatoren gemonteerd die de plaats en toestand van de componenten waarnemen en daar invloed op uitoefenen. Regelaars verwerken de sensorsignalen en besturen de actuatoren, zodat de bijbehorende component de gewenste positie op de gewenste manier bereikt. Dit is het niveau van de resource control, het regelgedeelte. Daarboven staat de supervisory control, het coördinatiegedeelte. Dit deel coördineert de verschillende componenten en realiseert zo de gewenste systeemfunctionaliteit. In de context van SCT modelleren we een te besturen systeem middels een of meerdere zogeheten eindige automaten, bestaande uit toestanden met overgangen daartussen, en stellen we eisen op die eigenschappen specificeren waaraan het bestuurde systeem moet voldoen. Acties verdelen we aan de ene kant in controleerbare en oncontroleerbare acties, en aan de andere kant in observeerbare en onobserveerbare acties. Het hart van de theorie is het synthetiseren (het afleiden) van een supervisor, die alleen controleerbare acties kan verbieden, die nieuwe mogelijke acties kan bepalen na nieuwe observaties en die altijd garandeert dat het bestuurde sys teem een goede eindtoestand kan bereiken, in welke toestand het zich ook bevindt. In het algemeen zijn er twee besturingsstrategieën te onderscheiden: toestandsgebaseerde en actiegebaseerde regeling. Bij de eerste heeft de supervisor alleen informatie over toestanden ter beschikking en bij de tweede alleen informatie over series observeerbare acties. Op basis van observaties bepaalt de supervisor welke acties kunnen worden uitgevoerd vóór nieuwe observaties worden gedaan. Wij passen hier beide strategieën toe. Als het systeem niet te ingewikkeld is, kunnen we een gecentraliseerde supervisor synthetiseren. Helaas hebben we bij deze aanpak last van het fenomeen van de toestandsruimte-explosie (state space explosion), een exponentiële toename van het aantal toestanden. Deze computationele complexiteit noopt tot meer geavanceerde synthesetechnieken zoals de symbolische berekeningsmethode met toestandsgebaseerde aanpak van Wonham en zijn discipel Chuan Ma of de aanpak met gedistribueerde synthese van onze collega’s Rong Su, Jan van Schuppen en Koos Rooda.
In onze casestudy passen we verschillende synthesetechnieken toe en kijken we wat het beste werkt voor complexe systemen en herconfigureerbaarheid.
Logische specificaties Onderwerp van deze studie is een echt sys teem: de besturing die NBG Industrial Automation uit Nederweert heeft ontwikkeld voor de Multimover van plaatsgenoot ETF Ride Systems. Dit is een automatisch geleid voertuig dat een in de vloer gelegde elektriciteitskabel kan volgen. Deze kabel produceert een magnetisch veld dat het wagentje kan oppikken met sensoren. Er zijn ook vloercodes die het kan inlezen met een metaaldetector en die extra informatie geven over de te volgen route, zoals het begin van een scèneprogramma of een wissel, kruising Aantal componenten 17 Aantal toestanden per component 2 tot 4 Aantal eisen 30 Aantal toestanden per eis 2 tot 7
Tabel 1: Complexiteit van de Multimover-besturing of doodlopend spoor. Het scèneprogramma bepaalt wanneer het voertuig moet bewegen, met welke snelheid, wanneer het moet stoppen, ronddraaien, muziek moet laten horen en in welke richting het moet gaan (bijvoorbeeld bij een kruising). Een operator activeert het karretje in een attractie en bestuurt het bij het instappen en uitstappen van de passagiers. De wagen krijgt daarbij boodschappen van de Ride Control, die alle voertuigen coördineert en draadloos de start- en stopcommando’s stuurt. De Multimovers kunnen niet communiceren met elkaar. Omdat passagiersveiligheid heel belangrijk is, zijn er verschillende sensoren om botsingen te voorkomen. Allereerst zitten er naderingssensoren in het voertuig om fysiek contact met andere objecten te vermijden. Er zijn twee types: langeafstandssensoren die obstakels kunnen waarnemen op een afstand van ongeveer zes meter en korteafstandssensoren met een bereik van ongeveer een meter. Daarnaast zit er een bumperschakelaar op het karretje die fysiek contact met andere objecten kan waarnemen.
Figuur 3: De besturingsarchitectuur van een plant met een supervisor
De belangrijkste eis is dus veiligheid. De supervisor moet ervoor zorgen dat de Multimover niet botst met andere voertuigen of obstakels. Zo nodig moet hij de snelheid aanpassen of het voertuig stoppen. Als zich dan toch een botsing voordoet, moet hij het wagentje onmiddellijk stil- en de motor uitzetten. Dit moet ook gebeuren als de accu leeg is of als er een motorstoring of een andere fout optreedt. Een lampje moet aangaan als een noodstop is uitgevoerd, waarna de operator het probleem moet oplossen. De plant in deze casestudy is een actiegebaseerde abstractie van het werkelijke gedrag van de fysieke componenten en hun regelaars, zoals getoond in Figuur 3. Pijlen representeren de informatievoorziening tussen de componenten, de resource control (RC) en de supervisor. Elke component samen met zijn regelaar hebben we gemodelleerd met één automaat. Automaten hebben toestanden en overgangen daartussen, gelabeld met acties. Toestanden representeren alle relevante componenttoestanden, zoals aan, uit, leeg of actief. Controleerbare acties zijn relevante discrete commando’s aan de component, zoals aan- of uitzetten. De supervisor kan deze wel of niet toestaan. Oncontroleerbare acties zijn boodschappen van de component aan de supervisor, zoals een foutmelding of sensorwaarde. Deze kan de supervisor niet tegenhouden. Het plant-model hebben we gemaakt onder de aanname dat de werking van de resourcecontrollers correct is. Deze aanname is redelijk omdat zij deel uitmaken van de bestaande implementatie en uitvoerig zijn getest. Dit betekent dat we ervan kunnen uitgaan dat elke opdracht aan de resourcecontrollers correct wordt uitgevoerd. Een andere aanname is dat de communicatie tussen de plant en zijn supervisor voldoende snel is. Als een actie is uitgevoerd in de plant, bijvoorbeeld het indrukken van een knop, heeft de supervisor dit onmiddellijk door. Verderop zullen we aannemelijk maken dat dit ook het geval is voor onze prototype implementatie. Het actiegebaseerde raamwerk gebruikt automaten om plant- en eismodellen in te vatten. Soms is het echter makkelijker of intuïtiever eisen te specificeren met expressies over toestanden. Deze geven een veel compactere beschrijving, waar de automa-
Figuur 4: Schematisch overzicht van een supervisory controller 22 april 2011 |
| nr. 5 | 29
In the field, every measurement counts.
So does every minute you save. Making complex measurements simple and reliable is what Agilent handheld spectrum analyzers (HSA) are all about—rain or shine, day or night. Automated functions reduce human error and save time. Agilent’s new N9342C 7 GHz HSA even stores multiple test routines so repetitive tasks can be quickly executed. MIL-rugged, superb ergonomics and feature-rich. That’s field ready. That’s Agilent. Handheld Spectrum Analyzers N9340B
N9342C
New N9343C
New N9344C
Frequency range
100 kHz – 3 GHz
100 kHz – 7 GHz
1 MHz – 13.6 GHz
1 MHz – 20 GHz
Task planner and internal GPS
No
Yes
Yes
Yes
Weight
3,4 kg
3,7 kg
3,7 kg
3,7 kg
Dimensions
32 x 21 x 7 cm
32 x 21 x 7 cm
32 x 21 x 7 cm
32 x 21 x 7 cm
Watch the N9343/44C free demo video now on: www.agilent.com/find/HSA
© Agilent Technologies, Inc. 2011
+31(0)20 547 2111
THEMA MODELGEBASEERDE ONTWIKKELING ten waarop SCT is gebaseerd alle mogelijke gedragingen op een omslachtige manier uitdrukken. Bovendien hebben systeemeisen vaak de vorm van condities over toestanden. Het toestandsgebaseerde raamwerk biedt beide mogelijkheden om het gewenste gedrag te specificeren. Op de TUE hebben we bovendien een uitbreiding hierop ontwikkeld om toestandsgebaseerde expressies automatisch te genereren uit logische specificaties, die weer op een natuurlijke manier
van deze omvang. Met een geautomatiseerde conversie hebben we vervolgens de eisen gemodelleerd. Deze conversie formaliseert de requirements door ze om te zetten in logische expressies of automaten, waarna er een gedistribueerde supervisor uit is af te leiden. De gesynthetiseerde supervisors hebben we geanalyseerd om te controleren of de modellen van het bestuurde systeem kloppen met het gewenste gedrag. Daarbij hebben we een simulator gebruikt die door de
Modellen en eisen
Ter illustratie laten enkele modellen zien van componenten en eisen. Cursieve labels geven acties weer en labels met hoofdletters toestanden. Een losse inkomende pijl wijst naar de begintoestand en gevulde cirkels staan voor gemarkeerde toestanden. Controleerbare acties worden aangeduid door doorgetrokken pijlen en oncontroleerbare door onderbroken pijlen. Alle knoppen en sensoren hebben we gemodelleerd door automaten met dezelfde structuur. Figuur 5 toont de automaat voor een sensor die twee acties kan genereren: active en inactive. Elk labelt de transitie tussen twee toestanden. Wordt de sensor bijvoorbeeld actief, dan genereert hij de actie active. Figuur 6 geeft de automaat van de stuurmotor. De relevante toestanden zijn SM_On en SM_Off. De relevante acties voor de supervisor zijn het aan- (sm_enable) en uitzetten (sm_disable). Er is ook een hardwarematige beveiliging voor het geval er kortsluiting is of componenten falen. Als deze beveiliging is geactiveerd (sm_error), wordt de motor automatisch uitgezet. De beveiliging kan ook worden geactiveerd als de motor is uitgezet maar nog niet stilstaat. Daarom is deze actie ook mogelijk in de toestand SM_Off. De Multimover zelf kunnen we modelleren door een automaat met drie toestanden: Nood, Reset en Active (Figuur 7). Nood representeert de toestand waarin alle componenten zijn uitgezet en het voertuig handmatig moet worden gereset. Nadat de resetknop is ingedrukt, verandert de toestand in Reset. Vanuit deze toestand kan het wagentje in beweging worden gezet (Active) of terugschakelen naar Nood (in een noodsituatie). Deze automaat hebben we geïntroduceerd voor modelleergemak, omdat veel eisen uitgaan van de multimovertoestanden. Als voorbeeld van een eis bespreken we een requirement aan de module die verantwoordelijk is voor het afhandelen van noodsituaties en fouten (Figuur 8). Deze eis specificeert dat de acties active en reset zich alleen kunnen voordoen als de bumperswitch niet is geactiveerd. volgen uit informele en intuïtieve eisen. Zo zijn deze requirements eenvoudig om te zetten in een formaat dat past in het toestandsgebaseerde raamwerk.
Communicatieprobleem De Multimover is zo complex (Tabel 1) dat het onmogelijk is om met een actiegebaseerde werkwijze één gecentraliseerde supervisor te maken. Daarom hebben we een gecentraliseerde toestandsgebaseerde supervisor afgeleid met de aanpak van Ma en Wonham en twee gedistribueerde actiegebaseerde supervisors met de methode van Su, Van Schuppen en Rooda. Uit ons experiment blijkt dat deze combinatie goed werkt bij problemen
Figuur 5: Sensorautomaat
Figuur 6: Stuurmotorautomaat
Figuur 7: Multimover-automaat
Figuur 8: Eismodel noodmodulemaat
toestandsruimte kan stappen, zodat we kunnen nagaan of de juiste transities kunnen optreden in de juiste toestanden. Hiermee kunnen we ook zeldzame situaties simuleren. De gebruikte simulator hoort bij de toolset die we bij de TUE-faculteit Werktuigbouwkunde hebben ontwikkeld. Een supervisor in SCT is een passieve component die plant-acties bijhoudt en het plant-gedrag inperkt door controleerbare acties te verbieden. In de praktijk moeten deze acties vaak worden geïnitieerd – machines hebben een startcommando nodig om te beginnen. Daarom hebben we een besturing nodig die niet alleen controleerbare acties verbiedt, maar ze ook kan initiëren. Een
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
ander punt is dat we aannemen dat er geen communicatievertraging is tussen plant en supervisor. In modellen hebben we synchrone communicatie, maar in echte systemen DAYeen supervisor vaak MODEL-DRIVEN asynchrone.DEVELOPMENT Daarom is 29 APRIL 2011 niet direct een controller, maar eerder een component die aangeeft welke acties zijn toegestaan in elke plant-toestand. Een supervisory controller heeft twee taken: hij moet de toestand van de plant bijhouden zodat die de juiste terugkoppeling krijgt en hij moet de juiste stuuracties doorgeven aan de plant, uitgaande van diens toestand (Figuur 4). Als zich in de plant een actie voordoet, bijvoorbeeld het indrukken van een knop of de activatie van een sensor, wordt dit gemeld zodat de supervisor de huidige toestand kan updaten. Hij geeft dan de nieuwe toestand. Alleen oncontroleerbare acties worden gemeld, de supervisory controller initieert zelf de controleerbare acties. Als hij de toestand heeft geüpdatet, moet hij een juiste stuuractie doorgeven aan de plant, bijvoorbeeld om een lampje aan of een motor uit te zetten. Is de juiste stuuractie gevonden, dan wordt die uitgevoerd en krijgt de toestand in de supervisor weer een update. In de implementatie zou mogelijk een communicatieprobleem kunnen optreden. Stel, de besturing kan een stuuractie naar de plant zenden, maar ondertussen is diens toestand veranderd, waardoor de actie is gebaseerd op een oude situatie. Dit kan gebeuren omdat de communicatie tussen plant en supervisor niet synchroon is. Bij ons experiment hebben we uitgaande van de gesynthetiseerde supervisor een prototype supervisory controller geïmplementeerd in de bestaande besturingssoftware van de Multimover. Die implementatie hebben we eerst gesimuleerd in de testopstelling en daarna in het echte voertuig. Het communicatieprobleem kwam niet voor. Dit komt doordat de supervisor snel genoeg reageert op toestandsveranderingen van de plant: in de toestandsgebaseerde supervisor is de reactietijd 80 ms en in de actiegebaseerde supervisor 20 ms. Dit is voldoende snel voor de Multimover. Onze prototype implementatie maakt dus de aannames over asynchroniteit en het instantaan optreden van acties waar. De resultaten van de casestudy laten zien dat de synthesetechnieken effectief zijn, in het bijzonder als eisen of componenten van de plant veranderen of als we het systeem moeten herconfigureren. Dit is gestoeld op de volgende observatie. In het huidige ontwikkelproces zijn ongeveer twee dagen nodig om het besturingssysteem aan te passen als het aantal naderingssensoren wordt uitgebreid. Het synthesegebaseerde proces beschreven in dit artikel heeft ongeveer vier uur nodig voor dezelfde verandering.
22 april 2011 |
| nr. 5 | 31
Trainingen voor de hightechindustrie Techwatch Hightech Training organiseert cursussen, trainingen en opleidingen, speciaal gericht op hoogopgeleide professionals in de hightechindustrie. Techwatch werkt daarvoor samen met partners en docenten die specialist zijn op hun gebied. Onze trainingen zijn sterk praktijkgericht. Doel is mensen en bedrijven succesvol te maken op de markt. Behalve aan diepgang besteden de meeste trainingen aandacht aan intermenselijke aspecten. Topexperts met praktische ervaring in de hightechindustrie verzorgen de trainingen. Trainingen zijn ook op maat te verzorgen. Contact training@techwatch.nl +31 24 3505195
Overzicht trainingen Elektronica Electronics for non-electronic engineers (ENE-BSc) start 10 mei 2011, 43 sessies (13 middagen en 30 avonden) Signal integrity - workshop (SI-WS) start 17 mei 2011, 3 lessen van elk 5 uur Nanometer CMOS ICs - basics (CMOS-Basic) 7 - 9 juni 2011 Bits on chips - an introduction (BoC) 14 juni 2011 Discrete-time signal processing (DTSP) start 5 september 2011, 17 sessies (avond) Design of analog electronics - embedded analog 1 (DAE-AE1) start 12 september 2011, 6 dagen Design of analog electronics - introduction (DAE-Intro) start 13 september 2011, 6 dagen Design of analog electronics - analog IC design (DAE-IC) start 7 november 2011, 11 dagen Microelectromechanical systems (Mems) najaar 2011 Design of analog electronics - embedded analog 2 (DAE-AE2) start 17 januari 2012, 5 dagen Mechatronica
Motion control tuning (MCT) start 10 mei 2011, 6 dagen Design principles basics (DPB) start 25 mei 2011, 5 dagen Mechatronics system design (Metron2) 6 - 10 juni 2011 Experimental techniques in mechatronics (ETM) 20 - 22 juni 2011 Dynamics and modelling (DAM) 31 oktober - 2 november 2011 Advanced motion control (AMC) 28 november - 2 december 2011
Optica Applied optics (AP-OPT) start 6 september 2011, 15 sessies (ochtend) Software Software architecture (SA) 24 en 25 mei 2011 Systeem System architect(ing) (Sysarch) 20 - 24 juni 2011 Tools Labprog: programming in Labview 2 (Labprog) 22 - 24 juni 2011 Labview: introduction in language and programming 1 (Labview) najaar 2011 Skills Lateral thinking (LATH) najaar 2011 Six thinking hats (6-Hats) najaar 2011 Alle trainingen worden gehouden in Eindhoven of omgeving.
www.hightechtraining.nl
THEMA MODELGEBASEERDE ONTWIKKELING
Luchtkastelen?
Beter begrip Formele modellen spelen een sleutelrol in een systeemontwikkelproces met synthese. Ze geven een gestructureerde en systematische aanpak om het gedrag van componenten en systemen te specificeren. Ze zijn consistenter en minder ambigu dan documenten. De formele semantiek definieert precies wat de modellen betekenen. Het gebruik van formele modellen al vroeg in het systeemontwikkelproces dwingt de ontwerper om alle aspecten van het systeem helder neer te zetten. Helderheid draagt bij aan een goed ontwerp en correcte besturingssoftware. Het modelleren van systemen en systeemeisen met eindige automaten of logische expressies is intuïtief. Het kost wel tijd om modelleervaardigheden te ontwikkelen. De automatische supervisorsynthese verandert het softwareontwikkelproces van het ontwerpen en debuggen van besturingscode naar het ontwerpen en debuggen van eisen, mits de plant-modellen correct zijn. Omdat we de eisen formeel hebben gemodelleerd, hoeven we het model van de supervisor niet te testen tegen de eisen; het is correct door constructie. Zodoende kunnen we ons beperken tot validatie van het systeem en is verificatie van het softwareontwerp niet nodig. En als de eisen veranderen door klantvragen, hoeven we het ontwerp niet meer handmatig aan te passen met alle fouten en inconsistenties van dien. Met de synthesegebaseerde aanpak hoeven we alleen de modellen van de plant of van de eisen te wijzigen, waarna we een nieuwe supervisor kunnen synthetiseren. Dit houdt in dat het systeem kan evolueren, veranderingen aankan. Bovendien kunnen we gesynthetiseerde supervisors meteen simuleren, wat een snelle terugkoppeling in het ontwikkelproces mogelijk maakt. Het gebruik van modellen en de bijbehorende analysetechnieken als simulatie en formele verificatie laat toe om fouten in een vroeg stadium van het systeemontwikkelproces te ontdekken. Daardoor kunnen we besparen op het ontwikkelen van dure prototypes. Omdat we het gewenste gedrag hebben vastgelegd in modellen en niet in code, hebben we een beter begrip van de besturingssoftware, met als gevolg dat de validatie ten opzichte van de oorspronkelijke informele specificaties gemakkelijker wordt. Jos Baeten is hoogleraar systeemengineering bij de faculteit Werktuigbouwkunde van de Technische Universiteit Eindhoven. Asia van de Mortel-Fronczak is universitair docent bij zijn vakgroep. Tijdens de Model-Driven Development Day op 29 april verzorgt Baeten een inleidende keynote over modelgebaseerde systeemontwikkeling. Hierin zal hij een overzicht geven van het veld, met speciale aandacht voor supervisory control synthesis.
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
M
odelleren is het nieuwe programmeren. Het voegt abstractie toe en DAY aan prolaat de computer de saaie details MODEL-DRIVEN berekenen. DEVELOPMENT Dat geeft lucht 29 APRIL 2011 jecten, ruimte voor echt belangrijke zaken. De benodigde tools, zo is de belofte, zijn er bijna – maar we weten allemaal wat ‘bijna’ betekent in een softwareproject. Dat is overigens niet negatief bedoeld. Ik denk echt dat modelleren een belangrijke stap voorwaarts is. Ik heb echter ook geleerd dat de werkelijkheid ietsje complexer is dan de mooiste folders ons doen geloven. Want hoe zit het bijvoorbeeld met systeemsoftware? Of met andere complexe hightechsoftware? Is het mogelijk om Linux-drivers te modelleren? Linux heeft de vervelende eigenschap dat de interface tussen driver en kernel regelmatig wordt geüpdatet. Dat geeft veel saaie detailveranderingen. Bovendien zijn er heel veel drivers die sterk op elkaar lijken. Daarmee hebben drivers veel weg van een productlijn: diverse producten die net anders zijn, maar vooral veel overeenkomsten vertonen. Met ‘ouderwets’ programmeren is dit altijd veel ontwikkel- en testwerk. Modelleren belooft dit efficiënter te doen door eenmalig één model te maken, waaruit de code automaAlbert Mietus tisch wordt gegenereerd. Het maken van zo’n model lijkt mogelijk: zaken als hardware-eigenschappen (registers, interrupts, DMA en dergelijke), controle-informatie voor de dev-, proc- en sys-pseudobestandssystemen en gewenst gedrag zijn eenvoudig te beschrijven. Weliswaar moeten we de codegeneratie soms aanpassen voor een nieuwe kernelversie, maar dat is eenvoudig, aldus de folders. Zelfs als het meer werk is dan beloofd, zijn er veel meer drivers dan interfaceveranderingen. Het voordeel staat als een huis, nee, als een kasteel. Toch zijn er geen drivers gemodelleerd. Wellicht nog niet. Of zou het toch een luchtkasteel zijn? Ik denk het niet, eerder de uitzondering die de regel bevestigt. Het combineren van ‘legacy’ code met ‘modern’ modelleren is immers niet het meest voor de hand liggende voorbeeld. Als we alles van de grond af modelleren, gaat het vast veel beter. Die uitdaging heb ik omgezet in een privéresearchproject toen ik even tussen twee banen in zat. De uitdaging was om een domeinspecifieke taal te maken voor dit soort hightech systemen. Dit heeft ‘Castle’ opgeleverd, waarmee een heel OS ontwikkelen eenvoudig is. Maar ook embedded software modelleren is revolutionair eenvoudig. En natuurlijk zet de bijbehorende codegeneratie-engine dit om in compacte, efficiënte code, zowel voor eenvoudige 8 bit CPU’s als voor een modern multicore Arm-on-a-chip-systeem. Concurrency afbeelden op multicore systemen is een makkie. En Castle is geweldig om een compiler in te schrijven. Het ontwikkelen van én in Castle gaat erg snel, en toch is de code efficiënt. Het is zelfs mogelijk om er realtime systemen in te maken. Ik zou Castle zelfs willen gebruiken om Castle in te programmeren, pardon, te modelleren. Ik ben helemaal enthousiast. Er is niets dat niet kan in Castle. In de toekomst gaan we allemaal modelleren met Castle! Echt waar, Castle geeft projecten veel meer lucht. U had het waarschijnlijk al opgemerkt: u mag deze column lezen als zo’n fraaie folder. Castle bestaat en is bijna af, maar nu ik weer een baan heb, is er wat lucht uit het Castle-project gelopen. Albert Mietus werkt als systeemarchitect bij Sogeti High Tech (albert.mietus@sogeti.nl), maar schrijft deze column om zijn persoonlijke missie uit te dragen.
Redactie Nieke Roos
22 april 2011 |
| nr. 5 | 33
Verkrijg meer inzicht, meet real-time. De R&S®FSVR is de eerste real-time spectrum analyzer met complete all-round mogelijkheden. De combinatie van alles wat een hoogwaardige spectrum- en signaalanalyzer moet hebben – plus krachtige real-time meetfuncties. Daarmee bent u gereed voor alle veeleisende metingen, van breedband spectrale analyse tot de detectie van zeer korte en sporadische interferentie signalen. De FSVR biedt: J J
J
R&S stand 8A022
Spectrum metingen zonder tijdverlies, met 40 MHz analysebandbreedte en een frequentiebereik tot max. 30 (110) GHz Real-time functies, inclusief: J Spectrogram die de spectrum- versus tijdhistorie toont J Persistence mode voor snelle evaluatie van tijdsvariabele spectra J Trigger op afwijkingen in het spectrum (frequency mask trigger) Alle functies van de R&S®FSV spectrum- en signaalanalyzer
7 GHz 13,6 GHz 30 GHz
www.rohde-schwarz.com/ad/fsvr
Kijk voor prijsgunstige test- en meetapparatuur van Rohde & Schwarz, HAMEG, e.a. ook op Tel: E-mail:
030-6001721 info.nl@rohde-schwarz.com
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Foto: Illya Vaes
THEMA MODELGEBASEERDE ONTWIKKELING
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Testautomatisering helpt nieuwe communicatie met seinen en wissels te verbeteren De modelgebaseerde aanpak staat al enkele jaren in de schijnwerpers. Gezien de hype zijn er opmerkelijk weinig bewezen commerciële toepassingen. In dit artikel beschrijven Axini en Prorail hoe zij modelgebaseerd testen succesvol inzetten om risico’s te minimaliseren bij de ontwikkeling van software voor op het spoor. Sander Berg Machiel van der Bijl
H
oe zorgt Prorail ervoor dat treinen veilig van a naar b komen, vierentwintig uur per dag, zeven dagen in de week, het hele jaar door? Het traject dat een trein aflegt, is opgedeeld in zogenaamde treinpaden, bijvoorbeeld van Amersfoort naar Utrecht Centraal. De treindienstleider is verantwoordelijk voor een veilig treinpad. Om deze veiligheid te waarborgen, stuurt hij verschillende spoorelementen aan, zoals seinen en wissels. Momenteel vervangt Prorail het netwerk tussen de bediensystemen van de treindienstleider en het deel van de treinbeveiliging dat ongeveer zeventig procent van het spoor in Nederland beslaat. Deze vervanging valt onder preventief onderhoud en zorgt ervoor dat seinen en wissels flexibeler zijn aan te sturen en dat het netwerk beter is te onderhouden. De bestaande communicatie gaat deels over koperverbindingen en gebruikt bedrijfsspecifieke protocollen en dedicated hardware. Het project Verbetering Onderpostcommunicatie verlegt de gegevensuitwisseling naar glasvezel en standaardiseert op het IP-protocol en IP-gebaseerde hardware. Het levert drie producten op: een aangepast systeem bij de treindienstleider, ook wel hoofdpost genoemd, een nieuw netwerk en een aangepast systeem inclusief hardware vlak tegen de beveiliging aan, de onderpost. Kwaliteit heeft binnen het project de hoogste prioriteit. Een systeemfalen heeft directe
impact op het treinverkeer. Een treindienstzou zijn om keuzes te maken: we bekijken leider die geen zicht heeft op het spoor of het in elk geval de grote en veelgebruikte wegen spoor niet kan bedienen, legt het verkeer stil. en als we dan nog tijd over hebben, nemen Dit wil Prorail te alwe een buitenwijk len tijde voorkomen. als steekproef. Stel Daarom heeft het je nu een digitale verbeterproject een versie van de plataantal kwaliteitstegrond en een lemaatregelen genoger robotjes voor men. Ten eerste is en je hebt een aarde Software Improdige metafoor voor vement Group erbij MBT. Ineens kun gehaald om de code je een computer van het systeem inzetten om de van de hoofdpost plattegrond te conFiguur 1: Een versimpeld model te onderzoeken op troleren. Door de voor het zetten van een wissel uitbreidbaarheid. automatisering zijn Ten tweede worden veel meer wegen alle aanpassingen in de keten beproefd op de na te lopen. Daarnaast is het mogelijk heel Modelpost in Amersfoort, waar een represenprecies op te geven wat je wilt controleren: tatieve testomgeving is opgebouwd. Hierbij is alle rotondes, op- en afritten van snelwegen, Axini ingeschakeld om de systemen op zowel elke afslag naar links. Een nieuwe versie van de hoofdpost als de onderpost modelgebade plattegrond? Automatiseren maakt herseerd te testen. Prorail heeft voor deze geautesten makkelijk. tomatiseerde testtechniek gekozen vanwege Om de toepassing van MBT bij Prorail te eerdere positieve ervaringen. illustreren, gebruiken we een versimpeld model voor het zetten van een wissel. Eerst Uiteenlopende foutcondities kijken we of we deze actie mogen uitvoeren: Modelgebaseerd testen (MBT) laat zich goed de prepare-stap. Vervolgens kunnen we de uitleggen aan de hand van een landkaartanawissel daadwerkelijk zetten. Figuur 1 zoomt logie. Hoe controleer je in één nacht of alle in op het prepare-deel van het communicastraten op de nieuwe plattegrond van New tieprotocol. Links staat het gedrag van de York City kloppen? Een pragmatische aanpak aanroepende partij, de client, die een wissel
22 april 2011 |
| nr. 5 | 35
wil zetten; rechts staat het gedrag van de ontvangende partij, de server, die de wissel daadwerkelijk zet. Het beoogde gedrag is dat de client het prepare-commando verstuurt naar de server, die na ontvangst een ok teruggeeft. De client weet dan dat de server er klaar voor is. Als de server niet aan de prepare-wens van de client kan voldoen, stuurt hij een not-ok terug. Het kan ook zijn dat hij te druk is om binnen de time-out te reageren op het verzoek. In beide gevallen weet de client dat hij het later nogmaals moet proberen. Axini’s Testmanager test het gedrag van de serverimplementatie door zich voor te doen als client. We starten in toestand 1:Start, de begintoestand van het model, en kijken wat mogelijk is: de client kan enkel de input prepare geven. Deze voeren we uit tegen de server. Na een update van de toestand naar 2:Waiting is de eerste teststap een feit. Vanuit deze toestand zijn geen inputs mogelijk, maar wel de uitvoeren ok, not-ok en timeout. Stel dat de server ok terugstuurt. Dat mag inderdaad in state 2:Waiting van de client. We updaten de toestand naar 3:Prepared, enzovoort. Aangezien er geen handmatige acties in de testafleiding zitten, zijn volgens hetzelfde principe grote hoeveelheden tests uit te voeren. Ook complexe randgevallen zoals deadlocks komen aan bod. Testmanager kan bijvoorbeeld een time-out simuleren door na de prepare de ok van de server te negeren. Het gevolg is dat de server zich in toestand c:Prepared bevindt, maar het model in toestand 1:Start. Hierna stuurt Testmanager weer een prepare, die de server negeert, want niet gedefinieerd in toestand c:Prepared. Dit zorgt ervoor dat de client voor eeuwig de cyclus prepare-timeout zal doen en nooit voorbij toestand 2:Waiting komt. Testmanager detecteert en rapporteert het gebrek aan progressie. De protocollen van Prorail zijn uiteraard veel complexer dan dit simpele voorbeeld. Ze voorzien in de meest uiteenlopende foutcondities, werken over een primaire en een uitwijkverbinding en kennen diverse timingaspecten. Dit maakt dat er duizenden relevante testsituaties zijn. MBT genereert en test aan de hand van het model automatisch de tests om al deze situaties af te dekken.
N
EW: oCnOMCOExIpnretsel®T QM M Ty4p0e° toM+8E5xspres 67 2 and°C s® 6!
ultra 84 x 55
compact 95 x 95
basic 125 x 95
» Just COMsistent! « ETXexpress®-SC with Quad Core and USB 3.0
Ernstig en cosmetisch
COM Express – consistently streamlined from basic to ultra, from AtomTM to Quad Core ®
» Follow the worldwide standard! » Win with 100% compatibility – same connector and placement, so easily interchangeable.
» COM
Expr p es
COM Express® is a registered trademark of PICMG.
» ETXexpress®-SC as COM Express® basic Type 2 or Type 6 with Intel® Core™ i7/i5, 16 GB DDR3, SATA 3, USB 3.0 and new DDI graphics interfaces.
s « TM
TM
THE RIGHT SOLUTION FOR YOU Learn more about COM Express®: www.kontron.com/comexpress E-Mail: info@kontron.com Download now the COM Express® Concept Folder!
2002
2004
ultra basic
2010
2008
2006
UP GR REVIS AD E ION TO 2.0
compact
»
The futu re-proof » New global pin-outs standard with USB » Over ! 12 year 3.0 and s COM multiple » 100 expe % head
start,
displays rience – a safe 100 % investme COMsiste nt! nt
If it’s
embedde
d, it’s
Kontron.
If it’s embedded,it’s it’sKontron. Kontron. If it’s embedded, 36 |
| nr. 5 | 22 april 2011
07_eu_90x266_UpdateFeb11.indd 1
29.03.2011 13:26:1
Het nut van MBT toont zich al direct bij het bouwen van het model. Terwijl we de specificaties omzetten in controleerbare modellen, halen we gelijk de stofkam erdoor. De specificaties worden hierdoor scherper, wat fouten in de implementatie voorkomt. De MBT-tests zijn uitgebreid en makkelijk te herhalen. We hebben ervoor gekozen MBT in te zetten bij de leverancier om zo dicht mogelijk op de systeemontwikkeling te zitten. De tijd om een model te maken, blijkt in de praktijk vergelijkbaar met (en vaak minder dan) de tijd die nodig is voor een handmatig testontwerp en de voorbereiding om daar grondig mee te testen. Wij gebruiken een speciaal ontwikkelde modelleertaal. De grote winst zit in een goed onderhoudbare, zeer grondige testset, die met een druk op de knop is uit te voeren. Ook de vele uitzonderingsgevallen testen we iedere keer mee. De focus op kwaliteit heeft zich terugbetaald in het project. Door MBT in te zetten in combinatie met tests op de Modelpost hebben we diverse fouten gevonden, zowel ernstige als cosmetische. Inclusief gebruikelijke RFC’s heeft dit geresulteerd in een aantal softwarereleases. Voordeel van MBT is dat regressietests gemakkelijk zijn uit te voeren. Ondanks alle inspanningen bleek bij de pilot toch nog een fout in het systeem te zitten, in een deel dat we niet met MBT hadden getest. Daarom hebben we ervoor gekozen de scope van de MBT-tests verder uit te breiden. Sander Berg is projectmanager bij Prorail. Machiel van der Bijl is medeoprichter van Axini. Tijdens de Model-Driven Development Day op 29 april in Eindhoven verzorgen zij een presentatie over modelgebaseerd testen bij Prorail. Redactie Nieke Roos
THEMA MODELGEBASEERDE ONTWIKKELING
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
MDD voor multicore MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Multicoretechnologieën bieden belangrijke voordelen, zoals een lager energieverbruik, minder warmteontwikkeling en echte multitasking. Ze brengen echter ook een aantal uitdagingen met zich mee voor de softwareontwikkeling. Ravi Patil en Rien Schot van IBM bespreken wat een modelgebaseerde aanpak hier kan betekenen. Ravi Patil Rien Schot
M
ulticore platforms vinden steeds meer toepassing om de toenemende honger naar performance te stillen. Ze hebben een relatief lage energiebehoefte, waardoor ze langer werken op een batterij. Daarnaast produceren ze minder hitte, zodat er geen ventilator nodig is voor de koeling. Niet alleen scheelt dat weer in het energieverbruik, ook zijn de resulterende systemen stiller en nemen ze minder ruimte in beslag. Een ander belangrijk voordeel van multicore is dat echte multitasking mogelijk is. Het applicatiemanagement kan een stuk efficiënter en rekenintensieve taken, die er steeds meer zijn, zijn zuiver parallel uit te voeren. Voorwaarde is wel dat de software daarop is ingericht. Bij multicore zijn de kloksnelheden lager en als applicaties de architectuur niet goed uitnutten, zullen de prestaties zelfs slechter zijn dan op een enkele kern. Vier aspecten maken het ontwerpen van effectieve software voor multicore lastig. Ten eerste moeten we ontwerpbeslissingen nemen over het aantal processoren en cores, over de eigenschappen van het besturingssysteem en het interne communicatieprotocol en over de partitionering van de applicaties. Ten tweede is de complexiteit flink groter doordat de software er organisatorische taken bij krijgt, zoals communicatie tussen en toewijzing van taken aan cores, en doordat ontwerpeisen als herbruikbaarheid van componenten en schaalbaarheid voor multicore extra belangrijk zijn. Ten derde moeten we nieuwe testen debugtechnieken inzetten. Methodes die prima voldoen voor een enkele kern blijken voor meerdere kernen namelijk niet te werken. Ten slotte vraagt multicore andere kennis en vaardigheden van de ontwerpers, die dus bijscholing moeten krijgen en deels andere werkwijzen moeten gaan hanteren.
Multicore en modelleren Modelgebaseerde ontwikkeling is niet specifiek toepasbaar op multicore, maar biedt een aantal hulpmiddelen om de grotere complexiteit die meerdere kernen met zich meebrengen deels te abstraheren en deels te isoleren. Modellen kunnen onder meer van groot nut zijn bij de architectuurstudie. Om te voorkomen dat applicaties langzamer in plaats van
sneller worden, is het bij multicore noodzakelijk om verschillende alternatieven door te rekenen. Hierbij moeten we de kosten van de communicatieoverhead en het delen van resources afwegen tegen de mate van parallel-
Door de architectuur van de applicatie te modelleren en hieraan opties toe te voegen om op verschillende cores te draaien, kunnen we eenvoudig analyseren wat het effect is als we meer of minder taken toewijzen aan kernen. lisme. Door de architectuur van de applicatie te modelleren en hieraan opties toe te voegen om op verschillende cores te draaien, kunnen we eenvoudig analyseren wat het effect is als we meer of minder taken toewijzen aan kernen. Het gebruik van modelsimulatie hierbij levert nog meer informatie op. Verder is het goed om bestaande software als startpunt te nemen. Over het algemeen draait een single-coreapplicatie ook op meerdere kernen en waarom zouden we niet zo veel mogelijk hergebruiken? Vervolgstap is om de structuur van de applicatie te visualiseren en zo de samenhang van de componenten in kaart te brengen. Als laatste herstructureren we de software zodat deze de multicore architectuur optimaal benut. Het gebruik van goede tooling is hierbij essentieel om deze architectuur te waarborgen en de applicatie consistent te houden. Behalve dat we niet van scratch hoeven te beginnen
met programmeren heeft deze aanpak het voordeel dat de nadruk van het testen kan liggen op de communicatie en performance, omdat de hergebruikte componenten al zijn beschreven en getest.
Wat zeker ook helpt bij het ontwikkelen van software voor multicore is het automatisch genereren van code. Dit verbetert de kwaliteit, onder meer doordat het zorgt voor een consistente implementatie van de communicatiemechanismen tussen de verschillende taken – een lastig bijkomstigheid bij multicore. De ontwerper kan zich dan volledig concentreren op een of enkele van deze mechanismen. Automatische codegeneratie maakt het ook gemakkelijker om een component te verhuizen naar een andere core, zelfs als het andere hardware betreft of een ander communicatieprotocol. Het model werkt de juiste opties uit en produceert de bijbehorende code. Dit vereenvoudigt uiteraard ook het hergebruik voor andere devices. Ravi Patil is industriemarketingmanager bij IBM Rational Software. Rien Schot is businessleider van IBM Rational Systems in Zuid- en West-Europa. Tijdens de ModelDriven Development Day op 29 april verzorgt IBM een presentatie en een workshop over zijn MDD-benadering. Redactie Nieke Roos
22 april 2011 |
| nr. 5 | 37
23 65
18
256 9 7 5 58 26
29
254 3 8 6
32 95
568 6 5 9
14
198 1 0 2
29 87
89
Door producten slimmer te maken, krijgen we het beter. Niet minder dan 66% van de producten die vorig jaar zijn ontwikkeld, bevatte op de een of andere manier ingebouwde informatietechnologie. We leven in een wereld van slimmere producten en dat levert ons allemaal tal van voordelen op. Plus een heleboel interactief plezier! Maar wat betekent dit voor de makers van deze producten? Wat zijn voor hen de implicaties van het inbouwen van computertechnologie in dingen die we nooit zullen beschouwen als computers, zoals telefoons, auto’s, huishoudelijke apparaten, kleding en medische apparatuur? Eén ding is duidelijk: software wordt voor elk bedrijf een strategische business bedrijfsmiddel. De makers van slimmere producten moeten alleen net zo bedreven zien te worden in complexe systeemintegratie en softwareontwikkeling als ze al waren in conventionele ontwerp-en productieprocessen. Deze verschuiving is diepgaand. En urgent. Wat moet een bedrijf bijvoorbeeld doen om software te integreren in een complexe, voortdurend uitdijende supply chain, terwijl steeds meer componenten afkomstig zijn van diverse locaties, worden geleverd met ingebouwde software en worden geassembleerd in steeds wisselende combinaties?
Toonaangevende bedrijven in de luchtvaartindustrie pakken deze problemen aan door de voortdurend veranderende eisen voor ontwerp en fabricage op een volkomen andere manier te benaderen. Tegelijkertijd worden bedrijven bij hun productontwikkeling geconfronteerd met mechanische, elektronische en softwarematige technieken die hun intrede doen in het ontwerpproces. Dit vraagt om een grotere mate van interoperabiliteit. Zo heeft BMW zijn engineeringsprocessen gemodelleerd naar het voorbeeld van grote softwareleveranciers. De test-en productiekosten konden daardoor drastisch worden verlaagd. Fabrikanten die software systemen of virtual prototyping hebben opgenomen in hun bedrijfsvoering, presteren over het algemeen uitstekend: ze halen 90% van hun productdeadlines en blijven in 87% van de gevallen binnen het budget. Dankzij slimmere manieren om producten te maken, kan het creeren van producten in de 21e eeuw dezelfde stormachtige ontwikkeling doormaken als massaproductie in de 20e eeuw. We kunnen de wereld slimmer maken. Kom naar ibm.com/smartproducts/nl en kijk wat andere bedrijven doen.
IBM, het IBM-logo, ibm.com, Smarter Planet en het “planet”-pictogram zijn merken van International Business Machines Corp.. Andere namen van producten of diensten kunnen merken van IBM of andere ondernemingen zijn. Een actuele lijst van merken van IBM is te vinden op www.ibm.com/legal/copytrade.shtml. © International Business Machines Corporation 2011.
THEMA MODELGEBASEERDE ONTWIKKELING
De waarde van vroeg en formeel modelleren De afgelopen jaren heeft de modelgebaseerde aanpak zich bewezen als de weg vooruit in softwareontwikkeling voor embedded systemen. Iedereen heeft gehoord van de voordelen: minder tijd, minder kosten, minder fouten. Er is echter weinig bekend over hoe modelleren in de ontwerpfase nou precies waarde toevoegt en wat de impact is als we ernaar kijken vanuit businessperspectief. In dit artikel belicht Hans Martin Ritt van Mathworks deze aspecten. Hans Martin Ritt
R
egelmatig zien we dat ontwikkelprocessen die specifiek focussen op software-implementatie ontwerpfouten te laat onderkennen. Hierdoor worden correctieslagen moeilijk en duur. Modelgebaseerd ontwerpen is meer gericht op de vroegste stadia van het traject. Door modellen te creëren die niet alleen de software weergeven maar ook de omgeving waarin het embedded systeem moet opereren, kunnen we het volledige systeemgedrag simuleren en evalueren. Dit is een belangrijk verschil met modelgedreven benaderingen die alleen de software modelleren. Fouten in het totaalgedrag zijn alleen te vinden door ook de ‘werkelijkheid’ van het embedded systeem in een virtuele omgeving mee te nemen. Laten we nu proberen om de impact van deze focusverschuiving te kwantificeren. Figuur 1 laat een significante toename zien van het aantal uren besteed in de ontwerpfase. De implementatiefase wordt daarentegen veel korter omdat we automatisch code genereren vanuit het ontwikkelde softwaremodel. Niet dat deze activiteit met een druk op de knop is voltooid; voor een gedetailleerde implementatie moeten de programmeur nog steeds aan de bak. De werkelijke waarde van
modelgebaseerd ontwerpen komt bovendrijven in de testfase: we vinden minder fouten en – nog belangrijker – er zijn minder correcties nodig. Het plaatje laat zien dat de werkelijke uitdaging bij de toepassing van modelgebaseerd ontwerpen ligt in de bereidheid van alle betrokkenen om extra tijd en werk te investeren in de ontwerpfase, om zo voordeel te halen aan het einde van het proces. Er blijkt dan tussen de twintig en vijftig procent tijdbesparing mogelijk, afhankelijk van het project, de ontwikkelomgeving en de beschikbare technische competenties. Een soortgelijke evaluatie kunnen we doen vanuit kostenperspectief, uitgaande van vooraf te bepalen personeelskosten voor de verschillende activiteiten. Figuur 2 heeft haast vanzelfsprekend dezelfde structuur. De benodigde investering in hardware en software zegt niet direct iets over het succes van de methodologie. Eerst moeten we aandacht besteden aan een gedegen implementatie van de nieuwe werkwijze in de verschillende ontwikkelfases. Om de verschuiving naar modelgebaseerd ontwerpen te realiseren, is deze competentie in de organisatie nodig en is een passend
Figuur 1: Tijd besteed aan de verschillende fases in het ontwikkelproces
Figuur 2: Kosten van de verschillende fases in het ontwikkelproces
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
t rainingsprogramma de aangewezen weg. Aan de andere kant hoeven we minder handmatig te programmeren in de implementatiefase omdat automatische code MODEL-DRIVEN DEVELOPMENT generatie veel tijd bespaart.DAY 29 APRIL 2011
Wiskundig bewijzen Volgende stap is om de kwaliteit van de output veel actiever te managen. Tot nu toe hebben we die kwaliteit voornamelijk passief verbeterd, bijvoorbeeld door automatische codegeneratie te introduceren om handmatig programmeren – en daarmee een belangrijke bron van fouten – zo veel mogelijk uit te bannen. Door formele methoden in te bouwen in de softwaretools voor modelgebaseerd ontwerpen kunnen we de kwaliteit ook actief verbeteren. Dit kan zelfs leiden tot zero defects, doordat we de afwezigheid van fouten mathematisch kunnen bewijzen. Formele methoden vinden hun toepassing nu vooral in veiligheidskritieke software voor de lucht- en ruimtevaart, maar steeds meer embedded-softwareontwikkelaars in andere gebieden beginnen de voordelen in te zien. Belangrijke reden is dat de tools ervoor ondertussen gebruiksvriendelijk geïntegreerd zijn in omgevingen voor modelgebaseerd ontwerpen. Met behulp van meetbare prestatie-indicatoren wordt de kwaliteit zo beheersbaar. Wat betekent het nu eigenlijk om formele methoden te introduceren in het ontwerpproces van embedded systemen? De eerste stap naar verbetering van de verificatie is vaak om te kwantificeren hoe volledig een product is getest. Coverage tests zijn een algemeen aanvaarde methode op zowel model- als codeniveau. De vraag is dan vaak: wat doen we als de dekking niet 100 procent is? Met formele verificatietools kunnen we bepalen welke extra tests we moeten uitvoeren om de gewenste 100 procent coverage te halen. Formele methoden bieden ook een totaal nieuwe benadering voor verificatie: door middel van formele verificatie kunnen we bijvoorbeeld wiskundig bewijzen dat een deling door nul niet kan binnen een model of stuk code. Daar zouden anders tijdrovende tests en simulatietechnieken voor nodig zijn, die vaak niet eens 100 procent uitsluitsel kunnen geven. Formele verificatietools brengen modelgebaseerd ontwerpen zo naar het volgende niveau. Hans Martin Ritt is technisch manager voor Mathworks in de Benelux. Tijdens de ModelDriven Development Day op 29 april geeft hij een presentatie over de waarde van modelleren in de ontwerpfase en het gebruik van formele methoden om de kwaliteit van de output te verbeteren. Daarnaast verzorgt Mathworks een workshop over zijn MDDbenadering. Redactie Nieke Roos
22 april 2011 |
| nr. 5 | 39
Software Precisely
The Power to Create ZERO DEFECT Software Solutions Software Precisely
ASD:Suite© for Rapid Software Design and Defect-Free Code
Interested to learn more about ASD:Suite of Verum? Sign up for a free workshop in March, April, May or June 2011! See www.verum.com
For software that is right the first time, every time
www.verum.com
THEMA MODELGEBASEERDE ONTWIKKELING
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Waarom het wiel steeds opnieuw uitvinden?
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Hergebruik van modellen tijdens de ontwikkeling van nieuwe producten met embedded besturingssoftware is vandaag de dag vrij gebruikelijk. Hergebruik van testcomponenten niet, en dat is vreemd want dat zorgt niet alleen voor een hogere kwaliteit van het embedded systeem maar ook voor een hogere efficiëntie van de productontwikkeling. In dit artikel presenteert National Instruments enkele argumenten om hergebruik te overwegen. Chris Washington
E
mbedded besturingssoftware vormt in allerlei systemen en producten een fundamenteel onderdeel van de functionaliteit en daarmee van de waarde. Niet alleen in mobiele telefoons, medische apparaten of auto’s maar ook in wasmachines en windmolens. Naarmate de rol van software in het product belangrijker wordt, neemt echter ook het belang van kwaliteitscontrole toe. Het blijkt dat de meeste ontwikkelafdelingen tijdens het hele ontwikkelproces wel testen, maar dat dit veel efficiënter en consistenter kan. Het V-model dat het ontwikkelproces van embedded systemen beschrijft, is ongetwijfeld bekend. Het begint in de linkerbovenhoek
ciëntie te verbeteren. Deze aanpak heeft zich al ruimschoots bewezen. Hergebruik van tests tijdens diezelfde fases kan de kwaliteit en efficiëntie nog verder verbeteren. Traditioneel wordt de linkerkant van het V-model gezien als een R&D- of ontwerptaak en de rechterkant als een test- en validatietaak. Deze twee delen van de productontwikkeling zijn meestal gescheiden. Zodra we een testunit van het product hebben geproduceerd, geven we dit met een lijst van richtlijnen door aan de testingenieur met de vraag om het verificatie- en validatieproces zo snel mogelijk af te ronden en verslag te doen van het resultaat. Natuurlijk is er niets mis met verdeling van
Ontwerp
Te s
D R&
te nv
Hil-validatie
Prototyping
ali
da tie
Fysieke test
Codegeneratie
Traditioneel wordt de linkerkant van het V-model gezien als een R&Dof ontwerptaak en de rechterkant als een test- en validatietaak. met het ontwerp van het besturingsalgoritme om vervolgens via prototyping, codegeneratie en inzet op hardware naar de verschillende realtime testtaken te gaan, zoals hardwarein-the-loop-test, testcelvalidatie, veldtests en ga zo maar door. De focus ligt hier vaak op het hergebruik van modellen in de verschillende fases, met als doel de kwaliteit en effi-
werk, maar het probleem is dat deze scheiding vaak leidt tot een breuk in het proces. In de praktijk voeren we realtime tests uit tijdens het hele proces. In de ontwerpfase doen we model-in-the-loop-tests door stimulusprofielen toe te passen op systeemsimulaties en vervolgens de respons van het gesimuleerde systeem te analyseren. In de
prototypingfase koppelen we het algoritme aan de echte wereld en testen we het in het lab of veld. En zodra het algoritme klaar is voor inzet op hardware, genereren we vanuit het model C-code, die we ook weer testen om eventueel tijdens het generatieproces geïntroduceerde fouten te elimineren. Testen gebeurt dus continu en overal tijdens de systeemontwikkeling. Wanneer we dieper inzoomen op de software voor de verschillende testtaken, zien we dat deze steeds bestaat uit dezelfde basiscomponenten: een userinterface, modellen, stimulusprofielen, templates voor rapportage, analyseroutines
De praktijk Een mooi verhaal, maar hoe werkt het in de praktijk? Hoe kunnen we hergebruik van testcomponenten zodanig implementeren dat de mogelijke problemen die ontstaan bij de implementatie niet opwegen tegen de voordelen? Op www.ni.com/nltestreuse staat een korte videodemonstratie. en een link naar een document met specificaties. Desondanks vinden we steeds opnieuw het wiel uit tijdens het ontwikkelproces. De kwaliteit en efficiëntie van ontwikkeling kunnen we sterk verbeteren door het beginsel van hergebruik toe te passen op de onderdelen die we gebruiken voor het testen. Net zoals we modellen hergebruiken om in elke fase tests op systeemniveau mogelijk te maken, moeten we testcomponenten hergebruiken om ervoor te zorgen dat die tests consistent zijn. Door het beginsel van hergebruik te omarmen, of liever gezegd: uit te breiden van modellen naar tests op systeemniveau, kunnen we op consistente wijze stimuleren, visualiseren, analyseren en rapporteren, ongeacht de fase van de ontwikkeling waarin we zitten. Daarnaast wordt het gemakkelijker om tijdens de ontwikkelcyclus op consistente wijze veranderingen door te voeren in een testcomponent. De gewonnen efficiëntie en consistentie leiden niet alleen tot een betere kwaliteit, maar maken het ook mogelijk meer tijd te steken in innovatie, zonder dat de deadline van het project in gevaar komt. Chris Washington is productmanager voor realtime tests bij National Instruments. Tijdens de Model-Driven Development Day op 29 april verzorgt NI een presentatie en een workshop over zijn MDD-filosofie. Redactie Nieke Roos
22 april 2011 |
| nr. 5 | 41
Naam Peter Simonsen Functie Design Engineer, Embedded Software Vakgebied Duurzame Energie Zo heeft LabVIEW mij geholpen Realistische simulaties uitvoeren met totale controle over de applicatie Meest recente project Een testarchitectuur ontwikkelen voor het verifiëren van windturbinebesturingssystemen
NI LabVIEW
LabVIEW makes me better because I can
SIMULATE real-world systems
>>
Leer nu hoe LabVIEW u succesvol kan maken op ni.com/labview/better Ontdek LabVIEW tijdens de Hands-On seminars. Bezoek ni.com/netherlands/events
National Instruments Netherlands BV ■ Pompmolenlaan 10 ■ Postbus 124 ■ 3440 AC Woerden ■ Tel +31 348 433 466 ■ Fax +31 348 430 673 Chamber of Commerce ■ # 301 168 13 ■ Utrecht ©2011 National Instruments. Alle rechten voorbehouden. LabVIEW, National Instruments, NI, en ni.com zijn handelsmerken van National Instruments. Andere vermelde producten en firmanamen zijn handelsmerken of handelsnamen van hun respectievelijke bedrijven. 3366
0348 433 466
THEMA MODELGEBASEERDE ONTWIKKELING
Een modelgebaseerde app overzetten van Android naar Iphone Veel mensen lopen tegenwoordig rond met een Android-mobieltje of een Iphone. Voor beide platforms zijn al heel wat apps verschenen. Wat komt er zoal bij kijken om een app te porten van Android naar Iphone (of vice versa) als de software is gemaakt met een modelgebaseerde aanpak? Verum heeft dit onderzocht voor een bestaande machinebesturingsapplicatie. Uit dit experiment blijkt dat de vertaling eenvoudig en goedkoop is (65 procent in een halve dag) en dat het werk vooral zit in de handgeschreven code (35 procent in acht dagen). Paul Hoogendijk Peter van de Velde
E
nkele jaren geleden hebben we bij Verum de machinebesturingssoftware gemaakt voor een waferinspectie-unit van het Duitse bedrijf Nandatech. Daarbij hebben we gebruikgemaakt van model-driven development (MDD). Om de MDD-manier van werken te kunnen demonstreren, hebben we met Lego Mindstorms een demo gebouwd van het systeem. Dit had als bijkomende voordeel dat we gelijk een deel van de werking konden valideren. Conceptueel doet het legobouwsel hetzelfde als de waferinspectieunit: onder controle van een manufacturing execution system (Mes) krijgt het een batch van wafers aangeboden om te inspecteren, waarna het iedere plak controleert op een aantal kenmerken. Op basis van het inspectieresultaat keurt het systeem de wafer goed voor verdere productie, of af. Het inspectieproces bevat concurrencyaspecten en vele discrete beslismomenten (bijvoorbeeld: schakelaar is wel of niet ingedrukt, motor heeft wel of niet positie bereikt), waar de software besluit wat de vervolgactie wordt op basis van de situatie. Het ‘controle’-aspect in de software (gedrag) is zo ingewikkeld dat het lastig is om dit met handgeschreven code te implementeren. Bovendien is het ondoenlijk om de correctheid van de software door testen te verifiëren en aan te tonen, en wel om twee redenen: ten eerste kost grootschalig testen zeer veel tijd en geld en ten tweede kun je geen gedrag testen dat je niet verwacht. Hierdoor is het onmogelijk om daadwerkelijk alles te testen. Daarom hebben we de software gemaakt met MDD op basis van formele verificatie. Aansturing van het legosysteem gebeurt door de machinebesturingsapplicatie. Deze legoapp draait op een Android-platform en
communiceert via Bluetooth met vier Lego Mindstorms Nxt-bricks, die de motoren bedienen en de sensoren uitlezen. De app omvat gegenereerde code uit modellen die alle machinegedrag beschrijven, een GUI die deze code aanstuurt en een handgeschreven hardwareabstractielaag (Hal) die de gegenereerde code aanroept voor de aansturing van de motoren en het uitlezen van de sensoren via Bluetooth. De applicatie heeft ook een modus waarin de Mindstormshardware inclusief de Bluetooth-communicatie wordt gesimuleerd. De modellen van het legosysteem zijn gemaakt met de ASD:Suite, die Java, C++, C# en (Misra-) C kan genereren. De gepatenteerde methode gebruikt interactieve visuele (formele) verificatie om de correctheid van de modellen aan te tonen. De gegenereerde code voor elke programmeertaal vertoont hetzelfde gedrag als beschreven in de modellen, en omdat de modellen formeel zijn geverifieerd, is de applicatie gegarandeerd vrij van gedragsfouten.
Eenvoudig en goedkoop Om de legoapp van Android naar Iphone te porten, hebben we geen Java uit de modellen gegenereerd maar C++-code. Dit toont een ander belangrijk voordeel van MDD: de modellen worden zonder noemenswaardige
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
aanpassingen hergebruikt en er wordt alleen code gegenereerd voor een andere taal. Vervolgens hebben we de bestaande handgeschreven Java-code (GUI en BluetoothMODEL-DRIVENmet DEVELOPMENT DAY met de hand communicatie Nxt-bricks) 1 omgezet naar C++. 29 NaAPRIL de 201 gebruikelijke ‘inleercurve’ in een nieuw ontwikkelplatform is het uiteindelijk gelukt om de app in simulatiemodus te installeren op de Iphone en vanuit de telefoon uit te voeren. Het applicatieframework en de GUI voor de Iphone zijn gemaakt in Objective-C, dat gemakkelijk integreert met de gegenereerde C++ uit de modellen. Het maken van de gebruikersinterface ging redelijk eenvoudig; het porten van de Hal, de laag voor de communicatie met de bricks, was complexer. De gegevensuitwisseling via Bluetooth werkt volgens het Serial Port Profile (SPP), dat de Iphone niet ondersteunt. Daarom hebben we besloten een communicatiebrug te bouwen. Deze brug, geïmplementeerd op een pc, praat via Wifi met de Iphone en via Bluetooth met de Nxt-bricks. De originele machinebesturingsapplicatie bevat zo’n 21 duizend regels code. Daarvan is ongeveer 65 procent gegenereerde code, vijftien procent handgeschreven client-code en twintig procent handgeschreven Halcode. Het porten heeft respectievelijk een halve dag, twee dagen en zes dagen gekost. Dit experiment laat zien dat het overzetten van software naar een andere programmeertaal op basis van MDD eenvoudig en goed-
Om de MDD-manier van werken te kunnen demonstreren, heeft Verum met Lego Mindstorms een demo gebouwd van een waferinspectiesysteem. koop is. Het meeste werk zit in de vertaling van handgeschreven code. Vooral de Hal kost beduidend meer tijd dan de GUI. Hoe meer code er wordt gegenereerd uit modellen, hoe makkelijker de port te doen is. Paul Hoogendijk en Peter van de Velde werken als customer solutions architect bij Verum. Tijdens de Model-Driven Development Day op 29 april verzorgt het bedrijf uit Waalre een presentatie en een workshop over zijn MDD-benadering. Redactie Nieke Roos
22 april 2011 |
| nr. 5 | 43
BITS&CHIPS
CURSUSSEN
I/O Designer 26 en 27 april, Almelo Hyperlynx Analog 28 en 29 april, Almelo Hyperlynx advanced high-speed PCB analysis 9 - 11 mei, Almelo Expedition PCB advanced (V2007) 16 - 18 mei, Almelo Hyperlynx power integrity analysis 23 en 24 mei, Almelo Hyperlynx signal integrity analysis 26 en 27 mei, Almelo Library manager for DXDesigner to Expedition PCB flow (V2007) 30 en 31 mei, Almelo
www.innofour.com
Labview FPGA Module 26 en 27 april, Woerden Teststand introduction 26 - 28 april, Zaventem Labview core 1 2 - 4 mei, Zaventem 9 - 11 mei, Woerden 27 - 29 juni, Woerden Labview core 2 5 en 6 mei, Zaventem 12 en 13 mei, Woerden Hands-on introduction to Labview 10 mei, Eindhoven 11 mei, Delft 12 mei, Nijmegen 13 mei, Noordwijk 17 mei, Groningen 18 mei, Amsterdam 19 mei, Hengelo 19 mei, Zaventem 20 mei, Woerden 24 mei, Gent 26 mei, Geel Labview core 3 5 - 8 juni, Woerden
www.ni.com/netherlands
Systemverilog for verification 27 - 29 april, Borne Introduction to SystemC for modeling 9 - 11 mei, Borne Assertion verification with PSL 12 en 13 mei, Borne Introduction to Perl 9 en 10 juni, Borne Professional VHDL 22 - 24 juni, Borne www.dizain-sync.com
Matlab fundamentals 2 - 4 mei, Eindhoven Matlab for data processing and visualization 10 mei, Eindhoven Matlab programming techniques 11 mei, Eindhoven Matlab for building
44 |
| nr. 5 | 22 april 2011
HARDWARE
CONFERENCE
EVENTS graphical user interfaces 12 mei, Eindhoven Parallel computing with Matlab 19 en 20 mei, Eindhoven Stateflow for logic-driven system modeling 25 en 26 mei, Eindhoven Real-Time Workshop fundamentals 27 mei, Eindhoven www.mathworks.nl
Altium Designer
9 JUNI 2011
Benelux Implementing Matlab and Simulink algorithms on FPGA’s 26 april, Eindhoven 28 april, Leuven Convert Matlab to efficient C code 17 mei, Leuven 19 mei, Veldhoven
www.mathworks.nl
ICT Spin-off Day 27 april, Heverlee
www.kuleuven.be/lict
MODEL-DRIVEN DEVELOPMENT DAY Roboned-conferentie 29 APRIL 2011 27 april, Utrecht
BITS&CHIPS
HARDWARE
CONFERENCE 9 JUNI 2011
Bits&Chips Hardware Conference 9 juni, ’s-Hertogenbosch Info: events@techwatch.nl
BITS&CHIPS www.bits-chips.nl/events/mdday
HARDWARE
From DNA sequencing to patient care 16 juni, Leuven 9 JUNI 2011
CONFERENCE
www.leuveninc.com
www.roboned.nl
9 - 11 mei, Markelo Altium Nanoboard 12 mei, Markelo Fundamentals of VHDL 23 - 25 mei, Markelo Advanced VHDL 6 en 7 juni, Markelo www.transfer.nl
Electronics for
MODEL-DRIVEN DEVELOPMENT DAY 29 APRIL 2011
Model-Driven Development Day 29 april, Eindhoven Info: events@techwatch.nl
www.hightechtraining.nl
Toegepaste RF-techniek 16 - 18 mei, Dwingeloo
www.astrotec.nl
www.ni.com
www.bits-chips.nl/events/mdday
Analog Dialogue Seminar 10 mei, Eindhoven www.silica.com
non-electronic engineers start 10 mei, Eindhoven Motion control tuning 10 - 12 en 17 - 19 mei, Eindhoven Signal integrity start 17 mei, Eindhoven Software architecture 24 en 25 mei, Eindhoven Design principles basics start 25 mei, Eindhoven Mechatronics system design 2 6 - 10 juni, Eindhoven Nanometer CMos IC’s basics 7 - 9 juni, Eindhoven Bits on chips – an introduction 14 juni, Eindhoven Experimental techniques in mechatronics 20 - 22 juni, Eindhoven Sysarch 20 - 24 juni, Eindhoven Labprog: programming in Labview 2 22 - 24 juni, Eindhoven
NIDays 27 september, Brussel 29 september, Utrecht
Sirris Manufacturing Day 10 mei, Gent Zelfreinigende en easy-to-clean deklagen 19 mei, Diepenbeek
HIGH-TECHProduct PRODUCT LINES High-Tech Lines 28 en 29 september, Veldhoven Info: events@techwatch.nl
www.bits-chips.nl/events/hpl
www.sirris.be
Machines of elektronica importeren in de VS 11 mei, Zwijnaarde
www.agoria.be
TedXBrainport 13 mei, Eindhoven
www.tedxbrainport.nl
International Automotive Congress 16 en 17 mei, Eindhoven
www.automotivecongress.nl
Indumation 18 - 20 mei, Kortrijk
www.indumation.be
Vision & Robotics 25 en 26 mei, Veldhoven
www.vision-robotics.nl
Bits&Chips 2011 Embedded Systemen 18 november, Eindhoven Info: events@techwatch.nl
www.embedded-systemen.nl
Internationaal Semico Summit 2011 1 - 3 mei, Scottsdale, Verenigde Staten
www.semico.com
Code Generation 2011 25 - 27 mei, Cambridge, Groot-Brittannië
www.codegeneration.net
Electronics & Automation 2011 25 - 27 mei, Utrecht
www.eabeurs.nl
NIWeek 2011 2 - 4 augustus, Austin, Verenigde Staten
www.ni.com
Advertentie-index Advertentie Agilent www.agilent.nl ASML www.asml.com/careers Bits&Chips 2011 Embedded Systemen www.embedded-systemen.nl Bits&Chips Hardware Conference 2011 www.hardwareconference.nl CIMSOLUTIONS www.cimsolutions.nl
Pagina 30 10 18 4 2
Advertentie Pagina Hightech Banen Flap www.hightechbanen.nl High-Tech Product Lines 8* www.bits-chips.nl/events/hpl Hightech Training 32, 10*, 12* www.hightechtraining.nl IBM 38 www.ibm.com International Automotive Congress 24 www.automotivecongress.nl Kontron 36 www.kontron.com
Advertentie Pagina Model-Driven Development Day Flap www.bits-chips.nl/events/mdday National Instruments 42 www.ni.com/netherlands Nspyre 22 www.joinnspyre.nl Rohde & Schwarz 34 www.rohde-schwarz.nl TOPIC Embedded Systems 14 www.topic.nl Verum 40 www.verum.com
WEGWIJZER C H I PO N T W E R P
Barco Silex Rue du Bosquet 7 1348 Louvain-la-Neuve Tel +32 10 454904 geert.decorte@barco.com www.barcodesignservices.com
DI S T R I B U T I E
SoC and FPGA Design Crypto and Security IP Video IP DO-254 IP
HIGH TECH SOLUTIONS Linie 506 7325 DZ Apeldoorn Tel +31 55 3606135 info@hightech.nl www.hightech.nl
RS Components Bingerweg 19 2031 AZ Haarlem www.rsonline.nl www.rsonline.be
P R O J ECT B U R EA U
D I EN ST V ER LE NI NG Alten PTS Linie 544 7325 DZ Apeldoorn Tel +31 55 3601880 Rivium 1e straat 85 2909 LE Capelle aan den IJssel Tel +31 10 4637700 Beukenlaan 44 5651 CD Eindhoven Tel +31 40 2563080 info@altenpts.nl www.altenpts.nl
HUMIQ B.V. Science Park Eindhoven 5006 5692 EA Son Postbus 6420 5600 HK Eindhoven Tel +31 40 2669100 Fax +31 40 2669101 info@humiq.nl www.humiq.nl
Specialist in electronic & FPGA design Adeas Luchthavenweg 81.039 5657 EA Eindhoven Tel +31 40 2350060 Fax +31 40 2350666 www.adeas.nl
Profit Consulting Apeldoorn Profit Software Improvement Tweelingenlaan 4, Apeldoorn Tel +31 55 5762822 Profit Consulting Eindhoven High Tech Campus 69, Eindhoven Tel +31 40 8009955
VIANEN BEST DEVENTER ROTTERDAM AMSTERDAM GRONINGEN DHAKA
CIMSOLUTIONS B.V. Havenweg 24 4131 NM Vianen Tel +31 347 368100 Fax +31 347 373777 cimsolutions@cimsolutions.nl www.cimsolutions.nl
Profit Consulting Amsterdam Science Park Amsterdam 400, Amsterdam Tel +31 20 8884128 info@profitnederland.nl
Regio Midden Herculesplein 24, Utrecht Tel +31 88 8275000
Sioux Embedded Systems B.V. Esp 405 5633 AJ Eindhoven Tel +31 40 2677100 Fax +31 40 2677101 embeddedsystems@sioux.nl www.sioux.eu
Regio Zuid Dillenburgstraat 25-3, Eindhoven Tel +31 88 8275100 Regio West Poortweg 10, Delft Tel +31 88 8275200 ENTER Mbedded BV Science Park 5001 5692 EB SON Tel +31 40 2141020 info@enter-mbedded.nl www.enter-mbedded.nl
Regio Noord Zuiderzeelaan 21, Zwolle Kapteynlaan 17, Leek Tel +31 88 8275300
NSPYRE Postbus 85066 3508 AB Utrecht Tel +31 88 8275000 Fax +31 88 8275099 info@nspyre.nl www.nspyre.nl
Technolution B.V. Zuidelijk Halfrond 1 P.O. Box 2013 2800 BD Gouda Tel +31 182 594000 info@technolution.eu www.technolution.eu
TOOLS
ESPRIT ICT Group Bastion 1-5 5491 AN Sint-Oedenrode Tel +31 413 271412 info@esprit-it.nl www.esprit-it.nl
Fourtress BV Meerenakkerplein 20 5652 BJ Eindhoven Tel +31 40 2661080 Fax +31 40 2661081 info@fourtress.nl www.fourtress.nl
TASS B.V. Larixplein 6 5616 VB Eindhoven Tel +31 40 2503200 Fax +31 40 2503201 info@tass.nl www.tass.nl
TOPIC Embedded Systems Eindhovenseweg 32c 5683 KH Best Tel +31 499 336979 Fax +31 499 336970 info@topic.nl www.topic.nl
TASS Belgium N.V. Gaston Geenslaan 9 3001 Leuven Tel +32 16 241680 Fax +32 16 241689 info@tass.be www.tass.be
MathWorks BV Dr. Holtroplaan 5b 5652 XR Eindhoven Tel +31 40 2156700 Fax +31 40 2156710 info@mathworks.nl www.mathworks.nl
National Instruments Pompmolenlaan 10 3447 GK Woerden Tel +31 348 433466 Fax +31 348 430673 info.netherlands@ni.com www.ni.com/netherlands
De vacaturesite voor hoger opgeleide technici
Topbaan
Uitdagende banen in engineering vind je op Hightech Banen Strategic applications engineer embedded processing Xilinx Contactpersoon: Danny Vandenbossche E-mail: danny.vandenbossche@xilinx.com Tel: +32 53 818310
Software engineer Promexx Contactpersoon: Suzanne van Dijck E-mail: jobs@promexx.nl Tel: +31 40 2676867
Sr. software engineer / (sr.) software designer Promexx Contactpersoon: Suzanne van Dijck E-mail: jobs@promexx.nl Tel: +31 40 2676867
Junior techniekjournalisten en -redacteuren Techwatch Contactpersoon: Nieke Roos E-mail: nieke@techwatch.nl Tel: +31 24 3503534
www.hightechbanen.nl