The python script installed at /usr/bin/mdi is one simple example of using the emc module to interact with emc. It shows how to perform UI operations like 'execute mdi command', and how to retrieve status information, like 'current position'.
Jeff #!/usr/bin/python # This is a component of AXIS, a front-end for emc # Copyright 2004, 2005, 2006 Jeff Epler <[email protected]> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA '''Manual Data Input - issue a single line of g-code to the running system mdi.py may be specified on the commandline, e.g., bin/mdi configs/sim/emc.nml g0 x0 ''' import sys, os import emc if len(sys.argv) > 1: emc.nmlfile = sys.argv[1] del sys.argv[1] c = emc.command() s = emc.stat() if len(sys.argv) > 1: c.mode(emc.MODE_MDI) c.mdi(" ".join(sys.argv[1:])) else: try: while 1: mdi = raw_input("MDI> ") if mdi == '': s.poll() print s.position else: c.mode(emc.MODE_MDI) c.mdi(mdi) except (SystemExit, EOFError, KeyboardInterrupt): pass # vim:sw=4:sts=4:et: ------------------------------------------------------------------------------ _______________________________________________ Emc-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-users
