来源请查看:
https://mp.weixin.qq.com/s/gVr4pUG2TGT6sCcGKvVnYw
报名等请使用上面给出地址。
面向对象:机器人/人工智能相关专业教师/学生/工程师
要求:ROS零基础/中高级
费用:免费,食宿自理
时间:2023年7月29日(周六)- 8月5日(周六)
地点:苏州大学未来校区(苏州市吴江区久泳西路1号)
2023机器人操作系统(ROS)暑期学校预热-线下时间/地点-(转发)
课程大纲与安排:
一、提前预习课程(建议暑期学校入学前学习)
1. ROS零基础机器人入门(赵虚左)
2. ROS 机器人操作系统初级教程-蓝桥云课(张瑞雷)
3. ROS入门21讲: 一学就会入门教程(古月居)
4. ROS2入门21讲: 认识全新的机器人操作系统 (古月居)
5. ROS2从入门到实践课程(鱼香ROS机器人)
6. ROS零基础无人车入门课程(天之博特)
7. ROS零基础无人机入门课程(天之博特)
二、主题报告分享:
1. 机器人领军企业/科研机构主题报告(一)
时间:7月29日
2. 机器人领军企业/科研机构主题报告(二)
时间:7月30日
三、ROS零基础/初级提升课程:
1. ROS零基础提升+问题梳理+答疑(天之博特+张瑞雷+ROS小课堂+古月居)
时间:7月29日晚,7月30日晚
四、ROS中高级课程与训练营:
1. [中高级]基于昇腾CANN的四足机器狗开发训练营(华为+云深处) 1期持续两天, 循环开课,共3期
2. [中高级]基于昇腾CANN的无人飞艇开发训练营(华为+阿木实验室)1期持续两天, 第一天课程,第二天避障比赛,循环开课,共3期
3. [中高级]无人机prometheus开源项目训练营(阿木实验室)1期持续两天, 循环开课,共3期
4. [中高级]机器人集群kkswarm开源项目训练营(易科实验室+阿木实验室)1期持续两天, 循环开课,共3期
5. [中高级]OriginBot机器人深度学习训练营(古月居+地平线机器人) 1期持续两天(1天课程,1天比赛), 循环开课,共2期
6. [中高级]LIMO多模态机器人自动驾驶训练营(古月居+松灵机器人) 1期持续两天, 共1期
7. [中高级]双足机器人AELOS训练营(乐聚机器人+CCF智能机器人专委会)1期持续两天, 循环开课,共3期
8. [中高级]双足机器人ROBAN训练营(乐聚机器人+CCF智能机器人专委会)1期持续两天, 循环开课,共3期
9. [中高级]F1TENTH无人车竞速机器人训练营(天之博特+F1TENTH组委会) 1期持续2天+1天比赛, 循环开课,共2期
10. [中高级]空地协同(天之博特+ ROS2GO+ TianbotMini) 1期持续2天+1天比赛, 循环开课,共2期
11. [中高级]micro-ROS: ROS 2 for micro controllers(鱼香ROS机器人) 1期持续两天, 循环开课,共3期
12. [中高级]智能复合机器人设计开发训练营(元创兴)1期持续2天+1天比赛, 循环开课, 共2期
13. [中高级]智能迎宾引导机器人开发训练营(元创兴+睿抗机器人大赛赛题)1期持续2天+1天比赛, 循环开课, 共2期
14. [中高级]开源户外线控底盘开发训练营(ROS小课堂)1期持续2天(含实操答疑),共1期
15. [中高级]CSPACE开发训练营(合肥智能制造研究院) 1期持续2天(含实操答疑),共1期
16. [中高级]四足机器狗SLAM开发训练营(宇树科技)1期持续2天+1天实操答疑, 循环开课,,共2期
17. [中高级]协作机械臂开发训练营(节卡JAKA机器人) 1期持续2天(含实操答疑),共1期
AI:
参加中国机器人操作系统(ROS)暑期学校之前,需要进行一定的准备工作,以确保能够更好地理解和掌握ROS的相关知识和技能。以下是一些准备工作的详细论述:
了解ROS的基本概念和原理
ROS是一种用于构建机器人应用程序的开源操作系统,它提供了一组功能强大的工具和库,用于管理机器人的硬件和软件资源。在参加ROS暑期学校之前,首先需要了解ROS的基本概念和原理,包括ROS的架构、节点、主题、消息传递等基本概念,以及ROS的安装和使用方法。可以通过ROS的官方文档、在线教程和书籍等途径来学习ROS的基本知识。
熟悉机器人编程的基本原理
机器人编程是一种特殊的编程技能,需要掌握一定的数学和物理知识,以及编程语言和算法。在参加ROS暑期学校之前,需要对机器人编程的基本原理有一定的了解,包括机器人的运动学、动力学和控制方法等。可以通过学习一些机器人编程的入门教程或者在线课程来熟悉机器人编程的基本原理。
熟悉常用的编程语言和工具
ROS支持多种编程语言和工具,包括C++、Python、Java等。在参加ROS暑期学校之前,需要对这些编程语言和工具有一定的了解,并且能够使用这些语言和工具进行简单的编程。可以通过学习一些编程语言的基础教程或者编写一些简单的程序来熟悉这些语言和工具。
提前安装并熟悉ROS环境
在参加ROS暑期学校之前,需要提前安装并熟悉ROS环境,包括ROS的安装、配置、使用和调试等。可以通过ROS的官方文档或者在线教程来学习ROS环境的安装和使用方法。
了解ROS的相关应用场景和案例
ROS被广泛应用于各种机器人应用场景,包括工业机器人、移动机器人、无人机、智能家居等。在参加ROS暑期学校之前,需要了解ROS的相关应用场景和案例,以便更好地理解ROS的应用范围和实际应用效果。可以通过阅读一些ROS的应用案例或者相关领域的论文来了解ROS的应用场景和案例。
提前阅读相关的ROS学习资料
在参加ROS暑期学校之前,可以提前阅读一些相关的ROS学习资料,如ROS的官方文档、在线教程、书籍等。这些学习资料可以帮助学员更好地理解ROS的相关知识和技能,并且为后续的学习打下坚实的基础。
参加ROS的相关活动和交流会议
在参加ROS暑期学校之前,可以参加一些ROS的相关活动和交流会议,如ROS的线上或线下交流会、ROS的技术研讨会、ROS的开源项目等。这些活动和会议可以让学员更好地了解ROS的最新发展和技术动态,并且与其他的ROS用户和开发者进行交流和互动。
综上所述,参加中国机器人操作系统(ROS)暑期学校之前需要做的准备工作包括了解ROS的基本概念和原理、熟悉机器人编程的基本原理、熟悉常用的编程语言和工具、提前安装并熟悉ROS环境、了解ROS的相关应用场景和案例、提前阅读相关的ROS学习资料以及参加ROS的相关活动和交流会议等。通过这些准备工作,学员可以更好地理解和掌握ROS的相关知识和技能,并且能够更快地适应ROS的学习和实践。
图片内容:
-
标题:中国机器人操作系统(ROS)暑期学校
-
背景:在蓝色的背景下,描绘了一幅机器人操作系统的图形,其中包含了机器人的图像和ROS的标志性图标。
-
主要内容:宣传图中央部分列出了ROS零基础/中高级课程和训练营的名称和数量,包括基于昇腾CANN的四足机器狗开发训练营、基于昇腾CANN的无人飞艇开发训练营、无人机prometheus开源项目训练营、机器人集群kkswarm开源项目训练营、双足机器人AELOS训练营、双足机器人ROBAN训练营、F1TENTH无人车竞速机器人训练营、空地协同、micro-ROS等。
-
时间地点:在宣传图的下方,标注了暑期学校的具体时间地点,包括从7月29日到8月5日的每天课程安排。
-
招生对象:在宣传图的右侧,用大字写明了招生对象是机器人/人工智能相关专业教师、学生和工程师,同时强调了ROS零基础/中高级的课程安排。
-
报名方式:在宣传图的左下角,简单明了地标注了报名方式为免费,但需要提前预习课程,并在活动行APP上进行报名。
-
附加信息:在宣传图的右下角,还添加了一些附加信息,包括课程大纲与安排、主题报告分享以及报名时间和地点等详细信息。
ROS(机器人操作系统)是一种用于构建机器人应用程序的开源操作系统。ROS提供了一组功能强大的工具和库,用于管理机器人的硬件和软件资源。以下是一个简单的ROS机器人示例代码,它展示了如何使用ROS来控制机器人的运动。
这个示例代码使用了ROS的Python API,它包含了一个发布者和一个订阅者。发布者将机器人的运动指令发布到名为“cmd_vel”的话题上,订阅者将从该话题接收运动指令,并将其传递给机器人控制器以控制机器人的运动。
首先,我们需要在机器人上安装ROS,并配置ROS环境。然后,我们可以创建一个名为“turtle1”的ROS节点,它代表了机器人。在节点中,我们将创建一个发布者和一个订阅者,以实现机器人运动指令的发布和接收。
#!/usr/bin/env python
import rospy
from geometry_msgs.msg import Twist
def talker():
# 初始化ROS节点
rospy.init_node('turtle1', anonymous=True)
# 创建一个发布者,发布机器人的运动指令
pub = rospy.Publisher('cmd_vel', Twist, queue_size=10)
# 创建一个订阅者,接收机器人的运动指令
sub = rospy.Subscriber('cmd_vel', Twist, callback)
# 发布机器人的初始位置
pos = Twist()
pos.linear.x = 0.0
pos.angular.z = 0.0
pub.publish(pos)
# 循环发布运动指令,控制机器人的运动
while not rospy.is_shutdown():
vel = Twist()
vel.linear.x = 0.1
vel.angular.z = 0.2
pub.publish(vel)
rospy.sleep(0.1)
def callback(data):
# 接收到机器人的运动指令后,将其传递给机器人控制器
rospy.loginfo("Received: linear: %s, angular: %s", data.linear.x, data.angular.z)
# 这里可以将运动指令传递给机器人控制器,控制机器人的运动
并提高其智能和自主性。在实现这些功能时,需要结合ROS的API和相关技术,并运用各种算法和开发工具来实现机器人的智能化和自主性。
在上述代码中,我们首先导入了必要的ROS库和消息类型。然后,我们定义了一个名为“talker”的函数,该函数包含了发布者和订阅者的逻辑。
在函数中,我们首先初始化了ROS节点,并创建了一个名为“turtle1”的节点。然后,我们创建了一个发布者对象“pub”,它将发布名为“cmd_vel”的话题,并将运动指令发布到该话题上。同时,我们还创建了一个订阅者对象“sub”,它将订阅名为“cmd_vel”的话题,并接收机器人运动指令。
在发布者和订阅者创建完成后,我们发布了一个初始位置消息,以将机器人移动到初始位置。然后,我们进入一个循环中,在每个循环中发布一个包含线性速度和角速度的运动指令,以控制机器人的运动。
在订阅者回调函数“callback”中,我们可以接收到机器人运动指令,并将其传递给机器人控制器以控制机器人的运动。
这个简单的ROS机器人示例代码展示了如何使用ROS来控制机器人的运动。通过发布者和订阅者的配合,我们可以实现机器人运动指令的发布和接收,从而控制机器人的运动。这个示例代码可以作为进一步学习ROS的起点,帮助我们更好地理解和掌握ROS的相关知识和技能。
除了上述代码中的发布者和订阅者逻辑,还可以添加以下功能来增强ROS机器人的智能和自主性:
- 传感器数据读取:将机器人的传感器数据读取并处理,以实现更加精确的运动控制。例如,读取机器人的激光雷达、摄像头、IMU等传感器数据,以获取周围环境和自身状态信息,从而实现自主导航和避障等功能。
- 机器学习算法应用:将机器学习算法应用于ROS机器人,以实现更加智能的决策和行为。例如,使用深度学习算法来识别传感器数据中的物体,或者使用强化学习算法来训练机器人学习自主决策和行为。
- 自主决策系统:构建自主决策系统,以实现ROS机器人的自主导航和任务执行。例如,根据传感器数据和机器学习算法的结果,自主规划机器人的路径和行为,从而实现自主导航和任务执行等功能。
- 人机交互:增加人机交互功能,以实现ROS机器人与人类的互动和协作。例如,通过语音识别、图像识别、自然语言处理等技术,实现机器人与人类的交流和互动,从而提供更加智能和便捷的服务。
这些增强功能可以进一步扩展ROS机器人的应用领域,并提高其智能和自主性。在实现这些功能时,需要结合ROS的API和相关技术,并运用各种算法和开发工具来实现机器人的智能化和自主性。