Subroutine GUI
- BigJohnT
- 
				 Topic Author Topic Author
- Offline
- Administrator
- 
				  
		Less
		More
		
			
	
		- Posts: 3990
- Thank you received: 994
			
	
						12 Oct 2010 21:30		 -  12 Oct 2010 21:35		#4653
		by BigJohnT
	
	
		
			
	
	
			 		
													
	
				Replied by BigJohnT on topic Re:Subroutine GUI			
			
				I just noticed with ngcgui you can load several different subfiles to create a complete program... Dam that is neat.
Load a subfile, set the parameters then "Create Feature" then load the next subfile and continue until done then "Finalize"
Johnhttp://www.linuxcnc.org/component/option,com_kunena/Itemid,20/func,view/id,3408/catid,40/limit,6/limitstart,0/lang,english/
					Load a subfile, set the parameters then "Create Feature" then load the next subfile and continue until done then "Finalize"
Johnhttp://www.linuxcnc.org/component/option,com_kunena/Itemid,20/func,view/id,3408/catid,40/limit,6/limitstart,0/lang,english/
		Last edit: 12 Oct 2010 21:35  by BigJohnT.			
			Please Log in or Create an account to join the conversation.
- Rick G
- 
				  
- Offline
- Junior Member
- 
				  
		Less
		More
		
			
	
		- Posts: 27
- Thank you received: 114
			
	
						27 Oct 2010 10:18				#4890
		by Rick G
	
	
		
			
	
			
			 		
													
	
				Replied by Rick G on topic Re:Subroutine GUI			
			
				Hello John,
Just wanted to let you know I have started using your lathe subroutines on my lathe, just the ticket when you need to knock out something quickly. Thanks for posting them.
I noticed on Dewey Garrett's site that ngcgui can be embedded in an axis tab. Have you tried that?
Rick
					Just wanted to let you know I have started using your lathe subroutines on my lathe, just the ticket when you need to knock out something quickly. Thanks for posting them.
I noticed on Dewey Garrett's site that ngcgui can be embedded in an axis tab. Have you tried that?
Rick
Please Log in or Create an account to join the conversation.
- BigJohnT
- 
				 Topic Author Topic Author
- Offline
- Administrator
- 
				  
		Less
		More
		
			
	
		- Posts: 3990
- Thank you received: 994
			
	
						27 Oct 2010 11:02				#4891
		by BigJohnT
	
	
		
			
	
			
			 		
													
	
				Replied by BigJohnT on topic Re:Subroutine GUI			
			
				Hi Rick,
No, but I intend to this weekend. Much better to have a tab in Axis than all those icons on my desktop for each op.
John
					No, but I intend to this weekend. Much better to have a tab in Axis than all those icons on my desktop for each op.
John
Please Log in or Create an account to join the conversation.
- cwmk577
- Offline
- New Member
- 
				  
		Less
		More
		
			
	
		- Posts: 10
- Thank you received: 1
			
	
						21 Nov 2010 21:07				#5501
		by cwmk577
	
	
		
			
	
			
			 		
													
	
				Replied by cwmk577 on topic Re:Subroutine GUI			
			
				I haven't had a chance to test this yet but the concept is absolutely awesome. One of the things I liked most about Mach was the Wizard facility, and this goes a long way to making subroutines as nice for end-users as the Mach wizards.
To that end, I have a few ideas for ways to make this friendlier or more powerful:
1. As someone said earlier, it would be a nice option to be able to populate an input based on "Current Machine Position." Maybe you need three buttons for Machine X, Y, Z, etc.
2. Tool parameters: I'd like to set things like feed rate, plunge rate, RPM, and depth of cut on a per-tool basis and use them as defaults when populating a subroutine. Ideally I could either set these directly and see what they equate to in SFM, feed per tooth, etc. or vice-versa.
3. Graphic legend: Allow the subroutine programmer to attach an image which visually explains the parameters. Sometimes it's easier to put labels on a picture than explain things with words, especially as the number of params grows. Mach lets the wizard designer place the inputs directly on top of a graphic, but I think that's superfluous.
4. Saving parameters in a single part file: This one might be a bit complicated but I think it could be really powerful. Let's say you have a bracket which consists of a surfacing op, four drilled holes, and a rectangular pocket. You make one, but find that the pocket needs to be shifted 0.050" to the right and milled 0.050" deeper.
Right now, I could go into the gcode program, delete the pocketing routine, run the pocket sub with the new parameters, and paste the output. It's not bad, really, but it requires switching to an editor and it's easy to miss a line of code and ruin the program. I think it can be made much better:
When you combine this with the full toolpath preview in Axis, I think it would make for an extremely awesome user experience. And I don't know if my description makes it sound really complex to implement, but the way I'm seeing it I think it should be--mostly--pretty straightforward.
					To that end, I have a few ideas for ways to make this friendlier or more powerful:
1. As someone said earlier, it would be a nice option to be able to populate an input based on "Current Machine Position." Maybe you need three buttons for Machine X, Y, Z, etc.
2. Tool parameters: I'd like to set things like feed rate, plunge rate, RPM, and depth of cut on a per-tool basis and use them as defaults when populating a subroutine. Ideally I could either set these directly and see what they equate to in SFM, feed per tooth, etc. or vice-versa.
3. Graphic legend: Allow the subroutine programmer to attach an image which visually explains the parameters. Sometimes it's easier to put labels on a picture than explain things with words, especially as the number of params grows. Mach lets the wizard designer place the inputs directly on top of a graphic, but I think that's superfluous.
4. Saving parameters in a single part file: This one might be a bit complicated but I think it could be really powerful. Let's say you have a bracket which consists of a surfacing op, four drilled holes, and a rectangular pocket. You make one, but find that the pocket needs to be shifted 0.050" to the right and milled 0.050" deeper.
Right now, I could go into the gcode program, delete the pocketing routine, run the pocket sub with the new parameters, and paste the output. It's not bad, really, but it requires switching to an editor and it's easy to miss a line of code and ruin the program. I think it can be made much better:
- When the user first opens NGCGUI, allow them to select or create a new "Part File." I could see doing this as its own file, e.g. an XML file, or embedding the information in G-code comment blocks in the final program.
- The part file would contain a definition block for each part feature. A feature would be an instance of a particular subrotuine, i.e., if I run the "drill a hole" subroutine four times to define four drilled holes, my part program would have four feature definitions, with user-defined labels like Hole 1, Hole 2... Hole 4.
- If I chose an existing part file, the gui would have a dropdown with all the features of that type. I.e., if I choose the rectangular pocket sub, then open a part file, it would show me all the rectangular pockets on that part, plus the option to create a new one
- If I choose an existing pocket, it would load all the parameters, and then I could modify the specific ones I want, and save them.
- At some level, the user would get the option to "run all" which would run all the individual subroutines (of all types) based on their saved parameters, and spool the outputs into a single program file
When you combine this with the full toolpath preview in Axis, I think it would make for an extremely awesome user experience. And I don't know if my description makes it sound really complex to implement, but the way I'm seeing it I think it should be--mostly--pretty straightforward.
Please Log in or Create an account to join the conversation.
- BigJohnT
- 
				 Topic Author Topic Author
- Offline
- Administrator
- 
				  
		Less
		More
		
			
	
		- Posts: 3990
- Thank you received: 994
			
	
						21 Nov 2010 21:15				#5505
		by BigJohnT
	
	
		
			
	
			
			 		
													
	
				Replied by BigJohnT on topic Re:Subroutine GUI			
			
				Sounds like a good idea, you should give it a go.
John
					John
Please Log in or Create an account to join the conversation.
- cwmk577
- Offline
- New Member
- 
				  
		Less
		More
		
			
	
		- Posts: 10
- Thank you received: 1
			
	
						21 Nov 2010 21:47				#5509
		by cwmk577
	
	
		
			
	
			
			 		
													
	
				Replied by cwmk577 on topic Re:Subroutine GUI			
			
				Yeah, I'm willing to give it a swing but I need to finish my other EMC project first:
ckcnc.wordpress.com/2010/11/20/arduino-e...ration-how-it-works/
					ckcnc.wordpress.com/2010/11/20/arduino-e...ration-how-it-works/
Please Log in or Create an account to join the conversation.
- BigJohnT
- 
				 Topic Author Topic Author
- Offline
- Administrator
- 
				  
		Less
		More
		
			
	
		- Posts: 3990
- Thank you received: 994
			
	
						21 Nov 2010 21:52		 -  21 Nov 2010 21:52		#5510
		by BigJohnT
	
	
		
			
	
	
			 		
													
	
				Replied by BigJohnT on topic Re:Subroutine GUI			
			
				Yea, I looked at that right after you registered and it looks pretty cool.
and welcome to the forum.
John
					and welcome to the forum.
John
		Last edit: 21 Nov 2010 21:52  by BigJohnT.			
			Please Log in or Create an account to join the conversation.
- otto_pjm
- Offline
- Junior Member
- 
				  
		Less
		More
		
			
	
		- Posts: 21
- Thank you received: 0
			
	
						01 Feb 2011 00:12				#6907
		by otto_pjm
	
	
		
			
	
			
			 		
													
	
				Replied by otto_pjm on topic Re:Subroutine GUI			
			
				Very nice, I played with an earlier version, but the added functionality and the in-tab feature is awesome.
I can't say I've ever written anything in TCL, but I'm going to take a crack at creating a subroutine. Is there a repository for them either here or with Dewey?
cwmk577
I like the associated image idea and the caching of parameters, I think I'll start simple though.
Also great work on the custom controller / aux display project, very cool.
Pete
					I can't say I've ever written anything in TCL, but I'm going to take a crack at creating a subroutine. Is there a repository for them either here or with Dewey?
cwmk577
I like the associated image idea and the caching of parameters, I think I'll start simple though.
Also great work on the custom controller / aux display project, very cool.
Pete
Please Log in or Create an account to join the conversation.
- BigJohnT
- 
				 Topic Author Topic Author
- Offline
- Administrator
- 
				  
		Less
		More
		
			
	
		- Posts: 3990
- Thank you received: 994
			
	
						01 Feb 2011 13:29				#6922
		by BigJohnT
	
	
		
			
	
			
			 		
													
	
				Replied by BigJohnT on topic Re:Subroutine GUI			
			
				The subroutines are simply g code subroutines with a few extra things on top for Dewey's TCL to work the magic.
As far as I know this is the only place that has examples related to Dewey's ngcgui program.
John
					As far as I know this is the only place that has examples related to Dewey's ngcgui program.
John
Please Log in or Create an account to join the conversation.
- Pilotltd
- Offline
- New Member
- 
				  
		Less
		More
		
			
	
		- Posts: 10
- Thank you received: 0
			
	
						04 Mar 2011 15:53				#7579
		by Pilotltd
	
	
		
			
	
			
			 		
													
	
				Replied by Pilotltd on topic Re:Subroutine GUI			
			
				Hi John - been having a look at this today, can get the gui tabs to show but on finalize I get the error
Near line 26 of home/steve/emc2/configs/sb-lathe1/auto.ngc :
Unable to open file <od>
or id or taper-od depending on which tab I selected.
Any ideas?
Steve
					Near line 26 of home/steve/emc2/configs/sb-lathe1/auto.ngc :
Unable to open file <od>
or id or taper-od depending on which tab I selected.
Any ideas?
Steve
Please Log in or Create an account to join the conversation.
		Time to create page: 0.119 seconds	
