Revers Run
- islander261
- Offline
- Platinum Member
Less
More
- Posts: 757
- Thank you received: 216
21 Mar 2019 21:46 #129220
by islander261
Revers Run was created by islander261
Hello
I am using Gmoccapy to run my plasma cutter. I am very happy with how it works presently. I wish it had the capability to back up while in the auto mode. This feature is really helpful in the case of a cutting error to allow you to backup and restart the cut at the point of error. Right now I just stop the program and edit the Gcode file so the cut starts at the point I want it to. I know there is a revers run branch that some have used to build plasma components, is there a way to make this work with Gmoccapy? I am not a coder so I need direction on where to find instructions.
I have also seen a Gscreen configuration/skin that doesn't use the revers run branch but does allow you to arbitrarily set the starting line in the Gcode Preview screen when the program is paused. I believe this is done with a modified gcodeview.py file. I have attached the file here because it is under the GPL license. I have searched the Gscreen and Gmoccapy source files to try and find a way to splice this into Gmoccapy with no luck. I have also attached the Gscreen skin that does this as it is also under GPL license. Can someone please tell me where to find the documentation that will tell me how to use this code with Gmoccapy to allow arbitrary Gcode starting line selection when the program is paused? TIA
John
I am using Gmoccapy to run my plasma cutter. I am very happy with how it works presently. I wish it had the capability to back up while in the auto mode. This feature is really helpful in the case of a cutting error to allow you to backup and restart the cut at the point of error. Right now I just stop the program and edit the Gcode file so the cut starts at the point I want it to. I know there is a revers run branch that some have used to build plasma components, is there a way to make this work with Gmoccapy? I am not a coder so I need direction on where to find instructions.
I have also seen a Gscreen configuration/skin that doesn't use the revers run branch but does allow you to arbitrarily set the starting line in the Gcode Preview screen when the program is paused. I believe this is done with a modified gcodeview.py file. I have attached the file here because it is under the GPL license. I have searched the Gscreen and Gmoccapy source files to try and find a way to splice this into Gmoccapy with no luck. I have also attached the Gscreen skin that does this as it is also under GPL license. Can someone please tell me where to find the documentation that will tell me how to use this code with Gmoccapy to allow arbitrary Gcode starting line selection when the program is paused? TIA
John
Please Log in or Create an account to join the conversation.
21 Mar 2019 21:58 #129224
by cmorley
Replied by cmorley on topic Revers Run
Gmoccapy allows run-from-line - it's just disabled by default.
open the configuration tab (code is 123 by default)
click advanced tab and look for the run from line option.
after that in the auto mode you can press a button to preselect the line to start.
Be careful! it only runs at the line you pick. It does not look to see what should be on or off when running the line.
reverse run has been threatened to be incorporated into master but has not made it so far. Someone else has a personal branch with reverse run and external offsets i believe.
Some one up on plasma will surely chime in soon...
Chris M
open the configuration tab (code is 123 by default)
click advanced tab and look for the run from line option.
after that in the auto mode you can press a button to preselect the line to start.
Be careful! it only runs at the line you pick. It does not look to see what should be on or off when running the line.
reverse run has been threatened to be incorporated into master but has not made it so far. Someone else has a personal branch with reverse run and external offsets i believe.
Some one up on plasma will surely chime in soon...
Chris M
Please Log in or Create an account to join the conversation.
- islander261
- Offline
- Platinum Member
Less
More
- Posts: 757
- Thank you received: 216
21 Mar 2019 23:02 #129226
by islander261
Replied by islander261 on topic Revers Run
Chris
Thanks for the reply. I have never been successful at getting the built in run from here to work when the program is paused do to an error or other event. The other problem I have is that there are plasma cutter and THC control codes embedded in the Gcode so there is a lot of modal stuff happening that keeps you from just starting to cut at a random line.
I need to be clearer about what I am looking for. When the machine is stopped due to a M0, M1, arc error or torch collision I want to be able to choose the line the program will start from when I release the pause with modal state of the machine preserved. Usually you back the machine up to the end of the last cut in the code.
John
Thanks for the reply. I have never been successful at getting the built in run from here to work when the program is paused do to an error or other event. The other problem I have is that there are plasma cutter and THC control codes embedded in the Gcode so there is a lot of modal stuff happening that keeps you from just starting to cut at a random line.
I need to be clearer about what I am looking for. When the machine is stopped due to a M0, M1, arc error or torch collision I want to be able to choose the line the program will start from when I release the pause with modal state of the machine preserved. Usually you back the machine up to the end of the last cut in the code.
John
Please Log in or Create an account to join the conversation.
- tommylight
- Away
- Moderator
Less
More
- Posts: 19188
- Thank you received: 6432
22 Mar 2019 02:16 #129240
by tommylight
Replied by tommylight on topic Revers Run
Did you try the PhillC config ? It uses Axis gui, but for what you need it has everything incorporated.
I think i already posted a working config for Mesa stepgen cards and THCAD in that thread, that can be edited for any stepgen card from Mesa, like 5i25/6i25 directly, 7i76/7i76E, 7i96 etc.
It has all the features needed for plasma cutting and then some, and reverse run works properly when paused.
It also does not need any modal stuff of gcode calls or remaps, just plain gcode with x and y coordinates and M3/M5.
Saves a lot of work.
I think i already posted a working config for Mesa stepgen cards and THCAD in that thread, that can be edited for any stepgen card from Mesa, like 5i25/6i25 directly, 7i76/7i76E, 7i96 etc.
It has all the features needed for plasma cutting and then some, and reverse run works properly when paused.
It also does not need any modal stuff of gcode calls or remaps, just plain gcode with x and y coordinates and M3/M5.
Saves a lot of work.
Please Log in or Create an account to join the conversation.
- islander261
- Offline
- Platinum Member
Less
More
- Posts: 757
- Thank you received: 216
22 Mar 2019 03:32 #129242
by islander261
Replied by islander261 on topic Revers Run
Tommy
Thank you for the reply.
I have down loaded the PhillC's configuration and have examined the source with my limited knowledge. I never did get the sim to work but that is no surprise as I have never been successful in getting a sim configuration to work. My system uses a 7i76E with a THCad card for arc voltage sensing. All most all my work is with 14GA(2mm) HR STL.
My old commercial controller was an "autorun" system much like your THC HAL. I do production cutting of my own art work. Most parts have from 2 to 5 different tools (variations on cut speed, height and THC use) in each piece. I just don't know how to do this with an "autorun" system, I send all the changes in cutting parameters over in the Gcode. Also I haven't seen a good ohmic sensing implemented with the "autorun" systems. My Gcode probing has multiple error checks and retry loops to insure good IHS. I know it sounds like overkill but I got here the hard way. I do most of my design work in Inkscape and I believe that Gcodetools produces better code than SheetCam does from the .svg files, I just don't have the coding skills to fix the rough edges in Gcodetools and make a good multiple part/multiple nesting tool plugin to work. The short story is I struggle with SheetCam daily with it's poor .svg import to get the nesting I need to optimize material use. This is also compounded by the fact that the Windoze version of SC works much better at .svg import than the Linux version, I am not a programmer and don't know why this is the case but I can and have proven it to others. I typically put 20 to 50+ parts on a sheet of material. The other problem is post cutting processing, at having to handle several hundred small parts a day I need good cut quality. I only cut full sheets of parts, I have no space to store partial sheets for reuse.
I am ready and willing to collaborate with anyone with coding skills to work on these problems. I realize that my use is a corner case in the corner case of plasma cutting.
John
Thank you for the reply.
I have down loaded the PhillC's configuration and have examined the source with my limited knowledge. I never did get the sim to work but that is no surprise as I have never been successful in getting a sim configuration to work. My system uses a 7i76E with a THCad card for arc voltage sensing. All most all my work is with 14GA(2mm) HR STL.
My old commercial controller was an "autorun" system much like your THC HAL. I do production cutting of my own art work. Most parts have from 2 to 5 different tools (variations on cut speed, height and THC use) in each piece. I just don't know how to do this with an "autorun" system, I send all the changes in cutting parameters over in the Gcode. Also I haven't seen a good ohmic sensing implemented with the "autorun" systems. My Gcode probing has multiple error checks and retry loops to insure good IHS. I know it sounds like overkill but I got here the hard way. I do most of my design work in Inkscape and I believe that Gcodetools produces better code than SheetCam does from the .svg files, I just don't have the coding skills to fix the rough edges in Gcodetools and make a good multiple part/multiple nesting tool plugin to work. The short story is I struggle with SheetCam daily with it's poor .svg import to get the nesting I need to optimize material use. This is also compounded by the fact that the Windoze version of SC works much better at .svg import than the Linux version, I am not a programmer and don't know why this is the case but I can and have proven it to others. I typically put 20 to 50+ parts on a sheet of material. The other problem is post cutting processing, at having to handle several hundred small parts a day I need good cut quality. I only cut full sheets of parts, I have no space to store partial sheets for reuse.
I am ready and willing to collaborate with anyone with coding skills to work on these problems. I realize that my use is a corner case in the corner case of plasma cutting.
John
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- tommylight
- Away
- Moderator
Less
More
- Posts: 19188
- Thank you received: 6432
22 Mar 2019 16:14 - 22 Mar 2019 16:27 #129261
by tommylight
Replied by tommylight on topic Revers Run
One way of nesting parts in inkscape is to group them, select the inner parts first then the outer part and group them. That will produce gcode that will first cut by the order you selected them.
You can also save .hpgl from inkscape and use that in sheetcam.
You should also test the tomathc config as it should work with 7i76 and thcad, it does save a lot of time and it never fails.
It uses gcode directly from inkscape, no editing required.
Again, axis GUI. But itbdoes work with any Linuxcnc version, tested from 2.5 and up.
More in a bit. Typing on phone hard.
To use the PhillC's config you have to compile his version of Linuxcnc that has reverse run and external offsets, and also compile a comp found with his config name plasmac.comp .
You can also save .hpgl from inkscape and use that in sheetcam.
You should also test the tomathc config as it should work with 7i76 and thcad, it does save a lot of time and it never fails.
It uses gcode directly from inkscape, no editing required.
Again, axis GUI. But itbdoes work with any Linuxcnc version, tested from 2.5 and up.
More in a bit. Typing on phone hard.
To use the PhillC's config you have to compile his version of Linuxcnc that has reverse run and external offsets, and also compile a comp found with his config name plasmac.comp .
Last edit: 22 Mar 2019 16:27 by tommylight. Reason: More info
Please Log in or Create an account to join the conversation.
22 Mar 2019 23:47 #129310
by rodw
Replied by rodw on topic Revers Run
Sounds like you should look at getting a vibratory parts tumbler if you are cutting a full sheet of small parts at a time.
I would reccommend you follow the docs and learn how to install linuxcnc from source. Then you can do a git checkout of PhillC's build with just a few lines on the command line. You will still be able to run your existing config on that version if you copy your config across.
I would reccommend you follow the docs and learn how to install linuxcnc from source. Then you can do a git checkout of PhillC's build with just a few lines on the command line. You will still be able to run your existing config on that version if you copy your config across.
Please Log in or Create an account to join the conversation.
- islander261
- Offline
- Platinum Member
Less
More
- Posts: 757
- Thank you received: 216
23 Mar 2019 01:18 #129319
by islander261
Replied by islander261 on topic Revers Run
Rod
I am running the master branch to support my gantry configuration so I think I am building from source when I do that. It sure looks like a compiler and linker running from the terminal when it is happening. Because this journey started several years ago I had to patch and rebuild the kernel to get PREEMPT RT running under LMDE-2 which was the only distro that didn't puke over my hardware. So yes under a limited set of circumstances I can build a branch from source files.
I am not comfortable with building wild branches right now because I use my machine for production work. If I do something stupid and break it there is only me to fix it. The other thing is support for ohmic probing. It isn't simple like a float switch, lots of little gotchas waiting to bite you if your not careful. I will be happy to send Phil my buggy probing code so he can fix it and build it into his configuration. Does Phil's branch handle cutting parameters sent over in the Gcode file? I really need this feature to make my work go well. Of course that will mean diving down the post processor rabbit hole again.
I actually use a parts tumbler for a lot of the small stuff. The problem is you must not put different sized parts at the same time or you are asking for trouble, schedules require hand finishing when you have different sized parts to deliver. . Same goes for parts with small narrow features that "stick out" they end up getting bent and broken so they all require hand finishing.
I am really looking for direction on how to hack Gmoccapy so it will use the ccc_gcodeview.py file to handle the Gcode preview which I believe is the key to stepping backwards in the code. I am pretty sure all the keys are in the two files I attached, if not I can look for more info if someone can tell me what is needed. Note this is not the true reverse run capability that Phil's branch has only a way to reset the current gcode line number when the program is paused or error-ed.
John
I am running the master branch to support my gantry configuration so I think I am building from source when I do that. It sure looks like a compiler and linker running from the terminal when it is happening. Because this journey started several years ago I had to patch and rebuild the kernel to get PREEMPT RT running under LMDE-2 which was the only distro that didn't puke over my hardware. So yes under a limited set of circumstances I can build a branch from source files.
I am not comfortable with building wild branches right now because I use my machine for production work. If I do something stupid and break it there is only me to fix it. The other thing is support for ohmic probing. It isn't simple like a float switch, lots of little gotchas waiting to bite you if your not careful. I will be happy to send Phil my buggy probing code so he can fix it and build it into his configuration. Does Phil's branch handle cutting parameters sent over in the Gcode file? I really need this feature to make my work go well. Of course that will mean diving down the post processor rabbit hole again.
I actually use a parts tumbler for a lot of the small stuff. The problem is you must not put different sized parts at the same time or you are asking for trouble, schedules require hand finishing when you have different sized parts to deliver. . Same goes for parts with small narrow features that "stick out" they end up getting bent and broken so they all require hand finishing.
I am really looking for direction on how to hack Gmoccapy so it will use the ccc_gcodeview.py file to handle the Gcode preview which I believe is the key to stepping backwards in the code. I am pretty sure all the keys are in the two files I attached, if not I can look for more info if someone can tell me what is needed. Note this is not the true reverse run capability that Phil's branch has only a way to reset the current gcode line number when the program is paused or error-ed.
John
Please Log in or Create an account to join the conversation.
23 Mar 2019 01:54 #129320
by rodw
Replied by rodw on topic Revers Run
John, Sorry, I missed who posted. Yes because you previously played with the external offset branch at one stage, you did compile from source. You should be able to checkout PhillC's branch into another folder to linuxcnc-dev and (say plasmac). So if you ran the rip-environment script in that folder structure, you just need to swap from one folder to the other. Well, thats the theory. I have not tried it but thats the idea of run-in-place vs a deb install as everything is contained in the folder you checked the source into. The deb installs LCNC in a higher level folder outside of the users home directories
Please Log in or Create an account to join the conversation.
23 Mar 2019 06:48 #129332
by cmorley
The cc_gcodeview is looks like a modified version of hal_sourceview.py. It would be found in lib/python/gladevcp/
The other file is a custom handler file used with Gscreen to create a custom screen.
This is from a commercial plasma system. - Moses McKnight wrote these files.
You may be able to find him on the developers IRC channel - I'll send a hint to him and see if he can some give some pointers...
Chris M
Replied by cmorley on topic Revers Run
Hello
I have also seen a Gscreen configuration/skin that doesn't use the revers run branch but does allow you to arbitrarily set the starting line in the Gcode Preview screen when the program is paused. I believe this is done with a modified gcodeview.py file. I have attached the file here because it is under the GPL license. I have searched the Gscreen and Gmoccapy source files to try and find a way to splice this into Gmoccapy with no luck. I have also attached the Gscreen skin that does this as it is also under GPL license. Can someone please tell me where to find the documentation that will tell me how to use this code with Gmoccapy to allow arbitrary Gcode starting line selection when the program is paused? TIA
John
The cc_gcodeview is looks like a modified version of hal_sourceview.py. It would be found in lib/python/gladevcp/
The other file is a custom handler file used with Gscreen to create a custom screen.
This is from a commercial plasma system. - Moses McKnight wrote these files.
You may be able to find him on the developers IRC channel - I'll send a hint to him and see if he can some give some pointers...
Chris M
Please Log in or Create an account to join the conversation.
Time to create page: 0.112 seconds