Re: Drilling problem - machine crash
metalmayhem, I believe that I said that I was not a gcode "expert" rather than that I wasn't "that great with gcode".
My gcode knowledge is certainly not "expert" but I've successfully completed many gcode projects including creating an enhanced, PP specific, post for Vectric CAM software, probing modules that are faster and more accurate than Tormach's, gear cutting code, and 3d contouring programs using coordinates created in Excel. All have made extensive use of LinuxCNC specific capabilities including polar coordinates, conditionals, named variables, etc. Restricting your gcode dialect to what is available on all machines is rather like restricting your vocabulary to 4-letter words -- it works but it is difficult to express complex concepts.
Re: Drilling problem - machine crash
Quote:
Originally Posted by
kstrauss
metalmayhem,
. Restricting your gcode dialect to what is available on all machines is rather like restricting your vocabulary to 4-letter words -- it works but it is difficult to express complex concepts.
doesn't make sense unless your creating new g godes on your own .
A man is only restricted to what the machine is capable of doing
G code is g code it's a universal machine language of sorts with the exception of proprietary optional g codes .
The macro coding I previously mentioned is a simple example of working outside the norm , and outside the box , but , the bulk of the coding is still g code . I programmed it for haas and later carried it over to my mach setup with a few modifications to the macro sub .
I think you've painted a very narrow picture of what my point is
Re: Drilling problem - machine crash
As I mentioned, I am definitely not a gcode expert and have never used a Haas. Does the Haas dialect of gcode provide for named variables? For example, is something similar to
N10460 o510 if [#<_value> AND [#<_Z> LT #<_minimumClear>]]
N10470 G00 Z#<_RetractFrom>
N10480 o510 endif
acceptable or are is one limited to using impossible to remember variables such as #1234? If only the latter then you are limited to producing unmaintainable programs which is probably worse than being restricted to 4-letter words.
Re: Drilling problem - machine crash
all haas macro can be found in the haas manual . As I mentioned most machines follow a lot of the same things with macro but they can also be all over the board . A lot of the linuxcnc guys are heavily into macro and since it is open source they've been able to add whatever functions they want to it . I'm not as proficient with macro as I am with g code and I can easily admit that , but I have used a fair amount for math functions in the program
This is driving further away from the original thing that was pointed out , clean format . A clean header and clean formatting after the tool change , that can easily go for straight g code or if using macro as well . Poorly programmed macro can easily provide terrible results .
I do have to apologize to the op for what I said about the original code on here . It wasn't intended to be insulting but I realize that it will come across that way and that wasn't the intent
Re: Drilling problem - machine crash
Before we give this thread a well deserved rest I'm still curious (and too lazy to check myself). Does a Haas support variables with reasonable names or is one limited to numeric names?
Re: Drilling problem - machine crash
names numbers trig functions etc
ya your probably right about the rest
Re: Drilling problem - machine crash
I'm unsure that I understand your reply. Can a Haas use a variable with an easy to remember name of something like
"#<_minimumZclear>"
or must all variables be of the form
"#12345"?
Re: Drilling problem - machine crash
you asked if its names or only numerical
that character you displayed will likely be only used on linuxcnc but I may be wrong
if , then , round , trig characters ( tan atan) etc etc . Custom probing , tool collision protection and lots of things can be done with the available functions if pieced together correctly
Re: Drilling problem - machine crash
What do you mean by "that character"? If you are referring to the underscore ("_"), it has a specific use in LinuxCNC to determines the scope of a variable (local or global). Scope is absolutely crucial to producing maintainable and reusable code so I assume that Haas somehow caters to that requirement (I suspect using lexical scoping as defined in RS274/NGC). Ignoring the issue of scope, I'm trying to learn whether the name of a variable (not a trig function) can contain human-relevant alphanumeric characters.
Re: Drilling problem - machine crash
Quote:
Originally Posted by
kstrauss
What do you mean by "that character"?
, I'm trying to learn whether the name of a variable (not a trig function) can contain human-relevant alphanumeric characters.
this character minimumZclear
if you want to learn further then download the haas manual a gloss it over
Re: Drilling problem - machine crash
This is getting silly! Do you mean that the underscore is not acceptable or that the entire alphanumeric string is not allowed? I apologize for being persistent but I am interested in the answer and I don't know another Haas expert to ask.
Re: Drilling problem - machine crash
"#<_minimumZclear>"
or must all variables be of the form
"#12345"?
34
this is beyond silly it's gotten outright fkn stupid
I thought you were saying minimumZclear was a command , thats what I was referring to . I've never seen it before is it a command ? Yes it's not a character and I used the wrong wording
As far as " haas expert " goes I've already stated that I am not completely proficient with macro programming so wtf do you keep at me about it . I've used it to suite the jobs that required it and I do not program with it on a daily basis
Re: Drilling problem - machine crash
The "#<_minimumZclear>" is a variable that is little different from "#1234" except that it is meaningful to humans. The same string but without the underscore is a local variable.
Re: Drilling problem - machine crash
...the code always changes . now its just bits
https://www.google.com/search?client...erman+code+ww2
,,god helps us all G30's
Re: Drilling problem - machine crash
Quote:
Originally Posted by
machinehop5
Tormach added the G30 to help those that could not understand how to do simple programing of the standard G-Code format Tool call normally takes care of this ( T1 M6 ) or should I say ( M6 ) does all the work, it is convenient though, G0Z0. does the same thing also, G30 will only work on there control in this way, and could be a crash if used in this way in other controls, as a normal G30 is to move to a 2nd 3rd or 4th Reference Point in a normal control, this is rarely used in the real world, so may be why the chose the G30 for this task in there PP control
They could of kept it to a standard though by modifying the ( M6 ) if it did not do what they wanted, which would of been a better choice of codes to use
As an example Haas they have the ( M6 ) It Stops the Spindle, Stops the Coolant, Moves the Z axis to the Tool Change Position, and Orients the spindle for the Tool Change Keeps it simple and is a standard code that everyone uses
Re: Drilling problem - machine crash
Quote:
Originally Posted by
mactec54
Tormach added the G30 to help those that could not understand how to do simple programing of the standard G-Code format Tool call normally takes care of this ( T1 M6 ) or should I say ( M6 ) does all the work, it is convenient though, G0Z0. does the same thing also, G30 will only work on there control in this way, and could be a crash if used in this way in other controls, as a normal G30 is to move to a 2nd 3rd or 4th Reference Point in a normal control, this is rarely used in the real world, so may be why the chose the G30 for this task in there PP control
They could of kept it to a standard though by modifying the ( M6 ) if it did not do what they wanted, which would of been a better choice of codes to use
As an example Haas they have the ( M6 ) It Stops the Spindle, Stops the Coolant, Moves the Z axis to the Tool Change Position, and Orients the spindle for the Tool Change Keeps it simple and is a standard code that everyone uses
G30 is not a Tormach specific thing but is part of the standard LinuxCNC distribution.
See https://linuxcnc.org/docs/2.6/html/g...#sec:G30-G30_1
I don't understand your comment that "...G0Z0. does the same thing also..." Doesn't it simply move the spindle to Z0? What am I missing?
Re: Drilling problem - machine crash
haas will go to tool change position on am m6 call . Many machines won't depending on the control and they require being at z home position , which is one reason why a g91g28z0 is often posted at the end of the tool cycle .
With mach I used a g28.1 after every tool cycle because the mills I had at the time were turds and tapping the home switch was necessary to keep them somewhat accurate . I don't recall seeing that code as an option on haas , fanuc etc , it's just optional g codes which most controls have
With my tormachs and novakon which run on pathpilot I home to hand bomb my tools at chest height rather than down by my nuts , it's a comfort and visual thing . I could have chose a g53 or modified my m6 but I didn't . I can't remember my specific reason for using g30 over g28 , but it does stick out like a sore thumb when I want to quickly verify that the program has been modified from mach to pathpilot
1 Attachment(s)
Re: Drilling problem - machine crash
Quote:
Originally Posted by
kstrauss
G30 is not a Tormach specific thing but is part of the standard LinuxCNC distribution.
See
https://linuxcnc.org/docs/2.6/html/g...#sec:G30-G30_1
I don't understand your comment that "...G0Z0. does the same thing also..." Doesn't it simply move the spindle to Z0? What am I missing?
This is not how the original Linux control code was written, someone at some time changed how a G30 works, the original Linux software was written to standard RS 274 D standard which is the industry standard
There is a European version also which is slightly different, and many manufactures that add codes or change some of the code functions, the basics though is still the standard RS 274 D
The snip is what the G30 is in the RS 274 D format which is similar to how it is being used, so at some point it was changed just for that function for there Tool Change use, it was almost a never used code like a lot of others codes today, so the slight change to it is not a big deal, using a M6 would of been a better choice
G0G53Z0. will work also, some Hobby users or machines without an ATC
G0Z0. works also, some Hobby users or machines without an ATC
M6 works Industry Standard
G30 works also for there PP control mostly hobby users
Re: Drilling problem - machine crash
Quote:
Originally Posted by
metalmayhem
haas will go to tool change position on am m6 call . Many machines won't depending on the control and they require being at z home position , which is one reason why a g91g28z0 is often posted at the end of the tool cycle .
With mach I used a g28.1 after every tool cycle because the mills I had at the time were turds and tapping the home switch was necessary to keep them somewhat accurate . I don't recall seeing that code as an option on haas , fanuc etc , it's just optional g codes which most controls have
With my tormachs and novakon which run on pathpilot I home to hand bomb my tools at chest height rather than down by my nuts , it's a comfort and visual thing . I could have chose a g53 or modified my m6 but I didn't . I can't remember my specific reason for using g30 over g28 , but it does stick out like a sore thumb when I want to quickly verify that the program has been modified from mach to pathpilot
A G91G28Z0 is not a good code to use for this as this is incremental move and you require a G90 in the next move after this or you will most likely crash
A G53 is a better choice, if you had to do this as this is an absolute move
Re: Drilling problem - machine crash