Hello Guest it is April 23, 2024, 06:54:14 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.


Topics - DaveCVI

Pages: « 1 2 3 4 »
21
CVI MachStdMill (MSM) / An informal MSM satisfaction survey
« on: September 14, 2010, 01:11:54 PM »
Hi,
The number of problems reported in the forum seems to have significantly tapered off over the last couple of weeks. I'd like to think that is due to the initial beta issues having been fixed and that things are going pretty well for most users…. But I figure it's better to ask than assume.

Given that the web forum has some rudimentary polling tools, I just have to try them out  ;D

I'd appreciate it if you would take a moment to vote in two informal polls that I've posted. I'd like to get an idea of the groups satisfaction level with MSM’s feature set and the MSM Beta quality.  

If there is additional commentary you want to add, please feel free to do so – I'm just gathering input and I'm honestly interested what MSM users have to say.  I'm going to run the polls for a week. During the time the polls are open, I'll be reading replies to this thread but will probably restrict myself to limited engagement in dialog re poll comments until after the polling period. The polls were set up to show the results when the poll closes (so that partial results won't influence voters).

I've made to pools "sticky" so they will be easy to find at the top of the forum.

Thanks,
Dave

22
CVI MachStdMill (MSM) / How to get started with MSM Probing
« on: August 13, 2010, 07:45:40 PM »
Hi,
This "how to get started" guide was written in response to the various questions from people trying probing for the first time.

The following are nice simple sequential steps to try when first experimenting with probing and MSM.

FIRST: RTFM (read the fine manual)
Things usually go much smoother if you have first read the probing chapter of the user manual.  ;)

The MSM probing routines are internally built in a layered fashion and they all live in the probing library that is installed with MSM.

We’ll start from square one and work our way up to more complicated operations. If at any point in the process, something seems off, stop and figure out what is happening ***before*** going on….

I don’t understand why the first thing people try is the center finding routine…. Well I actually do understand, it’s the same character flaw that caused me as a kid to choose for my first plastic model kit an aircraft carrier….  ;-)   thankfully, there were no space shuttle models available then.

OK, let’s get started -

1)   Probe input line - does the big green probe led light on the probing page when you trigger the probe by pushing on the probe shaft?
And the LED is off when the probe is not triggered?
Assuming these are correct, we go on...

2)   is the probing lib alive?
Use the settings-common page, Probe Ver button - this calls the probing lib, gets the lib version and displays in the line at the top of the screen. You should see a message like  "MachStdMill Probing v0.XX".
 
That exercises all the screen to lib software linkages etc - it just doesn't cause any motion.

3)   Let’s start with some slow but reasonable probing set up parameters.

Please set the probing input params as shown in the screen shot below - this will get us working off a common input parameter set in case of trouble.

 
The probe tool number does not have to be 250 - that's just what I happen to use. What is important is that whatever you have set as the probe tool number, has to be the currently mounted tool. Anything else will result in an error as MSM won't do a probe operation without the probe tool mounted. IT also won’t let you start the spindle when the probe tool is mounted (don’t ask what caused me to add that logic to MSM).
Note that I have set the "probe slow FR" parameter DRO to 0.
This disables the 2nd probing operation (see manual) - for now we want a simple, single probe operation for testing.
I also gave a fast probe rate of 10ipm – this is slow enough to be able to see and react to what is happening.

FYI – depending on the probe, slower feed rates can actually cause problems with switch bounce in the probe sequence. The symptom will be false triggering or only partial triggering of a G31 sequence.

To start , set the mach debounce interval (this the one used for the probe input filtering) to 100. This is a nice starting number. Later when all is well you can reduce this – clear down to 0 if you have a very clean, non-noisy system.

If you  see the probe touch a surface, stop and then MSM say “surface not found” and then it goes back to the operation start point – it’s probably a debounce issue. Try raising the mach debounce level to see if the problem is noise.

[Info added 8-14-2010]
The basic mach probing sequence:
1)   G31 starts, mach starts moving machine
2)   Probe input triggers; mach records the position of the probe when it was triggered
3)   Mach decelerates the probe and movement stops. Note that the stopping position is not the trigger position. The difference is “overrun”.  A bit of Overrun is expected and good – as it keeps the probe in the triggered state.
4)   Mach returns from internal G31 execution to program that issued the G31 (for the MSM probing operations, this will be a return to the code in the MSM probing library)
5)   Script looks at probe signal –
a.   If probe is not active, we ran out of distance w/o triggering the probe
b.   If probe is active, we found something and were triggered.
6)   Probing Lib gets the trigger position and does what it needs (For example sets axis zero to the face we found).
7)   Library backs off by the overrun amount (this lets the probe become un-triggered)
8)   Library back off the user defined clearance amount.

Noise on the probe input line will make this sequence not work correctly –

Example: A short noise pulse at step 2 can stop the G31 motion; but at step 5 the probe will not be in the triggered state when checked. MSM thinks nothing was found and so puts the probe back to the starting position.

Adding some Debounce may help:

Mach's debounce is really a software fix for a hardware problem.
The ideal solution is to remove the noise from the system and use a debounce of 0.
Many people either can't or don't want to expend the effort required to accomplish that.
The pragmatic approach is to lower the debug number until the problem appears, then raise it back up a little.
That leaves the issue of "How do I tell if my required debounce setting is too high"?

"Debouce" is the amount of time a signal must be continually "on" before mach will consider it as just having turned on.
Each number in the debounce DRO represents about 40usec of time (25kHz Mach: 1/25KHz = 40uSec)
A debounce of  40uSec* 4000 = 160mSec. That is a long time for a computer, it's even pretty noticeable to a human.

At 4000, the probe signal has to be on for a minimum of 160ms before mach will see it and stop the probe motion.

How fast are you probing?  Let's just pick a number for illustration:
Say you are probing at 50ipm; during the debounce interval the probe will have moved (50ipm * 160msec ) / 60 sec/min = 0.133 inches....
So the probe will travel 0.133 in past where the edge is before mach will think the probe is triggered - and then it has to decelerate and stop.....
Consider - how much tip travel does the probe have? 0.133 inches over travel could be hard on the probe -  depends on the probe design.

Same scenario with 200 debounce: 50ipm * (200*40usec) / 60 sec/min = 0.0067 inch over travel

Personally, I prefer to see a debounce of no more than a few hundred. but the real answer is whatever combination works that makes the machine run reliably.

Play with the numbers and decide what you are comfortable with.

[end added info 8-14-2010]

4)   Set the geometry for the probe tool.
Did you set the probe tool # diameter to the probe tip diameter?

As you just setting up the probe for the first time, you may hot have a TLO for the probe tool set into the tool table.
That is OK, we are going to do the first test with TLO Off anyhow.

Save the tool table (so that when you com back and do this later you still have the data in the table for the probe tool).

Use the G49 button on the tooling page to make sure TLO is off.

5)   lets try a simple X+ direction probe. Position the probe in nice clear air.

Click the X+ green arrow - it should start moving toward X+, not find an edge after the XY max distance (1.5")  and tell you there no edge was found - does it?
The probe should return to the start point after not finding an edge.

Clear the error from the probe operation- hit the "probe Op reset" button. This resets us to start a new probing operation.

6)   if that works, let's do it all again, only this time while the probe is moving trigger the probe manually (use a long pencil or stick or something to tap the probe tip for a moment  - I never tell someone to put their hands into the area where a machine is moving). This should cause the routine to think it found the surface - does this work?

You may have to try this a couple of time to get a feel for how long to keep the probe triggered manually – it’s around a 1/10 to 1/4 sec at 10ipm.
 
7)   if that works, try the other XY directions. for each of X+, X-, Y+ and Y- do the "let it reach max distance and return to start" test and also the "Probe and trigger with stick" test.
Do all XY directions work?
 
08)   if the preceding works, we know that basic line probing routines work in X and Y.
We now proceed to check out Z....    
Z max is set to 1" - confirm this.
start from a height where 1" Z travel downward should not get close to anything.
Do a Probe Z-
It should go 1", not find a surface, tell you and that, then go back to where it started.
 
9)   do it again, only this time use your stick/pencil to trigger the probe - does it then think it found a  Z surface?
Z Zero got set to the where you triggered the probe?

If all is well, all 3 axes are working for basic probing ops.

Let try a real probing operation….

10)   Set up something to use as a probing target. A nice rectangular block works well.
Jog the probe tip over near block, position the probe in Z so that the tip sphere is just below the top surface of the block. Back off the block a bit – say 1/2 to 3/4 inch.

Now go thru trying the X+ probe op –
It should find the block, stop, and back off of the block by the XY clearance amount.
Using the params we set up above, the gap between the probe tip and the block’s vertical surface will be 0.100”.

(If the “probe only” button is OFF), you will see that the WC zero for each axis has been set to the surface the probe found.

If all is well, now reposition and try X-, Y= and Y- directions.

All still good?

11)   Now position the probe over the top surface of the test block.
We are going to try the Z- probe.
All good? (It should be as we did this earlier, manually – this is the same test only with the block).

12)   Now you can position the probe in from the edges of the block and try the “down and over” versions of the X & Y edge operations you did before.
Do all 4 corners – all still OK?
The results will be the same, only this is easier as you don’t have to position the probe tip height by eye.

You’ve now worked thru all the X,Y and Z single axis probing operations.
13)   Now you can position the probe over the block, within step off width  of the corner  and try the corresponding corner probe operations.

All OK?

14)   Now position the probe just like for the corner cases, but click the edge arrows. MSM will do a corner find op, then move along the edge and measure the angle of the edge wrt to the axis parallel to the edge. (You may need to reduce the “edge width” parameter to be less than the width of your test block).

All OK still?

15)   Now position the probe in a circular hole, set the probe to as you did before to just below the top surface of the hole, and try the center finding double headed arrow.

16)   Now you can try the down and over version of he circle center finder.

Every thing still ok?

All is working and you have now worked thru all the basic MSM probing operations.

17)   Now go back and reduce the debounce number until you start to see problems, then set it a bit higher again. If things run a debounce of 0, cool you have a non-noisy system.
Remember that a single debounce value is used for all inputs except the index pulse (which is separate). If you needed a debounce amount for your switches, you will still need that amount to make the switches reliable.

18)   Now, if you like, set Slow probe FR to non-zero and do it all yet again.
I keep the slow probe FR either 0 (off) or about 5ipm.

19)   Now you can enter a TLO for the probe tool and do it all once more to verify that TLO and probing is also OK.

Everything still OK?

Great!
BTW, you are now also a qualified MSM probing test operation verification test center.

If in any new release, you see a problem in a probe operation, run thru this sequence again – it will tell you where a problem first occurs as the probing ops increase in complexity.

That info really helps me to help you debug a probing issue.

Dave


23
CVI MachStdMill (MSM) / Notice: Probing bug found with SS systems
« on: August 04, 2010, 12:47:24 PM »
NOTICE: Probing bug found.

OK, this is going to sound a bit weird, because it is...

If you re using a SS, AND you are probing, AND the WCOz <> 0, then a probe may get crashed into a work piece.
A similar bug may exists for X,Y (not fully verified yet) when using a SS and WCO <> 0.

It appears that something about this combination makes the internal tip comp calculation done by Mach (or the SS plug-in, I don't know how that is split between the two) not use the same calculation as other cases.

Software combination:
mach 3.43.10 (or 3.43.12 - they both do the same thing)
MSM 0.2.1 (beta 3)
SS plug-in:  "SmoothStepper Beta2 Ver 0.0150ogx Config"

The bug does not manifest itself on a PP system.

I have gathered all the data and test results to show the problem, and shipped it off to Brian for some help.

Until we get the root cause figured out and solved, please be extra careful when probing with a SS.

Dave

24
CVI MachStdMill (MSM) / Controls not responding / MSM background task
« on: August 02, 2010, 01:23:17 AM »
An update:
I think I have figured out what is happening when some MSM controls stop responding.

I'll skip the gory technical details other than to say that the background task that MSM is using to drive those screen controls is getting killed/hung.   

All the controls impacted are things that were designed to be inside mach for V4, but I had to fake them on V3 - hence the background task that updates a bunch of User DROS and LEDs (this makes the V4 controls work on V3). When the task stops running, the controls stop getting updated.

I've contacted Brain to confirm the theory as to why this happens... I suspect it will take an update to Mach to cure this one.

Right now, I'm planning to hold the next beta release until we can sort this out.

I'll let ya know more then I can.

Dave

25
Hi,

I need some feedback from MSM Probing/touch plate users.

If you have tried Probing and/or touch plate features of MSM, I would appreciate it if you would post in this thread and let me know if all is well or if you are having a problem (and if so what the problem is).
Please include in the post:
    Mach version
    MSM version
   PP or SS or ?
         if SS, the plugin version in use
   Probe brand

I'm asking for this feedback because I'm aware of multiple people that are using these abilities w/o any problem – on both parallel ports and Smooth Steppers.

Yet there is one fellow for whom probing won't work. In fact he sees the spindle move in direction opposite of what the code commanded. The trace logs show one thing and his video shows another.
We'll figure it out eventually, but I'm stumped at the moment.

I would really like to know if he is the only one seeing this type of major problem or not. If there are others, more information may help find a pattern that will point us to what is happening.

Given this one repeatable (for him, I can't make it happen) major bug report, I have to say that there appears there may be a gremlin hiding someplace in the MSM probing library.  So please be careful when trying out the probing or TP facilities.

I suggest using very slow probe feed rates to start.
For TP stuff Perhaps try a mobile TP with a set Z Zero operation to make sure that all is operating fine, before you send a sharp toll headed toward the TCP TP rigidly mounted to the table…..
For Probing operations, do your first probing operations in air - use a stick (don't put your hands into the area of a moving spindle!) to trigger the probe and see that what happens is what you would expect.

Dave

26
CVI MachStdMill (MSM) / MSM and Mach3 versions
« on: July 26, 2010, 11:12:32 AM »
Hi,
For current information about the recommendations re Mach and MSM, please visit the Calypso ventures web site at
www.CalypsoVentures.com

Dave

27
CVI MachStdMill (MSM) / MachStdMill release announcements
« on: July 21, 2010, 07:07:24 PM »
Hi,

This thread is where we'll be putting MachStdMill release announcements.
If you want to be notified of MSM releases, turn notification on for this thread.

Dave

28
Hi,
I'd actually written this and posted in the VB forum on July 4th.
I decided to bring a copy of it over here as the people playing with MSM are likely to be interested in this info.

===========

This topic came up in another thread and I thought I'd start a new thread to draw people's attention to new abilities added to the basic APIs with mach 3.43.6.

Named macros are supported on v3 as of 3.43.6 - I'm making a lot of use of them for the new screen set.
You no longer have to put scripts in M codes. A script can be a disk file and it can be called from another script via the use of the RunScript API.

A significant number of new APIs were added to 3.43.6 many of which utilize or support the use of named scripts.
To quickly find the new APIs, get the latest v3 programmer's manual and search for "3.43" - that will find all the new ones (New calls are marked in the manual to tell what level of mach first implemented the API).

Here is a summary of new calls that are available as of mach 3.43.6:

Finding key files
    GetActiveProfileDir
    GetActiveProfileName

    GetActiveScreenSetName

    GetLoadedGCodeDir
    GetLoadedGCodeFileName

Named script execution
    RunScript

Windows interface
    GetMyWindowsHandle

Macro Pumps
    StartPeriodicScript
    StopPeriodicScript
    IsPeriodicScriptRunning

Mach configuration info
    GetSetupUnits
    IncludeTLOinZFromG31
    ProgramSafetyLockout

Touch Screen data entry
    NumberPad

People will also want to look at the section of the manual that describes pre-processing and #expand
A typical use of this is to keep source code in on place ( in a disk file) and include it in multiple scripts.
Fix a bug in the master file and it is now fixed in all scripts that include the file.

For the MachStdMill implementation, essentially no script code lives inside the .set file - instead all buttons simply use #expand to reference an external named script disk file.

Just so folks can see what can be done with the new facilities, here is the content of the MSM history button:
    #expand <Scripts\All-History>

And this is the contents of All-History.m1s:

Option Explicit
'********DO NOT remove or change the expand line or the included file contents******************
'  MachStdMIll license terms REQUIRE that the copyright and License terms remain a part of this source file
#expand <Headers\CopyRightAndLicenseNotice>   
'**************************************************************************************

' code to open mach error history file
'
' we use the non-GCode editor for the history file.
' this leaves the user specified editor available for G-code editing
' we do this becuase many gcode editors reject plain text as invalid gcode syntax
'
#expand <Headers\MSMConstants>
#expand <Headers\MSMConfigFunctionNumbers>

Dim CmdString As String
Const FileName = "C:\Mach3\LastErrors.txt"

' set the menu bar state to the stored user preference
Call MSMRunScript("MSMCOnfig", MSMGetNGCEditorInfo)

' config info reloaded from file, FQFN in UserLabel
CmdString = """" & GetUserLabel(MSMNonGCodeEditorUserLabel) & """" & " " & """" & FileName & """"
'MsgBox "CS = " & cmdstring
Shell(CmdString) 
Exit sub   ' return from button Call

#Expand <Scripts\Common\MSMRunScript>
------------

MSMRunScript is a wrapper I use for RunScript that adds simple parameter passing on top of run script. Here is it's contents:

'********DO NOT remove or change the expand line or the included file contents******************
'  MachStdMIll license terms REQUIRE that the copyright and License terms remain a part of this source file
#expand <Headers\CopyRightAndLicenseNotice>   
'**************************************************************************************

Sub MSMRunScript(ByVal MSMScriptName As String, ByVal P1 As Double)
   
   ' This is a wrapper that will allow one to replace the functionality of "Call M*********x Px".
   ' In fact this it is a bit more capable as the param is implemented as an Global MSM userspace DRO,
   ' so the script could actually put a value back in the param DRO if needed.
   ' This could also be expanded to more params, but MSM only was used one param to M********* macros.
   ' param type choices  where double DRO or LEDs - used DROs as the more flexible approach,
   ' LED parameters will be encoded within MSM as 0/1 value in the DRO.
   '
   
   Dim QFN As String
   
   SetUserDRO(MSMRunScriptParam1, P1)   ' stash the param value in the allocated Global DRO
   QFN = "ScreenSetMacros\" & GetActiveScreenSetName() & "\Scripts\Common\" & MSMScriptName
   
   'MsgBox "Script to run: " & Chr(13) & "    " & QFN & Chr(13) & "Param value = " & P1
   
   RunScript(QFN)   
   
End Sub

And to keep things legal, here is the copyright/license header file included in every MSM script file:
' This Source file is part of the MachStdMill screen set package for Mach3
'
' Copyright © 2010 Calypso Ventures, Inc. All Rights Reserved.
' The author of the MachStdMill screen Set is Calypso Ventures, Inc.
'
' Redistribution And use In source And binary forms, With Or without modification, are permitted
' provided that the following conditions are met:'
'
' 1. Redistributions of the Screen Set And supporting Macro source code must retain the above copyright
' notice, this list of conditions And the following disclaimer.
'
' 2. Redistributions In binary form must reproduce the above copyright notice, this list of conditions And the
' following disclaimer In the documentation And/Or other materials provided With the distribution.
'
' 3. The Name of the author may Not be used To endorse Or promote products derived from this software
' without specific prior written permission.
'
' THIS SOFTWARE IS PROVIDED BY CALYPSO VENTURES, INC. "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
' INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
' PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
' INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
' NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
' BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
' STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
' THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
'
'

Finally, the script editor in 3.43.6 was enhanced to support #expand etc - the E+ and E- buttons will expand / unexpand the #expand lines while you are in the editor.

And last, (but NOT least!) the editor also now has find and replace.

Anyhow, you can see that scripts can now get to looking rather different than prior to 3.43.6 <grin>
While the added tools are simple compared to most modern programming languages, they add a lot of functionality to mach's programing interfaces.

Dave

29
[Update 8-3-2010: The document that was previously attached to this post has been removed. The information it contained is no longer relevant and has became obsolete as of the MSM Beta 3 release. Please see chapter 14 of the MSM user manual for updated information.]

Hi Everyone,

I've started this thread is in response to a question about how to modify MSM button actions.

As I said in that thread, I believe adults should be treated as such and so my philosophy is usually going to be to let people have as much rope as they like to hang themselves with...  In exchange I insist that people also understand that I am not here to "Save you from the hangman's rope".   :o

Before you decide to modify the beta test MSM package, please give this really serious consideration:
If you need to modify MSM to get special system functionality, you really should probably wait until MSM is out of Beta testing.

“Danger: There be Dragons here!”

Remember that this is the MSM beta software.
The beta program is intended to test and debug MSM and the dev rev of Mach3.

The beta program is not intended to provide support for people to modify MSM.

No offense is meant to anyone, but this is the MSM beta test program and I can not afford to volunteer time to support or debug things that happen as the result of user modifications.

I frankly very, very, much prefer that users not modify MSM at all during the beta program.

You proceed solely at your own risk by reading further! The rules are no whining and no complaining from this point forward…

Finally, please do not use these instructions to modify MSM and then start a forum thread with “why doesn’t my custom script work?  All I changed was…"   I may not be predisposed to pay much attention to such a thread...

OK Charlie, you really want to drink the soda don't you?
[for those outside the US, see http://en.wikipedia.org/wiki/Willy_Wonka to understand this cryptic reference.]

To get in more trouble, see the document attached to this post.

[ UPDATE 7-23-2010 - The info in the doc below reflects the state of affairs as of MSM beta 1 (and 2). This is an area of internal implementation that is going to get a pretty major redesign. The methods for modifying an MSM button are very likely to change significantly within the the next couple of weeks. ]
Dave

30
Greetings!

We have an announcement to make:

Newfangled Solutions LLC and Calypso Ventures, Inc. are announcing that the beta version of the new mill/router screen set for Mach3 V3 (MachStdMill) has been released and is now available for download.

A new web forum section has been set up specifically for all things MachStdMill. It will be the primary support venue for the beta program and can be found at:

http://www.machsupport.com/forum/index.php/board,85.0.html

On the forum you’ll find some sticky topics with
1) Introductory information about MachStdMill and what features it provides,
2) Instructions for downloading MachStdMill from machsupport.com

Finally, for those that heard us say we were targeting the release for the week after the CNC workshop, please accept our apologies for the additional time it took to get the Beta release posted. We think you’ll be happy with the results.

See you over on the MSM forum!
Dave



Pages: « 1 2 3 4 »