Hello Guest it is April 24, 2024, 08:43:47 PM

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - TPS

111
ok example (in mm):

G90 mode
G1 X100 will move the X-Axis to 100mm in workpice coordinates

G91 mode
G1 X100 will move the X-Axis + 100mm, if it is at 50mm in workpice coordinates it will go to 150mm in workpice coordinates


for a test you can enter G90 in MDI line an run than your macro.



112
i think your machine was in incremental distance mode (G91) and not in absolute distance mode (G90)
when you run the macro.

113
Brains Development / Re: Execution M00 for Brains
« on: May 20, 2023, 01:16:55 PM »
no, you have to create a macrofile in your macrofolder (normaly C:\Mach3\macros\ your profile name) with
the name M123.M1S, plain Textfile (notepad or simular), then copy the posted code into the file.

the GCode will call the Macro:

g1y-20
g0y-15
M123
g0a40

and the code in the macro will "wait"/"pause" until Input1  goes OFF and ON again.

114
Brains Development / Re: Execution M00 for Brains
« on: May 20, 2023, 10:18:31 AM »
so you will only need a simple macro.

for example m123.m1s

Code: [Select]
If IsActive (Input1) Then
      Sleep(100) 'wait for input to go off
End If
Sleep(100)
If Not IsActive (Input1) Then
      Sleep(100) 'wait for input to go on again
End If


and GCode would look like:

Code: [Select]
m3
m7
f300
g0a0
g1y-20
g0y-15
m123
g0a20


g1y-20
g0y-15
m123
g0a40

.....

then macine wil go to position an wait for Input1 to be OFF and ON again

115
Mach Screens / Re: simple numeric keyboard for input in DRO
« on: May 20, 2023, 10:14:11 AM »
not tested

Code: [Select]

Global value As String

'TPS 01.12.2017
'numerische Eingabe
Function NumericKeyboard(ByVal DRONum As Integer) As Double
Dim title As String
'value = GetOemDRO(DRONum)
title = Header


Begin Dialog UserDialog1 60,60, 195, 180, "Input:"  , .Enable

PushButton 10, 10, 25, 25, "7", .but7
PushButton 40, 10, 25, 25, "8", .but8
PushButton 70, 10, 25, 25, "9", .but9

PushButton 10, 40, 25, 25, "4", .but4
PushButton 40, 40, 25, 25, "5", .but5
PushButton 70, 40, 25, 25, "6", .but6

PushButton 10, 70, 25, 25, "1", .but1
PushButton 40, 70, 25, 25, "2", .but2
PushButton 70, 70, 25, 25, "3", .but3

PushButton 10, 100, 25, 25, ".", .butD
PushButton 40, 100, 25, 25, "0", .but0
PushButton 70, 100, 25, 25, "<-", .butB

PushButton 100, 10, 25, 25, "X", .butX
PushButton 100, 40, 25, 25, "Y", .butY
PushButton 100, 70, 25, 25, "Z", .butZ
PushButton 100, 100, 25, 25, "A", .butA

PushButton 130, 10, 25, 25, "F", .butF
PushButton 130, 40, 25, 25, "S", .butS
PushButton 130, 70, 25, 25, "M", .butM
PushButton 130, 100, 25, 25, "Sp", .butSp

PushButton 160, 10, 25, 25, "G", .butG

TextBox 10, 130, 175, 18, .FText
PushButton 10, 155, 40, 21,"OK", .OK
CancelButton 55, 155, 40, 21
End Dialog


Dim Dlg1 As UserDialog1

'Dlg1.FText = CStr(value)
Dlg1.FText = ""
x = Dialog( Dlg1 )

'NumericKeyboard = CDbl(Dlg1.FText)
If x <> 0 Then
'SetOEMDro(DRONum,CDbl(Dlg1.FText))
Code Dlg1.FText
End If
End Function

Function Enable( ControlID$, Action%, SuppValue%)

Select Case Action%
Case 1

Case 2 'Button wurde gerückt
If ControlID$ = "but0" Then
value = CStr(value) + "0"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "but1" Then
value = CStr(value) + "1"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "but2" Then
value = CStr(value) + "2"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "but3" Then
value = CStr(value) + "3"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "but4" Then
value = CStr(value) + "4"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "but5" Then
value = CStr(value) + "5"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "but6" Then
value = CStr(value) + "6"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "but7" Then
value = CStr(value) + "7"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "but8" Then
value = CStr(value) + "8"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "but9" Then
value = CStr(value) + "9"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "butD" Then
   If InStr(1,value,".") = 0 Then
value = CStr(value) + "."
DlgText "FText", CStr(value)
Enable =1
   End If
End If
If ControlID$ = "butB" Then
value = Left(value,Len(value)-1)
DlgText "FText", CStr(value)
Enable =1
End If

If ControlID$ = "butX" Then
value = CStr(value) + "X"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "butY" Then
value = CStr(value) + "Y"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "butZ" Then
value = CStr(value) + "Z"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "butA" Then
value = CStr(value) + "A"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "butF" Then
value = CStr(value) + "F"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "butS" Then
value = CStr(value) + "S"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "butM" Then
value = CStr(value) + "M"
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "butSp" Then
value = CStr(value) + " "
DlgText "FText", CStr(value)
Enable =1
End If
If ControlID$ = "butG" Then
value = CStr(value) + "G"
DlgText "FText", CStr(value)
Enable =1
End If


If ControlID$ = "OK" Then
Enable = -1
End If
Case 3 'Text verändert
'MsgBox Dlg1.FText
Case Else
End Select

'Wert zurückgeben
If Enable = -1 Then
Enable = value
End If

End Function   






116
Brains Development / Re: Execution M00 for Brains
« on: May 19, 2023, 02:13:12 PM »
OK inthis case you will need two signal's

-excenter in top position
-excenter in bottom position

-how will the excenter drive be controlled? simple On/OFF by relay?

-what will do the feed forward, if there is more then one stroke at a position ? Y-Axis?

-has it to do a small step backward's when the stroke goes up?

question's and more question's.

117
Brains Development / Re: Execution M00 for Brains
« on: May 18, 2023, 04:14:57 AM »
Hello Fred,

how is the stroke driven ? Hydraulic or excenter drive or?

usualy there is more then one stroke per a position,but does not matter ?

so the sequence would be

-ckeck stroke is up
-Y-axis to a save positon for turn
-turn A-axis
-Y-axis to the first position
-stroke down
-Y-axis back
-stroke up
-Y-axis to the next position
-stroke down
-Y-axis back
-stroke up

and so on until Y-axis depth is reached
then if necessary the same for next a position.

118
Brains Development / Re: Execution M00 for Brains
« on: May 16, 2023, 02:56:53 AM »
the link downloads a file named Mach3Mill_1.84.pdf. pls check your download folder.

anyway, i do not know a possibility to pause a program by digital input.

with a vb macro converter i mean a VB macro witch reads the original GCode and
creates new program with use of G31.

that's why i asked for a sample GCode file witch will be used on the machine.

119
Brains Development / Re: Execution M00 for Brains
« on: May 15, 2023, 02:13:57 PM »
if you have a look in here:

http://support.machsupport.com/de/downloads/files/using-mach3-mill/download

chapter 10.7.12 explains, what G31 will do.

basicly G31 will stop movement triggered by an input signal.
it will not continue after input signal goes off again.
this wil have to be done by logic within a macro, the benfit is that the movement will
be stopped imediately.

i don't know where your GCode is coming from, but someting like a GCode "converter",
VB macro, might be the way to go.

can you post a sample GCode to see how it looks like.   

120
Brains Development / Re: Execution M00 for Brains
« on: May 15, 2023, 12:38:42 PM »
i was affraid that this problem will come up, because code from macros is added into the queue.

so as Graham mentoined, G31 will be the road to go.