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.