PLC-luonnos
Suunnitelma siitä, miten valmis TwinCAT-ohjelma tulee toimimaan: mitä ohjauslogiikka päättää joka skannauskierroksella, miten taajuusmuuttajaa ohjataan, ja miten hälytykset ja mittaukset kirjautuvat. Tämä on periaatetason suunnitelma kokonaisuudesta — ei yksityiskohtainen koodikaavio, eikä kuvaus siitä missä vaiheessa toteutus juuri nyt on.
Ohjelman toiminta selkokielellä
Sama logiikka kuin yllä olevassa kaaviossa, mutta vaihe vaiheelta kirjoitettuna. Tämä ei ole oikeaa ohjelmointikieltä, vaan yksinkertaistettu kuvaus siitä, missä järjestyksessä ja millä ehdoilla ohjelma tekee päätöksiä.
Pääsilmukka (toistuu 100 kertaa sekunnissa)
JOKA KIERROKSELLA (10 ms):
AJA kuljettimen ohjauslogiikka
AJA yhteys taajuusmuuttajaan
LUE kellonaika logiikalta
JOS havaitaan hälytys:
kirjaa se hälytyslokiin
TALLENNA mittauksia tiedostoon (kun kirjaus on käynnissä)Käynnistysedellytykset ja lukitukset
KÄYTTÖ ON SALLITTU VAIN JOS: käyttölupa päällä JA yhteys taajuusmuuttajaan kunnossa JA nopeustieto kelvollinen JA mekaaniset asetukset (pituus, pyörän koko ym.) järkeviä JOS yhteys katkeaa tai käyttölupa poistuu: pysäytä kaikki heti estä uudelleenkäynnistys, kunnes käyttäjä on vapauttanut kaikki ohjauspainikkeet
Automaattiajo ja suunnanvaihto
JOS "Käynnistä" painettu JA käynnistys sallittu JA kuljetin seisoo:
valitse ajosuunta sen mukaan, kummalla puolella rataa ollaan
käynnistä automaattiajo
AUTOMAATTIAJON AIKANA JOKA KIERROKSELLA:
LASKE jäljellä oleva matka radan päähän
LASKE tarvittava pysähtymismatka taajuusmuuttajan hidastusajasta
JOS jäljellä oleva matka ≤ tarvittava pysähtymismatka:
ala hidastaa kohti nopeutta 0
KUN pysähtyminen on varmistunut (nopeus lähellä nollaa 0,2 s ajan):
käännä suunta ja jatka ajoaKäsiajo
JOS käsiajo valittu JA kuljetin seisoo:
siirry käsiajotilaan
KÄSIAJOSSA:
aja eteen- tai taaksepäin sen mukaan, kumpaa nappia painetaan
JOS molemmat napit vapautettu:
pysäytä (taajuusmuuttaja hoitaa oman rampituksensa)
(käsiajotilaan ei voi vaihtaa kesken automaattiajon)Ohjauskäskyt taajuusmuuttajalle
OLETUS JOKA KIERROKSELLA: käyntikäsky pois, nopeus 0 JOS automaattiajo käynnissä JA ei pysähtymässä: käyntikäsky päälle nopeusohje = asetettu nopeus, suunta = valittu ajosuunta JOS käsiajo käynnissä JA nappi painettuna: käyntikäsky päälle, nopeusohje = käsiajon nopeus JOS yhteys taajuusmuuttajaan ei ole kunnossa: pakota käyntikäsky pois ja nopeus nollaan
Yhteys taajuusmuuttajaan (Modbus)
JOKA KIERROKSELLA:
KIRJOITA ohjaussana ja nopeusohje taajuusmuuttajalle
LUE tilasana ja mitattu nopeus takaisin
JOS kirjoitus tai luku epäonnistuu:
merkitse yhteys vikaantuneeksi
odota hetki ja yritä uudelleen
MUUTEN:
merkitse yhteys kunnossa olevaksi
päivitä mitattu nopeustieto ohjauslogiikalleVirtuaalinen sijainti ja anturit
LASKE kuljettimen sijainti integroimalla taajuusmuuttajalta saatua TODELLISTA mitattua nopeutta ajan yli ASETA anturi S1 päälle, jos sijainti on radan alkupäässä ASETA anturi S2 päälle, jos sijainti on keskialueella ASETA anturi S3 päälle, jos sijainti on radan loppupäässä (Nämä anturit lasketaan yhä sijainnista — eivät vielä oikeita fyysisiä rajakytkimiä radalla)
Hälytysloki
JOS havaitaan hälytys:
tallenna kiertävään 100 rivin lokiin:
kellonaika, hälytyskoodi ja -kuvaus,
anturien tilat, sijainti
JOS loki on täynnä (100 riviä):
vanhin rivi korvautuu uudellaMittausten tallennus tiedostoon
KUN käyttäjä käynnistää kirjauksen: avaa tiedosto ja kirjoita otsikkorivi KIRJAUKSEN AIKANA, N. 10 SEKUNNIN VÄLEIN: lisää tiedostoon uusi rivi mittausarvoista KUN käyttäjä pysäyttää tai keskeyttää kirjauksen: sulje tiedosto (tai jää odottamaan jatkoa, jos vain tauko)