|
|
|
Bill's Corner ...
|
|

[
]
|
Bill also maintains our
ShopBot Labs site
where you can putter with projects in various stages of
development.

See Bill featured in
ShopBot's ad in the current issue of Make Magazine,
available now at Barnes & Noble, other fine bookstores
and news stands and online at
www.makezine.com.
If you're using your
ShopBot for a unique application and would like to be featured
in a future ShopBot ad, send your story to
ShopBot.
If you were in San
Mateo, CA in May we hope you made it to the ShopBot Jamboree,
and
Make Magazine's
Maker Faire, a fascinating celebration of 21st century
creativity and ingenuity. The ShopBot Jamboree ran
May 17-18 and the Maker Faire ran May 19-20.
|
Making stuff ... -
Feb 2007
Those that know me will tell you that I can't help much with creating fancy 3d files or things like
lithophanes to cut on your ShopBot, but I have made a heck of a lot of
"stuff"...things that have a somewhat practical use like boats and furniture
and clocks and such. It seems like a lot of beginning ShopBotters have trouble
getting started on these kinds of projects and although I don't claim to know
all the tricks, here are some things that I've observed that may help you get
started.
Software
-
Find software that will do MOST of what you want to do and stick with it until
you're absolutely sure that it has a fatal flaw that can't be overcome. If
you already know how to use CorelDraw for instance (or AutoCAD for DOS or
TurboCAD4 or whatever you're comfortable with) there's probably a workaround
for the things that it can't directly do. If you're just starting out and
don't have a favorite yet, start with something simple until you find out
what you REALLY need...Part Wizard is a good choice.
-
There's nothing that kills productivity more than switching between 3 or 4
pieces of software...avoid it at all costs. The exception is specialty
software that only does one thing but that's the one thing that you need to
do...boat design software for instance. If you need it it's worth the
trouble to learn it, even if it only does one step.
-
If
you find software that works for you, think VERY seriously before you decide
to upgrade to the latest and greatest version. Most software companies
upgrade by piling on new features...just make sure they've added things that
you need without removing features that you use and are comfortable with.
-
Don't
get too wrapped up making "pretty" drawing and presentations in the
beginning...leave the photo-realistic renderings 'til you're more sure of
things. They can eat up a tremendous amount of time for something that could
change twenty more times. And shy away from 3d modeling software until you
can come up with a reason that you need it...it's slow to learn and slow to
use.
If you're using a CAD program, remember that the grid can be a powerful helper...use it
if it's available to help you line things up. And learn about and use Snap modes to
connect things together accurately. If you're drawing lines freehand with a
mouse it may LOOK like the ends join, but if you're not using some kind of
Snap I'll bet they aren't and will cause problems down the line. If you zoom WAY in
I'll bet you'll be surprised.
Sometimes less is more. If your design has curves for instance, try to use the fewest number of control
points possible. Take it from an old boatbuilder who's reputation hinged on always having "fair" curves...adding extra points
to a curve to try to force it into a shape that it doesn't want to take will only make it un-fair.
Designing
-
Try not to
show anyone your first draft as a "virtual" design on the computer. There's something about seeing something on a computer screen that makes people get wrapped up in the details and technique instead of the
big picture. Wait until you can show them a real
prototype...you'll get much better feedback. If you have to show someone a
preliminary design for feedback it's better to show them a pencil sketch on
a napkin than a CAD drawing...they won't get hung up in the presentation
details with a rough sketch like they do with something on the computer.
-
A pad of graph paper and a pencil works great for preliminary work. You don't
always need to use a computer, especially in the early stages of a design, and it's easy to end up making changes because of software limitations and not design decisions
-
Get
familiar with the ShopBot language and some of it's features...quite often
it's much quicker to create a file in the ShopBot Editor or NotePad with a
handful of commands than it is to draw it and create a toolpath.
-
Start simple. Don't over-design things in the beginning but instead start
with the simplest possible version and add features if they're needed, not
just because you can. Don't feel like you have to cover every square inch
with features.
-
Don't
forget the purpose of the things you're making. You might design the coolest looking
chair shaped like a flying 3d oyster and it may well be a piece of Art, but
if it's not comfortable to sit on it's a bad chair.
-
To
quote Salvador Dali: "Those who do not want to imitate anything, produce
nothing." Keep your eyes open for neat ideas and details, especially on the
web. You can learn a lot about the design process by looking at
someone else's work and trying to figure out why they made the design decisions that
they did. You always want to make your designs original but everyone can use
inspiration.
-
Don't
be afraid to start a design over if it isn't working and don't
get too stuck on the importance of any one feature...sometimes it's just not
meant to be. But don't be too quick to discard things either...it might be better than you think.
-
Always keep the cutting process in the back of your mind while you're designing. It's awfully easy to add a feature to your design that will make it awfully hard to cut. Any feature that makes you flip the piece over or stand it on edge to cut will end up being a pain at cutting time...just make sure there's enough value-added in that feature.
-
If
your design has lots of different elements, think about splitting it up so
each one is a separate file. That makes it easier to re-arrange and
re-design, and you'll be surprised how often you'll be able to use one of
the elements in something completely different.
-
Just
because the desk you measured was EXACTLY 24.865" tall doesn't mean that it
won't work if it's 24" tall or 25". The reason your mom's Chocolate
Chip cookie recipe says to use a cup of flour is not because it needs
exactly that much flour...it's just because that's the closest convenient
amount. Same way with making stuff…most of the time you can change a
measurement to suit your material or design and it'll work out just fine.
-
Unless you're cutting out valves for artificial hearts, don't feel like you
need micro precision either. Many times you'll be cutting a material who's
dimensions vary widely from sheet to sheet and which change with temperature
and humidity fluctuations, using cutters that might not be exactly the size
they're supposed to be. Don't design to micro tolerance unless you
have the right material, cutter, and a WELL tuned up tool. You might even
want to put a little "slop" in your design to make things easier to
assemble.
-
Be aware of your material sizes when you design and try to work within them
so that you minimize the waste. Leaving less waste not only means more money
in your pocket but also is "greener"...better for the environment.
-
Don't forget that you can't put a square peg in a round hole. If your design
has a tab that fits in a slot for instance, make sure that you think about
how you're going to deal with the radius that your cutter will leave on the
corner of all inside cuts. It doesn't really matter how you deal with it...
make the slot longer, roundover the edge of the tab, make the slot "dogbone"
shape, square up the corners by hand, or any other way that you like...just make sure that you deal with it
Prototyping
-
Be
willing to mess up on the first one of anything. Don't feel like a design
has to be perfect before you can put the bit to the material to cut a
prototype. Your first idea might not be exactly what you imagine the final
design being like, but sometimes cutting it is the only way to tell what you
need to do to make it better.
-
Stock
up on cheap materials and use them for prototyping. Also try not to throw
away scrap...you'll probably find a use for it.
Sometimes
it helps to make just a piece of a project to see how it works in "real
life". Often you can't tell what something will really be like until you've
held it in your hands and spun it around a couple of times. If it's too big or elaborate to
make it full sized, make a model of it using as many of the same techniques
as you can.
Hopefully some of this will be helpful to you but I'm
sure that not all will be...everyone works in different
ways. The key is to just keep trying things and be
willing to make mistakes and learn from each one. The
neat thing is that there
may be only one right way to make a sign for someone's business
but there's a gazillion ways to make a chair or a desk...there's
plenty of room for creativity.
Exploring
ShopBot Part Files 2 ... -
October 2006
In the last Bill’s corner we learned
how to manually create part files by typing in commands,
and to automate the process using the Part File
Assembler. Now I know you all agree with me that this
could be pretty powerful stuff, but what can we really
do with it that we can’t do just as easily by just
creating the file in Part Wizard?
So let’s say you already had a part
file that you created in Part Wizard that you use all
the time...maybe a 12”x12” FOR SALE sign for a real
estate company. One week they call you and say they need
6 of them…what do you do! You’ve got a handful of
options. You could always open up Part Wizard, open the
saved design (you did save it, didn't you?), then copy
it 6 times, move the copies around so that they fit on
your material, and create a new part file. Seems like a
lot of extra work, especially since the design part has
already been done. And what if the next order was for 11
or some other number...you would sure be doing a lot of
extra work every time you re-created the files. There
has to be an easier way.
Well, you could throw a piece of
plywood onto the table, sit down at the computer, and
type FP, forsale.sbp to cut the first sign. When
that one was done you could move 12” down the
sheet...either with the keypad or with an MX, 12,0
command...and then run the file again. But how would you
tell the ShopBot software to do that? You could re-zero
the tool where you wanted to cut the new file and then
run it again normally, but there are some problems with
doing it that way. The first one is that you’ll lose
your personal reference point on the tool and won’t know
the tool’s location just by looking at it...it might be
in the middle of the table but the tool might think it’s
at 0,0. Your ShopBot still knows where the "real" 0,0 is
because it's saved with your Table Base Coordinates, but
it might not be obvious to you if you wanted to send it
to some other place on the table.
The other problem is one called
“accumulated error” and happens when a number is rounded
off a bunch of times. Just about all calculations in
life are rounded a little bit...sometimes up and
sometimes down...which generally doesn’t make much
difference. But if more are rounded up than down (or
vice versa), after a while the error can mount up. So
constantly re-zeroing really isn't the best thing to do.
Offset Mode and Master Files
A better way would be to move down
to the new starting point with the MX, 12,0
command and then run the sign file in 2d OFFSET mode by
typing FP, selecting the file again, and then
selecting 2d offset in the fillin sheet. 2d OFFSET mode
acts like a temporary re-zeroing, so that the file cuts
as if the current tool location is 0,0 without actually
changing it to 0,0. You can also select 3d offset, which
works the exact same way but also offsets in the Z-axis.
After the first sign had cut you could type MX,
24,0 and repeat the process. It would work great but
you would be pretty much tied to the computer for the
time that the signs were cutting. What we need to do is
to automate the process so that it will run un-attended
and you can do something else while it’s cutting.
The way that works the best is to
create a “Master File”, either manually or using the
Part File Assembler, that does all the moving and file
calling for you. A Master File uses a combination of Jog
(or Move) commands to position the tool at the new start
point, and matching FP commands with the Offset
parameter (the 6th one), set to "2" for 2D offset (or
"1" for 3D offset). The commands to cut our first
hypothetical For Sale sign 12" from our 0,0 position
would look like...
J2, 12, 0
FP, forsale.sbp,,,,,2
..and here’s a sample of a Master file that you could
use to cut all 6 signs...
J2, 0, 0
FP, forsale.sbp,,,,,2
J2, 12, 0
' the Y offset isn't needed here ... it just makes it
more consistent
FP, forsale.sbp,,,,,2
J2, 24, 0
FP, forsale.sbp,,,,,2
J2, 36, 0
FP, forsale.sbp,,,,,2
J2, 48, 0
FP, forsale.sbp,,,,,2
J2, 60, 0
FP, forsale.sbp,,,,,2
If you saved this new file and ran it in preview it
would look something like this..
Offset mode also comes in REALLY
handy for cutting files out of odd-shaped pieces of
scrap material, because you can move to a clear spot and
cut the file there without knowing beforehand where that
location is. Offset Mode cutting works best…for me at
least…if you create your files with the 0,0 location at
the lower-lefthand corner of the part because you ALWAYS
know where the corner of a blank is but you have to FIND
it’s center. With some thought you can place the 0,0
point of your drawing in the center of the part or just
about anywhere else.
One other option is to use the "S_nest.sbp"
file that's included your Sbparts folder. It uses a
series of questions to create an "array"..a pattern of
rows and columns...of locations that a part file will be
cut. It's VERY handy if you want to fill a sheet full of
copies of a file, but may be a little bit of overkill if
you just need to cut a couple of copies of something. It
also only works if you can use a "regular" cutting
pattern...one that has even rows and columns.
As you can see Offset Mode and
Master Files have a lot of uses, and you can stop
reading here if you want and will have a very handy new
tool in your ShopBot toolbox. You can easily expand the
power of these Master files by using more of the ShopBot
commands, so take a break for a little while, play with
running some files in Offset mode and maybe create a
Master file or two. Then when you’re feeling refreshed
and recharged come back and we’ll introduce “variables”
and the INPUT statement that will let us customize our
Master Files without having to do as much re-writing.
What’s a variable? The answer varies…
Welcome back. Let’s get back in the
swing of things by backing up a couple of articles.
Remember our example part file from the first "Exploring
Part Files" article...
' Our sample file could be used
to drill a series of half inch deep holes
' Zero the Z-axis at the top of the material
'
' Written by Bill May 4, 2006
MZ, 0.5
' lift to a safe Z height
J2, 1, 1
' Jog to X = 1 and Y = 1
MZ, -0.5
' plunge the Z-axis to –0.5 to drill hole
MZ, 0.5
' lift bit to safe height
JX, 2
' Jog to the next hole
MZ, -0.5
MZ, 0.5
JX, 3
' and the next
MZ, -0.5
MZ, 0.5
JX, 4
' the last hole
MZ, -0.5
MZ, 0.5
J2, 1, 1
' Jog back to X = 1 and Y = 1
This file is pretty short, and it would be easy to make
changes to it. If we wanted to change the depth of the
hole to -0.25” instead of -0.5” we would just have to
change the 3rd command to MZ, -0.25. And the 6th.
And the 9th. And the 12th. But what if we were drilling
100 holes? If we were using the ShopBot editor we could
use the find and replace feature to replace every
instance of -0.5 with -0.25, but every time we wanted to
drill a different depth hole we would have to change all
of them. And what would happen if we had a command in
our file like..
M3, 3.75,
-0.5, -0.5
Unfortunately the Replace function
in the editor would change any occurrence of "-0.5",
both the one you wanted...the Z-axis one...and the
Y-axis value that you don't want to change. That’s where
variables come in handy.
A variable is just something that
represents something else. And you know what; you use
them all the time without knowing it. Let’s say you need
to figure out the sales tax on something you want to
buy. Your total TAX equals the product COST times the
sales tax RATE, so if you wrote it as a math formula it
would be TAX = COST * RATE. Well, TAX, COST, and RATE
are variables because they are symbols that represents a
number or value that can change or vary. The TAX on a
$15 router bit in Virginia where the RATE is 4.5% will
be different than the tax on a $20,000 car in a state
with a 6% tax rate.
But how would we use a variable in
our example? First we need to tell the ShopBot software
that something is a variable, and we do that by picking
a unique name for the variable and starting it with the
& sign. That means that we could name our
variable &x if we wanted to and everything would
work, but later on that really wouldn’t tell us very
much about what that variable does and what kind of
value it holds. It's a much better idea to pick a name
that's meaningful to you, maybe something like &holedepth.
Now every time we want to drill a hole we can replace
the line MZ, -0.5 with the line MZ, &holedepth.
But wait a minute, how does the ShopBot know what &holedepth
represents? It doesn’t on it’s own, we have to tell it.
We do this with a line in our part file that says &holedepth
= -0.5 in a step that programmers call
“initializing” the variable.
There's one thing you need to be
aware of when working with variables in a ShopBot file.
ShopBot variables are "persistent", meaning that they
hold their value until they're either given a new value
later on or the ShopBot software is shut down which
wipes the slate clean. This can be a very useful feature
because you can create a file full of just variables and
then load it in any part file with the FP command and
you'll have access to those values. That's how the
ShopBot zeroing files work...in the beginning they load
a file named "my_variables.sbc" that's in your "C:\sbparts\custom"
folder. It contains all the settings that are specific
to your tool that you entered using the "Setup" Virtual
Tool, and these values are then available to any part
file that's run until the tool is shut off. This
persistence property of variables can be handy but can
also be a problem, especially if you use a variable in a
file without giving it a value...without "initializing"
it. If you've used a variable with the same name in an
earlier file then it's value will carry over...which
might be good or might not. Just be aware of it.
Back to work. Let’s re-write our
example using a variable for the depth, and while we’re
at it let’s change the safe z height to a variable as
well. Our file would look like;
' Our sample file could be used
to drill a series of holes
' Zero the Z-axis at the top of the material
'
' Written by Bill May 4, 2006
&zup = 0.5
' safe z height
&holedepth
= -0.50 ' set cutting depth
MZ, &zup
' lift to a safe Z height
J2, 1, 1
' Jog to X = 1 and Y = 1
MZ, &holedepth ' plunge the
Z-axis to –0.5 to drill hole
MZ, &zup
' lift bit to safe height
JX, 2
' Jog to the next hole
MZ, &holedepth
MZ, &zup
JX, 3
' and the next
MZ, &holedepth
MZ, &zup
JX, 4
' the last hole
MZ, &holedepth
MZ, &zup
J2, 1, 1
' Jog back to X = 1 and Y = 1
You can see how much easier this would be to change the
cutting depth if it drill 100 holes instead of 4...you
would only need to change the value of the variable &holedepth.
But wouldn't it be neat if you could somehow tell your
file what the value of that variable is without having
to change the file and the re-save it? You can by using
the INPUT command.
Asking the person running the ShopBot a question…
The INPUT statement is the
ShopBot software's way of asking you a question and then
saving your answer in a variable. Up until now the
commands we use have been pretty simple but the INPUT
statement has a format that it has to be in to work
correctly..what computer programmers call it's Syntax.
You start with the word INPUT (called a keyword
in programming-ese) which is followed by the phrase that
you want the person running the file to see, surrounded
by quotes (") on each end. Then after the last quote you
put the name of the variable that whatever the user
types will be stored in. Here's an example of an
INPUT statement that would let the ShopBot user type
in a new value for the hole depth, &holedepth
INPUT "How deep do you want to
drill the holes?" &holedepth
You can just replace the "initialized" value for &holedepth
with this new INPUT line and when a ShopBotter
runs that file he would be presented with a box like
this...
Whatever the ShopBotter typed into the box would be
stored in the variable &holedepth. And every time
you ran the file you could drill different depth holes,
without having to change the file itself...just type in
a different number. That might not be all that handy,
but let's say that you needed to drill your holes
exactly halfway through your material and the material
varied in thickness the way most plywood does. We can
modify our example file so that it now asks for the
material thickness as a input and then uses the value of
that variable to calculate the correct &holedepth
value. It might look something like this...
INPUT " How thick is your
material?" &thickness ' set cutting depth
&holedepth = 0 - (&thickness / 2 )
' find half of thickness and subtract from 0 to get cut
below surface
Each time we run this hole-drilling we could accurately
measure our material and then type in that measurement
and all our holes would be the correct depth.
There's one more use for the
INPUT command...it can be used to read values from a
text file. We'll talk about this in an upcoming article
on reading and writing text files from within a part
file, but in the next article we'll take what we’ve
learned about using variables and the INPUT
command (along with some new commands) to make
decisions…the IF-THEN statement and looping.
Exploring ShopBot Part Files -
May 2006
Many ShopBotters
are happy creating their part files in a program like Part Wizard and
never really looking at the part file that’s created, and there’s
nothing wrong with that at all. Part Wizard and similar programs use
something called a Post Processor or “Post” for short to create the
commands to move your ShopBot around, and you can run those files
without ever exploring the mystery of what’s really going on in them.
A growing number
of ShopBotters, though, are interested in learning to use the ShopBot
language to create their own files, or to be able to modify the files
that are generated by other programs. If you’re one of them, or are just
curious, here’s a start at using (and understanding) the ShopBot
language.
The ShopBot
language
The first thing
to remember is that a ShopBot part file is just a text file, and can be
read just like a shopping list or a letter. The ShopBot language is a
variation of the BASIC computer language and is “conversational”,
meaning the commands are descriptive of what they do. Let’s compare it
to G-code, another common CNC control language
Let’s say we want
to move from the 1,1,0 position to the 2,2,1 in absolute mode, then move
back to our home position. In G-code it would look like this..
G90 … set to absolute mode
G00 X1 Y1 Z0
… move to 1,1,0 at rapid speed
G01 X2 Y2 Z1
… move to 2,2,1 at cut speed
G28 … go to HOME position
Here’s the same
thing in ShopBot language…
SA ' set to absolute mode
J3, 1, 1, 0 ' jog to 1,1,0
M3, 2, 2, 1 ' move to 2,2,1
MH ' go to HOME
position
It’s quite a bit
easier to understand what ShopBot commands do, don’t you think?
So how do I read
and write a ShopBot file?
If
you’re using the ShopBot Windows software and checked the “Associate
Files” checkbox when you installed the software, then you can click on
any part file…any file with the .sbp file extension…and it will open in
the ShopBot Editor. You can also open a part file with your favorite
Text editor… Notepad is installed by Windows by default…by
right-clicking the file, selecting the “Open With” option, and picking
the program that you prefer. You can even open a part file in Microsoft
Word, but be AWFULLY careful if you want to save a part file in Word to
make sure you save using the simplest TEXT option, without any
formatting.
So let’s write
our own part file and see just how simple it can be. Start the ShopBot
software and type [FN] to create a blank part file in the ShopBot
Editor. Once it’s open type the following lines …
MZ, 0.5
J2, 1, 1
MZ, -0.5
MZ, 0.5
MX, 2
MZ, -0.5
MZ, 0.5
MX, 3
MZ, -0.5
MZ, 0.5
MX, 4
MZ, -0.5
MZ, 1
J2, 1, 1
The ShopBot
software doesn’t care if you leave blank lines in your file (and many
cases it is easier to follow the flow of a part file if you leave some
“White space” between sections of a file), but for this first example
just type it the way it is above. When you’re done save it with a
descriptive name like “samplefile.sbp”. If you used the ShopBot editor
then it should look like this when you’re done.
On Naming your
part files
There are very
few rules for naming ShopBot files…most of the restrictions are
imposed by Windows. {If you plan on running your file in the DOS
version of the ShopBot software then you’ll need to use the DOS
naming restriction…the name can only have 8 characters in the name
followed by a 3 character extension (which is .sbp in our case) and
can only use the characters a-z, 0-9, and underscore.}
In Windows the
file name can be up to 256 characters long and the only special
character restrictions are that the file can’t contain the
; \ ⁄
: * ? " < > ¦ ,
characters.
The only restrictions that we have to worry about that are
ShopBot-specific are that you can’t use any of the math operators or
special characters that ShopBot uses (like the “&” that’s used in
front of a variable name), or any of the Programming commands or key
words like PAUSE or INPUT
This was not a very
complicated file but it may not be obvious what it does just by looking
at the commands. You can test your new saved file by changing to Preview
mode [SP] and then typing [FP] and selecting your new
file. If you rotate the Preview a little you’ll see that it moves along
parallel to the X-axis and periodically moves up and down.
If your preview
doesn’t look like this or you get an error message when you try to run
it, open your file back up in the Editor and make sure that you typed it
EXACTLY the way it’s listed above.
The preview tells
you how the file moves but it still doesn’t tell you
everything...comments will help to do that.
First steps in
ShopBot programming…Commenting.
Before we get
much further, we’re about to use the “P” word...”programming”. But don’t
let the word scare you...a program is just a set of commands or
instructions that tell a computer or machine what to do. Every ShopBot
part file is a program of sorts, even a simple one like the one we just
created. That simple “program” could be used to drill a series of ½”
deep hole, but that may not be obvious by just looking at it. What we
need is a way to tell someone that’s reading the file what it does,
without putting instructions in the files that your ShopBot will try to
execute but doesn’t understand. You’ll do that by adding comments.
A comment is just a message from the person that wrote the part file to
the person that will be using it, and starts with the single quote or
apostrophe character ‘ . You can put comments on a line by themselves
anywhere within a file, or add them to the end of a command to explain
what that particular line does. Using our example above, let’s add some
comments (shown in green here to make them easier to pick out; they’ll
be black in your file) and see if it makes things clearer:
' Our sample file could be used to drill a
series of half inch deep holes
' Zero the Z-axis at the top of the material
'
' Written by Bill May 4, 2006
MZ, 0.5
'
lift to a safe Z height
J2, 1, 1 '
Jog to X = 1 and Y = 1
MZ, -0.5 ' plunge the Z-axis to
–0.5 to drill hole
MZ, 0.5
' lift bit to safe height
JX, 2 '
Jog to the next hole
MZ, -0.5
MZ, 0.5
JX, 3 ' and the next
MZ, -0.5
MZ, 0.5
JX, 4 ' the last hole
MZ, -0.5
MZ, 0.5
J2, 1, 1 ' Jog back to X
= 1 and Y = 1
Now comments really aren’t
necessary in a simple file like this, but you can see how they could
make a complicated file quite a bit clearer and easier to understand or
remember. So do yourself (and anyone else that needs to use your files)
a favor by adding comments to all your part files. It’s a great way to
include information like what size bit the file was created for, what
thickness material this file uses, where the Z-axis must be zeroed, or
even how to contact you if there are any questions. You can add your
comments manually with an Editor or use the Header Writer Virtual Tool [TH]
to automate the process.
Now there’s one time that a comment is used in a special way by the
ShopBot software, and that’s if it is immediately followed by a PAUSE
command, as long as there isn’t a number after the PAUSE command.
In this case the comment is shown on the screen in a message box. The
program stops executing and waits for a response from the user. So a
file with the following lines…
' Comment
test…click OK to continue
PAUSE
.. will present the user with
this message box when the Part File runs …
If the OK button
is clicked or the ENTER key is hit the file will continue…if Cancel is
clicked or the ESC key is hit the file will stop executing.
Making things
easier... the ShopBot Part File Assembler.
Having to type
the commands in with the keyboard can be kind of a pain, so we’ve come
up with the ShopBot Part File Assembler to make the job easier. Before
we tell you what it is, lets start with what the ShopBot Part File
Assembler ISN’T. It's NOT a replacement for the Editor or a way to
create elaborate cutting files. It’s also not a replacement for Part
Wizard and doesn’t know anything about toolpaths or importing drawings.
What it DOES do is to give you a way to “Assemble” a Part file by
combining some of the basic ShopBot commands. It’s especially handy for
things like “master files” that can be used to call an existing part
file in many locations around your material or alternate between files
for multiple cutting heads if you have them...Z and A axis files for
instance. It also does some color coding of commands to make it easier
to pick them out.
There’s not
really that much that needs to be explained about how to use the
Assembler. In the left column are buttons for each of the commands that
are available. You start out by selecting a name for your new
“assembled” part file and a form opens with an assortment of “basic”
commands that let your part file do things like make moves, call other
part files, and add comments to make things as clear as possible. If
you’re feeling adventuresome, click the “Advanced” item in the “Mode”
menu and you’ll get some of the more advanced programming commands that
are available in the ShopBot language. We’ve included the commands that
are most common and we think most useful, but if there’s one that we
haven’t included that you need just click the “???” button and you’ll
get a blank line to type in whatever command you want.
You start
creating building your file by clicking the button for the command that
you want and that command will appear in the main panel on the right.
You’ll also get a popup window that will let you fill in the values that
are specific to that command…the file name if it’s an FP Command, the
coordinates to move to if it’s a Move or Jog command, that sort of
thing. These values are called “parameters” and you can leave out any of
them that you don’t want to change and they’ll stay at their current
value...only the ones that you enter a value for will change. You can
also add an “inline” comment to many of the commands by clicking the
“Add a comment” checkbox...it will put your comment at the end of that
line. Just build your file by clicking on commands and filling in the
correct values.
If you’re very
smart (or very lucky) you’ll have put your file together correctly the
first time, but just in case you aren’t that lucky you can move your
mouse pointer over any command that you’ve created and, toward it’s
right end, the cursor will turn into a hand and you’ll be able to
left-click and drag that command to a new position in the file. You can
also right-click and either Edit it to change some of the values that
you set, Copy the command so that you can paste it into a blank “???”
command, or Delete the command altogether. If you get it hopelessly
messed up with absolutely no chance of recovery, don’t worry…just select
the “Reset” option and you’ll be presented with a clean slate.
After you’ve
played around with it for a while you’ll realize pretty quickly that
this part file business is really not rocket science, and that a part
file is just an assembly of ShopBot commands. When you're all done and
your file is just the way you want it, select SAVE in the FILE menu and
your part file will be created. You'll be asked if you want to add a
header and footer …sections of information at the beginning and end of
your file to help the person that’s running the file to understand
what’s going on in it... and if you answer “yes” the ShopBot Header
Writer will open to help you create your new file's header. That’s all
there is to it...your done!
Here’s our same
example file, created with the Assembler
{missing
material}
definitely a “work in progress” so make sure that you open the files
that it creates in an Editor to see if it’s really doing what you
expect.
2) There is not
much more file checking at this point that there is in the ShopBot
Editor, so if you're not careful you can EASILY create files that don’t
make sense and won't run on your ShopBot. You can tell it to do things
like “M2, bob, henry” and it will be happy to let you do it. Consider
yourself warned!
3) If your file
calls other part files you are WAY better off if you create a folder to
hold all your files, instead of having them scattered all over your hard
drive. If they're all in one folder...including your new assembled
file...then the Assembler can write relative paths (like “FP, Beak.sbp”)
and you can move the whole bunch around to your heart's content and the
paths will still work. If however they're in different folders then it
has to write the full path for any files called with the FP command
(something like “FP, C:\Documents and Settings\Sam\Desktop\Current Work\PartFiles\Duck\oldVersion\Beak.sbp.)
If you move those files around after you’ve saved then it won’t have a
clue where to find them.
Enough for
now...I don’t want to overload you right at the start! Over the next
couple of articles I’ll talk about some of the other programming
commands and how you might use them in your parts files...things like
making it easy to modify values by using variables and INPUT
statements.
[Click here to download Bill's
Part File Assembler]
The Extruder…how to squeeze molding and other odd shapes out
of your ShopBot! -
March 2006
If you're like me you've come across situations
where you've had something that you wanted to cut...maybe something like
a piece of molding or a boat rudder...that had the same cross-section
along its length. This happened to me recently when a contractor brought
me a piece of door corner trim from an old house that he was working on
and needed 6 copies made of it.
Robert had rejected a couple of options before he
came to see me. He had thought about ordering custom shaper blades but
that would have been expensive and taken a couple of weeks. He could
have hand-ground his own blades but that would have involved ordering
blade blanks, waiting for them, and then spending a half day (at least)
of some pretty tedious work trying to get them the correct shape while
keeping them balanced. For the small number of copies that he needed,
CNC cutting seemed like his best solution.
When he brought the original
to the shop we worked through a couple of options for duplicating them.
Probing the whole piece would have been simple but really would have
been overkill...we would have ended up spending a whole lot of time
getting points for a shape that really doesn't change much. What we
really needed to do was to create the Profile...a cross section of the
shape...and then extrude it along a straight line. It seemed like a
handy utility to have so after a little programming work the Extruder
was born.
To use the Extruder you first need to create a 2d Part Wizard toolpath file of the profile and then the Extruder "flips" the profile
on edge and extrudes that profile along the specified length. There are
a couple of different ways to create your original profile drawing, but
the quickest way for this job was to just stand the piece on edge on a
piece of paper and trace the edge with a pencil. A quick scan of that
tracing on a flatbed scanner created a bitmap file that we then manually
traced in TurboCAD with curves and straight lines. Once the tracing was
as close to the original as we needed it to be we discarded the bitmap
from the CAD drawing and saved the file as a dxf file so that we could
import it into Part Wizard.
This certainly isn’t the only way to do it,
though…there are lots of ways to generate your original profile. Some
shapes are easier to draw directly in CAD, like airfoil shapes that are
specified by formulas for their cross-sections. You could also use a
probe with one of the 3d dxf options to do a pass or 2 across the
pattern and then import that into a CAD program. It doesn't matter what
method you use as long as you end up with a good profile that you can
get into Part Wizard.
Once you've gotten your Profile drawing into Part
Wizard it's time to create a "Profile" toolpath. Although you'll be
using a ball-nose bit to cut the file, you'll create the profile
toolpath in Part Wizard with an end mill of the same diameter...if
you're going to be cutting the extrusion with a 1/2" ballnose bit then
create the toolpath file with a 1/2" end mill. This may seem funny at
first but imagine that the end mill is really a ballnose bit laying on
it's side…the end mill really represents the "ball" at the end of the
ballnose bit that will eventually be doing the actual cutting after the
"flip".
I'm not going to go though all the steps for
creating your profile toolpath...it's not all that different than any
other toolpath generation...but there are a couple of things that you
need to keep in mind
*) You want to make sure that you create the
toolpath so that it cuts in ONLY ONE PASS. The easiest way to do this is
to set the cutting depth so that it’s smaller than the stepdown setting
for the bit you select. Since the Z-axis settings are ignored in the
Extruder a very small cut depth like 0.001 or so should be fine.
*) Think about the direction that your extrusion is
going to be done before you create your toolpath. If you're going to be
extruding your profile parallel to the X axis then you’ll need to
arrange the profile so that it will be "flipped" around the Y-axis, and
the same is true when you’re extruding in the Y Axis. Clicking the “?”
buttons will help you figure out which one you want.
*) Once you’ve created your toolpath the final step
is to save it using either the plain "inch" or "mm" post processors, NOT
with any of the “arc” ones.
Creating your toolpath is really the hardest
part...after that it's simple. Start the Extruder and select the axis
that you're going to extrude along. Then select the start and end points
of the extrusion...this determines the length of the extrusion. The
SafeZ setting is how high you want the bit to be above the highest point
of the "flipped" profile which is calculated when the flip is done.
The “maximum segment length” setting ONLY breaks up
long straight sections to increase resolution. It doesn’t decrease the
resolution if your segments are closer together than that…if the
segments in your profile are too close together you’ll need to redo your
profile with a larger tolerance.
When you're done just click the button and you'll be
asked to select the file that you want to extrude. The virtual "flip"
will be done and the extruded file will be saved with the original file
name with "_extruded.sbp" added to it.

The finished trim pieces
Note: We didn’t need to use this feature on the trim
pieces but you’re also given a choice of tapering the extrusion in
height, width…perpendicular to the extrusion direction, or both. All
tapering is done toward the axis that the extrusion is parallel to, so
if the profile is "centered" on that Axis, with half of it above and
half below, then the extrusion will taper toward the middle. If the
whole profile is above the axis in an X-axis parallel extrusion then it
will taper "down", etc. Play with it a little in preview mode and it
will be pretty obvious what’s happening.
As I said in the beginning the Extruder can be used
for a lot of other uses besides molding. Shaping rudders and wings is a
natural use for it and it would be great for one-off curvy furniture and
architectural pieces.
Installing the Extruder
The Extruder comes packaged in a zip file and there’s really no
installation involved…the ShopBot control software has already installed
everything it needs to run. Just unzip it to a convenient place like
your desktop and when you’ve created the 2d profile that you want to
extrude just click the Extruder icon. It’s as simple as that. As a bonus
the download includes the “Flipper”, a program that takes the same kind
of 2d Part Wizard file and just does the “flip” that converts X or Y
axis values to Z-axis values, without doing the final extrusion step.
Finally there’s also a folder with sample toolpath files for you to play
with, just to help you get the hang of things. The Extruder and Flipper
are constantly being updated with new features and fixes so to make sure
that you have the most recent version we have the most recent
Extruder available in [ShopBot
Labs]
I hope the Extruder and Flipper are helpful to you.
The next Bill’s Corner project will be another program that I think
you’ll find…well…interesting.
Hacking the ShopBot (3 Hacks) -
November 2004
People wonder what it is exactly that I do
for ShopBot, and it’s actually kind of hard to explain.
Officially I work part-time doing “special projects”, but it
really boils down to about 50% “real work” and 50% play (some
would say 5% real work and 95% play!). One of the things I enjoy
most of all is building all kinds of machines and mechanisms
that are powered by stepper motors and controlled by the ShopBot
software, and I figured that y’all might be interested in seeing
some of these toys and prototypes.
First, let me make one thing clear right up
front. None of these projects are original to me...they were
inspired by things I’ve seen or read about. I just thought they
were neat and, usually after a lot of head-scratching and false
starts, got them to do MOSTLY what I wanted them to do. The
reason they worked as well as they do is because they rely on
exactly what a ShopBot and the ShopBot software does well...
move "something" around very precisely and let you interact with
that "something" in a lot of ways. It’s just a matter of
figuring out WHAT you want to move, and HOW you need to interact
with it. Here’s a sampling of some of the projects that I’ve
been playing with. If you get interested in playing around with
this sort of thing or just want to see what some REALLY creative
people do with robots, check out the
ArtBots show
in New York.

A ShopBot "Drawing Board"
So on to the neat stuff. The first mechanism was inspired by a
chain-driven graffiti machine named Hektor. If
you read about
Hektor one of the first things you’ll notice is that
creating Hektor was a pretty complicated procedure that involved
creating circuit boards and a lot of programming to basically
just make 2 stepper motor go back and forth and turn an output
switch on and off. Hey, wait a minute, the ShopBot software does
that already!
I sent the link to Hektor to Ted at ShopBot
and he dug through the ShopBot parts bin and came up with some
old stepper motors, aluminum plates from belt-drive gearboxes,
some hardware and beaded chain from the old cable drive days,
and some small solenoids to build into a prototype. The geometry
for creating the toolpath was a little funky because of the way
that the position of the pen is defined by the length of the 2
chains instead of the standard x/y coordinate system, but a
little bit of high school math made it pretty easy to create a
“shopbot-to-chain drive” convertor. A couple of different
versions were built, including a 4’x8’ version and a smaller one
that writes on 12”x18” paper.
The reason I like the “ShopBot drawing
board” so much is that, because there’s always a little bit of
vibration in the chains, it’s drawings look much more like
they’re “hand drawn” than anything that’s done on a printer or
plotter. It’s great for doing signs and illustrations and
generally just playing around with designs.
[See a
video of the drawing board in action.]

A ShopBot "Egg Plotter"
The next thing that caught my eye was a small “indexer” type
machine that was used in Bruce Shapiro’s “Bits to Bytes to Bots”
classes. Bruce has some VERY neat things on his
The art of
motion control web site,
but
the thing that caught my attention was his “egg plotter” that
lets you draw or write on an egg or other round-ish object. Like
the chain drive drawing machine it uses just 2 stepper motors
and a solenoid that’s triggered by one of the output switches,
but in the egg plotter the movements are rotational rather than
linear. One stepper motor rotates the egg and is driven by the
Y-axis channel while the second motor moves the pen from side to
side and is driven by the X-axis channel. It’s very similar to
the way that you can “wrap” a ShopBot file around a cylinder
when you’re using an indexer. The unit values for the 2 axis’
depend on the circumference of the egg, so each egg has to be
measured pretty accurately for the file to work out correctly. A
solenoid at the top of the pen holder (the PVC tube sticking up
in the picture above) lifts the pen and is triggered by one of
the output switches.
Now I know you’re asking “What good is it to be ale to write on
an egg? What can you do with it?”. To be honest with you I
wasn’t sure what the answer to this question was myself (other
than it was just fun to play with!), until the Physics teacher
at our local high school contacted me about doing some trophies
for his annual “egg challenge” project. The egg plotter turned
out to be just the thing, and here's a picture of the trophies
that I came up with. They’re drawn on real eggs with the
“insides” blown out, and painted with gold, silver, and bronze
spray paint. [See a video of
the egg plotter in action.]
5-axis motion
One of the potentially neatest features of the new ShopBot
software is that you can now move 5 axis’ at the same time. It
seemed like a fun thing to play with so I decided to put
together a 5-axis movement system for the Benchtop in the shop.
I wasn’t confident enough in my programming to actually make it
cut anything, and 5-axis software is AWFULLY expensive, so the
next best thing was to move a camera around...one of those USB
eyeball cameras turned out to be the perfect size for the job.
All the parts for the mechanism were cut on
the benchtop except for a couple of aluminum couplings that had
to be machined (just the excuse I needed to buy a little
metal-working lathe!) to connect the 2 extra motors to the
plywood parts. Three ball-bearing material handling rollers act
as bearings for the A axis, but the rest of the parts are simple
hardware-store bolts and bushings. A piece of PVC pipe fits
nicely into the router mount on the benchtop, so even though
it’s z-axis travel is limited a bit, it’s easy to remove the
router and pop this unit in.
Software to control it has been the biggest
problem. So far I’ve only been able to program it’s motion by
drawing the camera path in 3d in CAD and creating a toolpath,
drawing lines along that path that point to the object that I
want it to look at, and then using the properties of these lines
to manually add the 4th and 5th axis coordinates to the 3d file.
Very time consuming and doesn’t give the smoothest motion.
Videos:
[The
5-axis mechanism in action]
[View
through the camera]
Sorry about the quality of the video...those
cameras have manual focus so I couldn't keep it in focus all the
time.
Table Base Coordinates -
October 2004
One of the
things that ShopBotters seem to have
the most trouble understanding and
utilizing is the concept of "table
base coordinates" and limit checking
in the ShopBot software. They've
been in the ShopBot software all
along, but I'll bet that there
aren't a handful of ShopBotters that
use them or even know what they do.
To understand the concept of table
base coordinates you first need to
think of your ShopBot as having a
real, physical 0,0 point, one that
you never change. If you were
looking down at your ShopBot from
above, for most people that 0,0
point will be the lower left-hand
corner...the corner that most people
already think of as the 0,0 point.
The reason that remembering this
physical 0,0 point is so important
is that if the ShopBot software
always remembers where that "table
base" 0,0 point is, then it will
always know where things like stop
bolts are on the table and how far
an axis can move off of the table
top before it will hit them, EVEN IF
YOU RE_ZERO YOUR WORKING X AXIS AND
Y AXIS.
I don't get it...give me an example.
To
illustrate Table base coordinates,
start the ShopBot software and make
sure that you are in Preview mode.
For this example you also need to
make sure that your table limits
settings are still set to the
defaults by opening the fillin sheet
with the VL command. The default
values leave a 2" perimeter all the
way around your table top and have
"limit checking" turned off. The
screen shot shown here gives the
default values for a 48"x96"
tool...if you have something
different (like a benchtop) just
adjust the values accordingly. With
these default settings you're
telling the ShopBot software that it
can safely move 2" off of the table
top in all directions without
hitting the stop bolts, so your safe
working area goes from -2" to 98" in
the X-axis and -2" to 50" in the
Y-axis. That's what the yellow
perimeter around the "virtual" table
top is in the ShopBot previewer...it's
this "safety zone" that the tool can
safely move around in without
banging into anything.
With your ShopBot zeroed at the
usual 0,0 corner of the table
top...the "home" position...let's
give the software an MX,97.9
command. It will move the whole
length of the table plus a little
less than 2 inches and then
stop...still safely within the
yellow safe area as shown in the
image at left.
Now let's move your ShopBot
to the 5,5 position with an M2,5,5 (edited
10/21/04) command, so that the
bit is 5" over and up from the usual
0,0 corner, and then re-zero the X
and Y axis' at that point with a Z2
command. You'll get a
this message box telling you
that the Preview will now be "out of
sync" with the "real" tool, but just
click OK...it will be back in sync
the next time you start the
Previewer. You'll notice when you
change your 0,0 point that the WHOLE
grid in the previewer has been
shifted in the X and Y axis so that
it is out of sync with the table as
shown below.


So
what happens if you now give it the
same MX,97.9 command? It will still
make a move that's 97.9" long, but
this time it will run out of the
yellow "safe zone" (as shown at
left) before the move is completed,
because it started 5" away from the
"real" 0,0 point. If you were in
Move mode instead of Preview the
tool would have run into the stop
bolts at the end of the table, or
worse if those bolts hadn't been
installed! And the worse part is
that the Software never warned you!
A practical use...File Limit
checking
Now let's try the same moves but
this time with a new software
setting. First move your ShopBot
back to its CURRENT 0,0 position
with an M2,0,0 move...which was
actually the 5,5 position in the
REAL world before you re-zeroed in
the last step. Now let's repeat our
original MX,97.9 move, but before we
do let's turn on File Limit checking
using the VL command. Nothing
exciting will happen except that a
red line will appear around the
yellow "safety zone"...that red line
lets you know that limit checking is
turned on. With Limit Checking now
turned on, type MX,97.9 like you did
before. This time the software is
smarter...you'll get an error
message telling you that this move
will put you "out of limits" and ask
you if you want to turn off limit
checking. The software is smart
enough to know that even though
you've told it that 0,0 is in a new
location, the table and stop bolts
are still in the same old place.

So now you're thinking "This is
pretty cool...I can see how this
could be pretty handy." With limit
checking turned on the ShopBot
software will let you know if your
file will make your ShopBot crash
into the end stops BEFORE it runs.
The tricky part is that the software
needs to be able to keep track of
where the limits are even after
you've rezeroed...that's were the
"table base coordinates" come in.
Once you've set your table base Zero
point then each time you re-zero any
of your Axis', the difference is
saved as sort of a "stored offset".
That way your ShopBot always knows
the difference between it current
zero position and the "real" zero
position.
Setting up your Table base
Coordinates and File Limit Checking
So you're probably asking "How do I
work with these table base
coordinates". Here are the steps for
setting them up... 1) In Move mode
move to your REAL 0,0,0 position (in
most cases the home corner of your
table top) and zero your X,Y, and Z
axis AND your table base coordinates
by typing UZ. Do a good job of
setting this...the accuracy of your
setup depends on it. 2) Next you'll
need to figure out how far you can
safely move off of the table top
before you hit a stop bolt or some
other obstruction. Go into Keypad
mode and SLOWLY and CAREFULLY move
in the -X direction until you AlMOST
hit the stop bolt and write down
that number. Now do the same thing
in the +X direction, the + and - Y
directions, and the + Z direction.
If you have proximity switches
installed the tool will stop when it
hits the prox switches. Just write
down a value that's a little bit
beyond the prox switches...if the
prox switch stop the tool at -1.00,
write down -1.05 or something like
that. 3) Now type VL to open the
limit switch setting fillin sheet
and type in the values from your
list. Let's say the values for YOUR
tool are..
X-axis minumum -1.38
X-axis maximum = 97.92
Y-axis minumum = -2.07
Y-axis maximum = 49.88
Z-axis maximum = 5.72
If
you were to use the values above,
your new VL fillin sheet should look
like the one
shown here. Don't worry about
the A and B axes unless you use
them...if so just do them the same
way. Also don't worry too much about
being accurate with the "low"
setting for the Z axis...just pick a
value that will let you cut as deep
as you think you'll ever need to.
One quick note...if you have an
indexer or some other rotary axis
connected to your ShopBot, limit
checking doesn't really make sense
for that axis since it can turn
FOREVER without hitting anything,
but is especially important to have
turned on so that you don't whack
into the turning chuck!! In that
case just put a REALLY small number
for the low value for that
axis...maybe -10,000...and a REALLY
big number for the high value. That
way you can still have limit
checking do its job for the other
axis.
Here are a few tips. To see how far
your "working" coordinates are from
your table base coordinates, type UV
and the offsets are listed for each
axis. And just to make things easier
there's a shortcut to zeroing your
working coordinates and your table
base coordinates...the UZ command
does the same thing as typing Z3 and
then ZT...it zeros everything in one
shot!
Keeping up with things
So
now you've setup your table base
coordinates by carefully zeroing all
your axes and put in YOUR table
values so that limit checking will
work correctly. You won't need to go
through these steps again UNLESS...
-
You lose position with your
ShopBot because of a power
failure or other calamity
(mostly user error in my case!).
If this happens just go back to
your 0,0,0 point and type UZ to
reset your zero position and
your table base coordinates
OR
-
You replace your table top and
don't get it EXACTLY in the same
place, or you make any other
changes that change the REAL
0,0,0 position of your ShopBot
like moving the Z-axis or using
a different kind of router with
a different sized body. If any
of this happens, don't
worry...just go through the same
steps above that you did the
first time you set things up and
you'll be back in business.
I
know all this sounds pretty
complicated (and the description was
pretty long-winded!), but I promise
if you take the time to set things
up correctly that you'll find it
VERY handy, especially with the new,
fast-moving PRTAlphas.
ShopBot File Runner Program -
July 2004
Many of us run a
lot of different part files and like
working (playing some times!) with
all the options and possibilities in
the ShopBot software. Others,
though, may only run a couple of
different files or might have
someone else run the tool who may
not be quite as proficient with the
ShopBot software as they are...this
set of programs is for you. It lets
you create a custom "ShopBot File
Runner" with a series of buttons
that will run ShopBot files and
define options for the way they'll
run like..
-
If the file
runs in Cut or Preview mode.
-
How the file
will close when it's done.
-
How many
decisions the person operating
your ShopBot will be able to
make when running the file.
If you'll look
in "C:\Program
Files\ShopBot\Developer
Tools\Runner" you'll see 2 programs,
a folder named "media" that contains
button icons, an ini file and a .bak
file. The "ShopBot File Runner"
program is the one that the ShopBot
operator will use to run the ShopBot
files, and the "File Runner
Customizer" program is the one that
you can use to create your own
customized runner.

We really should
start with the Customizer program
first, but since it will all make
more sense if you can see what
you'll be creating, we'll try out
the runner with the default ini file
first. Click "ShopBot File Runner"
and a small form will open up with
one button and a little bit of text
next to it. Clicking that button
starts the ShopBot software, draws
the ShopBot logo file, and then
closes the ShopBot software when
it's done. You get the idea...the
"ShopBot File Runner" just automates
the process of running ShopBot
files. Now you may want to do
something with your ShopBot other
than run the logo in Preview mode,
so next we'll learn how you can
create your own custom File Runner.
If you'll click
on the "File Runner Customizer"
icon, a form will appear with a
handful of options that will define
the buttons for your runner and how
they will work. At the top is a box
to fill in a description for the
first button. Try to come up with a
"short but sweet" description that
will be easy to read and understand
because this is what will identify
that button to the person running
the ShopBot... so "Button 1" is a
bad choice. If the file will be run
in Cut mode "_cut" is added to the
end of the description, and if it's
to be run in preview "_Prev" is
added.
Next you'll pick
the file that the button will
run...it's pretty standard Windows
stuff and shouldn't need any
explanation... and the icon that
will appear on the button face. You
can go with the defaults (the old
move/cut and preview icons from the
DOS software) or select a different
picture. There are a handful of
choices in the "Media" folder, but
you can use any 32 pixel x 32 pixel
bitmap or icon. You can also create
your own in Paint or any other
graphics program that you prefer. I
try to use the prefix "p_" in my
picture names for files that will be
run in Preview mode and "c_" for
files that will be run in cut mode,
but you don't have to do that if you
don't want. Just don't overwrite the
"c_sb.bmp" and "p_sb.bmp"
files...they are the ones that are
used as defaults.

Now we get down
to the meat of the
program...deciding how the file will
run. You'll be able to select how
the file will open, how it will
close, what the user will see on the
screen, and sometimes if the file
will be cut in Offset mode. The Run
Method, Close Method, and Display
Method options are pretty clear,
just read the descriptions next to
the radio buttons. The only odd ones
are the last Run and Display
options. The last Run Method option
just puts the file that you select
into the fillin sheet when you use
the FP command next time...you
probably won't need to use that very
much with the runner. And the last
Display Method option removes most
of the choices in the ShopBot
software so that the operator can't
open the keypad or change any
settings.

The Offset
option is only available when either
the 3rd or 4th Run Method is
selected, so that the software
starts without the fillin sheet
appearing. The final choice at the
bottom of the screen asks if you
want to create a "warning" box that
will appear first if the file is
going to run in CUT mode. We HIGHLY
recommend that you keep this option
checked...it makes the process of
running a file that much safer. When
all these choices are made you can
either click "I'm done" to finish up
or "Add another button"
to...well...add another button. Make
sure that you use a unique
description for each button. You can
add a bunch of buttons but you'll
run out of space after 8 or so. If
you need more than that, let me know
and I'll look into a different
layout options.
When you're all
done and have clicked the "I'm done"
button, a new "runner.ini" file will
be created that will be used to
setup the "ShopBot File Runner"
program the next time it's run. Just
make sure that you keep all the
parts in the same folder, though you
can create a shortcut to the File
Runner program on your desktop (or
wherever you want) to make it easier
to find and run.
I hope these
programs will help make your
ShopBotting easier, and drop me an
email if you think of any other
programs that you'd like to see. I
don't make any guarantees but if it
sounds interesting to me...
|