Hello Guest it is April 28, 2024, 06:57:58 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 - HimyKabibble

1051
General Mach Discussion / Re: Programming in Mach3
« on: August 18, 2009, 10:16:39 PM »
Mach3 macros are written in a VB script language called Cypress Enable.  If you Google "Cypress Enable", you'll find the Cypress website, and can download a PDF of the language reference manual.  The Mach3-specific function calls and variables are (sort of....) defined in the Wiki on the Artsoft website, and various places on this forum.  Learning to write Mach3 macros can cause you to tear your hair out, but it is doable.  The available information is spotty, and some is just plain wrong.  But, there are people here who have learned the hard way, so if you get stuck, just ask.

Mach3 plug-ins are written in C++, using a now very outdated version of VisualStudio.  I forget what version is required, but that too is documented in the Plug-In programmers guide on the ArtSoft website.  You cannot use newer versions - the plug-ins will compile, but they won't work....

Screensets can be created using a variety of tools.  Screen4, is probably the most common, though I'd suggest you instead try MachScreen, which seems MUCH more stable, and easier to learn.  Screen4 works, but it is riddled with quirks, and crashes periodically, often trashing your screenset in the process.  If you use it, make *frequent* backups.  Screen4 can be downloaded from the ArtSoft website.  I think you can download MachScreen from somewhere on this site, but I'm not sure.  Do some Googling and you'll find it.  It was written by a Mach3 user, and is a nice piece of work. 

Regards,
Ray L.

1052
Simpson,

I agree, no reason not to do the aliases - Old macros will still work for as long as the old calls are supported, and we can push people towards using the new ones.  Below is a sample of the format I'm using to document the function calls.

Don't think named macros will happen this time, though I'd sure like to see it myself.  In the meantime, you can get partway there:

MyBlivetMacro = "M978"
...
Code (MyBlivetMacro)

Not as good, but a small step in the right direction.

Regards,
Ray L.

1053
Ray,

   The docs I posted under Member docs for the VB stuff was ALSO from the Source Code that Art sent me, it was tested as to funciton, and for what had been depreciated, and added above and beyond the current Wiki........

it will save you some time, my friend,

scott

Scott,

Yup, I'm using that.

Regards,
Ray L.

1054
Your effort will surely be appreciated by manny. I only have a flavor of your task and know how much time and effort
you need to spend. If it allows me to learn how to write Mach3 macros you will have really achieved something!
RICH


Rich,

My hope is to make it possible for anyone with a basic understanding of VB to be able to easily pickup Mach3 macro programming.  We will not only be documenting everything, with liberal use of example code to demonstrate proper usage, but also doing a lot of re-organizing, to make the function calls and OEM codes more "transparent", so less explanation will be needed.  For instance, many of the existing function calls have names which give no clue to their function.  These will be "aliased" to new names, with clear names that make their function obvious.  For example, "GetInBit()" gives no clue that it refers to a ModBus input bit.  So, all ModBus functions will probably be renamed to start with "Mod", to make this clear.  The old calls will still be there, to support legacy macros, but their use will be discouraged in new macros, as they will be removed at some point in the future.  Same with OEM codes - I am hoping that both numeric and symbolic (named) access will be provided to all OEM codes, variables, etc, to make the code more self-documenting.  For the programmers among us, I will also likely provide a few of my own utilities, to provide, for instance, and "include" capability, so it will be easy to define variables and constants in one place, but have them referenced in many macros, without having to cut and paste code.  This will make it easy, for instance, to define a particular variable used in many macros to reside in DRO 1234.  But, by changing a single line in a single file, to move that variable to DRO 1357, because the DRO will be referenced through a symbolic name, rather than a hard-coded numeric OEM code.

Regards,
Ray L.

1055
Ray does the source code explain what it does? the OTHERs list did

(;-) TP

The source code I have does not always explicitly explain functionality, but I am testing each function myself, and will be trying to uncover any quirks/limitations/etc.

Regards,
Ray L.

1056
Terry,

Don't need the other lists, I have the source code....

After posting this, I jumped in the car, and headed into town, and on the way realized what the answer to my own dumb question was....

Regards,
Ray L.

1057
Brian has drafted me to write a real Customization/Macro Programming manual for Mach3 v4.  This will eventually be a complete tutorial/reference document covering everything from creating custom screensets, to writing complex macros, like a toolchanger macros, with detailed descriptions of every Mach-specific function, variable, constant, etc., as well as liberal examples and usage recommendations, to make proper things as clear as possible.  This should make it possible for almost anyone to learn how to write Mach3 macros. 

Since there is much I currently do not know, I suggested that rather than bugging Brian with a bunch of stupid questions, I would first see if I could get what I needed from folks on here, since many of you have actually done more macro programming than I have to date.  I am starting by writing a reference manual for the Mach macro functions.  I have a comprehensive list of what functions exist from the Mach3 source code, along with their argument lists and return values, but I do not know what the functionality of some of them is (like nFmt()??).

So, how many of you are experienced Mach3 macro programmers that can help out by answering some questions?

First question:  What is the difference between StraightFeed() and StraightTraverse()?

Regards,
Ray L.

1058
General Mach Discussion / Re: CAT30 vs BT30 vs NMTB30 vs ????
« on: August 13, 2009, 02:58:54 PM »

1k to 2k drawbar tension and 3.3K release tension  . . . . . this seems to me like reasonable numbers.

In my many years of using R8, I've always had to whack the loosened drawbar with a hammer to free the collet. (the drawbar wrench qualifies as a 'hammer', incidentally  ;))  Releasing MT tapers requires an act of congress. 

I would err on the side of 'way too much' force for releasing any taper, even a steep solid one.

On my current drawbar. unscrewing the bolt actually pushes the taper out, as the drawbar assembly is pushed down by a pair of air cylinders.   There's no downforce initially, but after the drawbolt unscrews about 1/8", the socket bottoms out, and further unscrewing creates downforce.  Even with the bolt seriously OVER-tightened, it has never failed to pop out on release.  It doesn't seem to require a huge amount of force, though I have several hundred pounds available if needed.

Regards,
Ray L.

1059
General Mach Discussion / Re: CAT30 vs BT30 vs NMTB30 vs ????
« on: August 13, 2009, 02:54:04 PM »
Ray you are correct the drwbar forces for a 30 taper run from 1-2k lbs.  You do not have to worry about collet toolholder like the r8 collet  in 30 taper there are none(;-) They all use solid holders. There are collet type holders but the tapers are solid.

Now do be advised that the 30 taper series are getting rarer every year. Most machines start at cat/BT40 type these days. But they also have a lot higher faster spindles as well. It just raises the cost of NEW holders a bit every year as they become more obsolete. AND for the most part they are NOT cheap like the r8 holders (;-)

(;-)TP


Terry,

Unfortunately, a 40-taper spindle is not an option.  30-taper is all that's available.  I've found several sources for 30-taper holders, and prices seem no worse than R8, though there clearly are fewer sources.  My plan would be to immediately buy a lifetime supply.  It's either that, give up on a toolchanger entirely, or buy a used VMC.

Regards,
Ray L.

1060
General Mach Discussion / Re: CAT30 vs BT30 vs NMTB30 vs ????
« on: August 13, 2009, 09:58:44 AM »
Isn't the pressure mentioned used for releasing the drawbar?

Seems to me that the release pressure would need to be adequate for breaking loose the taper and could be many times the actual drawbar tension.


The force required to release the taper, even with R8, is relatively small - no more than a couple hundred pounds.  The major force is the tension required to keep the tool in place, particularly with collets.  If using a "hard" holder, like an endmill holder, much less tension is required - It appears to me that 1-2K pounds is adequate with a hard holder, particularly with a 30-taper.

Regards,
Ray L.