As a recent addition to emc2.TRUNK, one has the ability to check or wait for 
inputs.

Some description of the codes added here: 
http://www.linuxcnc.org/docs/devel/html/gcode/main/index.html#sec:M66-to-M68:

It's not quite 100% done, some parts still missing (basicly the 
wait-for-input, motion controller part of it, and parts of the analog part), 
but I bet it'll be done by the time of 2.2.0.

Manfredi:
to write the code you wanted with the new additions
> for example:
>
> if (hal.pin.0 == true)
>   G0 X20
> else if (hal.pin.1 == true)
>   G0 Z20

you need to write
M67 P0
#1 = #5398
M67 P1
#2 = #5398

O100 if [#1 EQ 1]
   G0 X20
O100 else
  O110 if [#2 EQ 1]
    G0 Z20
  O110 endif
O100 endif

The above assumes that hal.pin.0 is linked to motion.digital-in-00 and 
hal.pin.1 is linked to motion.digital-in-01

Regards,
Alex

>I tried and used the TCL preprocessor and I think it does the same things 
>as
> O-Word, but it has far more possibilities and it is really more readable
> than O-Word, but O-word is read internally by the interpreter while with 
> the
> TCL preprocessor and the filter for .gcl files a complete G-code program
> will be sent to EMC2.
> I think that the point is not to have a command to move directly the
> machine, (like $emc->move({ X => 0})) because the same result can be
> achieved using the common G0 or G1 g-code commands  in the preprocessor, I
> think that the real point is, as told also by Sven, to have a way to get
> feedback from emc2. The  ability to get a feedback from EMC2 (or HAL) 
> while
> working, would permit the interactive machining as requested by Ron.
>
> for example:
>
> if (hal.pin.0 == true)
>   G0 X20
> else if (hal.pin.1 == true)
>   G0 Z20
>
> ecc.ecc.
>
> Regards
>
> Manfredi
>
>
>
> My websites: www.m24-pro.com
>                      www.emc2cnc.altervista.org
>
>
>
>
>
>>From: Sven Mueller <[EMAIL PROTECTED]>
>>Reply-To: "Enhanced Machine Controller (EMC)"
>><emc-users@lists.sourceforge.net>
>>To: "Enhanced Machine Controller (EMC)" <emc-users@lists.sourceforge.net>
>>Subject: Re: [Emc-users] Interactive machining
>>Date: Sat, 18 Aug 2007 05:47:53 +0200
>>
>>Jeff Epler schrieb:
>> > AXIS can automatically execute a filter program when loading a
>> > machinable file.  You can also use the NML messages for issuing "MDI"
>> > commands to feed your program in line-by-line.  (I just verified that,
>> > at least in the development version of emc 2, this doesn't kill 
>> > blending
>> > altogether, though it's likely that blending degrades more quickly when
>> > fed by MDI than by file)
>> >
>> > Personally, I lean towards using filters because then I benefit from 
>> > the
>> > preview plot.
>> >
>> > Using tcl as a gcode preprocessor: http://axis.unpy.net/01167315565
>> >
>> > To make ".gcl" files openable in axis, put this in your inifile:
>> >     PROGRAM_EXTENSION .gcl TCL-preprocessed gcode
>> >     gcl = /path/to/gcode.tcl
>> > and make gcode.tcl executable
>>
>>While these preprocessors look really useful, they don't support what
>>Ron thinks of, which would be a programming language which is able to
>>feed commands to emc2 as well as get feedback from emc2. Assuming a perl
>>binding, this could mean
>>
>>=====================================================================my
>>$emc = new CNC::EMC2;
>>$emc->move({ X => 0, Y => 0, Z => 10 });
>>$emc->straight_probe( { Z => 0 } );
>>if ($emc->probe_tripped) {
>> printf("%d %d %d\n",$emc->trip_x,$emc->trip_y,$emc->trip_z);
>>} else {
>> # do something else
>>}
>>my $dialog=new Dialog;
>># do whatever is needed to open a dialog which allows jogging
>># of all axes as well as direct entering of target positions,
>># to select {max,min}[xyz]
>>
>>surface_scan($minx,$miny,$minz,$maxx,$maxy,$maxz);
>>...
>>=====================================================================
>>
>>See the difference? _Many_ people, including me, are certainly more
>>comfortable at writing complex code in a more readable language than
>>G-Code. And at that, probably also a language easier to understand at
>>first glance that TCL (I don't understand your gcode.tcl filter script,
>>even though I can read C, C++, Pascal, Ruby, PHP, Perl, lua, Basic, ...
>>easily).
>>
>>Speaking of the above: lua would probably be a really good choice if you
>>want to implement a scripting language inside emc2.
>>
>>Regards,
>>Sven
>>
>>-------------------------------------------------------------------------
>>This SF.net email is sponsored by: Splunk Inc.
>>Still grepping through log files to find problems?  Stop.
>>Now Search log events and configuration files using AJAX and a browser.
>>Download your FREE copy of Splunk now >>  http://get.splunk.com/
>>_______________________________________________
>>Emc-users mailing list
>>Emc-users@lists.sourceforge.net
>>https://lists.sourceforge.net/lists/listinfo/emc-users
>
> _________________________________________________________________
> Don't just search. Find. Check out the new MSN Search!
> http://search.msn.com/
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >>  http://get.splunk.com/
> _______________________________________________
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>
>
> -- 
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.5.484 / Virus Database: 269.12.0/960 - Release Date: 8/18/2007 
> 3:48 PM
>
> 


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to