智能机器人设计与实践
|-- Calibration_Coordinates.txt # 储存机械臂校准坐标的文件
|-- Calibration_Results.npz # 摄像头标定结果参数的文件
|-- Camera_Calibration.py # 摄像头标定的代码文件
|-- Coordinate_Transformation.py # 机械臂的坐标校准与给定坐标准换的代码文件
|-- Goal.cpp # dobot机械臂执行功能指令的代码文件
|-- Main.py # 物块坐标捕获并转换为机械臂坐标并实现功能的代码文件
|-- Target_Coordinates # 内含物块的机械臂坐标与功能标定
|-- run.sh # 起始运行文件
|-- ReadMe.md # 阅读文档
`-- Appendix
|-- test.jpg
|-- Calibration_board.pdf
`-- Coordinate_paper.pdf
1 directory, 12 files
- 基于Systemback制作的配置好此项目的映像链接 - ISO映像文件(默认密码:0)
- 手动配置请于releases中下载dobot_ws.zip与ROS_CV_CODE.zip复制到Ubuntu中并配置好
- 开源协议 - The Apache License 2.0
- 贡献者 - Contribute
- Coordinate_Transformation.py:在摄像头采集图像之后并读取物体中心点坐标,在此程序里进行坐标转换,首先进行坐标映射,转换到坐标纸平面的坐标,最后运用矩阵方程将坐标纸平面坐标换算成机械臂视角的坐标
- Main.py:获取掩膜,对物块进行分析获取物块的位置信息
- 基于OpenCV进行物块坐标捕获并转换为机械臂坐标
- 通过ROS框架,编写Python脚本配合C++语言的Dobot-API
- 实现全部物块执行码垛到指定点、依据物块颜色进行分拣、指定物块移动到指定点的目标功能
△注意:
-
以下步骤均在Ubuntu16.04+ROS Kinetic环境下部署,请配置好dobot环境,开启roscore以及dobot初始化
-
默认运行使用存在的标定文件Calibration_Results.npz,如需要进行重新标定则运行Camera_Calibration.py
提示:
- 将 ROS_CV_CODE 文件夹复制到虚拟机桌面目录下,即:/home/用户名/Desktop/ROS_CV_CODE
- 如遇到 /r 问题请运行命令 dos2unix run.sh 后 dos2unix run.sh 即可
- 在 ROS_CV_CODE 目录下运行终端输入 ./run.sh 命令即可
提示:username 均需要替换成当前使用的用户名
- 将 ROS_CV_CODE 文件夹复制到虚拟机桌面目录下,即:/home/username/Desktop/ROS_CV_CODE
- 修改 Goal.cpp 文件内第159行将 username 修改为你的当前用户名
- 将文件夹内的 Goal.cpp 文件放置到 /home/username/dobot_ws/src/dobot/src/ 并编写 CMakeLists.txt 文件(添加文件配置)
- 在 ***dobot_ws ***目录下进行 catkin_make
- 在 shell 终端运行 python Main.py 命令开始执行程序