Hello Guest it is February 26, 2021, 11:08:07 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 - Sargon

Pages: « 1 2 3 4 5 6 7 8 9 10 »
General Mach Discussion / Re: MACH as a CMM machine
« on: August 12, 2011, 05:36:22 PM »
OK so use the plasma height controll setup and instead of monitoring the arc voltage level use a sliding reohstat mounted at the head to follow the contour height and generate a variable voltage based on the voltage level as a height input then MACH can adjust it similar to the way it does with plasma. ON THE FLY.

Just a thought, (;-) TP

I will soon be putting together the same thing for my router, as the sheets of material I use aren't always flat! I was going to use compressed air to blow the chip away and help cool the bit, and an ultrasonic sensor to measure the height without touching it. Works an transparent material because it uses sound. Let me know if you would like some info on the ultrasonic sensors we order to use in our products. This along with a Torch Height Controller and it shouldn't be too hard!

Any recommendations on a THC for this application would be great.


In regards to notepad, you may have to change the file type to "All Files (*.*)" for it to "Save As..." an extension other than .txt when writing from scratch. If it already has a different extension and you just hit "Save", it wouldn't change the extension, but otherwise it wants to make it .txt by default.

Give that a try.

I was surprised to find that none of the examples in the Programmers Reference actually work. They all fail on my machine! LoadRun(File) stalls on generating the toolpath. The LoadFile(Filename), RunFile() example does not work because it executes way too fast. RunFile() is executed while LoadFile is still working. The IsLoading() example doesn't work because IsLoading() goes false early, before LoadFile() is complete, or at least before Mach is ready for a Cycle Start. Here is an example that will work for sure. I'm running 3.043.022, but that shouldn't matter.

' Wait for Load to Complete
   Sleep 100
Loop While IsLoading()     'Wait until LoadFile reports that it is done.
Sleep(100)     'Extra sleep time to allow LoadFile to actually be complete
' Run the File

VB and the development of wizards / Re: VBA Excel and Mach3
« on: August 11, 2011, 06:26:24 AM »
To make it fully automatic you would have to write a Mach3 Plugin DLL, at least to the best of my knowledge - not recommended unless you have experience with making DLLs or a strong desire to learn!

However, an easy solution could be to make the Excel VBA create the file in a predetermined place, then create a button on your screenset in Mach3 to load the file. e.g.
‘ Load the roadrunner demo file

‘ Load and run the roadrunner demo file

Using a DLL you would export a function that could be called by the VBA. The function would use Mach3 plugin interface to automatically load the file and optionally start it automatically, if that's what you wish. However, as I said before, not for the faint-of-heart. I wouldn't recommend it unless you have a working knowledge of C++ or an iron will to learn from scratch (it won't be easy if you don't already know the language)! The plugin interface is not very well documented; you will find most information and examples pertain to motion control, as that is it's primary purpose.

I know this probably isn't what you wanted to hear, but hopefully this is of some help.


G-Code, CAD, and CAM discussions / Re: G40, G41 and G42 have no effect.
« on: August 05, 2011, 06:43:36 AM »
What cam program do you use? It may do it automatically if you give it a tool size.

Otherwise, the following may help:

I run G40 at the end of every program to clear offsetting. Does there need to be anything other than a line number, space, and then "G40" on the line?

Technically you don't need line numbers in your code at all. A G40 all by itself is fine, with or without a line number which is always optional.

How early in the program can G41 or G42 be placed (obviously before any cutter moves) and does there
need to be anything else on the line besides the line #, space and "G41 or G42"?

Basically it's up to when you want to call a G41 or G42. Normally you would put it after any initialization lines, such as setting the units, turning on the spindle, cancelling rotations, or whatever you need to setup the system before the run. There is no hard and fast rule, that I know of.
Along with G41 or G42 you normally add a D[tool#] and if you don't specify it should (haven't tried it) use the active tool in Mach's tool table. E.g. if you called a M6 T2 then after that point Mach would use the tool size specified in slot 2 of it's tool table if you don't specify a D parameter. You can also use P parameter to over-ride mach's tooltable and specify your own tool diameter.

The gear is cut clockwise, so I would want to keep the tool to the left of the workpiece (correct?)

The gear is cut clockwise, so I would want to keep the tool to the left of the workpiece (correct?)

Does the tool length need an entry to make the offset work?

I use a 25.4 multiplier for x,y and z on the "run" screen since that was the only way I found that let me work in inches with the cad software I am using.
I wouldn't recommend using scaling on a regular basis. Your cam program can and should do it. Simple is always better, in my experience. The more features you use the higher the chance of weird things happening! On the other hand it "should" be able to handle it, but I can't say I've used scaling with tool comp.

I've tried all combinations I can think of so there has to be something I don't know about.

I have tried it with no "G"'s at all, same effect (as expected).

Using any combination of the 3G's and diameter or radius seems to make no difference at all.
Try selecting a tool table number with D parameter when using G41/42. Make sure you first put some data into the tooltable. If you change tool numbers after putting values on the main screen it may be switching you from Tool 0 to whatever you specified on the toolchange (e.g. M6 T2) which is probably blank. Also try over-riding it with a diameter specified with a P parameter.

Also, if the formula causes a large correction, watch the first move of the machine when you start a program. On my router it would hammer the motors at full accel just before executing the first move, not enough to lose steps, it was just quite harsh! I did have a fairly large error on my table at the time, though.

One other caveat is if you rotate the system (G68 or "Rotate Local System") and then feedhold, when you click cycle start again it will attempt to move to where the next co-ordinates would be if the system wasn't rotated. It will not lift Z first - if the bit is down it will rip through your part. To avoid this, i would feedhold, cycle stop, set next line, then I was OK to hit cycle start.

It sucks that such a powerful function is broken... maybe Mach4 will fix it?!?! I eventually squared the table up better, but it would be nice to get rid of the length issue (my table cuts slightly longer towards one end of my Y axis - slight mechanical misalignment of the gantry rails allowing the gantry to pivot a bit - need a double-screw setup!). It's almost square now, so I can get away with it without any further corrections.

For the limit switches it's really up to you how you set them up. On my router I only use 3 optical limits, 2 lower limits for x and y and an upper limit for z. They all double as homing switches. If I had more when I bought it I would have put on both upper and lower limits, but again it's up to; most machines technically don't NEED any of them at all to function properly. (I'm not suggesting you shouldn't hook them up, though ;).

Sounds like you're on the right track!



I would have done the same to fix the wiring issue.

The router can be controlled via manual switch or the relay according to the diagram, you're choice.

Top limit switch for Z is indeed for homing and can also double as an upper limit of course. Also note you can gang all the limits together into one input if you'd like, freeing up a few more inputs for a gage block/edge finder/probe/etc.

Is the 30V the input power for the motors?

I skimmed the instructions and they look fairly complete.

Note that the kernel speed should not arbitrarily be set to the max, 100kHz. It should be the lowest possible setting and varies with your max motor speeds. Actually, to be technical, the kernel speed required is determined by the actual number of pulses per second required to drive your motors at the selected maximum velocities. It is also affected by the resolution set on the motor driver.

Basically, you could work through the calculations, or just set it to 25kHz and bump it up one level at a time if it says the kernel speed is too low. I run my table at a high resolution (can't remember off hand what it was, but max on the controller) and have max velocity of 130 inches per minute, and a kernel speed of only 35khz. I can't see your machine requiring more, but rather 25kHz will likely work just fine.

There's no point in setting it higher than required. Higher kernel speeds have the potential for reduced reliability.

Also they recommend a laptop, and as Tweakie already mentioned it's not a good idea.

There may be more that's a little bit off, or maybe not quite the best way, but it should give you a pretty good start and you can learn from there. Hopefully there's enough in there to get you up and running!



you can do a "Swap Axis" VB command and swap your Spindle (which is constant velocity), and your A axis.

I had no idea spindle was available to be swapped!

Thanks for that!


Pages: « 1 2 3 4 5 6 7 8 9 10 »