Hello Guest it is April 25, 2024, 04:17:34 PM

Author Topic: Rotational Soft Limits on A axis, once more, cannot be disabled.  (Read 15846 times)

0 Members and 1 Guest are viewing this topic.

Offline Hood

*
  •  25,835 25,835
  • Carnoustie, Scotland
    • View Profile
Re: Rotational Soft Limits on A axis, once more, cannot be disabled.
« Reply #20 on: January 04, 2014, 05:14:00 PM »
Yes that is your problem, when I put Mach in Sim mode I get the same issue.
I would say you would just get the same problems with a virtual W7 as well as the Mach driver will not work.
Hood
Re: Rotational Soft Limits on A axis, once more, cannot be disabled.
« Reply #21 on: January 04, 2014, 11:26:17 PM »
Mach3 R3.043.062 with driver installed well in Windows 7 32 bit. (And it honors the Rotational Soft Limits checkbox and Soft Limits). This is the same "hardware" (VMware), as for Windows 8 32 bit. Without parallel port. I applied the vista patch beforehand.

On Windows 8 32bit, the driver causes "Windows runs into a problem" (or similar, message disappears quickly) and Windows does a Restore operation. When I allowed unsigned drivers (five steps from the Charms Bar), it does show the message at the next boot after installation. When I did not allow unsigned drivers, the message shows at the parallel port step during Mach3 install. I extracted the driver from Windows 7 and installed it manually on Windows 8, but with the same failure. We have to wait for a patch to arrive.

For my sample rotational piece, found in the internet, the 4th axis limits on page 4 "Tool Path" are -169200 and +16, meaning 470 turns. It is viable to enter large positive and negative soft limits, and knowing, how many turns are to be expected, e.g. (36500000;-36500000) for hundred thousand turns. In Mach3 R3.043.062 the maximum liimit values are even +/-1 with 17 zeroes, but in earlier versions it was lower.

It is manageable, and I'm grateful to Hood for relating it to the driver installation.

Re: Rotational Soft Limits on A axis, once more, cannot be disabled.
« Reply #22 on: January 05, 2014, 02:43:59 PM »
On Windows8 32 bit, installation of the driver is possible from DriverTest when I disable UAC. It works then as expected (Driver initalized, Rotational Soft Limits checkbox honored, DriverTest runs to completion). However on the next restart Windows8 diagnoses a problem and proposes to Restore. I do have ApplicationCompatibilityToolkit from Microsoft, to be tried next.

I was startled as DriverTest dates from 2010. However the actual driver files are separate and present in the Mach3 folder.
Re: Rotational Soft Limits on A axis, once more, cannot be disabled.
« Reply #23 on: January 05, 2014, 07:44:17 PM »
Regarding the soft limits, if that is the way you feel is safest then you would be better making it foolproof.
To do that you would edit the VB in the RefAll button, have it first disable Soft Limits, next have it home the Z axis and then move the axis the distance required, then Y then X, again having them move the required distance, then finally have it re-enable soft limits.
Hood

a) How do I wait for VB script steps to complete?
Between referencing, and moving to Machine Zero, I need a pause. Between moving to Machine Zero, and turning Soft Limits on, I need a pause. I remember that I have seen it, but can't recall where it is. Right now, without CNC, I put in adequate sleep, say sleep (1000).

Thanks for helping me.

b) The soft limits on A cannot substantially exceed (+36500000;-36500000). Outside of this, sometimes Mach3 complains from the Homing/Limits dialog, sometimes later when I toggle Soft Limits on.

Peter.

Code: [Select]
'PF 05jan2014

If(GetOEMLED(23)=True) Then
'MsgBox "soft limits are on"
DoOEMButton(1029) 'toggle soft limits OFF if soft limits are On.
Else
'MsgBox "soft limits are off"
end if


DoOEMButton(179) 'machine coordinates, (180) work coords

sleep(500)

DoButton( 24 ) 'Ref Z
DoButton( 23 ) 'Ref Y
DoButton( 22 ) 'Ref X
DoButton( 25 ) 'Ref A

Sleep( 500 ) ' ??
'DoButton( 7 )  ' ?? zero all

Code "G0 G53 Z0." 'goto mach zero,first Z, then X Y, then A
Code "G0 G53 X0 Y0."
Code "G0 G53 A0"

Sleep(2000)

DoOEMButton(1029) 'toggle soft limits ON

DoOEMButton(180) 'work coordinates
                

Offline Hood

*
  •  25,835 25,835
  • Carnoustie, Scotland
    • View Profile
Re: Rotational Soft Limits on A axis, once more, cannot be disabled.
« Reply #24 on: January 06, 2014, 02:55:29 AM »
While IsMoving()
Wend


BTW not sure why you are changing to machine coords with the OEM button, you dont have to do that but maybe it is just something you want to do.
Hood
Re: Rotational Soft Limits on A axis, once more, cannot be disabled.
« Reply #25 on: January 06, 2014, 04:51:37 AM »
While IsMoving()
Wend


BTW not sure why you are changing to machine coords with the OEM button, you dont have to do that but maybe it is just something you want to do.
Hood


Would  it be advisable to have a delay in the loop, and a time out? Sort of:

Code: [Select]
I=0
' syntax to be fixed, kind of pseudocode
now=MilliSeconds
While IsMoving() and I<1000 and MilliSeconds <start+60000
Sleep(333)
I=I+1
Wend

Machine coordinates: a) just to learn how to program it, b) I did not grasp the difference between OEMButton 180 ("with G92") and 181 ("without G92") c) to get feedback about the actual machine movement d) to leave it in the right coordinate display machine/work coords after referencing
« Last Edit: January 06, 2014, 04:53:56 AM by PeterF »
Re: Rotational Soft Limits on A axis, once more, cannot be disabled.
« Reply #26 on: January 06, 2014, 06:21:58 AM »
Hood, I leave the coordinate display mode untouched, it is better.

Offline Hood

*
  •  25,835 25,835
  • Carnoustie, Scotland
    • View Profile
Re: Rotational Soft Limits on A axis, once more, cannot be disabled.
« Reply #27 on: January 06, 2014, 07:13:03 AM »
Not really sure why you would need a timeout.


Hood
Re: Rotational Soft Limits on A axis, once more, cannot be disabled.
« Reply #28 on: January 06, 2014, 08:43:10 AM »
The script should not hammer in a tight loop, but release the CPU to Mach3 while Mach3 is doing the move. And I wait beforehand, and in every wait loop, to ensure movement has begun. Movement could be in different thread.

Current script is:
Code: [Select]
'PF 05jan2014

'reference all axes Z X Y A (move to home switch, then set machine coords to home coords)
'move to machine zero
'turn on Soft Limits
'set coordinates to Machine / Work / leave as is* (see below)

Do
  Sleep ( 333 )
Loop While IsMoving()

' programming note: wait by documentation is following
'While IsMoving()
'Wend

' programming note: Until Not does not wait, for unknown reason
'Do
'  Sleep  (333 )
'Loop Until Not IsMoving()


If(GetOEMLED( 23 )=True) Then DoOEMButton( 1029 ) 'toggle soft limits OFF if soft limits are On.

'DoOEMButton( 179 ) 'machine coordinates, ( 180 ) work coords

Do
  Sleep ( 333 )
Loop While IsMoving()

DoButton( 24 ) 'Ref Z
DoButton( 23 ) 'Ref Y
DoButton( 22 ) 'Ref X
DoButton( 25 ) 'Ref A

Do
  Sleep ( 333 )
Loop While IsMoving()

Call Code ( "G0 G53 Z0.") 'goto mach zero,first Z, then X Y, then A
Call Code  ("G0 G53 X0 Y0." )
Call Code ( "G0 G53 A0" )

Do
  Sleep ( 333 )
Loop While IsMoving()

DoOEMButton( 1029 ) 'toggle soft limits ON

'DoOEMButton( 180 ) 'work coordinates

Do
  Sleep ( 333 )
Loop While IsMoving()

'end of script
« Last Edit: January 06, 2014, 08:45:00 AM by PeterF »
Re: Rotational Soft Limits on A axis, once more, cannot be disabled.
« Reply #29 on: January 12, 2014, 06:05:33 AM »
Last week I could look at our productive system, Windows XP, driver installed, Mach3 R3.043.062. There the Rotational Soft Limits checkbox got ignored. Soft limits on the A axis fired anyway. Of course we do not have Limit Switch signals in Ports and Pins. 

I set the soft limits to +36500000;-36500000 to cure the situation.
Maybe I should activate A+ A- signals, leaving them on Port 0 Pin 0?
(A Home must not be activated, because then Reference A would turn forever.)