ROS机器人操作系统教学与应用的思考

首先,非常感谢睿慕课提供这样一个宝贵的机会(大会相关报道:19日20日,讲稿内容是关于我们如何利用互联网、大数据并结合学生认知规律等认真上好一门机器人课程的故事。大会视频介绍链接,具体内容如下:

01->我们讲稿和其他嘉宾差异较大,并没有前沿知识和技术创新等,主要是关于如何在教育上应用这些创新的案例。受刘博委托介绍一下从事ROS机器人教育的一些工作。其实我的内心是非常惶恐的,因为自己的工作并不多,很多也在尝试之中,只能算是心得体会的交流,错误之处还望各位嘉宾多多指正。这里想先说明一下自己理解的教育,其实并不是直接进行技术创新的领域,是应用技术创新的领域。


02->以上是讲稿的四个主要部分,首先简单介绍一下ROS,为什么选择ROS作为机器人教育的一个载体,第二个是易科在线上和线下参与的一些ROS活动经验、启发和相关数据分享,然后介绍一下自己在高校机器人教学中的一些探索和尝试,最后是总结和展望。


03->首先我们来看一下ROS,涉及机器人控制、算法、仿真等多个方面,能将机器人理论、编程、仿真和实践进行有机的融合(在ROS下整合在一起,而不是简单的组合),这是我们选择ROS的一个重要原因。


04->


05->


06->截止到2017年,全球共有超过2800开发人员参与其中,贡献了累计450万行的核心代码并开源。


07->


08->ROS1没有完全独立于操作系统。系统、软件包、网络、ROS和外设之间的关系。依据这些关联性和内在联系,开设四门机器人课程,并将ROS应用到课程的实践环节。机器人系统设计与控制技术,主要讲述机器人基本设计方法和理论,并介绍ROS基础;机器人感知与信息融合技术,主要讲述机器人所用的传感器和相关滤波算法,并用ROS演示如何连接这些传感器,并应用这些算法等;人机智能交互技术,主要讲述常见的人机交互模式,如图形化界面、语音识别、物体识别、环境建模理解、手势交互等,并使用ROS进行实践环节讲解;智能机器人综合实训,将上述专题知识点进行重新梳理整合,加强学生的应用能力。四门课程独立性、相关性、层次性分明,设计机器人和ROS多个方面,便于学生理解课程设置的内在联系(即学习这些课程的意义),知识迁徙和技能训练并重。


09->(信息技术不断更新和发展,知识时效性的问题开始凸显,课程需要紧密结合前沿)上图所示是ROS 2与ROS 1整体架构的对比: ROS 1主要支持Ubuntu。ROS 2底层基于DDS通信机制,支持实时性、嵌入式、分布式、多操作系统,包括Linux、windows、Mac、RTOS等。 ROS 1的通讯使用TCPROS/UDPROS,依赖master,而ROS 2的通讯系统是基于DDS,无master,同时在ROS2内部提供了DDS的抽象层实现,有了这个抽象层,用户就可以不去关注底层的DDS使用了哪个商家的API。 ROS 2目前已经在Ubuntu Xenial、OS X El Capitan以及Windows 10上进行了测试和支持,并已经发布了第一个正式版。(培养学生对比学习的技能)


10->引导学生注意差异性,思考为什么做了这些改进。


11->大量的机器人提供了ROS接口或者直接使用ROS,应用广泛,通用性强。


12->在基本了解ROS后,简单介绍ROS教研体系,分为职业和高校两部分,我们并不是单纯介绍推广ROS,在职业培训中在ROS中补充机器人知识,在高校教学中在机器人理论中补充一些ROS实践内容,针对不同的培训人员,设置个性化培训方案。


13->创始人简介


14->这些是一些网络资源,在不断的优化改进,一开始博文、视频、然后有镜像,再到在线学习实践的平台,目标是不断降低学习的门槛,后面会具体介绍。从单一资料视频分享,到镜像分享,然后发现一些问题,针对问题进行完善,现在通过一个网页就可以轻松学习ROS。发布不到半年时间已经有3000+用户,反馈非常多的问题,有很多宝贵的经验,展开讲解。


15->深圳创想未来机器人有限公司的高校课程方案,特色是在实践中学习。


16->公开课--差异性


17->公开课--层次性


18->虽然翻译了很多书籍,但是我们依然推荐大家直接阅读英文资料,这些工作只是为了帮助降低ROS的学习门槛。


19->工作两年,利用业余时间去过多地,主要观察机器人兴趣班开设情况、机器人企业用人需求、高校机器人教学交流,发现不同城市在机器人教育,包括高校和中小学,差异是非常巨大的。

课程数据来自实验楼。这里要讲一个非常重要的问题,学生的“向前走”和老师的“回头看”,通俗而言,学生学习的知识是全新的,而老师是在掌握知识全部的基础上,进行梳理讲解,这个过程在心理认知上属于不同的阶段。老师依据自己的理解把握重难点和每个知识点的讲解时间,是不符合学生学习时,感受的知识重难点、知识点消化时间也不同。传统的博客视频等方式无法获取到学生有效学习的时间,目前依据学生的完成率和有效学习时间,可以准确预估学生在每个知识点上所用的时间,更好的改进教学时间的分配,如果只用到这么一个功能那就太过肤浅了。下面再举一个重要的例子,通常在教学中有一类学生最容易被忽视,就是学习时间长,但是学习效果一般的,但是如果用数据就非常明显(有效学习时间长、完成度一般),这些学生通常比较内向,不多交流,有问题自己苦苦思索,应用这些数据,主动去关心和帮助这些学生,去让他们更好更快的成长。课程问答也能够很好的了解学生感兴趣的问题和学生视角的重难点。


20->总结一下,上面就是我们所做的一些工作的介绍和经验。我们一直致力于做深入浅出入门轻松新颖有趣启发性强的机器人课程。


21->让教室变成实验室,让理论贴近生活。知识迁移思维训练并重的课程教学模式,展开教学设计。
如何将鲜活的知识与严密的思维紧密结合?首先,要回答一个问题:
为什么这么做?我考虑了如下三个问题。


22->第一个问题,人才培养与人才梯度的问题(人工智能与机器人人才缺口大)。分为三个方面考虑(教育资源分配不均加剧断层):
1 人才断层
成本高、资源浪费并存,重点大学相关人才起薪高,普通高校找工作难。
人才断层导致分工困难,由上而下,无法顺利完成,主管能力的“地平线”,是下属能力的“天花板”。
2 培养周期
没有良好思维训练等,没有树立终身学习等(铁饭碗等陈旧观念),断层后直接遇到天花板,无法成长,不能形成良性循环。
3 智慧型机器人对工作机会的取代,导致对人才要求的不断提高
标准化的工作迟早会被人工智能和机器人取代,标准化的教育也无法培养个性化的人才。明明学习的知识越来越多,为何越来越无用呢?

第一个问题是关于市场需求和人的发展的问题,下面我们需要什么样的课程让学生学习效果最好,效率最高。


23->什么样的课程符合人性和认知规律,高效且有活力?
现有的课程比如工科课程,多按知识和技术进行章节划分,是否考虑到不同学校不同学生的认知规律。从学生的认知进行展开讲述课程教案设计的案例。
合格的程序--优雅的程序--突破性的程序之间的差异性。
总结,讲得再好不如学生主动去学。机器人学科有什么自己的特点呢?


24->交叉学科,技术和艺术、融合和组合的区别。那么如何做?


25->如同航海如同登山,不是简单的告知学生航海线路和登山路径。而是教会他们航海或登山的技能和要点,让他们自由的选择符合自身特点的道路,有人快有人慢,但终究能够到达目的地和山顶,欣赏到属于自己的风景。

因材施教,千人千面与千面一心(太史公有言,天下熙熙皆为利来,天下攘攘皆为往)。学生利益的最大化是教育的初心,传道授业解惑。

什么是教育的本质?让学生认知自身,认识世界,知道自己的能力能做什么,社会需要什么样的人才,结合自身的不断努力,走属于自己的人生道路。

推荐阅读博文,点击可打开。摘自文中:教育的目的不只传授知识,教授技能,更要教人找到方向感。


26->美国的校车,学生在窗外看到的是火星上的景色。


27->以学生常见的扫地机器人为出发点,引出知识,机器人数学建模,推导运动学模型,模型到公式程序知识迁移,消息传递机制,到机器人仿真,算法测试,最后回归到扫地机器人本身,实验室进课堂,实践中学理论。源于生活,归于生活。


28->从力图打破僵化的思维展开进行讲解,思维要开放和包容,重复利用碎片化时间进行有效的学习。


29->用游戏的方式设计教学,在趣味性、竞技性的环境中体验学习的乐趣。欢乐的学习气氛与严谨的思维能力并冲突。


30->学习技能点,用设计游戏的方式规划课程,把重难点变为打怪升级,充分享受学习的乐趣。


31->这个段子大家看看欢乐一下,右图,每到期末有些老师会收到这样的表情包,我们怒其不争,中图,只有三分之一的孩子有电脑,很多还不能上网,我们哀其不幸,最后很多人都变成了看客,觉得这就是命运,左图,如同大护法-锦江太子和花生人-的那句台词,出窑、定型。果真如此吗?有时候会听到一句话,可怜之人必有可恨之处,这是现实,但是我更喜欢反过来的这句话,可恨之人必有可怜之处,这是慈悲,教育需要慈悲心,需要人文的关怀。当下社会人工智能和机器人技术飞速发展,教育也呈现出星火燎原之势,但是我深深希望科技的进步能够缩小不同家庭出身的孩子在教育上的差距,同时我也坚信,在社会主义的阳光下,不论贫穷还是富贵,都应当享有平等的教育权。

-End-

   



  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
ROS机器人学习小结全文共9页,当前为第1页。ROS机器人学习小结全文共9页,当前为第1页。ROS机器人学习小结 ROS机器人学习小结全文共9页,当前为第1页。 ROS机器人学习小结全文共9页,当前为第1页。 Ros简介 ROS是一个用于编写软件的灵活框架,它集成了大量的工具、库、协议,提供了类似操作 系统提供所提供的功能,包括硬件抽象描述、底层驱动程序管理、共用功能的执行、程序 间的消息传递、程序发行包的管理,可以极大的简化繁杂多样的机器人平台下的复杂任务创 建与稳定行为控制。 在短短几年里,ROS得到了广泛的应用,各大机器人平台几乎都支持ROS框架,如 Pioneer、Aldebaran Nao、TurtleBot ' Lego NXT、Asctec quadrotor 等。同时,开源社 区内的ROS功能包呈指数级增长,涉及的应用邻域包括轮式机器人、人形机器人、工业机器 人、农业机器人等。 1.1 ROS的设计目标。 ROS的设计目标是提高机器人研发中的软件复用率,所以它被设计成为一种分布式结构, 使得框架中的每个功能模块都能被单独设计、 编译,并且在运行时以松散耦合 的方式结合在一起。而且ROS中的功能模块都封装于独立的功能包(Package ),便于在社 区中共享与分发。 1-2ROS的特点 ROS核心一一分布式网络,使用Tcp/ip的通信方式,实现模块间点对点的松耦合连 接,可以执行若干类型的通信,包括基于话题的(Topic )的异步数据流通信,基于服务 (service )的同步数据流通信,还有参数服务器上的数据存储等(1)点对点的设计 ROS机器人学习小结全文共9页,当前为第2页。ROS机器人学习小结全文共9页,当前为第2页。在ROS中,每一个进程都以一个节点的形式运行,可以分布于多个不同的主机。 ROS机器人学习小结全文共9页,当前为第2页。 ROS机器人学习小结全文共9页,当前为第2页。 传送到接收节点。这种点对点的设计可以分散定位、导航等功能带来的实时计 算压力,适应多机器人的协同工作。 多语言支撑 Python、C++、Java、Octave、LISP 等 架构精简、集成度高 在已有的机器人应用中,软件的复用性是一个巨大的问题。很多的驱动程序、 应用算法、功能模块在设计时过于混乱,导致其很难在其他机器人应用中进行移植和 二次开发。而 ROS框架具有模块化特点使得每个功能节点可以进行 单独编译,并且使用统一的消息接口让模块的移植、复用更加便捷。 组织化工具包丰富 移动机器人的开发往往需要一些友好的可视化工具和仿真软件, ROS采用组件 的方法将这些工具和软件集成到系统中可以作为一个组件直接使用。例如 3D 可视化工具rvk,开发者可以根据ROS定义的接口在其显示机器人3D模型、周围环境 地图、机器人导航路线等消息。此外, ROS中还有消息查看工具、物理 仿真环境等组件,提高了机器人开发的效率。 免费并且开源 ROS遵照的BSD许可给使用者较大的自由,允许其修改和重新发布其中的应 ROS机器人学习小结全文共9页,当前为第3页。ROS机器人学习小结全文共9页,当前为第3页。丿II代码,共至町以进行商业化的丿I:发和销售o ROS机器人学习小结全文共9页,当前为第3页。 ROS机器人学习小结全文共9页,当前为第3页。 master: (1)每个node启动时都要向master注册。(2)管理node之间的通信master: (1)每个node启动时都要向master注册。(2)管理node之间的通信 master: (1)每个node启动时都要向master注册。(2)管理node之间的通信 master: (1)每个node启动时都要向master注册。(2)管理node之间的通信 node: (1) ROS的进程。(2) pkg里的可执行文件运行的实例(运行C++、python、shell 脚本等可执行文件,加载到内存中,就成为一个 ROS进程,即一个node) 通信方式 topic 通信 ros中的异步通信方式 机制通信机制通信node 之间通过 publish-subscribe nodeA和nodeB发布和订阅并不同步 机制通信 机制通信 多个node可以发布信息给同一 Topic,多个node可以订阅同一 Topic的信息 service 通信 topic通信占用计算资源,node不停的发布信息和接受信息。 service ROS机器人学习小结全文共9页,当前为第4页。ROS机器人学习小结全文共9页,当前为第4页。ROS中的同步通信方式 ROS机器人学习小结全文共9页,当前为第4页。 ROS机器人学习小结全文共9页,当前为第4页。 ROS机器人学习小结全文共9页,当前为第5页。ROS机器人学习小结
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangrelay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值