- Joined
- Apr 4, 2013
- Messages
- 888
Good day,
I'd like to get some ideas for the next version of TouchDRO (DIY DRO Android app).
For some time now I've been noodling over adding basic "CNC" capabilities to the TouchDRO app. Right now the app has a concept of a work-space. It's a "folder" with "remembered" points. An example of how it can be used is shown in this video (in this case to drill a set of holes) https://www.youtube.com/watch?v=jM1GnmwhxuQ.
For some time now I've been tinkering with the idea of adding a G-Code parser to it, so it can be used as a digital pantograph (poor mans CNC of sorts). G code parsing would basically add lines and arches to the workspace, so a user would write a simple G-Code program, load it in and then use the mill to follow the lines.
I have an early "beta" version of the parser that handles G0, G1, G2, G3, G7, G8, G17-G21, G28, G90, and G91.
I'm treating G0 command as a point (i.e. each destination of G0 move is added as a point to the workspace.
I treat the files as 2D "drawings", so plane selection command is used only once at the beginning of the program to set the view plane, and if I encounter it subsequently, I treat it as error.
G28 command basically does the same as G0 with all zeros in absolute mode, so it's not super useful...
Tool "offset" is handled by the UI (the tool is displayed as a circle proportional to it's size, so the user can see how close they are to the line.
So far simple files work pretty well, but I suspect things might be a bit confusing once someone decides to use the DRO in 2.5D or 3D mode.
I have very limited CNC experience, so I'd like to get some advice (i.e. please poke holes in my idea(s)). I'm mostly concerned with 3D programs. I.e. how would it make sense to handle 3D files. I.e. do I flatten them into a single layer, multiple layers,etc.
I would really appreciate any feedback or suggestions.
Thank you in advance
Yuriy
I'd like to get some ideas for the next version of TouchDRO (DIY DRO Android app).
For some time now I've been noodling over adding basic "CNC" capabilities to the TouchDRO app. Right now the app has a concept of a work-space. It's a "folder" with "remembered" points. An example of how it can be used is shown in this video (in this case to drill a set of holes) https://www.youtube.com/watch?v=jM1GnmwhxuQ.
For some time now I've been tinkering with the idea of adding a G-Code parser to it, so it can be used as a digital pantograph (poor mans CNC of sorts). G code parsing would basically add lines and arches to the workspace, so a user would write a simple G-Code program, load it in and then use the mill to follow the lines.
I have an early "beta" version of the parser that handles G0, G1, G2, G3, G7, G8, G17-G21, G28, G90, and G91.
I'm treating G0 command as a point (i.e. each destination of G0 move is added as a point to the workspace.
I treat the files as 2D "drawings", so plane selection command is used only once at the beginning of the program to set the view plane, and if I encounter it subsequently, I treat it as error.
G28 command basically does the same as G0 with all zeros in absolute mode, so it's not super useful...
Tool "offset" is handled by the UI (the tool is displayed as a circle proportional to it's size, so the user can see how close they are to the line.
So far simple files work pretty well, but I suspect things might be a bit confusing once someone decides to use the DRO in 2.5D or 3D mode.
I have very limited CNC experience, so I'd like to get some advice (i.e. please poke holes in my idea(s)). I'm mostly concerned with 3D programs. I.e. how would it make sense to handle 3D files. I.e. do I flatten them into a single layer, multiple layers,etc.
I would really appreciate any feedback or suggestions.
Thank you in advance
Yuriy