Hello Guest it is April 26, 2024, 10:50:15 AM

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 - Ya-Nvr-No

511
Mach4 General Discussion / Re: Comments about Mach4 in Demo
« on: April 25, 2014, 10:28:37 AM »
Nope right from the install for mach4 no changes that I know of.

C:\Mach4Hobby\Mach4GUI.exe /p Mach4Mill

512
Mach4 General Discussion / Re: Comments about Mach4 in Demo
« on: April 25, 2014, 10:17:41 AM »
Running this off a Lenovo laptop, Says I am at 1366 x 768
Not getting anything other than what I show below (reduced the image by 50% for uploading and viewing)
Tried loading it as window Maximize, no changes.
Used to be a way to move windows around with the arrow keys, but I forgot, hell to get old.
Odd... centers itself and I have no access to the outer edges to resize it.

Guess it might be an issue with my laptops.
Found some issues with Terry's Wizard Screens that they would not all display correctly either.  But just in the vertical.
These Laptops work fine with Mach3 and KmotionCNC.

Thanks Brian.



513
Mach4 General Discussion / Re: Comments about Mach4 in Demo
« on: April 25, 2014, 09:38:43 AM »
Tried to create a MDI group and control but does not seem to work as expected. Must be in a group I see from the MDI screen, but I am missing something.

tried inputting a M3 and M4 on the MDI page and the Diagnostic tab shows it and the history shows Clockwise but no CCW or reverse for M4
Also noticed the m3 led does not lite on the spindle ON Button when using MDI M3.

Have the "If Then Else" statements been added and function-able?
Id like something like
if (mySwitch1) then M30 Else M99
to replace the M47

Why no window minimize button, I have to use Alt Tab to toggle through other available programs? so I could snip the screen and capture. Preference is for sizable windows instead of full screens, always doing more than one thing, don't you? Cut and Paste, Captures, Write Scripts, etc...

Is the scripting code functioning?

are we alpha testers  ??? Thou I like where Mach4 might be headed it looks awful raw to me ::)
I've developed user interfaces in the past so I have some industrial bruises myself.

514
Was so damn cold this past winter, I was catching up on some good ole TV off the net.
This logo caught my eye and using a screen capture made a new wall hanger/dust collector.
Just cut it out yesterday, so still have not finished it but it is 9" x 12" with a .27" relief.
Cut with a two flute 1/8" ball end mill, single pass. About 4 hours of cutting.
top is the screen capture, center is the 3D rendering and the last is the walnut cutout.
Would estimate about 3-4 hours of development/design time.

515
I'd  provided how to set the g68 in the file that was posted to your other thread.
http://www.machsupport.com/forum/index.php/topic,26758.msg189574.html#msg189574

Call SetOemDro (118,NewAngle)
OEMDRO was added to screen with machscreen. To show me what it was set too. As if it is anything other than zero the Axis X Y DRO's values turn red.

The sensor you used before does not need the Arduino to work, it just needed a 12 volt DC supply, as it incorporated a SPDT relay.
You could then provided the 5 volt source at the relay.
Though it does a poor job of detecting a thin line and lighting the area has to be extremely controlled to be accurate and repeatable.

Using a wide line to get it to work well, makes me suspect its precision at the ability to find the true corner of the scanned probing routine.

516
I use this to align a block, you might adapt this to your needs.
Gives you an idea as to the logic of probing and computing alignment.
If I had the "arduino based mark sensor setup" I could help more.
I find no reference to where this hardware is available.


Code: [Select]
Angle = GetOemDro(118)

pi=4*Atn(1)

CurrentToolDiameter = GetOemDRO(43)
X = GetUserDro (1053)
Y = GetUserDro (1054)
Z = GetUserDro (1055)

CurrentFeed = GetOemDRO(818) 'Get the current feedrate to return to later
CurrentAbsInc = GetOemLED(48) 'Get the current G90/G91 state
CurrentGmode = GetOemDRO(819) 'Get the current G0/G1 state
CurrentToolDiameter = GetOemDRO(43) 'gets the current tool diameter
PlateThickness = GetUserDRO(1051)
ToolLength = GetOemDRO(42)

MoveXDistance = ((X * 1.1) + CurrentToolDiameter)
MoveYDistance = ((Y * 1.1) + CurrentToolDiameter)
MoveDistance = .5 + CurrentToolDiameter
MoveZDistance = .5

If GetOemLed (825) <> 0 Then 'Check to see if the probe is already grounded or faulty
    Call ProbeGrounded()
    Exit Sub
Else

'Get top of part

'DoOEMButton (1010) 'zero the Z axis so the probe move will start from here
Code "G4 P4" ' this delay gives me time to get from computer to hold probe in place
Code "G91 G31Z-2.0 F4" 'probing move, can set the feed rate here as well as how far to move
While IsMoving() 'wait while it happens
Wend
'Call SetDro (2, PlateThickness)

ZProbePos = GetVar(2002) 'get the axact point the probe was hit
'Code "G0 Z" &PlateThickness
'While IsMoving ()
'Wend
Code "G1 G91 F40 Z" &MoveZDistance 'put the Z retract height you want here
While IsMoving ()
Wend

'Code "(Z axis is now zeroed)" 'puts this message in the status bar
Code "F" &CurrentFeed 'Returns to prior feed rate


'Call SetDro (2,GetDro(2)-Z)

'Probe The X sides

    XCurrent = GetDro(0)
    YCurrent = GetDro(1)

    Code "G4 P1" 'Pause 1 second to give time to position probe plate
    While IsMoving ()
    Wend
    Call SetDro (0,0.000)
    While IsMoving ()
    Wend
    Call SetDro (1,0.000)
    Code "F4" 'slow feed rate to 4 ipm


Rem Probe Y Face Side

    Code "G90 G0 X" &-MoveDistance
    Code "G4 P0.25"
    Code "G91 G0 Z" &-MoveZDistance-.2
    Code "G4 P0.25"
    XNew = Xcurrent + 3
    Code "G31 X" &XNew 'Probe X1,Y1 (P1) location
    While IsMoving() 'wait for the move to finish
    Wend
    X1 = GetVar(2000) 'get the probe touch location
    Y1=0 ' Should always be zero
    Y2 = Y-0.5 '1/2 inch back from end of block

    Code "G91 G0 X-.25"
    Code "G4 P0.25"
    Code "G91 G0 Y" &Y2
    Code "G4 P0.25"
    Code "G31 X" &XNew 'Probe X2,Y2 (P2) location
    While IsMoving() 'wait for the move to finish
    Wend
    X2 = GetVar(2000) 'get the probe touch location
    'Y2= Block length - 1/2 inch

    Code "G91 G0 Z" &MoveZDistance+.2
    Code "G4 P0.25"
    Code "G91 G0 Y" &-Y2 'Go back to the first spot
    Code "G4 P0.25"
    Code "G91 G0 X" &CurrentToolDiameter+.1 'rapid move back to start point
    Code "G4 P0.25"

Rem Probe X Face Side

    Code "G90 G0 Y" &-MoveDistance
    Code "G4 P0.25"
    Code "G91 G0 Z" &-MoveZDistance-.2
    Code "G4 P0.25"
    YNew = YCurrent + 3
    Code "G31 Y" &YNew 'Probe X3,Y3 (P3) location
    While IsMoving()
    Wend
    Y3 = GetVar(2001)   'get the probe location
    'X3=0
    X4 = X-0.5 '1/2 inch back from end of block

    Code "G91 G0 Y-.25"
    Code "G4 P0.25"
    Code "G91 G0 X" &X4
    Code "G4 P0.25"
    Code "G31 Y" &YNew 'Probe X4,Y4 (P4) location
    While IsMoving() 'wait for the move to finish
    Wend
    Y4 = GetVar(2001) 'get the probe touch location
    'X4= Block Width - 1/2 inch

    Code "G90 G0 Z" &MoveZDistance+1    'Back up and clear
    Code "G4 P0.25"

t1= (x4-x3)*(y1-y3)-(y4-y3)*(x1-x3)
b1= (y4-y3)*(x2-x1)-(x4-x3)*(y2-y1)
ua=t1/b1

t2= (x2-x1)*(y1-y3)-(y2-y1)*(x1-x3)
b2= (y4-y3)*(x2-x1)-(x4-x3)*(y2-y1)
ub=t2/b2

XH=x1+ua*(x2-x1) ' X Home  distance away
YH=y1+ua*(y2-y1) ' Y Home  distance away


If X>Y Then
   'LongestSide=X
   a=(Y4-Y3)
   b=(X4-X3)
   v=a/b
   NewAngle=Atn(v)*(180/pi)
Else
   'LongestSide=Y
   a=(X2-X1)
   b=(Y2-Y1)
   v=b/a
   NewAngle=Atn(v)*(180/pi)
   If NewAngle > 0 Then
     NewAngle=NewAngle-90
   Else
     NewAngle=NewAngle+90
   End If
End If

Rem move To the Block Lower Corner

    Code "G90 G0 Y" &YH + CurrentToolDiameter/2
    Code "G90 G0 X" &XH + CurrentToolDiameter/2
    While IsMoving ()
    Wend
    Call SetDro (1,0.000)
    While IsMoving ()
    Wend
    Code "G4 P0.25"
    Call SetDro (0,0.000)
    Call SetDro (1,0.000)

    Call SetOemDro (118,NewAngle) ' now you can rotate the block


'Call SetDro (2,Z + PlateThickness)

    Code "G4 P0.25"

    Code "F" &CurrentFeed 'restore starting feed rate
Call ReturnG90G91State()
Exit Sub
End If
 
Sub ProbeGrounded()
Code "(Probe plate is grounded, check connection and try again)"
Call ReturnG90G91State()
End Sub

Sub ReturnG90G91State()
If CurrentAbsInc = 0 Then 'if G91 was in effect before then return to it
Code "G91"
Else
Code "G90"
End If
If CurrentGMode = 0 Then 'if G0 was in effect before then return to it
Code "G0"
Else
Code "G1"
End If
End Sub                



517
Share Your GCode / Re: I Need A help
« on: March 06, 2014, 07:47:08 AM »
Instructor mislabeled the cross axis, and made no reference to Tool nose radius.
and this is what students are learning to be educated in CNC?

518
nice work, nice machine, cool artwork
what size cutter did you finish the piece with?

what would you think the life of the pot will be?
and an interesting way to solve it.

Thanks for the video post. I liked it :D

here is a cool website for some great images you might like.
http://www.legendsofamerica.com/na-nativeamericans.html

519
General Mach Discussion / Re: SAVING WORK LOCATION
« on: February 20, 2014, 03:29:12 PM »
Then I'd advise you to check it a few times, confirming how far it does move, if it is consistent you might beable to fudge the DRO's after startup. Cant believe it would be repeatable using micro stepping.

Or you might try to move to a clamp position of the tool using the vise or chuck. Tighten it up, then shut the machine down, when it starts up it has to be in the same location. Crude but I bet relatively repeatable, depending on the machine mass.

Just make sure you loosen the vise or chuck before moving in Z+

520
General Mach Discussion / Re: SAVING WORK LOCATION
« on: February 20, 2014, 02:51:44 PM »
Your other option is to go to the same location everytime you shut down and then when it boots up make sure the DRO read the same values. Not precise due to the fact that when power goes off the positions might jump just a little or axis's might move when no power is applied to the drives. I have tried going to 0,0,0 and then shutting off and then starting back up. But my encoders on the standalone DRO readout have shown a jump on shutdown. So you can not really rely on it holding location.

Adding home switches is easier than you might envision. Its a process, do one at a time. Lots of references can be found on this site. You'll be thrilled when you see your machine head for home on hitting the HOME button. Remember you don't need to add limit travel switches too, just a location switch it uses to reference a position you call home.