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

Reply via email to