Upgrade Your Robot Kit with myCobot 320 AI Kit 2023
Story
Introduction
Perhaps you are already acquainted with our previously launched AI Kit 2023. To meet the demands of our users, we have introduced the myCobot 320 AI Kit 2023. Now, we have extended this successful experience onto myCobot 320, further enhancing the performance and functionality of the robotic arm. This brand new package not only inherits its outstanding performance from its predecessor, but also adds a series of exciting new functions.
In this text, we will delve into the characteristics and advantages of the myCobot 320 AI Kit 2023. We will elaborate on its recognition ability, intelligent planning, and path optimization functions, as well as its self-learning and adaptive features. Moreover, we will explore the package's support for integration and remote control with other intelligent devices, as well as its user-friendly interface and operating methods.
Product
myCobot 320 M5/Pi
The myCobot 320 is an advanced version of the myCobot 280, primarily suitable for makers and researchers, capable of secondary development according to the user's needs, achieving personalized customization. The overall design is exquisitely conceived, with an all-in-one design, exhibiting three major advantages of ease of use, safety, and economy, making it a high cost-effective robotic arm.
The myCobot 320 is primarily divided into two versions, one utilizing the M5Stack as its control core, while the other employs the Raspberry Pi 4B as its control core. The myCobot 320 can bear a maximum load of 1kg, a maximum working radius of 350mm, and a repeat positioning accuracy controlled within a range of 0.5mm. Furthermore, it comes equipped with 12 standard 24V industrial I/O interfaces, allowing for expandable development of PLC control.
SPECIFICATIONS
myCobot 320 AI Kit
The myCobot 320 AI Kit is an updated version based on AI Kit 2023. The myCobot 320 artificial intelligence kit 2023 edition features five visual recognition algorithms, seven application scenarios, two grasping methods, and supports visualization software. Combining positioning and gripping, automatic sorting, and item gripping modules into an entry-level artificial intelligence kit.
I will now introduce the features and advantages of the myCobot 320 AI Kit 2023.
Function introduction
Continuation of the original functionality
The myCobot 320 robotic arm AI Kit is a continuation of the innovative features of the AI Kit 2023, providing users with an exceptional robotic arm experience. Firstly, the myCobot 320 AI Kit 2023 inherits the five recognition algorithms from the AI Kit 2023. It is capable of recognizing various objects and accurately grasping them. Here is a brief overview of the five recognition algorithms.
The five visual algorithms are as follows:
● Shape recognition algorithm
● Feature point recognition algorithm
● AR code recognition algorith
● Color recognition algorithm
● YOLOv5 recognition algorithm
The first four algorithms are based on the OpenCV computer vision open-source library. Have you ever heard of OpenCV? It is an open-source computer vision library that provides many algorithms and tools for processing images and videos. Initially developed by Intel Corporation and released under the BSD license, OpenCV has become a widely used computer vision library that supports various programming languages such as C++, Python, Java, and more. OpenCV can be used for many applications, including image and video processing, face recognition, object detection, machine vision applications, and more. With excellent performance and flexibility, OpenCV is the preferred library for many computer vision applications.
In recent years, algorithms that combine deep learning with machine learning have gained popularity. YOLOv5 is a deep learning-based object detection algorithm, and it belongs to the YOLO (You Only Look Once) series.Its goal is to provide an efficient and accurate object detection algorithm that can be used in real-time applications and trained on large-scale datasets. YOLOv5 can detect different objects in a single image and label them. It can detect multiple objects simultaneously and provide a bounding box for each object in the image, along with the object's class and confidence level.
As shown in the image, YOLOv5 has achieved impressive results through large-scale training of the model.
Novel functionality and innovation
We have augmented the existing foundation by introducing new end-effectors, namely suction pumps and grippers.
myCobot Pro Single-Head Suction Pump
The operational principle of the Single-Head Suction Pump involves using an electric motor to create a vacuum, which leverages the atmospheric pressure to enable the suction cup at the end-effector to securely grasp an object.Compared to the modular suction cups available in the market, this device is significantly smaller in size, making it highly portable.
myCobot Pro adaptive gripper
We have incorporated the myCobot Pro adaptive gripper end-effector into our system, as the newly added intelligent grasping feature necessitates the use of our adaptive gripper.
Intelligent grasping
The intelligent grasping function employs a two-dimensional code affixed to the object to identify and locate its position for grasping. Following this, based on the object's width, the adaptive gripper's grasping range is determined. This function utilizes OpenCV's two-dimensional code recognition to return the object's coordinates for further processing by the robotic arm.
Here is the pseudocode for data processing:
import cv2
import numpy as np
import zbar
scanner = zbar.Scanner()
img = cv2.imread('image.png')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
thresh = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY_INV | cv2.THRESH_OTSU)[1]
results = scanner.scan(thresh)
for result in results:
print('Type: %s, Data: %s' % (result.type, result.data))
contours, hierarchy = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
for cnt in contours:
area = cv2.contourArea(cnt)
perimeter = cv2.arcLength(cnt, True)
if area < 100:
continue
x, y, w, h = cv2.boundingRect(cnt)
cv2.rectangle(img, (x, y), (x + w, y + h), (0, 255, 0), 2)
print('Object width: %d, coordinates: (%d, %d)' % (w, x, y))
cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
GUI Interface
Visual interface
In order to enhance the user's intuitive understanding of the AI toolkit's capabilities, we have developed a visual interface that offers:
● More intuitive interaction
● Improved comprehension of the AI toolkit's functions
● A more user-friendly experience
Introduction to use
To set up the environment for the myCobot 320 AI Kit 2023, which is a program coded in Python, the following compilation environments are required:
● Python
● pymycobot
● OpenCV
● YOLOv5
After the installation of these compilers, download the relevant code for myCobot 320 AI Kit 2023. Note that if you are using a myCobot 320 Pi machine, there is no need to install the compilation environments.
Steps for usage
run main.py
This is our visual interface. Let me introduce the features and how to use them one by one:
Click here to switch the language, which currently supports Simplified Chinese and English.
Select the serial port, baud rate, and device model of the robotic arm, and connect it to the computer.
You can click here to open the camera of the AI Kit, which displays the recognition algorithm and the image captured by the camera.
This feature module is designed for controlling the myCobot 320.
Auto Mode: Click this button to run the entire program automatically.
Homming: Control the robotic arm to return to its initial position, with the camera not capturing the 2D code for localization.
Recognition: Conduct algorithm-based recognition on the image captured by the camera. (The robotic arm will not move during this operation.)
Pick: Command the robotic arm to perform the suction/gripping action. (This operation should be performed in coordination with the recognition function.)
Place: Select one of the four available bins to place the grasped item.
XY Offsets: Fine-tune the location where the end-effector's suction pump/gripper comes into contact with the object. Adjust the horizontal position with 'x' and vertical position with 'y'.
Algorithm Select: Choose different algorithms for recognition, such as feature point recognition. Some algorithms require the addition of images to be recognized in advance, which can be done using the "Add" and "Exit" buttons below.
To successfully run the program, follow these steps:
1. Run 'main.py' to start the program.
2. Select the robotic arm model, serial port, and baud rate to establish the connection.
3. Open the camera.
4. Choose a recognition algorithm.
5. Click 'Auto Mode' to run the AI Kit.
Summary
In this article, we have provided a detailed introduction to the myCobot 320 AI Kit 2023, which is an extension and upgrade of the myCobot 280 AI Kit 2023. This new kit provides users with a more powerful, flexible, and intelligent robotic arm solution. The innovative and powerful intelligent grasping function is an essential part of object positioning and grasping in the field of robotic arms. This beginner-level AI kit provides users with many learning directions where they can acquire knowledge in OpenCV recognition algorithms, Python programming, control principles of robotic arms, forward and inverse kinematics, hand-eye calibration, and end-effector usage, among other introductory principles and functions of robotic arms. With the introduction of the myCobot 320 AI Kit 2023, we believe that this innovative product will bring users more possibilities and opportunities.