Case Study by ANYbotics - ethz.ch

39
PRESENTATION // Building a Legged Robot with ROS Case Study by ANYbotics March 5, 2021 Maximilian Wulf, Harmish Khambhaita

Transcript of Case Study by ANYbotics - ethz.ch

Page 1: Case Study by ANYbotics - ethz.ch

PRESENTATION //

Building a Legged Robot with ROSCase Study by ANYbotics

March 5, 2021

Maximilian Wulf, Harmish Khambhaita

Page 3: Case Study by ANYbotics - ethz.ch

ANYbotics//

Robots Change the Way We WorkROBOTICS REVOLUTION //

3

Let Robots Go Anywhere!

≫ ≫Manufacturing Logistics The New World

Stationary manipulation Mobility in structured environmentsMobile interaction in industrial, urban

and natural environments

1980 2010 2020

Page 4: Case Study by ANYbotics - ethz.ch

ANYbotics//

Safety, Data Quantity and Quality Are the Main Cost Drivers for InspectionTHE CHALLENGE //

4

SAFETY QUALITY

QUANTITY

Page 6: Case Study by ANYbotics - ethz.ch

ANYbotics//

From Research to Industrial ApplicationsROBOT HISTORY //

6

2009ALoF

2012StarlETH

2015ANYmal Alph

2017ANYmal Beth

2018ANYmal B

2019ANYmal C

Maturity, Autonomy, Performance, Robustness

RESEARCH DEMONSTRATOR APPLICATION

2021

Page 7: Case Study by ANYbotics - ethz.ch

ANYbotics//

ANYmal C Legged Robot – The Next Step in Robotic Industrial InspectionVIDEO //

7

Page 8: Case Study by ANYbotics - ethz.ch

ANYbotics//

ANYmal C’s Legs Provide Extreme Mobility in Challenging EnvironmentsEXTREME MOBILITY //

8

SPEED[1 M/S]

OMNI-DIRECTIONAL

SLOPE[20°]

STAIRS[45°]

STEP[35 CM]

OBSTACLE[20 CM]

OVERHANGING[50 CM]

GAP[25 CM]

PASSAGES[60 CM]

Page 9: Case Study by ANYbotics - ethz.ch

ANYbotics//

Fully Autonomous Operation and Seamless Switching to Supervised or Manual Control

OPERATING MODES //

9

Teleoperated Supervised Autonomous

Page 10: Case Study by ANYbotics - ethz.ch

ANYbotics//

All-around Depth Cameras for Obstacle DetectionADVANCED SENSING //

10

360° OBSTACLE DETECTION4x DEPTH CAMERAS

Page 11: Case Study by ANYbotics - ethz.ch

ANYbotics//

360° Environment ScanningADVANCED SENSING //

11

360° OBSTACLE DETECTION4x DEPTH CAMERAS

ENVIRONMENT SCANNINGLIDAR

Page 12: Case Study by ANYbotics - ethz.ch

ANYbotics//

Front and Back Cameras for TeleoperationADVANCED SENSING //

12

360° OBSTACLE DETECTION4x DEPTH CAMERAS

ENVIRONMENT SCANNINGLIDAR

WIDE ANGLE CAMERAS

Page 13: Case Study by ANYbotics - ethz.ch

ANYbotics//

GPS (RTK) Based Navigation for Outdoor EnvironmentsADVANCED SENSING //

13

360° OBSTACLE DETECTION4x DEPTH CAMERAS

ENVIRONMENT SCANNINGLIDAR

WIDE ANGLE CAMERAS

GPS (OPTIONAL)

Page 14: Case Study by ANYbotics - ethz.ch

ANYbotics//14

SPOTLIGHT

THERMAL CAMERA

Carry a payload with up to 10 kg

Example inspection payload

Access to USB, Ethernet, and power sockets

Interface via ROS APIs

Dedicated onboard computer for custom applications

CPU

ZOOM CAMERA

PAN-TILT UNIT

Expandable Platform to Tackle a Wide Range of ApplicationsPAYLOAD OPTIONS //

Page 15: Case Study by ANYbotics - ethz.ch

ROS For ANYmal

15

Page 16: Case Study by ANYbotics - ethz.ch

ANYbotics//

System OverviewROS //

16

Navigation PC

Localization

Terrain Mapping

Navigation & Mission Planning

Application PC

Visual Inspection

Thermal Inspection

Audio Inspection

Operator PC

Remote Control UI

Visualizations

Mission Control

Locomotion PC

State Estimation

Locomotion Control

12x ANYdrives IMU 4 Depth Cameras LIDAR

Ethe

rnet

WiFi

Radio

Safety operator

Thermal Camera Microphone Visual Camera

Page 17: Case Study by ANYbotics - ethz.ch

ANYbotics//

System OverviewROS //

17

Safety operator

Navigation PC

Sensing & Localization

Terrain Mapping

Path Planning & Following

Mission Planning

Application PC

Visual Inspection

Thermal Inspection

Acousting Inspection

Operator PC

Remote Control UI

Visualizations

Mission commands

Locomotion PC

Actuation

Commands State

12 ANYdrives IMU 4 Depth Cameras LIDAR

WiFi

Thermal Camera Microphone Visual Camera

Switch

Router

2 Cameras

RT

Page 18: Case Study by ANYbotics - ethz.ch

ANYbotics//

Robot State Simulation, Visualization and InteractionROS //

18

GazeboSimulating the physical world around ANYmal.

RQTCombines different control and supervision elements into one GUI.

RVIZVisualizes off the shelf and custom ROS topics.

Page 19: Case Study by ANYbotics - ethz.ch

ANYbotics//

Interaction with Real RobotROS //

19

Real RobotReal physics guide the motion of ANYmal.

RQTCombines different control and supervision elements into one GUI.

RVIZVisualizes off the shelf and custom ROS topics.

Page 20: Case Study by ANYbotics - ethz.ch

ANYbotics//

ROS BagsROS //

20

Debugging and TuningIncrease of code reusability and more lightweight using and testing of the library. Simple setup of distributed systems.

ReplayingReplay the ROS bag on a local computer, run the corresponding algorithms on it and visualize the results in RVIZ.

RecordingRecord topics on the robot while performing any task and save them to a ROS bag.

Page 21: Case Study by ANYbotics - ethz.ch

ANYbotics//

ROS Agnostic DesignROS //

21

NAVIGATION_ROS

NAVIGATION_CORE

ROS NETWORK

ScalabilityIncrease of code reusability and more lightweight using and testing of the library. Simple setup of distributed systems.

IndependenceUsable in environment without ROS and minimal effort to update to new ROS versions

ModularitySeparate core algorithms (_CORE) from ROS interface nodes (_ROS). Plugins allow injection of ROS dependent code.

LOCALIZATION_ROS

LOCALIZATION_CORE

LOCOMOTION_ROS

LOCOMOTION_CORE

Page 22: Case Study by ANYbotics - ethz.ch

ROS Inside ANYmal

22

Page 23: Case Study by ANYbotics - ethz.ch

ANYbotics// Strictly Confidential

Sense-Think-ActLOCOMOTION // OVERVIEW //

23

State Estimation Whole-Body Control Actuation Robot

Sens

or

mea

sure

men

ts

Robo

t s

tate

Join

t c

omm

ands

Join

t to

rque

s

Page 24: Case Study by ANYbotics - ethz.ch

ANYbotics// Strictly Confidential

Perceptive LocomotionLOCOMOTION //

24

Stair Climbing Terrain Perception Obstacle Avoidance

Page 25: Case Study by ANYbotics - ethz.ch

ANYbotics// Strictly Confidential

Learning Locomotion SkillsLOCOMOTION //

25

SimulationUsing reinforcement learning in a simulator to learn specific motions and maneuvers.

Real RobotWith Sim-to-Real transfer the learned model is applied on the real robots. One specifically learned capability is fall recovery.

Page 26: Case Study by ANYbotics - ethz.ch

ANYbotics// Strictly Confidential

More Sense-Think-ActPERCEPTION AND NAVIGATION // OVERVIEW //

26

Near field perception

Localization Global Navigation

Local Navigation

Page 27: Case Study by ANYbotics - ethz.ch

ANYbotics// Strictly Confidential

Simultaneous Localization & MappingPERCEPTION //

27

Hagenholz, Oerlikon Wangen an der Aare

Point Cloud based SLAMLIDAR and depth sensors are used to generate a map and localize within the map.

ScalableA localization accuracy of less than 10 cm is achieved while being scalable to large industrial environments.

Page 28: Case Study by ANYbotics - ethz.ch

ANYbotics// Strictly Confidential

Terrain MappingPERCEPTION //

28

Open Sourcewww.github.com/anybotics

Elevation MappingRobo-centric height maps are generated based on the surrounding depth data.

Grid MapDedicated data structure created for height maps and shared with the ROS community. Tight integration into RVIZ with a custom visualization plugin.

Page 29: Case Study by ANYbotics - ethz.ch

ANYbotics// Strictly Confidential

Path Planning & FollowingNAVIGATION //

29

CalculationGiven a point cloud based map, the software finds the shortest path from A to B in a graph. Based on the task it can switch between different controllers.

Path Planner Path Follower

ExecutionGiven a path the module outputs velocity commands to the locomotion controller. With the help of perception it can also avoid obstacles.

Page 30: Case Study by ANYbotics - ethz.ch

ANYbotics// Strictly Confidential

Regularly Collect and Interpret Physical Properties of Equipment and Environment

INSPECTION CAPABILITIES //

30

Reading Instruments Detecting Events Checking Health of Equipment

Monitoring Environments

GAUGES VALVES COUNTER PICTURE

GAUGES VALVES COUNTERS

PHOTO

THERMOGRAPHY ACOUSTIC LABELS

LEAKAGES MISSING PARTS

HOTSPOTS GASES ALARMS

TEMPERATURES

REALITY CAPTURE ESCAPE ROUTES

EQUIPMENT HUMANS

Page 31: Case Study by ANYbotics - ethz.ch

ANYbotics// Strictly Confidential

Factory AutomationAUTONOMOUS MISSION //

31

Failure

Success

Check Health

Start

MonitoringThe health of the system is constantly monitored. In case of a failure or undefined behavior a rescue behavior can be performed or a remote operator can be contacted.

RepeatTeach once, repeat forever. Navigation and inspection tasks can be scheduled. Each customer gets an easy-to-use interface to create custom missions.

Page 32: Case Study by ANYbotics - ethz.ch

ANYbotics// Strictly Confidential

Automated DockingAUTONOMOUS MISSION // EXAMPLE //

32

DockAutonomous maneuver.

Find docking stationPerception based detection system.

RestSwitch on power saving mode.

RepeatContinue once fully charged.

Page 33: Case Study by ANYbotics - ethz.ch

How We Keep Things Smooth

33

Page 34: Case Study by ANYbotics - ethz.ch

ANYbotics//

Computer SetupSOFTWARE TOOLS //

34

ConsistencyAll developers and all robots have the same setup. The computers run Ubuntu 20.04 LTS with ROS Noetic.

Code SharingSoftware version is controlled with Git. Gitlab acts as host and ANYbotics employs a monorepo structure. Open-source packages are maintained on GitHub.

Page 35: Case Study by ANYbotics - ethz.ch

ANYbotics//

Update

Quality Assurance

Tests on Hardware

SOFTWARE TOOLS //

35

Stable PPA

Nightly PPA /ROS Mirror

Not

ifica

tion

Commit

CI / Tests in SimulationUpdate

Notification

Unit testsRuns on every merge request.

GitLab CIRuns on pushed commit.

ROS integration testsRuns every night.

Hardware in the loop testOnce every week.

DebiansTested binaries are released frequently for customers.

Install

Page 36: Case Study by ANYbotics - ethz.ch

ANYbotics//

Rules for the DevelopersSOFTWARE TOOLS //

■ Software Development Instructions→ ROS and catkin best practices→ C++ style guide→ Development workflow

■ Documentation→ API documentation using Doxygen→ User manual using Sphinx

36

Page 37: Case Study by ANYbotics - ethz.ch

ANYbotics//

Partners Around the WorldANYMAL RESEARCH //

37

Page 38: Case Study by ANYbotics - ethz.ch

Thank you!

ANYbotics AG

www.anybotics.com

Subscribe to our newsletter and follow us @anybotics

Page 39: Case Study by ANYbotics - ethz.ch

ANYbotics//

Join Us!OPEN POSITIONS //

39

Careerwww.anybotics.com/career/