Hello Guest it is April 26, 2024, 01:47:00 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 - DaveCVI

Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 »
91
VB and the development of wizards / Re: G68 Rotation point?
« on: April 09, 2011, 01:09:10 PM »
Hi Terry,

Here is some more info to add to your notes:
I've verified these as of mach 3.43.22 - there are more problems I've discovered than I've listed here. If you want the full G68 related list I can send it to you.

The model is that G31 is done in the current WC system. The WC is the entire universe from the G31 viewpoint, it just calls for movement in the WC and gets touch points reported in the same WC. At the level of the G31, it does not know if the WC is rotated or not wrt to the machine axes - the WC is just whatever it is - and the G31 should neither care or know how the WCs relate to the MCs.

G31 is allowed with G68 active (as it should be). The problems arise because mach does not implement handling of a rotated WC in a way that is mathematically consistent. Unfortunately, Mach's implementation only works correctly if a WC is not rotated (wrt to the machine axes). 

Problem 1: Mach does not apply the rotation transformation when reporting the probe touch point - so when G68 is active, the touch points are not reported wrt to the active WC. This is what drove me to look for the rotation point, as with it I could correct for mach's reporting.

...but the problems are not all G31 specific - if you want to get surprised try this:

G53 X0 Y0
G54 X0.07071 Y0.7071
G68 Y0 Y0 R45

you should get a WC of X=1, Y=0 after the rotation. If you look at the multimode DROs, that's what you'll see for values (when they are in WC display mode). Now go look at the WC DROs - they will be wrong.

Problem 2: The WC DRos don't comprehend G68


Now for kicks go press the "X Zero" button.... You just told mach to zero the WC X axis - that should place the X0 point at the current position in the WC (which is rotated wrt to the MC). You expect to see the X DRO (and only the X DRO) go to 0 and the offsets change - That's not what happens.

Problem 3: Functions that cause offsets to change ignore G68.

Basically I've concluded that any use of G68 should cause a blinking "Warning, there be dragons here...." message ;-)

Oh, well, not much I can do except write it all up, report it to Brian and hope that fixes make it into a release sometime. In the mean time, I'm going to make my stuff check for G68 and either refuse to do some things or reset the system to G69 as a side effect - those seem to be the only available choices for now.
 
Dave

92
VB and the development of wizards / Re: G68 Rotation point?
« on: April 08, 2011, 07:48:55 PM »
Thanks for looking Terry.

I was afraid that was the case. You're right about G68 - I've concluded that it's implementation is rather incomplete in Mach. I've accumulated a list of multiple verified bugs related to g68 rotations. I'm guessing that not very many people use G68 - as some of the bugs are really obvious once you try it.

I was really hoping to find a way to find the rotation point - one of the bugs is that the mach's touch vars ignore any active rotation. If you rotate the WC 45 degrees and then try G31 X1 – well, the movement is done in the correct direction, but the touch vars ignore the rotation and report an incorrect touch location. If I had the rotation point I could do the transformation to correct for the bug - but w/o knowing where the rotation is centered that's not possible.  I was actually considering having to do this:
   1) see if a rotation is active
   2) get the rotation angel and axis point
   3) cancel the rotation
   4) do the probe “non-rotated” (as the only way mach works correctly for G31)
   5) get the non-rotated touch location
   6) convert that back to the orig rotated WC
   7) restore the rotation
   8 ) report the “rotated” touch point
That would have been a royal PITA – but I could be done – if I just had the rotation point…

This all means I probably have to decide to disallow any active coordinate rotations when probing - which is a bummer as that creates a whole class of situations that can't be handled with Mach.   :'(

Dave

93
VB and the development of wizards / Re: G68 Rotation point?
« on: April 08, 2011, 01:01:46 PM »
Maurice,

I'm not sure I am following you - Are you assuming that the rotation is always around the origin?
If so, that's not a valid assumption.
Example: It's valid to do G68 X1 Y1.414 R45 - in this case the rotation point is (1, 1.414).
To do the transformation to/from the rotated/non-rotated coordinate system you have to know the rotation point and the rotation angle.

Dave

94
VB and the development of wizards / Re: G68 Rotation point?
« on: April 08, 2011, 12:26:17 AM »
Alas, no - it could be any point.
The syntax is G68 X<coord> Y<coord> R<angle in degrees> (there is also an optional I param - not relevant to this issue)  - so the XY plane WC can be rotated about any arbitrary point -

The problem I have is that the rotation could have been applied long before the script/button/ etc is invoked.
A user may have rotated things days before (say via MDI) - so to do the right thing when I find myself with a rotated WC, I need to find out what the rotation parameters are - but it appears that mach only provides a way to get the angle and not the rotation point.

This is part of a list of issues I'm finding about Mach's handling of rotated WC. IF I can get the rotation point, I can do the transform to compensate for what mach doesn't do correctly - as with the point known I can do the matrix math - but I'm stuck as I'm missing the rotation point's location.


Dave

Would it not simply be the active  X0Y0

Maurice

95
VB and the development of wizards / Re: G68 Rotation point?
« on: April 07, 2011, 08:08:53 PM »
Hi Terry,
The situation I'm trying to deal with is one where when the script starts up, it looks and finds that G68 is active.
The Rotation may have been set by the operator via MDI or something before the script is started.

I can tell G68 is active, & I can get the rotation angle from Mach - but I need to be able to find the point the WC was rotated about in order to do the math.

I even went looking into EMC docs to see if it was stashed in a gcode var someplace in the early EMC days and then  might still be hanging around in mach.... I didn't find any such thing - but I'm not sure I knew where to look.

Dave

96
VB and the development of wizards / G68 Rotation point?
« on: April 06, 2011, 12:24:06 PM »
When a G68 rotation is active, there are interfaces to
1) know that this is is the situation (a LED)
2) get the Rotation angle (a DRO)

What I'm not finding is an interface to get the XY point that is the rotation axis...

Does anyone know how to get the rotation point?

Dave

97
General Mach Discussion / Re: Probing
« on: March 25, 2011, 02:58:33 AM »
Hi,
Mach stores machine configuration information in a "profile". Changing the screen set which is running doesn't normally change the physical machine configuration (pitch, acceleration etc) settings.

My suggestion would be to first get your machine running, then spend some time using Mach so you'll have a firmer understanding of how profiles relate to screen sets etc. When you're comfortable with the "stock operation" of Mach, try several different screen sets to see how well they fit your particular goals.  Since 5 axis work is not a topic I'm real familiar with, I won't offer an opinion as to how much use MSM may or may not be for your particular needs.

Dave

98
General Mach Discussion / Re: Probing
« on: March 24, 2011, 10:37:42 PM »
Hi,
Sorry, but the answer is 99% "no".
MachStdMill is a 4 axis layout. The 4 are x,y,x,a - the only place there is any implicit knowledge of B is for the B axis alignment probing support. I hesitated to do that since there were no B DRO displays in the set. I think the users that have B rotary axes are using them configured as A, but aligned along Y.  My impression is they use A XOR B, but not both - that keeps things to 4 axes, even though the "A" designation may then be non-conventional.

Dave

With that machstdmill do you offer a 5 axis screen?

99
Machscreen Screen Designer / Re: Disappearing buttons
« on: March 23, 2011, 08:20:43 PM »
Hi,
Machscreen has two ways to make a transparent button.

1) Image Button:
This is a button that uses an image file. I make my transparent buttons this way and point to a file that is the transparent image. This is the same technique that Gerry suggested.

2) Image Button Transp:
This is a built in type of transparent button in Machscreen. I think it uses and internal transparent image supplied by machscreen. I've had trouble with this - and one of the symptoms is like you described where the underlying LED shows up for a moment then goes away.

As all my MachStdMill buttons are the 1) approach, I never went back and figured out what was happening with 2).

If you are using 2), you might try 1) to see if the problem goes away for you.

Dave
 

100
General Mach Discussion / Re: Probing
« on: March 23, 2011, 05:26:24 PM »
Dennis,
Located on the peninsula, between the Dumbarton and San Mateo bridges.
Dave


Dave
Thanks i will take a look at the trial offer i see that you are in the SF bay area as I am were about are you located ?

Dennis

Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 »