I gave up trying to do remap via python and switched to O word. I have a complete simulate umbrella style tool changer working now.
I would have rather done it in python, but, got it done with O word no problem. Thanks, Billy On 03/31/2014 11:41 AM, Rod Fitzsimmons Frey wrote: > Wait! There's probably confusion because of my crappy naming. > interpreter.execute doesn't rely on "from interpreter import *".... > interpreter is just the argument passed to toolchange. I thought it was an > instance of an emc interpreter so that's what I called it. > > > On Mon, Mar 31, 2014 at 11:39 AM, Rod Fitzsimmons Frey > <rodf...@gmail.com>wrote: > >> Oh! But it works now! I can move the spindle where I want it, I can setp >> on the pins to release the tool, etc. M6T1 does exactly that with this >> code. I just can't signal to EMC that the tool has been changed, so on the >> *next* call to M6 it reports that the current tool is -1. >> >> But I readily accept that even if it is moving, I *shouldn't* do it this >> way. I can use the ngc code if necessary, but I couldn't find a way to >> access the signals from my spindle... i went this way so I could create the >> pins I needed to detect if the tool was secure, etc. >> >> The documentation seemed to suggest a full toolchanger could be done with >> only python, I'm just not grokking how to structure that. >> >> >> On Mon, Mar 31, 2014 at 11:30 AM, Michael Haberler <mai...@mah.priv.at>wrote: >> >>> Am 31.03.2014 um 17:15 schrieb Rod Fitzsimmons Frey <rodf...@gmail.com>: >>> >>>> Thanks! >>>> >>>> .ini file: http://pastebin.com/VsnQFuzt >>>> .hal file: http://pastebin.com/RHEJYqJB >>>> hal file hook (hal_racktoolchange): http://pastebin.com/njTUZAqS >>>> tool change python code: http://pastebin.com/1EZy0Pur >>> this is a normal userland HAL comp, not embedded in the interpreter >>> you write: >>> >>> * # These libraries not found - copied from stdglue.py >>> * import emccanon >>> * from interpreter import * >>> >>> those are available only _within_ the interpreter, you cannot use them in >>> a normal userland HALcomp >>> >>> oh I see what you are trying to do: interpreter.execute("G53 G1 X%i Y%i >>> F%i" % (x_pos, y_pos, rack_params["Z_RETRACT_SPEED"])) >>> >>> well this will not work (unfortunately), this is the reason: >>> >>> task and motion can handle one running interpreter at a time only; you >>> try to use a second one from outside - even if it were possible to do that, >>> the commands it generated would be ignored because task wouldnt listen to >>> them, it listens only to the interpreter built into milltask >>> >>> so any sequenced move operations involving the interpreter must come from >>> the running program - that was one of the reasons why remapping enables >>> calling on NGC subroutines to do just that >>> >>> sorry, you need to remain with the setup as outlined in the >>> manualtoolchange example; you can replace some ngc by python, but you cant >>> move that code outside the interp into another halcomp >>> >>> >>> - Michael >>> >>> >>> >>> >>> >>> >>> >>> >>>> Console output: http://pastebin.com/jNHZbxAE >>>> >>>> >>>> >>>> >>>> On Mon, Mar 31, 2014 at 10:59 AM, Michael Haberler <mai...@mah.priv.at >>>> wrote: >>>> >>>>> Am 31.03.2014 um 16:03 schrieb Rod Fitzsimmons Frey <rodf...@gmail.com >>>> : >>>>>> Hey! After a couple days away I'm back at this. And immediately >>>>> stalled! >>>>>> :) >>>>>> >>>>>> stdglue.py returns INTERP_ERROR and other constants that I just can't >>>>> seem >>>>>> to locate! When I try to >>>>>> >>>>>> import emccanon >>>>>> from interpreter import * >>>>>> >>>>>> in my own handler code linuxcnc complains that neither of those >>> modules >>>>> can >>>>>> be found. I've gone through the source looking for the constants but >>> no >>>>>> luck. >>>>>> >>>>>> Any advice? >>>>> >>>>> yes: please upload your complete configuration, all related files and >>>>> pastebin any error messages >>>>> >>>>> - Michael >>>>> >>>>> >>>>>> On Wed, Mar 26, 2014 at 3:15 PM, Michael Haberler <mai...@mah.priv.at >>>>>> wrote: >>>>>> >>>>>>> >>>>>>>> Am 26.03.2014 um 16:53 schrieb Rod Fitzsimmons Frey < >>> rodf...@gmail.com >>>>>> : >>>>>>>> Hi! I'm merrily trying to remap M6 using the guidelines at >>>>>>>> >>> http://linuxcnc.org/docs/devel/html/remap/structure.html#_configuring_iocontrol_with_a_remapped_m6 >>>>>>> . >>>>>>>> I'm trying to use all-python to implement my rack toolchanger. >>>>>>>> >>>>>>>> I have some stuff working - change_epilog in stdglue.py is called, >>> my >>>>>>> code >>>>>>>> executes and moves the spindle to the correct location for the new >>>>> tool, >>>>>>>> etc. But change_epilog isn't called. I put a print statement as the >>>>>>> first >>>>>>>> line in both change_prolog and change_epilog - the former is >>> executed >>>>> but >>>>>>>> the latter is not. >>>>>>>> >>>>>>>> Perhaps as a result of change_epilog not getting called, my current >>>>> tool >>>>>>> is >>>>>>>> never changed from -1. (Although that could be something else if >>>>>>> there's a >>>>>>>> step I'm missing in my toolchange code.) >>>>>>>> >>>>>>>> My ini file line is >>>>>>>> REMAP=M6 modalgroup=6 prolog=change_prolog epilog=change_epilog >>>>>>>> py=toolchange >>>>>>>> >>>>>>>> and the epilog signature (unchanged from src) is >>>>>>>> def change_epilog(self, **words): >>>>>>>> >>>>>>>> Any advice? >>>>>>> yes >>>>>>> >>>>>>> what you are doing is an all-python remapped code >>>>>>> >>>>>>> now the prolog and epilog Python handlers are there to extract >>>>> parameters, >>>>>>> and set the environment for a _ngc_ remap function >>>>>>> >>>>>>> if you are doing all-python you can collapse all code into a single >>>>> python >>>>>>> remap body (all code will go into py=toolchange) >>>>>>> >>>>>>> so just drop the prolog and epilog handlers, do it all in >>> toolchange() >>>>> and >>>>>>> you should be fine >>>>>>> >>>>>>> there was a problem with three python handlers in sequence; not sure >>> if >>>>> it >>>>>>> is mentioned in the docs or just the code; since the separate pre- >>> and >>>>> post >>>>>>> handlers dont make sense anyway I avoided the issue by not calling >>> them >>>>>>> let me know if you get stuck - just push your config and coce >>> beforehand >>>>>>> so I can have a look >>>>>>> >>>>>>> - Michael >>>>>>>> Thanks! >>>>>>>> Rod >>>>>>>> >>> ------------------------------------------------------------------------------ >>>>>>>> Learn Graph Databases - Download FREE O'Reilly Book >>>>>>>> "Graph Databases" is the definitive new guide to graph databases and >>>>>>> their >>>>>>>> applications. Written by three acclaimed leaders in the field, >>>>>>>> this first edition is now available. Download your free book today! >>>>>>>> http://p.sf.net/sfu/13534_NeoTech >>>>>>>> _______________________________________________ >>>>>>>> Emc-users mailing list >>>>>>>> Emc-users@lists.sourceforge.net >>>>>>>> https://lists.sourceforge.net/lists/listinfo/emc-users >>>>>>> >>>>>>> >>> ------------------------------------------------------------------------------ >>>>>>> Learn Graph Databases - Download FREE O'Reilly Book >>>>>>> "Graph Databases" is the definitive new guide to graph databases and >>>>> their >>>>>>> applications. Written by three acclaimed leaders in the field, >>>>>>> this first edition is now available. Download your free book today! >>>>>>> http://p.sf.net/sfu/13534_NeoTech >>>>>>> _______________________________________________ >>>>>>> Emc-users mailing list >>>>>>> Emc-users@lists.sourceforge.net >>>>>>> https://lists.sourceforge.net/lists/listinfo/emc-users >>>>>>> >>> ------------------------------------------------------------------------------ >>>>>> _______________________________________________ >>>>>> Emc-users mailing list >>>>>> Emc-users@lists.sourceforge.net >>>>>> https://lists.sourceforge.net/lists/listinfo/emc-users >>>>> >>>>> >>>>> >>> ------------------------------------------------------------------------------ >>>>> _______________________________________________ >>>>> Emc-users mailing list >>>>> Emc-users@lists.sourceforge.net >>>>> https://lists.sourceforge.net/lists/listinfo/emc-users >>>>> >>> ------------------------------------------------------------------------------ >>>> _______________________________________________ >>>> Emc-users mailing list >>>> Emc-users@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/emc-users >>> >>> >>> ------------------------------------------------------------------------------ >>> _______________________________________________ >>> Emc-users mailing list >>> Emc-users@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/emc-users >>> >> > ------------------------------------------------------------------------------ > _______________________________________________ > Emc-users mailing list > Emc-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/emc-users -- Billy Huddleston Inner Vision *William Huddleston Inner Vision Development Corp* Office: 865.560.2752 Fax: 865.560.2703 http://www.ivdc.com *Development and Consulting... Simplified.* <http://www.facebook.com/pages/Inner-Vision-Development/120023721424> <http://twitter.com/ivdc> <http://www.linkedin.com/in/ivdccorp> ------------------------------------------------------------------------------ _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users