MDI (Manual Data Input)

Introduction

The MDI (manual data input) page is available for all mill and lathe operations in the CAM Wizards for Mill Turn jobs. MDI allows you to manually create commands to control the machine axes and devices in three default locations: before the tool change, after the tool change, and after the operation. You are not limited to these locations as you can define custom tasks as needed, but the three default locations are designed to handle most scenarios.

 

Note: It is helpful to understand that when you post a program in BobCAM, the system outputs the following for every operation: 1) a tool change or null tool change and 2) the toolpath motion for the operation.

 

The MDI page of the wizard displays as the last page under any operation. This topic explains how to use the MDI page of the CAM Wizards.

Supported Components

MDI allows you to control the movement and settings for the machine devices that are defined in the machine definition. The device types include workpiece, chuck, tool, tailstock, steady rest, parts catcher, and devices set to the type, other. MDI provides control over the components of these machine devices, such as linear and rotary axes.

MDI Page Overview

The MDI page contains three main groups: Commands, Task List, and Parameters. You use the Commands list to add commands to lines in the Task list. These may be either Predefined commands that are always available or Custom commands that are defined in and automatically loaded from the post processor. After adding a command to the Task List, you use the Parameters group to select the settings that are output by that command. You add as many commands as needed to create each line of code and then repeat this process for all lines of code needed to complete a task.

 

Tasks

A task represents a complete process that contains one or more lines of code. There are three (empty) default tasks in the Task List and you can also define custom tasks as needed for any operation. (View the Tasks section for more information.)

 

Lines

A line represents one line of code to which you can add one or more commands that define the output.

 

Commands

A command represents some action that is performed in the posted code, for example, moving specific machine axes, setting modes, feedrates, and you can even output raw text. You add commands as needed to create each line of code that is output.

 

Warning: You must properly define the commands for each line as supported by your machine controller. The MDI page outputs the commands as you defined them for each line, so do not combine commands on one line that cannot be properly read by the machine controller.

General Process

  1. Select a location in the Tasks List to which you want to add a command.

    This may be Before Tool Change, After Tool Change, After Operation, or under a custom task that you create. The task is used to determine where the code is output in the program.

  2. Create or select a Line to which you want to add a command.

    [You can select a Task and the command is added to last available line, or a new line is automatically created if there isn't one. The default tasks already contain one line, and you can click the (Add Line) button to add another line to the selected task.]

  3. Click to select a command in the Commands group, and click the (Add Command) button.

    The command is added to the location selected in the Tasks List and is automatically selected so that the parameters for the command become available for editing in the Parameters group.

  4. Select the desired output for the command in the Parameters group.

  5. Repeat this process to define all commands that are needed to complete the line of code.

  6. Add another line to the task and add commands to complete the next line of code.

  7. Define as many lines of code as needed for all tasks that you want to create.

 

Tip: You can drag and drop the commands in the Task List to reorder them.

Tasks

In the Task List of the MDI page, there are three default tasks: Before Tool Change, After Tool Change, and After Operation. These tasks determine where the commands for the task are output for the current operation. You can also define custom tasks, but the default tasks should handle most scenarios.

 

Note: It is helpful to understand that when you post a program in BobCAM, the system outputs the following for every operation: 1) a tool change or null tool change and 2) the toolpath motion for the operation.

Before Tool Change

Commands defined under this task are output before the tool change block of the current operation (whether an actual tool change or a null tool change).

 

Post Variable: MDI_BeforeToolchange

After Tool Change

Commands defined under this task are output immediately after the tool change block of the current operation (whether an actual tool change or a null tool change). Note that the initial position of the operation is output during the tool change blocks.

 

Post Variable: MDI_AfterToolchange

After Operation

Commands defined under this task are output after all toolpath motion of the current operation.

 

Post Variable: MDI_AfterOperation

Custom Tasks

Custom tasks can also be created if needed. The name of the tasks must match the name of the MDI variable created in the post processor, and the location of the variable in the post processor determines how the custom task is output.

 

Post Variable: MDI_CustomTaskName

 

Important: Note that you cannot use underscores in the naming of custom tasks, but you can use the hyphen character (-). You can use spaces in the name of a task in the MDI page, but the variable name in the post processor must not have spaces. For example, a custom task named My Custom Task requires the variable name to be MDI_MyCustomTask.

Buttons

There are eight buttons that display in the MDI page that are used to add or delete tasks, lines, or commands and to save and load the complete or partial tasks list.

 

Add Task

Clicking this button adds a custom task to the Tasks List after the currently selected task. You double-click the New Task in the Tasks List to make the name available for editing. Note that custom tasks must be defined in the post processor with a variable using the same name that you type in the MDI page. After adding a task, you can then add lines to the task.

 

Delete Task

Clicking this button removes the currently selected task from the Tasks List. You are prompted to confirm deleting the task as the entire task and all lines and commands in the task are removed from the MDI page.

 

Add Line

Clicking this button adds a new line after the currently selected location in the Task List. The line is added at the end of a task or after the currently selected line. You double-click the New Line in the Tasks List to make the name available for editing. You can then add commands to the line.

 

Delete Line

Clicking this button removes the currently selected line from the Task List. You are prompted to confirm deleting the line as all commands on the line are removed from the MDI page.

 

Add Command

Clicking this button adds the currently selected command from the Commands list to the currently selected line in the Tasks List. If you add a command to a task, it is added to the first available line, or the software automatically creates a line if there isn't one. After adding a command, you select what the command outputs in the Parameters group of the MDI page.

 

Delete Command

Clicking this button removes the currently selected command from the Task List. You are prompted to confirm deleting the command.

 

Save

Clicking this button opens the Save As dialog box for you to select a location and name to save the MDI tasks to a BobCAD-CAM MDI file (.bcmdi). Click Save to save the current MDI tasks. You can then use the Load option to reuse the information from the MDI file.

 

Load

Clicking this button displays the Open dialog box for you to select a previously saved BobCAD-CAM MDI file (.bcmdi) to load into the MDI page. Select the desired MDI file and click Open to display the Load MDI Task dialog box that provides options for full replacement, partial replacement, or merging of tasks from the saved file to the currently defined MDI page.

Post Yes/No

The MDI dialog box allows you to turn off and on the output of Tasks, Lines, and even individual commands in the posted program. All of the items in the Tasks list contain a right-click shortcut menu to determine if the item is output in the code (and simulated).

 

Right-click a Task, Line, or Command to access the following menu command.

 

  • Post Yes/No - toggles the output of the task, line, or command in posting and simulation.

 

When any item is set to not post, the icon displays with a red x to show that it does not output. Click Post Yes/No again to output the selected item in the program.

Parameters

When you select a command in the Task List of the MDI page, its parameters display in the Parameters group for you to define the output for that command. An overview of the Predefined Commands is provided next.

Abs/Inc

Can be set to Absolute or Incremental mode.

Axis

Device Filter

Sets the device from the current machine to determine which axes are available in the Axis box.

 

Axis

Sets the axis which is being moved to the specified Axis Value.

 

Axis Value

Sets the location to which the selected axis moves. (This may be a distance or an angle depending on the selected Axis.)

C Axis Engage

Workpiece Device

Sets the workpiece or part holding device from the current machine to which the selected Milling Mode applies.

 

Milling Mode

Can be set to Engage to activate milling mode or set to Disengage to turn off milling mode.

Chuck Clamp

Workpiece Device

Sets the workpiece or part holding device from the current machine to which the selected Clamping setting applies.

 

Clamping

Can be set to Clamp to close the chuck jaws or Unclamp to open the chuck jaws.

Constant Surface Speed

CSS Mode

Can be set to CSS (constant surface speed) or RPM (revolutions per minute).

Device Enable

Device Type

Sets the type of device from the current machine to determine what devices are available in the Devices list. Select Workpiece Device (part holding) or Tool Device (tool holding devices: turret or milling spindle).

 

Device

Sets the device to which the Command setting applies.

 

Command

Enables or Disables the selected Device.

Dwell

Type a value in the Duration box to set the length of the dwell command in milliseconds.

Feed Mode

Select from the list to set the feed mode to UPM (units per minute), UPR (units per revolution), or Inverse Time.

Feed Rate

Type a value in the Feed Rate box to determine the feed rate command output.

Motion Type

Can be set to Rapid or Feed to determine the motion type command output.

Part Transfer

Type

Can be set to either Pick Off (to transfer the part only) or to Cut Off Pick Off (to transfer the part after a cutoff).

 

Part Pickup Position

Type a value to determine the position of the part transfer command.

Parts Catcher

Device

Displays the available parts catcher devices from the current machine. Select a device to determine the parts catcher to which the Command applies.

 

Command

Can be set to either Advance to move the parts catcher forward, or to Retract to move the parts catcher to its home position.

Post Variable

This command allows you to type post variables to be output by the system (view the posting documentation for more information). Type the post variable name in the Enter Variables box.

Raw Text

The raw text command allows you to output text in the code in one of two ways.

 

Raw Text

When the raw text option is selected, the output is exactly the same as typed in the text box.

 

Comment

When the comment option is selected, the text that you enter is output with each line having a comment start and comment end character defined in the post processor.

Rotary Brake

Device Type

Sets the type of device from the current machine to determine what devices are available in the Devices list. Select Workpiece Device (part holding) or Tool Device (tool holding devices: turret or milling spindle).

 

Device

Sets the device to which the Brake setting applies.

 

Brake

Can be set to On (output brake command), Auto On (automatically output brake command), or Off (turn off brake command).

Send Axis Home

Sends a machine axis to its home position. This command is used with an Axis command. (There are no parameters to set.)

Spindle

Device Type

Sets the type of device from the current machine to determine what devices are available in the Devices list. Select Workpiece Device (part holding) or Tool Device (tool holding devices: turret or milling spindle).

 

Device

Sets the device to which the Direction setting applies.

 

Direction

Can be set to CW (clockwise), CCW (counterclockwise), or Off.

Spindle Orient

Device Type

Sets the type of device from the current machine to determine what devices are available in the Devices list. Select Workpiece Device (part holding) or Tool Device (tool holding devices: turret or milling spindle).

 

Device

Sets the device to which the Angle setting applies.

 

Angle

Type a value in the Angle box to determine the rotation angle for the selected device.

Spindle Speed

Type a value in the Spindle Speed box to determine the spindle speed output.

Spindle Sync

Workpiece Device

Sets the workpiece or part holding device from the current machine to which the selected Syncing setting applies.

 

Syncing

Can be set to Enable or Disable to output the spindle sync command.

Steady Rest

Device

Sets the device to which the steady rest command is applied. This list displays all devices for the current machine that are set to the Steady Rest device type in the machine definition.

 

Command

Can be set to Open or Close to control the selected steady rest device.

Tailstock

Device

Sets the device to which the tailstock command is applied. This list displays all devices for the current machine that are set to the Tailstock device type in the machine definition.

 

Command

Can be set to Advance or Retract to control the selected tailstock device.

Work Offset

Work Offset

Select a work offset number or Machine Coordinates from the list to determine the work offset command output.

Work Zone

Submachine

Sets the submachine (work zone) from the current machine to which the selected Command applies. The list displays all submachines defined in the current machine using the name defined in the submachine definition.

 

Command

Can be set to Enable or Disable the selected work zone.