Számítási idők csökkentése I. – EDGECAM optimalizálási tippek

Számtalanszor az az érzésem támad, hogy „lelassul” körülöttem minden. „Lassú” az internet, a wifi, az otthoni PC, a hálózatom, a munkaállomásom, ide szó szerint bármit behelyettesíthetek. Ezek az esetek többségében csak érzések, de mi a teendő akkor, ha kézzel fogható a lassulás, a számítási teljesítmény csökkenése ténylegesen mérhető? Milyen EDGECAM optimalizálási tippek jöhetnek szóba?
Műszaki beállítottságú vagyok és egyben kicsit kételkedő is, szeretem alátámasztani vagy cáfolni egzakt számokkal ezeket az érzéseket. Ugyanez igaz a gyártástámogató szoftverek esetében is.

Volt több olyan megkeresésünk is, hogy: „…novemberben jó volt, márciusban pedig csigalassan számol a program…”, „… tegnap még jó volt…”. Ezek általában visszavezethetők valamilyen környezeti beállításra.

 

Miért fontos a számítási teljesítmény vizsgálata CAM környezetben?

Támogató csapatunk feladata, hogy a legjobb tudása szerint segítse az ügyfelek napi szintű munkavégzését: ha szokatlan lassulást látunk vagy indokolatlan számítási időket eredményező megoldásokat tapasztalunk, mindig jelezzük, hogy hol lehet időt megtakarítani.

A lassulás okai többféle forrásból eredhetnek – hardverhiba nélkül is hosszú a lista:

  • Windows operációs rendszer:
    • a Windows 11 alapértelemezetten Kiegyensúlyozott energiaséma szerint települ, ami mobil munkaállomásoknál gond lehet
    • Hálózati kommunikációs hibák
    • Jogosultságkezelésből adódó hiba
  • Szoftverkörnyezet:
    • Párhuzamos üzemeltetés más szoftverekkel
    • Elavult vagy inkompatibilis driverek
    • Beállítások optimalizálásának elmulasztása
  • Használat módja:
    • Alkalmazott komponensek
    • Programozási technikák

Ez a cikk kifejezetten az EDGECAM programozástechnika hatásait vizsgálja, kizárólag a számításhoz szükséges időkre helyezve a fókuszt.

 

Hogyan mérjük a számítási időt és miért fontos?

Szeretnénk tudni, hogy egy szerszámpálya beállítás vagy egy EDGECAM verzió váltás milyen hatással van a teljesítményre? Programon belüli változtatás hatását szeretnénk mérni? Az EDGECAM szoftveres (Windows) környezetét szeretnénk ellenőrizni? EDGECAM-verziók közti számítási időket?

Ügyfél gépén, egy számomra idegen környezetben is kell egy referencia, amihez képest javulást szeretnék elérni, akár a szoftveres környezet beállításainak módosításával, akár a programozástechnika megváltoztatásával.

De hogyan mérjünk, mit vizsgáljunk, hogyan értelmezzük az eredményt?  A klasszikus stopperes mérés a legegyszerűbb, de célszerűbb az EDGECAM automatizálási lehetőségeit kihasználni, például egy egyszerű PCI-szkripttel.

 

Almát nem hasonlítunk a körtéhez!

Ha nem a munkaállomás lecserélése a cél, hanem a lassulások okának feltárása vagy programozástechnika javítása, akkor nem összehasonlítási alap a 13 éves notebook a 13. generációs asztali munkaállomás számítási teljesítménye, mert ég és föld lesz az eredmény.

Értelemszerűen ahhoz, hogy egy módosítás hatása mérhető és hiteles legyen, azonos gépen, azonos szoftveres környezetben kell elvégezni az összehasonlító mérést, lehetőleg több alkalommal. Magától értetődik, hogy ne csak azonos legyen a gép, hanem ugyanaz.

 

Programozástechnika hatása a számítási időre

Gyakori tévhit, hogy egy erős munkaállomás minden problémát megold. Természetesnek vesszük, hogy van egy erős gépünk és egy szoftverünk, „majd kiszámolja”. Az egyszerűbb programoknál néhány 10 másodperc eltérés fel sem tűnik, de mennyi idő alatt számol egy komplexebb feladatot?  Mindig lehet erősebb konfigot venni, de nem gazdaságos félévente munkaállomást cserélni – sokkal költséghatékonyabb az EDGECAM programozási technikák optimalizálása.

Ha ésszerű keretek között maradunk és felidézzük az oktatáson hallottakat egy-egy beállításra vonatkozóan, akkor érthetővé válik a megoldás mögötti számítási igény is. Vegyünk egy egyszerű példát. Pontosabban töltsük is le!

 

Referencia program: EDGECAM 2021.0

A megmunkálást az EDGECAM 2021.0 verzióban mentettem el, hogy a régi- és új verziók közti számítások sebességét is hitelesen mérni tudjuk a későbbiekben is. A régi verziót szándékosan választottam: az adott verzión belüli módosításokat hatását és a verziók közti számítási teljesítményeket szeretném vizsgálni, de nem szeretnék minden verzióban új fájlt létrehozni.

A tartalom egyszerű: egy szerszám, egy nagyolási pálya aktuális előgyártmány alapján létrehozva.

A letöltött állományban található “RegenTimerClearCache.pci” fájlt a Drag&Drop módszerrel – a fájlkezelőből egyszerűen áthúzva az EDGECAM ablakba – bedobtam a megmunkálás ablakába, alább az eredmény:

EDGECAM ablak

Ezt a 26 sec értéket veszem referenciának a továbbiakban.

 

Programozástechnika optimalizálása – előgyártmány típus

Ugyanebben a fájlban létrehoztam egy konkurens programot (az előző programtól teljesen független megmunkálás) és csupán az előgyártmány típusát változtattam meg:

    • Azaktuális előgyártmány és a profil típus közötti eltérés csak beviteli módszerben tér el
    • Egyetlen beállítás módosításával nagyságrendileg 20%-al rövidebb pályaszámítási idő érhető el.

EDGECAM ablak

 

Programozástechnika módosítása – ráhagyás és tűrés helyes viszonya

Bevallom, a Profil előgyártmány típus általában a program elején tud jó megoldás lenni. A ciklusok számának gyarapodásával már erősen „tenyésztett” példafájlt kellene keresnem, ezért vizsgáljuk meg azt a vonalat is, amikor nem engedhetjük el az Aktuális előgyártmányt típust!

Az oktatásokon kiemelt hangsúlyt fektetünk a pályatűrések kérdésére. Nagyolás ciklusról van szó, a Ráhagyás értékkel kifelé toljuk a megmunkálandó geometriát (távolodunk, azaz „ki-offseteljük”), biztosítva a simítási ráhagyást:

EDGECAM ráhagyás

Az EDGECAM rendszerben a ciklusablakokban mindig a Tűrés mező értéke hivatott kezelni az „alakhűséget”. A kisebb érték a szigorúbb beállítás: a kiválasztott geometriától való eltérést minimalizálja, ellenben több számítási időt igényel.

A nagyolási fázisban „csak rombolunk”, így megengedhetőek a nagyobb tűrések és „pontatlanabb” pályák, cserébe rövidebb számítási időt kapunk. Ökölszabályként azt szoktam mondani nagyolásnál, hogy a ráhagyás érték maximum fele legyen a tűrés értéke. Értelemszerűen, a simításoknál már nem engedhetünk az alakhűségből!

A két érték arányának helyes megválasztásával még rövidebb számítási időt értem el.
A szemfülesebbek észrevették, hogy az első képen még 26 sec volt a referencia, a jelenlegi bal oldalon pedig 28 sec a referencia érték, de csalás nincs a számításban: a 31%-ot a kedvezőbb 26 értékből számoltam, a 28-cal ~35% lett volna.

 

EDGECAM verziók közötti számítási idő összehasonlítása

Az EDGECAM fejlesztői több alkalommal is hangsúlyozták, hogy az új verziókban optimalizálták a számítási algoritmusokat és a számítási idő csökkentéséről számolt be.

A fájlt régebbi verzióban készítettem, hogy az újabb verziókkal meg lehessen nyitni attól függően, hogy kinek melyik verzió elérhető a szoftverkövetés lejárati dátuma alapján.
A referencia nagyolásra vonatkozóan nézzünk egy 2021.0 vs 2024.1 verziók közti összehasonlítást, az eredmény magáért beszél:

Az összehasonlítás egyértelmű: az újabb verzió jelentősen gyorsabb számítási időt eredményezett.
A fenti pár kattintás az 50-100-600 utasítást tartalmazó programoknál percekkel csökkentheti a várakozást.

 

Összefoglalás – EDGECAM optimalizálási tippek

A CAM programozások során nem mindig a hardver jelenti a szűk keresztmetszetet –gyakran a beállításokon és programozástechnikán múlik a számítás hatékonysága. Jól jöhetnek az EDGECAM optimalizálási tippek,
Belátható, hogy pusztán „erőből” meg lehet oldani feladatokat, de a csak a „megszokásokra” alapuló programozás nem kifizetődő hosszú távon, célszerű automatizálni legalább egy kimentett PCI segítségével.

 

 

 

Technikusként végzett. Több, mint 5 éve erősíti a Hexagon csapatát.

Szaktudásának megőrzése mellett folyamatosan tágítja ismeretei határait, különösen olyan kulcsfontosságú területeken, mint a programozás, folyamatok finomhangolása és makró programozás.

A szerző további cikkei »

Archívum