teknologiademot on the road - storage.googleapis.com · part). muuttujat määritellään pou:n...

68
Logiikoiden uudet mahdollisuudet Teknologiademot on the Road 13.5.2016

Upload: others

Post on 15-Jan-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Logiikoiden uudet

mahdollisuudet

Teknologiademot on the Road

13.5.2016

Page 2: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Automaation perusteita

Petteri Mäkelä

Page 3: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Automaatiojärjestelmä• Automaatiojärjestelmä voi olla yksittäinen PLC tai koko

tehtaan toiminnan ohjaamiseen tarkoitettu järjestelmä.

Page 4: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Automaatiojärjestelmä

• Alimmalla eli kenttälaitetasolla ovat yksittäiset ohjausyksiköt, lähettimet, anturit ja mittalaitteet sekä prosessia ohjaavat toimilaitteet.

• Seuraavalla tasolla ovat ohjainyksiköiden, säätimien ja toimilaitteiden ohjauksia kontrolloivat logiikkayksiköt (PLC).

• Ylimmälle tasolle sijoittuvat mm. valvomotietokoneet ja erilliset ohjauspäätteet ja hälytyskirjoittimet. Ylimmältä tasolta voidaan liittyä myös lähiverkkoon ja mahdollisesti Internetiin.– Tuotannonohjaus (MES) - ja toiminnanohjausjärjestelmät

(ERP)

Page 5: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Automaatiojärjestelmä

Page 6: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Ohjelmoitava logiikka

• Ohjelmoitava logiikka

– (eng.) Programmable Logic Controller, PLC

– tietokone, jota käytetään reaaliaikaisten automaatioprosessien ohjauksessa

• NC-kone, automaatiolinja jne

Page 7: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

PLC:n rakenne

Page 8: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Tulot ja lähdöt

• Ohjelmoitavan logiikan ulkoisista liitännöistä käytetään yleisesti termejä tulo ja lähtö.

• Tuloporttien kautta logiikka saa tietoa järjestelmän tilasta, ja lähtöporttien kautta se voi ohjata järjestelmää

• Tulot– Kytkennän osa, jolla PLC:lle viedään tietoa (kytkimet,

painonapit, anturit, näppäimistö, hiiri, kosketusnäyttö…)

• Lähdöt– Kytkennän osa, jolla PLC antaa tietoa ulkomaailmaan

(moottorien ja venttiilien ohjaus, lmerkkivalot, näyttö…)

Page 9: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Ohjelman suoritus

• Ohjelmakierron aikana

– PLC lukee tuloihin liitettyjen antureiden, kytkimien ja lähettimien välittämät tiedot sisäisiin muistipaikkoihin

– PLC suorittaa ohjelman (prosessointijakso)

– Tieto välittyy lähtöyksiköistä ohjausväylän kautta toimilaitteille

Page 10: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

IEC 61131-3 standardi

Standardi IEC 61131 ” Programmable controllers -Part 3: Programming languages” koskee

logiikoiden ohjelmointikieliä

Petteri Mäkelä

Page 11: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

IEC 61131-3 standardi

• Standardin IEC 61131 mukaan ohjelma koostuu itsenäisistä osista, joita kutsutaan Program Organization Uniteiksi (POU).

• POU:ta on kolmea tyyppiä

– Program eli ohjelma

– Function (funktio)

– Function block (toimilohko)

Page 12: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

POU

• Program on varsinainen pääohjelma. Programissamääritellään mm. kuinka fyysiset tulot ja lähdöt linkitetään muuttujiin

• Funktiolle voidaan antaa parametreja. Funktiolla ei ole omaa muistia tilatiedoille.– Ei muista mitään edelliseltä suorituskerralta

– Tuottaa aina saman ulostulon samoilla parametreilla

• Toimilohkolla (function block) on sisäinen muisti– Ulostulon arvo riippuu parametrien lisäksi sisäisistä

muuttujista

Page 13: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Muuttujat

• Muuttujat sisältävät POU:ssa käsiteltävän datan (declaration part). Muuttujat määritellään POU:n alussa

• Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi

Page 14: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Muuttujat ja tietotyypit

• Muuttujan nimi yksilöi muuttujan

• Tietotyyppi kertoo, mitä arvoja muuttuja voi saada (bool, kokonaisluku, desimaaliluku, merkkijono, päivämäärä…)

Page 15: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

IEC 61131-3 ohjelmointikielet

• Standardi määrittelee viisi ohjelmointikieltä

• Tekstimuotoiset kielet

– Instruction lis (IL)

– Structured text (ST)

• Graafiset kielet

– Ladder diagram (tikapuukaavio) (LAD)

– Function Block Diagram (FBD)

– Sequential Function Chart (SFC)

Page 16: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Instruction List (IL)

• Instruction list (käskylistaus) muistuttaa assembleriä (konekieltä)

• Muut kielet on mahdollista kääntää IL-muotoon

• IL-kieli on matalimman tason kieli. Ohjelmat saattavat olla vaikeita ymmärtää koodin lukijalle

Page 17: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Structured text (ST)

• ST muistuttaa ”tavallisia” ohjelmointikieliä (C, Pascal)

• Korkean abstraktiotason ohjelmointikieli

• ST-algoritmi koostuu lauseista ja lausekkeista

Page 18: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Ladder diagram (LAD)

• LD:n tausta on sähkötekniikassa. LD perustuu virran kulun kuvaamiseen relelogiikkaohjauksessa

• LD (tikapuukaavio) lienee yleisin logiikkaohjauskieli

• Sopii parhaiten yksinkertaisiin ohjauksiin, mutta sillä on mahdollista tehdä myös suuria järjestelmiä

Page 19: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Function block diagram (FBD)

• Function block diagram on graafinen ohjelmointikieli, joka muistuttaa digitaalitekniikan kurssilla käytettyjä IC-piirien piirikaavioita

• Toimilohko tai funktio koostuu sisääntuloista, itse lohkosta ja ulostuloista.

• Lohkoja voidaan yhdistää toisiinsa• Ohjelma etenee samalla tavalla kuin

tikapuuohjelma eli vasemmalta oikealle ja ylhäältä alas

• (Huom. FBD vs. FB. Function Blockeja voidaan käyttää myös tikapuukaavioissa)

Page 20: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Sequential function chart (SFC)

• Sequential function chart voidaan tehdä graafisena tai tekstimuotoisena

• SFC:n avulla voidaan jakaa suuri ohjelma pienempiin ja helpommin hallittaviin osiin

• SFC:llä kuvataan, kuinka ohjelman suoritus etenee näiden osien välillä

• SFC koostuu askelmista ja siirtymistä askelmien välillä

Page 21: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Loogiset operaatiot ja

funktioblokit

Petteri Mäkelä

Page 22: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Loogiset operaattorit yms

• Loogiset operaattorit

• Vertailijat

• Aritmeettiset laskutoimitukset

• Loogiset operaatiot

– Invertteri (NOT)

– AND

– OR

– XOR

Page 23: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Function Blocks

• Tässä luvussa on esitelty valmiita funktioblokkeja ja funktioita (Beckhoff)

Page 24: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Esimerkki

• Lamppu voidaan sytyttää ja sammuttaa yhdellä painikkeella

• Triggeri, RS-kiikku ja AND

Page 25: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Arimeettiset operaatiot

• Mahdollisuus tehdä erilaisia laskutoimituksia

• Esimerkki:

– x = a * b – c * d;

Page 26: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Muunnokset tietotyyppien välillä

• Usein täytyy tehdä muunnoksia tietotyyppien välillä

Page 27: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Muunnokset tietotyyppien välillä

• Kokonaisluvusta desimaaliluvuksi (INT_TO_REAL)– a, b, c ja d ovat

kokonaislukuja

– Pakotetaan a desimaali-luvuksi (INT_TO_REAL), että saadaan desimaalilukujenjakolasku

• Desimaaliluvusta kokonaisluvuksi (REAL_TO_INT)– x ja y ovat tyyppiä REAL

– Katkaistaan desimaalitkertolaskun jälkeen(REAL_TO_INT)

Page 28: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Vertailijat

• Vertailijat (yhtäsuuruus, erisuuruus, pienempi kuin, suurempi tai yhtä suuri kuin…)

• Hiiren oikea näppäin ja valitaan sopiva vertailija valikosta

Pienempi kuin nolla (LT)

Suurempi tai yhtä suurikuin nolla (GE)

Page 29: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Ajastimet

• Kolme erilaista ajastinta– TON: Timer on-delay

• Viivästyttää ulostulon päälle laittamista

– TOF: Timer off-delay• Viivästyttää ulostulon laittamista

pois päältä

– TP: Pulse timer• Käytetään tietyn pituisen pulssin

generointiin

Page 30: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Laskurit

• Kolme erilaista laskuria

– CTU: Counter up

• Ylöspäin laskeva laskuri

– CTD: Counter down

• Alaspäin laskeva laskuri

– CTUD: Counter up/down

• Ylös ja alas laskeva laskuri

Page 31: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Omat funktiot ja toimilohkot 1/2

• PLC-ohjelmat kannattaa jakaa moduuleihin samalla tapaa kuin esimerkiksi C- tai C#-ohjelmat– Samaa koodia ei kannata monistaa moneen paikkaan

ohjelmassa. – Ohjelma on ymmärrettävämpi, jos sen toiminta jaetaan

pienempiin osiin– Ohjelmakoodin uudelleen käyttö helpottuu

• Metodien sijaan PLC-ohjelmissa tehdään funktioita ja funktioblokkeja– IEC 61131-3 standardissa (v3) on mukana myös luokat ja

oliot– Voidaan tehdä myös kirjastoja

Page 32: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Omat funktiot ja toimilohkot 2/2

• Funktiolle voidaan antaa parametreja. Funktiolla ei ole omaa muistia tilatiedoille.

– Ei muista mitään edelliseltä suorituskerralta

– Tuottaa aina saman ulostulon samoilla parametreilla

– Yksi paluuarvo

• Toimilohkolla (function block) on sisäinen muisti

– Ulostulon arvo riippuu parametrien lisäksi sisäisistä muuttujista

– Voi olla useita lähtöjä

Page 33: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Sekvenssiohjaus

Petteri Mäkelä

Page 34: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Sekvenssiohjaukset

• Sekvenssiohjausta käytetään tehtäviin, joissa toiminnot tapahtuvat ajallisesti peräkkäin

• Seuraavaan askeleen mennään yleensä edellisen askeleen kautta, kun siirtoehto toteutuu

• Sekvenssiohjauksesta käytetään myös nimitystä tilakone

Page 35: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Sekvenssiohjaukset

• Sekvenssi etenee ylhäältä alas kuvan mukaan

• Seuraavaan tilaan (askel, step) siirrytään ehdon toteutuessa

Kuva Hannu Reinilä

Page 36: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Sekvenssiohjaukset

• Function Block Diagramia (ja Ladderia) käytettäessä Sekvenssiohjaukset toteutetaan RS-pitopiirien ketjuilla

– Tämä on yleisesti käytetty tapa ja varsin selkeä silloin, kun askelia on suhteellisen vähän

– Toinen vaihtoehto on käyttää Sequential Flow Chartia (SFC) tilojen (askelien) ja siirtoehtojen kuvaamiseen

– Kokeneet PLC-ohjelmoijat tekevät sekvenssiohjauksen yleensä lausekielisenä Structured Textillä (ST)

Page 37: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Sekvenssiohjaus

• Sekvenssiohjauksessa on yleensä yksi askel (step) aktiivinen. Muut askeleet ovat poissa päältä.

• Askeleesta seuraavaan siirrytään, kun edellinen askel on voimassa ja ehto uudelle askeleelle tulee todeksi

• Uusi askel nollaa edellisen askeleen asetuttuaan

Lähde Hannu Reinilä

Page 38: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Sekvenssiohjaus

• Askeleeseen siirrytään, kun edellinen askel ja muut siirtoehdot ovat päällä (usein AND-piiri SETinvasemmalla puolella)

• Sekvenssin keskeyttävät toiminnot kerätään yhteen OR-toiminnolla ja kytketään RESETiin– Usein seuraava askel resetoi

edellisen askeleen– RESETiin kytketään usein

myös ”hätä-seis”

Page 39: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Esimerkki

• Step1: Moottori ajaa kuljetinta eteenpäin, kun Start-painiketta on painettu

• Step2: Kuljetin vaihtaa suuntaa taakse päin, kun kappale saapuu rajakytkimelle 1 (raja 1)

• Step3: Kuljetin vaihtaa suuntaa taas eteenpäin, kun kappale saapuu rajakytkimelle 2 (raja2)

• Askeleet Step1, Step2 ja Step3 kuvataan RS-kiikkuina– Set-tuloon määritellään ehdot, joilla tilaan siirrytään

– Resettiin määritellään ehdot, joilla tila nollataan

• Start-painike ja rajakytkimet 1 ja 2 ovat BOOL-tyyppisiä muuttujia

Page 40: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Esimerkki

Kuva: SIMATIC STEP S7 Ohjelmointiohjelma, Seppo Mäkelä TAMK

Page 41: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Esimerkki

• Kutakin askelta (step, tilaa) varten on määritelty RS-kiikku

• Ensimmäinen askel menee päälle, kun Startia on painettu

• Kun askel1 on päällä (askel1.Q1) ja raja1 on päällä siirrytään askeleeseen 2– Siirtymisehdot on siis askeleen 2

vasemmalla puolella olevassa ANDissä

• Kun on siirrytty askeleeseen 2, nollautuu askel 1– Tämä on tehty askeleen 1 resetissä

• Kaikki askeleet voidaan nollata muuttujalle reset (Oriin tuleva tulo)

Page 42: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Esimerkki

• Sekvenssipiiri ei vielä ohjaa mitään. Moottorien ohjauksia ei kytketä suoraan askelia kuvaavien RS-kiikkujen lähtöihin– Periaate: laitetta ohjataan vain yhdestä paikasta

• Ohjaukset on koottu ohjelman loppuun. Huom: eteenpäin ohjaus on kahdessa tilassa– Eteenpäin ajetaan joko askeleessa 1 TAI 3

– Taaksepäin ajetaan askeleessa 2

Page 43: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

OPCOpen connectivity via open standards

Page 44: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

OPC, avoimen tiedonsiirron standardi

• Avoimen tiedonsiirron valmistajariippumaton standardi

– Taustalla OPC Foundation

• Käytetäänkin automaatiosovelluksissa

– Logiikoiden

– Valvomoiden

– Käyttöliittymien

… välisenä rajapintana.

• Kaksisuuntainen yhteys

Page 45: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

OPC, avoimen tiedonsiirron standardi

• ”Vanha” OPC DA (Data Access) protokolla

– DA on vain Microsoft Windowsissa toimiva palvelin (Microsoft DCOM teknologia).

• Uusi OPC UA (Unified Architecture) protokolla

– Uusi (2008) modernimpi määrittely joka parantaa tietoturvaa ja poistaa esimerkiksi laiteriippuvuuteen liittyviä rajoituksia

– Kommunikointi ethernet-liitynnän kautta, joko TCP tai HTTP pohjainen

Page 46: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

OPC, avoimen tiedonsiirron standardi

• OPC kommunikointi tapahtuu serverin (palvelin) ja clientin (asiakas) avulla

– Tavallisesti palvelin sijaitsee logiikassa tai siihen yhdistetyssä tietokoneessa ja asiakkaana toimii esimerkiksi käyttöliittymäohjelmisto

PicRef: OPC and MES DAY 2012. Seminaari Espoossa

Page 47: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Virtuaalinen käyttöönotto

(Virtual Commissioning)

Jarkko Pakkanen

Page 48: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Virtuaalinen käyttöönotto

PLC-ohjattu virtuaalimalli• Virtual Commissioning – virtuaalinen käyttöönotto

• Järjestelmän tai toimilaitteen ohjaus suunnitellaan virtuaalista mallia vasten• Teknologialla voidaan validoida myös PLC-ohjausta• Demossa käytössä Siemens NX MCD, joka sisältää fysiikkamallinnuksen

• Onko meillä toimivat työkalut?• …Onko virtuaalisten käyttöönottomallien tarvitsema työmäärä

hallittavissa?

Haasteet toimialalla:• Nopea tuotekehityssykli• Rinnakkaista suunnittelua tarvitaan• Ongelmia käyttöönottovaiheessa

• “Kokonaisuus ei toimikaan yhteen”

Page 49: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Virtuaalinen käyttöönottoPLC ohjattu mektroniikkakonseptisuunnittelu

TIA Portal

OPC Scout

NX MCD

Page 50: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Virtuaalinen käyttöönottoKonseptoinnin vaiheet 1/2

• Luodaan järjestelmän 3D malli Tavallisesti tuotetaan mekaniikkasuunnittelussa Tarvittaessa voidaan käyttää useita CAD-formaatteja

• Fysiikkamallin määrittely Rigid Bodies (yhtenäiset liikkuvat järjestelmän osat) Collision Bodies (kappaleet jotka voivat törmätä toisiinsa)

• Mallin kinemattiikan määrittely Miten systeemin osat liikkuvat Johteet, nivelet jne.

Page 51: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Virtuaalinen käyttöönottoKonseptoinnin vaiheet 2/2

• Anturien ja käyttöjen määrittely Collision Sensors – anturien tunnistusalueet Position Controls – sijainnin ohjaaminen Speed Controls – nopeuden ohjaaminen

• Signaalien määrittely ja mäppäys INPUTS - Sensor signals MCD OPS Server PLC OUTPUTS – PLC OPS Server MCD

• Logiikan konfigurointi ja ohjelmointi (TIA Portal) PLC OPC Server … PLC Program

Page 52: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Pilvipalvelut ja automaatio,

data pilvessäJoitain esimerkkejä alustoista

Petteri Mäkelä

Page 53: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Pilvipalveluiden tarjoajia…

• Amazon Web Services (AWS)– AWS IoT, Hadoop Big Data

• Microsoft Azure– IoT Hub, IoT Suite, Hadoop Big Data

• ThingWorx– Suomessa Elisan kautta

– Graafisesti konfiguroitava ympäristö

• Siemens Mindsphere– Julkaistaan keväällä 2016

– Perustuu SAP HANAan

…ovat alustoja oman sovellutuksen pohjaksi.

Page 54: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

…eritasoisia ratkaisuita/alustoja,myös ”IoT puolivalmisteita”

• Siemens plant data services– Data kerätään Siemensin

ylläpitämälle palvelulle

– OEE: analysoidaan tuotannon tehokkuutta

• Markkinoilla on myös kymmeniä muita IoT-palveluja– Suomessakin useita, esimerkiksi

Wapicen IoT Ticket

Page 55: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Pilvipalvelu ja IoTEkosysteemiajattelu on muuttunut. Esimerkiksi Microsoftin Azure tukee erityyppisiä laitteita (myös kilpailijoiden). Vastaavasti analysoinnin tuloksetvoidaan välittää myös kilpailijoiden toimittamiin järjestelmiin

Page 56: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Pilvipalvelu ja IoT

• Toisaalta esimerkiksi Beckhoff tukee oman datan analysointiratkaisun lisäksi useita julkisia pilvipalveluita

• Beckhoff: Useita erilaisia ratkaisuja datan viemiseksi pilvipalveluun

– TwinCAT Analytics

– Analytics Logger

– Analytics Workbench

• Matlab, C++, IEC 61131,

Page 57: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Wapice IoT Ticket

• Joustava konfiguroitava alusta laitteiden kytkemiseksi pilveen

– Erilaisia analysointi ja raportointityökaluja

– Mahdollisuus koodata omaa analytiikkaa R-kielellä

PicRef: www.iot-ticket.com

Page 58: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Azure IoT Suite

• Julkaistu syyskuussa 2015

• Perustuu IoT Hubiin ja muihin Azure IoT-palveluihin

– Lähdekoodit GitHubissa

• Esimääritellyt sovellukset

– Predictive maintenance

– Remote monitoring

• Sovellusesimerkkejä on tulossa lisää

Page 59: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Azure IoT Suite – Predictive Maintenance

Page 60: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Siemens Mindsphere

• Perustuu SAP HANAan

• Julkaistaan keväällä 2016– Tulevaisuudessa käyttäjät voivat tehdä omia sovelluksia (esim.

predictive maintenance)

• Voidaan tehdä tehtaasta digitaalinen malli, johon voidaan syöttää dataa oikeasta prosessista

• Laitteet yhdistetään Connector Boxin (Simatic IPC) kautta– Myös kilpailevien valmistajien laitteet (OPC UA:n kautta)

• Public cloud, private cloud, on-premises

Page 61: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Siemens Plant Cloud Services

Page 62: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Thingworx (Elisa IoT)

• Graafisesti konfiguroitava IoT-sovellusalusta ja pilvipalvelu

– Nopea sovelluksen tekeminen

• Elisa edustaa Suomessa

Page 63: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

Pilvipalveluita

• Jne…

Page 64: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

SeAMK tekniikan

automaation laboratoriotJoitain esimerkkejä

Page 65: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

SeAMK automaation laboratoriot

Page 66: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

SeAMK automaation laboratoriot

Page 67: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

SeAMK automaation laboratoriot

Page 68: Teknologiademot on the Road - storage.googleapis.com · part). Muuttujat määritellään POU:n alussa • Muuttujalle annetaan nimi muuttujan tyyppi ja tietotyyppi. Muuttujat ja

SeAMK automaation laboratoriot

• …

• Beckhoff

• Siemens

• Omron

• Robotiikka

• Konenäkö

• Profiiliskanneri

• Jne…