Controlling myCobot 320 with MyCobot Controller App



  • Introduction

    Robotic arms are essential tools in modern industry and research fields, with widespread applications in manufacturing, healthcare, agriculture, education, and more. These robotic arms can not only perform precise operations but also work in hazardous environments inaccessible to humans, greatly enhancing work efficiency and safety.However, traditional control methods of robotic arms often require specialized knowledge and complex programming, which to some extent limits their popularization and application. Therefore, the method of controlling robotic arms via mobile apps emerged. The advantage of mobile app control is that it allows non-professionals to conveniently operate robotic arms. Moreover, through the mobile app, users can remotely control the robotic arm, greatly improving the convenience and flexibility of operation.This article aims to delve into the topic of how to use a mobile app to control robotic arms.

    Product

    myCobot 320

    The myCobot 320 is a 6-axis collaborative robotic arm designed for user-oriented programming and development. It has built-in forward and inverse kinematics algorithms, offers an open ROS simulation development environment, and comes equipped with 12 standard 24V industrial IO interfaces, which can be expanded for PLC control programming. The working radius of the myCobot 320 can reach up to 350mm, and the end can bear a maximum load of 1kg.It offers precise positioning repeatability within a range of 0.5mm.
    alt text
    myCobot Controller
    The "myCobot Controller" is an application launched by Elephant Robotics specifically for controlling the myCobot series of robotic arms. This app employs Bluetooth technology, enabling wireless connection between the user's smartphone or tablet and the myCobot robotic arm.
    alt text
    The working principle of the myCobot Controller APP is mainly based on Bluetooth communication technology. After successfully pairing with the myCobot robotic arm via Bluetooth, the app can control various functions of the robotic arm. This method is not only easy to operate, but it also allows for real-time, wireless control, greatly enhancing the flexibility and convenience of operation.

    Steps for APP to control myCobot
    Next, we will introduce how to use this function while operating.

    Install APP

    Currently, the myCobot Controller only supports Android system phones, and IOS system users will need to wait for some time. Clicking connect can directly lead to the download location.Currently, there are two ways to install the app. The first one is to directly search for "myCobot controller" on the Google Play Store for download.The second one is to download the APK directly from the official website to the mobile phone for installation. (You can install it directly after a normal download).
    alt text

    Connect myCobot

    First, we power up the myCobot and select "Transponder".
    alt text
    After entering, we choose the Bluetooth mode, "Bluetooth".
    alt text
    After successful operation, the interface will appear as shown in the following image. The name of the Bluetooth is: mycobot320m5ble, and its MAC address is: 08:3a:f2:42:f0:26 (Each machine is different, which is convenient for distinguishing when two machines are on at the same time). Upon accessing this page, we simply need to wait, as the subsequent steps can be performed on a mobile phone.
    alt text
    Open the downloaded APP, click the Bluetooth icon to connect to myCobot.
    alt text
    Make sure the name of the Bluetooth corresponds to the name of the robotic arm, "mycobot320m5ble". If you are uncertain, you can verify the MAC address due to its uniqueness. If the display is as shown in the following image, the connection is successful.
    alt text

    Robotic arm motion control

    The APP controls the robotic arm using forward and inverse kinematics, mainly in two ways: one is the control of the robotic arm's angle, and the other is the control of the robotic arm's coordinates.

    Joint Control

    Joint control is a control method of the forward kinematics algorithm. Forward kinematics refers to the process of calculating the position and posture of the robot's end effector when the parameters (Joint) of each joint of the robot are known. In other words, the spatial coordinates of the end of the robotic arm can be calculated by rotating the angles.
    alt text
    The Joint (1-6) on both sides can be increased or decreased to control the corresponding myCobot joint angles. The six parameters in the middle TCL part represent the Cartesian coordinate values of the robotic arm's end at this moment.

    Coords Control

    Coordinate control is a control method of the inverse kinematics algorithm. Inverse kinematics refers to the process of calculating the parameters (angles) of each joint of the robot when the coordinate position of the robot's end effector is known. This allows the robot to be moved by adjusting the coordinates of the robot's end, thereby calculating the parameters of the robot's joint angles under the current state.
    alt text
    The buttons on the left are easy to understand, corresponding to the position of the robotic arm's end in space, moving linearly up, down, left, and right. In other words, the end of the robotic arm moves forward, backward, left, right, up, and down in space, mainly in straight line movements. In Cartesian coordinates, 'Rz, Ry, Rx' are usually used to represent rotations around the z-axis, y-axis, and x-axis. These rotations typically follow the right-hand rule, that is, if your right hand's four fingers curl in the direction of rotation, then the direction your thumb points is the direction of the rotation axis.

    Generally speaking:

    ● "rz": rotation around the z-axis. This will cause the end of the robotic arm to rotate within the x-y plane, that is, it will change the yaw angle of the end effector.

    ● "ry": rotation around the y-axis. This will cause the end of the robotic arm to rotate within the z-x plane, that is, it will change the pitch angle of the end effector.

    ● "rx": rotation around the x-axis. This will cause the end of the robotic arm to rotate within the y-z plane, that is, it will change the roll angle of the end effector.

    In simpler terms, it is the robotic arm rotating around the x, y, z axes.

    Operation video

    https://youtu.be/8JBhk55pz8I

    Summary

    Overall, the mobile app control provides a more intuitive and easier-to-understand operating method, allowing non-professionals to quickly get started. In addition, we can remotely control the robotic arm, which makes it possible to operate the robotic arm in some complex or dangerous environments, thus expanding the application scenarios of the robotic arm.

    Currently, the functionality of the app can still be expanded. What features do you think need to be added to the app? Feel free to comment below, let's discuss the optimization of the app's functionality together! If you like this article, likes and comments are the greatest support for us!