CNC, hobby, gépépítés, programozás
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Makrók

Go down

Makrók Empty Makrók

Témanyitás by Béni 2021-12-06, 20:35

Az alábbi példa egy kimenet kapcsolgatását végzi egy makró segítségével.
A makró hívása két paraméterrel történik. (P és Q.)
P a ki és bekapcsolást adja meg.

P0: kimenet kikapcsolás; (Itt Q paraméternek nincs jelentősége.)
P1: kimenet bekapcsolás;

A Q a működési módot adja meg:
Q0: statikus kapcsolás, azaz a bekapcsolt kimenet bekapcsolva marad, amíg azt másik utasítással nem kapcsoljuk ki;
Qx: pulzus mód, ahol a bekapcsolt kimenet közelítőleg x*0,1 másodpercig lesz bekapcsolva.

Tesz G kód:
Kód:

M9800 P0 Q0
G0X10
M9800 P1 Q0
G1X0F200
M9800 P0 Q0
X10F400
M9800 P1 Q20
M30


Makró: (M9800.m1s)

Kód:

'Output6 be/ki kapcsolasa
'P0:ki; P1:be; Q0: csak kapcsol; Qx: x*1/10 sec hosszúságú pulzust ad ki
Sub main
  Dim m,t
  m=CInt(Param1())
  t=CInt(Param2())
  Wait
 
  If m=0 Then
    DeactivateSignal(OUTPUT6)
  End If
 
  If m=1 Then
    ActivateSignal(OUTPUT6)
    If t>0 Then 'pulzus mod
      Sleep(100*t)
      DeActivateSignal(OUTPUT6)
    End If
  End If
End Sub

Sub Wait 'Mozgások leállásáig vár
   While Ismoving()
      Sleep(20)
   Wend 
End Sub
Béni
Béni
Admin

Posts : 168
Join date : 2015. Apr. 02.
Location : Szeged

http://dotg.weebly.com/

Vissza az elejére Go down

Makrók Empty Re: Makrók

Témanyitás by Béni 2022-02-04, 19:40

Az alábbi makró - G kód páros bemutatja egy lehetséges megoldását a G kód futtatása közbeni adatbekérésnek.
Három számérték bekérése után a megadott adatok felhasználásával egy gyorsmeneti pozicionálást végez a G kód.

M9700.m1s makró:
Kód:
Sub Main
Do
 Begin Dialog Dialogname1 120,160,140,60," - XYZ Adatbevitel -"
  TEXT 10, 12, 28, 12, "X érték:"
  TEXT 10, 26, 28, 12, "Y érték:"
  TEXT 10, 40, 28, 12, "Z érték:"
  TEXTBOX 38, 10, 50, 12, .xStr
  TEXTBOX 38, 24, 50, 12, .yStr
  TEXTBOX 38, 38, 50, 12, .zStr
  PushButton 94,10, 40, 40, "OK"
 End Dialog

 Dim Dlg1 As DialogName1
 Dialog Dlg1

Loop Until (IsNumeric(Dlg1.xStr) And IsNumeric(Dlg1.yStr) And IsNumeric(Dlg1.zStr))

Code "#10=" & CDbl(Dlg1.xStr) 'Atadas G kodnak
Code "#11=" & CDbl(Dlg1.yStr)
Code "#12=" & CDbl(Dlg1.zStr)

While Ismoving()
Sleep (100)
Wend

End Sub


G kód:
Kód:
G90
M9700 (ADAT VISSZA #10 #11 #12 PARAMETEREN)
G0 X#10 Y#11 Z#12
M30
Béni
Béni
Admin

Posts : 168
Join date : 2015. Apr. 02.
Location : Szeged

http://dotg.weebly.com/

Vissza az elejére Go down

Vissza az elejére


 
Engedélyek ebben a fórumban:
Nem válaszolhatsz egy témára ebben a fórumban.