problem for use remap

More
18 Jun 2020 08:35 #171990 by mahdi2001h
Hi



I tried to use remap for add my own G-code and run some python code by them

but when my CNC machine starting read G-codes just all remaped G-code run at start and not run in line that should run (but other lines run correctly)

for use remap I read linuxcnc.org/docs/html/remap/remap.html


my linuxcnc version is 2.7.15


I added this lines in my ini file :
[RS274NGC]
PARAMETER_FILE = linuxcnc.var
REMAP=G70    modalgroup=1 argspec=Pq  py=g700
REMAP=G70.1  modalgroup=1 argspec=Pq  py=g701

and added in G-codes(inside other lines) :
G70 P8  
G70 P9
G70 P10
 G70.1 P6



regards

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

More
18 Jun 2020 09:46 #171995 by Aciera
Replied by Aciera on topic problem for use remap
Could you also show your python code?

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

More
18 Jun 2020 09:49 - 18 Jun 2020 09:49 #171996 by mahdi2001h
Replied by mahdi2001h on topic problem for use remap
def g700(self, **words):
    s.poll()
    if s.estop == 0:
	print "test p =" , words["p"]
    return INTERP_OK

def g701(self, **words):
    s.poll()
    if s.estop == 0:
	print "test1"
    return INTERP_OK
Last edit: 18 Jun 2020 09:49 by mahdi2001h.

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

More
18 Jun 2020 09:50 #171997 by rodw
Replied by rodw on topic problem for use remap
There is a Sim with remapping setup. Have you looked at it. It is helpful as none of it is intuitive...

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

More
18 Jun 2020 09:53 - 18 Jun 2020 09:56 #171998 by mahdi2001h
Replied by mahdi2001h on topic problem for use remap
where is that?!

How can I use it?
Last edit: 18 Jun 2020 09:56 by mahdi2001h.

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

More
18 Jun 2020 10:00 #171999 by rodw
Replied by rodw on topic problem for use remap
From the main linuxcnc config chooser, there should be a whole list of simulations. One of them is called remap... so it will run without a machine and you can study how it works.

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

More
18 Jun 2020 10:19 - 18 Jun 2020 10:20 #172000 by mahdi2001h
Replied by mahdi2001h on topic problem for use remap
oow

I've seen this before

It didn't help me

Because it did the same

But I'm reviewing it now

thanks
Last edit: 18 Jun 2020 10:20 by mahdi2001h.

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

More
18 Jun 2020 17:18 #172020 by Aciera
Replied by Aciera on topic problem for use remap
Ok I've only done remaps with python script once before. My INI contains this:
        REMAP=G91.2 modalgroup=1 argspec=xyzabc python=g912
        REMAP=G91.3 modalgroup=1 argspec=xyzabc python=g913

Then my config folder contains a folder called python and inside that folder lives my remap.py (contains my python scripts for g912 and g913), toplevel.py, oword.py, stdglue.py and util.py.

toplevel.py contains
import oword
import remap

oword.py contains:
from util import call_pydevd

def foo(*args):
    print "foo!"


# make debugger available as oword procedure
def pydevd(self,*args):
    call_pydevd()



# this would be defined in the oword module
def mysub(self, *args):
    print "number of parameters passed:", len(args)
    for a in args:
	print a

stdglue.py is an empty file

util.py contains:
import inspect
import emccanon

# O-word procedure to trap into the Pydevd debugger
# start debug server in Eclipse, then
# call as 'O<pydevd> call' from MDI

# example setup for debugging embedded Python code
# see http://pydev.org/manual_adv_remote_debugger.html
# if this points to a valid directory,

def call_pydevd():
    """ trap into the pydevd debugger"""
    
    import os,sys
    
    pydevdir= '/home/mah/.eclipse/org.eclipse.platform_3.5.0_155965261/plugins/org.python.pydev.debug_2.0.0.2011040403/pysrc/'

    # the 'emctask' module is present only in the milltask instance, otherwise both the UI and
    # milltask would try to connect to the debug server.

    if os.path.isdir(pydevdir) and  'emctask' in sys.builtin_module_names:
        sys.path.append(pydevdir)
        sys.path.insert(0,pydevdir)
        try:
            import pydevd
            emccanon.MESSAGE("pydevd imported, connecting to Eclipse debug server...")
            pydevd.settrace()
        except:
            emccanon.MESSAGE("no pydevd module found")
            pass



def lineno():
    """ return line number in the current Python script """
    return inspect.currentframe().f_back.f_lineno

def error_stack(self):
    """ print the Interpreters error stack (function names) """
    print "error stack level=%d" % (self.stack_index)
    for s in self.stack():
        print "--'%s'" % (s)

def callstack(self):
    """ print the O-Word call stack """
    for i in range(self.call_level):
        c = self.sub_context[i]
        print "%d: pos=%d seq=%d filename=%s sub=%s" % (i,c.position, c.sequence_number,c.filename,c.subname)
        

   
The following user(s) said Thank You: mahdi2001h

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

More
21 Jun 2020 05:45 #172220 by mahdi2001h
Replied by mahdi2001h on topic problem for use remap
Please also send your remap.py file

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

More
21 Jun 2020 06:39 #172222 by Aciera
Replied by Aciera on topic problem for use remap
remap.py:
Warning: Spoiler!
The following user(s) said Thank You: mahdi2001h

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

Time to create page: 0.108 seconds
Powered by Kunena Forum