GCode parsing performance or something else?
- Doogie
- Offline
- Premium Member
Less
More
- Posts: 108
- Thank you received: 18
23 Jun 2021 01:39 #212712
by Doogie
Replied by Doogie on topic GCode parsing performance or something else?
For the heck of it, having remembered this thread and that the gcode parsing is much slower when the commands are on separate lines, I tried using just the synchronous M67 command and parsed GRBL post-processed output( uses Sxxxx on motion line packed together ).
So X-0.1S25.8 becomes X-0.1M67 E0 Q25.8
Low and behold the motion and laser seem to be working well. So fast is the motion that 5% power is hardly marking the wood at all and that's a good thing.
This looks like a workable engraving option for Dithering but more testing needs to be done and will be done.
I also have to get better at my sed script which finds all "S" including comments and converts them.
So X-0.1S25.8 becomes X-0.1M67 E0 Q25.8
Low and behold the motion and laser seem to be working well. So fast is the motion that 5% power is hardly marking the wood at all and that's a good thing.
This looks like a workable engraving option for Dithering but more testing needs to be done and will be done.
I also have to get better at my sed script which finds all "S" including comments and converts them.
#!/bin/bash
BASE_NAME=`basename $1 .ngc`
echo $BASE_NAME
BASE_NAME_NEW=$BASE_NAME-M67_oneline.ngc
cp $1 $BASE_NAME_NEW
sed -i s/'S0'/'M67 E0 Q0'/g $BASE_NAME_NEW
sed -i s/'S'/'M67 E0 Q'/g $BASE_NAME_NEW
Please Log in or Create an account to join the conversation.
- Doogie
- Offline
- Premium Member
Less
More
- Posts: 108
- Thank you received: 18
23 Jun 2021 02:34 #212713
by Doogie
Replied by Doogie on topic GCode parsing performance or something else?
I key problem needing solving is turning OFF the laser power when the project is stopped or paused before the end. It seems to stay at the last pwm setting and this will burn projects and mess lots of things up besides possibly starting a fire if for some reason I turn away and there's joint error or something stops the machine.
BTW, Here is the validation engraving image where you can just make out Donny and Walter:
lebowski etch
here is the original photo:
Lebowski Bowling
BTW, Here is the validation engraving image where you can just make out Donny and Walter:
lebowski etch
here is the original photo:
Lebowski Bowling
Please Log in or Create an account to join the conversation.
- tommylight
- Away
- Moderator
Less
More
- Posts: 19484
- Thank you received: 6533
23 Jun 2021 12:04 #212733
by tommylight
Replied by tommylight on topic GCode parsing performance or something else?
Wiring the pwm.enable pin to something that is active only while program is running in hal should do the trick of turning off the laser.
The following user(s) said Thank You: Doogie
Please Log in or Create an account to join the conversation.
- Doogie
- Offline
- Premium Member
Less
More
- Posts: 108
- Thank you received: 18
23 Jun 2021 15:03 #212751
by Doogie
I'm not using pwmgen but I will see if the motion.analog-out has an enable pin. Will also look for something which might be active only when program is running. That would be better than looking for Stop and Pause button elements. thx
Replied by Doogie on topic GCode parsing performance or something else?
Wiring the pwm.enable pin to something that is active only while program is running in hal should do the trick of turning off the laser.
I'm not using pwmgen but I will see if the motion.analog-out has an enable pin. Will also look for something which might be active only when program is running. That would be better than looking for Stop and Pause button elements. thx
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- Doogie
- Offline
- Premium Member
Less
More
- Posts: 108
- Thank you received: 18
24 Jun 2021 17:35 - 24 Jun 2021 21:34 #212839
by Doogie
Replied by Doogie on topic GCode parsing performance or something else?
I found halui.program.is-running which seems to be true when things are good and false on pause, step, stop so I now need to figure out how where/how to set the output( remora.SP.0 to 0 when halui.program.is-running is false and let motion.analog-out-00 drive it otherwise.
I found the solution and posted about it here: forum.linuxcnc.org/49-basic-configuratio...ting?start=30#212849
I found the solution and posted about it here: forum.linuxcnc.org/49-basic-configuratio...ting?start=30#212849
Last edit: 24 Jun 2021 21:34 by Doogie.
Please Log in or Create an account to join the conversation.
Time to create page: 0.096 seconds