Mely funkciók igazán fontosak az offline programozáshoz? A sok lehetőség miatt a megfelelő szoftver kiválasztása a robothoz zavaró lehet. Íme 5 olyan funkció, amelyet biztonságosan elkerülhet.
Néhány évvel ezelőtt kerestem a piacon egy jó szimulátort a robotalkalmazásomhoz. Szoftverek tesztelése után, szoftverek után, szoftverek után nem jutottam sehova.
Úgy tűnt, hogy mindegyik csomag tartalmazott néhány olyan funkciót, amelyek használhatatlanná tették az igényeimnek. Egy szoftver nagyon egyszerűvé tenné egy új robot létrehozását, de nem képes API-n keresztül kommunikálni. Egy másik szoftver nagyon jól együttműködne más programokkal, de a fizika teljesen instabillá válna, látszólag véletlenszerűen.
Elkezdtem kérdezni magamtól: „Milyen tulajdonságok vannak igazán szükséges a jelentkezésemhez?”
Hirtelen rájöttem, hogy a „legjobb” robotszimulátort kerestem. Ehelyett azt a csomagot kellett volna keresnem, amely a lehető legkönnyebbé tette az életemet, miközben csak azokat a funkciókat biztosítja, amelyekre valóban szükségem volt.
Offline programozással ez is jó stratégia. Keressen olyan szoftvert, amely megkönnyíti az életét, miközben biztosítja a szükséges funkciókat. Kerülje azokat a funkciókat, amelyekre nincs szükség, vagy amelyek megnehezítik az életét.
A közelmúltban egy segítőkész felhasználó listát írt a funkció iránti kérésekről a fórumunkon. Megakadt a szemem. Néhány kérésnek sok értelme volt, de néhány közülük feleslegesnek tűnt az offline programozáshoz. Eszembe jutott a múltbeli dilemmám, és arra késztetett, hogy elgondolkozzam:
Mely funkciók nem szükségesek offline programozáshoz?
Egy pillanat múlva elmondok ötöt.
Mi nem az offline programozási csomag?
Először is tisztázzuk, mi az offline programozószoftver és mi nem.
Az offline programozószoftver célja, hogy lehetőséget biztosítson a robot gyors és egyszerű programozására, miközben maximalizálja a termelékenységet.
Ezért az offline programozási (OLP) szoftvernek könnyen használhatónak, megbízhatónak kell lennie, és a termelékenység javítására kell összpontosítania.
Ez az, ami az OLP.
Íme, mi nem:
Az OLP nem egy virtuális világ rendkívül valósághű modelljeinek szimulátora. Egy jó OLP-csomagnak nem szabad minden tárgyat, részecskét és fénysugarat pontosan modelleznie egy ultrarealisztikus világmodellben.
De mi van, ha nagyon valósághű szimulációt akarok!?
Akkor nem akar offline programozást!
A szimulátorok nagyfokú realizmusához egészen más funkciókra van szükség, mint a jó, hatékony offline programozáshoz.
Azok a funkciók, amelyek ezt a valósághűséget lehetővé teszik, gyakran csökkentik a robotprogramozás termelékenységét és megnehezítik a használatát. Sokat kell babrálni, hogy „jól működjön a szimulátor”, ami több programozást és kevesebb termelékenységet jelent.
Ha olyan helyzetben van, hogy ultrarealisztikus robotszimulátorra van szüksége, akkor valószínűleg valamilyen (akadémiai vagy ipari) kutató vagy. Valószínűleg összetett vezérlőalgoritmusokat fejleszt, és szeretné ezeket a lehető legpontosabb szimulált robottal tesztelni. Ez nagyszerű, de nem erre való az offline programozás.
5 Az offline programozási szoftver szükségtelen funkciói
Íme öt olyan szolgáltatás, amelyek általában nem szükségesek az OLP szoftverben. Azért mondom, hogy „általában”, mert lehetnek kivételek, de a legtöbb esetben nincs szükség ezekkel a funkciókkal rendelkező szoftverekre.
1. Fizika
Ez egy nagy. Sok robotszimulátor tartalmaz fizikai motorokat, amelyek modellezik a virtuális világ erőit. A fizikai motorok lehetővé teszik például egy labda létrehozását, amely a földre esik, és „realisztikus” módon pattan.
A fizika szükséges bizonyos típusú robotszimulációkhoz; például a haladó fogástervezők, a gyaloglórobot szimuláció és a lépcsőzés algoritmusainak tesztelésekor. A fizika használatának azonban ára van – nyakfájás! Nem tudom megmondani, hány órát töltöttem azzal, hogy „működjön a fizika”, ahelyett, hogy magát a robotprogramozást végeztem volna.
Szinte minden OLP-alkalmazáshoz nem szükséges a valósághű fizika, és nem éri meg a fejfájást. Például egyszerűen be szeretné programozni a robotot, hogy felvegye a labdát és tegye az asztalra. Nem érdekel, mennyire valósághűen pattog a labda, amikor az asztallapot éri.
2. Fejlett felületmodellezés
A felületmodellezés csak akkor igazán fontos, ha számítógépes játékot, termékbemutatót vagy CGI-filmet készít. Lehetővé teszi a grafikusok számára, hogy valósághű felületeket és textúrákat adjanak modelljeikhez, ami javítja a valósághűséget. Ez azonban pusztán esztétikai jellemző. A robotszimulációk esetében ritkán éri meg a fáradságot.
Offline programozás esetén nem igazán érdekel minket, hogy a modellek mennyire valósághűek. Néha hasznos, ha meg tudjuk választani az objektumok színét – hogy meg tudjuk különböztetni őket –, de nagyjából ennyi.
3. Árnyékok és összetett világítás
Hasonló funkció, amelynek nincs értelme offline programozáshoz, a fejlett világítás. Bár az árnyékok és a bonyolult világítási beállítások vonzóbbá tehetik számunkra a virtuális jelenetet, ez nem segíti a robotprogram teljesítményét.
Azt gondolhatja, hogy a világítás fontos, ha robotlátást használ az alkalmazásban. Ezzel azonban van egy probléma: nagyon nehéz megbízhatóan tesztelni egy látásbeállítást szimulátorban, mert a valós világ mindig (vizuálisan) zűrzavarosabb, mint egy virtuális világ. Sokkal jobb megoldás, ha egyszerű, fizikai tesztet végez a látásérzékelővel, és teszteli a valós környezetben.
4. Nagy felbontású renderelés
A renderelés egy durva virtuális jelenet csinos képpé vagy videóvá alakításának folyamata. Leggyakrabban akkor használják, amikor még nem létező termékekhez hoz létre marketinganyagokat. Egy CAD-csomag vagy 3D-s modellezőszoftver a modellt jelenetté tudja renderelni, háttérrel, világítással és felületmodellezéssel kiegészítve.
Offline programozás esetén ennek a realizmusnak nincs értelme. Semmit nem biztosít a robotprogram funkcionalitásához, és sok felesleges munkát igényel (pl. világítás beállítása, felületek és hátterek kiválasztása stb.).
5. Fejlett CAD/CAM funkciók
Az OLP-csomagok nem számítógéppel segített tervezési vagy gyártási (CAD/CAM) csomagok. Valójában, ha olyan szoftvert talál, amely azt állítja, hogy mindkét feladatot egyformán jól teljesíti, gyanakodjon.
Elmúltak az egyetlen szoftvercsomag napjai, amely mindent megtesz. Napjainkban a legjobb szoftverek nagymértékben megcéloznak bizonyos funkciókat. Az OLP-nél ez a funkció a robotok programozása.