• Ei tuloksia

Junavaa'an tietojenkäsittelyjärjestelmä

N/A
N/A
Info
Lataa
Protected

Academic year: 2022

Jaa "Junavaa'an tietojenkäsittelyjärjestelmä"

Copied!
75
0
0

Kokoteksti

(1)

Tietojenkäsittelyopin laöoratorio

DIPLOMITYÖ

Junavaa'an tietojenkäsittelyjärjestelmä

Työ saatu koneinsinööriosaston osastokollegilta 28.11.1978

Vt. prof. Markku Syrjänen Pii. raaist. Erkki Kureniemi Työn johtaja:

Työn ohjaaja:

Työ hyväksytty: £/-4?. /9?$

yj/'ÿ risei

Risto Rautee

Jarrumiehenkatu 2 A 47 00520 HELSINKI 52

puh. 782 122

(2)

Vaakasilta ja kiskokytkiraet Eri akselirakenteet

Vaakaelektroniikka

Punnitusten aloitushetket Maksiminopeudet

Veturin akselien eliminointi

Yleistä

Keskeytysten käsittely ja initiali- soinnit

Kellonajan ja vuorokauden päivitys 4.1.3

3. TOIMINTAYMPÄRISTÖ JA ASETETUT VAATIMUKSET Yleistä

Perustaaroitus Bruttopunnitus Taarapunnitus Nettopunnitus

Muistiin kirjoitus Muistista poisto Muistin listaus Kellonajan asetus

Päivän ja kuukauden asetus Vuosiluvun asetus

Ohj auspäätteen kuvaus

28

4. OHJELMISTO

4.1 Pääohjelma 29 Sisällysluettelo

4 ALKULAUSE

JOHDANTO 5

1. JÄRJESTELMÄN RAKENNE 7

2. JÄRJESTELMÄN TOIMINTA 9

(Ti1Лu>tv

H

U)LJu>u>u>u> CTi

H

sr(N

n

ro

H

<N

IIII

C T iC T iO fN rr iO C O O O O O H

rIIIrliIIICNCNCNCNCN UItotO

Ю

to

M

N» 'J(TlUIU)

<N

O H

<4r-i<4rr>'a'mvor-'C0o>HHH

to to to to to to to to to to to to

(3)

Yleistä

Kiskokytkinten tarkkailu Veturin akselien eliminointi Vaunun yhden akselin tai telin punnitus

Vaakaelektroniikan ohjaus, luku ja tuloksen käsittely Akselipunnitus

(punnitustapa 1)

Telipunnitus; 2 teliä/vaunu (punnitustapa 2)

Telipunnitus, 4 teliä/vaunu (punnitustapa 3)

4.2.3.5 4.2.3.6 4.2.3.7 4.2.3.8

Tietojen interaktiivinen syöttö Punnitustavat

Yleistä

Talletusten kesto Talletettavat tiedot Tulostuksen asettamat vaatimukset

4.3.2.2 Tietorakenteiden kuvaus Systeemxalue

Pesäallas

4.3.3 Muistin hallinta 64

4.3.3.1 Muistin hallintaohjelmat 64

5. YHTEENVETO 71

6. LIITTEET

Kirjallisuusluettelo 73

4.3.2 Tietorakenteet 57

4.3.2.1 Asetetut vaatimukset 57 4.3. Muistin käsittely

4.3.1 Muistitilan käyttö 4.3.1.1 Työmuisti

52 53 54

О О Н О

11Лr-00G\o1o1o1o1o1o1o1o1in

o

H

CNJroO1

U)UIUIU)

(N(N<N(N

^

Æb Г-Г-Г"00COlo

m m

iolo UiUi enUI

ro

[U

M

(4)

4

ALKULAUSE

Tämä työ on suoritettu TKK:n tietojenkäsittelyopin vt.

professorin Markku Syrjäsen johdolla ja fil. maist. Erkki Kureniemen ohjauksessa. Varsinainen valmistava työ, juna- vaa'an tietojenkäsittelyjärjestelmän suunnittelu, toteu­

tus ja asennus Rautaruukin Raahen tehtaille tehtiin nyt jo toimintansa lopettaneen Digelius Electronics Finland Oy:n palveluksessa vuosina 1975 - 1976. Työn ohjaaja toimi tuolloin yrityksen teknisenä johtajana.

Kirjoittajan osuuteen työssä kuului ohjelmiston suun­

nittelu, ohjelmointi ja testaus. Laitteistona käytettiin Digeliuksessa kehitettyä Intel 8008 -pohjaista modulaa­

rista mikrotietokonejärjestelmää (DIS-system). Kirjoittaja suoritti myös laitteiston testauksen ja asennuksen, tosin diplomityö aiheesta keskittyy lähinnä ohjelmistopuolen

Ohjelmointikielenä käytettiin assembleria, kääntäjä ja ohjelmiston kehityslaitteisto olivat Digeliuk- sen omaa tuotantoa.

kuvaukseen.

Omistan suuret kiitokseni työn johtajalle, ohjaajalle ja koko edesmenneen Digelius Electronics Finland Oy:n hen­

kilökunnalle siitä tuesta ja opastuksesta, jonka avulla tämä työ on syntynyt. Vielä haluan kiittää nykyistä esi- miestäni, toim.johtaja Tapio Ahosta, jonka myöntämä virka­

vapaa vauhditti jo hieman viipyneen opinnäytteeni loppuun- Viimeiset kiitokset osoitan pitkäaikaiselle asuinkumppanilleni Asta Tyvennölle, joka on toiminut myötä- ja vastoinkäymisenäni opiskeluaikani vivahderik- kaalla polulla.

saattamista.

Risto Rautee

(5)

Rautaruukki Oy:n Raahen rautatehtaat päätti keväällä 1975 hankkia yhdelle sisääntuloraiteelleen automaattisen punni­

tus järjestelmän. Tarkoituksena oli korvata entinen. run­

saasti manuaalisia toimenpiteitä vaativa junien punnitus- käytäntö uudemmalla, luotettavammalla ja nopeammalla

telmällä.

mene- Punnituksien kohteena ovat tehtaalle tulevien raaka-ainejunien sekä eräiden lähtevien junien brutto-, taara- ja nettopainot.

Järjestelmän tietojenkäsittelyosa päätettiin tilata laiselta Digelius Electronics Finland Oy:Itä.

osa (vaakasilta, venymäliuska-anturit sekä A/D-muuntimet) sekä kiskokytkimet hankittiin muualta.

suoma- Itse vaaka-

Järjestelmällä vuosittain punnittavien raaka-aineiden mää­

rät arvioitiin tilaushetkellä seuraaviksi:

- rikasteita Kokkolasta, Rautuvaarasta ja Otanmäestä yhteensä 1 300 000 tn/vuosi

- pellettejä Kostamuksesta 1 100 000 tn/vuosi - koksia Vainikkalasta 870 000 tn/vuosi

Tehtaalta rautateitse lähtevä tavara oli soodaa, harkkoja, kuonaa ja romua. Nämä junat punnittiin vain tarvittaessa.

Lähtevän tavaran punnitus oli vähäistä verrattuna tulevan tavaran punnitukseen.

Tehtaalle tavaraa tuovan junan bruttopunnitus tapahtui aiemmin siten, että juna ajettiin erittäin hiljaa vaaka- sillan yli. Vaakakopissa vaakamies asetti kunkin vaunun kohdalla vaakalapun koneeseen ja valitsi näppäimistä vaunun numeron ja päivämäärän.

vaa'alla (vaakasilta oli koko vaunun mittainen) hän painoi leimauspainiketta, jolloin kone leimasi vaakalappuun pai-

vaunun numeron, päivämäärän sekä juoksevan numeron.

vaunun Samanaikaisesti toinen henkilö kopioi vaunu- painot yhteiseen lomakkeeseen, ns. vaununluettelosanomaan.

Vaunun ollessa kokonaan

non.

Toimenpide suoritettiin samalla tavoin jokaisen kohdalla.

(6)

6

Tavaran purkauksen jälkeen suoritettiin junan taarapun- nitus. Punnitus tapahtui kuten bruttopunnituskin. Taara- painot leimattiin bruttopainojen kanssa samoille vaaka- lapuille, joista ne edelleen kopioitiin vaununluettelo­

sanomaan. Nettopainot saatiin laskemalla käsin luettelosanoman brutto-

vaunun- ja taarapainojen erotukset.

Lähtevän tavaran punnitus erosi tulevan tavaran punnituk­

sesta vain punnitusjärjestyksen osalta, ts. ensin punnit­

tiin junan taara-, sitten bruttopaino.

Entisen menetelmän heikkouksina olivat suuri manuaalisen työn määrä sekä virhemahdollisuudet punnitushetken valin­

nassa ja nettopainojen laskennassa. Uudelle järjestelmälle asetettujen vaatimusten joukossa olivatkin punnitushetken automaattinen määräytyminen vaunun ylittäessä vaakasillan, vaunupainojen talletusmahdollisuus järjestelmän muistiin sekä nettopainojen automaattinen laskenta. Huomiota tuli kiinnittää myös veturin ja sen jäljessä tulevien ns. suoja- vaunujen punnitusten eliminointiin sekä siihen, että junan palatessa tehtaalta vaunut tulevat vaa'alle käänteisessä järjestyksessä tulopunnitukseen verrattuna.

ennen punnitusta suorittaman tietojen syötön järjestelmään tuli tapahtua luotettavasti ja yksinkertaisesti,

jestelmältä vaadittiin myös suurta interaktiivisuutta.

Vaakamiehen

ts. jär-

Edellä olivat karkeasti järjestelmälle asetetut vaatimuk­

set sekä toimintaympäristön kuvaus. Yksityiskohtiin pala­

taan erikseen järjestelmän tarkemman kuvauksen yhteydessä.

Järjestelmä toteutettiin, kuten alkulauseessa mainittiin, Digeliuksen kehittämällä vakioyksiköistä kootulla DIS- mikrotietokoneella.

"neitseelliseen"

Ohjelmointi suoritettiin assembler- koneeseen, ts. käyttöjärjestel­

mää tai muuta apuohjelmistoa ei koneeseen vielä ollut kielellä

saatavilla.

(7)

Järjestelmä koostuu keskusyksiköstä (DIS-mikroprosessori), kirjoittimesta (Philips PER 3100), ohjauspäättestä, joka sisältää nelinumeroisen näytön, ledejä, numeropainikkeet sekä ohjauspainikkeita, vaa'asta, vaakaelektroniikasta,vaa- alle asetetuista kiskokytkimistä sekä junan kuljettajalle tarkoitetusta järjestelmän ohjaamasta merkkivalosta.

Anturit Kiskokytkimet

/

/

I

z

Л

Merkki­

valo Hg)

! f V V

Vaaka- elektro­

niikka (A/D-muun- nin ym.)

4xBCD

DIS- mikro­

prosessori start

Kirjoitin

e -s-

ready

il

V

Ohj aus- pääte

(8)

птп

8 Keskusyksikön modulikuvaus

6047 I 6020

I/O-adapteri Prosessori

6066

Työmuisti 4 kB + muistipsuo- _________ ~i aus

Ohjaustaulu 6036

Sarjaliitäntä (modifioitu)

7

6036 I

Sarjaliitäntä

X 6029

Dig.input Vaaka-

elektro­

niikka

4 dek

BCD 1 6x /' -i»

readvfc

Ì

^tart 6029 6058

Reaaliaikakelloi Dig.input

1 6x

Kisko- kytki­

met

6035

Dig.output 1 6x

Triac-rele liitäntä

cz,

>

Akku

Philips 601 6

Ohjelmamuisti 2 kB

601 6

Ohjelmamuisti 2 kB

oooo

OOOO

(9)

2 JÄRJESTELMÄN TOIMINTA

2.1 Yleistä

Punnitusten suoritus tapahtuu siten, että vaakamies ensin valitsee ohjauspäätteen avulla halutun punnitusohjelman painamalla vastaavaa painiketta. Tämän jälkeen järjestelmä

1 kyselee1 päätteen, ledien avulla muut tarvittavat tiedot, jotka vaakamies antaa joko numero- tai muiden vastauspai- nikkeiden avulla. Tietojen syötön päätyttyä järjestelmä sytyttää junan kuljettajalle tarkoitetun "valmis"-valon.

Junan tullessa vaakasillalle punnitus alkaa automaattises­

ti. Junan mentyä ohi vaakamies painaa päätteen "lopetus"- painiketta, jolloin kirjoitin tulostaa punnitustiedot päi- väyksineen valmiiksi painetulle punnituslomakkeelle.

Paitsi varsinaisia punnitusohjelmia, järjestelmässä on myös päivämäärän ja kellonajan asetusohjelmat (kellonajan ja vuo­

rokauden päivitys tapahtuu automaattisesti) sekä muistin listaus-, muistiin kirjoitus- ja muistista poisto-ohjelmat.

Mikäli punnitus ei suju oletuksen mukaan ts. junan nopeus on liian suuri tai muistitila loppuu kesken punnituksen, suoritetaan hälytys kirjoittimen avulla.

Varsinaisia punnitusohjelmia järjestelmässä on neljä kpl.:

- perustaaroitus - bruttopunnitus - taarapunnitus - nettopunnitus

2.2 Perustaaroitus

Ohjelmaa käytetään haluttaessa nollata vaa'an lukema. Vaa- an lukema saattaa muuttua vaakasillalle kertyvän jään tms : n johdosta tai vaakaelektroniikan A/D-muuntimen asetusten muut­

tuessa. Painettaessa perustaaroitus-painiketta järjestelmä lukee vaakaelektroniikan ulostulossa olevat neljä BCD-lukua perustaararekisteriin. Perustaararekisterin sisältö vähenne­

tään aina vaakaelektroniikan annosta kunkin punnituksen yh­

teydessä .

(10)

10

2.3 Bruttopunnitus

Ohjelmaa käytetään silloin, kun täysi juna tulee tehtaalle ja vaunujen bruttopainot on pantava muistiin myöhempää net- topunnitusta (= tässä tapauksessa tyhjän junan punnitusta) varten.

Ohjauspäätteellä annetaan seuraavat tiedot ennen punnitusta - junanumero

- runkonumero

}

identifioivat ko. junan

- eliminoitavien akselien lukumäärä = junan alkupäässä ole­

vien punnitsemattomien akselien (veturin akselit) lkm.

- punnitustavan numero ; määrittelee junan vaunujen akseli- rakenteen seuraavasti:

2 akselia/vaunu 2 teliä/vaunu 4 teliä/vaunu 1

4 akselia/vaunu 8 akselia/vaunu

- talletetaanko painot muistiin ; mikäli talletetaan, ne jää­

vät odottamaan seuraavaa saman junan nettopunnitusta, min­

kä yhteydessä ne automaattisesti poistetaan muistista.

Muussa tapauksessa painot poistetaan muistista heti tu­

lostuksen jälkeen.

2 3

Lopetus-painikkeen painamisen jälkeen kirjoitin tulostaa - päivämäärän ja kellonajan

- junanumeron - runkonumeron

- juoksevan vaununumeron - vaunujen bruttopainot - koko junan bruttopainon

(11)

ALKU

Junan n : o ?

Rungon n : o ?

Elim.aks.

lukum.?

Punnitus tapa ?

Muistiin talletus ?

4 numeroa

1 numero

2 numeroa

1 = akselipunnitus 2 = telip.; 2

3 = " 4

2 teliä/vaunu If

Kyllä/Ei

Punnitus Punnitus päättyy lopetus- painikkeen painamisen jäl­

keen

Tulostus

Muisti­

tiedon tu­

hoaminen Talletu

?

^LOPPU

Cc

rt

c

(12)

12

2.4 Taarapunnitus

Ohjelmaa käytetään silloin, kun lähtevän tai

nan taarapainot halutaan tietää ja tallettaa muistiin jo­

ko seuraavaa saman junan nettopunnitusta (= tässä tapauk­

sessa täyden junan punnitusta) varten tai kiinteästi, jol­

loin painojen sanotaan olevan talletettuna riin.

tulevan ju-

vaunurekiste-

Ohjauspäätteellä annetaan seuraavat tiedot ennen punni­

tusta :

- junanumero - runkonumero

- eliminoitavien akselien lukumäärä - punnitustavan numero

- talletetaanko painot muistiin

- talletetaanko painot vaunurekisteriin

Lopetuspainikkeen painamisen jälkeen kirjoitin tulostaa:

- päivämäärän ja kellonajan - junanumeron

- runkonumeron

- juoksevan vaununumeron - vaunujen taarapainot - koko junan taarapainot

- onko painot talletettu vaunurekisteriin

(13)

(alku J

Junan n : о ?

Rungon n : o ?

Elin.aks.

lukum. ?

Punnitus­

tapa

Talletus muistiin?

Talletus vrpekiste- nin ? yllä ?

I Punnitus

Tulostus

Muisti­

tiedon tu­

hoaminen Talletu

?

Ç LOPPU ^

(14)

14

2.5 Nettopunnitus

Ohjelmaa käytetään, kun punnituksen yhteydessä halutaan laskea nettopainot. Edellytyksenä on, että vastaavat brut­

to/t aarapainot ovat laitteen muistissa. Punnituksen ja tu­

lostuksen jälkeen laitteen muistista poistetaan tulostetut tiedot, lukuunottamatta vaunurekisterissä olevia tietoja.

Ohjauspäätteellä annetaan seuraavat tiedot ennen punnitus­

ta :

3unanumero runkonumero

- eliminoitavien akselien lukumäärä - punnitus!avan numero

- aikaisemmassa (brutto- tai taara-) punnituksessa punni­

tun junan numero (Huom. junanumero ei ole junakohtainen, vaan junavuorokohtainen, ts. junan saapuessa ja lähties­

sä junanumero on muuttunut, mutta runkonumero on pysynyt samana). Mikäli annetun numeroista junaa ei ole muistissa, ohjelma keskeytetään ja järjestelmä tekee tästä kirjoit­

timelle ilmoituksen.

Lopetus-painikkeen painamisen jälkeen kirjoitin tulostaa

- päivämäärän ja kellonajan - junannumeron

- juoksevan vaununumeron

- vaunujen brutto-, taara- ja nettopainot - koko junan brutto-, taara- ja nettopainot - onko taarapainot talletettu vaunurekisteriin

Lisäksi kirjoitin kirjoittaa aikaisemmin suoritetun nituksen sarakkeen alle k.o. punnituksen

pun-

- päivämäärän - kellonajan - junanumeron - runkonumeron

(15)

(^Alku^)

Junan n : о ?

Rungon

n : о ? \

Aik.punn.

junan no?

löytyikö I

"Ei sen numeroista muistissa Elim.aks.

lukum. ?

Punnitus­

tapa ?

Punnitus

Tulostus

Muisti­

tiedon tuhoamine n

c

Loppu

)

(16)

16

2.6 Muistiin kirjoitus

Ohjelmaa käytetään haluttaessa manuaalisesti tallettaa muistiin jonkin junan taara- tai bruttopainot.

Päätteeltä annetaan seuraavat tiedot:

- ]unanumero - runkonumero

- onko kyseessä taara- vai bruttopainot

- talletetaanko painot vaunurekisteriin (vain taara- painojen yhteydessä)

- vaunupainot vaunujen numerojärjestyksessä.

Annettaessa vaunupainoksi nolla, järjestelmä lopettaa vaunupainojen pyytämisen ja tekee tarkistustulosiuksen, josta ilmenee

- junanumero - runkonumero

- juokseva vaununumero

- vaunujen taara/bruttopainot - koko junan taara/bruttopaino

- taarapainojen ollessa kyseessä, onko painot talletettu vaunurekisteriin.

Mikäli painoja ei talletettu vaunu rekisteriin, ne pois­

tetaan muistista seuraavan saman junan nettopunnituksen j älkeen.

(17)

) (

Alku

Junan n : o ?

Rungon

n : o ? \

Taara/

brutto?

Talletus v-rekister Taara?

iin?

Vaunun paino?

1

0

Tulostus

(

Loppu

)

(18)

18

2.7 Muistista poisto

Ohjelmaa käytetään haluttaessa poistaa jonkin punni­

tuksen tiedot muistista. Tiedot voivat olla talle­

tettuna muistiin väliaikaisesti tai kiinteästi.

Päätteeltä annetaan seuraavat tiedot:

j unanumero runkonumero.

Mikäli k.o, junan punnitus!ietoja ei löytynyt muis­

tista, järjestelmä tekee siitä ilmoituksen kirjoit­

timen avulla.

(19)

Muistista poisto

Alku

Junan n : o ?

Rungon

n : n 7

öytyikä

?

"Ei sen numeroista muistissa"

Muisti­

tiedon tuhoaminen

^Loppu J

(20)

20

2.8 Muistin listaus

Painettaessa muistin listaus-painiketta ohjelma tulos­

taa kaikkien muistissa olevien punnitusten tiedot. Tu­

lostuksesta ilmenee kunkin punnituksen

- junanumero - runkonumero

- punnituspäivämäärä ja - kellonaika

- juokseva vaununumero

- vaunujen brutto/taarapainot - koko junan brutto/taarapainot

Taarapainojen ollessa kyseessä ilmenee myös, onko pai­

not talletettu taararekisteriin.

2.9 Kellonajan asetus

2.10 Päivän ja kuukauden asetus

2.11 Vuosiluvun asetus

Painettaessa jotain ko. painikkeista järjestelmä jää odottamaan asetusarvon antamista numeropainikkeilta.

Arvot voidaan näppäillä painikkeiden avulla näyttöön.

Painettaessa ENTER-painiketta järjestelmä hyväksyy näytössä olevan lukeman asetusarvoksi. Kellonaikaa ja vuorokautta pidetään järjestelmässä yllä reaaliaikakel- lon avulla.

(21)

л Alku J

Vuosi?

^LoppiTj

Alku

Päivä, kk ?

Loppu asetus

^ Alku ^

klo?

Ç Loppu

Muistin listaus

(

Alku

Tulostus

Loppu

Kellonajan, päivän ja kuukauden sekä vuosiluvun

V V

(22)

Ohjauspäätteen paneelit

N3

® Junanumero?

® Runkonumero?

® Aikaisemmin punnitun junan n : o?

® Eliminoitavien akselien lukumäärä?

® Punnitustavan numero?

® Talletetaanko painot muistiin?

® Talletetaanko painot vaunurekisteriin?

<3 Taara vai brutto?

® Näppäile vaunupaino!

sø se

hOo

1—J.

DJ

C

СЛ

D0-:j:

rt

rtП) ro 9 C

< Dic en

Kellonajan asetus

Päivän ja kk : n asetus Vuosiluvun asetus

Perustaaroi- tus

Brutto- punnitus Taara- punnitus Netto- punnitus Lopetus

Kyllä Control

7 8 9

Muistin listaus Muistiin kirjoitus Muistista poisto 0

0 Ei 5 6

0

4

Brutto

0

0

0 0

1

2

3

0

0 Taara

0

0

0 c

¡MEF

Näihin ohjelmiin siirty­

minen vaatii CONTROL-pai- nikkeen samanaikaista pai­

namista . Oltaessa jossain ohjelmassa

vastaavan painikkeen LED palaa jatkuvasti.

ro

(23)

Punnitusten toimintaympäristö ja asetetut vaatimukset 3.

3.1 Vaakasilta ja kiskokytkimet

Kiskokytkinten ja vaa'an mitoitus selviää alla olevas­

ta kuvasta.

silta 4250

1 000 1 000

Î- - f

kkl kk2 kk3

Kiskokytkimet on sovitettu järjestelmään digitaali- rinnakkaisottoyksikön (DIS 6029 ) välityksellä,

kön ottorekisteri muodostuu RS-kiikuista.

Yksi- Kiskokytki- men sulkeutuessa vastaava kiikku asettuu ykköstilaan.

Ottorekisteri voidaan ohjelmallisesti lukea ja nollata.

(24)

24

3.2 Eri akselirakenteet

Käytössä on kolme eri akselirakennetta, jotka kukin Käytännössä junan vaativat oman punnitusohjelmansa.

kaikki vaunut ovat akselirakenteeltaan samanlaisia.

Ennen punnitusta käyttäjä antaa järjestelmälle punni­

tustavan numeron (1,2 tai 3) joka ilmaisee käytettä­

vän punnitusohjelman.

Punnitusohjelma 1

= Akselipunnitus

ö ö

Punnitusohjelma 2

= Telipunnitus;

2 teliä/vaunu

ОЮ 04)

I I

У

1800-2000 Punnitusohjelma 3

= Telipunnitus 4 teliä/vaunu

[

0404 0404

i i

I

\

r

1800 1200 1800

Akselirakenne määrää eri punnitusten aloitushetket ja sen, kuinka monen punnituksen summasta vaunupaino muo­

dostuu .

(25)

Vaakaelektroniikka antaa vaa1 an lukeman neljän BCD- luvun muodossa, joista vähiten merkitsevä edustaa

kymmeniä kiloja ja eniten merkitsevä kymmeniä tonneja.

Elektroniikka sisältää A/D-muuntimen, jonka muunnos- Aika on suhteellisen pitkä, minkä ta­

kia muunnoksen ajoitus täytyy tapahtua tietokoneen oh­

jaamana (1,5 m/s nopeudella kulkeva juna liikkuu 600 ms :ssa 0,9 m).

aika on 600 ms.

Vaakaelektroniikan ohjaus tapahtuu seuraavasti:

ALKU

Tietokone antaa punnituksen aloi­

tuskäskyn vaaka- elektroniikalle

Vaaka-elektroniik­

ka suorittaa A/D- muunnoksen_________

Vaaka-elektroniik­

ka antaa signaalin

"muunnos suoritettu'

Tietokone lukee punnitustuloksen vaakaelektroniikan annosta

^LOPPU ^

Vaakaelektroniikan anto (vaa'an lukema ja "muunnos suo­

ritettu" -signaali) on sovitettu järjestelmään digitaa- li-rinnakkaisottoyksiköiden (DIS6029) välityksellä. Tie­

tokone antaa aloituskäskyn digitaali-rinnakkaisantoyksi- kön (DIS6035) välityksellä. Sekä aloituskäsky että vaa'an vastaus ovat positiivisia pulsseja, joiden nousureunasta ajoitus tapahtuu.

(26)

26

3.4 Punnitusten aloitushetket

1. Akselipunnitus

4250

(1125) (1125) 1 ППП 1 000

I l

ÏÏ T •KK2

I KK1 KK3

2. Telipunnitus 2 teliä/vaunu I

2000

1 800 I

(S

\

I

f f

KK1 KK2 KK3

4 teliä/vaunu 3 . Telipunnitus

1 ЯПП 1,2Лй

I vaihe

0 0

0

Tkki fKK2 f KK3

Ì

1200 1 800

II vaihe

1

0 - 0 0

0

f KK 2 ♦ KK3

I

♦ KK1

Huom: Kuvat piirretty tilanteessa, jolloin juna saapuu kisko- Päinvastäisessä tapauksessa kis- kytkin 1:n suunnasta,

kokytkin 1 ja kiskokytkin 3 vaihtavat paikkaa.

(27)

3.5 Maksiminopeudet

Vaakaelektroniikan A/D-muunnokseen kuluva aika sekä vaakasillan, kiskokytkinten etäisyyksien ja vaunujen akselirakenteiden väliset mittasuhteet määräävät kul­

lekin punnitustavalle teoreettiset junien maksimino- Nämä on pyöristetty seuraavasti :

peudet.

Akselipunnitus

Telip innitus; 2 teliä/vaunu Telipunnitus; 4 teliä/vaunu

> Vmax = 1,5 m/s 1,0 m/s Vmax

Ennen kutakin yksittäistä punnitusta järjestelmä tar­

kastaa junan kulkunopeuden. Nopeuden mittaus perustuu yhden akselin kulkuajan mittaamiseen kahden peräkkäisen kiskokytkimen välillä. Mikäli nopeus ylittää sallitun arvon, punnitus keskeytetään ja kirjoittimelle tulostuu tästä ilmoitus .

3.6 Veturin akselien eliminointi

Punnitus aloitetaan vasta veturin ym. punnituksen kan­

nalta merkityksettömien vaunujen ohitettua vaakasillan.

Tässä tarkoituksessa käyttäjän tulee antaa järjestelmäl­

le eliminoitavien akselien lukumäärä ennen punnitusta.

Veturin akselien eliminointi on tärkeää jo sen akseli- rakenteen erilaisuuden vuoksi, mikä saattaa sekoittaa järjestelmän käsityksen vaunujen rajoista.

(28)

28

4. OHJELMISTO

(29)

4.1.1 Yleistä

Pääohjelman alkuun joudutaan

- jännitteiden uudelleen kytkeytyessä (autostart) - tehtäessä manuaalinen keskeytys I/О-adapteri-

kortilla olevalla kytkimellä

- reaaliaikakellon laskurin vuotaessa yli, jolloin reaaliaikakello suorittaa keskeytyksen

(kts. tarkemmin keskeytysten käsittely-kohtaa)

Pääohjelman alussa tutkitaan mistä keskeytys on läh­

töisin ja suoritetaan tarvittavat toimenpiteet.

Seuraavana sammutetaan ohjauspäätteen kaikki ledit.

Jännitteiden kytkeytyessä ledien ohjauspiirit asettu­

vat satunnaisesti eri tiloihin, joten ledien sammutus täytyy tehdä ohjelmallisesti. Samoin eri punnitus- ym. ohjelmien lopussa ei sytytettyjä ledejä erikseen sammuteta, vaan se tapahtuu ohjelman tässä kohdassa.

Tämän jälkeen ohjelma asettuu pääohjelmasilmukkaan, jossa vuoronperään

- päivitetään työmuistissa pidettävää kellonaikaa ja päiväystä

- suoritetaan punnitus ja viedään tulos näyttöön

- tutkitaan onko painettu mitään päätteen painiketta, ja jos ei ole, hypätään luupin alkuun.

Mikäli jotain painiketta oli painettu, tutkitaan mikä painike oli kyseessä ja hypätään vastaavaan ohjelmaan.

Numero- ym. vastauspainikkeet eivät aiheuta mitään toi­

mintoa tässä yhteydessä.

Tässä yhteydessä tarkastellaan lähemmin keskeytysten kä­

sittelyä ja initialisointeja sekä kellonajan päivitystä.

Punnituksen suoritus selviää kohdassa "Vaakaelektronii­

kan ohjaus, luku ja tuloksen käsittely"

(30)

Pääohjelma

30

Alku

Keskeytys­

ten käsit­

tely ja ini-- tialisoinnil

<

Ledien sammu­

tus

i Kellon­

ajan päivitys

!

i

Punnitus ja tulok­

sen näyttö

/ Onko

painettu ^ xpainike*^3

? i

I Brutto-

punnitus -►

Bruttop.

?

^ Taara- punnitus Taarap.

?

i I

i i

i

>- Perus- taaroitus xÇerustaar.

!

t j

(31)

Keskeytysten käsittely .ja initialisoinntt

4.1.2

Keskeytyksen syltä saattoivat olla - manuaalinen keskeytys

- reaaliaikakellon keskeytys

- jännitteiden uudelleen kytkeytyminen virtakatkon jälkeen Manuaalinen keskeytys tehdään l/O-adapterikortilla olevasta kytkimestä esim. haluttaessa keskeyttää jokin punnitus— tai

ohjelma mielivaltaisessa vaiheessa. Keskeytyksen teke- muu

minen vaatii keskusyksikön kannen avaamisen ja tapahtuu käytännössä hyvin harvoin. Manuaalinen keskeytys aiheuttaa ainoastaan hypyn pääohjelman alkuun.

Reaaliaikakellon (RTC) keskeytys tapahtuu reaaliaikakellon laskurin vuotaessa yli. Normaalisti reaaliaikakello

tettu askeltamaan minuutin taajuudella 8 hitin laskuria ylöspäin. PääohjeImasilmukassa kellonajan päivitys —ohje1—

laskuri käydään tyhjentämässä ja vastaavasti kasva­

en ase­

massa

tetaan laskuriin kertyneellä minuuttimäärällä työmuistissa olevia kellonaikaa ja päiväystä ylläpitäviä rekistereitä.

Mikäli ohjelma syystä tai toisesta juuttuu tämän pääohjel- masilmukan ulkopuolelle (esim. käyttäjän jättäessä johon­

kin kysymykseen vastaamatta) yli 256 minuutiksi, suorit­

taa RTC keskeytyksen. Tämän keskeytyksen tapahduttua lada­

taan RTC:n laskuriin luku 256 ja hypätään pääohjelmaan, jossa tapahtuu kellonajan päivitys. Samalla suoritetaan RTC:n keskeytyksen kuittaus, joka tarkoittaa" reaaliaika- kellokortilla olevan keskeytyskiikun nollaamista.

Jännitteiden kytkeytyessä virtakatkon jälkeen, suorittaa l/O-adapterikortilla oleva piiri autumaattisesti keskey­

tyksen. Tämän keskeytyksen tapahduttua, mikäli varavirta- lähteenä toimivan akun kapasiteetti on riittänyt säilyttä­

mään työmuistin sisällön, järjestelmän tehtävänä on aino­

astaan käynnistää reaaliaikakello. Mikäli muistin sisältö järjestelmä initialisoi muistin. Initiali-

(=ASCII-välilyönti) tulostuspusku- on tuhoutunut,

sointiarvoina ovat 0408

(32)

32

rissa, 060g (=ASCII-nolla) systeemialueella olevissa numee­

risen tiedon tallennuspaikoissa sekä erityisesti tätä jär­

jestelmää varten suunniteltu ketjutetun muistin rakenne, joka esitetään tarkemmin kohdassa ”Muistin käsittely".

Järjestelmä erottaa eri keskeytykset toisistaan (Intelin 8008 -prosessori ei pysty ns. vektoroituun keskeytykseen) tutkimalla ensin reaaliaikakellon status-rekisteriä.

Jos se on täysin ennallaan, on tapahtunut manuaalinen keskeytys. Jos status-rekisterin eräs tietty hitti on kääntynyt, tiedetään RTC:n tehneen keskeytyksen. Mikäli rekisterin hitit ovat asettuneet aivan mielivaltaisesti, on tapahtunut virtakatko. Muistin mahdollinen tuhoutu­

minen voidaan todeta tätä varten varatusta muistipaikas­

ta, joka initialisoinnin yhteydessä sai arvon 060o.

8

(33)

Alku

/ Man. ^ keskeytys

?

Täytetään RTC: n lasku­

ri ja kuita­

taan keskey- tys .

^RTC: n ^ keskeytys

?

/ Muistix tuhoutunut

?

Käynnistetään RTC

Initialisoi- daan muisti, käynnistetään

Loppu

(34)

34

4.1.3 Kellonajan ja vuorokauden päivitys

Edellisessä kohdassa tuli jo tarpeellisessa määrin selvitettyä reaalikellon toimintaa. Ohjelman 'TIME' tehtävänä on kasvattaa työmuistissa ylläpidettävää kellonaikaa ja tarvittaessa päivämäärää kellon las­

kuriin kertyneitten minuuttien määrällä. Ohjelmaa käytetään paitsi pääohjeImasilmukassa, myös aina ennenkuin päiväys ja kellonaika kopioidaan tulostus- puskuriin. Täten punnitusilmoituksessa näkyy aina tulostushetken kellonaika. Ohjelman toiminta selvin- nee seuraavalla sivulla olevasta lohkokaaviosta.

(35)

Alku

*■

Akku RTC

kku = 0

?

Loppu Akku

ku-1

Ak

RTC Akku

Iin Min + 1

Min= 60

Min 0

Hour Hour И

our= 24

Hour 0 )ay4-Day+1

(36)

4.2 PUNNITUSOHJELMAT 36 4.2.1 Yleistä

Järjestelmässä tunnettiin neljä varsinaista punnitus- ohjelmaa :

- perustaaroitus - bruttopunnitus - taarapunnitus - nettopunnitus

Kolmen jälkimmäisen loogiset toiminnat voidaan jakaa kolmeen osaan :

- tietojen interaktiivinen syöttö ohjauspäätteen avulla - punnitus

- tulostus

f

Johtuen käytössä olevista erilaisista vaunujen akseli- rakenteista, kussakin punnitusohjelmassa voi olla kol­

mea erilaista punnitustapaa, jotka kukin vaativat oman ohjelmansa (kahden akselin, kahden telin ja neljän telin vaupujen punnitukset). Tämä on johtanut seuraavanlai­

seen ohjelmiston struktuuriin.

^NETTOPJ MTAARAPJ

BRUTTOP.

Tietojen syöttö

Tietoj en syöttö

Tietojen syöttö -*

Valinta ' i

Punnitus­

tapa 1

Punnitus­

tapa 2

Punnitus­

tapa 3

aiintä

Ì

i

Brutto-- tai taara- tulcxrtJi

Netto- tulos­

tus s

^LOPPU ^

(37)

4.2.2 Tietojen interaktiivinen syöttö

Aikaisemmin on kuvattu ne tiedot, jotka vaakamies an­

taa järjestelmällä eri ohjelmien yhteydessä.

teenä on, ettei niitä tässä vaiheessa vielä mitenkään käytetä hyväksi, vaan ne ainoastaan talletetaan työ­

muistissa systeemialueella oleviin tallennuspaikkoihin.

Periaat-

Numeerisen tiedon syöttö tapahtuu yleisessä muodossaan seuraavasti:

ALKU

Sytytetään kysymyksen tekevä LED

DATAINP-rutiini vie päät­

teeltä numeropainikkeilta painetut merkit näyttöre- kisteriin ja näyttöön.

Paluu ohjelmasta tapahtuu painettaessa ENTER-paini- ketta (lohkokaavio seu­

raavalla sivulla) DATAINP

-rutiini

Sammutetaan kysymyksen tekevä LED

Siirretään tieto näyt- törekisteris

tä omalle pa ikalleen

^ LOPPU ^

(38)

38 DATAINP

^ALKU j

Sytytetään ENTER- painikkeen led

Nollataan näyttörekis- teri ja

näyttö

* Onko painettu

pSsjjiiket

2. Siirretään

näyttörekisteriä vasemmalle. Vie­

dään numero oi­

keaan laitaan.

Kopioidaan näyt- törekisteri

näyttöön.

Numero? ■*>

Nollataan näyttörekis- teri ja

näyttö______

Clear? »

Enter?

Sammutetaan ENTER-pai- nikkeen LED

^ LOPPU ^

(39)

Punnitustulosten tallentamista koskeviin kysymyksiin käyttäjä vastaa painamalla painiketta KYLLÄ tai EI.

Ohjelma toimii silloin seuraavasti:

' ALKU

Sytytetään kysymyksen tekevä LED sekä KYLLÄ ja EI-painikkeiden LEDit

Onko painettu

><iniket г

Kyllä tai ei

?

Sammutetaan LEDit

Talletetaan vastauksen merkitys STATUS-tavuun

LOPPU

Ohjelma on täysin vastaava kysyttäessä ovatko manuaali­

sesti talletettavat painot brutto- vai taarapainoja.

Käyttäjä vastaa tällöin painikkeilla 'brutto' tai 'taara'.

(40)

40

*+•2.3 Punnitusoh j elmat (punnitustavat)

Huom:

Tarkasteltaessa asiaa järjestelmän käyttäjän kannalta käsite "punnitusohjeIma" tarkoittaa joko taara-, brutto- tai nettopunnitusta tietojen syöttöineen, punnituksineen ja tulostuksineen. •

Seuraavassa käsite punnitusohjeIma rajataan kuitenkin koskemaan varsinaisia punnituksia, jotka käyttäjä tuntee vain eri punnitustapoina.

laan puhumaan akselipunnitusohjelmasta ja eri telipunni- tusohjelmista, joita ei tule sekoittaa taara-, brutto­

ja nettopunnitusohjelmiin.

Ts. Seuraavilla sivuilla tul-

Yleistä 4.2.3.1

Punnitusohjelmissa voidaan erottaa neljä eri toiminnal­

lista osaa:

junan suunnan päättely ja veturin akselin eliminointi

junan nopeuden tarkkailu

punnituksen aloitushetken havaitseminen

vaakaelektroniikan ohjaus ja luku.

Näistä ensimmäinen suoritetaan vain kerran ja kolme seu- raavaa toistetaan samassa järjestyksessä kutakin punni- tuskertaa kohden.

On huomattava, että järjestelmä käsittelee vaunu- eikä

"teli- tai akselipainoja. (Jälkimmäiset tosin näkyvät punnituksen aikana ohjauspäätteen näytössä.) Tällöin vaunupaino muodostuu useamman punnitustuloksen summasta.

(41)

Punnitus lopetetaan käyttäjän haluamalla hetkellä pai­

namalla ohjauspäätteen lopetus-painiketta,

muistiin jää kaikkien kokonaan punnittujen vaunujen (Ts. jos lopetus-painiketta painetaan kesken jonkin vaunun punnitsemisen, vaunun alkupään punnitus- tuloksia ei huomioida.)

Tällöin

painot.

4.2.3.2 Kiskokytkinten tarkkailu

Koska järjestelmän tulee toimia junien ylittäessä vaaka- sillan kumpaan suuntaan tahansa ja toisaalta koska neljän telin vaunuja punnittaessa joka toisen telin punnitus aloitetaan eri kohdassa kuin toisen, on päädytty seuraa- vaan ratkaisuun:

Itse punnitusohjelmat eivät tiedä, minkä todellisen kiskokytkimen sulkeutumista kulloinkin odottavat. Oh­

jelmat tuntevat vain käsitteet kiskokytkin X ja kisko- kytkin Y, jotka ovat kiskokytkinten input-tavun ja systeemialueella olevien maskirekisterien XMASK ja YMASK AND-funktio.

Kiskokytkin X määritellään yleisesti kiskokytkimeksi, jon­

ka sulkeutuminen aiheuttaa ajan laskennan alkamisen nopeu­

den mittausta varten.

(Itse asiassa pelkkä kiskokytkimen sulkeutuminen ei aiheuta missään yhteydessä vielä mitään toimintoa. Oh­

jelma odottaa myös kiskokytkimen avautumista ennenkuin Vain tällä tavoin pystytään esim. erot­

tamaan toisistaan veturin akselit, joita tutkitaan yh­

dellä ja samalla kiskokytkimellä.) toiminta alkaa.

Kiskokytkin Y on kiskokytkin, jonka sulkeutuminen lopettaa ajan laskennan ja - mikäli junan nopeus oli sallitun rajan alapuolella - aloittaa varsinaisen punnituksen.

(42)

42

Kiskokytkimillä X ja Y operoidaan myös laskettaessa ak­

selien ohituksia.

(Huom: Paitsi veturin akselit, myöskään telipunnituk- sissa telien jälkimmäiset akselit eivät saa laukaista kumpaakaan edellä mainituista toiminnoista.)

Digitaalisen rinnakkaisottoyksikön yhteen 8-bittiseen ottorekisteriin tuodaan kiskokytkinten signaalit seuraa­

vasti :

Bitti 76543210 x

X

Kiskokytkin 1

•Kiskokytkin 2 -Kiskokytkin 3

Maskirekisterissä asetetaan tutkittavaa kiskokytkintä vastaava bitti ykköseksi, muut nollaksi.

suoritetun input-tavun ja maskitavun AND-operaation jäl­

keen

Tällöin akussa

zero on asettunut, mikäli tutkittava kiskokytkin ei ollut sulkeutunut (ts. input-tavun vastaava bitti oli nolla)

zero on nolla, mikäli tutkittava kiskokytkin oli sul- keutunut.

Koska rinnakkaisottoyksikön ottorekisteri muodostuu R-S- kiikuista, jää kiskokytkinten sulkeutuminen "muistiin"

eikä ottorekisteriä tarvitse ehtiä lukea kytkinten sul- keutuneenaoloaikana. Toisaalta (todennäköisesti) järjes­

telmän nopeus verrattuna kiskokytkinten nopeuteen tekee tämän ominaisuuden tarpeettomaksi.

Kaikki ohjelmasilmukat, jotka odottavat jonkin kisko- kytkimen sulkeutumista tai avautumista, tutkivat myös, onko painettu ohjauspäätteen lopetus-painiketta. Näin

(43)

ehkäistään ohjelman jääminen jatkuvaan silmukkaan jonkin odotetun kiskokytkinsignaalin jäädessä tulematta,

petus-painikkeen painaminen saa aikaan ohjelmallisesti keskeytyksenomaisen hypyn suoraan tulostusohjelmaan.

Lo-

Kiskokytkinten tarkkailu tapahtuu seuraavasti (ohjelmat KKX ja KKY):

ALKU

Onko

painettu lo^>

pb<us-pajXiketta?

Onkox.

iskokytkinX x^sulkeutuRlit ?

^'Onko painettu

■bqpetus- z- pa rhilcai^fa ?

*

^/önko kiskokytki s-avautunu*1

U

?

Tulostus- ohjelmaan

(

loppu

^

(44)

44

4.2.3.3 Veturin akselien eliminointi tapahtuu laskemalla kisko- kytkin X : n sulkeutumisia ja vähentämällä systeemi-

alueella olevan ELA-rekisterin sisältöä. Ko. rekisteriin on ennen punnitusta talletettu eliminoitavien akselien lukumäärä kahdella ASCII-numerolla.

ALKU -*»

ELÄ ELA-1

ELÄ < 0?

KK X

g

LOPPU

Tulostus- ohjelmaan

(45)

4.2.3.4 Vaunun yhden akselin tai telin punnitus nopeuden tark- kailuineen tapahtuu lohkokaavion osoittamalla tavalla.

Nopeuden tarkastus onnistuu vakiokestoisen ohjelmasil- mukan avulla, kun tiedetään kiskokytkinten välinen etäi­

syys (1,125 ra), prosessorin kierrosaika (4,5 us) sekä eri käskyjen suoritukseen vaadittavien kierrosten luku­

määrät. Ohjelmasilraukoiden lukumäärä lasketaan vähentä­

mällä etukäteen asetettuja CPU:n D ja E -rekistereitä.

Mikäli tutkittava kiskokytkin sulkeutuu ohjelman vie­

lä pyöriessä em. silmukassa, tiedetään junan nopeuden olevan liian suuri, keskeytetään punnitus ja hypätään hälyty s o h j eImaan. HälytysohjeIma sammuttaa junan kul­

jettajalle tarkoitetun merkkivalon ja tekee hälytys- ilmoituksen kirjoittime11a.

(46)

(vaunun yhden akselin tai telin punnitus)

46

^ ALKU ^

KK X

Asetetaan Dja E rekit alkuarvoi- hmsa

nko painettu lo etuspaini-

ketta

^ ? -

o \kyt- ulkeu- /xisko kin Y s

\tunut

?

Dekrementoi- daan D,E-re- kisteriparié

Hälytys- ohjelmaan D,E = 0

?

KK Y

g

Punnitus

Tulostus­

ohjelmaan LOPPU

(47)

loksen käsittely tapahtuu seuraavasti :

ALKU

Annetaan punnituksen aloituspulssi

Valmis ?

Luetaan vaa'an lukema punnitusrekis- teriin

Vähennetään perustaara- rek:n sisältö punnitusrekis- tenstä

Viedään pun- nitusrek: n sisältö näyt­

töön

Summataan pun- nitusrek: n sisältö VSUM- rekisteriin

Ç LOPPU ^

VSUM (vaunun summapaino)-rekisteri nollataan aina uuden vaunun punnitusta aloitettaessa.

(48)

Vastaava kiskokytkin

XMASK 01000100 tämän ykkösen merkitys selviää kohdas­

sa telipunnitus; 4 teliä/vaunu i

YMASK ; juna saapuu KK1:n suunnasta KK3 : n

00010000

11 11 H

00000001 5

I Vaunun -Ф-

II akseliin

punnitus I

Vaunu- painon

talletus

\z

Tulostus-oh­

jelmaan pai­

nettaessa lo- petuspaini- ketta

Hälytys-oh­

jelmaan ju­

nan nopeu­

den ylittä­

essä kynnys­

arvon

Mikäli juna saapuu kiskokytkin 1:n suunnasta, toimii kisko- kytkin 3 punnituksen aloitushetken määrääjänä ja päinvastoin.

Kiskokytkin 2 aloittaa kummassakin tapauksessa ajan laskennan nopeuden tarkistusta varten.

Maskirekisterit asetetaan kohdassa 'junan suunnan päättely' seuraavasti eikä niitä muuteta punnituksen aikana.

48

AKSELIPUNNITUS 4.2.3.6

(punnitustapa 1)

ALKU

Junan suunnan päättely

^T-

I I

Veturin akselien

Vaunun I akselin punnitus

KK1

KK2

KK3

Г

•H

(49)

Akselin

ohitus --- #4 I

Hälytys- ohjelmaan Vaunupai-

non tal­

letus

Tulostus- ohjelmaan

Maskirekistèrit asetetaan kuten akselipunnituksessakin ja ne säilyvät muuttamattomina punnituksen aikana. Telin jäl­

kimmäisen akselin ohitus varmistetaan kiskokytkin Y:n avul­

la. (Akselin ohitusohjelma = KKY) I I

-H I I I A_

Telipunnitus kahden telin tapauksessa tapahtuu lähes samoin kuin akselipunnituksessakin (punnituksen aloitus tapahtuu samassa vaiheessa ja vaunun paino muodostuu kahden punni­

tuksen summana), ainoana erona on, että telin jälkimmäi­

sen akselin tulee ohittaa kiskokytkimet aiheuttamatta mi­

tään punnitus- tai ajanlaskentatoimintoa.

ALKU

Junan suunnan päättely

Vaunun II telin punnitus Vaunun I telin punnitus Akselin ohitus Veturin akselien eliminointi

I------

1

II

(50)

50 4.2.3.8 TELIPUNNITUS; 4 teliä/vaunu (punnitustapa 3)

Tässä tapauksessa vaunupaino muodostuu neljän punnituksen summasta. Lisäksi joka toisen punnituksen on alettava eri kohdassa kuin toisen. Toisin sanoen maskirekistereiden si­

sältöä on käytävä muutamassa aina punnitusten välissä.

^ ALKU ^

Junan suunnan päättely

% Veturin aks: ien

eliminointi

Vaunun I telin punnitus_______

Akselin ohitus Maskirek: ien muuttaminen

Vaunun II telin punnitus ---

Akselin ohitus |--- ^-|

I

Maskirek: ien

muuttaminen

I

Vaunun III te­ ---U

lin punnitus

I

I

-I

Akselin ohitus -n

I

Maskirek: ien I muuttaminen

I

Vaunun IV te­

lin punnitus I Akselin ohitus -

I Maskirek: ien

muuttaminen

\z Vaunupainon

talletus Tulostus-

ohj elmaan

Hälytys- ohjelmaan

(51)

00000001 00010000

; juna saapuu KK1: n suunnasta KK3 : n

XMASK

II II tl

YMASK 01000100

Joka toisen punnituksen aikana maskirekisterien tuleekin olla näin asetettuna. Joka toisen punnituksen aikana telman tulee kuitenkin olla

ase- seuraava:

XMASK 01000100

00010000 00000001

; juna saapuu KK1:n suunnasta KK3 : n

YMASK

v h ti

3

Tässä onkin maskien käytöllä saavutettu asioiden yksinkertaisuus: maskirekisterien muuttaminen voi"

aina tapahtua yhdellä ja samalla ohjelmalla, joka ainoastaan vaihtaa X- ja Y-maskirekisterien sisäl-

Kiskokytkinsignaalien tuominen ottorekistereiden tiettyi- hin hitteihin sekä kiskokytkin 2:ta tutkittaessa maskire- kisterissä oleva ylimääräinen bitti palvelevat juuri tätä maskirekisterien muuttamisen yksinkertaistamista. Junan

suunnan päättelyvaiheen jälkeen itse ohjelman ei tarvitse olla tietoinen maskirekisterien sisällöstä, saati sitten niitä todellisuudessa vastaavista kiskokytkimistä!

Maskirekisterien käsittely neljän telin vaunujen punni­

tuksessa.

Junan Suunnan päättelyvaiheessa asetetaan maskirekisterit seuraavasti:

KK1

KK2

KK3 %Ф

H H

cd?I:

^

HO

£

rh

CD

iu:

M H

CD

p:rh•H

n!y

ti'CD

h•H•HCfl

cd

H

H

cdh

cd

CO

ti

o:

H

(52)

52

4.3 MUISTIN KÄSITTELY

(53)

Sivu (1 sivu = 256 tavua á 8 bittiä) O X

8

48

Ohjelmamuisti (lukumuisti)

sivut 0-16„ (3,75 Kb)

1 08 /

e

1 48

208

Työmuisti

(luku/kirjoitusmuisti) sivut 20g-338 (3 Kb) Koneen

muistiava- / ruus

148 \ \

>

X

sivut 0-77 yht. 16 Kb

8 308

348

408

708

74 8

(54)

54

4.3.1.1 Työmuisti (luku/kirjoitusmuisti)

Järjestelmässä on käytetty työmuistia 3 kilotavua, joka sijoittuu muistiavaruudessa sivuille 20 Työmuis­

ti jakaantuu ns. systeemialueeseen ja pesäaltaaseen. Sys- teemialueen muodostaa 79-merkin mittainen tulostuspuskuri

8 338 •

sekä erilaisten osoittimien ja kiinteiden tiedontallennus- paikkojen varaama alue.

Pesäallas on jaettu kokonaisuudessaan 8 tavun mittaisiin kenttiin, joita kutsutaan pesiksi,

raava.

Pesän rakenne on seu-

0 1 2

Pesän runko 3 >

4 5

6 Pesien ketjutukseen

käytettävä osoitin 7

Pesän runko-osa käytetään paino- tai muiden tietojen tal­

lentamiseen tai ylimääräisille osoittimille.

Muistin initialisoinnin jälkeen pesäaltaan kaikki pesät ketjutettu vapaaksi muistiksi. Vapaan muistin ensimmäistä pesää osoittaa systeemialueella oleva AVAIL-osoitin.

on

(55)

Systeemialue (osoitteet oktaalisina)

Sivu Alaosoite Nimi Selitys

020 000 - 116 79 merkin mittainen tulostus- puskuri

II 117 KIVI

Kirjoittimen rivilaskuri 11

120

,

121

Z Osoitin pinon päällimmäi­

seen junatauluun

tl 122, 123 AVAIL Vapaan muistin pino-osoitin 11 124, 125 CTR

Juna-osoittimet i

II 126, 127

PRTR 11 130, 131

cw

Vaunuosoittimet

(Osoittimien tarkemmat seli­

tykset kohdassa "Muistin hal­

linta" ) II 132, 133

zw

II 1 34 - 137 PTR

Perustaararekisteri II 140 - 143

JNO Junanumeron tallennuspaikka

II 144 RNO

Runkonumeron tallennuspaikka

II 145 STATUS

Status-tavun tallennuspaikka II 146 - 1 51

OJNO Aikaisemmin punnitun junan numeron tallennuspaikka 11 1 52 ORNO Aikaisemmin punnitun junan

runkonumeron tallennuspaikka II 153 - 154 ELÄ

Eliminoitavien akselien luku­

määrä

II 155 PTAPA Punnitustavan numero

II 156 XMASK

Kiskokytkinten tarkkailussa tarvittavat maskirekisterit.

II 1 57 YMASK >

(56)

56

Sivu Alaosoite Nimi Selitys

020 160 - 163 PR Punnitusrekisteri

II 1 64 - 1 67 NR Näyttörekisteri

II 170 - 177 JSUM Junan summapaino tl 200 - 205 VSUM Vaunun summapaino

II 206, 207 DAY Päivä

II '210, 211 MONTH Kuukausi

Päivitettävää päivämäärä- ja kellcnaikatie- toa

II 212, 213 YEAR Vuos i

II 214, 215 HOUR Tunnit

II 216, 217 MIN Minuutit

II 220, 221 ODAY

II 222, 223 OMONTH Tulostuksen yhteydessä tar- ' vittavia päivämäärä- ja

kellonaikatietojen tallen­

nuspaikkoja

II 224, 225 OYEAR

II 226, 227 OHOUR

II 230, 231 OMIN

II 232, 233 VNO Vaunun numero

11 234 TEST Muistin säilymisen testaus- paikka

Pesäallas käsittää osoitteet 020.240 - 033.377 ( 364 8:n tavun mittaista pesää)

(57)

4.3.2.1 Asetetut vaatimukset

Yleistä

Järjestelmä suorittaa kolmenlaatuisia punnituksia:

brutto-, taara- ja nettopunnituksia. Nettopunnituksen yhteydessä koneen muistissa tulee olla aikaisemmin pun­

nittuna (tai sinne manuaalisesti kirjoitettuna) junan taara- tai bruttopainot.

saman (Järjestelmä suorittaa automaattisesti tästä tarkastuksen ennen nettopunnituk­

sen aloittamista.

Talletusten kesto

Punnitustuloksia on voitava säilyttää muistissa

a) vain punnitusilmoituksen kirjoittamiseen asti.

lostuksen jälkeen tiedot poistetaan muistista,

nettopunnituksen yhteydessä tiedot aina tuhotaan tu­

lostuksen jälkeen.

Tu- Es im.

b) Seuraavaan saman junan nettopunnistukseen asti. (Kos­

kee vain taara- ja bruttopainoja.) Nettopunnituksen yhteydessä tiedot käytetään hyväksi, jonka jälkeen ne poistetaan muistista.

c ) Kunnes ne erillisellä ohjelmalla poistetaan muistista.

Tämä koskee vain taarapunnitustuloksia ja painojen sa­

notaan tällöin olevan talletettuna vaunurekisteriin (puhutaan myös taararekisteristä).

Talletettavat tiedot

Jokaisesta punnituksesta tulee jäädä muistiin paitsi nupainot myös seuraavat tiedot:

vau-

(58)

58 Junanumero

Runkonumero

Punnituksen päivämäärä Punnituksen kellonaika Koko junan summapaino

' Käytetään junan identifioinnissa

Onko kyseessä taara-, brutto- vai nettopainot Tieto tailetustavasta (talletuksen kestosta)

Tulostuksen asettamat vaatimukset

Tulostuksessa vaunu n:o 1:n tulee aina olla junan tie­

tyssä päässä, oli punnitussuunta (eli vaunujen punnitus- järjestys) kumpi tahansa. Ts. tarvittaessa vaunut on voitava tulostaa punnitukseen nähden päinvastaisessa järjestyksessä.

4.3.2.2 Tietorakenteiden kuvaus

Kaikki punnitustulokset talletetaan 8 tavun mittaisista pesistä muodostettuihin, erikoisesti tätä sovellutusta varten suunniteltuihin rakenteisiin. Näiden osina toimi­

vat ns. Junataulu (1 pesä), infotaulut (4 pesää) ja nutaulut (0-n pesää).

vau-

Junataulu sisältää neljä kappaletta osoittimia:

1 . Osoitin seuraavaan junatauluun. Junataulut muodostavat keskenään ketjutetun pinon, jossa viimeksi punnitun ju­

nan junataulu on päällimmäisenä, mii systeemialueella oleva Z-osoitin.

Pino-osoittimena toi-

г.

Osoitin junan info-ketjuun, muodostama ketju,

ki junakohtaiset tiedot (j status-tavu

kä koko junan summapaino).

Info-ketju on neljän pesän Pesien runko-osiin talletetaan kaik­

una- ja runkonumerot, junan , punnituksen päivämäärä ja kellonaika + )

se-

+) Status-tavusta ilmenee talletustapa, onko kyseessä brutto-, taara- vai nettopunnitus sekä junan tulosuun­

ta.

Viittaukset

LIITTYVÄT TIEDOSTOT

” Kyllä täällä on menoja taas niin, ettei tahdo muuta keritä kuin muuttamaan talosta taloon. Torstaina oli Tuulikin päivä, sitten lauantaina Matin päivä ja

Aineistossa nollapersoonaisia modaaliverbidirektiivejä käytetään usein silloin, kun virkailija ei käsittele itsestään selvänä, että asiakas tulee noudattamaan saamaansa

Lau- seissa Juna oli hyvin pitkä, Juna oli kovin pitkä ja Juna oli oikein pitkä ilmausten pe- rustehtävä on yhä sama, ominaisuuden suu- ren määrän ilmaiseminen, ja funktioltaan

1.. a) Kun leijan 144 o k¨ arki yhdistet¨ a¨ an vastakkaiseen k¨arkeen, leija jakautuu kahteen yhtenev¨ aiseen tasakylkiseen kolmioon, joissa kantakulmat ovat 72 o ja k¨arkikulma

Tarkastellaan Esimerkin 8.1 aspiriinitutkimusta (Alaluku 8.1, Aspirii- niaineisto, Taulukko 8.2).. Mit¨ a p¨ a¨ attelet

Ohjelnassa tarvittavat lulrut, jotka ovat tavaLlisestl para- netreina esiintyviä vakioita, kirjcj-tetasn normaaleja lukujen esitystapaja käyttäen, Sallittuja ovat siis

marraskuussa 2004 ilmestynyt teos Muistiin painettua – Kansalliskirjaston kulttuuriaarteita on lajissaan ensimmäinen laaja katsaus kirjaston kokoelmiin ja lukuisiin

Tutkimukseen osallistuneet ihmiset, myös luottamustoimissa ja liitospää- töksissä mukana olleet, kritisoivat voimakkaasti sekä itse liitosprosessin toteutta- mista että uuden