Skip to main content

IO-profiilit

********************

	IO-profiles kirjasto

	********************

Väyläliitäntäisille laitteille on mahdollista luoda valmiita
kuvaustiedostoja, joissa määritellään, mitä asioita mistäkin rekisteristä
tai objektista laitteen väylärajapinnassa löytyy.

Kuvaus tehdään XML muodossa, ja yksi tiedosto voi sisältää yhden laitetyypin
profiilin.

Kun profiili on luotu, voidaan sitä hyödyntää kahdella eri tavalla:

Ensimmäinen tapa on lisätä laitteita auto-create listaan, jolloin
laitetta varten luodaan kaikki väyläliitynnässä (ja profiili tiedostossa)
määritellyt pisteet valmiiksi väyläasetuksineen.

Toinen tapa on viitata jossakin tietokantapisteessä lyhenteellä laitteen
"kanaviin" tai objekteihin. Se yksinkertaistaa huomattavasti dataSource ja
dataTarget kenttien luomista - nämä oikotiet tai lyhenteet ovat muodoltaan
huomattavasti helpommin ihmisten luettavissa ja kirjoitettavissa.



	PROFIILI TIEDOSTO
	-----------------

Yksinkertainen esimerkki profiilitiedoston XML-kuvauksesta:

Laitteessa on yksi DI kanava, jota kutsutaan nimellä DI1

<ioprofile>
    <name>example</name>
    <description>This is an example device</description>
    <protocol>modbusrtu</protocol>
    <iodata>
        <DI1 dir="in" autocreate="true">
            <ioparams/>
            <pointschema>BI</pointschema>
            <url>discrete/0</url>
            <initdata/>
        </DI1>
	</iodata>
</ioprofile>


XML-puun muoto:

	Kuvauksen juurielementti on aina <ioprofile>

	Sen alle tulevat tagit

	<name>		Tämä on profiilin tekninen tunnus, ja tällä
				nimellä siihen viitataan ohjelmassa.

	<description> 	Vapaamuotoinen kuvaus (esim. dokumentaatiota varten)

	<protocol>	Protokolla jota käytetään. Tätä tekstiä käytetään protokolla
	osana kun profiilin pisteille muodostetaan dataSource ja
	dataTarget kenttiä.

	<iodata> 	Tämä tagi sisältää laitteen objektit, kanavat - tai
	tavallaan tietokantapisteet. Tämän tagin alle lisätään
	yksi tagi per laitteen io-datapiste - eli modbus rajapinnan tapauksessa
	yksi tagi olisi tavallisesti modbus rekisteri.

	IO data tagin nimeä käytetään myös io-datapisteen tai kanavan nimenä, jolla siihen viitataan mikäli 
	kanavalle ei ole määritelty alias tagia.

	jokaiselle kanavalle voidaan määritellä attribuutit

		dir		arvo joko "in" jolloin kanavasta tehdään source,
				"out" jolloin kanavasta tehdään target, tai
				"both" tai "mixed" jolloin kanavalla on molemmat (oletus).

		autocreate 	määrittää luodaanko datapisteelle
					tietokantapiste automaattisesti vai ei.

					arvo joko "true" tai "false", ja false on oletus arvo.

	Sen alle voidaan laittaa seuraavat tagit kuvaamaan io-datapistettä:
	
	<alias>		Nimi jolla kanavaan viitataan, mikäli haluttu nimi EI ole sallitty XML elementin nimi.
				Huomaa!
				- Tämä nimi korvaa quick URL:eissa elementin nimen.
				- Vain yksi alias sallitty. t.s. viimeinen alias elementti XML dokumenttia lukiessa jää voimaan.
	
	<ioparams>	tämän alle tulevat dataSource/Target kentän URL osan
				skaalaus parametrit muodossa

					<parametri>arvo</parametri>

	<pointschema>	kertoo mitä scheemaa käytetään tietokantapistettä
					luotaessa autocreate ohjelmassa.


	<url>		dataSource ja Target kentän URL:n loppuosa, joka tulee
				väyläosoitteen jälkeen. Kertoo usein rekisterityypin tai
				rekisterin/tietueen numeron. Modbus:n tapauksessa
				muoto on "rekisteriTyyppi/rekisterinNumero

	<initdata>		liittyy myös automaattisesti pisteiden automaattiseen
					luontiin; tämän tagin alla määritellään
					luodun pisteen kenttien alkuarvot (jos niiden halutaan
					olevan muuta kuin oletukset).

	<terminals>		Tässä kentässä voidaan kertoa dokumentaatiota varten,
					mitkä liittimet liittyvät tähän datapisteeseen.



	LYHENNETYT SOURCE JA TARGET KENTÄT
	----------------------------------

Kun laitteesta ja sen väylärajapinnasta on olemassa profiilitiedosto,
voidaan sen yhteydessä käyttää lyhennettyä "io://" alkuista dataSource ja
dataTarget URL muotoa.

Käytämme yllä olevaa esimerkkiä modbus väylän kautta liitettävästä
laitteesta, jossa on 1 kpl DI kanavia.

Pisteen dataSource kenttään voidaan kirjoittaa seuraava URL jolla
kanavan tila voidaan lukea pisteen raw ja pv kenttiin:

	io://modbus1/example/10/DI1

Jossa..
	modbus1 	tarkoittaa sellaista modbus porttia, jonka alias kentän
				arvoksi on määritetty "modbus1" (tämä on järjestelmän
				oletus modbus portti).

	example 	on käytettävän ioprofiilin nimi

	10 			on väyläosoite - tässä tapauksessa laitteen modbus-osoite.

	DI1			tämä on viittaus profiilin <iodata> osiosta löytyvään
				tagiin, josta halutun kanava tai io-datapisteen
				kuvaus löytyy.


Näitä lyhennettyjä URL:eja voi käyttää kaikkien sellaisten laitteiden
yhteydessä, joista on saatavilla io-profiili.


** FIN **