Alkalmazás optimalizálása

Minden számítás egy bizonyos számítási időt igényel. Ez problémákhoz vezethet, ha nagyon nagy projektek vagy nagyobb műveletek valósítása történik. Az összesen elért ciklusidő a rendszermonitor segítségével jobboldalt felül látható.

Vegyék figyelembe az adathordozó sorát. A sor csak akkor használatos, ha az adatokat nem lehet egyszerre olvasni és írni. Ez főleg nagy projektek vagy rossz hardver esetén látható. A sor a normál üzem során 1%-ot soha nem halad meg.

Az alkalmazás működése

A teljesítményvizsgálat megértéséhez először az alkalmazás működését kell ismertetni. A ciklusidő alapjai mellett, vannak még kiterjesztett módszerek, amelyek csak az Antcas SPS-ben valósultak meg:

  • Ha egy elemben nem észlelnek változásokat, akkor az egész elemet parkolják és nem számítanak tovább.
  • A globális értékek változása esetén kettős ciklust hajtanak végre. Az SPS ekkor csak egy milliszekundumra vár.
  • Időkritikus értékeknél a számításhoz timeout-okat állítanak be.
  • A kimeneti kommunikáció (értékek küldése vagy mentése) aszinkron módon történik és nem csak a számítás után.
  • Minden változó remanens és parkolás előtt, vagy legkésőbb két másodperc múlva mentésre kerül.

A projekt elemzése

Azt, hogy melyik alkalmazási elemek igényelnek nagyon nagy számítási teljesítményt, a teljesítményvizsgálat segítségével lehet kideríteni.

Optimizálási tippek

  • Ne használja az ET kimenetet TON, TOF, TP időzítőknél. Helyette UPTIME-ot lehet alkalmazni.
  • A VISUSET és a VISUDTSET SET bemenetét soha ne hagyják több funkcióblokkon egyszerre aktív állapotban.
  • Nagyobb vagy komplexebb számításokat, ha lehetséges, egy külön elemből számítson ki.
  • Matematikai műveleteket CALCULATE segítségével végezzen el.
  • Loggert lehetőleg nagyabb intervallummal használjon. Tíz perc hőmérséklet méréshez teljesen elég. Az intervallumot dinamikusan is beállíthatja.
  • Használjon nagyobb intervallumokat PT-nél a CTRL_PID, SHUTTER, DIMMER stb. funkcióblokkoknál.
  • Dinamikus időbeállítások változtatásakor vigye figyelembe, hogy ezek ne változzanak folyamatosan. Ez például RGB-szekvenciák esetén a FADE funkcióblokkal előfordulhat.
  • Egyszerűsítsen komplexebb feladatokat. Az especialmente karakterláncok keresése nagyon számítógép-igényes. Helyette használja az EXPLODE vagy PREG_SPLIT funkcióblokkot FIND és SUBSTR helyett. Az értékeket megfelelően elmentik.
  • Az HTTP-lekérdezések feldolgozása nagyon sok memóriát használhat fel.
  • Csökkentse a kapott telegrammokat. Például egy érték dimmerzésénél attól függően, hogy milyen buszrendszert használ, a visszajelzés késhet.
  • Növelje az SPS ciklusidőit.