Sovelluksen Optimointi
Jokainen laskenta vaatii tietyn määrän laskentaaikaa. Tämä voi johtaa ongelmiin, jos hyvin suuria projekteja tai suurempia operaatioita toteutetaan. Kokonaiset sykliajat voidaan näyttää kytkemällä järjestelmävalvonta päälle oikeasta yläkulmasta.
Ota huomioon datan kantajajono. Jonoa käytetään vain, jos tietoja ei voida enää lukea ja kirjoittaa samanaikaisesti. Tämä on erityisen havaittavissa suurissa projekteissa tai väärässä laitteistossa. Jono ei saisi normaalissa toiminnassa koskaan ylittää 1 %.
Sovelluksen Toiminta
Jotta suorituskyvyn tarkastus voidaan ymmärtää, on ensin selitettävä sovelluksen toiminta. Lisäksi peruskäsitteiden lisäksi syklin ajasta, on vielä laajennettuja menetelmiä, jotka ovat toteutettu vain Antcasin SPS:ssä:
- Jos muutoksia ei havaita elementissä, koko elementti pysäytetään ja sitä enää lasketaan.
- Globaalien arvojen muuttuessa ajetaan kaksoissyklin. SPS odottaa sitten vain millisekunnin.
- Ajoitusaikoja asetetaan laskettaessa aikakriittisiä arvoja.
- Lähtöviestintä (arvojen lähettäminen tai tallentaminen) tapahtuu asynkronisesti eikä vasta laskennan jälkeen.
- Jokainen muuttuja on pysyvä ja se tallennetaan ennen pysäyttämistä tai viimeistään kahden sekunnin kuluttua.
Projektin Analyysi
Jotta voidaan selvittää, mitkä sovelluksen elementit vaativat hyvin suurta laskentatehoa, voidaan käyttää suorituskyvyn tarkastusta.
Vinkkejä Optimointiin
- Älä käytä timerin TON, TOF, TP lähtöä ET. Sen sijaan voidaan työskennellä UPTIME:n kanssa.
- VISUSET ja VISUDTSET:n syöttö SET ei saa jäädä aktiiviseksi useisiin toimintosarjoihin samanaikaisesti.
- Suuremmat tai monimutkaisemmat laskennat, jos mahdollista, lasketaan erillisessä elementissä.
- Matemaattisia operaatioita voidaan laskea CALCULATE:n avulla.
- Käytä loggereitä mahdollisimman suurilla väliajoilla. Kymmenen minuuttia lämpötilalle riittää täysin. Väliajan voi myös asettaa dynaamisesti.
- Käytä suurempia väliajoja PT toimintosarjoissa CTRL_PID, SHUTTER, DIMMER jne.
- Huomioi dynamisten aikasyöttöjen muuttuessa, että ne eivät muutu jatkuvasti. Tämä voi tapahtua esimerkiksi RGB-sekvensseissä toimintosarjan FADE kanssa.
- Yksinkertaista monimutkaisempia tehtäviä. Erityisesti merkkijonoissa etsiminen on hyvin laskentatehokasta. Käytä toimintosarjaa EXPLODE tai PREG_SPLIT sen sijaan, että käytät FIND ja SUBSTR. Arvot tallennetaan vastaavasti väliaikaisesti.
- HTTP-pyynnöiden käsittely voi käyttää paljon muistia.
- Vähennä vastaanotettuja viestejä. Esimerkiksi arvon himmentämisessä voi riippuen bussijärjestelmästä palautteen viivästyminen olla hidasta.
- Kasvata SPS:n syklin ajoja.