Hírek:

Fontos tudnivalók a migrációval kapcsolatban, Kérlek nézd meg a Régi fórumról új fórumra való költözés

Main Menu

UCCNC vezérlő program

Indította gaben, 2024 április 09, 16:54

Előző téma - Következő téma

svejk

Egyébként megcsináltam amit ajánlottál a #4239-ben és működik de valamit elronthattam, mert ha kétszer egymás után kiadom mondjuk az M6T6-ot akkor bizony rávált még egyszer a 6-osra.

Az eredeti M5 makronál nem engedte ezt.  
Gondolom ez a sor felelős érte:

if(Newtool == Currenttool) // Same tool was selected, so do nothing, stop here...
return;

Benne van minkét makroban de mégis... :(

svejk


svejk

No még egyszer elindultam az elejéről és odáig jutottam, hogy ha az:
int Currenttool = exec.Getcurrenttool();

sort kicserélem az általad ajánlott sorokra akkor sajnos engedi a szerszámráváltást...


No de ez most nem is érdekes, mert én továbbra is kötöm az ebet a karóhoz, miszerint csak a TOOL mező értékét figyeli szerszámcserekor.
Ha lefuttatom pl. az
exec.Setcurrenttool(5);
parancsot, akkor be is írja az 5-ös szerszámot és ezentúl úgy is számol, hogy az van bent.

Tehát ha a szerszámcsere végén a *.pro fájlba elmentett szerszám számát az UCCNC első elindításakor visszaírnánk az exec.Setcurrentool paranccsal  -pl a Home gomb megnyomásakor-  akkor nem tévedne el sosem.
(a Home gombot úgy is meg kell nyomni)

Csak ugye azt nem tudom, hogy kell ezt a műveletet végrehajtani. :(

svejk

Oké, a kiolvasási és átírási művelet maga ennyi:

int LastSelectedTool = Convert.ToInt32(exec.Readkey("SvejkAdatai", "LastSelectedTool", "0"));
exec.Setcurrenttool(LastSelectedTool);

Ezt a két sort most egy hotkeyre és egy M20060-a makroba írva az UCCNC indulása után a billentyűt lenyomva szépen beírja az utoljára beváltott szerszám számát és innentől jól is számolja a dolgokat.

De most meg azt kell kitalálni hogy mikor és hogyan fusson le egyszer ez a makro.
A HomeAll gomb mégse jó, mert lehet valaki egyesével veszi fel a referenciákat.

svejk

Hogy a pi..a  kell szintaktikailag helyesen megírni az alábbi sort, hogy a Z szán  "Ztoolrelease", plusz 10 értékre menjen?

exec.Code("G00 G53 Z"+ Ztoolrelease);

svejk

Egyelőre marad a Home gomb...

A HomeAll gombhoz rendeltem a M20060-as makrót majd a makróban hívom meg a 113-es HomeAll buttonnumbert.
Így indulás után amint rákattintok rögtön be is írja az utoljára elmentett szerszámot, és felveszik a tengelyek a referenciát, mely egyébként is kell a szerszámváltás engedélyezéséhez.

dezsoe

Elvileg a C# alakítgatja a típusokat, de jobb, ha te mondod neki, hogy hogyan csinálja.

exec.Code("G00 G53 Z" + (Ztoolrelease + 10.0).ToString());

svejk

Köszi, nem bírtam volna kitalálni soha így ismeretlenül!

svejk

Okszi, kafa minden, végül is elég volt a megfelelő zárójelezés, nem kellett a .ToString().

Megcsináltam mindent, a kis Z mozgástartomány miatt a szerszámokat is kerülgetni kellett  és a bekapcsoláskor is tudja melyik szerszám van bent.
Így most nem is kellett beleírni semmit az M99998 és M99999-be.
Egy kis ártatlannak tűnő makrot kellett csak pluszba írni.
Egyelőre G01-el mozgok, majd ha a gyakorlatban is megy akkor felgyorsítom.

Köszönöm a segítségeket [#worship]!

Jöhet a szerszámbemérés!
(no az még szép falat lesz, mert azt sem tudom, hogy mi a helyes metódus, hogy is van az ipari gépeken)

svejk

Készített-e már valaki fix helyzetű szerszámbemérőhöz olyan makrót, ami ténylegesen ki is tölti a TOOLS fülön a Z hosszkorrekciós táblázatot?

A szerszámcserélő M6 minta makro már tartalmazza a G43 H(aktuális szerszám) parancsot, tehát már valaki foglakozott ezzel a résszel is.

svejk

Olvasgattam, kérdezősködtem, de nekem valahogy nem tetszenek az iparban elterjedt szerszámbemérési metódusok.
(volt amelyiket meg sem értettem :( )

Egy hobby gépnél nem gond a ciklusidő, ezért én inkább azt az utat választanám, hogy minden egyes szerszámcsere után menjen el és mérje be a szerszámot, egy célszerűen a szerszámtár mellett levő fix bemérőponton, írja be a szerszámkorrekciós tárba az értéket, majd ezzel a korrekcióval dolgozzon. (vagy akár nem is kell táblázatba írni, hiszen mindig mérnék)
Így ki lenne küszöbölve a szerszám visszafogási pontatlansága is.
(nem kúpos befogók vannak, hanem csak a szerszám hengeres szárát fogja meg a patron)

No de mihez legyen a viszonyítás?
Az iparban sokszor a főorsó homloka és az asztal közti távolság az "etalon".

Én eddig talán még mindig csak olyan munkadarabot martam, ahol a Z0 a munkadarab felső síkja, így nekem az lenne a célszerű és érthető, hogy felvenném mondjuk a T1-es szerszámmal a munkadarab síkját, majd a többi szerszámot ehhez a T1-hez korrekciózná a többi szerszám Z mozgását


Ha valakinek van pár perce, próbálja már szemellenzős gondolkodásomat helyes útra terelni!

dezsoe

Csak egy gondolat, világmegváltás nélkül. :) Ha nekem fix bemérőm lenne (akár szerszám cserélő nélkül is), akkor biztos, hogy a méréseket gépi koordinátában végezném, mert onnantól mindegy, hogy melyik munka koordináta rendszert használod éppen. Pláne, hogy egy szerszámcserélős gép elég komolynak tűnik ahhoz, hogy több munkadarab is be legyen rögzítve: innen már csak G54 és társai kellenek, hogy ráállj a következőre. Ha elég pontos a homing és a befogás, akkor akár meg is jegyezheti a mérések eredményét, hogy csak a szerszámtár feltöltésekor kelljen mérni.

s5f8tmfv3

Csak egy kérdés az UCCNC Laser-pluginnel kapcsolatban: én szinte csak ezt használom, kép gravírozáshoz vettem meg. Mennyire volna bonyolult dolog megoldani hogy amikor kész a kép akkor vágja körbe a lézer? Mondjuk mikor végzett megállna megkérdezni az előtolást aztán full teljesítménnyel a már kiszámolt méretek alapján rajzolna egy téglalapot. Azt már csak nagyon óvatosan említem meg hogy az ovális vágás igazi csemege lenne.

ium8w94xp

Ha úgy is megállna és kérdezne, akkor ezzel az erővel behívhatsz utána vágáshoz gkódot. Én is ezt teszem.

frob

Esetleg eleve összefűzve a kettő...