JVizzi
-
Posts
70 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Store
eMastercam Wiki
Blogs
Gallery
Events
Posts posted by JVizzi
-
-
Is there any reference material for using Active Reports? I've never looked into that.
-
I currently have all my vertical mill posts (Mazak, Haas, Fanuc) setup to post sequence numbers only at "operation comments" using the pcomment2 block
pcomment2 #Output Comment from manual entry
scomm$ = ucase (scomm$)
if gcode$ = 1005, sopen_prn, scomm$, sclose_prn, e$ #Manual entry - as comment
if gcode$ = 1006, scomm$, e$ #Manual entry - as code
if gcode$ = 1007, sopen_prn, scomm$, sclose_prn #Manual entry - as comment with move NO e$
if gcode$ = 1026, scomm$ #Manual entry - as code with move NO e$
if gcode$ = 1008, n$, sopen_prn, no_spc$, scomm$, no_spc$, sclose_prn, e$ #Operation comment
if gcode$ = 1051, sopen_prn, scomm$, sclose_prn, e$ #Machine name
if gcode$ = 1052, sopen_prn, scomm$, sclose_prn, e$ #Group comment
if gcode$ = 1053, sopen_prn, scomm$, sclose_prn, e$ #Group name
if gcode$ = 1054, sopen_prn, scomm$, sclose_prn, e$ #File Descriptorthis is the only place that sequence numbers are in my programs
ex:
N10 (SKIM FACE OF STOCK, +.002 FOR FLY CUTTER)
T01 M06 (1.5 FACE MILL | H01)
G00 G90 G56 X16.025 Y-2.1249 S3500 M03
Z2. T6I always put comments on every single operation, this way the operators not only know whats going on in every section of the program, but can quickly search and start at the relevant section.
however, i would like to create, if possible, a buffer which sends all of these comments with their sequence numbers to a .txt file that i can print out as a reference with the job setup paperwork.
Is this going to be more complicated than its worth?
- 1
-
Colin,
I have only done very basic edits to the post so far. Mostly just deleting/adding variables to existing post lines, as I have learned what the variables output. I haven't done any formulas/logic yet, without others help that is.
David,
Thank you for posting that section of code here. I'm afraid I just don't understand enough yet to be able to use it though. I tried copying it into my .pst and got all kinds of errors.
-
Trying to bump this post back up.
I haven't been able to get anywhere with this issue.
The MP documentation just does not explain buffers well enough, or give any relevant examples that you can learn from.
As I mentioned in the OP, I have contacted my reseller, and they don't even know how to do it.
Thanks,
-
I have made a couple of custom lathe tools, and MC accepts the geometry just fine, and they work in the operation, and the NC code comes out correct, But in the verify the tools come out looking really weird with like a super tall insert sticking out of the bottom of (thru) to holder geometry. This is for a small boring bar, from the ISCAR PICCO line.
I was trying to post a screen shot here, but the forum keeps saying cannot upload/post or whatever that file type.
-
According to the Hass Manual it is correct. I get the same thing.
You are right! my mistake. I just went out to the lathe and tested it out, it does work correctly.
-
This is MX7. On a HAAS ST-10 Lathe.
Colin,
I messed around with those settings a bit, but they seem to only affect where the cutter comp is placed in/out of the canned cycle
-
Hello,
I'm not sure if this is a Post question, or if I am missing something among the operation options within MC.
When I setup a canned turning cycle, one rough operation, one finish operation, and I have "force tool change" UNCHECKED, I get the finish feedrate from the finish operation output inside the programmed toolpath, rather than on the G70 line where it ought to be:
(ROUGH FACE)
T101(CNMG 431 TURNING TOOL)
G54
G97 S3000 M03
M08
G00 X.55 Z.125
G50 S3000
G96 S500
G72 P100 Q102 U0. W.005 D.0625 F.005
N100 G00 Z0.
G01 X-.06 F.003 <---
N102 Z.125
G00 X.55
(FINISH FACE)
G70 P100 Q102
G00 X.55This is a problem, at least for my HAAS lathe, because during the rough cycle, it overrides the rough feedrate that I set in the G72 line (F.005) and runs at the finish feedrate even while its roughing. It also does this even if I have "Force tool change" selected on all operations.
I would line the finish feedrate to post out on the G70 finish cycle line.
G70 P100 Q102 F.003
And I am hoping this is not a post issue as the coding for canned cycles inside the post looks quite complicated.
Thanks!
- 3
-
Allan,
Thank you so much! that worked perfectly.
MIL-TFP-41,
Thank you for that reference to MP documentation. I just got a copy of the .PDF from my reseller, so now I know where to find those pre-defined variables.
-
Ok, this time I only posted out the Tap operation. Here is the whole NCI:
1050
16 53 26 9 2016 10 37 33 \\MACH1\CNC PROGRAMS\SHOP PROGRAMS\5.CAM PROGRAMS\MASTERCAM PROGRAMS\M00007444-00.MCX-7
20600
1804 9D3EAE0B-FBBA-11DA-991B-001111AFFC59 "" "" Machine Base
20600
1805 9D3EAE0D-FBBA-11DA-991B-001111AFFC59 "Z" "Z" Lathe Left Spindle Z Axis (-->+)
20600
1806 9D3EAE0F-FBBA-11DA-991B-001111AFFC59 "X" "X" Lathe Upper Turret X Axis
20600
1807 9D3EAE11-FBBA-11DA-991B-001111AFFC59 "" "" Lathe Upper Turret
20600
1808 9D3EAE13-FBBA-11DA-991B-001111AFFC59 "" "" Lathe Tailstock
20600
1809 9D3EAE15-FBBA-11DA-991B-001111AFFC59 "" "" Lathe Chuck
20600
1810 CA66FCA9-83F4-11E6-8574-001AA0C69940 "" "" Chuck Jaws
20600
1811 CA66FCAB-83F4-11E6-8574-001AA0C69940 "" "" Stock
20600
1812 9D3EAE17-FBBA-11DA-991B-001111AFFC59 "" "" Lathe Steady Rest
20601
1823 9D3EAE26-FBBA-11DA-991B-001111AFFC59 0 Left/Upper
999
64 0 7
1051
HAAS ST-10
1053
HAAS ST-10
1008
PARTIAL TAP M6 X 1 HOLE
1011
0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
1012
2 0 0 0 0 0 0 0 0 0
1013
0 0.11811 0. 0 5 0. 0. 0. 105 M6 X 1 TAP, SPIRAL FLUTE
1014
0. 1. 0. 0. 0. 1. 1. 0. 0.
1016
7 4 64 1 0. 0. 0. 41 0 0 2 0 25.4000508 9 1 3 7 13
1017
1. 0. 0. 0. 1. 0. 0. 0. 1.
950
0 0 0 1823 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1025
3050 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1027
1. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 0.
1020
3.235 0.5 0.5 -1.6175 0. 0. 0 0. 0. 0. 0. 1 3000 STEEL inch - 1030 - 200 BHN
20010
TOP
20011
20012
LATHE UPPER LEFT [TOP] 1
20013
20014
TOP
20015
20016
STEEL inch - 1030 - 200 BHN
20017
MEDIUM CARBON
20018
OPERATION 1
20019
20001
M6 X 1 TAP, SPIRAL FLUTE
20002
NONE
20100
3 4 1 0 0. 1 9 9 2
20101
0.03937008 82 0. 300 0 100. 100. 1 8 0 77
20102
5 0. 90. 0. 0. 0. 0. 0 0.
20103
M6 X 1 TAP, SPIRAL FLUTE
20104
68 0. 1.5 0. 0. 0 4 0
20105
0 0. 0. 0. 0. 0. 0.
20106
0 0 0 0. 0. 0. 0. 0. 0. 0. 0. 0
20107
0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
20108
7 0.23622 0.375 180. 1.25 1.25 35. 2 0.1 0. 0. 0. 0.03937 2
20109
3 0. 0. 0. 0. 0.
20110
NONE
20111
0 1.625 0. 0. 0. 0.125 1.5 0. 0. 0. 0. 1 0 0 0
20112
C:\USERS\PUBLIC\DOCUMENTS\SHARED MCAMX7\LATHE\TOOLS\NONE
20800
0.
1001
74441 100 2 9 9 3000 5 300 -0.03937 0 0. 0. 0.1 5. 0. 10. 1 0.
0
0 0. 0. 0.1 1000. 0
82
0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
81
3 0. 0. -0.25 0. -0.03937 0. 0. 0. 0. 0.1 0.1 0. 0. 0. 0. 0.1 0 0 0.
1003
5. 0. 10.
-
Colin,
here is the section of the NCI
TAP M6 X 1 HOLE
1011
0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
1012
2 0 0 0 0 0 0 0 0 0
1013
0 0.11811 0. 0 5 0. 0. 0. 105 M6 X 1 TAP, SPIRAL FLUTE
1014
0. 1. 0. 0. 0. 1. 1. 0. 0.
1016
7 4 64 1 0. 0. 0. 41 0 0 2 0 25.4000508 9 1 3 7 13
1017
1. 0. 0. 0. 1. 0. 0. 0. 1.
950
0 0 0 965 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1025
3050 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1027
1. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 0.
1020
3.235 0.5 0.5 -1.6175 0. 0. 0 0. 0. 0. 0. 1 3000 STEEL inch - 1030 - 200 BHN
20010
TOP
20011
This is my ltap$ section in my lathe post
ltap$ #Canned tap cycle, lathe
pdrlcommonb
pcan1, pbld, n$, *sgdrillf, *sgdrlref, pfxout, pfzout,
prdrlout, *feed, strcantext, e$
pcom_moveaI had to copy the rigid tap section from my haas mill post because the original haas lathe post used G32 for tapping and its just not correct type of cycle for Haas.
Also, what does it mean when a variable or postblock ends with "$" or begins with " * "
-
Hi Allen,
I modified my prpm:
prpm #Output for start spindle
speed = speedrpm
if nextdc$ = ltap,
"(next operation is rigid tap cycle)" e$
if speed = zero,
pbld, n$, *spindle_l, e$ #RPM = '0', output just an 'M05'
else,
pbld, n$, *sg97, *speed, *spindle_l, pgear, e$
!css_actv$But now, it posts out my test comment (next operation is rigid tap cycle) at every output of prpm. It seems that logic is not working. I get an error log on that line of The formula/boolean failed (general message), , Label has not been defined[20], and then at the end of the error log: The math calculation/formula has an error a bunch of times in a row
-
I am developing my HAAS Lathe post, based off of the "Generic Haas tl 2 axis lathe" post included with MX7.
I am wondering if it would be possible to write a logic within the "ltlchg" postblock to look ahead to the upcoming operation to see if it is rigid tapping, g84 to keep the spindle OFF.
With haas lathe I have found it is better to keep the spindle off before the g84 line and let the canned cylce turn it on.
So, I would like the 'ltlchg" postblock to still output the speed selection and RPM/CSS selection but NOT m03:
G97 S300
G84 x0. z-.50 r.1 f.039
Is this very difficult?
Here is my ltlchg:
ltlchg$ #Toolchange, lathe
toolchng = one
gcode$ = zero
copy_x = vequ(x$)
pcc_capture #Capture LCC ends, stop output RLCC
c_rcc_setup$ #Setup LCC on first 60000
plcc_lead_begin #Save original in sav_xa and shift copy_x for LCC comp.
pcom_moveb #Get machine position, set inc. from c1_xh
c_mmlt$ #Position multi-tool sub, sets inc. current if G54...
comment$
if home_type < two, #Toolchange G50/home/reference position
[
sav_xh = vequ(copy_x)
sav_absinc = absinc$
absinc$ = zero
pmap_home #Get home position, xabs
ps_inc_calc #Set start position, not incremental
#Toolchange home position
if home_type = one,
pbld, n$, *sgcode, pfxout, pfzout, e$
else,
[
#Toolchange g50 position
pbld, n$, *sg28ref, "U0.", "W0.", e$
toolno = t$ * 100 + zero
if home_type = m_one, pbld, n$, *sgcode, *toolno, e$
else, pbld, n$, *sg50, pfxout, pfzout, e$
]
pe_inc_calc #Update previous
absinc$ = sav_absinc
copy_x = vequ(sav_xh)
]
toolno = t$ * 100 + tloffno$
pbld, n$, *toolno, " ", ptoolcomment, e$
pbld, n$, pwcs, e$
pcom_moveb #Reset machine position, set inc. from last position
pcan
pspindle
#Added for 'css_start_rpm' logic
if css_actv$,
[
if css_start_rpm,
prpm # Direct RPM startup for programmed CSS
else,
pbld, pcssg50, pcss # NO RPM start - just output the CSS
]
else, # Direct RPM was programmed
[
prpm # Output programmed RPM
]
sav_absinc = absinc$
if home_type > one, absinc$ = zero
pcan1, pbld, n$, psccomp, *sgcode, pfxout, pfzout,
pscool, strcantext, e$
plcc_lead_end #Use sav_xa to position with comp. LCC
pcom_movea #Update previous, pcan2
ps_inc_calc #Reset current
absinc$ = sav_absinc
#Added for 'css_start_rpm' logic
if css_start_rpm,
pbld, pcssg50, pcss # CSS output AFTER a G97S???? RPM spindle startup
c_msng$ #Position single-tool sub, sets inc. current if G54...
toolchng = zeroAnd here is my rigid tap:
ltap$ #Canned tap cycle, lathe
pdrlcommonb
pcan1, pbld, n$, *sgdrillf, *sgdrlref, pfxout, pfzout,
prdrlout, *feed, strcantext, e$
pcom_movea- 2
-
Thank you for the replies. Where can I learn about buffers?
-
I've already asked my reseller. Maybe someone here can help.
I am wanting to change the output of the "tool table" at the beginning of the program to numerical order, rather than the order they are used in the CAM.
My post is a modification of the "Generic Haas" post that comes with MC
I realize I can re-order the tools inside the CAM before posting, but if you are doing multiple operations and toolpath groups, I don't want the tool numbers moving around all the time.
is this possible?
-
I have a part with 6000 small holes in it (.015) they are organized in rows, inside of a round pocket, like a shower head. I want to drill them in a "spiral" type pattern so that it follows the outermost diameter BC and works inward all around the part.
None of the Sorting patterns seem to be giving me what I want. Even the "rotary" style ones just start from one end and work across the part in a zig-zag fashion.
- 1
-
I think doing it like this should give you what you want.
[if comp_type < 4, sdelimiter, *tloffno$], no_spc$, sclose_prn, e$
If the comp type = 4 then it should not output, but if it is less than 4 then it should always output. Issue will be 0 = computer since now you will get it when computer is used even when you are not using it. That is what the original logic statement looked at. Was it greater than Zero and Less than 4 for the Value then output. Now you have less than 4 so if you use computer you will get when you may not want it. I suspect the NCI is not outputting the information needed when using a pocket routine. I would shoot and email to posts @ Mastercam and see what they have to say.
That seems to have done it for the tool table, but not it is not showing up at the tool change comments
I never use computer comp so that issue shouldn't come up.
-
OK,
Examining further, it looks like it is not picking up that I have wear comp selected in a "pocket" operation. I put a contour op before the pocket, and a circle mill after the pocket and all the tool comments came out perfect, except for the pocket:
(T03 | 1/2 FIN EM 4FL 1.0 LOC | H03 | D43)
(T01 | 1/2 FIN EM 4FL 1.0 LOC | H01) <---------this one is the pocket op, with wear comp selected in "finish" tab, but it doesn't post out D number
(T02 | 1/8 FIN EM 4FL .375 LOC | H02 | D42)What is I approach it another way. such as make it post out D number always, except when cutter comp = 4 "off"
would there be a way to write that?
-
JParis,
Yes, the post is currently set, tool_info : 2
I want back to the CAM, renumbered tools, and now it is working at the tool change comments and in the tool table, except for the first tool?
-
Thanks for the reply, but that wasn't it.
That clip in my OP was taken directly from the Generic Haas 4X post, no editing
-
I'm trying to setup my tool comments, both in the tool table at the beginning of the program, and at tool changes, to only output "D" offset numbers when I have selected "wear" comp.
This is the logic from the Generic Haas 4x.pst, but it doesn't seem to be working:
ptooltable #Tooltable output
sopen_prn, no_spc$, *t$, sdelimiter, pstrtool, sdelimiter, *tlngno$,
[if comp_type > 0 & comp_type < 4, sdelimiter, *tloffno$],
#[if xy_stock <> 0 | z_stock <> 0, sdelimiter, *xy_stock, sdelimiter, *z_stock],
no_spc$, sclose_prn, e$
xy_stock = 0 #Reset stock to leave values
z_stock = 0 #Reset stock to leave valuesIt has this logic at the tool table and tool change sections. And I'm not getting "D" numbers on the operations that I have wear comp selected. Even if I switch to computer, or control, still no D number.
-
OK, I found one of them, it is a desktop folder linked to "Edit/Open External Files (*.*)" in the system configuration.
What is that directory supposed to be set to?
-
I was working on some programs and posts a while back. I finished up what I was doing and deleted the original folders that the programs were in. Now, for some reason whenever I open up MC is remakes those older folders, just empty.
Is there some kind of link I need to delete? Are they related to my post or MMD somehow?
This is MX7 SP2
-
Colin,
Thank you so much! that worked perfectly. It solved the issue and I learned alot too.
The only thing is, it puts the special rectract line on every rapid move to the "clearance" plane. So every time it retracts, to go in for another depth cut, it posts that line.
Can we add another condition that checks for a forced tool change, so that it only has the special retract when it is completely done with a tool?
Custom lathe tool "thickness" X9
in Industrial Forum
Posted
I have had some experience with creating custom lathe tools, and I don't seem to have any problem with drawing, orientating and position the tool how I want, but it seems like there is no control over the "thickness" that it makes the insert/holder, when you run verify. When I say "thickness" I am talking about the "height" of the tool assembly displayed in verify along the "theoretical Y axis". Because it displays the holder way thicker than it actually is, it shows over-cutting and collisions during verify.
My main purpose in creating custom tools is for tight clearances on very small solid carbide boring bars/threading bars. Is there any way to control this?
I attached some pics of the 2d drawing file of the custom tool, and what it looks like in verify.
Its type is set as "threading" for the custom tool type tab