Ensto/Koodin dokumentaatio/Ohjaus
Tässä tiedostossa on funktioita, joita käytetään releiden ohjaamiseen.
(Rivi 3)Koodin alussa taas tuodaan tarvittavia moduuleja. Funktio control on varsinainen funktio, jota kutsutaan koodin ulkopuolelta ja funktiot relayOn, relayOff, controlRelay ja selControl ovat apufunktiota.
(Rivit 5-15)Funktio relayOn nostaa annetun releen pinnin, aktivoiden releen. Funktio relayOff sammuttaa annetun releen.
(Rivit 17-24)Funktio controlRelay kutsuu edellisiä funktiota annetun contVal-arvon mukaan.
(Rivit 26-34)Funktio selControl ottaa kaksi parametria, autCont ja manCont. AutCont kertoo onko automaattinen ohjaus aktivoinut ja haluaa sulkea tämän kuorman. ManCont kertoo haluaako manuaalinen ohjaus sulkea tämän kuorman.
Näiden avulla päätellään pitääkö rele sulkea, tieto joka palautetaan. Jos molemmat ovat nolla tai yksi, asetetaan arvo vastaavaksi. Jos taas vain toinen on yksi, asetetaan arvoksi silti yksi. Toisin sanoen jos jompikumpi tai molemmat haluavat sammuttaa kuorma, kuorma sammutetaan.
(Rivit 36-40)Funktio control on pääfunktio, jota kutsutaan tiedoston ulkopuolelta. Se ottaa parametreikseen relayPinNumber, eli ohjattavan releen pinnin numeron, autoCont:in, eli automaattisen ohjauksen arvon ja manCont, joka kertoo manuaalisen ohjauksen arvon. Jos nämä ovat nolla, niin rele on pois päältä, eli kuormassa kulkee virta. Jos ne saavat arvon yksi, niin rele aktivoituu ja sulkee kuorman.
Aluksi lopullinen ohjausarvo selvitetään selControl-funktion avulla, jonka jälkeen ohjaus tehdään controlRelay-funktion avulla.