0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用 Python 和可视化编程控制树莓派机械臂myCobot

大象机器人科技 来源:大象机器人科技 作者:大象机器人科技 2022-11-30 14:56 次阅读

myCobot 280 Pi 是一款 6 自由度多功能桌面机械臂。它由大象机器人研发,使用 Raspberry Pi 作为主控制器。该机器人结构紧凑,运行稳定,非常适合新手入门。它还可以使用多种语言进行编程,简单易用,功能丰富。适合那些有兴趣学习如何对机械臂进行编程控制和项目开发的人。

myCobot 280 Pi开箱

poYBAGOG_oKABeCsAAf5qTPXGGk851.png

myCobot 280 Pi 机械臂工作半径为 280 毫米,本体重量为 850 克,可处理高达 250 克的有效载荷。它由 6 个伺服电机驱动,每个自由度一个,配备矩阵5×5 LED 显示屏,末端 Lego接口可接各种传感器

pYYBAGOG_oOADCuGAAIwUIU6Ef4353.png

MyCobot 280 采用树莓派微处理器,可以搭配任意摄像头进行图像识别,具有4个 USB 端口,可以通过 Raspberry Pi 的微型 HDMI 端口连接到显示器. 最后,40 个GPIO 接头可以进行更多扩展应用,机械臂每个接口都有清晰的标记,面板上还有一个电源开关和一个直流电源插孔。

poYBAGOG_oSAbLg3AAgZUbJEiwo917.png

MicroSD 卡插槽位于 MyCobot 280 Pi 机械臂下方。

pYYBAGOG_oaATDVxAAfJWBEoZaQ445.png

包装中还有一个100-240V~50/60Hz 1.2A 电源线,具有 8-12V输出高达 5A(42 瓦)。

poYBAGOG_oeASLkvABFT6CPxWjw889.png

myCobot 套装中的其他配件包括:

myCobot-平面底座

4 个硅胶吸盘,确保底座牢固地固定在桌面上

myCobot 摄像头

myCobot 吸泵

各种连接线

乐高连接件

pYYBAGOG_omAV0t-AA4HoZG2UO8274.png

如何将机械臂连接到平面底座上

poYBAGOG_oqAX5gCAA_zWP9Mnoo243.png

组装很简单。只需将吸盘插入四个角的安装孔中,然后用塑料螺丝头固定即可。

pYYBAGOG_oyAHOtsAA9UP7Qe1c4356.png

这是完成后的样子。

pYYBAGOG_o2AdgcXABBYnlT2ACs654.png

提供的乐高连接件,让您可以轻松地将底座连接到 myCobot 280 Pi 机械臂。

poYBAGOG_o2AJoqXAAV25CzOb_Q500.png

根据需要在安装板插槽中插入一些乐高连接件。

pYYBAGOG_o-AYa9VAA2HsNINqrs893.png

最后,将 myCobot 280 Pi 机械臂放在底座顶部,确保其与螺纹和乐高连接件对齐。您现在可以将机器人放在地板或桌子上,并用力拧紧吸盘,以确保机械臂的底座在操作过程中不会移动。最好将它放在光滑的表面上,例如玻璃或大理石。

poYBAGOG_pCAbBWEAA3Cmko0Iwc879.png

操作系统

myCobot 280 Pi 附带 Ubuntu Linux 操作系统,可以使用 myBlockly 可视化编程或者Python 进行编程。

poYBAGOG_pGAOSWmAAOj3n1SmiA165.png

Python

myCobot 280 Pi 可使用 Python 编程,增加了使用摄像头检测物体的能力,并支持用于人工智能、图像处理和机器学习的 OpenCV 库。

pYYBAGOG_pKAFGn1AAPYd6UFgFk022.png

ROS

机器人操作系统(ROS)依靠Rviz 模拟机械臂的运动,通过ROS远程控制机械臂。

poYBAGOG_pOAMgGnAAUR60-S3sk820.png

使用 MyBlockly 对 MyCobot 280 Pi 机械臂进行编程

MyBlockly 是一个完全可视化的模块化编程软件,用户可以通过拖曳模块,来构建代码逻辑,过程很像搭积木,而不是手动编写基于文本的代码。如此一来,复杂又抽象的编程语言就变得容易理解。这些模块包括逻辑、循环、数学、文本、列表、颜色、变量、函数以及控制机械臂的函数等等,所以用户可以轻松入门编程,只需单击右上角的运行就可以启动程序,做一些有趣的应用。

pYYBAGOG_pWAWiLzAAR9FChyO1Y865.png

MyBlockly 中的时间

操作机械臂运动的程序是需要时间来完成的,所以在一个动作之后需要接上一个睡眠模块,给机械臂运动的时间再进行下一个运动。睡眠模块允许您以秒为单位添加延迟。

poYBAGOG_pWAa8R3AABg-aWGDjU741.png

树莓派-GPIO

这组模块控制 GPIO(通用输入/输出)。它用于在输出模式下将任何 Raspberry Pi GPIO 引脚设置为高电平或低电平或将它们配置为输入。

pYYBAGOG_peAU79YAACA6oiH84E054.png

ATOM IO

这模块控制着机械臂末端的 5×5 LED 矩阵。您可以更改每个 LED 的 RGB 数据(红色、蓝色、绿色)的值,也可以使用 PWM 控制。

poYBAGOG_peAXQAnAAC4qd5wwoY766.png

LED 的颜色将根据我们输入的数据而变化。

pYYBAGOG_pqAVYKIAAc8p0pRLZE861.png

状态

一组针对于 MyCobot 280 Pi机械臂的模块,主要用于打开或关闭机械臂电源、检查工作状态以及释放所有伺服系统。

poYBAGOG_pqAHXV6AABocwXuAgQ164.png

MDI运行和操作

这些模块控制机械臂在每个轴上的运动程度。可以同时输入数据,包括速度控制,或者如果您愿意,可以使用协调模式。这使得对机械臂进行编程非常容易。

pYYBAGOG_puAW9-8AAE4BlHceHk793.png

点动控制

控制机械臂在每个轴上的移动程度。

poYBAGOG_puAIAn-AADVsdf-h30702.png

运行状态和设置

pYYBAGOG_pyAGBhFAACbbH3OAP8322.png

可以设置机械臂的速度,查询当前速度,以及特定关节的最小和最大角度。

找到机械臂在每个轴上的角度

我们可以通过从程序中读取值来找到每个轴的角度。这个功能有助于减少通过单击右上角来查找角度的时间。

pYYBAGOG_p2Adns7AAVy5OAkwQM427.png

将弹出一个窗口。我们可以手动调整机械臂的角度,点击Read Angles读取角度按钮。这些值将自动输入到“设置角度”模块中。

poYBAGOG_p6AcFqyAAW8C7KAOH8553.png

MyCobot 280 Pi 精度测试

我们测试了 myCobot 280 Pi 机械臂的运动精度,测量精度为 +/– 0.5。在测试中,将画出5种不同颜色的圆圈,同时更改机械臂末端 LED 矩阵显示屏以匹配该颜色圆圈,如下面的视频所示。

https://www.bilibili.com/video/BV1JP4y197ZY/?spm_id_from=333.999.0.0&vd_source=bb3d7739950ffca01b2e2089b2a5c22a

myCobot 吸泵

吸附物体使用,可以通过吸力提升和移动物体,从而增强 myCobot 280 Pi 机械臂的拓展能力。使用 吸泵举起的物体的最大重量为 250 克。

吸泵亮点

功能——吸住物体以提起和移动它们

被提升物体的最大重量 – 250 克

材料 – 光聚合物/尼龙

颜色-白色

尺寸 – 94 x 74 x 51 毫米

重量 – 220 克

pYYBAGOG_p-AOX-IAA6CUNiuH2U762.png

将吸泵安装到 myCobot 280 Pi

吸泵,通过吸泵控制套件作为机械臂的末端执行器,执行吸附物体的功能,吸泵提供乐高连接件插入的孔位,接上末端ATOM

poYBAGOG_qGAT3KiAAlkpeplKI0474.png

poYBAGOG_qKAfObJAAtna5xRkz0401.png

将吸泵盒连接到机械臂底座IO接口

我们仍然需要将吸泵盒连接到机械臂底部接口。可以通过将四根杜邦线连接到 Raspberry Pi的 GPIO 接头连接器来完成:5V、GND、G2 (GPIO21)、G5 和 (GPIO22)。

pYYBAGOG_qSAbfe2AAaIDMTUCL4652.png

我们将使用插入 GPIO 接头的公杜邦电缆,即 5V、GND、G2 连接到 GPIO21,G5 连接到 GPIO22。

pYYBAGOG_qWAAvNdAAsl0cVl8wg550.png

将 myCobot 吸泵与 myBlockly 结合使用

让我们进入 Raspi-GPIO 菜单,并选择“Set Mode BCM”模块以使用 Set pin 命令模块将引脚 20 和 21 作为输出 (OUT)。

两组模块用于控制 myCobot吸泵

为了使吸泵工作,我们将引脚 20 和 21 设置为高电平

为了阻止它,我们将引脚 20 和 21设置为低电平。

这就是启用和禁用 myCobot吸泵 所需的全部内容。

poYBAGOG_qaAImGNAAa0pXdACFs717.png

吸泵升降复位测试

我们通过将特定颜色的积木块移动到相同颜色的填充圆来测试机械臂与吸泵同时工作的状态。我们已经注意到,如果物体很重,则需要一段时间才能吸住物体,如果物体很轻,则需要一些时间才能将其释放。但是从下面的测试视频中可以看出,机械臂和吸泵可以非常准确地工作。

https://www.bilibili.com/video/BV1g8411j7k9/?spm_id_from=333.999.0.0

MyCobot 280 摄像头

该摄像头重量轻,可以在几分钟内轻松安装到机械臂上。它基本上是即插即用的,紧凑的设计意味着您不必担心它会占用太多空间。USB 2.0彩色摄像头最高支持720p高清分辨率,色彩广角,适用于人脸识别、智慧屏、智能快递、自动售货机、条码/二维码扫描、门禁、医疗设备等。

poYBAGOG_qeAG03bAAxwnoD-UbQ149.png

pYYBAGOG_qiAGxIBAARd4OHcDi8484.png

将 myCobot 吸泵和 摄像头安装到 myCobot 280 Pi

我们现在将 MyCobot 280摄像头连接到 myCobot 吸泵,方法是首先将乐高连接器插入吸泵……

poYBAGOG_qmAbQ6nAAkraFFY9I8507.png

在将其插入相机之前,我们将向其添加更多 LEGO 连接器

pYYBAGOG_qqAWrzPAAfaXsZ7tng583.png

以便将其安装在 MyCobot 280 Pi 机械臂上。

poYBAGOG_qyAM--BAAnApVzQ5s0447.png

完美安装!非常简单。

pYYBAGOG_q2AQxs5AAiHkXFLA-A320.png

使用 pip 安装 OpenCV 和 Numpy

我们需要安装库,即 OpenCV 和 Numpy,以便在机器人上运行图像处理工作负载。我们可以通过机器人操作系统中的终端安装它们。

OpenCV是一个流行的基本图像处理库,例如模糊、混合、增强图像质量、提高视频质量、图像识别、图像和视频中的人脸检测,以及我们将在本项目/评论中使用的颜色识别.

1 pip install opencv-python

Numpy是一个 Python 扩展模块,具有通常用于数据集(数组)和矩阵操作的数学函数。

1 pip install numpy

图像阈值

阈值处理是将对象与背景图像分离的技术之一。这是通过获取灰度图像并将其转换为像素值为 0(黑色)或 255(同时)的二值图像来工作的,并使用用于将图像的每个像素分类为黑色或白色的恒定阈值。我在 VSCode 中编写了一个 Python 程序,可以检测具有 3 种不同颜色的对象。程序的下一步将首先尝试使用相机输入找到红色物体。为红色定义了以下下限和上限范围:lowerR = np.array([142, 114, 181]) 和 upperR = np.array([194, 255, 255])

poYBAGOG_q6AZopyAAnyqMwy4uc494.png

对于蓝色对象,我们将使用以下值:lowerB = np.array([83, 228, 206]) 和 upperB = np.array([106, 255, 255])

pYYBAGOG_rCAd3iAAAoMqSKm7XA216.png

最后,这里是绿色对象的值: lowerG = np.array([54, 82, 228]) upperG = np.array([81, 255, 255])

poYBAGOG_rGANxZ0AAolpMctuXg746.png

Python 中的阈值示例代码

导入了两个模块:cv2 用于处理图像,numpy 用于处理数组和矩阵。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import cv2
import numpy as np
def nothing(x):
pass
cv2.namedWindow("Tracking")
cv2.createTrackbar("LH", "Tracking", 0, 255, nothing)
cv2.createTrackbar("LS", "Tracking", 0, 255, nothing)
cv2.createTrackbar("LV", "Tracking", 0, 255, nothing)
cv2.createTrackbar("UH", "Tracking", 255, 255, nothing)
cv2.createTrackbar("US", "Tracking", 255, 255, nothing)
cv2.createTrackbar("UV", "Tracking", 255, 255, nothing)
vs = cv2.VideoCapture(0)
while True:
_, frame = vs.read()
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
l_h = cv2.getTrackbarPos("LH", "Tracking")
l_s = cv2.getTrackbarPos("LS", "Tracking")
l_v = cv2.getTrackbarPos("LV", "Tracking")
u_h = cv2.getTrackbarPos("UH", "Tracking")
u_s = cv2.getTrackbarPos("US", "Tracking")
u_v = cv2.getTrackbarPos("UV", "Tracking")
l_b = np.array([l_h, l_s, l_v])
u_b = np.array([u_h, u_s, u_v])
mask = cv2.inRange(hsv, l_b, u_b)
res = cv2.bitwise_and(frame, frame, mask=mask)
cv2.imshow("frame", frame)
cv2.imshow("mask", mask)
cv2.imshow("res", res)
key = cv2.waitKey(1)
if key == 27:
break
cv2.destroyAllWindows()

使用带有传送带的 myCobot 280 Pi 对物体进行分类(颜色分类)

我们将使 myCobot 280 Pi 机械臂与传送带一起工作,以对不同颜色的物体进行分类。该项目由两部分组成:

传送带依靠 Arduino 板来控制其电机,程序/草图检查传感器的状况以根据传送带位置测量物体的停止距离。

myCobot 280 Pi 使用图像阈值检测颜色,并使用吸泵选择红色、蓝色或绿色对象并将其移动到相同颜色的桶中。设置了四个位置:

1、红框位置

2、蓝框位置

3、绿框位置

4、在方便 myCobot 280 Pi 的位置检测彩色物体的初始位置。我们可以将机械臂移动到那个位置,从Serial Monitor中读取数值,并将得到的数值放入程序中,这是一个很好的寻找不同位置的点

pYYBAGOG_rKAN4xLAAW1PjWmnro280.png

myCobot 280 Pi 颜色识别示例代码

调用库MyCobot来控制机械臂,库RPi.GPIO用于启用/禁用吸泵,cv2库用于操作图像,numpy用于操作数组和矩阵。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
from pymycobot.mycobot import MyCobot
from pymycobot import PI_BAUD, PI_PORT
import RPi.GPIO as GPIO
import numpy as np
import time
import cv2
GPIO.setmode(GPIO.BCM)
GPIO.setup(20, GPIO.OUT)
GPIO.setup(21, GPIO.OUT)
vs = cv2.VideoCapture(0)
print("Camera On: {}".format(vs.isOpened()))
lR = np.array([142, 114, 181])
uR = np.array([194, 255, 255])
lG = np.array([54, 82, 228])
uG = np.array([81, 255, 255])
lB = np.array([83, 228, 206])
uB = np.array([106, 255, 255])
def pump(state):
if state == 1: #On
print('Pump on')
GPIO.output(20, 0)
GPIO.output(21, 0)
elif state == 0: #Off
print('Pump off')
GPIO.output(20, 1)
GPIO.output(21, 1)
def findContour(mask):
minArea = 10000
found = False
x, y, w, h = 0, 0, 0, 0
contours, hierarchy = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
for pic, contour in enumerate(contours):
area = cv2.contourArea(contour)
if area >= minArea:
x, y, w, h = cv2.boundingRect(contour)
found = True
break
return x, y, w, h, found
camera = [7.82, -15.82, -110.12, 37.7, -19.59, -123.04]
preTrash = [29.0, -4.21, -78.75, -1.75, -23.2, -150.46]
trashAngle, comebackAngle = [], []
pickup = [
[33.92, -5.53, -117.94, 39.63, -21.79, -133.5],
[32.69, -17.57, -121.46, 52.73, -20.83, -123.31]
]
trashR = [-79.27, -16.25, -85.95, 16.78, -15.11, -139.83]
trashG = [-37.0, -35.41, -55.01, 13.44, -15.73, -136.66]
trashB = [-55.72, -17.4, -78.83, 15.55, -12.04, -134.56]
comebackR = [-75.93, -17.49, -57.04, -9.58, -21.0, -136.93]
comebackB = [-51.85, -17.22, -60.29, -0.26, -20.3, -136.93]
comebackG = [-35.77, -31.02, -41.3, -3.69, -19.95, -164.44]
mc = MyCobot("/dev/ttyAMA0", 1000000)
pump(0)
time.sleep(1)
while True:
try:
mc.set_color(255, 255, 255)
mc.send_angles(camera, 40)
time.sleep(2)
dR, dG, dB = False, False, False
while True:
# Clearing buffer
for i in range(30):
_, frame = vs.read()
_, frame = vs.read()
#cv2.imwrite("a.jpg", frame)
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
maskR = cv2.inRange(hsv, lR, uR)
maskG = cv2.inRange(hsv, lG, uG)
maskB = cv2.inRange(hsv, lB, uB)
xr, yr, wr, hr, dR = findContour(maskR)
xg, yg, wg, hg, dG = findContour(maskG)
xb, yb, wb, hb, dB = findContour(maskB)
if dR:
trashAngle = trashR
comebackAngle = comebackR
mc.set_color(255, 0, 0)
print("Detected Red Block")
cv2.rectangle(frame, (xr, yr), (xr+wr, yr+hr), (0, 0, 0), 2)
elif dG:
trashAngle = trashG
comebackAngle = comebackG
mc.set_color(0, 255, 0)
print("Detected Green Block")
cv2.rectangle(frame, (xg, yg), (xg+wg, yg+hg), (0, 0, 0), 2)
elif dB:
trashAngle = trashB
comebackAngle = comebackB
mc.set_color(0, 0, 255)
print("Detected Blue Block")
cv2.rectangle(frame, (xb, yb), (xb+wb, yb+hb), (0, 0, 0), 2)
cv2.imshow("frame", frame)
cv2.waitKey(1)
if dR or dG or dB:
break
for angle in pickup:
mc.send_angles(angle, 40)
time.sleep(1.5)
pump(1)
time.sleep(1)
mc.send_angles(preTrash, 40)
time.sleep(1)
mc.send_angles(trashAngle, 40)
time.sleep(3)
pump(0)
time.sleep(3.5)
mc.send_angles(comebackAngle, 40)
time.sleep(1.5)
except KeyboardInterrupt:
break
pump(0)
time.sleep(1)
mc.send_angles(pickup[1], 40)
time.sleep(3)
mc.release_all_servos()
GPIO.cleanup()
vs.release()
cv2.destroyAllWindows()
time.sleep(1)

myCobot 280 Pi 具有很多功能。它适合机器人教育的初学者,起价为5999元,可用于从高中到大学的教学。myCobot 280 Pi 机械臂也是学习工业机器人入门首选。正如您将从我们上面的示例中看到的那样,编写程序来读取手臂的角度非常容易,它还可以用于研究正向和逆向运动学来控制机器人。

审核编辑黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    211

    文章

    28366

    浏览量

    206888
  • python
    +关注

    关注

    56

    文章

    4792

    浏览量

    84616
  • 机械臂
    +关注

    关注

    12

    文章

    513

    浏览量

    24545
  • 树莓派
    +关注

    关注

    116

    文章

    1705

    浏览量

    105599
收藏 人收藏

    评论

    相关推荐

    什么是大屏数据可视化?特点有哪些?

    大屏数据可视化是指通过大屏幕展示大量数据和信息,以直观、可视化的方式帮助用户理解和分析数据。这种展示方式通常用于展示复杂的数据集、实时监控系统、企业管理仪表盘等。以下是关于 大屏数据可视化 的详细
    的头像 发表于 12-16 16:59 91次阅读

    智慧能源可视化监管平台——助力可视化能源数据管理

    博达可视化大屏设计平台在智慧能源领域的价值体现在实时监控、数据可视化、决策支持和效率提升等方面。借助该平台,企业可以轻松搭建智慧能源类可视化大屏,更加精确和高效地管理生产和生活,实现能源的可持续发展。
    的头像 发表于 11-29 10:00 243次阅读
    智慧能源<b class='flag-5'>可视化</b>监管平台——助力<b class='flag-5'>可视化</b>能源数据管理

    使用树莓实现远程控制的技巧

    树莓是一款功能强大的微型计算机,其体积小巧、价格低廉,非常适合用于各种DIY项目。其中,远程控制树莓应用中非常受欢迎的一个领域。通过远
    的头像 发表于 11-11 11:37 416次阅读

    树莓开发的最佳编程语言选择

    树莓(Raspberry Pi)是一款由英国树莓基金会开发的信用卡大小的单板计算机,它以其低成本、易于编程和灵活性而受到广泛欢迎。
    的头像 发表于 11-11 11:34 403次阅读

    树莓gpio有什么用,树莓gpio接口及编程方法

    /Output,通用输入/输出)是树莓提供的一组可编程的引脚,是树莓与外部世界进行交互的重要桥梁。通过GPIO,用户可以
    的头像 发表于 10-22 18:09 741次阅读

    什么是树莓树莓是什么架构的

    什么是树莓 树莓(Raspberry Pi,简写为RPi,别名为RasPi/RPI)是由英国“Raspberry Pi 慈善基金会”开发的一款为学习计算机
    的头像 发表于 10-22 17:33 739次阅读

    树莓和单片机的优缺点是什么

    )接口,树莓可以连接各种传感器、执行器和其他外围设备。 易于编程树莓支持多种编程语言,如
    的头像 发表于 08-30 18:21 1592次阅读

    树莓的功能用途是什么

    、科研、工业控制、物联网、多媒体播放、家庭自动等领域。 树莓(Raspberry Pi)是一种小型、低成本的单板计算机,由英国的Raspberry Pi基金会开发,其功能和用途非常
    的头像 发表于 08-30 18:01 2502次阅读

    如何实现园区大屏可视化

    孪生可视化 构建平台利用Web三维可视化技术对现实场景进行仿真,实现园区级业务场景 的可视化呈现,助力企业快速完成项目的实施。实现园区场景立体可先,极致可视。那么,今天古河云科技就来给
    的头像 发表于 06-19 15:39 406次阅读
    如何实现园区大屏<b class='flag-5'>可视化</b>?

    上位机可视化界面编程软件有哪些

    。以下是一些常见的上位机可视化界面编程软件: Qt (跨平台C++框架) 介绍 :Qt是一个跨平台的C++图形用户界面应用程序框架。它提供了一系列丰富的控件和工具,支持多种编程语言,包括C++、
    的头像 发表于 06-06 10:48 2424次阅读

    大屏数据可视化的作用和意义

    大屏数据可视化是指利用大屏幕设备展示数据信息,通过图表、图像、动画等视觉手段将数据呈现出来,以便用户能够直观、清晰地理解数据背后的含义和关联。在信息化时代,数据已经成为企业决策和运营的重要依托,而
    的头像 发表于 06-03 17:56 659次阅读

    大象机器人开源协作机械myCobot 630 全面升级!

    1. 开篇概述 在快速发展的机器人技术领域中,Elephant Robotics的myCobot 600已经证明了其在教育、科研和轻工业领域的显著适用性。作为一款具备六自由度的机械myCo
    的头像 发表于 04-28 15:19 980次阅读
    大象机器人开源协作<b class='flag-5'>机械</b><b class='flag-5'>臂</b><b class='flag-5'>myCobot</b> 630 全面升级!

    FUXA基于Web的过程可视化软件案例

    FUXA——基于Web的过程可视化软件
    发表于 04-24 18:32 2次下载

    态势数据可视化技术有哪些

    智慧华盛恒辉态势数据可视化技术是一种将复杂、动态的态势数据以直观、易于理解的方式展现出来的技术手段。以下是几种主要的态势数据可视化技术: 网络安全态势指标可视化分析系统及方法,针对安全态势指标不准
    的头像 发表于 04-22 15:17 397次阅读

    自然语言控制机械:ChatGPT与机器人技术的融合创新(下)

    引言 在我们的上一篇文章中,我们探索了如何将ChatGPT集成到myCobot 280机械臂中,实现了一个通过自然语言控制机械的系统。我们
    的头像 发表于 04-11 15:54 873次阅读
    自然语言<b class='flag-5'>控制</b><b class='flag-5'>机械</b><b class='flag-5'>臂</b>:ChatGPT与机器人技术的融合创新(下)