基于 ROS 实验平台的计算机教学实践

2022-04-29 00:44侯敬熙
计算机应用文摘 2022年11期
关键词:实验平台工业机器人

摘要:在“双高”建设背景下,职业院校通过整合校内专业资源组建专业群来发挥集群发展的优势。计算机专业利用程序开发和软件工具实现对工业机器人的控制,是工业机器人专业群向数字化发展的一个方向。面对专业群课程内容交叉,需要对其进行区分和更新。计算机专业的教学模式需要符合专业人才培养要求,并制定实例化、应用型实验解决方案。文章针对机器人操作系统的程序设计理论与实践要点,介绍了ROS实验平台,以创新计算机专业人才的培养模式,促进专业群协同发展。

关键词:工业机器人;ROS;实验平台

中图法分类号:TP3—4 文献标识码:A

Computer teaching practice based on ROS experimental platform

HOU Jingxi

(Zhongshan No. 1 Vocational and Technical School, Zhongshan, Guangdong 528400, China)

Abstract: Under the background of "double high" construction, vocational colleges have formed professional groups by integrating professional resources within the school to give full play to the advantages of cluster development. The computer major uses program development and software tools to realize the control of industrial robots, which is a direction for the digital development of industrial robot professional groups. Facing the intersection of professional group curriculum content, it needs to be differentiated and updated. The teaching mode of computer major needs to meet the requirements of professional personnel training, and formulate practical and applied experimental solutions. This paper introduces the ROS experimental platform for the theory and practice of programming theory and practice of robot operating system, in order to innovate the training mode of computer professionals and promote the coordinated development of professional groups.

Key words: industrial robot, ROS, experiment platform

1  概述

為应对新经济的挑战,各职业院校开始探索和实施工业机器人专业的人才培养模式,分层次、分专业、分领域开展机器人学科建设,以服务国家战略,满足产业需求。通过调研发现,工业机器人企业对人才岗位的要求是“具有机器人应用系统的设计和开发能力,可胜任系统集成、维护、编程、调试等工作”。从人才需求可见,“工业机器人技术”是一门融合了多门学科知识的交叉学科,综合应用机械、电子、仿生、传感器、计算机硬件和软件等众多前沿科技,单凭在职业院校的短时间学习,是难以培养出知识体系全面的高技能人才的。因此,不少职业院校通过组建专业群,梳理工业机器人教学内容的逻辑关系,按照逻辑主线划分专业领域,如机械、电气、计算机专业分别服务于工业机器人产业链的不同领域。本文对职业院校计算机专业运用专业特点为工业机器人专业群发展提供服务进行了介绍,并提出了教学改革思路。

2  计算机专业在工业机器人专业群中的位置

传统计算机专业的专业课程大致为“操作系统”“程序设计”“网页设计”“网络工程”等,课程总体偏向计算机软件编程,理论内容较为抽象。基于该专业特点,容易出现与学生设想的课程内容有出入的情况,不仅不能让学生深刻体会开设计算机专业课程的意义,并且淡化和降低了学生对计算机专业学习的兴趣,还无法直观、便捷地向非专业群体进行成果演示,更难以取得对等的专业认可。计算机课程既要体现信息技术专业知识的综合应用,又要使得基础理论拥有合理的层次和深度,实训载体还要具有时代性和必要的实物化展示。

随着新一代信息技术的不断发展,机器人工程研究领域已经向网络化、智能化、数据化方向贴近,呈现出“互联网+”工业数字化的特点:以机械专业或电气专业为主,计算机专业为辅;以算法和程序开发为主,使得硬件与软件的联系更加紧密。具体控制层次如图1 所示。

结合职业院校的学制特点,学生一般只有2 ~3 年的在校学习时间,计算机专业学生没有足够的时间学习电子硬件相关课程。计算机课程与机械或电气课程学习可采用隐性学时增长的方式,通过在工作过程系统化的实际场景中,以项目实施的方式进行教学扩展和实验实践,认识电子硬件的基本运行流程。

在教育信息化快速发展背景下,一些实验课程与硬件密切相关的内容还可通过仿真平台的支撑,解决计算机专业学生硬件知识技术不足的问题,实现机器人可视化教学。教学内容可偏向机器人操作系统的使用、工作实例编程调试实现、策略性和技巧性的人工智能编程等,它们与计算机知识体系具有很强的相关性,可为学生后续学习和工作打下基础,从而推进技能训练、提升信息化素养。

3  基于 ROS 实验平台的设计方案

ROS(Robot Operating System )由斯坦福大学的人工智能实验室所研发,是一个分布式模块化的开源框架机器人项目 [1]。ROS 基于 Ubuntu 的 Linux 系统, Linux 系统则是计算机专业操作系统教学内容,以机械模型验证程序运行效果,能更好地解决职业院校计算机专业无法通过实物化进行教学展示的问题。计算机专业学生无须了解硬件抽象原理、底层设备控制过程,只需通过控制进程间消息传递,利用常用工具,编译库函数,编写算法程序,即可将人工智能技术应用于机器人载具。机器人的传感器信息通过插件的形式加入 Gazebo 仿真环境,学生学习并理解仿真模型的制作流程和模型代码,以可视化的方式进行测试。其整体框架如图2 所示。

ROS 使用分布式控制节点实现程序间的通信,节点可在主题中发布话题消息,也可以其他节点进行主题消息的订阅,节点间进行话题消息的传递。

4  基于 ROS 平台的机械臂控制系统案例分析

4.1  仿真环境与建模

通过前期简单的教学,让学生通过学习使用 Gazebo 软件来熟悉三维模型的创建,了解仿真软件的功能。在 Gazebo 软件中,可以添加各类传感器设备和修改对应配置参数的方式来模拟现实环境。在仿真三维建模中,可以采用 XML 和 URDF 的形式进行仿真环境和模型的描述与存储,用于描述机器人的一系列关节与连杆的相对关系、惯性属性、几何特点和碰撞模型的文档。计算机专业学生通过前置课程网页设计,对 HTML 等超文本标记语言较为熟悉,教师可以直接使用标记语言对模型进行设计与开展教学活动。本文对机械臂控制系统进行了介绍,通过ros _ control 控制器实现 ROS 与机械臂模型的关联。ros  control 控制器集成了机械臂常用的关节力矩控制器和关节角度控制器,使用者利用ros_control控制器实现机械臂的操控[2]。

4.2  上位机控制软件

rviz软件是 ROS 自带的图形化工具,可以方便用户通过图形界面开发调试 ROS,从而完成机械臂运动规划和控制等功能。本设计方案以rviz为上位机控制软件,让控制对象发布控制信息,实现对机械臂工作状态的监控。

使用者通过上位机控制软件查询状态、下达指令等。上位机控制软件拥有3 种控制模式:(1)输入末端的坐标位置和末端夹爪的姿态,控制机械臂的末端到达目标位置;(2)控制机械臂的各个关节的运动角度;(3)设置轨迹,让机械臂完成一系列指定动作。

4.3  ROS 分布式节点控制模块

为提高模块的重用率、降低模块的耦合性,本设计方案采用分布式设计架构,上位机软件通过 ROS 分布式控制节点控制机械臂。上位机软件节点采用话题发布与订阅的方式与分布式节点控制模块ur_treatment通信,实现对机械臂的控制。

4.4  机械臂的运动规划

在Gazeb仿真环境中,我们可以对机械臂模型实现路径规划和控制,可使用 API 中的MoveIt的 move_ group 函数控制 ROS 机器人的运动。对 move_ group 函数接口编程,如使用 C++或 Python 编写 API 接口,实现点到点的简单直线运动路径规划,运行界面如图3 所示。授课过程中,学生只需修改MoveIt相关参数来对机器人的运动进行控制,则重培养学生接口调用和应用的能力,同时装配有多种运动辅助插件,提高了程序的可扩展性,减轻了学生因过于拘泥于程序开发而忽视对系统整体的认识。

4.5  系统测试

工程项目的实现效果需要开展测试工作来验证。在机械臂仿真环境中,在上位机软件的输入栏中拖动滑块或输入坐标,即可控制机械臂的末端位置及关节角度。在加载机械臂模型后,通过控制机械臂末端的夹具的位置和开闭状态,可以使机械臂成功夹取置于桌面上的棍条。此外,后续可以结合物联网技术,应用树莓派和 Arduino 等开源硬件来控制摄像头等传感设备,构建与视觉识别相关的实验环境。

5  效果与展望

5.1  ROS 实验平台的使用效果

ROS 实验平台包括上位机软件、ROS 分布式控制节点程序、仿真机械臂。ROS 分布式控制节点程序是 ROS 实验平台的中枢系统,负责将上位机软件控制指令以话题消息的形式发送给仿真机械臂模块。而各硬件和软件系统的构建成本都不高,还可以结合树莓派和 Arduino 等开源硬件替换昂贵的硬件,以降低实训成本、提高硬件兼容性和扩展性。除此之外,ROS 实验平台通过仿真实验验证,适合线上教学场景,方便学生在家中开展项目实训。

基于职业院校的实际情况,ROS 程序设计实验课程涉及的专业知识面较广,主要培养学生掌握机器人操作系统的使用方法和简单编程调试方法,为其今后从事机器人相关工作打下基础,从而提升计算机思维能力、激发学习积极性。对于“学有余力”的学生还可以利用工作室的形式,开展创客项目实训,培养学生创造性思维,促进实验课程的良好有效运行,提高学生学习主动性和效率。ROS 实验平台把原本枯燥、割裂的专业群课程知识有机结合,为计算机专业提供了一个交集互联的展示平台。原来课程和改进课程对比情况如表1 所列。

5.2  工业机器人专业群的展望

工业机器人的发展方兴未艾,传统专业建设已经无法顺应行业的综合性与交叉性发展潮流,专业群建设是产业升级的要求。随着专业群内职业分工界限的拓宽、不同工种的打通,同一产业链中不同岗位的核心能力形成相互交织的核心素养体系。对于计算机专业而言,培养目标向“一专多能”转变,学生必须具备多岗位适应能力。通过信息化手段改造实训环境,将产业链技术全面渗透至课堂教学,让实训基地无限接近真实现场,使教学过程更“接地氣”,也使学生从产业链视角掌握课程内容,提高学生应用计算机技术服务工业机器人产业的能力。

参考文献:

[1] 苏鑫.基于 ROS 的无人帆船自主航行控制系统设计与实现[D].大连:大连海事大学,2020.

[2] 綦慧,周宇,张辰.基于 ROS 和 CAN 协议的机械臂实时通信机制的设计与实现[ J].工业控制计算机,2021,34(8):42?44+47.

作者简介:

侯敬熙(1989—) ,本科,讲师,研究方向:软件开发、网络工程。

猜你喜欢
实验平台工业机器人
云计算在职业院校中的应用与思考
浅谈工业机器人的安全生产
基于力传感器的工业机器人力控试验系统的研制
基于虚拟样机的工业机器人末端液压夹持器的设计
生物医学工程专业创新人才培养策略
工业机器人模拟仿真技术在职业教育中的应用浅析
单片机仿真实验平台的设计分析
工业机器人现场编程工学结合课程开发
基于SolidWorks的工业机器人离线仿真系统分析
基于LabVIEW下嵌入式系统实验平台的设计与实现分析