Auggie Early posts
Auggie Early posts
Hi All:
Thought Id post a snapshot of my summer project "Auggie". I expect Auggie to be released in Gearotic as a GCode Wizard and Wizard authoring program for general CNC use. It uses C-like scripting and is a very powerful and easy way to write very complex wizards. It willtake a series of video';s I suspect , but Im hoping peopel like it. It will be aimed at making a programming environment so easy to use, that
anyone can make or modify wizards.
Art
Thought Id post a snapshot of my summer project "Auggie". I expect Auggie to be released in Gearotic as a GCode Wizard and Wizard authoring program for general CNC use. It uses C-like scripting and is a very powerful and easy way to write very complex wizards. It willtake a series of video';s I suspect , but Im hoping peopel like it. It will be aimed at making a programming environment so easy to use, that
anyone can make or modify wizards.
Art
Auggie Early posts
Hi Art,
I hand code G code, no CAD, no CAM. I'm working on cutting the most general gears I can. I'm well in to the realm of hyperboloidal gears.
I use lots of parameters, vectors, matracies, and numerical methods. I'm trying to work in transfer functions.
It's a pain though. I need a really good editor with wizarding.
Color syntax highlighting with scaled printing would be awesome!
I know you are a "Mach Guy" (under statement of the year!), but will this editor be friendly to other controllers? LinuxCNC maybe? Gotta have those O codes...
Thanks,
--Justin
I hand code G code, no CAD, no CAM. I'm working on cutting the most general gears I can. I'm well in to the realm of hyperboloidal gears.
I use lots of parameters, vectors, matracies, and numerical methods. I'm trying to work in transfer functions.
It's a pain though. I need a really good editor with wizarding.
Color syntax highlighting with scaled printing would be awesome!
I know you are a "Mach Guy" (under statement of the year!), but will this editor be friendly to other controllers? LinuxCNC maybe? Gotta have those O codes...
Thanks,
--Justin
Auggie Early posts
:)
Nice video. As you can see YaNvrNo is already havign fun playing. Its early, but in answer to your question, Auggie will have no attachment to any controller,
its output will be generic or specific as the user configures. A wizard author will not generate GCode statements, he will script a call for motion, which will then be reinterpreted
according to the config. For example, if your controller has G68 , it will spit out G68 , if not, it will use a matrix to change outcoming Gcode from the Gcode stream
to the properly rotated coordinates.
The config will control the axis letters, the prelog and prolog , an any other specifics of the code, the wizard authoring system will be designed for ease of use,
scripting by those who never thought they might program. Powerfull enough though so you can play heavily in the math. Thats the plan. At a minimum the program
will simply be a collection of usefull wizards to generate Gcode for specific modules, and for those donated by its users. It is being designed to be extendable,
with "import new wizard" capability and a forum slot for donated wizards. Great wizards will be compiled into the release with the users name in lights.
Auggie is planned to be free to encourage a community to support it. Scripting can be fun, but more importantly can allow you to create something youd never
talk your friendly programmer into implementing due to a small comunity interest. Im aware that sometimes you just have to build it and they will come,
so Auggie phase:2 ( the Wizard) , is an experimental release as it climbs that mountain to be a motion controller. Its a way for a motion controller to rise
from a usefull prephase in development. It wont be soon, but eventually I will release a beta, then a full release of "Auggie Phase:2" , I hope everyone
will give it a shot, and a series of videos on programming and usage will be produced to help.
The plan for the first wizard to show its power will be a dial maker for 4th axis dial making in a somewhat extreme way. Thats the way I hope to see it happen,
so unless I hit a wall somewhere, we'll see how it goes. This is a side project from gearotic, and is developed in offtime or side by side with Gearotic in my attempt at the
end of the road to have a rather unique full package of design capability in ways not normally seen. At its worst, ti will simply be an icon on your desktop after a
gearotic install.
Thats the plan... :)
Art
Nice video. As you can see YaNvrNo is already havign fun playing. Its early, but in answer to your question, Auggie will have no attachment to any controller,
its output will be generic or specific as the user configures. A wizard author will not generate GCode statements, he will script a call for motion, which will then be reinterpreted
according to the config. For example, if your controller has G68 , it will spit out G68 , if not, it will use a matrix to change outcoming Gcode from the Gcode stream
to the properly rotated coordinates.
The config will control the axis letters, the prelog and prolog , an any other specifics of the code, the wizard authoring system will be designed for ease of use,
scripting by those who never thought they might program. Powerfull enough though so you can play heavily in the math. Thats the plan. At a minimum the program
will simply be a collection of usefull wizards to generate Gcode for specific modules, and for those donated by its users. It is being designed to be extendable,
with "import new wizard" capability and a forum slot for donated wizards. Great wizards will be compiled into the release with the users name in lights.
Auggie is planned to be free to encourage a community to support it. Scripting can be fun, but more importantly can allow you to create something youd never
talk your friendly programmer into implementing due to a small comunity interest. Im aware that sometimes you just have to build it and they will come,
so Auggie phase:2 ( the Wizard) , is an experimental release as it climbs that mountain to be a motion controller. Its a way for a motion controller to rise
from a usefull prephase in development. It wont be soon, but eventually I will release a beta, then a full release of "Auggie Phase:2" , I hope everyone
will give it a shot, and a series of videos on programming and usage will be produced to help.
The plan for the first wizard to show its power will be a dial maker for 4th axis dial making in a somewhat extreme way. Thats the way I hope to see it happen,
so unless I hit a wall somewhere, we'll see how it goes. This is a side project from gearotic, and is developed in offtime or side by side with Gearotic in my attempt at the
end of the road to have a rather unique full package of design capability in ways not normally seen. At its worst, ti will simply be an icon on your desktop after a
gearotic install.
Thats the plan... :)
Art
Auggie Early posts
Ya-Nvr-No you have to much time on your hand`s
Auggie Early posts
;D No, this takes no time to do at all, I do it while drinking coffee in the morning sitting watching the news. Then I'm out in the shop making fun projects. But it does Help to be retired ;D
Auggie Early posts
Nice boxes. :)
Art
Art
Auggie Early posts
https://youtu.be/EH_32DUqivg
shows how you can take a whole screen and make a panel out of it and they all can still interact with a little script editing.
(changed Main to Default2)
Main was my initial screens, main panel name and Default2 was the screen name, save it as a panel and it is now the Default2 panel
Video also shows the ability to use a button as a toggle to set states.
Getting ether the Work or Machine Coords and creating the vectors from the axis DRO's
Note: at this time i am just using the sliders to drive the dros for ease and to show response.
I can assure you this is a snap to grasp and fun to play with. I can envision screens with tabs of wizards. Create your wizard write the script to control it, then share the wizard and script as a panel set with others. Someone includes it in their screen and refines it and passes it back as a new updated panel.
This is the easiest possible control interface ever created to use. and I would bet $$$ this will keep getting better. You don't have to do CNC, you could create a screen or panel to calculate and balance your checkbook or keep track of inventory or you name it. It's just a graphical tool to display the data in the scripts or in do time a motion controller or an I/O board. And you can make it as pretty or sinister as you desire with your own graphic files.
I swear, Art did more on his vacation then anyone would have dreamed is possible. This man is a treasure.
Do admit, I did beat him up a lot this summer. ;D Ya-Nvr-No ;D
Keep up the good work. Sweet job!!!!!!!!!
shows how you can take a whole screen and make a panel out of it and they all can still interact with a little script editing.
(changed Main to Default2)
Main was my initial screens, main panel name and Default2 was the screen name, save it as a panel and it is now the Default2 panel
Video also shows the ability to use a button as a toggle to set states.
Getting ether the Work or Machine Coords and creating the vectors from the axis DRO's
Note: at this time i am just using the sliders to drive the dros for ease and to show response.
I can assure you this is a snap to grasp and fun to play with. I can envision screens with tabs of wizards. Create your wizard write the script to control it, then share the wizard and script as a panel set with others. Someone includes it in their screen and refines it and passes it back as a new updated panel.
This is the easiest possible control interface ever created to use. and I would bet $$$ this will keep getting better. You don't have to do CNC, you could create a screen or panel to calculate and balance your checkbook or keep track of inventory or you name it. It's just a graphical tool to display the data in the scripts or in do time a motion controller or an I/O board. And you can make it as pretty or sinister as you desire with your own graphic files.
I swear, Art did more on his vacation then anyone would have dreamed is possible. This man is a treasure.
Do admit, I did beat him up a lot this summer. ;D Ya-Nvr-No ;D
Keep up the good work. Sweet job!!!!!!!!!
Last edited by Ya-Nvr-No on Thu Aug 13, 2015 8:02 am, edited 1 time in total.
Auggie Early posts
Created a Calculate Speeds & Feeds Panel
Code for the Calc Button:
Code for the Calc Button:
Code: Select all
global SurfaceSpeedCalc_BUT0 = function( current )
{
local PI=3.141592654;
local RPM_Inch=1000;
local RPM_Metric=6400;
local SFM=A.CtrlGet("SurfaceSpeedCalc_DRO0");
local SMM=A.CtrlGet("SurfaceSpeedCalc_DRO4");
local DIA_Inch=A.CtrlGet("SurfaceSpeedCalc_DRO1");
local DIA_Metric=A.CtrlGet("SurfaceSpeedCalc_DRO5");
RPM_Inch = (SFM * 12)/(DIA_Inch * PI);
RPM_Metric = (SMM * 318.057)/DIA_Metric;
SFM = (DIA_Inch * PI * RPM_Inch)/12;
SMM = (DIA_Metric * 0.00314 * RPM_Metric);
local TeethInch=A.CtrlGet("SurfaceSpeedCalc_DRO2");
local FeedToothInch=A.CtrlGet("SurfaceSpeedCalc_DRO3");
local TeethMetric=A.CtrlGet("SurfaceSpeedCalc_DRO6");
local FeedToothMetric=A.CtrlGet("SurfaceSpeedCalc_DRO7");
local FeedRateInch = TeethInch * FeedToothInch * RPM_Inch;
local FeedRateMetric = TeethMetric * FeedToothMetric * RPM_Metric;
A.CtrlSet("SurfaceSpeedCalc_DRO10",FeedRateInch);
A.CtrlSet("SurfaceSpeedCalc_DRO13",FeedRateMetric);
A.CtrlSet("SurfaceSpeedCalc_DRO9",RPM_Inch);
A.CtrlSet("SurfaceSpeedCalc_DRO12",RPM_Metric);
A.CtrlSet("SurfaceSpeedCalc_DRO8",SFM);
A.CtrlSet("SurfaceSpeedCalc_DRO11",SMM);
return;
};
Last edited by Ya-Nvr-No on Fri Aug 14, 2015 12:19 am, edited 1 time in total.
Auggie Early posts
yer it does not look to hard to do easier than Lua I don't have access to the scripted so I cant learn yet
art will this be able to control a machine this program only using a pokeys board
art will this be able to control a machine this program only using a pokeys board
Auggie Early posts
Ken:
Auggie Phase 2 is for wizards and scripting,
Auggie Phase 3 is for motion using a pokeys,
and if popular enough,
Auggie Phase 4 is for attachment to any other device thats interested.
Thats the plan..
There is a video tonight on my youtube channel on basic scripting, Ill repost a demo in a few days
that can script.
Art
Auggie Phase 2 is for wizards and scripting,
Auggie Phase 3 is for motion using a pokeys,
and if popular enough,
Auggie Phase 4 is for attachment to any other device thats interested.
Thats the plan..
There is a video tonight on my youtube channel on basic scripting, Ill repost a demo in a few days
that can script.
Art
Re: Auggie Early posts
Roughing in a Bolt Circle Wizard
Code: Select all
global BoltCircle_BUT0 = function( current )
{
local a = {Interface("BoltCircle_BUT1").curr,
Interface("BoltCircle_BUT2").curr,
Interface("BoltCircle_BUT3").curr,
Interface("BoltCircle_BUT4").curr,
Interface("BoltCircle_BUT5").curr,
Interface("BoltCircle_BUT6").curr,
Interface("BoltCircle_BUT7").curr,
Interface("BoltCircle_BUT8").curr,
Interface("BoltCircle_BUT9").curr};
local Gcode ="g80";
for( i = 0; i < 10; i=i+1)
{
if (a[i]== true )
{
Gcode = Interface("BoltCircle_BUT"+(i+1)).text;
}
}
local x_center = A.CtrlGet("BoltCircle_DRO0");
local y_center = A.CtrlGet("BoltCircle_DRO1");
local StartAngle = A.CtrlGet("BoltCircle_DRO2");
local dia = A.CtrlGet("BoltCircle_DRO3");
local numberofholes = A.CtrlGet("BoltCircle_DRO4");
local PI = 3.14159265;
local stAngle = (PI / 180) * StartAngle;
local Xangle = cos(stAngle);
local Yangle = sin(stAngle);
local x = x_center + (dia / 2) * Xangle;
local y = y_center + (dia / 2) * Yangle;
local StepAng = (2 * PI) / numberofholes;
for( i = 0; i < numberofholes; i=i+1)
{
x = x_center + (dia / 2) * cos(stAngle + (StepAng * i));
y = y_center + (dia / 2) * sin(stAngle + (StepAng * i));
Gcode = Gcode + " G1 "+ "X"+x + " Y"+y + "\r\n";
}
Gcode = Gcode + " G80";
Interface("BoltCircle_LABEL1").text = Gcode;
return;
};
BoltCircle_BUT0();
Who is online
Users browsing this forum: No registered users and 2 guests