ROS Carpentry - Hands On Open Source Skills

An RSS 2020 Workshop

View the Project on GitHub osrf/rss2020-ROS-Carpentry

ROS Carpentry: Hands-On Open Source Skills

A Proposed RSS2020 Workshop

ROS

Abstract

Academic robotics research is the engine of innovation in the field, but all too often impactful work languishes after a paper is published. Results are rarely replicated and useful work never makes its way out into the field. The intent of this workshop is to demonstrate how open source software and hardware, sound software engineering principles, and industry best practices, can help build more modular and reusable academic research. The ROS Carpentry workshop will give students a crash course in common open source packages, how to use them to build derivative works, distribute those works to a wide community of users, and how to manage those works over time.

Organziers

Schedule

Time Presenter Title / Description
08:30-0900 Katherine Scott Welcome and Introduction
0900-1050 Katherine Scott (Open Robotics) ROS Research Like A Professional This talk will introduce students to a “quick start” ROS package template. We will cover the process of creating a project with a full continuous integration pipeline, documentation optimized for re-use and citation, and discuss the logistics of managing an open source library as an academic.
10:50-11:10 BREAK BREAK
11:00-12:00 Camilo Buscaron (AWS RoboMaker) Using the cloud to scale robot development and testing Traditional Robot application development takes several months due to the complexity of developing firmware, drivers, integration and testing. This presentation will show how a fully working prototype can be developed in a few hours using a set of software building blocks and a cloud based simulation model. It will then provide an overview of AWS RoboMaker which is a service that makes it easy for developers to develop, test and deploy robotics applications as well as build intelligent robotics functions using cloud service.
12:00-13:00   LUNCH
13:00-13:55 Steve Macenski (Samsung) Tools of the Trade This talk will introduce the different tools that ROS gives you “for free” and how to leverage them to make your work integrate easily into the wider community. We will cover a survey of available ROS tools, conventions associated with them, and tribal tips you should know to more easily navigate the ecosystem. This talk will address these topics under the framing of the ROS2 Navigation stack which makes heavy use of all of the modern ROS tooling.
13:55-14:05 BREAK BREAK
14:05-14:55 Mable Zhang (Open Robotics) Winning more paper citations and collaborations by software engineering practices Quality open source research code and data not only help fellow roboticists to not have to reinvent the wheel, but also increases visibility and citations of the work. In this talk, key elements that make open source research code and data a better quality, which means less time for future maintenance, more readership, and more usership, will be discussed. In addition, basic tools for contributing to an existing open source project will be touched on to address the intimidation and overhead factors that prevent robotics students from contributing valuable in-depth knowledge and bug fixes to the community.
14:55-15:05 BREAK BREAK
15:05 - 15:55 Bill Smart (Professor of Mechanical Engineering and Robotics, Oregon State University) Talk To Be Determined
15:55-16:05 BREAK BREAK
16:05-17:00 André Santos (INESC TEC and University of Minho) HAROS: Static Analysis of ROS Systems (https://github.com/git-afsantos/haros/) This talk will introduce HAROS, a framework for static analysis of ROS systems and packages. We will cover the basics of software static analysis, and how it can improve the overall quality, maintainability and reliability of a system in ways that other techniques cannot. This is particularly valuable in robotics and other safety-critical systems, where executing the system might be costly or potentially unsafe. We will then show how HAROS, equipped with its architecture model extraction capabilities, enables (at compile time) analyses that are traditionally only performed at runtime.
17:00-18:00 Katherine Scott Closing Remarks / TBD Talk