2011/4/7 Stephen Wille Padnos <spad...@sover.net>: > > Rando Sauvage wrote: >> Hi, >> >> >> I am an EMC2 user and currently I am doing some pieces which take >> several hours to mill. >> So, I would like to run my CNC while I am not at home (eg while I am >> at work), but still want to take an eye on my CNC through an IP camera >> + *get the possibility to remote control the AXIS GUI* (this is the >> important part ;-)) >> >> Basically what I would need is: >> 1) Remotely pause and continue a running GCode program. >> >> 2) While the program is paused, I need to be able to stop the spindle >> and the lube (these one are important because eg if the mill broke, I >> need to stop the spindle ASAP. but I don't know if it is possible >> since I can't stop the spindle from AXIS while a program is paused) >> [...] > You don't need any IP cameras or other hoo-ha to remote control EMC. Of > course, if you want to see the actual machine, an IP camera is a > reasonable way of doing that. > > EMC has been designed from the start to allow multiple user interfaces, > which can be on a remote machine if you like. This is in addition to > the option of running a remote X session, or remote desktop software > such as VNC. > > The NML messaging system allows you to set up channels as being remote. > I believe there are sample server.nml and client.nml files in the sample > configs directory (maybe in common/ or something). > > You can run AXIS on the EMC machine and start a program running. > When you get to work or wherever, fire up Axis, tkEMC, mini, emcrsh - > whatever, and if the NML file is configured correctly, you will connect > to the remote machine. Both UIs will be running, and either could take > control - if someone at home smells smoke and hits ESC on that keyboard, > the machine will stop. You will see the change in machine state on your > remote UI. Similarly, you can hit ESC to stop the machine, and the UI > on the PC controlling the machine will show what you have done. > > There are a couple of caveats to this: > 1) I'm pretty sure that nothing bad happens, but you should experiment > with running a part and then starting another UI. Specifically, try > AXIS - I don't know whether it will happily connect to a running EMC or > if it will load its "splash file" and stop the machine. > 2) Specific to AXIS, you would need a command-line option to disable the > creation of HAL pins on the remote control PC. That machine isn't > likely to (and doesn't need to) run an RT kernel, and besides you don't > want HAL running on your machine at work, since it's not connected to > the machine anyway. > 3) File handling is a little weird with remote machines. You need to > have the loaded file available at the same path on all machines you want > to run UIs on. NML doesn't transfer the file, and the status buffer has > the full path name to the file, so if you want to see the code as it's > executing, you'll need to make sure you have the same file in the same > location on the remote PC. > [...]
Hi everyone, Sorry for the late reply and thanks a lot for your detailed answers ! I am not a big fan of VNC that I consider of a "last resort" solution. Running 2 UI in parallel is a really interesting and powerful feature. I have not tested yet, but I could run a light UI in parallel to Axis. According to what you explained to me, I think it will be simpler to run this UI on the EMC computer and export the display through SSH (as you proposed). This solution also has the advantage of not needing any software installation at work. For now, I finally achieved to remote control my machine by using "halcmd" as suggested too. I have done 2 scripts called emc_pause & emc_resume. Both scripts can pause & resume a running program, and also deals with the spindle & the coolant flood (that's great!). Here is the *emc_pause* script: #!/bin/sh halcmd setp halui.program.pause 1; sleep 0.1 halcmd setp halui.program.pause 0; sleep 1 halcmd setp halui.spindle.stop 1; sleep 0.1 halcmd setp halui.spindle.stop 0; halcmd setp halui.flood.off 1; sleep 0.1 halcmd setp halui.flood.off 0; echo Machine paused. And the *emc_resume* script (there are some delays for the coolant flood and the spindle to restart): #!/bin/sh halcmd setp halui.flood.on 1; sleep 0.1 halcmd setp halui.flood.on 0; sleep 3 halcmd setp halui.spindle.start 1; sleep 0.1 halcmd setp halui.spindle.start 0; sleep 3 halcmd setp halui.program.resume 1; sleep 0.1 halcmd setp halui.program.resume 0; echo Machine restarted. Last is a picture of my machine controlled by EMC2: http://www.usinages.com/files/t_img_7895_vue_ensemble_147.jpg Thanks again, Xavier ------------------------------------------------------------------------------ Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users