Functional Overview
The TinyCNC-II four axis controller was designed as a multi-purpose lathe and mill accessory for the hobby user. The TinyCNC-II was designed for use with a 200 step per revolution (1.8 degree per step) unipolar stepper motor for use with 0.050, 0.100 and 0.200 inches per axle rotation Imperial mills and lathes and 1mm per axle rotation Metric mills and lathes. The TinyCNC-II unit helps with the monotonous repetitive operations found in using a lathe or milling machine with accuracies of 0.001 inches to a distance of 99.999 inches for any single move for Imperial units and 0.01 mm to a distance of 999.99 mm for any single move for Metric units. The X, Y and Z axis’s are user selectable as one of the three types of Imperial or Metric selections. The fourth Axis (A) is dedicated as a degrees axis with accuracies of 0.01 degrees for up to 999.99 degrees of rotation for any single move. The TinyCNC-II provides the user with several useful control types. These are Simple for ease of use, Advanced for complex moves, Remote for control from an external LinuxCNC type system and Hole modes for creation of hole patterns. These modes are defined as follows.
Simple - The simple mode allows the user to move all axis’s at a single speed and distance. If a distance of zero is entered the axis will move until stopped by the user. This mode is most commonly used to quickly move an axis or perform long single cutting operations.
Advanced - This mode provides the user with the ability to enter up to 100 separate distance, speed and direction commands. This mode provides the user with a means of simple programmable operations to perform more advanced control operations, such as looping, providing signals to other controllers or waiting for signals from another controller. This mode is most commonly used for the more complex repetitive operations or thread cutting operations.
Hole - This mode provides the user with the ability to make patterns of from 3 to 12 holes around a central point. This mode calculates the relative positions of each hole and stores the moves using advanced mode commands for the user to access and execute.
Remote - This mode provides the user with the ability to control the TinyCNC-II using step and direction signals from another control unit or PC running software similar to LinuxCNC and such.
NOTE: The more advanced capabilities of the TinyCNC-II unit provide the user with the ability to “program” very complex X-Y-Z-A movements that can pause, wait for a start signal from an external device, provide signals to external devices and loop to the beginning of the sequence to start over. This capability is obtained by the input of simple numerical commands.
The TinyCNC-II is based on a "Direction, Distance and Speed" philosophy for all user entered commands. The TinyCNC-II does not use the Classic G-Code commands normally used for CNC control. This capability is far outside the scope of this unit. The TinyCNC-II can be connected to LinuxCNC (and similar programs) in the "Remote Mode" of the TinyCNC-II unit. This allows the TinyCNC-II to be used as a stepper controller while LinuxCNC executes the Classic G-Code commands.
The TinyCNC-II unit is intended to act as a shop accessory to ease the repetitive operations in a manual hobby shop by providing a (hopefully) simple means of quickly throwing together movement commands for the non-G-Code savvy user. If G-Code commands are what you are after, then this may not be the unit for you (But it is still very handy)!
The TinyCNC-II unit, if provided with the proper input signal, can provide an RPM calculation accurate to within 5 RPM every 6 seconds. The unit also has the ability to calculate and display the proper RPM setting necessary for the user to cut the desired pitch for thread cutting operations on the TinyCNC-II unit.
The TinyCNC-II unit consists of a keypad to allow the user to enter setup or control commands, a 2x16 LCD for the display of setup and movement information, local and remote “Emergency” stop buttons (which doubles as a command clear button), an input connector to provide 12 to 32 volts to power the unit in a configuration that has the "R54" power resistor jumped out and 32 to 60 volts with the "R54" power resistor installed. Four RS-232 DB-9 type connectors allow the user to terminate the stepper motor connections for each axis. A fifth DB-9 connector is provided to allow the user to connect step and direction signals to control the TinyCNC-II with popular CNC software packages such as LinuxCNC and such or provide digital outputs to other devices when in the "Advanced" mode. All configuration settings and "Advanced" mode user movement commands are stored in non-volatile memory so as not to be lost between power cycles.