TM Flow Software Manual Installation Manual en
TM Flow Software Manual Installation Manual en
TM Flow Software Manual Installation Manual en
TMflow
Original Instruction
I626-E-01
This Manual contains information of the Techman Robot product series (hereinafter referred to as the TM
Robot). The information contained herein is the property of Omron Corporation (hereinafter referred to as
the Corporation) and Techman Robot Inc. No part of this publication may be reproduced or copied in any
way, shape or form without prior authorization from the Corporation. No information contained herein shall
be considered an offer or commitment. It may be subject to change without notice. This Manual will be
reviewed periodically. The Corporation will not be liable for any error or omission.
logo is registered trademark of TECHMAN ROBOT INC. and the company reserves the ownership of
this manual and its copy and its copyrights.
This manual applies to TMflow Version 1.68. Please confirm your software version before using and reading this
manual. To check the software version, click on the interface on TMflow.
DANGER:
This product can cause serious injury or death, or damage to itself and other
equipment, if the following safety precautions are not observed:
All personnel who install, operate, teach, program, or maintain the system must read the “Hardware
installation Manual”, “Software Manual”, and “Safety Manual” according to the software and
hardware version of this product, and complete a training course for their responsibilities in regard
to the robot.
All personnel who design the robot system must read the “Hardware installation Manual”, “Software
Manual”, and “Safety Manual” according to the software and hardware version of this product, and
must comply with all local and national safety regulations for the location in which the robot is
installed.
Observing the “Intend of Use” section in “Safety Manual”.
If the installation and application does not observe human-robot collaboration regulations of the
safety regulations, the user is responsible for providing safety barriers around the robot to prevent
anyone from accidentally coming into contact with the robot when it is in motion.
Power to the robot and its power supply must be locked out and tagged out before any maintenance
is performed.
IMPORTANT:
This mark symbol represents the relevant functional details reminder, to assist
the programming and application
NOTE:
This mark symbol represents the relevant functional use tips, to assist the
improvement of programming efficiency
WARNING:
The following chapters of this manual will describe how to install the TM Robot after
unpacking the box. If it is your first time to install TM Robot without learning all the installation
process starting from unpacking the new product, especially when the robot has been
installed in a working environment, pay attention to the following items in order to perform first
time installation and start up operation according to this manual:
1. In order to avoid the risks of resuming work caused by the changes of the original
working environment and configuration, confirm with the responsible person for the
working environment and keep all necessary configuration records, such as software
settings and all hardware wirings.
2. Remove all IOs for the external connection of the Control BoxControl Box, including
analog IO, digital IO, EtherCAT connection port and network ports. Remove all air lines
or external power lines connecting to the optional equipment before Commissioning.
3. Remove all Control Box external USB interface, serial port, and external connection /
external storage device connections of the network interface.
4. Uninstall any added objects / end-effectors installed to the end flange and any electrical
connections between the end effector and the End Module / Control BoxControl Box.
5. Uninstall any hardware that is installed outside the robot body.
2.2 Start Up
2.2.1 Plug in the Power
Plug the Power Cable of Control Box into the power socket.
WARNING:
For the operations from the product unpacking to plug the Power Cable of the Control Box into
the power socket, read and follow the corresponding contents of the "Hardware Installation
Manual".
For the buttons, lights and switch on the Robot Stick, please refer to the Hardware Installatio
Manual.
CAUTION:
While booting up, if the Emergency Switch on the Robot Stick is kept pressed or the Emergency
Stop Port is kept open, the boot process cannot be finished. Follow the instruction shown on the
screen to restart the robot.
CAUTION:
If the Safeguard Port A: Safeguard Pause Port is kept open while booting up, the boot
process cannot be accomplished. Follow the instruction shown on the screen to restart the
robot.
Step 5. The Indication Light Ring of the End Module flashes red during startup.
Step 7. Then, the user can hold the FREE Button at the end module to release the brakes and
draft the robot to a relatively safe position. When starting the robot from the initial posture after
unpacking, follow the illustration below to push each joint in sequence.
The recommended operating sequence of pushing the joints of TM Robot from Packing Pose to safe posture
DANGER:
There should be no force compensation in Safe Start Up Mode. This means that it requires
more force to move each joints directly against the motor drive.
CAUTION:
If you do not follow the above instructions to drag the robot to the safe posture shown in the
above graph, continue to operate downwards to release the Emergency Switch, this may
cause certain joints of the robot (especially the fifth joint) to be outside the joint angle limit
when the robot returns to a normal state. At this time, the robot will not be able to return
correctly and the red light will be on. In this condition, press the Emergency Switch again and
repeat this step to the correct safe posture as shown in the graph.
CAUTION:
When the start up completed from the Packing Pose, use the TMflow controller page to move the
robot posture to the origin first (each joint angle: 0, 0, 0, 0, 0, 0), then you can use the FreeBot
teaching to drag the robot to the Normal Pose (each joint angle: 0, 0, 90, 0, 90, 0), as shown in
the image below. PPay attention to the Normal Pose and the safe posture after unpacking the
box; the pointing direction of the second joint module of both postures are opposite.
Step 3. Press the power button of the Robot Stick to start the robot.
CAUTION:
While booting up, if the Emergency Switch on the Robot Stick is kept pressed or the Emergency
Stop Port is kept open, the boot process cannot be finished. Follow the instruction shown on the
screen to restart the robot.
CAUTION:
If the Safeguard Port A: Safeguard Pause Port is kept open while booting up, the boot
process cannot be accomplished. Follow the instruction shown on the screen to restart the
robot.
Step 4. Confirm the screen on the Control Box. The display shows the system enters the start up
mode and the power light on the Robot Stick keeps flashing.
Step 5. When the controller is starting up, the Indication Light Ring of the End Module displays
flashing red light. During the process, the robot will run automatic calibration, and each joint of the
robot will move slightly to calibrate.
Step 6. After the controller start up completed, the Indication Light Ring of the End Module will
constantly display blue light; the robot can be used normally at this time.
Step 2. Click the icon in the upper left of the Human-Machine Operation Interface, call out the
function menu, and click to Login. ("Administrator" default is not set with password, click OK
to login directly.)
Step 2. Connect the robot to the same physical AP or entity AP of the same network
segment.
Physical AP
Step 3. Connect the client network to the above local area network.
Physical AP
Step 4. Open TMflow on the client device, click the upper left corner to refresh the robot
list, and wait for the corresponding Robot name to appear on the connection screen.
Step 5. Click the robot icon twice to connect with the robot. Pay attention that all the robots in
this network segment will appear in the screen. The user can distinguish which robot to be
connected by the robot's Robot ID (the number displayed below the QR code on the Robot
Stick).
Step 7. Click the icon in the upper left corner of the TMflow, call out the function menu and
click to Login.
Step 8. "Administrator" default is not set with password, click OK to login directly.
CAUTION:
Do not mistakenly insert the network cable into the EtherCAT dedicated port of the Control Box.
This action will trigger a robot error.
Step 2. Connect the robot and client device to the same physical AP or the physical AP on the
same network segment, or connect the two ends of the network wires to the robot Control
Box and Client.
Step 3. Connect the client network to the above local area network.
Step 4. Open TMflow on the client device, click the upper left corner to refresh the robot
list, and wait for the corresponding Robot ID to appear on the connection screen.
Step 5. Click the robot icon twice to connect with the robot. Pay attention that all robots in this
network segment would appear in the screen. The user can distinguish which robot to be
connected by the robot's Robot ID.
Step 6. When the robot connection is successful, the icon will appear on the robot in the
screen and the icon of robot appears on the upper right corner.
Step 7. Click the icon in the upper left corner of the Human-Machine Operation Interface, call
out the function menu and click to Login.
Step 8. "Administrator" default is not set with password, click OK to login directly.
Physical AP
CAUTION:
For different TM Robot models the maximum angle limits of each joint may be different.
Refer to the product specifications according to the product model and hardware
version.
Manual Reset (recommended): When you choose Manual Reset, after the robot has been
paused through Safeguard Port A: Safeguard Pause Port, even if the trigger condition is removed,
the user can only operate the Play/Pause Button or the same action from the Robot Stick to
release the pause and return to the original project process and project speed.
Auto Reset: When you choose Auto Reset, after the robot has been paused through the
Safeguard, once the trigger condition is removed, the robot will automatically release the pause
and return to the original project process and project speed.
DANGER:
Pay attention so that the functions described in this section are only to assist the user in
setting the collaborative safety parameters and settings more conveniently. The user should
still perform complete risk assessment according to the robot use environment and conditions
before the robot can be used. TM Robot clearly specifies the following potential residual risks:
There is a risk that causes the robot to hit human body at full speed due to improper use of
safe space settings or by running incorrect projects.
The parameter setting of Collaborative Mode can be divided into two parts: one is “Body Region
Risk Setting” and the other is “Limit Value Setting”. The “Body Region Risk Setting” page is
shown in the figure below.
DANGER:
This function is designed to auto adjust the speed of robot in Collaborative Mode following the
biomechanical limits of each body region listed in ISO/TS 15066. The user should consider
more and take responsibility for human body regions not listed in the graph by themselves.
Also, make sure the robot does not have any chance to contact with any dangerous body
region like spine and hindbrain.
In the setting page of this Collaborative Mode, the user can set the joint speed, joint torque of
robot, but it should be noted that the setting value of this region must be smaller than the setting
value of the standard mode; the setting value can be saved after confirmed by the user.
When your device is connected to the TM robot for the first time, follow the wizard steps to complete the
following settings:
In the Manual Mode, press the FREE button to hand guiding the robot. The hand guidingfunction is only
limited to the Manual Mode.
DANGER:
Only when you have read all instruction first and have a full understand about the content of this
manual and correctly set the TM Robot according to the contents of Chapters 2 and 3, the
operation of this chapter can be performed.
Step 1. Please confirm the Operation Mode of the robot. If it is not in Manual Mode, refer to "M/A Mode
and FreeBot" section to switch to Manual Mode.
Step 2. Select "Project" below the "Function Menu" and start entering the Project Editing Page.
Step 3. Choose to create a new project and enter the project name.
CAUTION:
The project name rule only supports case-sensitive letters (A-Z, a-z), numbers (0-9), and the
characters “&” and “_”.
Step 5. Press the FREE button to move the robot to any point by hand guiding, press the POINT button,
to let the project flow recording the point. You can see that the robot automatically names this point as
P1 and has been automatically added after the Start Node and auto highlighted.
Step 7. Drag the Goto Node on the left side to the flowchart.
Step 10. Press the Play/Pause Button on the Robot Stick in the Project Eediting Page to start running
the project, at this time, the Indication Light Ring will flash green. Each time when you start running
project from Manual Mode, the Robot Stick looks as follows
Step 11. Trial Run, the project speed of the project will be forced to change to 10% to ensure safety.
Step 12. Press the button (increase running speed) / button (decrease running speed) on the
Robot Stick, to increase or decrease the Project Speed of the robot, adjust the speed of the robot here
to the speed that you think is appropriate.(You can find out the set Project Speed from the % number
displayed on the upper right corner of the HMI)
CAUTION:
You can not change Project Speed when running Auto Mode.
Step 14. When the Stop Button on the Robot Stick is pressed, its Project Speed is maintained at one
you set. And the project will be labeled as "Tested".
Step 15. If the Play/Pause Button is pressed again in Auto Mode, the speed remains running at the
Project Speed you set and the speed cannot be changed.
Step 16. Congratulations on your successful completion of project editing and running. Press the Stop
Button on the Robot Stick to stop running of the project.
4.7 Shutdown
There are two shutdown methods:
Method 1:
Press "Shutdown" at the bottom left of the “Function Menu”. A warning window "Do you want to shut
down remote robot?" pops up. Press "OK" to shut down properly.
Method 2:
Press and hold the Power Button of the Robot Stick, when you hear a "beep beep" sound, the Power
Button can be released. The Power Indicator of the Robot Stick is flashing red and the robot performs
shutdown.
DANGER:
The below Shutdown methods are prohibited:
1. Unplug the power plug directly
2. Loosen the power cord of Control Box directly
3. Loosen the power of robot body directly
5.2 Login/Logout
After waiting for the start up completed, click on the top left corner to expand the Function Menu.
The listed icons from top to bottom are:
“Login/Logout” – Login/Logout to start using the robotic arm,
“Connect” - available robot list, “View” - display page when project is running,
“Run Setting” - project list and default project to run,
“Project” - create or edit project,
Setting - robot setting,
System - system setting,
Shutdown - shut down robotic arm, as shown in the graph below.
Function Menu
The login window will pop up when clicking Login. Please enter your account number and password to
start using the robotic arm.
CAUTION:
Default account is “administrator”, default password is blank.
Please refer to Chapter 2 for the detail operation method from start up to complete login: Start up and
Activation
Please click the upper left corner to refresh the robot list, the robot can be connected will be
displayed in the robot list.
After the connection is completed, the symbol in the lower right corner of the robot can be
seen. Login can be started after the connection is completed.
After login is completed, click the “Get Control” below the robot to get control. If to release the
control, click “Release Control” again to release control. Please refer to Chapter2 for detail
operation method: “Start up and Activation”
“View” Page
IMPORTANT:
The robot can provide remote and local multi-logins, but only one person can get
Control at a time.
5.4.3 “IO”Page
The IO page provides IO status monitoring and operation tools for the user, capable of monitoring
the status of digital/analog input, and operate the digital and analog outputs in this page. When
the project is running, the IO is controlled by the project and cannot be changed manually.
“IO” page
“Simulator” Page
“Status” page
Click to create new project, the project name can only use English, number and
underline (underline symbol is: _).
IMPORTANT:
When save the file, if there is a file with the same filename, it will be
overwritten, save the file with care to avoid file loss.
Click to save project, project name can only supports case-sensitive letters (A~Z) &
numbers (0~9) &_ (underline symbol is: _).
If the previous project is not closed properly, a prompt window will appear when the project is
opened. If you select "Yes", the last saved file version will be opened and all subsequent
modifications will be discarded. If you select "No", the file will open with the last state before
closing, and for the user to perform the file saving operation.
Click to open existed projects. Click the mark on the right of filename in the project
list to delete the project.
IMPORTANT:
Please note that deleted projects cannot be restored.
IMPORTANT:
When using “Step Run” through the Subflow node, click Next to enter
Subflow page, or click another node to skip the Subflow steps.
Although the variable system will not operate, the Vision Node will run,
the Vision Node parameter value and output value can be refreshed
through Step Run Vision Node to facilitate subsequent programming and
fine tuning. At the same time, since the variable system will not work, the
Pallet Node will only run the first point.
Controller: Enable the Controller to operate robot, refer to 5.6.1.7 Controller for the operation method
of Controller.
Overwrite new pose to this point: Write the current robot position and posture at this point and
overwrite the original value.
Re-record on Another Base: re-record this point on another Base, change the reference coordinate.
Save as: Save as other point with new name.
Delete This Point: Deleting this point
IMPORTANT:
The point system and the nodes are mutually independent. The
changes made in the Point Manager will be applied to all the nodes
that use this point. Before the change, check all the nodes sharing this
point again to avoid the occurrence of unintended motion.
Base Manager
Controller
The controller provides users with direct control to the robot, divided into: motion control, IO
control and FreeBot settings. Motion control includes three tabs: "Joint", "Base", "Tool", which
correspond respectively to “move according to the joint angle setting”, “move according to the
reference base”, and “move according to the tool base”.
Motion Control: After the motion control tab is opened, there are two kinds of motion control
methods, single-joint/single-axis movement or moving to a specific target, and the single
joint/single-axis movement is used as follows: Click the joint/axis to be moved first, then press
or on the left bottom corner, or press the + or - button on the Robot Stick to move the
joint/axis in a positive or negative direction. The method of moving to a specific target is: Fill
the target to be moved in the textbox on the right, then press and hold the "Move" button
below to move the robot to the target position.
IMPORTANT:
Base tag is utilized to move to a specified target with respect to the specified
Base, and Tool tag is utilized to move to a specified direction with respect to Tool
Base.
IO Control: Click "IO" tab to open the IO control page. In the IO control, the output value of
each IO can be controlled independently, including Control Box IO, End Module IO, and
external expansion IO. The detailed IO specifications and applications can refer to chapter
12.3 “IO”
IMPORTANT:
The FreeBot setting is still valid after the controller page is closed.
Therefore, if you find that the robot cannot be pulled at a certain degree
of freedom, check whether your FreeBot setting is correct.
IMPORTANT:
Please use " " to enclose the string when inputting the string value to
avoid being treated as a variable.
5.6.1.9 EditBlock
By extending the EditBlock menu, multiple nodes can be selected, either selection with frame
or individual click. The user can then drag and drop all the selections, or click copy and paste
icon to copy and paste all nodes, or perform Base Shift for all nodes. All EditBlock related
behaviors, including copy-and-paste function can only be performed under the same project.
EditBlock Tool
IMPORTANT:
Whenthe user clicks on the Base list and adds a new point, the point
will be recorded on the Current Base.
Base List
IMPORTANT:
When the user clicks the TCP list and adds a new point, the point will
be recorded with the current TCP.
Tool List
Display Management
Project Edit
In the lower right corner of the project editing window, there are , and display percentage
used to adjust the display percentage to facilitate reading. In addition, there is an automatic
connection mode switch button, click to enable automatic connection mode, and click any
two nodes in the automatic connection mode, to connect these two nodes according to the order
of clicking. If you want to exit the automatic connection mode upon completed programming, click
NOTE:
If you use a touch screen for project editing, automatic connection mode will
greatly simplify your connection process, dragging between each endpoint is no
longer needed, simply enable the automatic connection mode and click on the
nodes desired to be connected to connect.
filter out the desired targets. If you want to jump to a specific search result, click in front of
Searching Pane
5.6.3.3 ModbusDev
ModbusDev Tool can be used to set the Modbus Master/Client in the project. Refer to 12.1
“Modbus” for instruction.
5.7.3 TCP
In the TCP setting, the user can create a TCP through FreeBot teaching and Manual-inputting
parameters. Please refer to 8.2 TCP Setting for the method of use.
5.7.4 IO Setting
In the IO Setting, the default value of the output signal at the time of starting up, and the meaning
represented by the self-defined IO can be set.
Using self-defined IO, the user can trigger or read the button on the Robot Stick with external
device through the IO port on the Control Box, after the setting is complete, click the "Save"
button in the lower right corner to save the setting.
5.7.6 Controller
Please refer to 5.6.1.7 “Controller” for the use of controller
5.7.7 Speech
In the Speech Setting, the user can set the speech parameters, including the buzzer, speech
function and error message broadcasting or not, broadcast language, speed and volume. To use
the speech function, connect the speaker to the Control Box.
Speech Setting
CAUTION:
If using "Speak and Move", the speech will be saved into a buffer and deleted only if the system
finishes speaking it. That means, if the Voice is used in a Thread with a quick loop, the buffer size
will increase quickly, that the robot might keep speaking without an end.
5.7.11 Command
In the Command Settings, the user can select and enable the Command from the component list.
Please refer to 12.4 “Command ” for the use of Command, there are two system default
Commands: File and TmComm.
5.7.12 Modbus
In the Modbus Setting, the user can set the Modbus slave related settings. The system provides a
total of two Modbus communication methods: Modbus TCP and Modbus RTU. Click
on the top to open/close the mode .Click the "Code Table" button in the lower left corner to open
the Modbus slave encoding definition file..
Posture Setting
5.7.14 Global Variables
The use of Global Variables is similar to the variable system in the project, but the variables in this
system can be used in all projects. Please refer to 10.2.1.1 “Global Variables” for the method of
use for Global Variables.
IMPORTANT:
The System Setting will modify the related settings of the software
system. If you are using a remote version, this System Setting will not
change the setting in robot’s Control Box side system, and it is the
System Setting of the Client side system.
5.8.1 Language
Please select the system language to be displayed.
System Update
permission when creating the User Account. After completed creating the User Account, click
to modify information, or click to delete item.
User Account
Connection List
Network Setting
Login Page
Backup\Restore page
IMPORTANT:
The number of backup files is limited to three.
To describe a point, in addition to X, Y, Z coordinate positions, it is also necessary to define its direction
in the space Rx, Ry, Rz to describe the posture of the point in the space.
The Base is a system that defines the corresponding position and posture of the robot in
three-dimensional space. In the TM robot, the Base is divided into four categories: Robot Base, Custom
Base, Tool Base, and Vision Base.
This Chapter will introduce the basic direction judgment method for the Base first, and define the
physical meaning of the Robot Base, so that the user can understand the Base of robot, and use the
controller system to move the robot in the specified Base. Finally, how to convert between different
Bases will be introduced, which is for the user to complete the work flow without reprogramming the
project in the situation of absolute position changes while relative positions do not change.
Software Manual TMflow Software version: 1.68 67
6.2 Base and Right-hand Rule
6.2.1 Right-hand Rule
The Right-hand Rule is a method of determining the direction of the three-dimensional Base. In
the system of Base of robot, the right-hand coordinate system can be used to determine the
positive direction of the Z-axis, as shown in the illustration, the thumb, index finger, and middle
finger represent the right hand coordinate X-axis, Y-axis, and Z-axis respectively, and three
fingers are perpendicular to each other. In addition, the Right-hand Rule also determines the
positive rotation direction of the coordinate axis in the three-dimensional space, bending finger.
The direction pointed by the finger is the positive rotation direction of the coordinate axis.
Right-hand Base
6.2.2 Types of Base
The Bases defined in the robot are divided into Robot Base, Custom Base, Vision Base and Tool
Base according to the purpose. The user can complete the point planning and application in the
space using intuitive methods, according to these different base applications.
Robot Base
The robot's vision can be simply built with the Base in parallel to the operation plane, allowing
the user to complete assembly, processing, and other related applications on an inclined
plane, and can also use the Vision Base to position the robot in the space.
Tool Base
If the user needs to apply different tools on the same project, or perform the same operation on different
operation planes, different information can be reassigned to the created point. This section explains the
advanced settings in the Point node as an example, this setting can be divided into two categories of
Base Shift and Tool Shift to modify the Base of point and the tool applied.
Record point P1 on Base 1. At this time, use the Base Shift to record the point to the new base
Base 2. This operation will not modify the data of original point, only valid for this set node, and
the modified node Base will be presented with pink box.
IMPORTANT:
This function is different from re-record on another base in the Point
Manager. The function of re-record on another base is to present the
position and posture of the point with respect to another Base.
Therefore, the absolute position of the original point is not changed.
Keep Pose: If the tool selected when the robot records the path is incorrect, the Keep Pose
function of Tool Shift can be used to substitute the correct tool parameters of this node. This
setting will not cause changes to the robot's posture and position, that is, it overlaps with the
original track when running the project.
Base Manager
There are three buttons in the center of the three-point Base, from left to right, they are Set the Base
Origin, Set any Point on X-axis of the Base, and set the Base on any Point on the Positive X - Positive Y
Plane. Refer to 6.2 Base and Right-hand Rule to use the Base correctly.
The user can use the controller button below to enable the controller to operate the robotic arm, or use
the FreeBot mode to pull the robotic arm to the target position (“Pointing 0,0,0”, “Point on X-axis”, “Point
on Surface”). Press the corresponding button at this time will record the robot's current position at this
point. After the setting is completed, the in front of the button will disappear. After all three points are
set, press "OK" to create the Base.
There are 3 buttons representing the 3 points which define a base, i.e. Origin (0,0,0), Point on X-axis, and Point on
Surface, refer to 6.2.1 Right-hand Rule.
The user can use the controller button below to enable the controller to operate the robot, or use the FreeBot mode to
pull the robot to the target position (Pointing 0,0,0, Point on X-axis, and Point on Surface). Press the corresponding
button at this time will record the robot's current position at this point. After the setting is completed, the in front of
the button will disappear; after all three points are set, press "OK" to create the base. This point is TCP point.
Click to create a new Base with two existed Bases, will open a new page. The user can select two
created Vision Bases. The distance between two Bases will be calculated automatically
according to selected Base parameters. During the project running, after the distance between
two Bases is updated, if the calculated distance falls within the tolerance range set by the user, a
new Base will be created by calling the function. If error occurs and it goes out of range, the
program will run through the Fail path for this node, that is, the Base cannot be created.
TCP Definition
2. The position of the TCP is clearly marked on the tool. In this example, the tool is a
Calibration Pin Set, and the TCP is located at the tip of the needle.
Teaching Screen
4. Then align the end of tool to the calibration point by teaching, and follow by clicking the
record on the screen.
IMPORTANT:
In addition to the user's human errors and the number of calibrations, the
error of establishing a TCP by teaching is also related to the selected
teaching posture. The selection principle of posture is that the more the
changes of each joint the better. Between each teaching point, it is
necessary to ensure that 1 to 6 joints are rotated to achieve the best
calibration result.
NOTE:
When using the Calibration Pin Set to teach TCP, the controller can be
used to fine-tune the moving robot. Between each teaching point, it is still
necessary to ensure that 1 to 6 joints are rotated.
Tool Base
PTP
Line
WayPoint
PTP (Point to Point): The robot moves to the target point along the closest path of the joint angle space
Line: The tool moves in a straight line at the specified speed
WayPoint: The tool performs two-stage path movement at the set Z-axis height, and it is often used for
the applications of pick and place objects.
Software Manual TMflow Software version: 1.68 85
9.2 Point to Point (PTP)
9.2.1 PTP is the Fastest Way to Move
The PTP mode determines the robot’s motion by calculating the angular variation of each axis,
and is not limited by the singular point. If the robot’s motion is not limited, it is recommended to
select PTP movement.
IMPORTANT:
Singular Point can be briefly described as 1. Decrease in the degree
of freedom of the robotic arm, resulting in the inability to achieve
certain motion. 2. The angular velocity of specific joint approaches
infinity, resulting in loss of control of the robotic arm. 3. Exceeding the
limit position of the internal operable range (robot working space) or
calculation error of the mathematical model. Please refer to "Safety
Manual" for details.
PTP Motion
9.3 Line
9.3.1 Line Moves the Shortest Distance
A straight line is the shortest distance between two points. The Line mode specifies that the path
between the two points is planned as a straight line.
IMPORTANT:
ABS (Absolute) speed setting, including Point, Path, Move, and nodes can be
used when the speed is linked with Project Speed. When not clicked, the arm
motion maintains the ABS set speed. The warning window will pop up when the
speed setting exceeds 250mm/s, and check automatically, display "Speed
exceeds 250mm/s, needs to be linked with Project Speed ".
Blending in space
P2
Blend = Yes
A
Velocity
B
P1 Time
final
+ = velocity
P2 Time
Line, PTP, Circle motion modes can click to set the track radius.
IMPORTANT:
As shown in the table below, blending can improve the smooth
running of robot, but when the Blending radius has been set by Line
motion, blending with Circle and PTP cannot be used.
Line PLine
P2 P2
Blend = Radius Blend = Yes
R
P2 C
R
B End Blending
PLine O
% O O O O
Line
Radius O O
PTP O O O
Circle O O O
IMPORTANT:
If you have not selected Precision Positioning, the robot arm will not stop at
the Precision Point but instead directly move on to running the next
command. If you select Precision Positioning, the robot arm will wait until
motion along all axes has stabilized at the Precision Point before moving on
to running the next command.
IMPORTANT:
In a single project, the number limit of F-Points is 20.
Joint angles can be set to determine the relative movement of the robot
Relative movement of distance and angle can be set
The set relative movement distance can be replaced by a variable
The Circle node plans arc path with 3-point setting circle
PLine
P2
Blend = Yes
R
C
B End Blending
Path File: Select Path to run from the Imported Path File
Speed: Set the speed percentage when path is running, and valid to the 1st point at the
same time.
First Point Motion Setting: In the initial point setting, the PLine mode can be selected
only when the 1st point of path is PLine, and the speed setting is only ABS.
Path Property: Path Property displays the Tool and Base of the Path
Path Task: IO Setting of Point on Path
3 points establish Pallet: 1st Point is the start point of the 1st row, and determines the robot
posture, 2nd Point is the end point of the 1st row, 3rd Point is the end point of the last row.
Number of Rows and Columns: Define the number rows and columns.
Pallet Pattern: Parallel or zig-zag
NOTE:
Users can use the function of “Correlate to variable” to correlate the row and
column with varuables. After variables were assigned to the row and column, the
variables can be used to manipulate or display which slot in the Pallet to be
implemented.
IMPORTANT:
Pallet needs to work with Loop in order to move to the next position of Pallet.
Send Message:
When entering this node, it will initiate a message
Print Log:
Enable Communication Log (shown on the right)
Connection Timeout:
When entering this node, if more than the time
(milliseconds) is not connected, it will be overtime.
If <= 0, no timeout
Data Timeout:
When connected, the timeout will be exceeded
when there is no communication packet
If <= 0, no timeout
Socket Server is set up after the project is running and closed after the project is stopped. When
the Socket Server is successfully established, the IP and Port will be displayed in the Notice Log
window on the right.
IP HMI System Network IP Address
Port 5890
When the process enters the Listen Node, it stays in the Listen Node until it triggers and leaves
with the exit condition.
Pass: Executes ScriptExit() or item stopped
Fail: 1. Connection Timeout
2. Data Timeout
3. Before the Socket Server been established successfully, the flow process has entered
the Listen Node
Variable System
After clicked the newly added variable, the declaration of variable can be performed. For
example, the integer type variable TM_Robot=0 can be declared.
In addition to declare a single variable, array can also be declared. The array declaration
method is to set the name of the array variable and the size of the array. The default value is
0. As shown in the following figure, an array with size 10 and name Array is declared, so the
array {0, 0, 0, 0, 0, 0, 0, 0, 0, 0} can be obtained. Ifthe user wants to obtain the first value of
the array, TM_Robot[0] can be called in calling the array SET Node.
IMPORTANT:
The corresponding number of first number for the array is 0, and so on.
IMPORTANT:
Global variables will not be initialized when the system shuts down.
SET node
In the application of variables, the SET Node can add and subtract variables, often working with
the IF Node to select the path, or interrupt the infinite path of the project. As shown in the figure
below, set an integer type of variable count=0. Each time passing through the SET Node, the
count value is added by 1. Finally, working with Display to display the number of times the project
is repeatedly running.
Variable count
a−= b a=a−b
a ∗= b a=a∗b
a/= b a = a/b
In the box below, the existing variables can be selected and used for calculation.
Expression Edit
Analog IO Applications
10.3.2 IF Node
In actual robot running, different conditions may occur due to many factors. For example, job
failure, success, and communication errors may occur in various function nodes. These results
will return the corresponding variable values. The user can use the IF node to handle these
conditions according to different variables. The IF can judge or compare the state of IO, the state
of variable, and judge the compliance. And take the Yes or No path according to whether the
condition of the judgment is reached.
IF Node
!= Not Equal to
And in the judgment of Compliance, as shown in the figure below, the variables obtained from
using the result of Compliance in this project to program the follow-up flow.
From the vision point of view, Gateway can simplify the layout and increase the visibility of the
flow.
NOTE:
If the gateway case is pulled empty, it represents the judgment condition of none
of the above.
The function of Stop Node is the same as the Stop Button on the Robot Stick, as shown in the
figure below. During the project running, if passing the Stop Node, the project is ended.No node
can be connected after Stop. If Stop node does not exist in the flow, the project will not end
automatically. It is necessary to press the Stop Button on the Robot Stick again to end the project.
Thread Page
Inside the Thread page, only these actions can be added to the Project Editing Page: using the
logic to judge, display the value of the node, and cannot use the motion type Nodes. The Thread
pages are divided into two types. The first one is when the project pauses, the Thread page is
also paused at the same time. The other is when the project is paused, the Thread page does not
pause, and the user can still get the data or update the variables in the Thread page and view in
Display, the window frame is presented in blue. If the page needs to be deleted, then click the Edit
icon of the Start node in the subpage to delete.
TM Robot records the relative relationship of objects by recording the points on different Vision Bases. When
the environment changes, the robot can be compensated by the principle of coordinate transformation
without re-teaching the robot's point positions. The position, as shown in the following figure, records the
point P1 on the Vision Base to complete the task of pick and place, and performs the placement operation at
the fixed position P2.
IMPORTANT:
When using the Vision Bases, make sure to choose the correct Base
from the list on the upper right corner as Current Base.
NOTE:
If the user chooses an incorrect Base, user can use the “Re-record on
another base” function in Point Manager to re-record the point to the
correct Base.
NOTE:
Master is also called as Client; Slave is also called as Server.
First click ModbusDev from the list on the right side of TMflow to build the relevant parameters for
the TCP device.
IMPORTANT:
If communicating with an external device, then it is necessary to set the IP
address and related parameters of the external device.
IMPORTANT:
Big-endian is the high byte stored at the lowest memory address and must be
checked here.
In this example, a float type variable var_Position_X is created, so that the variable
var_Position_X gets the robot's coordinate value in the X direction. And use the Set Node to
insert the new variables and the variables obtained by Modbus into the upper text box, and finally
use the Display node to verify whether the X coordinate value obtained in the Modbus address is
correct.
Use the obtained variable of SET node to obtain the value of Modbus
Network Setting
12.3 IO
TM Robot provides the user with two formats of digital IO and analog IO. Digital IO controls two state
represented by H and L (High/Low), if the output is High represents output voltage of the Control Box is
24V, if Low, then the output voltage will be pulled to GND.
The Control Box configures 16 sets of digital IOs.
The Control Box configures 6 sets of analogy IOs. The user can also use the SET node to give the AIO
specific voltage (-10V~10V) to complete the job in actual operation.
12.3.2 External IO
TM Robot provides external IO extention functions, which can be extented by the TM Plug &Play
EtherCAT IO extension modules, and the added IO interface port can be call by the controller to
test, and to complete the flow programming by the SET node.
Status IO Setting
In this example, insert the RS-232 into Com1 of the TM Control Box, and communicate with the
robot using RS232. After the obtained values have been processed with data analysis, the
obtained results will be displayed on the Display Node.
At this time, the variable var_receive will receive a string of characters. The user can conduct
string disassembly, type conversion, analysis conversion, etc., according to the protocol of
product specification to convert it into a readable state and use it as TMflow variables.
NOTE:
The function of the Command node, if using the Network node, can also
achieve the same purpose by setting the local IP (127.0.0.1).
NOTE:
The function of the Command Node, if using the Network Node, the local IP
(127.0.0.1) can be set to achieve the same purpose.
Modbus Setting
For example, user can create a string type variable Hello, and input the combination of variable and
string in the Voice node. At this time, the external broadcast device will say “Hello World” according to
the setting, but be careful that if a space is not added in front of World, then it will become "HelloWorld",
the result with error will be different from the expected result.
IMPORTANT:
If using "Speak and Move", the speech will be saved into a buffer and deleted only if the system
finish speaking it. That means, if the Voice is used in a Thread with a quick loop, the buffer size
will increase insanely, that the robot might keep speaking without an end.
After imported the software package, the imported software package needs to be enabled in the Robot
Setting page. After enabled, the software package imported in each project will be added to the left side
of TMflow. The user can use it directly after dragged from the left side.
The setting parameters of each software package are not the same. The instructions in the upper right
corner of the software package node can be clicked to view the parameters need to be set and the
method of usage.
The robot provides a simpler process programming method for the gripper-type software package. On
the robot setting page, click the Gripper button to set the job triggered by the Gripper button at the End
Module. The concept is when clicking the Gripper button, a set of Component is added in the flow and
execute once, and two Components are used in sequence (remember that some of the grippers need to
be executed with SET Component before can be used). In practical applications, the robot uses the
FREE Button, working with the buttons of End Module record gripper and point, to complete flow
programming without TMflow control.
Compliance Node
Base setting: Move according to the Tool Base or Current Base
Robot movement direction setting: Set the robot to move along a certain axis, or choose to
use manual teaching method
Stop Condition Setting:
Timeout: This node will be release if the set time is reached before or while running the
job
External resistance detection: When the resistance is sensed, the speed at the robot
end is close to zero, and the node is released
Digital Input: Set a digital input signal, this node is released when the signal is met
Stroke % for DIO Detection: When the moving distance exceeds the relative percentage,
there will be different Int values output to the variable to perform judgment
Variable: Set Stroke % for DIO Detection Receiving Variable
Analog Input: Set an analog input signal, when met, this node is released
Line Direction
The user can pre-program the solution for any possible situation according to the result of variable
returned by the Compliance node, and coordinated with the IF node.
B
E
C
D
TouchStop-Compliance Settings
TouchStop-Line Settings
14.3.1 Approaching
14.3.1.1 Approaching principle description
Before using the Smart Insert node, the user shall place the inserting object as close to the
assembly as possible. In the Approaching step, the robot will move toward the z axis direction
of the Tool Base until the force sensor detects 5 Newtons (N) of resistance, to be judged as in
contact with the inserting object.
(a) Try to make the robot as close to the inserting object as possible
(b) When the contact force is 5 Newtons, the robotic arm ends the
Approaching step
IMPORTANT:
Since the contact force needs to reach 5 Newtons, the Approaching
step will end. The user needs to confirm that the inserting object and
object to be inserted are able to withstand at least 5 Newtons of
force, so as not to damage the product.
14.3.2 Searching
After ended the Approaching step, enters the Searching Stage. Searching can be divided into two
strategies of Spiral and Line. The figure below is the motion method of the Spiral strategy. This
searching strategy uses the Approaching contact point as the center of the circle, that is, the
contact stop point between the inserting object and the object to be inserted, and searches
outward in a spiral motion method until the stop condition is met. If the user selects Line method
for searching, the robotic arm will follow the search axis set by the user to perform Line search
until the stop condition is met, as shown in the figure. Regardless it is Spiral or Line searching
method, the robotic arm exerts a downward fixed force Tool Z Axis direction during the search.
The Spiral searching method starts from the contact point and spirals outward to search for the
inserting target
The Searching stop condition can be divided into "Completed Searching" and "Stop Searching",
of which Stopping Searching also is that the inserting point cannot be found within the searching
condition, such as the searching time is too long, the searching distance is too long, etc. On the
other hand, if after the inserting object entered the inserting point, the combined force of X-Y
Plane is greater than 5 Newtons (N), and the Z Axis does not have contact force which is 0, then it
is judged as Completed Searching, and enter the final Inserting Stage.
When the XY combined force of collision is greater than 5 Newtons, it is judged as Completed
Searching
It is worth mentioning that during the spiral searching process, the robotic arm may walk out
of the boundary of the inserting object, and misjudge it as "Inserting Point Found". Therefore,
setting the Height Tolerance can prevent the occurrence of misjudgment.
NOTE:
In general, if the geometry shape of the inserting object is circular, such as
positioning pins, it is recommended to use the spiral searching method; if the
geometry shape of the insert object is rectangular, such as SDRAM, it is
recommended to set the searching method to Line.
DANGER:
This function cannot be mistakenly used as a safety function. The user must conduct a
comprehensive risk assessment according to the environment and conditions of use, and
configure equipment such as a grating, laser scanner and others that comply with the safety
regulations, and work with the safety protection port of this product from the external device to
trigger the Collaborative Mode or pause. Set the operation environment correctly, or use other
appropriate safety designs to prevent people from entering the robot's full speed space. This
function is only to assist the user in understanding the space concept more easily during the
teaching and programming process. The Reduced Plane / Space function shall only be used
in the teaching process to know the Reduced Space and full-speed running area, instead of
being mistakenly used in the switching between the Collaborative Mode and full speed mode,
and mistakenly viewed as a safety function. When the Stop Plane/Space is used during the
teaching process, the user shall regard this function as to avoid setting the point or motion
across the prohibited area, and shall mistakenly regard this function as a purpose of space
limitation related to safety that mistakenly regarded as a safety function. The Company clearly
specifies the following potential residual risks: There is a risk that causes the robot to hit
human body at full speed due to improper use of safe space settings or running incorrect
projects.
The Operation Space Setting Function list on the Left Side is shown as follows.
Pre-deceleration
Plane chareacters Reverse Stop Plane
distance setting
Switch to Reduced
Plane
The list will display all built characteristics. When the user clicks on the characteristics in the list, the
robot virtual interface located in the center will display the selected characteristics in dark blue, and the
user can delete, reset and other setting on the selected characteristics. When the robot is about to
enters the deceleration zone, the robot will start deceleration in advance, but the state of the Indication
Light Ring of the End Module will not change.
The Add / Modify Plane Page can be accessed by clicking the button for add new plane or click button of
reset characteristics after selected the plane characteristics. In this page, the user can build a plane by
setting three points. The set order of three points can be randomized. The robot virtual interface will be
displayed with the corresponding color ball. When three points are set, a dark blue virtual plane will
appear. At this time, click the OK button to build the plane. It is necessary to pay attention that when the
phenomenon of common point or collinearity occurs, this virtual plane will not be able to be built. The
button function list is shown as follows.
OK Cancel
The Add/Modify Cube Page can be accessed by clicking the button for Add Cube or selecting the Cube
characteristics, then click the Reset Characteristics button. In this page, the user can build a cube with
the four point set by TCP. The set order of three points can be randomized. The robot virtual interface
will be displayed with the corresponding color ball, but it needs to be built according to the relative
relationship of the icons. After completed setting of the four points, a dark blue virtual cube will appear.
Click the OK button at this time to build the Cube. It is necessary to pay attention that when the
phenomenon of common point or collinearity occurs, this Cube will not be able to be built. The button
function list is shown as follows.
OK Cancel
DANGER:
The convenient setting of the operation space is achieved by a complex spatial geometry
algorithm, which may result in a space division that is not as expected by the user under
certain specific setting conditions. The user shall fully check whether the result of the space
sphere in the 3D image is as expected before saving the settings. Improper use of a safe
space configuration, or saving unexpected settings, or an incorrectly run project, can all cause
situations where the robot hits a human body at full speed.
The Intelligent Slowdown function in the lower left of the figure above provides the ability for the robot to
automatically pre-decelerate in the schedule of the project node. If this function is checked, when the
project is running, the system will calculate whether the robot's next node position crosses the space, if
the space is crossed, then the robot will start deceleration at the current node.
DANGER:
The Intelligent Slowdown function only judges whether the initial position and end point of the
robot TCP enters the deceleration zone from the full-speed zone or not. Therefore, if the initial
position and the end point are both located in the full-speed zone, and the TCP position enters
the deceleration zone during the operation, the smart pre-deceleration function will not
activate.
Delete, add, or edit planes to modify the operation space displayed in the
Edit
3D simulator.
After clicked the “Preview” button, if the set page needs to be modified, click the “Edit” button below
Step2, to modify in this screen.
If the modification is completed, click the Save button on the top left to save the file. If modification is not
required, then click the X button on the top right to return to the setting page without saving.
Digital Output 01 R
Digital Input 02 R
Register Output 03 R Classification
Register Input 04 R description
Digital Output 05 W
Register Output 06 W
Yes:1
Error or Not 02 7201 1C21 Bool R
No: 0
Project Running or Yes:1
02 7202 1C22 Bool R
Not No: 0
Yes:1
Project Editing or Not 02 7203 1C23 Bool R
No: 0
Yes:1
Project Pause or Not 02 7204 1C24 Bool R
No: 0
Yes:1
Get Control or Not 02 7205 1C25 Bool R
No: 0
19888-400 A