2023 Robot Operating System (ROS) Summer School Registration Channel Open-Forward-

Please check the source:

https://mp.weixin.qq.com/s/gVr4pUG2TGT6sCcGKvVnYw

For registration, etc., please use the address given above.


Object-oriented: Teachers/students/engineers majoring in robotics/artificial intelligence
Requirements: ROS zero-basic/intermediate-advanced
Fee: Free , self-care
time: July 29 (Saturday)-August 5 (Saturday), 2023
Venue: Future Campus of Soochow University (No. 1 Jiuyong West Road, Wujiang District, Suzhou City)

2023 Robot Operating System (ROS) Summer School Preheating-Offline Time/Venue-(Forward) 


Course Outline and Arrangement:

1. Preview the courses in advance (it is recommended to study before entering the summer school)

1. Introduction to ROS zero-based robot (Zhao Xuzuo)

2. ROS Robot Operating System Elementary Tutorial - Blue Bridge Cloud Class (Zhang Ruilei)

3. Introduction to ROS 21 Lectures: An introduction course once you learn it (Gu Yueju)

4. Introduction to ROS2 Lecture 21: Understanding the new robot operating system (Gu Yueju)

5. ROS2 from entry to practice course (Yuxiang ROS robot)

6. ROS zero-based unmanned vehicle introductory course (Tianzhibote)

7. ROS Zero-Basic UAV Introductory Course (Tianzhibot)

2. Theme report sharing:

1. Theme report of leading robot companies/scientific research institutions (1)

     Time: July 29

2. Theme report of leading robot companies/scientific research institutions (2)

    Time: July 30

3. ROS zero-based/primary promotion courses:

1. ROS zero-based improvement + question sorting + answering (Tianzhibote + Zhang Ruilei + ROS small classroom + Gu Yueju)

Time: evening of July 29th, evening of July 30th

4. ROS intermediate and advanced courses and training camps:

1. [Intermediate and Advanced] Four-legged robot dog development training camp based on Shengteng CANN (Huawei + Cloud Deep) The first period lasts for two days, and the courses start in cycles, with a total of 3 periods

2. [Intermediate and Advanced] The first phase of the unmanned airship development training camp (Huawei + Amu Lab) based on Shengteng CANN lasts for two days, the first day is a course, the second day is an obstacle avoidance competition, and there are 3 sessions in total.

3. [Intermediate and Advanced] UAV prometheus open source project training camp (Amu Lab) The first period lasts for two days, and the courses start in cycles, with a total of 3 periods

4. [Intermediate and advanced] Robot cluster kkswarm open source project training camp (Yike Lab + Amu Lab) The first phase lasts for two days, and the courses start in cycles, with a total of 3 phases

5. [Intermediate and advanced] OriginBot robot deep learning training camp (Gu Yueju + horizon robot) 1 period lasts for two days (1 day of course, 1 day of competition), cyclical courses, a total of 2 periods

6. [Intermediate and Advanced] LIMO multi-modal robot automatic driving training camp (Gu Yueju + Songling Robot) 1 session lasts for two days, a total of 1 session

7. [Intermediate and Advanced] Biped Robot AELOS Training Camp (Leju Robot + CCF Intelligent Robot Special Committee) The first period lasts for two days, and the courses are held in cycles, with a total of 3 periods

8. [Intermediate and Advanced] Biped Robot ROBAN Training Camp (Leju Robot + CCF Intelligent Robot Committee) 1 session lasts for two days, cyclical courses, a total of 3 sessions

9. [Intermediate and advanced] F1TENTH unmanned vehicle racing robot training camp (Tianzhibot + F1TENTH Organizing Committee) The 1st session lasts for 2 days + 1 day of competition, and the class starts in a cycle, a total of 2 sessions

10. [Intermediate and Advanced] Air-Ground Collaboration (Tianbot + ROS2GO + TianbotMini) The first period lasts for 2 days + 1 day of competition, and the class starts in a cycle, a total of 2 periods

11. [Intermediate and advanced level] micro-ROS: ROS 2 for micro controllers (Yuxiang ROS robot) The first period lasts for two days, and the class starts in a cycle, with a total of 3 periods

12. [Intermediate and Advanced] Intelligent Composite Robot Design and Development Training Camp (Yuan Chuangxing) Phase 1 lasts for 2 days + 1 day of competition, with cyclical classes, a total of 2 phases

13. [Intermediate and Advanced] Intelligent Welcome and Guidance Robot Development Training Camp (Yuan Chuangxing + Rui Kang Robot Contest Questions) 1 session lasts for 2 days + 1 day of competition, cyclical classes, a total of 2 sessions

14. [Intermediate and Advanced] Open source outdoor wire-controlled chassis development training camp (ROS small class) 1 session lasts for 2 days (including practical questions and answers), a total of 1 session

15. [Intermediate and Advanced] CSPACE Development Training Camp (Hefei Intelligent Manufacturing Research Institute) 1 session lasts for 2 days (including practical Q&A), 1 session in total

16. [Intermediate and Advanced] Quadruped Robot Dog SLAM Development Training Camp (Ushu Technology) Phase 1 lasts for 2 days + 1 day for hands-on Q&A, cyclical classes, a total of 2 phases

17. [Intermediate and Advanced] Collaborative Manipulator Development Training Camp (JAKA Robot) 1 session lasts 2 days (including practical Q&A), 1 session in total


AI:

Before participating in the Chinese Robot Operating System (ROS) Summer School, certain preparations are required to ensure a better understanding and mastery of ROS-related knowledge and skills. Here is a detailed discussion of some of the preparatory work:

Understand the basic concepts and principles of ROS

ROS is an open-source operating system for building robotics applications that provides a powerful set of tools and libraries for managing a robot's hardware and software resources. Before participating in the ROS summer school, you first need to understand the basic concepts and principles of ROS, including basic concepts such as ROS architecture, nodes, topics, and messaging, as well as the installation and use of ROS. You can learn the basics of ROS through official ROS documentation, online tutorials, and books.

Familiarity with the fundamentals of robot programming

Robot programming is a special programming skill that requires a certain knowledge of mathematics and physics, as well as programming languages ​​and algorithms. Before participating in the ROS Summer School, you need to have a certain understanding of the basic principles of robot programming, including robot kinematics, dynamics, and control methods. Familiarize yourself with the fundamentals of robot programming by taking some introductory robot programming tutorials or online courses.

Familiarity with common programming languages ​​and tools

ROS supports a variety of programming languages ​​and tools, including C++, Python, Java, and more. Before participating in the ROS summer school, you need to have a certain understanding of these programming languages ​​and tools, and be able to use these languages ​​and tools for simple programming. You can get familiar with these languages ​​and tools by learning some basic tutorials of programming languages ​​or writing some simple programs.

Install in advance and be familiar with the ROS environment

Before participating in the ROS summer school, you need to install and be familiar with the ROS environment in advance, including the installation, configuration, use and debugging of ROS. You can learn how to install and use the ROS environment through official ROS documentation or online tutorials.

Understand the relevant application scenarios and cases of ROS

ROS is widely used in various robot application scenarios, including industrial robots, mobile robots, drones, smart homes, etc. Before participating in the ROS summer school, you need to understand the relevant application scenarios and cases of ROS in order to better understand the application scope and practical application effect of ROS. You can understand the application scenarios and cases of ROS by reading some ROS application cases or papers in related fields.

Read the relevant ROS learning materials in advance

Before participating in the ROS summer school, you can read some relevant ROS learning materials in advance, such as ROS official documents, online tutorials, books, etc. These learning materials can help students better understand the relevant knowledge and skills of ROS, and lay a solid foundation for subsequent learning.

Participate in ROS related activities and exchange meetings

Before participating in the ROS summer school, you can participate in some ROS-related activities and exchange meetings, such as ROS online or offline exchange meetings, ROS technical seminars, ROS open source projects, etc. These activities and conferences allow students to better understand the latest developments and technical trends in ROS, and communicate and interact with other ROS users and developers.

To sum up, the preparations that need to be done before participating in the Chinese Robot Operating System (ROS) Summer School include understanding the basic concepts and principles of ROS, familiarizing with the basic principles of robot programming, familiarizing with commonly used programming languages ​​and tools, installing and familiarizing with ROS in advance environment, understand ROS-related application scenarios and cases, read relevant ROS learning materials in advance, and participate in ROS-related activities and exchange meetings, etc. Through these preparations, trainees can better understand and master the relevant knowledge and skills of ROS, and can adapt to the learning and practice of ROS more quickly.

Image content:

  1. Title: China Robot Operating System (ROS) Summer School

  2. Background: On a blue background, depicts a graphic of Robot Operating System, which contains the image of the robot and the iconic icon of ROS.

  3. Main content: The central part of the promotional image lists the names and numbers of ROS zero-basic/intermediate and advanced courses and training camps, including the quadruped robot dog development training camp based on Shengteng CANN and the unmanned airship development training camp based on Shengteng CANN , drone prometheus open source project training camp, robot cluster kkswarm open source project training camp, biped robot AELOS training camp, biped robot ROBAN training camp, F1TENTH unmanned vehicle racing robot training camp, air-ground collaboration, micro-ROS, etc.

  4. Time and place: Below the promotional image, the specific time and place of the summer school are marked, including the daily course schedule from July 29th to August 5th.

  5. Enrollment target: On the right side of the promotional image, it is written in big characters that the enrollment target is robotics/artificial intelligence-related professional teachers, students and engineers, and at the same time emphasizes the ROS zero-basic/intermediate-advanced course arrangement.

  6. Registration method: In the lower left corner of the promotional image, it is simply and clearly marked that the registration method is free, but you need to preview the courses in advance and register on the event line APP.

  7. Additional information: In the lower right corner of the promotional image, some additional information has been added, including detailed information such as course outline and arrangement, theme report sharing, and registration time and place.

 


ROS (Robot Operating System) is an open-source operating system for building robotics applications. ROS provides a powerful set of tools and libraries for managing a robot's hardware and software resources. The following is a simple ROS robot example code that shows how to use ROS to control the robot's movement.

This sample code uses the ROS Python API, which consists of a publisher and a subscriber. The publisher publishes the motion commands of the robot to the topic named "cmd_vel", and the subscribers will receive the motion commands from this topic and pass them to the robot controller to control the motion of the robot.

First, we need to install ROS on the robot and configure the ROS environment. We can then create a ROS node called "turtle1", which represents the robot. In the node, we will create a publisher and a subscriber to implement the publishing and receiving of robot motion commands.

#!/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)  
    # 这里可以将运动指令传递给机器人控制器,控制机器人的运动

And improve its intelligence and autonomy. When implementing these functions, it is necessary to combine ROS API and related technologies, and use various algorithms and development tools to realize the intelligence and autonomy of the robot.

In the above code, we first imported the necessary ROS libraries and message types. Then, we define a function called "talker" that contains the publisher and subscriber logic.

In the function, we first initialized the ROS node and created a node called "turtle1". We then create a publisher object "pub" that will publish a topic named "cmd_vel" and publish motion commands to that topic. At the same time, we also create a subscriber object "sub", which will subscribe to the topic named "cmd_vel" and receive robot motion commands.

After the publisher and subscriber are created, we publish an initial position message to move the robot to the initial position. Then, we enter a loop, and in each loop issue a motion command containing linear velocity and angular velocity to control the robot's motion.

In the subscriber callback function "callback", we can receive the robot motion command and pass it to the robot controller to control the robot's motion.

This simple ROS robot example code shows how to use ROS to control the movement of a robot. Through the cooperation of publishers and subscribers, we can realize the release and reception of robot motion commands, so as to control the motion of robots. This sample code can be used as a starting point for further learning of ROS, helping us better understand and master the relevant knowledge and skills of ROS.

In addition to the publisher and subscriber logic in the above code, the following functions can be added to enhance the intelligence and autonomy of ROS robots:

  1. Sensor data reading: read and process the sensor data of the robot to achieve more precise motion control. For example, read sensor data such as laser radar, camera, and IMU of the robot to obtain information about the surrounding environment and its own state, so as to realize functions such as autonomous navigation and obstacle avoidance.
  2. Application of machine learning algorithms: Apply machine learning algorithms to ROS robots to achieve more intelligent decisions and behaviors. For example, using deep learning algorithms to recognize objects in sensor data, or using reinforcement learning algorithms to train robots to learn autonomous decision-making and behavior.
  3. Autonomous decision-making system: Build an autonomous decision-making system to realize autonomous navigation and task execution of ROS robots. For example, according to the results of sensor data and machine learning algorithms, the robot's path and behavior can be planned autonomously, so as to realize functions such as autonomous navigation and task execution.
  4. Human-computer interaction: increase the human-computer interaction function to realize the interaction and collaboration between ROS robots and humans. For example, through speech recognition, image recognition, natural language processing and other technologies, the communication and interaction between robots and humans can be realized, so as to provide more intelligent and convenient services.

These enhancements can further expand the application domain of ROS robots and increase their intelligence and autonomy. When implementing these functions, it is necessary to combine ROS API and related technologies, and use various algorithms and development tools to realize the intelligence and autonomy of the robot.

 

Guess you like

Origin blog.csdn.net/ZhangRelay/article/details/131733335