Copyright (C) 1986-2009 by Daniel H. Hudgins, All Rights Reserved.
No part of "This Web Site" (HTML document), including associated files, may be: distributed, sublicensed, transmitted, copied, archived, mirrored, modified, bundled, embedded, sold, given away, rented, loaned, or shared in any form without express written permission in a formal Vendor agreement contract dated and signed in ink obtained directly from Daniel H. Hudgins by registered postal mail. All agreements for permission to distribute expire after a period no greater than one year from the date of the signing of the agreement by Daniel H. Hudgins. See the current "EULA" for information regarding limited copying and storage for the purpose of "Beta Testing" "This Web Site."
To view or use the current version of this Web page you may need to reload or refresh the display of this page by your browser. Just clicking on the browser's [Reload] or [Refresh] icon may not be enough to insure that all of the page's most current contents have been cached and displayed. Some browsers may have additional commands to help display the page's most current contents such as: holding down the [Shift] key and clicking on the [Reload] icon, holding down the [Control] key and clicking on the [Refresh] icon, holding down the [Control] and [Shift] keys and clicking on the [Refresh] icon, pressing the [Control] and [F5] keys, pressing [Control] and the [R] key, or some other combination of keys or clicks. Check to see which commands your HTML browser uses to load the most current page contents into its cache and then to display them onto the screen.
This Web site is dedicated to the thousands of "users" of my programs, those who have helped test my programs over the last 23 or so years, and especially those who shared their experiences with me.
You must read this notice: This is a licensed Web site (HTML document and associated files). You must read and agree to be legally bound in contract by the Terms of Use and conditions given in the End User License Agreement ("EULA"), Legal Notices, Instructions, Warnings, Disclaimers, and all other text in "SECTION: 0" of "This Web Site" (HTML document and associated files) before reading or using any of the information, software programs, and or files, contained in, linked to, and or associated with, "This Web Site" (HTML document and associated files). Any use or "Beta Testing" of "This Web Site" constitutes your acknowledgment of your full agreement with the current End User License Agreement ("EULA") and your decision to have this current license supersede all prior and contemporaneous agreements and understandings. Information and files in "This Web Site" (HTML document and associated files) have been placed here so that long time users of "The Author's" programs DANCAD3D.COM (tm) , DANCAD87.EXE (tm), DANCINEL.EXE (tm), DANCINES.EXE (tm) , DANCAM.EXE (tm) , or DANPLOT.EXE (tm) could help proofread the text of the documentation files or screens displayed, and also help test data files, example files, and or any software programs that might be made available from time to time, to aid "The Author" in finding mistakes, bugs, and other errors, omissions, defects, mistakes, and faults. Everything in "This Web Site" (HTML document and associated files) is "Beta Test", "Beta Code", Experimental, Preliminary, requires proofreading, or is being evaluated for possible revision, and is NOT warranted to be free of defect. To help "The Author" report any bugs, foul-ups, defects, or mistakes that you find, see "SECTION: 8" for instructions. "This Web Site" (HTML document and associated files) and all other files and programs by Daniel H. Hudgins are made available "AS IS" without warranty of any kind express, expressed, or implied. All offers and specifications are subject to change or discontinuation without notice of any kind. Please look over "SECTION: 8" of "This Web Site" before contacting "The Author."
This documentation section has text mostly about DANCAM.EXE (tm) and DANPLOT.EXE (tm), my CAM programs, and might be looked to for information on some of the CAM program commands. See also the other documentation files, and pages in this Web site, for additional information. The disclaimer and most of the other legal text has been moved to SECTION: 0 , you must read the disclaimer, End User License Agreement (EULA), and other legal text, before you read any of the other documentation or use any part of this HTML document or associated files and programs. Be sure to read all the Warnings in SECTION: 3.2.10.0 , and the other documentation, before running, installing, testing, or using any of my programs, and especially before using DANCAM.EXE (tm) and DANPLOT.EXE (tm).
The text in this section was derived from the CAMPLOT.DOC file that was in the original v2.6 distribution, and has been updated somewhat so that some of the changes made in v2.7 are reflected. It may take me some time to get back to work some more on this section, but you can help proof-read what is here now. Some adjustment may be required for versions prior or subsequent to v2.72 since there are variations between versions and the various revisions of versions.
You may not distribute, sell, rent, share, or give away these HTML documentation files or printed copies of them. You may not extract text from these HTML documentation files for distribution, sale, rent, sharing, or giving away. You can use the [Print] option in your browser to make one copy for yourself to mark up in order to help me proofread the text for mistakes.
Documents may be available to download from time to time, you can check SECTION: 9 to see what the current situation with regard to downloadable files is. The names of these documentation files may change, and they may be edited, combined, or eliminated in the future, without notice.
You may need to adjust your browser for best viewing of the pre- formatted text by changing the "font" size using the commands in your browser (see the help in your browser, or use the pull-down menus in your HTML browser.) If some letters in words on the screen appear to be missing or scrambled try changing the font size in your browser as this sometimes happens even though the words are spelled correctly in the HTML code.
Use the "Edit, Find in page Ctrl+F" or "Edit, Find (in this page)... Ctrl+F" command in your browser to search for keywords within the documentation text in this HTML page. You will need to search over again in the other pages in this HTML document for the same keyword since your browser may not search for a keyword beyond the current page that is loaded.
DANCAM.EXE (tm) and DANPLOT.EXE (tm) are designed to be adaptable to a wide range of uses. The range of features, of the programs, allows several arrangements of motors and relays. The ability to select and configure the programs to work with different Hook-up options lets you select the more effective approach.
Steps for matching the program to the task:
Figure out how many axis will need to be used. It may be possible to use the auxiliary relay outputs to switch the signals from the X, Y, or Z axis to other motors for some special applications. Normally you would use one, two, or three axis with DANCAM.EXE (tm), or up to four axis with DANPLOT.EXE (tm). The fourth axis in DANPLOT.EXE (tm) is operated from the angle of lines in the X and y plane to keep a tool such as a knife or saw pointing forward as the tool moves.
If you are going to use the replicate mode in the CAM programs, DANCAM.EXE (tm) uses an on or off probe that is adjusted by the Z axis, and DANPLOT.EXE (tm) uses an analog input from the Joy-Stick port.
Figure out what the maximum feed rate you will need will be. The cost goes up the faster you need the tool to move, and servo motors would generally be needed for motor shaft speeds greater than 240 RPM.
Figure out what step resolution you will need. The larger the step size is the faster the machine can move generally, but the rougher the finish will be. For working with wood you might use larger step sizes such as 0.01 inch, for working with metal you might need a step size of 0.0001 inch to get a good finish. Going from a step size of 0.01 down to 0.0001 could reduce your maximum feed rate by 100 times, e.g. 120 inches per minute down to 1.2 inches per minute, so you need to think carefully about which is more important, speed or resolution.
From the needs you have figured see if you can find motors and drivers that will operate your machine as needed. Pick a computer that is fast enough to meet your step rate requirements. Older computers such as 80286 to 80486 can be fast enough for stepper motor applications, or for use with servo motors that can be set for rotations of a few degrees, or so, per step pulse. Using micro stepper drivers, or servo motors, might require a PIII computer because of the higher step rates involved. If you do not care about speed, or are using very slow feed rates an old 8088 computer might be satisfactory.
Select DANCAM.EXE (tm) for 3 axis 3D work such as machining contour surfaces. Use DANPLOT.EXE (tm) for other jobs where the Z axis just moves up and down a fixed amount, or when something is used in place of the Z axis motor is to be turned on or off by the Z axis direction signal.
Review the parallel port pin Hook-up information for the CAM programs.
Configure, DANCAM.EXE (tm) or DANPLOT.EXE (tm) to match your Hook-up choice. In the configuration menu select the home switch use, setup the auxiliary relay use, enter the feed rates and other uses for the various line colors, pick the graphics and video display modes, enter the dimensions of your machine and the home point position, set the values that speed up or slow down the motors to match your computers speed, and test your settings on your motors.
Use the automatic feed rate and timing self calibration command to have the program adjust the configuration for your computer. The maximum feed rate possible will be determined by how fast your computer is and the maximum speed your motors tested as satisfactory at.
Most of the differences between DANCAM.EXE (tm) and DANPLOT.EXE (tm) relate to how the Z axis is hooked up, i.e. if a motor, solenoid, hot-wire, pump, relay, buzzer, light, laser, or other device is used for the Z axis. The Z axis direction signal can be used to turn things on or off as well as tell a motor which way to turn.
DANCAM.EXE (tm) and DANPLOT.EXE (tm) both have several features that make setup and operation somewhat adaptable:
Most commands are displayed on the video screen.
In v2.7 many of the CAM program commands can be activated by using the computer's mouse as well as the keyboard.
Configuration can adjust for different size machines.
Works with tool paths drawn in metric, inch, or other units. The Jog and teach position display can be set to read out in metric, inch, or other units.
Motor testing utilities are included in order to check for motor errors at the maximum motor speed under load.
Jog menu lets you position tool manually and has position read out.
Can be paused while making parts from keyboard or switch on parallel port pin. In versions subsequent to v2.6, e.g. in v2.7, the pause switch on the parallel port pin should only be used under certain conditions, the CAM program's keyboard pause command would normally be used for pausing rather than the [Pause] key on your keyboard, [Ctrl] and [NumLock], or pause pin (pin 10) on the parallel port. When the keyboard pause is used, you should have the motors ramp their speed down to being stopped rather than stopping suddenly, particularly, i.e. mandatory, when the overdrive ramping speeds above the stepper motor pull-in speed are used with stepper motors. If stepper motors are running above their pull-in speed and they stop suddenly they will probably lose position and the tool path would need to be restarted with the tool at home position. The CAM program's keyboard pause command is generally indicated at the bottom of the CAM program's screens for commands that move the motors, usually [Ctrl] or [Ctrl] and another key, DO NOT use the key marked [Pause] on your keyboard while stepper motors are making rapid movements by using the overdrive ramping.
Tool position can be adjusted while the tool path is executing. You can enter a special version of the "Jog" command while executing a tool path, so as to adjust the tool position.
Supports up to four auxiliary relays to control anything. If a relay is used for the Z axis you could have five relays. If two of the relay outputs are used for the switch pull-up only two auxiliary relays are available.
Relay default state is user selectable.
Has automatic or manual home up to home switches.
Will return to starting point even if home switches are not used. When the tool position has been adjusted while the tool path executed the tool may return to the starting point offset by the sum of all the adjustments made, which might avoid the need to make the adjustments for the second run, but check this as different versions of the programs may treat this matter slightly differently. If the automatic home-up is active the tool will home up to the switches before starting again negating any previous adjustments.
Limit switches can be used to protect against out of range movement.
Can be operated from DOS command line automatically.
Can be automatically operated from DOS batch files.
Uses user accessible DANCAD3D (tm) ASCII data file type. Some sub-sets of other Industry file types might be converted to ASCII tool path files by using DANCAD3D (tm) or DANCAD87 (tm).
Overall scaling factor to adjust part size.
Adjusts to almost any pitch lead screw, rack, or drive chain.
Different pitch lead screws can be used for each axis.
Good accuracy over long distances of tool travel.
Works with almost any motor driver using step pulse and direction signals. The parallel port puts out TTL type signals, so some additional logic chips might be needed to convert to another logic family, or to get enough current to drive optically isolated inputs on your driver. For drivers that use pulse clockwise and pulse counterclockwise inputs you may be able to adapt the step pulse and direction signals by using some logic chips.
Feed rates can be installed to change the motion from maximum speed rapid movement to very slow. The maximum rapid speed for each axis is limited by the computer speed, motor type, motor voltage, and drive electronics type for that axis. When more than one axis is moving the slowest axis limits the maximum speed. In v2.7 the feed rate can be installed in distance units vs. time units, the units used for the distance and time can be selected from various types. In v2.7 the CAM programs can self calibrate the feed rates to compensate for the motor's characteristics and computer speed used.
Feed rate change, auxiliary relay toggle, dwell, and a special programed pause for machine operator can be controlled automatically from particular line colors in the tool path file. The particular line colors to be used for the various special functions are configured by using the commands in the configuration set up sub- menu.
Installable delay after relay toggle lets equipment settle down.
Dwell can be programed into the tool path file by having a line segment of a defined color.
Pause for machine operator can be programed into the tool path file by having a line segment of a defined color.
Automatic backlash compensation when needed. When drawing tool path files the rough cuts should be away from the final cut by twice the amount of backlash on the worst axis. The final cuts should work up the final outline with small cuts, and the friction of the moving part of the machine that holds the work-piece, or tool, needs to be high enough that the tool does not "drag" the work-piece around while the final cuts are being made.
DANCAM.EXE (tm) is fully three dimensional and can make almost any three axis shape.
DANPLOT.EXE (tm) supports plotting two dimensional type tool path files, and tangential knife motion.
DANCAM.EXE (tm) and DANPLOT.EXE (tm) will run on almost any older junk PC compatible that has enough disk space and memory.
Low cost simple connection to parallel port, LPT1, LPT2, or LPT3.
Joy-stick control and large digital read out in Jog and teach modes.
Option for incremental Encoder hand wheel for Jog movement, and teach mode, entry. The speed the machine's motors move relates to how fast you rotate the hand wheel attached to an incremental encoder, making it easier to "dial in" precise positions by using the large DRO position read out in the Jog and teach modes.
User can toggle between using the encoder hand wheel and the Joy-Stick by using a keyboard command.
Teach mode allows manual tool motion marked out to be automatically repeated.
Compatibility with CPU's from 8088 through faster CPU's such as PIII coppermine 733MHz. CAM programs v2.7 can work on computers faster than 133MHz.
File directory for file prompts, you can view a file directory both on the local computer's disk drives and when using the CAM program's computer network view a file directory on the server's disk drives.
Entered value storage and recall at value entry prompts. In the v2.7 of the CAM programs press the [Ctrl] and [PgUp] or [PgDn] keys to recall values or filenames that have been recently entered.
Password protection for program start.
Multiple configuration files with different names possible.
Built in computer network using serial port. Tool path files can be downloaded from the network file server computer, or executed directly from a tool path file stored on the network file server.
Built in file server for network. Any computer running my CAM programs can be a local, i.e. remote, computer or server computer on the network, and can change roles. The server computer can be an old junk computer, only a standard serial port is required for the network connection.
Print or plot drawings from a file sent to the CAM network server, while doing other things with your local computer.
Network can be started or shut down from DOS batch files. The local computer can shut down the server by remote operation.
Chat, or message with ring tone, to communicate other computers on the CAM network.
Computers on network have assignable ID codes.
Automatic digitizing scanning replicate mode using probe.
Option to slow down the step pulse output on fast computers. This new adjustment added in v2.7 lets you run slow stepper motors from faster computers by using an adjustment called the "p.w.f. increaser" in addition to the regular p.w.f., pulse with factor, for each motor axis.
Feed rates calculated by time and distance, inch per minute and such. The programs have an automatic self calibration that is used after you enter the configuration values so that the program can adjust itself to your computer and have the feed rates correspond fairly well to standard time and distance values. The self calibration command can automatically calibrate your machine configuration so that feed rates selected in the feed rate table for time and distance relate to the various line colors in the tool path file.
Display units adjustable to inch, metric, other, and user units.
Feed rate override adjustable while executing tool path file command. The feed rate override can also override the feed rates while using the Jog and teach mode commands.
Feed rate table can be set-up to select 127 different feed rates relating to 127 different line colors in the tool path file.
Help screens revised. Brief Hook-up information is built into the programs.
CAM program *.OVR overlay file will load into memory above 640K if possible.
CAM program *.OVR overlay file can be relocated to another disk drive if there is not enough room on the disk drive with the program *.EXE file, such as when the computer used with the CAM programs does not have a harddisk.
"Overdrive" ramping lets stepper motors operate in "Rapid" feed above their "pull-in" step rate, in some cases allowing faster point to point movements, if sufficient voltage is available, than had been obtainable with v2.6. The overdrive maximum speed is regulated by the "overdrive p.w.f" for each axis, whose value ranges from a value equal to the regular p.w.f. down to perhaps three quarters or so of the regular p.w.f. value.
Linear feed rate maximum RPM speed improved in v2.7.
Programs can automatically shift between linear and rapid movement modes.
There is an option for a "trace" display of the current tool position to show the values of the tool position while executing tool path. This may help in testing and de-bugging.
Tool path file can be restarted at a particular line segment, skipping over all of the line segments in the tool path file before the selected starting line.
Tool path file can be ended at a particular line segment, skipping over all of the line segments in the tool path file after the selected starting line.
Tool starting position offset can be set before executing the tool path file.
Automatic tool path offset and repeat for making multiple copies.
Canned tool cycle files can be loaded at the current position in teach command menu to add tool motions without jogging the tool manually.
Graphic display of tool path in teach mode.
Line colors are displayed in color in graphic teach mode on EGA or VGA video. In CGA and Hercules (tm) monochrome graphics video modes, the line colors are displayed as light on a dark background.
Graphic background color and palette can be set in EGA or VGA modes.
When run on a PIII coppermine 733MHz computer DANCAM.EXE (tm) v2.72 and DANPLOT.EXE (tm) v2.72 can produce about 106700 step pulses per second which would run servo motors with 200 steps per revolution at a speed of about 32015 RPM, or servo motors with 4000 steps per revolution at a speed of about 1600 RPM. Most stepper motors have a reliable top speed less than 200 RPM. So when stepper motors are used, the reliable operation of the motors limits the top speed obtainable, not the capabilities of the programs. DANCAM.EXE (tm) or DANPLOT.EXE (tm) can usually generate step pulses faster than needed when stepper motors are used and therefore the stepper motors and not the software limit the maximum speed. These speed values are very approximate and will vary from one computer, OS, or program revision to another.
The CAM programs feature a rate multiplier that can be used to increase the step angle for servo motor drives, e.g. up to 3.6 degrees or so, to get speeds of up to 2000 rpm or more at the motor shaft when the CAM programs are run on 80286 or 80386 computers. Since servo motors normally drive the lead screw through a 3:1 to 6:1 reduction the lead screw RPM would be about 666 to 333 RPM. Using servo motors at 2000 RPM and 3:1 reduction before driving a 5 t.p.i. lead screw, you would get about 666 RPM at the lead screw for a maximum feed rate of about 133 inches per minute. With faster a computer you might not need to use the pulse rate multiplier, or you could set the step angle to a smaller amount. When stepper motors are used the pulse rate multiplier would normally be set only to a value of one.
The CAM programs, in v2.7, feature a p.w.f. increaser that allows you to slow down the maximum step pulse rate, so that if you want to operate large stepper motors that have a maximum speed of 30 RPM from a fast 733MHz computer you can get the pulses slow enough. The p.w.f. increaser is normally only set to a value larger than one when the regular p.w.f. (pulse width factor) is set to a value larger than 20000. If you cannot get the motors to turn properly with the p.w.f. increaser set to one, try larger values until the p.w.f. can be set somewhere between 1000 and 20000 for the motors on all three axis, and all the motors operate properly.
DANCAM.EXE (tm) and DANPLOT.EXE (tm) are designed to be adaptable to a range of automated applications. This section will give you some idea how you might use DANCAM.EXE (tm) or DANPLOT.EXE (tm) to do some of your own tasks automatically.
Steps and tests for selecting tasks suitable for automation with the CAM programs:
Examine the Hook-up options and information in this documentation.
Think of how you currently do your work.
Identify those tasks that involve repetitive motion, or take a long time to complete.
Think of how you might use DANCAM.EXE (tm) or DANPLOT.EXE (tm) to do that work.
Remember that any axis can also be used for rotary motion in place of linear motion.
Is automation required to do the task, or to improve the quality of the result?
Can a machine be built to do the work by following a tool path file?
Is enough of this kind of work done that building a machine machine would recover its own cost?
Can I design a machine to do different tasks in order to spread the cost recovery from doing several tasks?
Does the task and machine operation conform to the current on- line Terms of Use and EULA at www.DANCAD3D.com (sm).
DANCAM.EXE (tm) and DANPLOT.EXE (tm) are similar programs, but each one has been optimized for different applications. DANCAM.EXE (tm) is designed for applications that require the tool, or actuator, to move between points at any location in three dimensions. DANPLOT.EXE (tm) is optimized for working on flat material, such as sheet or plate, and will automatically lift the tool or turn off the cutting force, before moving to the next starting point for a series of motions in the tool path or drawing file.
In other words DANCAM.EXE (tm) is used for applications like 3D milling, and DANPLOT.EXE (tm) is used for plotter like work such as engraving and cutting plate.
In a lathe, ordinary cutting could be accomplished by just using two axis in DANCAM.EXE (tm). If you wanted to cut threads in a lathe you could use the third axis in DANCAM.EXE (tm) to rotate the chuck and spindle by using a timing belt and timing pulleys to a servo motor. A servo motor would be best for use in driving a lathe chuck and spindle since you would want to use a reduction in the pulleys of 5:1 or so and still get 360 RPM or so on the chuck, a stepper motor cannot generally be run reliably at such speeds, i.e. about 1800 RPM at the motor shaft. The tool path for cutting threads in a lathe would just be a straight line moving in all three dimensions, so the speed ramping should work to gently accelerate and decelerate the chuck.
Both DANPLOT.EXE (tm) and DANCAM.EXE (tm) can draw quasi "circles" and quasi "curves" of almost any contour. DANCAM.EXE (tm) can manufacture almost any part that can be produced on a three axis machine tool, including 3D contoured surfaces. The production of quasi "circles" and quasi "curves" takes place in DANCAD3D (tm) or DANCAD87 (tm) as part of the preparation of the drawing of the tool path. For complex contoured surfaces the tool path must define points that are more closely spaced than for the tool paths of parts that have flat surfaces or straight lines. The Weave, Betweens, Fit-curve, Fill tri path, and Assemble commands as well as the BMP and Pixel to ASCII conversion utility commands in the CAD programs can be used to help prepare contour surfaces.
The size of DANCAD3D (tm)'s workspace has been made much larger than in previous versions, now up to a maximum of about 50 million line segments, and so can work with complex quasi curves and contoured surfaces, so long as you have enough free space on your harddisk for the workspace to expand. DANCAM.EXE (tm) and DANPLOT.EXE (tm) can read tool path files about as big as you can save on your harddisk with DANCAD3D (tm). When using DANCAD3D (tm) it may be best to partition your harddisk into 2.1GB partitions and use one 2.1GB partition for just DANCAD3D (tm) and another 2.1GB partition just for DANCAD3D (tm)'s work-space file. You select the work-space file drive in DANCAD3D (tm) by using the small menu that comes up over the programs opening screen before you reach the program's main menu. The CAD programs create temporary files while some of the commands are operating, so it is important to save the work- space file on another drive with a different drive letter to get the maximum working free disk space for editing large tool path files.
If you wish to clear the bits on your parallel port when your computer boots you can put DANCAM.EXE (tm) or DANPLOT.EXE (tm) in your DOS AUTOEXEC.BAT such that the program will exit back to DOS after the password is entered.
EXAMPLE: DANPLOT NUL 0
DANCAM NUL 0
Once the password has been entered once, e.g. when you booted your computer and the AUTOEXEC.BAT file under DOS started the programs as was just shown in the above example, you do not need to re-enter the password each time you run the CAM programs if you use the command line parameter SKIP, i.e. for skip password prompt.
EXAMPLE: DANPLOT SKIP
DANCAM SKIP
The password skip will work, after the first time the CAM programs are run since booting the computer, until you reboot your computer if you are running DOS. If you are running Windows 95 (tm) the skip password will only work after you have run the programs in the DOS window you opened once, and will stop working when you close that particular window. So under Windows 95 (tm) putting the CAM programs in your AUTOEXEC.BAT file will probably not work, unless you run the Batch file from inside the DOS window you open after your computer boots. For Windows 95 (tm) you can create a special Batch file, with some other name, such as CAMSTART.BAT, that has all of the needed commands and program names to set up your DOS window for use with my programs, that you can run each time you open a DOS window for use with my programs.
DANCAM.EXE (tm) may be able to be used to move your tool or work-piece along a path that requires synchronized, and simultaneous, motion on three axis. DANCAM.EXE (tm) is capable of making contoured surfaces when the tool path file has been properly prepared.
If more than three axis are required, it may be possible to use the relay outputs to switch the step signals to additional axis driver circuits. The direction signals could probably be wired in parallel since the direction signal changing while the step pulse input of the driver circuits is inactive would usually do no harm. TTL logic chips such as Inverters and AND gates might be used to do the signal switching electronically. Only three of the total number of axis would be able to turn at the same time, but even so you could rotate a part on a rotary table to cut another side of the part an such. All three axis could be switched to three additional motors, or one axis could be switched to one of four motors, the most possible axis through using some external logic chips would probably be switching the step signals to sixteen sets of three motors, or 48 axis, i.e. the four auxiliary relay outputs can be used for binary digits 0000 through 1111, or 0 to 15, to select the set of three motors to direct the three step signals to. I have not built any machines with so many axis yet, but you may wish to experiment with this idea if you have some need for extra motions.
For applications where more than three roughly synchronized axis need to operate simultaneously it may be possible to use more than one computer at the same time. The quartz crystal clock in the computer should be accurate enough to run DANCAM.EXE (tm) under DOS 6.22 on two or more identical computers and have the programs keep rough pace with each other. Since the computers would start to slip out of synchronization after a minute or so the tool paths running on the computers would need to use the automatic pause for operator feature to reestablish an even starting point every so often. One computer would be used as a "Master" and all of the other computers would act as "Slaves." The "Master" computer would have its tool path after a number of movements, say 100, make one of the auxiliary relay outputs pulse high then low, the "Master" computer would be adjusted through its feed rates to arrive at this point in the tool path slightly slower than the "Slave" computers reaching that number of movements. The "Slave" computers would be adjusted to finish their movements prior to each synchronization point in the tool path file just a little ahead, and to go into the pause for operator mode. The "Slave" computers wait for the "Master" computer to restart all of them. The "Slave" computers' keyboards would need to be modified so that an opto isolator, or the equivalent, would be wired across the [R] key on the keyboard so that when the "Master" computer gave the start pulse through it's auxiliary relay output the "Slave" computers would all get the "Resume" command as if someone had pressed the [R] key on all their keyboards at the exact same time. By careful creation of the tool path files, adjustment of the feed rates on each computer, and the inclusion of do nothing line segments to adjust the timing, it might be possible to carry this idea to extremes of running 100 or 1000 computers to operate 300 or 3000 axis at the same time. Modifying your computers keyboards may violate or invalidate the computers' warranty or insurance, and may be illegal in some jurisdictions, check your situation before doing anything.
Main applications for DANCAM.EXE (tm):
Three axis fully Three-Dimensional vertical milling.
Operation of lathes.
Cutting foam and other materials with hot wires.
Drilling holes to varying depths.
Measure 3D shapes using the Jog, DRO, or teach modes.
Create 3D tool path files by teaching for making copies of parts through repeat motion.
Replicate 3D contour surfaces with scanning probe.
Make oil paintings, photos on ceramics, or other crafts from BMP files.
For automating tasks other than machining metal you can try various arrangements with DANCAM.EXE (tm), especially if you are willing to use some possibly unorthodox methods.
Additional possible uses for DANCAM.EXE (tm):
Spray application where the sprayer moves in three dimensions.
Glue application where the applicator moves in three dimensions.
Parts insertion, screw insertion, or stapling and nailing.
Dipping of parts for coating by use of a gripper.
Candle making.
Moving a cube of clear material relative to a large aperture lens to focus a laser at different points in the cube of clear material to incise a 3D image.
Film processing, etching circuit boards, or other process automation.
More than 3 axis work where three or fewer axis turn at once.
Scanning 3D surfaces for display in computer animation or hidden line display.
Scanning where probe height detects threshold signal amplitude.
If you want to construct a robot for processing parts a gripper might be wired to be controlled by one of the auxiliary relay outputs. You would draw the section of the tool path where the gripper will hold the part in a selected color, and the part of the tool path where the gripper is free in another selected color. The timing of the processing operation could be controlled by setting the feed rate and distance moved to come out to the time required for the processing step. By drawing zigzag lines in the tool path, parts being processed in solutions could be agitated. Additional control relays could be used to turn on or off pumps to operate drying air or wash sprayers. The auxiliary control relays might also be used to open or close solenoids on fill and drain valves to change solutions.
In addition to the linear three axis applications noted above DANCAM.EXE (tm) might be used to have one or more axis move in a non-linear manner. For instance the X axis could control a rotating table, so when the drawing for the motion of the X axis is drawn with DANCAD3D (tm) the person drawing the tool path would see the tool path as a "flattened" version of what will be made on a cylinder, just as a map of the earth is a flat version of the surface of a globe. This trick can be useful for engraving on a cylinder or cone. The person drawing the tool path would have to work out the conversion from the X distance to the rotation of the work-piece in degrees, which would be determined in part by the configuration in the CAM program set-up, i.e. steps per inch becoming steps per degree of rotation.
For applications involving beams of light, the stepper motors can rotate mirrors to deflect and scan out the beam, rather than use lead screws to move the laser around at right angles to the work-piece. For faster scanning optical "galvanometers" might be hooked up to a amplifier, Digital to Analog converter, and counter circuit in a servo like circuit, where the step pulses from the computer would make the voltage to the galvanometer step up and down so that the angle of the mirror would follow the position entered into the tool path file. Be sure that any machine using lasers, or other light beams, is completely enclosed in an opaque box so that the light beams cannot escape, and be careful that the light beams do not injure someone's eyes or cause other damage.
For lathes the third axis in DANCAM.EXE (tm) might be used to control the spindle speed by connecting a small stepper motor to the shaft of an SCR speed control for the spindle motor. The stepper motor on the speed control knob would turn less than about 270 degrees and would be motionless much of the time in order to keep the spindle speed constant. Since two axis are used in a lathe to move the tool around, the third axis could be used to change the spindle speed. So to draw a facing cut on a lathe, and have the spindle speed increase when the tool moves toward the spindle center, a line for the tool path, would be draw moving in three axis, e.g. x and y for the tool motion, and z for the change in spindle speed. You might need to draw a quasi curved line in the tool path to get the desired RPM for each radius distance.
If the lathe spindle speed control only has two positions such as fast and slow one of the auxiliary relays could be used in place of the third axis motor to switch the spindle speed.
For thread cutting on a lathe, servo motor can be linked to the spindle in place of the spindle motor by using a timing belt and timing belt pulleys. In DANCAD3D (tm)'s workspace a helix shaped thread on the lathe would be drawn as a straight diagonal line, with the slope of the diagonal line determining the pitch on the thread. So, in the lathe application you could have two linear axis and one rotary axis for the spindle installed on the lathe. Stepper motors are probably too slow for lathe spindle work since you will want 3,600 to 36,000 or more steps per revolution of the lathe chuck in order to make accurate threads. Having the lathe spindle un-synchronized to the tool motion makes drawing the tool path simpler, but does not allow for turning threads by use of coordinated motion between the tool and the spindle.
You should keep in mind that DANCAM.EXE (tm) might be able to be used to mill inside or outside threads by using a helix shaped tool path and the appropriate shape cutter. Milling threads would probably work better for course threads since your milling machine would need to be very accurate to do fine threads. The Fit-curve command in DANCAD3D (tm) will work on 3D points, so you could roughly draw out a cone shaped helix, a helix for progressive pitch threads, or other odd shapes and use Fit-curve to smooth the tool path line. The macro codes in the CAD programs can also be used to make thread tool paths by using some mathematical formula.
If you use a stepper motor to rotate the spindle of a lathe for thread cutting and have a maximum spindle RPM less than that required for a stationary cutter in the tool post, you might still be able to cut accurate threads by using a tool post grinder with an narrow pointed abrasive cutter disk, or if you reduce the tool post grinder's RPM you might be able to use a disk shaped cutter like a gear tooth milling cutter. A small pointed fly cutter, like a rotating boring bar, might be used in place of a disk shaped cutter, in which case you would want the chuck turning quite slowly, which would be fine for using a stepper motor to rotate the chuck in step with the other axis on the lathe.
When DANCAM.EXE (tm) is used for plotter like applications the third axis motor can be used, as described above for the SCR spindle speed control on a lathe, to adjust a valve or other control to regulate the flow of gas or liquid. Other odd uses for the third axis could be control of light intensity, ultra-sound amplitude or frequency for ultrasonic welding and such, heater temperature, or cutting fluid flow rate.
In DANPLOT.EXE (tm) the tool generally has two positions, up for moving when not operating on the work-piece, and down when the work-piece is being operated on. The tool path for DANPLOT.EXE (tm) is somewhat simpler to prepare than the tool path file for DANCAM.EXE (tm) since DANPLOT.EXE (tm) takes care of adding the up and down movements as well as the movements between points to get ready to operate on the next line segment in the tool path file, that is gaps in the stream of line segments in the tool path file for DANPLOT.EXE (tm) are common, the program just lifts the tool and moves to a point above the next point in the tool path and drops the tool. The Plotterize and Link commands in DANCAD3D (tm) can be used to add the up and down motions for a tool path to be used in DANCAM.EXE (tm), but DANPLOT.EXE (tm) has some features such as the fourth C axis, and the manual Z axis mode that make it the preferred program for 2D and related applications.
Three axis applications where DANPLOT.EXE (tm) might be used:
Building a large pen plotter to plot drawings or templates full life size.
Engraving scales and lettering.
Drilling printed circuit boards.
Marking layout drawings onto sheet metal or other material.
Plotting PWB/PCB circuit traces with resist or conductive ink.
Engraving around PWB/PCB circuit trace outlines.
Make oil paintings, photos on ceramics, or other crafts from BMP files.
With DANPLOT.EXE (tm) the third axis, i.e. the Z axis, can be used in several ways: you can control a stepper or serve motor, you can control a relay, or you can control a solenoid. The normal use of the stepper motor for the Z axis would be to raise and lower the tool, such that the tool is not in contact with the work-piece when the tool moves to the next starting point if the line segments in the tool path drawing file being executed to not touch. The Z axis stepper motor might also be used to open or close a valve or to turn the control shaft of a rheostat. A relay on the Z axis direction control signal might be used to turn on an electromagnet, induction heating coil, ion beam, laser, or other electrical device on or off. A solenoid triggered by the Z axis direction pin on the parallel port could be used to: stamp or punch some sheet material, actuate a valve to control gas or liquid flow, close the jaws of a spot welder, or operate a gripper to grasp objects to move.
Four axis applications where DANPLOT.EXE (tm) might be used:
Knife cutting of signs out of sheet vinyl.
Saber saw cutting of plywood.
The C axis is arranged for rotation around the Z axis, such that the cutting edge of the tool is parallel to the Z axis, and on the point of intersection of the X and Y axis. The forth or "C" axis in DANPLOT.EXE (tm) will rotate the cutting edge of a knife or reciprocating saw so that the cutting edge "always" faces into the direction of the forward tool motion, of the tool, as the tool moves through the work-piece. You do not need specially to draw the motion of the "C" axis in your drawing of the tool path, rather DANPLOT.EXE (tm) calculates the angle to rotate the "C" axis to from the direction and angle of the previous and current line segments, so as to have the cutting edge of the tool follow the tool path drawing lines the way your nose would point if you were walking along the tool path.
In DANPLOT.EXE (tm)'s configuration menu you can set the tolerance for how large of a C axis angle change is permitted when one line segment ends and another line segment begins. By letting the tool make small angle changes while staying in the down position you can speed up the cutting of quasi curves and quasi circles. Keeping the tool down for quasi curves may also make a smoother cut. If the angle tolerance is set to 0 the tool will lift and drop between each line segment in most places. Too large of a tolerance may snap the tool off since the tool may not be able to turn that much while in the work-piece. The auxiliary input pin of the parallel port is used for the C axis home switch. In the manual Z mode the C axis angle may be displayed for manual setting of the tool rotation angle.
In DANPLOT.EXE (tm)'s configuration menu you can set a value for the maximum angle change on the C axis between two consecutive line segments. When the maximum angle change is exceeded the Z axis will move to the "up" position, the tool will rotate to the new angle, and the tool will move back down before moving along the next line. This feature is to keep the tool from turning through too large an angle while it is still inside the work- piece.
Normally in knife cutting no harm comes if the knife rotates in the work-piece as circles are cut out. If you want DANPLOT.EXE (tm) to perform a tool removal, tool rotation, and tool insertion when it comes onto large angle changes, such as at a 90 degree corner, you will need to set the C axis tolerance to a value less than the largest angle the tool can turn while down. You should set the C axis angle tolerance for lift to about 15 degrees for most applications, since quasi "curves" may have lines that are at angles that large. If you set the tolerance to too small a value the tool will not stay down while cutting quasi curves, but will keep going up and down for each line segment in the quasi curve.
The use of a knife as the cutting tool connected to the C axis motor is sometimes referred to as plotting with a tangential knife.
It may be possible to use a solenoid in place of the Z axis motor when the C axis is being used, so the three stepper or servo motors would be on the X, Y, and C axis, and the solenoid would be on the Z axis.
Two axis applications where DANPLOT.EXE (tm) might be used:
Building a large scanner for making BMP graphics files.
Building a microscopic scanner for making BMP graphics files.
Building a special purpose scanner that measures something other than brightness values, such as heat, radiation, magnetism, vibration, and such.
Scan a printed circuit board to extract the location of the holes to make a tool path file to drill the same holes in a copy of the board. Scanning in the same machine that will drill the holes might help cancel out position errors.
Scan analog values that would be converted into a contour surface tool path for use with DANCAM.EXE (tm).
In two axis applications, just the X and Y axis motors are used to position the object or scanning probe. When DANPLOT.EXE (tm)'s replicate mode is used to scan an object the file created would be processed in DANCAD3D (tm) or DANCAD87 (tm) in order to make a BMP graphic file or an ASCII file that would be used as part of a drawing or tool path. Scanning may produce better results when DANPLOT.EXE (tm) is run under DOS or the computer is booted from a "DOS 95" floppy disk.
DANCAM.EXE (tm) or DANPLOT.EXE (tm) might be used to automate manufacturing operations where the tool path is infrequently altered. Simple operations such as winding tape on a pipe, winding epoxy coated twine on a composite beam, or winding wire on a coil form might possibly be done with repeatable accuracy when controlled by DANCAM.EXE (tm) or DANPLOT.EXE (tm). In such a wrapping task one stepper motor would rotate the form and the other stepper motor would move the supply spool guide. The tool path for such a simple task would be just a diagonal line, with the slope of the line determining the pitch of the wrap, the line color the speed of the wrapping, and the length of the line determining the number of turns. The auxiliary relay output could then be used to trigger the wire cutter, and another auxiliary relay could operate a mechanism to eject the current work-piece and advance a new one, before the tool path file repeats.
Likewise a cut-off saw or shear could be programed to advance the material, activate the clamp, operate the cutter, release the clamp, and such before the tool path was repeated a certain number of times.
You might build a machine that manufactures a single part, or a single operation on a particular part, like making pool cues, table legs, baseball bats, bobbins, knobs, buttons, tooth-picks, doors, "f" holes, guitar bodies or other musical instruments, and other mass produced shapes.
The programs might also be used to cut materiel to length, mark serial numbers, or de-bur castings. When you think about DANCAM.EXE (tm) and DANPLOT.EXE (tm) you might believe that you can apply them to tasks once done other expensive ways, to now be done using computer controlled automation. Junk parts removed from old equipment can be given a new life as a robot to do some useful task.