Jump to content

Welcome to eMastercam

Register now to participate in the forums, access the download area, buy Mastercam training materials, post processors and more. This message will be removed once you have signed in.

Use your display name or email address to sign in:

CarbonCAD

Verified Members
  • Posts

    147
  • Joined

  • Last visited

Everything posted by CarbonCAD

  1. Not to sound stupid but if W is my tldia$ then I don't have a variable for my A. I would think that there would be something for shank dia that I could use, but I haven't found anything. Is there anything that could work for this?
  2. fbuf 1 0 2 0 size1 : 0 rc1 : 1 wc1 : 0 tcount : 0 fmt "N" 4 tseqno Ok so how I see it I can't use the non-buffer route because I am already updating op_id$ somewhere else. Colin may recall this one. He was a great help. So I would like to use the buffer method. This is what I have and it gives me T1N1, T2N2. . . basically the N number is matching the tool number. What am I doing wrong? size = rbuf(1,0) rc1=t$ if rc1 <= size1, tcount = rbuf(1,rc1) else, tcount = 0 if tcount = 0, tseqno = t$ else, tseqno = t$*100+(tcount-1) tcount = tcount+1 wc1 = t$ tcount = wbuf(1,wc1)
  3. Yup that's it. I was not finding them. I looked over tldia$ thinking it was going to give me the very outside diameter. Thank you.
  4. Here is the drawing. BTW I don't see the variable for the radius either.
  5. I finished a post, with much help, to post out a macro number that is assigned a certain tool type. I mean that if it is a ball endmill it will post out the measuring macro for a ball endmill, or whatever type of tool it is. Now I would like to pass some variables to the machine to be used in the macro. My problem: I can not find everything I need for a radius mill. I searched through the portfolio of information and did not find everything. The picture attached is what the macro calls for. I have shank dia. and flute length. I could calculate z = flute length - B, y=R+(W/2). So it looks like W is the one that is need. Where do I find this variable?
  6. No. I don't think I am one of your customers, but I will still give you a call to make sure.
  7. Yea, that's it. I should have seen it for as much time as I spent looking at it. I really appreciate you taking your time to look at it.
  8. I am calling it up from the SOF and tool change. The post is for a Makino S56, Generic 4 axis mill.
  9. The variable works but it does not post out the sub program with the fist tool, but it does from there on out. I put tool_typ$ in its place and it did give me the right number, so somewhere between tool_typ$ and the string select something goes wrong. Any ideas?
  10. I will try the variable for sure. I read in the NCI & NCI Parameter Reference pdf that "parameters written out with a 20000s line do not have predefined variables associated with them." I misinterpreted what that meant.
  11. I consulted my reseller and I am confused as to how I should proceed after reading this post. See email: "We have looked into your error file problem and have something you can do to get rid of this file. It requires making a change to the Control Definition file. Here are the steps to make this change, just in case you are not familiar with this file: Go to Settings and choose Machine Definition Manager Green check for ok and pick “No” for the “Save .mcx file” question Click on Edit Control Definition icon across the top of the window Click on Files in the column on the left of the window that comes up About halfway down, you will see “Posting error file”. Right now, your file says “Always keep log file”. Pick “On fatal errors”. Green check for ok and save the file This will cause the .err file to only be generated when a fatal error is encountered. If you should have any problems with this or require assistance to make this change, please contact us."
  12. Our machine is currently only measuring a flat endmill via the posted code. The call to this macro is P9623. I am trying to get the post to pull the tool type (20004 parameter) put it into my user defined variable and use a string selector to output the corresponding tool measuring macro (P9623 etc.). I do not get the correct output out of the string selector. The value going in is at the moment a type_tool of 10, but I am not getting anything out. Until it is solidly decided what each tool type's macro is I have placed their names in the string for now. It seems like it is stopping at the string selector. Anyone know what I am doing wrong? Parameter page from Reference Guide: 20004:Tool definition: tool parameters 20004 1 2 3 4 5 6 7 8 9 10 11 12 16 14 15 19 17 18 tool number tool type: 1 = center drill 2 = spot drill …… 10 = end mill - flat …… pparameter$ #Read operation parameters if prmcode$ = 20004, type_tool = rparsngl(sparameter$, 2) type_tool : 0 #tool type for tool length measurement tp00 : "CENTER DRILL" tp01 : "SPOT DRILL" tp02 : "DRILL" tp03 : "RIGHT HAND TAP" tp04 : "LEFT HAND TAP" tp05 : "REAMER" tp06 : "BORING BAR" tp07 : "COUNTER BAR" tp08 : "COUNTER SINK" tp09 : "END MILL - FLAT" eventually will be "P9623" tp10 : "END MILL - SPHERICAL" tp11 : "CHAMFER MILL" tp12 : "FACE MILL" tp13 : "SLOT MILL" tp14 : "RADIUS MILL" tp15 : "DOVETAIL MILL" tp16 : "TAPERED MILL" tp17 : "LOLLIPOP MILL" tp18 : "BULLNOSE" stype_tool : "" fstrsel tp00 type_tool stype_tool 19 -1
  13. I am using the ActiveReports tool sheet, and I double checked my wcs and it looks correct. Thad, just as you said, I see in the last step the z changes. The problem with this is that it is putting the last step z number into my toolsheet instead of what the machine sees for the last z depth. The guys running the program would really like it to put the MIN Z number in the sheet and it be correct. I think that in most circumstances we run into in the shop it is not completely necessary, but on our Makino with many line segments instead of arc moves and combined with features with very close z depths it would be helpful. Anyone have ideas? Maybe calculated values in the tool sheet?
  14. Hallelujah - Success - Thank you very much! ( OP# 1 | T1 | TOOL DIA. - .1875 | COMP OFF ) ( OP# 2 | T1 | TOOL DIA. - .1875 | CONTROL COMP ) ( OP# 3 | T2 | TOOL DIA. - .005 | WEAR COMP ) I'm still playing with the format.
  15. I have noticed that at the end of back plotting that the z depth in the bottom left hand corner is not any where near anything I have in that operation. It is a 2D contour going .250 deep and everything is set to absolute. See the attached pictures. That makes me wonder if it is related to my other problem which is my tool sheet is not showing the correct z. It shows MIN Z: 2.87. Both are the same operation. This can't be too complicated. What am I missing? Edit: Now I see that the backplot number is from the top wcs. Same with the tool sheet. Is there any way to get the toolsheet to come off the operation's current wcs?
  16. Nice description - "trivial task" I see variables in the MP Processing.pdf: nextdc$, nextop$, nextccomp$, nextcflg$. Would any of these be of any help? Thanks for the help. Sounds like I may have to find another route. For information purposes what is going on is we have a new Makino machine and it likes all line segments and not G2 or G3's, but that causes very large files. It holds them fine, but it is limited in the size of file that can be edited at the machine. The guys would like to see it up front. We had some problems and this was suggested to lessen possible future issues.
  17. If I remove the t$ > 0 why does it give me this many? ( T1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | COMP OFF ) ( T-1 | CONTROL COMP ) | D1 | CONTROL COMP | TOOL DIA. - .1875 ( T-1 | CONTROL COMP ) | D1 | CONTROL COMP | TOOL DIA. - .1875 ( T2 | COMPUTER COMP )
  18. It's a lot more cleaned up now. I am still having the problem of one tool being used for two different operations, but with different comps on each of the operations. (T1 | COMP OFF ) This would be the first operation. <---- (T1 | CONTROL COMP ) This would be the second operation with different comp. It would have the same tool as operation one, but is not posted. (T2 | COMPUTER COMP) This would be the third operation with a different tool What I see in my mind is that the t$ > 0 will have to be replaced with some other logic (due to the fact that if the tool has been used before it is assigned a -1) to have the tool post again, but somehow with the new comp.
  19. Excellent info. I also referenced the documentation I received from our retailer and I still can't get it. I think my problem comes in where the tool# is set to a -1 in the toolchange , but If I remove the t$ > 0 then it posts many t-1's. Here is what I have. Looks like it should be simple. Anyone have comments? pcomptable " ", sopen_prn, op_num, sdelimiter, *t$, sdelimiter, *scomp_type, sclose_prn, e$ pwrttparam$ #Pre-read parameter data (read param. during pre-read to extract data to use in pwrtt$ #"pwrttparam", ~prmcode$, ~sparameter$, e$ if prmcode$ = 15346, comp_type = rpar(sparameter$, 1) #Cutter compensation type - 0=computer, 1=control, 2=wear, 3=reverse wear, 4=off if prmcode$ = 15240, op_num = rpar(sparameter$, 1) #Operation number as shown in Mastercam file pwrtt$ #Pre-read NCI file #if tool_info > 1 & t$ > 0 & gcode$ <> 1003, ptooltable if op_num > 0 & gcode$ <> 1003 & t$ > 0, pcomptable Output: ( op_num 1. | T1 | COMP OFF ) ( op_num 3. | T2 | COMP OFF ) Should also have ( op_num 2. | T1 | COMP WEAR )
  20. It works. A little more tweaking left. - Thank you
  21. I can't find pwrttparam$, but this is what the rest of what I have to work with looks like. Straightforward never seems be straightforward for me ptooltable #Tooltable output sopen_prn, *t$, sdelimiter, pstrtool, sdelimiter, *tlngno$, [if comp_type > 0 & comp_type < 4, sdelimiter, *tloffno$, sdelimiter, *scomp_type, sdelimiter, *tldia$], [if xy_stock <> 0 | z_stock <> 0, sdelimiter, *xy_stock, sdelimiter, *z_stock], sclose_prn, e$ xy_stock = 0 #Reset stock to leave values z_stock = 0 #Reset stock to leave values pwrtt$ #Pre-read NCI file if tool_info > 1 & t$ > 0 & gcode$ <> 1003, ptooltable pparameter$ #Read operation parameters #rd_params is used to call pparameter postblock and read the parameters of the operation specified in rd_param_op_no #"pparameter", ~prmcode$, ~sparameter$, e$ if prmcode$ = 12025, rotary_axis2 = rpar(sparameter$, 1) #Capture the axis of rotation in Multiaxis Drill and Curve 5 Axis
  22. Thanks for the reply. I think this may take a little more time than I thought
  23. I never have delved deeply with the String Selector Tables, but now I what seems to be an easy change, but I cannot get it to post correctly. I am trying to insert a comment into the program that states what kind of comp is on. I am only getting computer comp to output despite what is set in the operation. Computer comp is initialized as 0, so I wonder if it is not updating. I really don't know. Any suggestions? # Cutter Compensation Type scomp : "COMPUTER COMP" scomp1 : "CONTROL COMP" scomp2 : "WEAR COMP" scomp3 : "REVERSE WEAR COMP" scomp4 : "OFF" scomp_type : "" #Target string fstrsel scomp comp_type scomp_type 5 -1 ptlchg0$ #Call from NCI null tool change (tool number repeats) pcuttype pcom_moveb pcheckaxis c_mmlt$ #Multiple tool subprogram call comment$ pcan result = newfs(15, feed) #Reset the output format for 'feed' pbld, n$, sgplane, e$ pspindchng pbld, n$, scoolant, e$ if mi1$ > one & workofs$ <> prv_workofs$, [ sav_absinc = absinc$ absinc$ = zero pbld, n$, sgabsinc, pwcs, pfxout, pfyout, pfzout, pfcout, e$ pe_inc_calc ps_inc_calc absinc$ = sav_absinc ] if cuttype = zero, ppos_cax_lin #Disable SGI Mode if previously on and not on now or mode has changed if prv_mi4$ & (mi4$ = zero | prv_mi4$ <> mi4$), psgi_off #Enable SGI mode if not previously on and on now or mode has changed if mi4$ & (prv_mi4$ = zero | prv_mi4$ <> mi4$), psgi_on if gcode$ = one, plinout else, prapidout "(", *scomp_type, ")", e$ # added line 10-17-12 JP pcom_movea toolchng0 = zero c_msng$ #Single tool subprogram call !xnci$, !ynci$, !znci$, !mi4$

Join us!

eMastercam - your online source for all things Mastercam.

Together, we are the strongest Mastercam community on the web with over 56,000 members, and our online store offers a wide selection of training materials for all applications and skill levels.

Follow us

×
×
  • Create New...