Download RoboFlow

1. Introduction to the RoboFlow

The RoboFlow is the operating system of the Elephant Collaborative Robot. It provides a human-computer interaction interface, which is convenient for operators to interact with the elephant robot and use the elephant robot correctly. That is to say, when the user uses the robot, most of the time is achieved by using the RoboFlow operating system.

For example, since the RoboFlow operating system runs in the teach pendant, the user can use the carrier of the teach pendant to perform manual robotics, programming, and other operations. The operating system OS can also be used to communicate with other robots or devices. All in all, with the advantages of friendly interface and rich functions, the appearance of the RoboFlow operating system makes it easier for users to start using the elephant robot. It makes everyone a commander of robots.

2 Main interface introduction

2.1User Login Interface

When the controller is powered up and the system startup button on the teach pendant is pressed, the login page is entered. Figure 2-1 shows the login page of the OS3 operating system.

roen Figure 2- 1 login interface

① : displays the name of the serial port of the mechanical arm

② : login user name (select Default)

③ : Password: mycobot / mycobotpro

As shown in the login page, "TAUGHT BY PEOPLE, PERFORMED BY ROBOT", this is the concept that the elephant robotics has always insisted on making the operator become the commander of the robot. Let robots replace people with simple but repetitive tasks, work in harsh working conditions, and work that people can't do well (such as scenes with very high operational accuracy).

There are two types of login users for the OS3 operating system, one is the administrator and the other is the operator. The administrator has the highest authority to perform all operations, programming and setup. The operator can only load and run existing programs and check the statistical data information.

Administrators can add and modify multiple accounts in the settings, including operator accounts.

By clicking on the "Shutdown" button, the OS3 operating system can be turned off, and then the power supply can be turned off, thus the robot system can be shut down.

2.2Main Menu

When the login is successful, it will go to the main menu page. The main menu of the OS3 operating system is shown in Figure 2-2.

Figure 2- 2 Main menu

On the left side of the main menu, there are four different options available:

  • Run Program

    • Load an existing program directly and control the program to run. In this window, the user is not allowed to edit the program, but can only control the program running (such as control program running, pausing, stopping). At the same time, you can view the log and other related information during the running process of the program.
  • Edit Program

    • Users can choose to load an existing program in this window for modification, or they can choose to create a new blank program for editing.This window is the most frequently used function window for users. Besides programming, it can also perform other operations, such as manual manipulation of robots with "fast moving" function, forced control of IO signals, new variables, etc.
  • Statistics

    • In this window, users can not only view the existing running data of the system, but also view related information saved before.
  • Settings

    • In this window, the user can make basic settings for the robot. Such as robot open, robot off, account management, default program settings, etc.

In addition to these four main options, in the right window of the main menu, the user can see and open the most recently run program files. It is convenient for users to quickly find the most recently run program and control the program to run.

Click the "Shutdown" button to close the OS3 operating system; click the "Logout" button to log out.

2.3 Run Program

If the user selects "Run Program" in the main menu, it will enter the Run Program window. The running program window of the OS3 operating system is shown in Figure 2-3.

23 Figure 2- 3 Program editing window option

Users can enter the program window by loading the program they need to run. In this window, users can:

1.Get the basic information of the current (ready) running program, including program name, running status, user type.

2.Understand the statistical information of the current running program, such as the total number of runs and the rhythm, etc.

3.Read the relevant information of the current running program through the display window, such as IO, variables, logs, etc.

4.The most important thing is that the running program window is the channel for the user to load and run the program that has been debugged.

2.4Edit Program

As shown in Figure 2-4, if the user selects "Write Program" in the main menu, two options will appear in the right window. The first is to create a program (optional blank or template) and the second is to load the program.

24 Figure 2- 4 Program Editing Window Options

25 Figure 2- 5 Program Editing Interface

When first entering the program edit page, the user sees the initial page as shown in figure 2-5. In this page, common tools, initialization group and file management functions are provided. The role of the initialization group is to make it easy for the user to set the program content to run at the beginning of the program and run only once. For example, set the initial point, Io State, and so on before the robot starts formal work. File management provides users with a way to manage files. Users can manage program files here, and can copy them to the U disk, or from the U disk to the system memory. If the user wants to go back to the initial page during the programming process, click "Back".

Function bar As shown in Figure 2-6, the function bar has seven sub-options, which are divided into two categories, one is the program editing toolbar, and the other is the function editing column. 26 Figure 2- 6 Function bar

Program editing toolbar: Includes file option bar, edit option bar, and toll options bar. File:As shown in Figure 2-7, you can edit the program file. There are several operation options: Save, Save As, New, Load, Rename, and Exit. 27 Figure 2- 7 File option bar

Edit:As shown in Figure 2-8, you can edit the specific command content in the program file. There are cut, copy, paste, delete, disable, delete all, redo, undo options. 28 Figure 2- 8 Edit option bar

A. Tool options bar:As shown in Figure 2-9, it is a shortcut toolbar. When editing a robot program, the user often uses other tools to operate the robot. The tool options bar provides tools commonly used in program editing. Tools provided include: Quickmove, install, input and output, variables, logs, basic settings. For example, when editing a motion command, the user needs to manually operate the robot to a working position and teach the point. Then, the “Quickmove” tool in the toolbar can be selected to manually operate the robot to move to the position. 29 Figure 2- 9 Tool options bar

Functional Editing Window The OS3 operating system provides a rich set of features that allow users to perform complex functions with simple operations. Simple, but not simple functions, thus reducing the time workers to learn programming, efficient accomplish their goals. The function editing bar includes basic functions, logic functions, advanced functions, and extended functions.

Basic functions:As shown in Figure 2-10, the basic functions include Waypoint, Gripper, Wait, Set, and Group, which are some basic functions commonly used by users. 210 Figure 2- 10 Basic functions

  • Waypoint: “Create new waypoints → Manually operate the robot to move the robot to the target point → Save current point → Running program”. With this series of operations, the user completes the goal of controlling the movement of the robot to the target point. If you create multiple waypoints, the motion of the robot will form a trajectory when you run the program.
  • Gripper: The user can use this function to set the end effector. For example, it holds the workpiece or releases the workpiece.
  • Wait: Users can use this function to delay, or wait for signals, conditions, and so on.
  • Set: Users can use this function to set the input and output signals and custom conditions.
  • Group: Users can use this function to edit the programs in the group.
  • Logic function: As shown in Figure 2-11, the logic functions include Loop, If/Else, Subprogram, Thread, Halt, Switch, to complete the program running process control.

211 Figure 2- 11 Logic function

  • Loop: The user can use this function to set a block to run cyclically multiple times.
  • If/Else: The user can use this function to make conditional judgments, such as the determination of an input signal.
  • Subprogram: The user can use this function to call a subroutine.
  • Thread: Users can use this function to achieve robot multi-thread control.
  • Halt: The user can use this function to control the program to pause, stop, restart, and pop up the window to display the corresponding prompt information.
  • Switch: The user can use this function to make a condition selection and determine the content to be executed according to the value of the selected object.
  • Advanced function: As shown in Figure 2-12, advanced functions include Pallet, Assign to Var, Script, Popup, and Sender, all of which perform more complex operations. 212 Figure 2- 12 Advanced function
  • Pallet: Users can use this function to realize the robot to perform regular point movements. For example, the handling of workpieces in pallets, palletizing, etc. It is also possible to implement the fixed but irregular rendezvous motion of the robot in sequence.
  • Assign to Var: Users can use this function to implement the assignment of a variable.
  • Script: With the scripting feature, users can use the other common functions to achieve simple tasks while using the elephant robot, and can also use script programming to complete more complex tasks.
  • Popup: Users can use this function to customize the pop-up window to display related information. This helps the operator to analyze the status of the current robot running program.
  • Sender: Users can use this function to achieve TCP/IP communication between the elephant robot and other devices.
  • Extended function: To adapt to different application scenarios, the OS3 operating system provides some extension functions, and even customizes functions according to important application scenarios proposed by users. 213 Figure 2- 13 Extended function

Program Display Window On the left side of the program editing page, there is a program display window as shown in Figure 2-14. The upper part is the name of the currently open program file, and the lower part is the program tree, which records the specific instructions and related information.

214 Figure 2- 14 Program Display Window

On the right side of the program editing page, there is a function editing window as shown in Figure 2-15, which shows the specific contents of the function instructions.

215 Figure 2- 15 Functional Editing Window

The user can make specific settings for the function instructions in this window. Quick control and current command renaming, deletion, and disabling are also provided here.

At the bottom of the program editing page, there is a program running control bar as shown in Figure 2-16. When debugging a program, users can use it to run, pause, stop and limit the running speed of the program.

216 Figure 2- 16 Program run control bar


When users use elephant robots, they can not only program and control the robot to complete the corresponding tasks, but also get some valuable statistical data in the statistical report window for analysis and statistics.

The statistical report window is divided into four sub-windows.

As shown in Figure 2-17, the general class counts the total running time, the number of active programs, and the specific information of active programs.

217 Figure 2- 17 Conventional statistics

As shown in Figure 2-18, the program class counts the total running time and times of different programs.

218 Figure 2- 18 Procedural statistics

As shown in Figure 2-19, the log lists the general information, warning information and error information recorded by the system during the user's use of OS3 operating system. This information helps users to determine what changes and feedback the system has made during the operation of the OS3 operating system.

In particular, error information can help users quickly locate the possible causes of errors, so as to solve problems according to error information and resume normal use.

219 Figure 2- 19 Log statistics

As shown in Figure 2-20, security statistics can help users to count security-related information, such as collision information, number of stops, etc. 220 Figure 2- 20 Security statistics


In the configuration center, users can configure the robot. For example, power the robot, turn off the robot, set the load, time, network and so on. Initialization

The initialization configuration page is shown in Figure 2-21.

When robot movement is required, the user needs to enter the configuration center → initialize the robot, or shut down the robot. In the initialization page, you can also set the load and installation, these two are important configuration content before other operations, such as configuration errors may cause unexpected situations.

221 Figure 2- 21 Initialization

Default program

Figure 2-22 shows the default program settings page.

222 Figure 2- 22 Default program

This function allows the user to set a default running program. As long as the system starts, the robot directly enters the running program window, and can start running the program and perform corresponding actions to complete the specified task.

If the user does not want the system to start and the startup program starts running, you can choose not to run.

Version update Figure 2-23 shows the version update settings page.

223 Figure 2- 23 Version update

This page allows users to update the OS3 operating system in two ways, one for local file updates and one for network updates. Figure 2-24 shows the account management page.

224 Figure 2- 24 Account management

Users can add new users, delete expired users, or change passwords on this page. On this page, the user can get all the account information. Language and unit The language and unit settings page are shown in Figure 2-25. At present, the OS3 operating system supports Chinese and English and metric units. Other languages and units are increasing, so stay tuned!

225 Figure 2- 25 Language and unit

Time Figure 2-26 shows the time setting page.

226 Figure 2- 26 Time

The user can set the system time on the current page. If the "24-hour system" is not checked, the time display format defaults to 12-hour system. Touch screen calibration

Figure 2-27 shows the touch screen calibration instructions. The user clicks on "Start to Calibrate" to enter the calibration interface. The calibration interface will appear in sequence with four circles, as shown in the figure. The user needs to click the center of the circle with a touch pen, and each time the button is clicked, the next circle will appear until all four circles appear. A pop-up window will appear indicating that the calibration is complete, and you can exit the calibration screen after confirming the pop-up.

If the calibration times out or the steps are wrong, a pop-up prompts the calibration failure. At this point, you can confirm to exit the calibration interface and return to the page in Figure 2-27 to recalibrate.

227 图2- 27 Touch Screen

About us As shown in Figure 2-28, it is about our page.

228 Figure 2- 28 About us

This page shows basic information about the operating system of the OS3 operating system. For example, the model of the robot used is the Elephant series, version information, and so on.

For more information, please visit the official website

3 Introduction to common tools


Quickmove is a tool that users use frequently when they operate the robot quickly and manually. Therefore, every user must be very familiar with the use of Quickmove using methods. The wrong operation may result in damage to the robot and its peripheral equipment, and even injuries to personnel.

As shown in Figure 3-1, Quickmove are mainly composed of 11 parts, which are described below.

31 Figure 3- 1 Quickmove

Motion Control Mode in Cartesian Coordinate System

As shown in Figure 3-2, over-fixed-point O, three axes perpendicular to each other, all with O as the origin and generally with the same unit of length. These three axes are called x-axis (horizontal axis), y-axis (vertical axis), and z-axis (vertical axis), which are collectively referred to as coordinate axes. The x-axis and y-axis are usually arranged on a horizontal plane, while the z-axis is a plumb line. Their positive direction is in accordance with the right-hand rule, that is, holding the z-axis with the right hand. When the four fingers of the right hand turn from the positive x-axis to the positive y-axis from the π/2 angle, the thumb is pointed to the positive direction of the z-axis. Such three axes form a spatial Cartesian coordinate system, and point O is called the coordinate origin. This constitutes a Cartesian coordinate.

There are three planes in the three-dimensional Cartesian coordinate system, XY-plane, YZ-plane, and XZ-plane. These three planes divide the three-dimensional space into eight parts, called octant spaces. The three coordinates of each point of the first limit are positive values.

32 Figure 3- 2 Cartesian coordinate system Direction callout diagram

As shown in Figure 3-3, the robot can be controlled to move in the direction of the Cartesian coordinate system by clicking the key corresponding to the direction of the Cartesian coordinate system.

Figure 3- 3 Cartesian coordinate system motion control mode button

3D View This window marks the direction of movement of the six joints of the robot.

  • User coordinate system
  • Motion mode switching

There are two main motion modes for manual manipulation robots.

  • Continuous motion mode: The user presses the motion control button and allows the robot to move until the user releases the button and the robot stops. For example, if you press the + X direction motion control button, you need to hold the button all the time. The time of pressing the motion control key determines the distance of the robot in the + X direction.
  • Stepping motion mode: Manual manipulation robot step motion, click "step motion" and open the step setting window as shown in Figure 3-4. Then the user chooses the step in this window and clicks the key of the target control direction. Every time he clicks, the robot takes a step. For example, choose a 1 mm step, click the X-direction movement control button, and every time you click the button, the robot will move 1 mm in the + X direction.

34 Figure 3- 4 Step-by-step motion step setting window

Speed As shown in Figure 3-5, the control speed of the manual manipulator can be set here. Speed can be set from 0 to 100%.

35 Figure 3- 5 Speed setting window

Move to origin By selecting the icon shown in Figure 3-6, the robot can be controlled to return to its original position and posture.

36 Figure 3- 6 Move to origin

Freemove Select the icon shown in Figure 3-7 to switch to the drag mode. 37 Figure 3- 7 Freemove

Return Click on the icon shown in Figure 3-8 to return to the programming operation window. 38 Figure 3- 8 Return

Joint control Serial robot is an open kinematic chain of the robot. It is formed by a series of connecting rods connected in series with a rotating joint or a moving joint. The elephant cooperative robot belongs to a 6-axis serial robot. It drives the relative motion of the connecting rod by using motor drivers to drive the movement of 6 joints, allowing the end operator to reach the right posture. The Joint control window shown in Figure 3-9 provides the keys used by the operator to manually manipulate the robot and control the robot for joint movement using the instructor. The control buttons for each joint are divided into 2 directions, and the angle data of each axis can be seen. 39 Figure 3- 9 Joint motion mode control window

Coordinate position As shown in Figure 3-10, this window displays the coordinate position corresponding to the coordinate control.

310 Figure 3- 10 Coordinate position display window

Status display button: The button has two states, "OK" (displays green) and "Reset" (displays red). When the display is normal, it indicates that the robot is working properly, and when the reset is displayed, the robot is abnormal, the anomaly needs to be lifted and the key is clicked for reset.


As shown in Figure 3-11, there are three submenus inside the installation tool. It is used to implement the loading/saving installation configuration, security configuration, and network configuration of the elephant robot.

311 Figure 3- 11 Load/save installation

Security configuration: As shown in Figure 3-12, set the torque limit and brake control of the elephant robot.

312 Figure 3- 12 Security configuration

Network Configuration: As shown in Figure 3-13, configure the IP address and port number of the Ethernet communication here. 313 Figure 3- 13 Network settings

3.3 Input and output configuration

The robot system has a total of 16 digital input signals and 16 digital output signals. As shown in Figure 3-14, the input and output signals can be configured and monitored in this window, and the output signals can be forcibly output. IO configuration files can also be saved and loaded on this page. As shown in Figure 3-15, it is an input/output interface description corresponding to the page shown in Figure 3-14.

314 Figure 3- 14 Input and output configuration

315 Figure 3- 15 Input and output interface description

It should be noted that the input public terminal needs to be connected to 24V power supply. It can be determined whether the input is active high or active low according to the common configuration (hardware connection determines 24V or 0V). As shown in Figure 3-16, when the common terminal is connected to 24V, once an external device inputs 0V, the input signal is in the “High” state, otherwise it is in the “Low” state; vice versa.

316 Figure 3- 16 Input signal application diagram

As shown in Figure 3-17, the output is 24V when there is no output. Once the output is turned on (that is, the output is High), the output is 0V.

317 Figure 3- 17 Output signal application diagram


As shown in Figure 3-18, in the variable editing window, you can add, edit, and delete variables.

318 Figure 3- 18 Variable editing

As shown in Figure 3-19, there are 5 types of editable variable types. They are string variables, pose variables, floating point variables, integer variables, and Boolean variables. On this page, you can edit the variable name and initial value.

Figure 3- 19 New variable interface


As shown in Figure 3-20, you can view information about the robot running status, error information, and alarm information in the running log window. Click the "Information", "Warning" and "Error" buttons to sort the corresponding logs.

Users can save logs to a local folder. Log files are a record of how the system is performing, helping users to have a clearer understanding of the system and also helping to troubleshoot errors.

320 Figure 3- 20 Running log

3.6Basic Settings

As shown in Figure 3-21, the basic settings page provides a common setting channel, allowing the user to quickly set up some functions, such as free movement related parameter settings, even when leaving the programming window while writing the program. 321 Figure 3- 21 Basic Settings

4 Function instruction

4.1 Basic function


There are four types of waypoints: Absolute points, Relative points, Shared points, and Variables. These four types are side-by-side. Under one waypoint command, you can only choose one.

Absolute point: The absolute point is a description of the actual pose of the robot.

  • That is, as long as the robot records the absolute point, the next time the instruction is executed, regardless of the position of the robot (other settings unchanged), will reproduce the original teaching of the absolute point of posture.

The specific configuration page for absolute points is shown in Figure 4-1.

41 Figure 4- 1 Absolute point

Road Point coordinates

  • As shown in Figure 4-2, there are two formats for the representation of absolute points, namely Cartesian coordinate system coordinate values and joint angles. Among them, the Cartesian coordinate system coordinate value records the position and attitude of the robot TCP relative to the base coordinate system (in mm),.The joint angle is a direct record of the actual angle of each axis (in degree, degrees).

42 Figure 4- 2 Absolute point Position data

Waypoint control Save current point This button is used to save the current pose data of the robot. Move to this point If you need to verify the teaching point or move to the teaching point for some operations, press and hold the button until the robot moves to the current teaching point. If the current teaching point is no longer needed, this button is used to clear the current teaching point. Advanced Features Shared configuration: This feature is being debugged, so stay tuned! Advanced configuration As shown in Figure 4-3, in the advanced configuration page, the user can set the movement mode, proximity mode, command speed, and torque limit.

Figure 4- 3 Advanced configuration

Relative point: The relative point is used in a situation where a certain displacement is required based on a corresponding point of the movement instruction on the robot/an absolute point/variable point offset. The displacement can be a distance in a single direction, or a superposition of displacements in multiple directions, and can also teach a segment to offset. Figure 4-4 shows the specific configuration page of the relative point.

44 Figure 4- 4 Relative point

Direct input(relative movement) As shown in Figure 4-5, you can directly enter the coordinate value / joint angle.

45 Figure 4- 5 Two forms of direct input

Regardless of whether the coordinate value or the joint angle is input, one or more of the six values are selected according to the offset requirement, and not every value is required to be input.

For example, as shown in Figure 4-6, in the actual pickup and placement process, it is necessary to set a transition point above the target placement position. At this time, we can set a path command as absolute point, control the robot (at this time the robot should be holding the state of the workpiece) to move to the placement point, click to save the current point, which generates the command line 2 shown in Figure 4-6. Then click on the basic function - waypoint: select the relative point, set the z-direction of the icon to increase the relative point of 50mm, then the robot will move to the position of the transition point after running the last sentence. In the actual pickup and placement process, other instructions, such as setting instructions, may be added between the two instructions to open the gripper.

46 Figure 4- 6 Application examples of direct input coordinate values

In addition to offset based on the position of the last motion instruction, relative point instruction can also be offset based on a Waypoint or Variable point.

The "Move to this" button verifies the offset motion, and "Clear Saved Points" clears the currently entered content.

Reference move: By teaching two points, a path is generated, based on the current point, and the track is reproduced.

Advanced Features: The advanced configuration of the absolute point is not repeated here.

Shared point:The share point can use the location of other waypoints. Figure 4-7 shows the specific configuration page of the share point.

47 Figure 4- 7 Shared point

Shared point: Select the point you want to share in the box, you can keep pressing the "Move to this point" button to control the robot to move to that point. If you click "Clear Saved Points" to clear the current share point.

Advanced Features: The advanced configuration of the absolute point is not repeated here.

Variable: The waypoint can be assigned by a variable. The user can use the communication method to obtain the waypoint location from other devices.

Figure 4-8 shows the specific configuration page of the variable point.

Variable assignment: The user can select the associated pose variable, and "Move to this point" can check whether the pose is the target pose.

Advanced Features: The advanced configuration of the absolute point is not repeated here.

48 Figure 4- 8 Variable

4.1.2 Gripper Figure 4-9 shows the specific configuration page of the gripper.

49 Figure 4- 9 Gripper

The user defines and controls the gripper through a simple function.

  • 1 Select gripper
  • 2 Set existing grippers
  • 3 Select the gripper, you can edit or delete the existing gripper.
  • 4 Define new grippers 如图4-10所示,可以命名夹爪,同时控制多个输入信号:设置需要控制的输出信号的数量、在“设置”中选择设置第几个信号、设置状态(关系到具体执行时对应“打开”或“关闭”功能)、设置对应输出信号。在设置完成后,还可以选择等待条件。

410 Figure 4- 10 Define new grippers

Set the saved state

  • Fully open: The option in the execution gripper definition is the"open" state.
  • Completely off: The option in the execution gripper definition is "off" status. Debug control
  • Open the gripper: Manual operation performs the option of the "Open" state in the gripper definition.
  • Close the gripper: Manual operation performs the option of the "Close" state in the gripper definition.

4.1.3 Wait As shown in Figure 4-11, there are four modes for waiting for instructions.

  • Waiting time: The delay time can be set in seconds.
  • Waiting for the input signal: The state of the input signal is judged and waits until it meets the set input signal state condition.
  • Waiting for the output signal: The state of the output signal is judged and waits until it meets the set output signal state condition.
  • Waiting conditions: You can customize the wait condition and wait until the wait condition is met.

411 Figure 4- 11Wait

4.1.4 Set As shown in Figure 4-12, the setup command has four modes of selection.

  • Set IO: Set the state of the output signal. In addition to selecting the set output signal to determine whether it is on or off, you can also set the time that the signal is held.
  • Set conditions: Customize the content of the settings.
  • Set TCP (i.e. tool center point).
  • Set the load.

412 Figure 4- 12 Set

4.1.5Group As shown in Figure 4-13, the group instructions provide common combination templates, such as grabbing and placing combinations.

413 Figure 4- 13 Group

When users use group instruction, such as grabbing and placing combinations, they can modify parameters and teach Waypoints directly on the basis of template programs, or they can add or delete instructions freely according to their needs.

The user can simplify the process of finding instructions by using the group instruction. And it is more convenient and quicker to complete the programming of the corresponding project.

4.2 Logic function

4.2.1Loop Loop instructions can repeat all instructions within a loop for a certain number of times. As shown in Figure 4-14, the number of loops can be represented by a constant or a variable or an expression.

414 Figure 4- 14 Loop

4.2.2 If/Else

Judging the set conditions allows the program to read the data, determine and determine what to do next.

If/Else can be used to determine the I/O signal and can also be used to determine other conditions.

If/Else consists of three parts: If, Else If, and Else. The relationship between these three parts is as follows:

Except that If is an integral part, the remaining two are optional parts;

If both If, Else If, and Else exist, the program will first read If, then read Else If, Else If ... Else. The relationship between the three is shown in Figure 4-15:

415 Figure 4- 15 Relationship between If, Else If, and Else

There can be more than one Else If, but there is only one If, and if you choose to add Else, you can only have one Else.

You can delete Else If or Else, but if you delete If, delete all Else If and Else.

Figure 4-16 shows the setting page of the conditional judgment command.

416 Figure 4- 16 If/Else

As shown in the figure above, if the condition following "If" is met, the robot will move to waypoint 1; if it meets the condition followed by "Else if", it will move to waypoint 2; if both conditions are not met, the "Else" corresponding block will be executed, that is, the robot will move to the waypoint 3.

4.2.3 Subprogram As shown in Figure 4-17, other subroutines can be called using this instruction. The main program can use multiple subroutines, but there are no subroutines in the subprogram.

417 Figure 4- 17 Subprogram

As shown in Figure 4-18, you can view and edit subroutines in the main program. If you edit the subroutine, please note that it will not take effect until it is saved. 418 Figure 4- 18 Display subroutine

4.2.4Thread The thread runs along the main program. It is used to check signals such as emergency buttons or safety light curtains. As shown in Figure 4-19, you can set the running interval of threads.

419 Note that motion instructions are not allowed in threads. 4.2.5Halt The pause command is used to control the robot to pause, stop, and resume. Figure 4-20 shows the specific configuration page for the pause command.

  • When setting the pause and stop status, you can also select “Show Popup” to customize the contents displayed by the popup.
  • Set the restart state. When the program runs to this instruction, it will start running again from the first instruction at the beginning.

420 Figure 4- 20 Halt

4.2.6 Switch As shown in Figure 4-21, the conditional selection instruction is used to judge the value of a variable.

421 Figure 4- 21 Switch

Corresponding to different conditional values, how many conditional values need to be judged to add how many cases, you can open each case, increase the corresponding execution instructions. For example, to judge the integer variable A, set two cases, if A is 1, execute the first route instruction, if A is 2, execute the second route instruction.

If only a few variables are judged, and other cases are handled uniformly, we need to select "default" and add corresponding instructions to the switch.

4.3 Advanced function

4.3.1Pallet The pallet instruction allows the user to teach only a few points, through which the position of the other points can be calculated by the robotic system. Running this instruction can control the movement of the robot to these points. As shown in Figure 4-22, you can select a line, plane, cube, discrete point.

422 Figure 4- 22 Pallet type Selection

As shown in Figure 4-23, after you select line, select the number of points, and the line will be split evenly based on the number of points. These points are the split point. The user determines this line by teaching two points.

423 Figure 4- 23 Line

As shown in Figure 4-24, after selecting “Plane”, select the number of points of the two axes, and the plane is divided equally. These points are the dividing points. This plane is determined by teaching four points.

Figure 4- 24 Plane

As shown in Figure 4-25, after selecting "Cube", select the number of points of the three axes, and the cube is divided equally. These points are the dividing points. Determine this cube by teaching eight points.

425 Figure 4- 25 Cube

As shown in Figure 4-26, when “Discrete Point” is selected, the number of points is selected to teach different points. That is, a discrete point is a collection of multiple points.

426 Figure 4- 26 Discrete point

4.3.2Assign to var As shown in Figure 4-27, this command can assign values to integer variables and string variables. You can also use the "set variables" to directly set the value of the variable according to the instruction.

427 Figure 4- 27 Assign to var

4.3.3Script Script instructions can be used to edit complex instructions, providing a richer set of functional instructions. Figure 4-28 shows the specific configuration page of the script command. There are two types of setup scripts, one is a single-line expression and the other is a multi-line script.

428 Figure 4- 28 Script

4.3.4Popup The pop-up command allows the user to customize the pop-up window. In other words, when this command is executed, a pop-up window appears, and the pop-up content is user-defined content. As shown in Figure 4-29, there are three types of pop-up windows, information, warnings, and errors. The user selects one and customizes the pop-up content.

There are also three kinds of pop-up window control: continue the program (logging), that is, do not pop the window, just display the contents of the pop-up window to the log, and the program continues to run; When the window is popped, the program is paused, that is, the pop-up window appears, and the program is suspended; When the window is popped, the program stops, and the pop-up window appears, and the program stops running.

429 Figure 4- 29 Popup


If TCP/IP communication is to be performed, the robot system must set the IP and port number as a client or server to communicate with other devices.

The sender allows the user to set up a TCP/IP connection. Figure 4-30 shows the specific configuration page of the Sender instruction.

If the robot system acts as a client, the IP address filled in is the IP address of the external device of the server, and the port number corresponds to the port number assigned to the robot system by the server. When the server is in the state of monitoring, it can communicate with the server by clicking the "connection" button.

If the robot system serves as a server, the IP address filled in is the local IP address, and the port number corresponds to the port number assigned to the client device. Click on the "monitor" button, at which point the client device can connect to the robot system. In the client list, you can view the IP addresses and port numbers of all clients.

After establishing communication, data can be sent and received.

430 Figure 4- 30 Sender

5 Quickly create a new runnable project

5.1 Flow Description

5.1.1 Ready to work


  • Complete robot system
  • No problem Prepare content
  • Plug the power cord into the board that provides the AC 220V.
  • Turn on the power switch. Press the start button on the teach pendant.

5.1.2 Flow chart As shown in Figure 5-1, it is the program editing flowchart.

51 Figure 5- 1 Program editing flow chart

5.2 Specific steps

5.2.1 Login After the system is successfully started, it will enter the login interface of the OS3 operating system as shown in Figure 5-2.

52 Figure 5- 2 Login interface

Select the login user name "Admin" or other administrator user name (only administrator permissions are allowed to edit and debug the program), click on the password box will pop up as shown in Figure 5-3.

53 Figure 5- 3 Input keyboard

The login password corresponding to the default administrator user “Admin” is “aaa” (if the other administrator user name is selected, enter the corresponding login password), enter the password and click “OK”, and return to the interface of Figure 5-2. Then click "Login" to log in successfully. 5.2.2 Power on After the login is successful, the main menu interface shown in Figure 5-4 will be displayed.

54 Figure 5- 4 Main menu

In the main menu interface, select “Settings”, it will enter the interface as shown in Figure 5-5 (this time has not been powered).

To ensure that the emergency stop knob is not pressed, click on the “Start Robot” button as shown in Figure 5-5. The interface will change and the “Powering On” icon as shown in Figure 5-6 will appear. If the power is turned on successfully, the “I’m OK!” status shown in Figure 5-7 will appear. If it fails, check if you are missing any steps.

After completing the previous step, return to the main menu by pressing the motor “<Main Menu” button in the configuration center.

55 Figure 5- 5 Unpowered state

56 Figure 5- 6 Powering up

57 Figure 5- 7 Power on

5.2.3 New blank program As shown in Figure 5-8, click “Program Robot” and then select “Empty Program”.

58 Figure 5- 8 Select "Empty program"

After performing the previous step, enter the program editing interface as shown in Figure 5-9. 59 Figure 5- 9 Enter the program editing interface

5.2.4 Add and edit instructions

As shown in Figure 5-10, add two waypoints: absolute point, and teach two points (that is, use the Quickmove to manually operate the robot, control the robot to move to a certain pose, return, click "Save Current Point" The teaching steps of the two points are the same. To verify the save point, press and hold the “Move to this point” button to manually control the robot to move to the teaching point.).

After editing is complete, please note that the program file is saved. Click “Save” in the file option bar as shown in Figure 5-10, and the window shown in Figure 5-11 will pop up. Click on "File Name" and the input keyboard shown in Figure 5-12 will appear. After entering the file name, click "OK". Then go back to the save interface, click "OK", the program file is saved successfully. After the save is successful, as shown in Figure 5-13, the program name in the upper left corner of the program editing interface will be changed.

510 Figure 5- 10 Program editing

511 Figure 5- 11

512 Figure 5- 12 Enter the program name

513 Figure 5- 13 File saved successfully

5.2.5 Program Debugging As shown in Figure 5-14, in addition to the "Next" and "Run" functions provided in the program run control bar, click "Advanced" to enter the more settings interface.

Among them, the "Next" function corresponds to step by step execution of the program, click to run only one step at a time, if you need to continue to run, continue to click "Next." The "Run" function corresponds to automatically running the program once.

In "Advanced ", you can set the number of cycles to run, or you can run in an infinite loop. You can also control whether the program runs in automatic or manual mode. In the automatic mode, you can use "Next", "Run" and cycle operation. In the interface shown in Figure 5-14, select "Manual Run Mode" and then select "Run" or "Infinite Loop" in the loop run. You can enter the running interface in manual operation mode as shown in Figure 5-15.

514 Figure 5- 14 Program debugging

515 Figure 5- 15 Manual mode to debug the program

If you use manual mode to debug the program, you need to keep pressing the "Press Down" button to continue running. If you release the button, the program pauses and presses again to continue.

5.2.6 Save and run the program

If debugging is complete, make sure you have saved the debugged program. After returning to the main menu, select "Run Program". The pop-up window shown in Figure 5-16 will appear. Select the program to complete the debugging and click “OK”.

516 Figure 5- 16 Selection procedure

After selecting the program, it will enter the running program interface as shown in Figure 5-17. In this interface, you can run the program to view the program running information.

If you are sure that the program will continue to run in the near future, you can also select it in the Settings - Default Program. In this way, as long as the system is started, it will automatically jump to the “Run Program” interface. After the power is turned on successfully, click “Run” to run the program.

517 Figure 5- 17 Running programs

results matching ""

    No results matching ""