UCCNC vezérlő program

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

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

vg8t6er64

SW varázslattól független HW megoldás lehet, ha egy charge pump kimenettel összekapuzod a kimenete(i)det "ÉS" kapcsolattal.

3ztiz2p39

Aúú... ez mégse jó, hiszen reset-nél nem fut a makrohurok. :(

De legalább Stopnál és a ciklus végén kikapcsolja.

3ztiz2p39

Az eddig is meg van, de mivel elmenti az állapotot, a  következő indításkor újra aktív lesz.

vg8t6er64

Huhhh! Akkor szerintem sajnos az a vezérlő hibás e tekintetben, ami Reset vagy újraindítás után alapból is nem rendezi normális állapotba hozással az összes kimenetet.

3ztiz2p39

Nem hinném, hogy hibás lenne, valószínűleg meg van az oka miért így csinálták meg.

vg8t6er64

Kiváncsivá tettél, mi lesz az a műszaki ok. Mert én még úgy tanultam, és ehhez tartom is magamat, hogy Reset után illik minden vezérelt be/kimenetet alaphelyzetbe hozni, rendezni, és onnan folytatni.

3ztiz2p39

A semlegesbe válaszoltam. [#t201p11225#]

Ezt a topicot illik nem szét cseszni, hagyjuk meg kérdés-feleleteknek, segítségeknek és nem fikázásnak!

xs55942m6

Szervusztok!
Megakadtam, picit.
az anyag bemérése után kimegy a képem külsőszondához mérés miatt de nekem egy munkahengerem van amit akarok vezérelni, hogy kijöjjön. Rosszúl tudom, hogy az M31-es makróba kéne bele írnom?[#nemtudom][#conf]

double probeX = 200;
double probeY = 300;
double Zmin = -100;
double FeedrateFast = 300;
double FeedrateSlow = 100;
double SafeZ = 100;
double retractheight = 10;
double retractforsecondmeasurement = 1;

bool domoveXY = false; //Enable XY movement
bool dodualcycle = true; //Do probing from 2 cycles, first with Fast and second with Slow feedrates

// Vezérléshez szükséges változók
int chuckPort = 3;
int chuckPin = 7;
bool chuckState = false;

// Kimenet kivezérlése
exec.Clroutpin(chuckPort, chuckPin);

if(!exec.GetLED(56)||!exec.GetLED(57)||!exec.GetLED(58)) // If machine was not homed then it is unsafe to move in machine coordinates, stop here...
{
  MessageBox.Show("The machine was not yet homed, home the machine before probing!");
  exec.Stop();
  return;
}

while(exec.IsMoving()){}

double Xoriginalpos = exec.GetXmachpos(); // Get the current machine coordinates
double Yoriginalpos = exec.GetYmachpos(); // Get the current machine coordinates

if(domoveXY) // Make XY movement only if enabled
{
  exec.Code("G00 G53 Z" + SafeZ); // Move Z up first
  while(exec.IsMoving()){}

  exec.Code("G00 G53 X" + probeX +" Y" + probeY); // Move to the probe sensor position in XY
  while(exec.IsMoving()){}
}

if(dodualcycle)
{
  exec.Code("G31 Z" + Zmin + "F" + FeedrateFast); // Do the Z probing with Fast feedrate first
  while(exec.IsMoving()){}

  exec.Code("G91 G0 Z" + retractforsecondmeasurement);
  exec.Code("G90");
}

while(exec.IsMoving()){}
exec.Code("G31 Z" + Zmin + "F" + FeedrateSlow); // Do the Z probing again with Slow Feedrate to get a more accurate reading
while(exec.IsMoving()){}

// Kimeneten kivezérlés feloldása
exec.Setoutpin(chuckPort, chuckPin);

if(!exec.Ismacrostopped()) // If tool change was not interrupted with a stop only then validate new tool number
{
 exec.Code("G44 H1"); // Load tool offset one, note the tool lenght is defined in the tools menu
 while(exec.IsMoving()){}
 exec.Wait(200);

 double Zup = exec.GetZmachpos() + retractheight;

 if(Zup > SafeZ)
 {
   Zup = SafeZ;
 }

huatn6gfd

Szia!

Attól függ, hogy mivel mérsz. Probe gomb alul vagy a bemérő képernyő (Start probing / reference probe as workpiece gomb). Az első az M31-et hívja, a második a probing plugin-ban dolgozik. Emlékeim szerint az utóbbi, de ott is meg lehet oldani. Kérek egy UCCNC és egy probe plugin verziószámot. (Help / About és General settins / Config plugins alatt találod meg.)

xs55942m6


xs55942m6

Start probing / reference probe as workpiece gomb -ot használom

xs55942m6


huatn6gfd

Köszi! Tehát a mérőponton méréshez kell egy kimenetet bekapcsolni, a mérés után pedig ki, ha jól értelmezem. Van már erre kapcsolgatós makród? Ha igen, akkor másold be ide. (Nyomj PRG gombot az üzenetablak felett jobbra és a két megjelenő sor közé másold.)

xs55942m6

Munkadarab felület bemérés, Z felmegy, kimenet (szonda kar) bekapcsol, x-y pozícióra megy, külső szonda bemérés, Z biztonsági magasságra állás, kimenet kikapcsolása, x-y null pontra vissza, . Ezt szeretném elérni :( .
Csak ezt a kimenetet szeretném beiktatni

xs55942m6

De vegyük úgy, hogy nincs macro.