LinuxCNC Features - a kind of NGCGUI

More
15 Nov 2014 00:25 #53086 by cparsons
I have attached my corrected mill.xml file from subroutines/catalogs if it helps anyone?

Incidentally, the English word is 'Rapid' - only one 'p' :)

Best wishes

Chris
Attachments:

Please Log in or Create an account to join the conversation.

More
19 Nov 2014 03:34 #53196 by kjacobs
Hello,
I installed LinuxCNC features in 2.7.0~pre0 and it works nicely in principle, but it seems to ignore any G54 offset (touching off from the workpiece). Features (e.g. OD) always seem to start at the machine zero instead of the G54 offset. When I use the NGCGUI OD feature instead, that does indeed respect the G54 offset as I expected. Am I doing something wrong in LinuxCNC features?
Cheers,
Karl

Please Log in or Create an account to join the conversation.

More
19 Nov 2014 16:42 #53200 by Nick
Try to add Gcode feature with a line "G54"...
I'm not sure but possibly it'll help...

Please Log in or Create an account to join the conversation.

More
19 Nov 2014 19:44 - 20 Nov 2014 00:03 #53210 by cparsons
I still cannot see anything in LinuxCNC when I run the 'Features' plugin - do I have to change the LinuxCNC configuration to show a different interface to 'Axis'?

The software does appear to run standalone now I have corrected the paths but I cannot see anything shown in LinuxCNC when I create an object - all the screenshots I have seen show an additional window docked to the right hand side of the Axis interface, and when and object is created it appears in the 'preview' window and this should happen with the standalone too?

The other thing I have noticed is that in the standalone the 'Open' button does not appear to be working?

I get an error message

File "./features.py" line 1282, in load
filter.set_name("XML")
AttributeError: 'builtin function of method' object has no attribute 'set_name'

Chris

UPDATE: This was caused by some missing code - in features.py, in the routine load(...) the line 1280 should be preceded by a line 'filter = gtk.FileFilter()'

The following line(s) try to call methods on a 'filter' object that had not been created...

Regards

Chris
Last edit: 20 Nov 2014 00:03 by cparsons. Reason: Found solution

Please Log in or Create an account to join the conversation.

More
19 Nov 2014 21:06 #53212 by kjacobs
Hi Nick,
it is not quite as simple, but after trying to understand your code better (and found that everything needed is there already!), I found a solution that makes it work exactly like NGCGUI for me:
in subroutine lathe-multipass, after these two lines
G92.1 (disable G92 offsets)
O<coordinate-sys-to-num> CALL [#<coord>]

you replace this line:
G10 L2 P[#<_coordinate-to-num>] X[#<x>+ #<xstep>*#<l>] Z[#<z> + #<zstep>*#<l>]
with this line:
G10 L2 P[#<_coordinate-to-num>] X[#<x> + #<_get_offsets_x> + #<xstep>*#<l>] Z[#<z> + #<_get_offsets_z> + #<zstep>*#<l>]
Now the feature follows the G54 touchoff coordinates. I tested it for the OD feature and have not yet looked into the others.

Please Log in or Create an account to join the conversation.

More
20 Nov 2014 00:14 #53214 by cparsons
I have also worked out why my LinuxCNC interface had not changed - there is an additional entry required in the ini file for your machine, in the [DISPLAY] section (I put my entry at the bottom)

[DISPLAY]
.
.
.
GLADEVCP = myname.ui

and a 'myname.ui' file needs creating in the config directory in LinuxCNC for your machine, or some other suitable place -

I called my file 'features.ui' and have attached it

Chris
Attachments:
The following user(s) said Thank You: BigG

Please Log in or Create an account to join the conversation.

More
13 Jan 2015 11:46 #54960 by Russianwolf
Privet Nick

I would love to work on this from the view of a completely new user (I am new to CNC, Linux, LinuxCNC and to your efforts here).

I have copied the files from GitHub onto my Linux computer that also has LinuxCNC installed. I only just got my machine up and running.

If you can provide simple instructions on how to install (remember that Linux and LinuxCNC are new to me so the instructions need to be pretty basic), I am more than willing to complete the install and see what I can get to work and what I can't.

Mike

Ya izuchil ryskie yazik kogda ya beil na flote, no ya amerikanskie

Sorry, my Russian is VERY rusty. :unsure:

Please Log in or Create an account to join the conversation.

More
13 Jan 2015 21:41 #54972 by Nick
Hi!

Have you tried to do installation instructions from readme.md?

See here at the bottom of the page.
github.com/cnc-club/linuxcnc-features

Please Log in or Create an account to join the conversation.

More
25 Jan 2015 06:38 #55315 by FernV
Hi Nick,

I have a little problem that needs your help :

When I copy a Feature the new Feature has the same ID and if it uses #<self_id-.....> I end up with 2 features with the same ID and it bugs. If I simply add a new feature, it gives it a new ID which is OK.

In this function
def copy(self, *arg) :
f,iter = self.get_selected_feature()
if f :
path = self.treestore.get_string_from_iter(iter)
xml = self.treestore_to_xml()
src = xml.find(".//*[@path='%s']"%path)
cp = deepcopy(src)
parent = src.getparent()
parent.insert(parent.index(src)+1, cp)
self.treestore_from_xml(xml)
self.action(xml)

after deepcopy it should give a new ID. I do not know python enough so I am asking you how I should do it ?

Regards
Fern

Please Log in or Create an account to join the conversation.

More
05 Feb 2015 14:51 #55709 by turbospeedskater
Hi Nick,

first of all: many thanks for writing this great tool and releasing it to the public!!!!

I spent the last days playing with the software and porting all subroutines I had written for
ngcgui to it. That job is mostly done, and when 100% finished, I would like to release it to
the public.

During my tests I have found two things that don't work as expected (at least not the way I expect :) )

1.) The issue with copying features and the #<self-id... FernV mentioned in another post,

and

2.) A grouping problem:
To make it simple: Try from scratch to make two groups each having two pocket elements:
1st add two pockets to the 1st group, then add two pockets to the 2nd group. During this will
find the 1st pocket you have put into the 2nd group will move from the 2nd group to the 1st
group. ... and there is no way to bring it back to the 2nd... Same issue is is with arrays....

I have spend some days now to understand your python code (and I tried to find a working
IDE for python without success...), but you are using too many external functions and libraries
that I don't know. So I have a basic idea how your code works, but no chance to solve the a.m.
problems on my own. (Normally I write software for microcontrollers for machine control, so
I am not an expert when it comes to "XML", "User interface", "Windows" etc... :( )

If you need more info, please give me a hint, but I think that should explain what I mean...

BTW: How do you debug your python code? I am still looking for a good way to work on
bigger python projects....

best regards,

Martin.

Please Log in or Create an account to join the conversation.

Time to create page: 0.345 seconds
Powered by Kunena Forum