Re: EMC remote


> From emc-at-nist.gov Tue Jan 18 05:12:47 2000
> Date: Tue, 18 Jan 2000 05:12:18 -0500 (EST)
> Originator: emc-at-nist.gov
> From: "Arne Chr.Jorgensen" <instel-at-online.no>
> To: Multiple recipients of list <emc-at-nist.gov>
> Subject: EMC remote
> X-Listprocessor-Version: 6.0c -- ListProcessor by Anastasios Kotsikonas
> Content-Transfer-Encoding: 7bit
> X-To: "emc-at-nist.gov" <emc-at-nist.gov>
> MIME-Version: 1.0
> 
> To  Fred, Will, et all.
> 
> Once I asked Will Shackleford about NML.   I had a lot of trouble
> with a 486, and noted that a lot of the components is RCS and NML.
> 
> So,  how should I set up two computers - one running EMC and the
> other running the RTKernal module.  They pass data to and from
> shared memory.  I do I set up a NML channel over TCP/IP and reach
> the shared memory on another computer ?
> 
> 
> //ARNE
> 
> 
> 
> 

I am not completely sure what your asking but here is my attempt at an answer.


EMC ussually consists programs from 4 categories:


GUI -- (Graphical User Interface) xemc, yemc,  tkemc, emcJavaGui, fpanel, etc. 
TASK -- mmtask, shvtask, bridgeportask etc.
MOTION -- emcmotsim, steppermod.o, shavermod.o, minimod.o, etc.
IO --  mmio, shvio, simio, bridgeportio,  etc.

You generally need to run atleast one program from each category to get a 
working EMC, which to me would mean all 4. Most of the programs in the motion 
category are built as real-time kernel modules, and at the moment do not 
communicate using NML directly. 


The most common way to split EMC across a network would be to put the 
TASK,MOTION and IO on computer1 and the GUI on computer2.

To do this I would find the .nml file used for my setup. It is ussually 
the same as the .run file. The file needs to be changed with a text editor in 
two ways.

1. The host is listed as "localhost" for almost every thing which is fine if
everything runs on the same computer but to run accross TCP we'll need the real
host names. I ussually use a global search and replace of "localhost" to 
"myhost". You can also use IP address directly if you don't have host tables or 
a name server setup.


2. You need to change the process type flag for the appropriate process from
LOCAL to REMOTE.


Then just copy over the .nml file, .ini file and the program you want to run on 
to computer2.


You need to start emcsvr on the host computer, The computer listed in the buffer 
lines (which start with B) before starting any remote programs. Attached is 
the file with xemc on computer2 and everything else on computer1.

When everthing is finally run xemc will send messages via TCP to emcsvr which 
will then be placed in shared memory buffers to be read by IO and TASK. TASK 
will then forward messages as necessary to the MOTION kernel module.


-- Will




-- Will




remote.nml



Date Index | Thread Index | Back to archive index | Back to Mailing List Page

Problems or questions? Contact