Programmatuur voor real-time controle

Slides:



Advertisements
Verwante presentaties
1 Op Stap naar het SO. 2 • Waar gaat het om ? • Eerst even kijken naar het keuzewerkboek • Wat moest er zo dringend veranderen ? • Studiekeuzetaken !
Advertisements

Vincent Poté Nelis Vandermeiren Simen Akkermans Kevin De Neef
De zin en onzin van escrow
De elektronische verzamelaanvraag Ruben Fontaine Markt- en Inkomensbeheer – dienst Aangiftes.
‘SMS’ Studeren met Succes deel 1
Paulus' eerste brief aan Korinthe (20) 23 januari 2013 Bodegraven.
28 juni 2009 Paëllanamiddag 1 Paëllanamiddag 28 juni 2009 Voorbereiding vrijdagavond (Loopt automatisch - 7 seconden)
Procescontrole.
NEDERLANDS WOORD BEELD IN & IN Klik met de muis
Embedded systemen Embedded software.
BRIDGE Vervolgcursus Vervolg op starterscursus Bridgeclub Schiedam ‘59 info: Maandagavond: 19: – of
™.
1 Resultaten marktonderzoek RPM Zeist, 16 januari 2002 Door: Olga van Veenendaal, medew. Rothkrans Projectmanagement.
November 2013 Opinieonderzoek Vlaanderen – oktober 2013 Opiniepeiling Vlaanderen uitgevoerd op het iVOXpanel.
Uitgaven aan zorg per financieringsbron / /Hoofdstuk 2 Zorg in perspectief /pagina 1.
Personalisatie van de Archis website Naam: Sing Hsu Student nr: Datum: 24 Juni 2004.
Global e-Society Complex België - Regio Vlaanderen e-Regio Provincie Limburg Stad Hasselt Percelen.
 Deel 1: Introductie / presentatie  DVD  Presentatie enquête  Ervaringen gemeente  Pauze  Deel 2 Discussie in kleinere groepen  Discussies in lokalen.
Voorstelling van mijn werk. Als verantwoordelijke van Fondation Baska.
STAPPENPLAN GRAMMATICUS.
Ronde (Sport & Spel) Quiz Night !
Natuurlijke Werkloosheid en de Phillipscurve
Keuzeondersteunend model voor inbouwpakketten bij herbestemmingsprojecten Eindcolloquium Wiebrand Bunt.
Digitale Elektronica en Processoren
BESTURINGS SYSTEMEN Vincent Naessens.
Een Concert van het Nederlands Philharmonisch Orkest LES 4 1.
Challenge the future Delft University of Technology Platform wars for smart grids Met subkop Andreas Ligtvoet en Geerten van de Kaa 4 e valorisatieworkshop.
Een optimale benutting van vierkante meters Breda, 6 juni 2007.
Klassieke AO Leseenheid1
Start.
Kb.1 Ik leer op een goede manier optellen en aftrekken
Het Nieuwe Werken Samenspel tussen IT en business.
F. Rubben NI Lookout 1 06/RIS/05 - NI Lookout VTI Brugge F. Rubben, ing.
Nooit meer onnodig groen? Luuk Misdom, IT&T
Hoofdstuk 6: Controle structuren
FOD VOLKSGEZONDHEID, VEILIGHEID VAN DE VOEDSELKETEN EN LEEFMILIEU 1 Kwaliteit en Patiëntveiligheid in de Belgische ziekenhuizen anno 2008 Rapportage over.
Softwarepakket voor het catalogeren en determineren van fruitsoorten
Oefeningen F-toetsen ANOVA.
Neurale Netwerken Kunstmatige Intelligentie Rijksuniversiteit Groningen April 2005.
1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.
Wat levert de tweede pensioenpijler op voor het personeelslid? 1 Enkele simulaties op basis van de weddeschaal B1-B3.
1 WIJZIGINGEN UNIEK VERSLAG. 2 Agenda Verbeteringen Veranderingen formulieren Praktische herinneringen Nieuwe formulieren Sociale en culturele participatie.
13 maart 2014 Bodegraven 1. 1Korinthe Want gelijk het lichaam één is en vele leden heeft, en al de leden van het lichaam, hoe vele ook, een lichaam.
Elektriciteit 1 Les 4 Visualisatie van elektrische velden
De FFT spectrumanalyzer
User management voor ondernemingen en organisaties
2009 Tevredenheidsenquête Resultaten Opleidingsinstellingen.
ribwis1 Toegepaste wiskunde – Differentieren Lesweek 7
1 Wie durft er nog in een vliegtuig, trein of auto te stappen? Over betrouwbaarheid van software Frits Vaandrager Institute for Computing and Information.
Op Stap naar het SO versie met oefeningen
ECHT ONGELOOFLIJK. Lees alle getallen. langzaam en rij voor rij
Vakinhoud Christophe Huygens Beveiliging van netwerk en computer- infrastructuur H04G5A.
Hoofdstuk 5 Vijfkaart hoog, eerste verkenning 1e9 NdF-h1 NdF-h5 1 1.
17/08/2014 | pag. 1 Fractale en Wavelet Beeldcompressie Les 5.
17/08/2014 | pag. 1 Fractale en Wavelet Beeldcompressie Les 3.
Fractale en Wavelet Beeldcompressie
Samen-bouwen … over paneelbouw en de rest!
Management Accounting Management Control
Middeleeuwen De antwoorden in deze powerpoint komen van (naam en klas invullen a.u.b.)
Centrummaten en Boxplot
DigiDoc Een digitaal kantoor voor iedereen !. Ceci n’est pas du software?! 2.
12 sept 2013 Bodegraven 1. 2  vooraf lezen: 1Kor.7:12 t/m 24  indeling 1Korinthe 7  1 t/m 9: over het huwelijk  10 t/m 16: over echtscheiding  16.
13 november 2014 Bodegraven 1. 2 de vorige keer: 1Kor.15:29-34 indien er geen doden opgewekt worden...  vs 29: waarom dopen?  vs.30-32: waarom doodsgevaren.
1 Week /03/ is gestart in mineur De voorspellingen van alle groten der aarden dat de beurzen zouden stijgen is omgekeerd uitgedraaid.
1 DE ADVIEZEN VAN BEURSMAKELAAR BERNARD BUSSCHAERT Week Us$ stijgt en de VS markten en grondstoffen markten+ obligatie markten storten ineen.
1 DE ADVIEZEN VAN BEURSMAKELAAR BERNARD BUSSCHAERT Week
23 mei 2013 Bodegraven vanaf hoofdstuk 6: hoofdst.1: de wijsheid van de wereld hoofdst.2: de wijsheid van God hoofdst.3: Gods akker en Gods bouwwerk.
1 DE ADVIEZEN VAN BEURSMAKELAAR BERNARD BUSSCHAERT Week
Cegeka & TenForce Ronde tafel 17/06/2014 Doelstellingenmanagement VO.
Transcript van de presentatie:

Programmatuur voor real-time controle Yolande Berbers Departement Computerwetenschappen 200A 03.20 Yolande@cs.kuleuven.ac.be

2 groepen cursus voor 2 groepen gecombineerd vak, samen met Processoren voor real-time systemen (1.5 su.) Processoren en programmatuur voor real-time systemen: geïntegreerd practicum (3 su.) 2e Burg. W.E.Ir., Mechanica: Mechatronica en productontwikkeling (gewoon en 2ji.i.) voorkennis: Methodiek van de Informatica, Programmatuur: Ontwerp en Ontwikkeling alleenstaand keuzevak 3e burg. elektr. ir.,3e burg. w.e.ir., elektrotechniek, keuze voorkennis: Methodiek van de Informatica, Informatie- en programmastructuren

2 groepen verschillen tussen 2 groepen gecombineerd vak er zijn practicasessies en een ander onderdeel alternatief examen (reeds uitgelegd door H. Bruyninckx) alleenstaand keuzevak dit vak voorziet 3 oefenzittingen deze moeten nog gepland worden voorkeur weken 10, 11, 12 klassiek examen (zie verder)

cursusnota’s boek: slides: Real-Time Systems and Programming Languages Alan Burns, Andy Wellings third edition, 2001 Addison-Wesley slides: Deze zijn te vinden op het web, via mijn home-pagina: http://www.cs.kuleuven.ac.be/~yolande/ huidige versie van slides (op het net) is ± die van vorig jaar bij lesvoorbereidingen pas ik die heel regelmatig aan

praktische organisatie les dinsdag 8.25-10.25 uur en woensdag 10.35-12.35 uur 8u25 is een erg vroeg uur ! uurrooster week 8 (volgende week) ben ik in het buitenland les loopt dus door tot week 12 ik geef zelf de oefenzittingen

doelstellingen van de cursus inzicht verwerven in problematiek v. real-time systemen: basisvereisten van real-time systemen moeilijkheden bij de realisering studie van mogelijke aanpakken aangewende software concepten bv samenwerkende processen, atomische acties specifieke mogelijkheden geboden door programmeertalen bv exceptions in Ada specifieke mogelijkheden geboden op systeemniveau bv tijdsbehandeling, scheduling het is niet de bedoeling om van jullie Ada-, C- of Java-programmeurs te maken !!

waar ik belang aan hecht inzicht hebben begrijpen van de concepten begrijpen waarvoor de concepten dienen (dus de problematiek goed begrijpen) kunnen toepassen van concepten oplossingen kunnen vergelijken

klassiek examen (alleenstaand keuzevak) deel 1: open boek ex (= boek + kopieën transparanten) mondeling met schriftelijke voorbereiding de tijd is beperkt: 2 uur vraag 1 peilt naar inzicht in de cursus overzichtsvraag combinatie van 2 of meer delen uit de cursus vraag 2 oefening deel 2: gesloten boek examen peilt naar terminologie-kennis 6 kleine vragen waarvan 5 moeten beantwoord worden

goed om te weten voor het examen ‘vergelijk x en y’ niet: bespreek achter elkaar eerst x en dan y, wel: bespreek x en y zodat ze vergelijkbaar worden (dus volgens hetzelfde stramien) en vergelijk ze dan precieze syntax van een programmeertaal is niet van belang voor het examen, wel de semantiek (=wat is het effect van bepaalde constructies) het examen is geen défilé: jeans & t-shirts zijn welkom !

alternatief examen (geïntegreerd pract.) vragen bij de gekozen oplossingen peilen natuurlijk ook naar inzicht in de cursus peilen naar waarom bepaalde keuzes gemaakt werden vragen welke alternatieven overwogen werden kijken of men begrijpt op welk niveau de verschillende problemen en oplossingen zich situeren peilen onrechtstreeks naar terminologie kennis

vereiste voorkennis basiskennis programmeren (Java ) Methodiek van de informatica (MI) en verder OF: Programmatuur, ontwerp en ontwikkeling (POO) OF: Informatie- en programmastructuren (IPS)

overzicht van de cursus karakteristieken v. real-time en embedded systemen (H1) kort overzicht van Ada, C, en Java (H3 en H4) met extra slides over hun geschiktheid voor real-time/embedded aspect betrouwbaarheid betrouwbaarheid en fouttolerantie (H5) behandeling uitzonderingstoestanden in programmeertalen (H6) aspect parallellisme programmeren van ‘parallelle’ modules (H7) synchronisatie en communicatie met gedeeld geheugen (H8) synchronisatie en communicatie zonder gedeeld geheugen (H9)

overzicht van de cursus (vervolg) combinatie betrouwbaarheid en parallellisme atomaire acties (H10) het beheren van hulpmiddelen (H11) aspect tijd tijdsbehandeling in systemen (H12) scheduling (H13) gedistribueerde systemen (H14) laag-niveau programmatie (H15) RTOS: real-time besturingssystemen

relatie cursus - boek ik probeer zoveel mogelijk het boek te volgen maar natuurlijk leg ik eigen accenten het aspect ‘programming languages’ komt in het boek uitgebreider aan bod dan ik nodig acht voor jullie we zullen vooral de voorbeelden van Ada bekijken, ook die van C en Java, maar niets van occam2 normaal geven de slides goed weer wat er gezien werd huidige versie van slides (op het net) is ± die van vorig jaar bij lesvoorbereidingen pas ik die heel regelmatig aan

hoofdstuk 1: inleiding tot real-time en embedded systemen

overzicht wat is een real-time systeem ? wat is een embedded systeem ? concrete voorbeelden verschillen types van real-time & embedded systemen kenmerken van real-time & embedded systemen economisch belang

wat is een real-time systeem? een computersysteem dat moet reageren op externe stimuli binnen een eindige en wel bepaalde tijd de correctheid van het systeem niet alleen afhankelijk van het logische resultaat ook van het tijdstip waarop dat resultaat gegeven werd niet op tijd reageren is even erg als foutief antwoorden in het Nederlands ware-tijd-systemen

wat is een ingebed systeem? ingebed systeem == embedded systeem een product met processor en software software is onlosmakelijk verbonden met het product software wordt niet apart verkocht software biedt vaak belangrijke toegevoegde waarde product dat een welbepaalde functie vervult zeer veel voorbeelden in de huidige consumentenmarkt vaak is ingebed syst. deel van groter industrieel complex computersysteem bewaakt en/of bestuurt externe apparatuur voorbeelden uit boek komen meestal uit deze hoek

real-time systeem vs ingebed systeem een ingebed systeem reageert op externe stimuli deze reacties moeten vaak in real-time gebeuren ingebedde systemen en real-time systemen veel gelijkaardige karakteristieken in het boek real-time system == embedded system

voorbeelden van RT & ES hoofdcomponenten van globale infrastructuur al onze energiebronnen hangen af van embedded systemen (olie, gas, nucleaire energie) vliegtuigen vliegen, schepen varen, allemaal gebaseerd op embedded systemen voedsel, drank, zuiver water komen hoofdzakelijk van processen die afhankelijk zijn van embedded systemen de farmaceutische industrie gebruikt embedded systemen om medicijnen te produceren en te creëren embedded systemen zijn vitaal in autoproductie, nationale en internationale defensie, spoorwegen netwerken, medische uitrusting, telecommunicatie, radio en televisie, ...

soorten real-time systemen harde real-time - systemen: absolute noodzaak om te reageren binnen een deadline bv een vlucht-controle systeem wanneer de deadlines erg klein zijn en de mogelijke gevolgen catastrofaal, zijn dit zeer kritische systemen (bv het besturen van bomraketten) zachte real-time - systemen: deadline is belangrijk, maar het systeem functioneert correct ook als een deadline ‘af en toe’ gemist wordt bv het verzamelen van gegevens bij procescontrole vaak vermindert de waarde van een reactie wanneer deze te laat komt (maar heeft geen catastrofale gevolgen)

soorten real-time systemen wat gebeurt er wanneer een deadline gemist wordt systeem faalt: hard real-time waarde van resultaat vermindert: soft real-time resultaat heeft geen waarde meer: firm real-time

soorten real-time systemen een computer systeem kan zowel harde als zachte real-time subsystemen hebben missen van een deadline vaak: kost-functie geassocieerd met missen van een deadline aangeven (in %) hoe vaak een deadline mag gemist worden

voorbeelden van RT systemen real-time systemen voor proces-controle real-time systemen in een productieomgeving real-time systemen voor communicatie, bevel en controle veralgemening: industrieel ingebed computersystemen

voorbeelden: proces-controle real-time systeem voor proces-controle eenvoudig voorbeeld: zorgen voor een gelijke stroming in een pijpleiding, door controle van een klep de hoek van de klep moet aangepast worden aan de veranderingen van de inputstroming dit moet gebeuren binnen een bepaalde tijd, of anders zal de apparatuur aan het einde van de pijp overbelast worden dit kan best veel rekenwerk vragen

example: simple valve control interface time input flow reading processing output valve angle flow meter valve

voorbeelden: proces-controle proces-controle: algemene kenmerken interactie met uitrusting gebruik van sensoren en actuatoren gebruik van transducers: genereren een elektrisch signaal evenredig met een fysische gemeten waarde gebruik van analoge - digitaal (en digitaal - analoog) convertoren

general process control process control computer stirrer valve temperature transducer operators console chemicals and materials finished products a process control system

voorbeelden: productieomgeving real-time systeem in een productieomgeving gebruik van een variatie van mechanische tuigen (werktuigen, robots, lopende banden), werking moet gecoördineerd en gecontroleerd worden vaak een groot aantal losgekoppelde systemen automatisering van allerhande handelingen verlaagt de productiekost verhoogt de productiviteit integratie van het volledige productieproces, van ontwerp van een product tot fabricatie

general manufacturing operators console production control computer parts finished products machine tools conveyor belts manipulators a production control system

voorbeelden: comm., bevel en controle real-time systemen voor communicatie, bevel en controle militaire term, veel toepassingen met zelfde karakteristieken voorbeelden: automatische bediening van medische toestellen, luchtverkeer controle, vliegtuigreservaties, bankoperaties per terminal kenmerken: ingewikkelde beslissingsregels verzamelen van informatie grote hoeveelheden vaak geografisch verspreid administratieve procedures

communicatie, bevel en controle command post command and control computer temperature, pressure, power and so on terminals sensors/actuators a command and control system

voorbeelden: veralgemening veralgemening: industrieel ingebed computersystemen directe interface met fysische wereld sensoren die op regelmatige tijdstippen informatie geven meestal ook een console operator krijgt uitgebreide informatie (vaak grafisch) operator kan manueel ingrijpen toestandsveranderingen in het systeem worden in een gegevensbank bijgehouden voor analyse en het nemen van beslissingen

industrial embedded system algorithms for digital control real time clock engineering system interface data logging remote monitoring database data retrieval and display display devices operator’s console operator interface

vb van ingebedde systemen wasmachine één specifieke taak, beperkte functionaliteit weinig flexibel goedkoop, massaproductie postsorteermachine één specifieke taak, uitgebreide maar overzienbare functionaliteit geen massaproductie communicatiesysteem in wagen zeer complex goedkoop zware real-time vereisten laag vermogen gebruik moet zeer flexibel zijn, open voor nieuwe toepassingen

vb van ingebedde systemen ADSL switching center in centraal punt 20 tot 50 ADSL lijnen op een ATM netwerk zware real-time vereisten zeer hoge snelheid nodig laag vermogen gebruik MPEG-4 decoder zeer complex laag vermogen gebruik (bv in draagbare videospelletjes)

kenmerken van een RTS groot en complex niet gewoon proportioneel met het aantal lijnen code gerelateerd aan de variëteit die in de code voorkomt verandert continu omdat de omgeving continu verandert situaties veranderen noden veranderen nood aan continu onderhoud kan variëren van enkele honderden lijnen assembler of C tot 20 miljoen lijnen Ada-code (geschat voor het ruimtestation ISS)

kenmerken van een RTS manipulatie van reële getallen veel RT systemen controleren een industriële activiteit bv.: controller gebaseerd op feedback gecontroleerde entiteit heeft een vector van output variabelen, die veranderen in de tijd outputs worden vergeleken met het gewenste signaal verschil wordt gebruikt om de input variabelen bij te sturen controle gebaseerd op mathematisch model van proces complex, vaak gebaseerd op differentiaal vergelijkingen

kenmerken van een RTS e.g.: controller (eventueel analoog), gebaseerd op feedback r(t) is gewenst signaal e(t) is foutenvector u(t) is input vector y(t) is output signaal r(t) controller (analog) plant e(t) u(t) y(t)

kenmerken van een RTS realistischere figuur met een computer, discrete waarden (met *), en D/A en A/D convertoren discipline: controle theorie vereiste: vermogen om reële getallen te manipuleren r(t*) digital to analog converter plant u(t*) u(t) y(t) controller (computer) sample and hold y(t*)

kenmerken van een RTS extreem betrouwbaar en veilig meer en meer vitale functies in de samenleving worden toevertrouwd aan computer systemen slecht functionerende systemen kunnen catastrofaal zijn vaak zijn mensenlevens gemoeid bv kerncentrales kan ook extreem kostelijk zijn voorbeeld van zeer kostelijke faling: Ariane 5, zie volgende slides

voorbeeld: ontploffing Ariane 5 eerste lancering van Ariane 5 op 4 juni 1996: na 37 sec. boordcomputer denkt dat raket zwaar uit koers is boordcomputer geeft sterk bijstuurcommando boordcomputer oordeelt dat dit niet voldoende is, en schakelt zelfs de hoofdmotor in raket kantelt, bovendeel scheurt los, zelfvernietigingsdozen doen het geheel ontploffen

voorbeeld: ontploffing Ariane 5 wat liep er mis het Inertial Reference System (SRI) berekent de houding en de bewegingen van de raket, op basis van bepaalde metingen deze metingen worden doorgegeven aan de boordcomputer, die in functie hiervan stuurbeslissingen neemt vóór de lancering berekent een zekere module in het SRI die houding tov het lanceerplatform na lancering heeft die bepaalde module geen betekenis meer die module werd gestopt ongeveer 40 sec. na lancering voor Ariane 4, om count-down te kunnen “pauzeren” behouden in Ariane 5: verander geen goedwerkende software in die code staat een conversie van een 64-bit floating point getal naar een 16-bit integer

voorbeeld: ontploffing Ariane 5 wat liep er mis (vervolg) Ariane 5 stijgt anders op van Ariane 4: traject is verschillend na de lancering gebeurde er een conversiefout: het 64-bit floating point getal had een onverwachte grote waarde de toepassing crashte, een 2de computer werd ingeschakeld deze 2de computer bevatte dezelfde software, dus crashte ook door de crash werd een diagnose bit-patroon naar de boordcomputer gestuurd, die dit als gegevens interpreteerde, en besloot dat er drastisch bijgestuurd moest worden, met alle gevolgen van dien gebruikte programmeertaal: Ada

voorbeeld: ontploffing Ariane 5 hoe had dit kunnen vermeden worden fouten door conversies, evenals andere fouten zoals delingen door 0, kunnen opgevangen worden in specifieke stukken code (zie H6) dit gebeurde niet voor de instructie die crash veroorzaakte de fout had via simulaties kunnen gevonden worden maar in de simulaties draaide die module niet na lancering

karakteristieken van een RTS verschillende software componenten zijn gelijktijdig actief de apparaten in de omgeving werken gelijktijdig deze gelijktijdigheid wordt het best gerealiseerd door gelijktijdig uitvoerende software componenten meer en meer real-time systemen zijn gedistribueerde systemen dit vraagt ondersteuning van programmeertalen en/of systemen

karakteristieken van een RTS omgang met ‘tijd’ responstijd is van groot belang deadlines moeten in alle omstandigheden gehaald worden worst-case moet gekend zijn voorspelbaarheid van responstijd is cruciaal real-time systemen worden altijd over-gedimensioneerd taal en systeem moeten toelaten om tijd te specifiëren, deadlines te specifiëren, om te reageren wanneer een deadline niet gehaald zal worden

karakteristieken van een RTS interacties met hardware interface aangesloten hardware: vaak niet de klassieke randapparaten randapparaten moeten kunnen gestuurd worden, liefst op een abstracte manier vereiste voor efficiënte implementatie en uitvoeringsomgeving de tijdsvereisten kunnen zo streng zijn dat efficiëntie echt belangrijk wordt (vb DSP)

karakteristieken van een RTS typische karakteristieken voor consumentenmarkt goedkoop beperkt geheugen goedkopere processor time-to-market is extreem laag laag vermogen gebruik indien draagbaar

karakteristieken van een RTS: overzicht ‘groot en complex manipuleren reële getallen extreem betrouwbaar en veilig verschillende software componenten zijn gelijktijdig actief omgang met ‘tijd’ interacties met hardware interface vereist efficiënte implementatie en uitvoeringsomgeving

economisch belang ingebedde systemen: belang voor Vlaanderen voor elke PC zijn er ongeveer 50 ingebedde systemen PC-markt heeft een plateau bereikt, markt voor ingebedde systemen kan nog enorm groeien belang voor Vlaanderen groot deel van software dat in Vlaanderen gemaakt wordt is voor ingebedde systemen Vlaanderen is derde ‘super-high-tech region’ in Europa (na Rheinland-Phals en Hessen) volgens Eurostat studie belang voor Europa VS hebben groot deel van ‘packaged software’ markt Europa heeft en kan nog groeien in markt ingebedde systemen

economisch belang belang voor Europa VS hebben groot deel van ‘packaged software’ markt (zie volgende slide) top 10 software verkopers in de wereld: Microsoft Oracle Computer Ass. Int. Novell SAP AG Europa kan nog kan nog groeien in markt ingebedde systemen Sybase Adobe systems Informix American Management Systems Sterling Software

economisch belang