Eric, Thank you for the information, I am beginning to grasp what I need to know to proceed down this path. I have tried to connect to emcrsh following your instructions below, I am using Hardy Heron and EMC2.2.3 but I cannot get a connection to emcrsh. It either tells me the connection is refused or just hangs. I suspect it is a LINUX problem and not an emcrsh problem. Any help you can provide will be most appreciated.
Thanks - John Guenther 'Ye Olde Pen Maker' Sterling, Virginia On Sun, 2009-05-03 at 16:59 -0400, Eric H. Johnson wrote: > John, > > There are two main functions which a user interface must perform. > > 1> Issue NML commands. > > The best reference for these is in the Developers Handbook: > http://www.linuxcnc.org/docs/devel/EMC2_Developer_Manual.pdf > > See chapter II on NML messages. You can also see examples of how these > commands are issued in (among other places) emc/usr_intf/shcom.cc. > > 2> Display operational information > > Most operational information can be accessed through the global variable > (from emc.hh) "emcStatus". It contains a number of classes including "task", > "io", and "motion" which in turn have additional classes, methods, etc. to > access various information including estop state, machine state, position > information, etc. > > You can look at emc/usr_intf/emcsh.cc or emc/usr_intf/emcrsh.cc to see how > emcStatus is used. You can also look at emc/nml_intf/emc.cc/hh and > emc/nml_intf/emc_nml.hh for the available classes and methods. > > > The function of the module "emcsh" is to provide an interface to EMC for > tk/tcl for use with the "tkemc" user interface found in the tcl folder at > the same level as src. I believe emc/usr_intf/axis/extensions/emcmodule.cc > does basically the same thing for Python and the Axis user interface. > > If you are writing your user interface in a language other than C/C++ you > will probably need some code of this sort to interface with the intended > environment. > > One alternative, provided it has all of the functionality you require is to > use emcrsh. This uses a socket connetion to interface with EMC, so is both > language independent and has the ability to run the user interface either > locally or remotely without running an X shell or other similar technique on > the remote machine. > > To test it, just edit the configuration file core_sim.hal and add the line: > loadusr emcrsh > > Then run the TkEMC configuration under "sim". You should now be able to > connect to EMC as follows from a terminal session: > > telnet localhost 5007 > > When it connects, simply type "help" to get a list of available commands. > For implementing a user interface, you just need to have your program issue > and parse these commands the same way they are issued over the telnet > session. Complete doc on emcrsh can be found here: > http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Emcrsh > > Regards, > Eric > > Is there any documentation available on user interface development for EMC2? > I have looked through the various manuals and the code for axis, Tkemc, mini > and keystick all of which give me some idea as to the system calls to EMC2 > for the various interfaces. Is there a complete list of the calls used to > control EMC2 from the user interface available? I am looking to develop a > user interface for use with a touch screen with no or very limited keyboard > use and no mouse if possible. > > > ------------------------------------------------------------------------------ > Register Now & Save for Velocity, the Web Performance & Operations > Conference from O'Reilly Media. Velocity features a full day of > expert-led, hands-on workshops and two days of sessions from industry > leaders in dedicated Performance & Operations tracks. Use code vel09scf > and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf > _______________________________________________ > Emc-users mailing list > Emc-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/emc-users ------------------------------------------------------------------------------ The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your production scanning environment may not be a perfect world - but thanks to Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700 Series Scanner you'll get full speed at 300 dpi even with all image processing features enabled. http://p.sf.net/sfu/kodak-com _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users