Let CAM Do the Work for You:

Categories // CAM, Tips & Tricks

Building Your Technology Database in CAMWorks

Created by: Alex Frank, Application Engineer

Hello Everyone,

I’m here today to help everyone better utilize the power of CAMWorks! Many of you CAMWorks users out there may be aware of the technology database (or knowledge base) and how it can be used to improve machining processes, standardize process parameters between programmers, and even automate a large amount of your CNC programming activity. Once you bestow your knowledge of CNC machining to CAMWorks, then you can use the tools to save you programming time and gain a competitive edge!

Before we start digging into this, let’s briefly overview what the technology database is. This is a Microsoft access database that is built into CAMWorks, and it is the engine that drives your programming in this CAM system.This database contains all the information necessary to machine a part, as you would like to machine it. Some examples of the information you can put into the tech DB would be things like: A library of tools to be used in your shop, or machines. Speeds and feeds to be used with certain tools. A set of machining operations, and associated parameters (toolpath type, speed and feed, rapid planes etc) to machine a pocket of a certain size, and much more.

This 4-part tech blog series will show you how to make the Technology Database work for you. I am going to show you: How to define your machine tools in the database, how to define a library of commonly used tools, how you can build a set of custom machining strategies, and lastly, how to maintain your database, and share it with other CAMWorks programmers you may work with.

Let’s begin. First you will need to open the Tech DB, you can access this from the Windows start menu, but it will be easiest to launch it from inside the CAMWorks command manager.

camworkstech2From the home screen of the tech DB, you will see several categories to choose from. Today, we will be defining a milling machine, so I will choose the mill category. I would like to note that the process is very similar when defining a Lathe, or Mill-Turning machine.

I will choose the “Mill” Category, and on the next page I should have two choices. “Features and Operations” and “Machine”, we will look at “Features and Operations” in the next part of our series.

To illustrate how you can define a machine in the tech DB, let’s look at an example case. I am going to programs a HAAS VF1 vertical milling machine into my database to familiarize you with the various pages.

Once I choose the machine option, I will be presented with this window. There are some important things to note first. Everything you do in the technology database will be saved!!!! I want to point this out before we do any editing.

camworkstech3There is no save button in this DB, and everything you do is saved the minute you exit the database, so I strongly recommend keeping (and maintaining) a backup of your database before you do any editing.

To begin, I will need to create a new entry or “record” in the database. You will notice on there are arrows in the bottom left corner of the window. The one with the gold asterisk will create a new entry. The other arrows will allow you to view the other machine entries in the database, and edit them if you wish.

On the first page, I am going to be tasked with naming my machine, describing it, and selecting a postprocessor to use when I choose this machine to program a part. The “Medium Duty” is a pull-down menu, with several choices from light duty, to heavy duty. If you have your speed and feeds setup to use the speed and feed library, this setting will determine how aggressive the speed and feed is. Heavy duty will give aggressive speeds and feeds suited for a large, rigid machine and vice versa for light duty. Once I have this page (and each of the other pages) filled out, I can choose the next page from the tabs at the top.



The specifications tab allows you to define specs on your machine like the available power, table travel, feed rates, and whether indexing is possible. It also includes an option as to which type of tool radius compensation you would like to use when programming on this machine. I’ve filled out this page with information from the Haas website.

The next page I need to fill out (Shown below) has all the information on the machines tool changer, spindle taper, and tool change time)(referred to as a “turret” here). I will fill out information like the type of tool changer the machine uses (sequential, pre-load, indexing etc) I will choose a tool crib (Predefined set of tools) to use with this machine when it is selected. The check boxes below allow me to tell CAMWorks to use the predefined tools first, (Or only use predefined tools) when programming parts on this machine.



The spindle tab is simple, here you will define the parameter of the spindle. Speed and acceleration. This tab is the last page you will need to fill out for any 2.5 or 3 axis milling machine. If you have a 4 or 5 axis machine, then there is one more page you will need to fill out. The setup page.


This page does not have to do with part setups, but how the 4th and 5th axis is defined in a multi-axis indexing machine. On this page, you will define your rotary axes, 0 points, and any travel limits your 4th or 5th axis may have. You can also define a global distance to retrace the tool before the machine makes any rotary moves.

That’s all there is too it! It took me about 15 minutes to add this machine to my tech DB. Now when I program a part in CAMWorks using this machine, I don’t have any more menus I will need to fill out. I simply choose the machine, and all my information is automatically filled out from the database! Join me next time, and we will learn how you can customize your tool library, and create custom tool cribs (set of tools) to use with your machines.