Teach Pendant Operation Guide
Language: | [[::Teach Pendant Operation Guide|English]] • [[::Teach Pendant Operation Guide/zh-hans|中文(简体)]] |
---|
Language: | [[::Teach Pendant Operation Guide|English]] • [[::Teach Pendant Operation Guide/zh-hans|中文(简体)]] |
---|
Contents
Overview
The softTP is a teach pendant (TP) designed for use with softMC 3 and softMC 7 motion controllers and various types of robots, such as SCARA, PUMA and DELTA. The softTP allows operators to move the robot by means of jog keys, and to create and run complete robot programs written in MC-Basic.
The softTP touch screen interface enables quick and easy application development. The softTP software package also includes a full-featured emulator running on Windows/Linux.
Access Permission Levels
The softTP has four different user levels.
- Viewer
- Operator
- Programmer
- Administrator
Each softTP user must login with a password for a specific permission level.
The following table indicates the functions available to each user level.
Permission Level | ||||
---|---|---|---|---|
Viewer | Operator | Programmer | Admin | |
View main robot data. |
|
|
|
|
Switch between TP screens. |
|
|
|
|
View the status of digital IOs and error history. |
|
|
|
|
Start/stop certain processes (e.g., move?). |
|
|
|
|
Start/stop certain programs. |
|
|
|
|
View data (variables) but not modify. |
|
|
|
|
View programs, but not modify. |
|
|
|
|
Acknowledge errors. |
|
|
|
|
Enable the robot. |
|
|
|
|
Create and edit user programs (UPG/ULB). |
|
|
|
|
Create and edit (teach) program variables. |
|
|
|
|
Create and edit all types of MC Basic program files (PRG/LIB & UPG/ULB). |
|
|
|
|
Change passwords of all user levels. |
|
|
|
|
Access the Terminal screen. |
|
|
|
|
This document presents screens as seen by PROGRAMMER.
softTP Switches
Deadman Switch
The deadman switch is located on the back of the softTP. The switch has three positions: released, partially pressed, and fully pressed.
In Manual mode, motion and jogging commands can be issued from the teach pendant only when the deadman switch is in the intermediate, partially-pressed position.
If the deadman switch is released, or fully pressed, while axes are in motion, the motion stops automatically.
Using Emulator
Set in your browser the following address:
http:<ip address>/tp/emulator
where <ip address> is the IP address of your softMC
for example:
http://10.4.20.148:1207/tp/emulator
When using TP Emulator, the deadman switch status is represented by the on‑off vertical switch on the left side of the screen.
Emergency Stop
Pressing the Emergency switch automatically powers off the motors, stops motion and and disables the axes.
If the robot is equipped with brakes, the brakes are activated.
Mode Selector Switch
The Mode Selector switch on the front of softTP has three positions: Manual, Automatic and External.
If the mode setting is switched from Automatic to Manual while a program is running, program execution stops immediately.
Mode | Description |
---|---|
Manual |
Left position. Manual mode is used for jogging the axes. When in Manual mode, the robot velocity is reduced and the user cannot issue run commands or edit programs. |
Automatic |
Middle position. Automatic mode is used for editing/running programs. When in Automatic mode, the axes cannot be jogged. |
External |
Right position. When in External mode, the softTP does not control the robot. |
When using TP Emulator, the mode switch status is represented by the horizontal switch on the top left of the screen.
Interface Elements
Toolbar
Toolbar | Description | |
---|---|---|
Logout |
Exits the TP Emulator. | |
TP Operation Mode |
Indicates the teach pendant’s current operation control mode, as defined by the mode selector switch. | |
Text box |
Message field for system notifications. | |
Axes in Motion |
Indicates state of the axes: | |
Primary TP |
Indicates that the teach pendant in use is the primary TP, if other TPs are connected. (Not currently implemented) | |
Collapse/Expand |
Hides/shows the menu bar, to provide additional screen space for program lines. | |
Enable | Disable |
Enables and disables all axes, and indicates the state of the axes. |
Menu Bar
The menu bar provides access to the eight softTP screens.
Screen | Function |
---|---|
Jog |
Used to select the type of robot, and jog the robot/axes in the user-defined frame. |
Program |
Used to create, edit, run and debug MC‑Basic programs. |
Data |
Used to create, edit, run and debug MC-Basic programs. |
IO |
Used to monitor and switch system digital inputs and outputs. |
Terminal |
Allows command line entry of MC Basic commands. Accessible to Administrator-users only. |
Diagnostics |
Displays settings and status of configured axes and devices. |
Errors |
Displays the log of faults in the softMC motion controller. |
Settings |
Displays system software components and versions. |
settings |
Allows setting of stystem variables. Accessible to Administrator-users only. |
Jog Keys
When Frame is set to Joint, keys are labeled according to axes: J1, J2, J3, and so on.
When Frame is set to Base, Tool or World, keys are labeled according to Cartesian coordinates: X, X, Z, Yaw, Pitch, Roll.
Domains
Domains serve to separate data from programs, thereby allowing manipulation of program data (variables) without affecting program code.
Every program is associated with a domain. In MC-Basic, domains are implemented by a namespace feature of the MC-Basic language. (Refer to: http://softmc.servotronix.com/wiki/Namespace).
All variables of a given domain are automatically saved to a separate file on the softMC disk after they are created or updated.
The softTP provides three system domains for certain data, which do not have associated program files.
Every project has automatically associated domain of the same name.
TP Domain
TP variables are not assigned to a particular program or project.
They can be used freely as auxiliary variables for debugging and other functions.
Base Domain
Base variables are not assigned to any program and are used to store the base property values used by the selected robot.
It is recommended that variables in this domain use the naming format BASE1, BASE2, and so on.
Tool Domain
Tool variables are not assigned to any program and are used to store the tool property values used by the selected robot.
It is recommended that variables in this domain use the naming format TOOL1, TOOL2, and so on.
Jog Screen
The Jog screen is the main screen for working with the robot.
- It displays the current robot joint and Cartesian coordinates.
- It enables user to teach/set new points, move(s) to a predefined point.
- It provides tool calibration and align functionality.
Frames
softTP supports five jog frames: Joint, Base, Tool, World XYZ,and World ZYZ.
- Joint frame is used for jogging the individual robot axes: J1 … J6.
- Base, Tool and World frames represent Cartesian frames. When one of these frames is selected, jogging is in XYZ coordinates and in the corresponding orientation axes:
- Base and Tool frames allow jogging of X, Y, Z, Yaw, Pitch and Roll.
- Note that the default Euler-Angle representation of Yaw-Pitch-Roll is a ZYZ rotation sequence only.
- World frame has two modes: ZYZ and XYZ.
- ZYZ is the default mode; it has standard orientation angles as Yaw-Pitch-Roll of a ZYZ rotation sequence.
- XYZ is an alternative mode; it has non-standard orientation angles as Rx-Ry-Rz of an XYZ rotation sequence.
- In MC-Basic, Base, Tool and World frames are considered location data types.
A Cartesian robot frame (for PUMA robot) is a 6-dimensional Cartesian coordinate system in which the robot tool tip position and orientation are defined.
For a PUMA robot both Base and Rtool frames are in the form X-Y-Z-Yaw-Pitch-Roll.
The Frame option in the Jog screen allows you to select a different frame for jogging in. You can set different frame parameters (values) in various ways; for example:
- By using Teach option to teach them directly – this is commonly done for Base.
- By using Tool Calibration options – this is commonly done for Tool.
Teaching Points
Positions are taught in the Jog screen, and defined in either Joint or Cartesian coordinates.
Before teaching a point, you must first create a Location or a Joints position in the Data screen. Be sure the position is attached to the appropriate Domain.
In the Jog screen, make sure Domain and Frame are set accordingly.
Use the Teach button to set position coordinates automatically, or enter position values manually.
Setting | Description |
---|---|
Robot |
The specific type of robot or axis for movement or position teaching. |
Frame |
Cartesian (Tool, Base and World): Linear movement along X, Y and Z directions, angular motion around a static XYZ coordinate. |
Tool |
Used for selecting the actual tool:
|
Base |
Used for selecting the actual base:
|
Domain |
Used for selecting the domain:
|
Speed |
Slider to increase/decrease the jogging speed, as a percentage of the maximum speed. |
X Y Z Yaw (Rx) Pitch (Ry) Roll (Rz) |
Displays the Cartesian coordinates of the robot even when operating in Joint mode. |
Teach |
Used to define the values (Joint or Cartesian) to be taught. Enter position values manually, or press Teach. |
Move |
Generates joint interpolated motion to the specified target |
Moves |
Generates Cartesian interpolated motion (straight line) to the specified target. |
Tool Align |
Aligns the Tool X, Y or Z direction with the nearest World axis, while the tool tip remains in position |
Tool Calibrate |
Two methods for calibrating the tool:
|
Program Screen
The Program screen is used for creating, editing, running and debugging MC‑Basic programs.
The file extensions *.UPG user programs and *.ULB for user libraries are used to distinguish user programs from general system programs and settings.
Administrator level users can access and manipulate both global (*.PRG/*.LIB) and user (*.UPG/*.ULB) programs and libraries.
Programmer level users can create/edit/run/debug user programs only (*.UPG) and user libraries only (*.ULB).
Projects created by programmer level users generate four files:
name.UPG |
The main user task. |
---|---|
name.ULB |
The library containing the functions and subroutines used in the main user task. |
name.DEF |
The declarations of all domain variables. (not visible by the user) |
name.VAR |
The currently defined values of the domain variables. (not visible by the user) |
A project is set of files with same names but different extension (e.g. TASK.UPG, TASK.ULB, TASK.DEF and TASK.VAR.) Non-Admin users only see files with the extensions UPG and ULB.
Setting | Description |
---|---|
Project (File) Mode |
PROGRAMMER |
Open Project |
Opens an existing project. |
New Project |
Opens a new project. |
File Mode |
ADMINISTRATOR |
Open File |
Opens an existing file. |
New File |
Open a new file. |
Load |
Loads a program and associated library from the softMC flash memory to the softMC RAM so that the program can be executed. |
Unload |
Unloads a program/library from the softMC RAM so that they can be edited. |
Kill |
Aborts execution of a running program. |
Idle |
Stops the program at the end of the line currently being executed. |
Run |
Starts execution of the program. |
Jump to Line |
Jump to a line in current program. |
Step Over |
Skip over the subroutine. |
Step Into |
Step into the subroutine. |
Step Out |
Exit the subroutine. |
Edit Mode |
Provides the code syntax for commonly used instructions, including prompts for the data required for completing the code line/s. |
Program |
Instructions for defining subroutines and functions.
|
Flow Commands |
Instructions used to change the flow of a program based on specific conditions.
|
Interpolation |
|
Motion Commands |
|
I/O |
|
Project Manager |
PROGRAMMER |
File Manager |
ADMINISTRATOR |
[Project/File list] |
|
Delete |
Deletes selected project. |
Save As |
saves a copy of current project using a new name. |
Rename |
Rename the current project. |
Data Screen
The Data screen is used for creating and editing variables in the domain that is currently selected.
Variables can be robot positions or any other data type that is supported in MC‑Basic, such as long, double and string.
Select the domain, and the type of variable, then click the + button to create a variable.
A dialog box opens according to type of variable.
Enter values.
Setting |
Description |
Locations |
World/Cartesian positions. |
Joints |
|
Longs |
|
Doubles |
|
Strings |
|
Domain |
Tp, Base or Tool. |
I/O Screen
Allows user to monitor the status of system inputs and outputs, and to toggle outputs.
IO names are defined in DAT files (TPIN.DAT and TPOUT.DAT).
This screen is updated in realtime.
Setting | Description |
---|---|
Name |
|
Description |
|
State |
|
Device |
Terminal Screen
The Terminal screen is accessible to Admin users only.
Terminal is a command line interface to the softMC. It allows user to send instructions to the drive, and read the drive’s responses.
Diagnostics Screen
Two views. Devices and Master.
Shows status and properties of the devices and the Motion-bus in the system.
Errors Screen
When errors occur, an icon is displayed in the menu bar, and indicates the total number of errors.
- Clear List – removes all errors from the list
- Clear Drive Fault – removes all errors from the softMC
Different icon colors indicate severity of the error.
- Yellow: Note
- Blue: Info
- Red: Error
Settings Screen
For all non-Admin users, shows version information of software components.
For Admin level users, also allows setting of passwords, the interface language, and certain system parameters.
Setting |
Description |
TP Library Version |
Displays the version of the currently loaded set of TP library files. |
softTP Client Version |
Displays the version of the softTP user interface software. |
Java Version |
Displays the version of the Java software in use. |
Inactivity Timeout |
This is the maximum length of a softTP session without activity, defined in minutes. |
softMC Timeout |
This is the maximum time for the softTP to wait for a response from the softMC, defined in milliseconds. |
Refresh Cycle |
Defines how frequently the softTP retrieves and updates data (e.g., positions of axes), specified in milliseconds. |
System Language |
Language options for the softTP user interface. |
Passwords |
Fields for setting the passwords required for logging in the softTP |