Aliohjelmat

Kun ohjelma sisältää tiettyjä kiinteitä jaksoja tai useasti toistuvia muotoja, voidaan ohjelmoinnin yksinkertaistamiseksi nämä jaksot tai säännönmukaisuudet asettaa muistiin aliohjelmina.
Aliohjelma voi kutsua toista aliohjelmaa.  Kun pääohjelma kutsuu aliohjelmaa, sitä pidetään yksisilmukka aliohjelmakutsuna.  Maksimissaan  voidaan suorittaa nelinkertainen aliohjelmakutsu kuten alla.
 
 

Huomioitavaa aliohjelmien käytössä:

M98 on käsky mennä aliohjelmaan P:n osoittamaan ohjelmanumeroon.
Aliohjelma voidaan kutsua myös G65 käskyllä, ja tämä käsky soveltuu myös argumenttien tiedon siirtoon parametrisissa ohjelmissa.
P ilmoittaa muistiin tallennetun ohjelmanumeron, jota kutsutaan suoritettavaksi.
L osoitteella voidaan ohjelmoida toistojen lukumäärä, oletus on yksi (1).
Kun aliohjelmassa tulee vastaan M99, se on käsky palata kutsuvaan ohjelmaan kutsun jälkeiseen lauseeseen. (katso poikkeusmahdollisuus)
Kun toinen aliohjelma kutsuu aliohjelmaa on suoritusjärjestys sama kuin edellä.
Jos osoitteella P määriteltyä aliohjelman numeroa ei löydy, tulee näyttöön hälytys.
MDI-toiminnossa ei aliohjelmakutsua "M98P " voi käyttää.

Poikkeus paluuosoitteeseen:

Kun lauseennumero määritellään osoitteella P aliohjelman viimeisessä lauseessa, ohjaus ei palaa kutsun jälkeiseen lauseeseen, vaan P:n osoittamaan lauseeseen kutsuvassa ohjelmassa.

Huom! Jos M99 käsky suoritetaan pääohjelmassa, ohjaus palaa pääohjelman alkuun ja aloittaa sen heti uudelleen.
 

Esimerkki aliohjelman käytöstä muodollisuuksien hoitamiseen:

Kutsuva ohjelma:

O2001 ;
T1;
G54 ;
M98 P8010 ; kutsutaan teränvaihdon aliohjelmaa
….
….
….
….
M98 P8020 ; hoitaa lopetusmuodollisuudet
M30 ;
 

O8010 (hoitaa teränvaihdon)
G00 G90 G80 G49 G40 M5 Z300.
G91 G28 Z0
G30 Y0
M06
G90
M99
 

O8020  (lopetusmuodollisuudet)
G00 G90 G80 G49 G40 M5 Z300.
G91 G28 Z0
G30 Y0
M33
G90
M99
 

Huom! Aliohjelmien käytöstä työstöratojen toistoon katso mm. esimerkkiohjelma 3.
 

Materiaalin sisällysluetteloon