CNC plazma Microstep - retrofit
Nastal čas sa trochu podeliť o moje staronové starosti. Mám stroj na delenie plechov. Pôvodne to bol Microstep Plasmacutter s rozmermi cca 1,5x12m.
Riadiaci systém je bez podpory výrobcu, preto som sa dal na tvorbu vlastného na základe LinuxCNC.
na začiatok zopár fotiek:
pôvodný stav niekedy v r.2008, keď sme stroj skrátili na 6x1,5m a oživili. v takomto stave je stroj teraz, skrátený na rozumných 1,5x3m. čakám na lepšie počasie, aby som umyl špinu od 10-ročného skladovania. Nový (budúci) riadiaci systém.
Riadiaci systém je bez podpory výrobcu, preto som sa dal na tvorbu vlastného na základe LinuxCNC.
na začiatok zopár fotiek:
pôvodný stav niekedy v r.2008, keď sme stroj skrátili na 6x1,5m a oživili. v takomto stave je stroj teraz, skrátený na rozumných 1,5x3m. čakám na lepšie počasie, aby som umyl špinu od 10-ročného skladovania. Nový (budúci) riadiaci systém.
Riadiaci systém bude postavený na PIDI cnc (raspbery+karta ne 4 servá+karta na IO)
v PIDI bol nahratý Machinekit.
Teraz potrebujem poradiť s prvým problémom.
Stroj má 3 reálne osi XYZ.
na pohon sú použité 4 servá: X1 X2 Y Z
do INI súboru som nastavil
axes=4
coordinates XYZ
ako mám dať vedieť systému, aby sa X1 a X2 hýbali spoločne a Y=axis2 Z=axis3?
nejak mi to nejde. zatiaľ nehýbem motormi, len mám pripojený enkodér na spätnú väzbu.
v PIDI bol nahratý Machinekit.
Teraz potrebujem poradiť s prvým problémom.
Stroj má 3 reálne osi XYZ.
na pohon sú použité 4 servá: X1 X2 Y Z
do INI súboru som nastavil
axes=4
coordinates XYZ
ako mám dať vedieť systému, aby sa X1 a X2 hýbali spoločne a Y=axis2 Z=axis3?
nejak mi to nejde. zatiaľ nehýbem motormi, len mám pripojený enkodér na spätnú väzbu.
- robokop
- Site Admin
- Příspěvky: 22372
- Registrován: 10. 7. 2006, 12:12
- Bydliště: Praha
- Kontaktovat uživatele:
ty osy musis spojit prez komponentu
tusim ze se jmenuje gantry
ta slouzi k tomu aby vzala pozadavek na polohu v ose X a poslala ho dvoum vystupum ktere mas na te karte v pidicnc
ovsem jsou i chvile kdy potrebujes aby to neposlala do obou ale jen do jedne strany (reference - aby se ti srovnal pravy uhel)
jinak by stacilo to propojit jednoduse v halu prez net stylem pozadovana poloha -> x1 a pozadovana poloha -> x2
proste virtualne to rozdvojit
ae ty to musis udelat prez tu komponentu gantry
a detaily jsou u te komponenty popsane
ano
je to komponenta gantry:
http://linuxcnc.org/docs/html/man/man9/gantry.9.html" onclick="window.open(this.href);return false;
tady mas i nejaky priklady:
https://groups.google.com/forum/#!topic ... o6ivNZpEHU" onclick="window.open(this.href);return false;
tusim ze se jmenuje gantry
ta slouzi k tomu aby vzala pozadavek na polohu v ose X a poslala ho dvoum vystupum ktere mas na te karte v pidicnc
ovsem jsou i chvile kdy potrebujes aby to neposlala do obou ale jen do jedne strany (reference - aby se ti srovnal pravy uhel)
jinak by stacilo to propojit jednoduse v halu prez net stylem pozadovana poloha -> x1 a pozadovana poloha -> x2
proste virtualne to rozdvojit
ae ty to musis udelat prez tu komponentu gantry
a detaily jsou u te komponenty popsane
ano
je to komponenta gantry:
http://linuxcnc.org/docs/html/man/man9/gantry.9.html" onclick="window.open(this.href);return false;
tady mas i nejaky priklady:
https://groups.google.com/forum/#!topic ... o6ivNZpEHU" onclick="window.open(this.href);return false;
Vsechna prava na chyby vyhrazena (E)
Dnes hlásim malý pokrok.
pripojil som všetky enkodéry a nalinkoval ich na jednotlivé AXIS.
Zatiaľ som neriešil rozdvojenie osy X, používam len X2
pripojil som analógové riadenie serv +-10V.
pri príkazoch z terminálovécho okna (halcmd -kf) mi ide ovládanie otáčania motorov. Nastavené mám rýchlostný režim.
a teraz problém:
keď zapnem enable (F2) tak mi na výstupe jednotlivých PID vyskočí hodnota (napr. na 8V) a v momente spadne na Following error.
Prečo to vyhadzuje tú chybu?
FERROR v INI mám nastavené na 10000.
pripojil som všetky enkodéry a nalinkoval ich na jednotlivé AXIS.
Zatiaľ som neriešil rozdvojenie osy X, používam len X2
pripojil som analógové riadenie serv +-10V.
pri príkazoch z terminálovécho okna (halcmd -kf) mi ide ovládanie otáčania motorov. Nastavené mám rýchlostný režim.
a teraz problém:
keď zapnem enable (F2) tak mi na výstupe jednotlivých PID vyskočí hodnota (napr. na 8V) a v momente spadne na Following error.
Prečo to vyhadzuje tú chybu?
FERROR v INI mám nastavené na 10000.
Podľa výsledkov pokusov a informácií z internetu:
treba sledovať hodnotu AXIS.n.f-error
táto premenná udáva odchýlku skutočnej polohy od požadovanej polohy. Ak AXIS.n.f-error je väčší ako 1, vyhodí LinuxCNC Following error.
nastavenie FERROR v súbore INI na to nemá žiadny vplyv.
Podľa halskopu to spadne do chyby niekedy aj pri AXIS.n.f-error=0.25
už to trochu poslúcha. Zajtra pokračujem vo výskume...
treba sledovať hodnotu AXIS.n.f-error
táto premenná udáva odchýlku skutočnej polohy od požadovanej polohy. Ak AXIS.n.f-error je väčší ako 1, vyhodí LinuxCNC Following error.
nastavenie FERROR v súbore INI na to nemá žiadny vplyv.
Podľa halskopu to spadne do chyby niekedy aj pri AXIS.n.f-error=0.25
už to trochu poslúcha. Zajtra pokračujem vo výskume...
Dnes pozitívne zistenie.
AXIS.n.f-error-lim je hodnota povolenej odchýlky. Pri odchýlke väčšej ako táto hodnota, vyhodí systém Following error.
Jej hodnotu je možné meniť z halcmd. Je načítaná v pine ini.n.min_ferror
No a pri štarte sa nastaví hodnota zapísaná v INI súbore, v sekcii AXIS ako MIN_FERROR
Už to ide.
AXIS.n.f-error-lim je hodnota povolenej odchýlky. Pri odchýlke väčšej ako táto hodnota, vyhodí systém Following error.
Jej hodnotu je možné meniť z halcmd. Je načítaná v pine ini.n.min_ferror
No a pri štarte sa nastaví hodnota zapísaná v INI súbore, v sekcii AXIS ako MIN_FERROR
Už to ide.
Gantry som zvládol bez problémov, už behajú 4 motory, tak ako treba.
Už som nalinkoval aj nejaké piny z plazmy, ale dokumentácia na LinuxCNC fóre sa nezhoduje so skutočnosťou. Ak to správne chápem, tak plazma sa hodne mení a vyvíja, preto tie rozdiely.
No čo, už som tak ďaleko, že vrátiť sa nemôžem...
Už som nalinkoval aj nejaké piny z plazmy, ale dokumentácia na LinuxCNC fóre sa nezhoduje so skutočnosťou. Ak to správne chápem, tak plazma sa hodne mení a vyvíja, preto tie rozdiely.
No čo, už som tak ďaleko, že vrátiť sa nemôžem...
To by som im musel najprv rozumieť. Lúskam to krok za krokom, už som sa naučil hodne čítať z HAL metru.
Ale zistiť ako to programátor myslel, čo je kde pripravené a pod. asi bude fuška. No a nakoniec mám verziu starú asi rok a to si už asi nebudú pamätať.
Ale zistiť ako to programátor myslel, čo je kde pripravené a pod. asi bude fuška. No a nakoniec mám verziu starú asi rok a to si už asi nebudú pamätať.
Lúskam fórum po kúskoch, tá programátorská angličtina mi moc nejde. Preto mám zatiaľ strach robiť veľké zásahy na mojom systéme. Celý Linux + machinekit je nahratý na malej SD karte. Predpokladám, že jednoduchá kópia spravená vo W7 fungovať nebude, preto sa pýtam ako na to? Je nejaký špeciálny postup, ako spraviť kópiu SD bootovateľnú pod linuxom?
teraz neviem, čo ďalej. ak spravím image, tak by som musel spraviť update na najnovšiu verziu. Mám (cca 2.7.10 gmoccapy 1.5.5.4) a teraz už plazmu ladia vo verzii gmoccapy 2.3.xx a tam to už vyzerá inak a asi aj funguje inak.
Najväčší problém je, že neviem ako má vyzerať G-kód a ako si predstavujú priebeh rezania programátori.
pri vzorovom kóde je len inštrukcia M3. systém by mal automaticky spraviť meranie/ nájdenie plechu a nastaviť správnu výšku horáku. potom zapnúť oblúk, počkať na dierovanie a rezať.
Ale možno tam niečo chýba. V systémoch s ktorými som robil boli inštrukcie na nájdi plech (AD_W), zapni oblúk (PL_ON) a pod. Tuto len tápam.
Najväčší problém je, že neviem ako má vyzerať G-kód a ako si predstavujú priebeh rezania programátori.
pri vzorovom kóde je len inštrukcia M3. systém by mal automaticky spraviť meranie/ nájdenie plechu a nastaviť správnu výšku horáku. potom zapnúť oblúk, počkať na dierovanie a rezať.
Ale možno tam niečo chýba. V systémoch s ktorými som robil boli inštrukcie na nájdi plech (AD_W), zapni oblúk (PL_ON) a pod. Tuto len tápam.