Otto Vinter. Software Engineering Mentor Tel: +45 4399 2662, Mobil: +45 4045 0771 vinter@ottovinter.dk www.ottovinter.dk

Relaterede dokumenter
CANSAT & ARDUINO step by step

Motion Controller med integreret PLC

Undersøgelse teknologi og resurser: Eleverne skal lære om enkel produktudvikling fra ide til implementering.

Programmering. Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen

Arduino Programmering

Microcontroller, Arduino

Informatik C robotter

Microcontroller, Arduino

Start på Arduino og programmering

Under 'Microsoft Block Editor', klik 'New project' for at åbne block editor-værktøjet.

Erfaringer med opbygning af standard programblokke til PLC / SCADA v. Finn Asmussen, HOFOR og John Steinmann, DI-Teknik

Nedenstående opgaver er lavet til en Allen-Bradley PLC, men uden videre tilpasses andre PLC typer.

PAXNET. - Den tekniske implementering - Offentlig netværks ydelser - Det fysiske netværk - Drift af netværket

Adressering af ind- og ud gange på BCxxxx IEC1131 PLC uden TC system manager

Fang Prikkerne. Introduktion. Scratch

Indhold. Maskinstruktur Kapitel 1. Assemblersprog Indledning Hop-instruktioner Input og output...

Produktpræsentation. BA Systems. Control made easy

Koncept for systemforvaltning af den fælles open source kode, herunder procedure for opfølgning på software-versioner af OpenTele

Advanced Control system fordele i forhold til optimering af fjernvarmedrift v/leif Jakobsen, salgschef, 7-Technologies A/S.

ENTERPRISE ARCHITECTURE (EA) STRATEGY, BUSINESS AND IT ALIGNMENT

Digital tæller Programerbar for MIX magnetisk målebånd

Valg af automationsplatform

PID2000 Archive Service

Procedurer for styring af softwarearkitektur og koordinering af udvikling

Dekontamineringsdagene 2015

Overbelastning af processor i Windows XP og i Ubuntu

9. Tyverialarm med buzzer

EA3 eller EA Cube rammeværktøjet fremstilles visuelt som en 3-dimensionel terning:

Supply Chain Netværk Design

Multiprogrammering og operativsystemer i Danmark

Disamatic simulatorer. + bedre kvalitet + Rejsebesparelser + Sjovere hverdag i R&D + Innovation

dcomnet-nr. 8 Simpel aritmetik på maskinniveau Computere og Netværk (dcomnet)

Softwareløsninger til dit netværk

Spar tid med struktureret programmering! Om PLC programmering

Ide med Diff. Mål. Tidsplan. 1.uge: 2.uge:

2/3 Akset digital tæller

Lærer nye styresystemer Installerer programmer som kun kan bruges i ældre versioner

IssMan brugervejledning

Systemair Connect. Opsætning

Embedded controller, almen.

Estimering og anvendelse af modeller ved brug af PROC MODEL

OpenTele Server Performance Test Rapport

Software Dokumentation

En todelt arkitekturmodel for hændelsesstyrede signalbehandlingssystemer

Michael Jokil

Vejledning om praktik på it-teknologuddannelsen

Specialiseringen Rapport Lavede Af Rasmus R. Sørensen Side 1 af 6

Spar tid og penge med Sertica Maintenance

MVT380 Vejledning. Forord. Website: Kontakt: Tillykke med din nye GPS tracker MVT380.

Fra programmering til mikroprocessor

Memo fra sidste job på anlæg med ud på næste job på anlægget? Side 1 af 6 sider

Styring af testmiljøer almindelig god praksis

NOVAX One. Overlad ansvaret til os

Udvikling af DOTNET applikationer til MicroStation i C#

SMARTair. Adgangskontrolsystem. ASSA ABLOY, the global leader in door opening solutions

Årsplan for 4. klasse Natur og Teknologi 2018/2019

DATALOGI 1E. Skriftlig eksamen mandag den 23. juni 2003

Ghostbusters. Introduktion. Scratch. Du skal lave et fangelegsspil med spøgelser! Arbejdsliste. Test dit Projekt. Gem dit Projekt

WTM Tidsregistrering. Fordele i WTM Tidsregistrering: Nem og hurtig tidsregistrering. Øget faktureringsgrundlag og højere udfaktureringsgrad

Få dit robotprojekt op af skuffen - Nye teknologier kan redde din business case 3. DECEMBER 2013

Arduinostyret klimaanlæg Afsluttende projekt informationsteknologi B

Eksamensopgaver datalogi, dlc 2011 side 1/5. 1. Lodtrækningssystem

Opsætning af Backup. Hvis programmet registreres korrekt vises nedenstående skærmbillede. Genstart herefter programmet.

Introduktion til Digital Post og markedsføringsloven. Februar 2016

Automatiser jeres produktion let, billigt og fleksibelt

Programmeringseksempel tl BCxxxx (Seriel)

Indholdsfortegnelse:

Kapitel 4 Løkker i C#

Projektledernetværk Kompetence opbygning & videndeling igennem netværk

UniLock System 10. Manual til Integration med Salto adgangskontrol (RW Pro) Projekt PCS Version 1.0 Revision

FORCE Technology. IOT, Big Data og Digitale Tvillinger. Hvad bringer fremtiden? Michael Myrup Andersen Engineering and Industrial Processes

Spar tid og penge med SERTICA Maintenance

Transkript:

Tel: +45 4399 2662, Mobil: +45 4045 0771 vinter@ottovinter.dk www.ottovinter.dk Forestil jer dengang Kun ét program ad gangen kunne køre på datamaskinen Der var ingen filer og filsystemer Programmer var skrevet i maskinkode Programmer blev opbevaret på papirstrimler /papkort Der var ingen uddannede software udviklere Addition af to heltal tog 2,5 msec Hurtiglageret var begrænset til 8-32kB og hvis du var heldig: et langsomt baggrundslager på 512 kb Samtidig med at projektet skulle overvåge og styre et komplet procesanlæg i realtid! 1

Vestkraft Blok2 Bygget i 1969 Elektrisk effekt 250 MW Fjernvarme effekt 160 Gcal/h Turbo-gruppe fra BBC Kedelenhed fra Babcock & Wilcox Al styring vhja. konventionelt elektronisk udstyr Komplet overvågning vhja. et datamat system fra A/S Regnecentralen (RC4000) Et kig ind i Vestkraft Blok 2 2

Overvågningsopgaver Hvert 10. sekund: 256 analoge målinger, 264 digital input og tællere, 48 digital output Leje- og vindingstemperaturer på alle større motorer, pumper og generatorer Specialovervågning af kedeltromlen, oliebrændere og luftforvarmere Pålidelighedskontrol, korrektion, kompensering, alarmering Glatning og akkumulering Hvert minut: 256 analoge målinger Overhederrør temperaturer Pålidelighedskontrol, korrektion, kompensering, alarmering Glatning og akkumulering Hvert 5. minut, time, døgn, måned Ydelses- og lastberegninger Pålidelighedskontrol, korrektion, kompensering, alarmering Middelværdidannelse og videre akkumulering Kompilering eller Fortolkning? Problemer med kompilering Langsom kompilering såvel som udførelse Store og uforudsigelige hurtiglagerkrav Mangel på kontrol over den genererede kode Monolitisk programstruktur Fordele ved fortolkning Et udviklingssprog rettet mod procesingeniørerne Modellering af proceskomponenter i data strukturer (virtuel maskine) Små subrutiner (korutiner istf. indlejrede procedurer) Kontrol over udførelsestid og hurtiglagerkrav (tæt på maskinkode) Realtidsproblemer holdt adskilt fra fortolkningen af modellen Fleksibelt udviklings-, test- og implementeringsmiljø 3

Eksempel på måling af en temperatur variabel ; Create new value for TFd and add to sum in TFDS10 /802 ; TFd, steam temperature for HT :IWR, K=802 ; Initialize working registers (variable 802) :LSV, V802 ; Load state and value for TFd (variable 802) :ECAV, R1T25 ; Evaluation control of analog value (range, terminal) L1 ; Skip conversion and checks if compensated by operator L2 ; Skip conversion in case of measurement failure :CRE, K=150 ; Convert resistance element (parameter value) :ILCMM, K=-200,Pih=6000 ; Instrument limit control (min, max) 2:TPC, V802 ; Test for failure and update status (TFd) :TCCV, V219 ; If compensation use value for TOH (variable 219) 1:PCM, K=-50,Pah=5650 ; Plant status control (hysteresis, maximum) :SSV, V802 ; Store new state and value (TFd) :SUM, V3301 ; Add to TFdS10 (variable 3301) Betydningen for test og kvalitet Fortolkningsprincippet muliggjorde: Off-line test (simulering) af de enkelte proceskomponenter - Fleksible, specielle konfigurationer af komponenter (datamodeller) Anvendelse af testdrivere og stubbe - Pseudo komponenter og test data Logging af tests - Let sammenligning med forventede resultater Automatiske regressionstests - Klar dokumentation af testbetingelser og test cases Idriftsættelsen på Vestkraft Kort idriftsættelsesperiode parallelt med indkøringen af selve kraftværket Meget få fejl (ingen kritiske for kraftværkets drift) 4

Centralpostbygningen i København Bygget 1974-1978 Modtage, sortere og afsende post under en stram 24/7 tidsplan 130.000 pakker og 3 millioner breve per dag fra og til lastbiler og tog Ca. 1000 transportbånd 8 sorterings maskiner Hundreder af stregkodelæsere Adskillige fixed og power&free sækketransportører 5 dublerede (hot stand-by) datamater (CDC System 18-17, 32-88 kb), et antal mikroprocessorer, og en central ledelses datamat (RC8000) Data opsamling og styring gennem kommunikations ringlinjer med op til 512 terminal enheder Hundreder af digital input/output Et kig ind i Centralpostbygningen 5

Båndtransportørerne og deres modellering Bevægelsesretning Modtageligheds flag Båndtransportør komponent Afkasttilbøjeligheds flag Fortolkningsprincippets anvendelse Påvirkede hele udviklingen og projektledelsen: Effektiv planlægning - Simpel arkitektur og nedbrydning (work break down structure) - Estimering af primært små og simple enheder - Fleksibel fordeling af arbejdsopgaver og detaljeret opfølgning - Kvartalsvis rullende detailplaner (ugentlige opdateringer af status) Effektiv udviklingsproces - Udvikling og test af komponenter fordelt på enkeltpersoner - Automatiseret komponent- og regressionstest (off-line batch jobs) - Trinvise færdiggørelsesmiljøer (komponent, system, produktion) - Implementering på byggepladsen synkront med installationsarbejdet Simpel ansættelsesprocedure og oplæring Ingen kritiske fejl ved idriftsættelsen af Centralpostbygningen og software systemerne blev leveret inden for budgettet (fixed-price) 6

Hvorfor døde ideen med fortolkning? Større krav til anvendelserne Hurtigere responstid (on-line interaktion) Lukket-sløjfe styring af processerne (closed loop control - PID) Teknologiske fremskridt Reduceret behov for centraliserede overvågningssystemer Netværk af specialiserede mikroprocessorer og PLC-enheder Mindre komplekse opgaver for hver procesenhed Billige standard processor komponenter Software teknologier Fremskridt inden for almindelige udviklingssprog og -miljøer Hurtigere compilere med færre lagerkrav Nye software udviklingsprincipper (e.g. objekt-orienteret udvikling) Men fortolkningsprincippet lever stadig Prominente eksempler: National Instruments LabView MathWorks MatLab Microsoft Excel Så hvornår skal man anvende fortolkningsprincippet: Hvis den underliggende datamodel er kompleks Ved store krav til fleksibilitet i interaktionen med bruger/omgivelserne Hvis kravene til hastighed/responstid på stimuli er overkommelige 7

? Tak fordi I lyttede med, Den fulde artikel fra konferencen History of Nordic Computing (2010): http://ottovinter.dk/hinc3paper.pdf 8