使用 Qt 开发一个用户交互界面,实现机器人程序的图形化编程。请应试人员尽可能完成“要求”中所描述的功能,并实现“模拟场景”。 注意,只需要完成图形化部分,不需要进行后台逻辑、功能的实现。
-
机器人的“行为单元”,即机器人的基础行为,应表现为“块状图形”。
-
需要实现3个“行为单元”,包括:1. 运动(move),2. 抓取(grasp),3. 检测。*“行为单元“的行为不需要实现。*各个行为应可以编辑各自的属性:
- 运动
- 运动方式:自由运动,直线运动,曲线运动
- 设置:运动目标位置
- 抓取
- 打开夹爪
- 关闭夹爪
- 检测
- 检测方式:RGB 检测,深度信息检测
- 设置:检测目标
- 运动
-
机器人程序的编辑:
- 在“程序编辑区域”,应能够对“行为单元” 进行拖拉放置
- “行为单元”之间应可以通过有向线段进行连接
- 程序应能够表现以下逻辑:1. 顺序, 2. 条件判断,3. 循环
- 程序应有明确的入口(开始)和出口(结束)
能够通过图形化编程表达以下行为序列:
- 机器人初始位置为P0;
- 直线运动到 P1;
- 进行检测,检测方式为“RGB 检测”,检测目标为“苹果”;
- 如果检测到苹果,并返回位置 P2:
- 机器人打开夹爪;
- 机器人自主运动到 P2;
- 机器人关闭夹爪;
- 机器人曲线运动到 P0;
- 结束。
- 如果没有检测到苹果:
- 机器人曲线运动到 P0;
- 结束。
- 如果检测到苹果,并返回位置 P2:
- 使用 Qt 进行开发,建议使用较新的 Qt 版本,如 Qt 5.9.1
- 能够在 Ubuntu 16.04 编译通过并运行