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:

SlaveCam

Verified Members
  • Posts

    774
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by SlaveCam

  1. If GTX1080 was installed in my work computer, I'd gladly come here every weekend to play games.
  2. In the example file, I am roughing a large chamfer to a solid block of steel using a 35mm (1.4 inches) fast feed cutter. The first operation refuses to cut down enough, the second operation cuts everything but also cuts too much air. How would you overcome this problem and is there a better roughing operation for this? TEST.mcam
  3. Good day. I have moved the shared 2017 folder to a network drive and now I need to use it on all our CAMputers. When I try to change the shared folder inside Mastercam settings, it wants to COPY the local files there. I don't definitely want it to do that. How do I just change the file folder without any copying? Trying to avoid any nasty surprises (even though backups are in place) Thanks.
  4. I've never had to do it in Mastercam but I've done it a million times in Acad. Where is it? I'm sure it exists somewhere... 2017.
  5. It seems that the Intellisense feature of Code Expert has quickly become a two-edged sword as far as usability is concerned. It is too intrusive! I cannot write code like I would in Visual Studio because it is too keen on replacing my words all the time. I would love it if I could activate it ONLY with Control+Space. Also, when typing for example e$ or n$, they become e$$ and n$$. As long as there is no MP post database for Notepad++'s Intellisense, I prefer Code Expert.
  6. I'd do a spreadsheet document for calculating the values. It's basic 2D math. Put in the gage ball diameter, countersink tip angle and either the start or end diameter of the cone and the spreadsheet will give you the needed Z value.
  7. Thanks This will definitely solve the color issue. I'm probably under-utilizing the program right now as it currently works only as the Windows own crappy Notepad's replacement.
  8. Did you have Operation Type checked when you took the screenshot? None of the ops show the type and this shows the manual edit message too
  9. That it does Thanks, that would be nice! Is it publicly available or did you do the definition youself? Does Notepad++ have a "pseudo-intellisense" feature too, like the Code Expert? I just recently realized how useful this feature is, especially to someone who hasn't been doing post stuff a lot.
  10. I so much want a tool management in this shop. It is eventually becoming a necessity with all the wasted time looking for existing or non-existing tools and inserts. Maybe use LibreOffice Base to create a poor-man's tool management system?
  11. I use Notepad++ which is excellent, but Code Editor is just superior for post editing with its syntax highlighting and ability to list blocks and pre-defined vars
  12. Save a few seconds of googling: http://www.mastercam.com/en-us/public-beta I hope they have made some improvements in the "legacy" side of the program too. Not just the higher end 5-axis stuff and such.
  13. Looks "normal" to me. I don't care about it because post output is correct.
  14. I finally had some time to implement this logic. It takes parameter strings in the form of PARAM1=VALUE1, PARAM2=VALUE2, etc. delimited by comma. You can put this string in either the group comment - in which case it is outputted and processed only once - or as a manual comment entry in the middle of the program. All extra spaces are trimmed away and all parameter values are processed as strings allowing for greater flexibility. If the group or manual comment does not contain a single '=' character, it is not regarded as a parameter string and no processing will take place. #User parameter variables param_index : 0 str_params : "" str_param : "" str_value : "" more_params : 1 str_delimiter : "," str_equ : "=" str_zero : "0" str_one : "1" suppress_group_comm : 0 #Output group comment only once if it is a parameter string #Trimming variables str_trim : "" str_trim2 : "" str_trim3 : "" trim_index : 0 trim_toggle : -1 #Removes leading, trailing and extra spaces inbetween from str_trim. #Input: str_trim #Output: str_trim ptrim_str str_trim2 = "" str_trim3 = "" trim_toggle = -1 if strlen(str_trim) > zero, [ trim_index = strstr(" ", str_trim) if trim_index > zero, [ #Leading spaces while trim_index = one, [ str_trim = brksps(trim_index+1, str_trim) trim_index = strstr(" ", str_trim) ] if trim_index > zero, [ #Trailing and inbetween spaces str_trim = str_trim + " " #Required for algorithm to work while trim_index > zero, [ str_trim2 = brksps(trim_index, str_trim) str_trim2 = brksps(two, str_trim2) if strlen(str_trim) = zero, [ trim_toggle = one ] else, [ if trim_toggle > -1, str_trim3 = str_trim3 + " " trim_toggle = zero ] trim_index = strstr(" ", str_trim2) str_trim3 = str_trim3 + str_trim str_trim = str_trim2 ] str_trim = str_trim3 ] ] ] ptrim_testcases str_trim = "A" ptrim_str, *str_trim, e$ #Output "A" str_trim = "No-blanks-at-all" ptrim_str, *str_trim, e$ #Output "No-blanks-at-all" str_trim = "No extra blanks here" ptrim_str, *str_trim, e$ #Output "No extra blanks here" str_trim = " Leading" ptrim_str, *str_trim, e$ #Output "Leading" str_trim = "Trailing " ptrim_str, *str_trim, e$ #Output "Trailing" str_trim = "One between" ptrim_str, *str_trim, e$ #Output "One between" str_trim = " Lotsa extra blanks here " ptrim_str, *str_trim, e$ #Output "Lotsa extra blanks here" str_trim = "" ptrim_str, *str_trim, e$ #Output nothing str_trim = " " ptrim_str, *str_trim, e$ #Output nothing #Called when invalid parameter or value is entered pparam_error result = mprint("Invalid parameter or value " + str_param + "=" + str_value) #Handles user parameters #Input: str_param, str_value #Output: None phandle_parameter #Add user logic here #sopen_prn, *str_param, str_equ, *str_value, sclose_prn, e$ if str_param = "HOME RETURN", [ if str_value = str_zero, suppress_g30p32 = one, else, if str_value = str_one, else, pparam_error ] else, if str_param = "STAGE TOOLS", [ if str_value = str_zero, else, if str_value = str_one, stagetool = one, else, pparam_error ] else, pparam_error #Parses parameters from user list and calls phandle_parameter on each of them #At least one '=' character must exist in the string for it to get parsed #Input: str_params #Output: None pparse_parameters if strlen(str_params) = zero | strstr(str_equ, str_params) = zero, more_params = zero else, more_params = one while more_params = one, [ param_index = strstr(str_delimiter, str_params) if param_index > zero, [ str_param = str_params str_params = brksps(param_index, str_param) str_params = brksps(two, str_params) ] else, [ str_param = str_params more_params = zero ] param_index = strstr(str_equ, str_param) if param_index = zero, result = mprint(str_equ + " expected"), exitpost$ str_value = brksps(param_index, str_param) str_value = brksps(two, str_value) #Trim param key and value str_trim = str_param ptrim_str str_param = str_trim str_trim = str_value ptrim_str str_value = str_trim if strlen(str_param) = zero, result = mprint("Parameter expected"), exitpost$ if strlen(str_value) = zero, result = mprint("Value expected for " + str_param), exitpost$ phandle_parameter ] suppress_group_comm = one # -------------------------------------------------------------------------- # Tool Comment / Manual Entry Section # -------------------------------------------------------------------------- sopen_prn: "(" sclose_prn: ")" pcomment2 #Comment from manual entry scomm$ = ucase (scomm$) #Manual entry - as comment. May contain user parameters if gcode$ = 1005, [ sopen_prn, scomm$, sclose_prn, e$ str_params = scomm$ pparse_parameters ] if gcode$ = 1006, #Manual entry - as code [ if scomm$ = "SPACE", " ", e$ else, scomm$, e$ ] 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, sopen_prn, scomm$, sclose_prn, e$ #Operation comment if gcode$ = 1051, sopen_prn, scomm$, sclose_prn, e$ #Machine name #Group comment. May contain user parameters. if gcode$ = 1052, [ if suppress_group_comm = zero, [ sopen_prn, scomm$, sclose_prn, e$ str_params = scomm$ pparse_parameters ] ] if gcode$ = 1053, sopen_prn, scomm$, sclose_prn, e$ #Group name if gcode$ = 1054, sopen_prn, scomm$, sclose_prn, e$ #File Descriptor - Output group comment checkbox must be checked in the control definition for it to work. - Tool staging does not work here, as the group comment is processed after the staging initialization... more work to do... - I was quite surprised at how lacking the string processing features are! Although it could be because my reference is a PDF from 10 years ago and I still haven't got the one that is up-to-date so maybe trim is finally there? PARAMETER TEST.mcam
  15. I think control compensation still has use in certain situations. For example, when using grinded endmills for finish profiling. Just measure the endmill and put the value in the control (and make sure the program has enough lead in). Another big one is a grinding tool I measure every time with micrometer before use. Because it's diamonded in the machine eliminating the effect of spindle runout and there is practically no tool deflection, the measured value can be trusted. Of course using indexable cutters wear comp sounds the way to go
  16. Thanks Jeff And apparently the backplot issue is eliminated if using wear comp
  17. OK, I get it now. I've used wear only a couple of times because nobody else in this house use it and it's easy to get confused and thus accidents could happen. But you got a good point there. Getting used to a new and superior process will take some time.
  18. Did you check the test file attached? Do the two operations produce identical backplot results (around the rectangle) when quick verify button is down on your system? Because it's 2016 I don't think it's a reason to neglect the control compensation feature... as said above, not everybody use state-of-the-art machines
  19. I use control comp whenever anything of IT8 tolerance or better is required. There's two choices to machining to tolerance: a. - Change stock to leave value in Mastercam / Repost and save the program to floppy / Take the floppy to the machine / Copy the program from the floppy to memory / Re-select program (okuma control) -OR- b. - Change tool radius compensation value Which is faster? The third choice is a new machine but I don't see that happening soon.
  20. MU3 was released? Didn't even notice and looking at the reseller's page, I can't find info on what's been changed/fixed. Is it worth installing? 2017 works ok for me...
  21. I have attached a test file where I use one finishing pass and one spring pass. The first operation does it the "traditional" way, wasting time. To save time, the control compensation is activated only at the beginning and at the end in the second op. Is there some gimmick to make Mcam backplot this properly? TEST.mcam

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...