type
status
date
slug
summary
tags
category
icon
password
comment
😀
是次非常难得的经历,不仅让我熟悉了linux系统,而且对ros2系统以及对实体机器人的开发有了一定了解,为了方便,我直接将最后要集成时候写的说明文档展示一下了 目前奖项:“新大陆杯”江苏省大学生计算机设计大赛二等奖(人工智能-智慧物流)
 

机械臂使用说明

文件名是magician_ros2_control_system_ws

机械臂服务端启动(必须!)

注意事项

1.连接机械臂的USB接口要连接小车下方的USB口
2.连接摄像头的USB要先将扩展坞连接在小车上方USB口,之后再将摄像头的USB连接在扩展坞上
3.一开始要将机械臂放置在小车左侧面(可能),经过测试发现机械臂移动函数要传递的参数要根据机械臂初始位置调整,初始位置不同相应的参数也不同。
也想过初始化,即homing,但是初始化完似乎会出现各种问题,所以在没有调整自带的homing函数的时候,一定不要启动复位程序
即以下这条语句,一定不要执行!!!
4.参数可以根据实际情况灵活调整,注意,x,y,z三个参数会互相影响,机械臂的移动范围是一个球形。参数的选择可以使用官网的dobotstudio,注意不是pro版本,可以在这个软件里实时查看机械臂当前位姿的xyz参数
笛卡尔坐标系如下:
notion image
5.目前采用的参数:
self.move_to_position(x, y, z, speed)
x
y
z
小车左侧方
0.0512
110.6009
39.9492
第一个快件放置在小车上的位置
100.3873
-30.0543
30.972
第二个快件放置在小车上的位置
100.3873
30.0543
30.972
6.如果机械臂遇到突然断电情况,此后重启服务端的时候若遇到问题,重启大多时候能解决

dobot_automation模块

集成时可以直接调用pick_1() pick_2() down_1() down_2()函数

execute()函数

用来测试
此函数是用来封装拾取(即从货架上拾取快件)和放置(即投递到相应位置)的过程
原理:依次调用pick_1() pick_2() down_1() down_2()一次完成两个快件的投递任务

pick_1 () 函数

拾取第一个快件并放置到小车上
原理:1.将机械臂移至侧边
2.使用摄像头传来的修正坐标将机械臂移至快件上方
3.开启吸盘
4.机械臂移至第一个快件放置的位置上方
5.吸盘关闭

down_1 () 函数

将第一个快件投递到指定盒子
原理:1.机械臂移至第一个快件上方
2.将机械臂往下压,确保触碰到快件
3.开启吸盘
4.机械臂移至侧边并关闭吸盘完成投递

传入摄像头修正参数

此模块导入形式如下
此文件现在没有提供现成的可调用的生成修正后xyz参数的函数,可以添加此函数之后直接调用,传到pick()函数的xyz中
我觉得这个文件就只用实现识别快件位置并生成机械臂修正后的xyz坐标就好,移动功能由dobot_automation负责
数学建模经历校园音乐运动集市
Loading...