![Page 1: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/1.jpg)
1© 2015 The MathWorks, Inc.
Robotics Applications Development Using
Robotics System Toolbox™
(Robotics System Toolboxによるロボティクスアプリケーション開発)
MathWorks
Application Engineering
Fred Noto & Carlos Santacruz-Rosero
![Page 2: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/2.jpg)
2
Complexities of Robotics Application Development
MATLAB® and Simulink® can help resolve challenges with
robotics application development
![Page 3: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/3.jpg)
3
Agenda
Introduction
ROS and Robotics System Toolbox
Robotics development workflow
Demo: Baxter Checkers Demo
Conclusion
![Page 4: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/4.jpg)
4
MATLAB and Simulink in Robotics
Algorithm prototyping
Wide variety of resources on using MATLAB/Simulink in Robotics
![Page 5: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/5.jpg)
5
What Is Robotics Development?
MathWorks tools are already being used in complex system development
![Page 6: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/6.jpg)
6
MATLAB / Simulink in Robotics Development
PlantController+
-
Input Output
Festo Bionic Arm DLR Humanoid Robot YZU Robot Hand
Efficient system level design that yields higher quality robotics systems
![Page 7: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/7.jpg)
7
Experiences In Robotics Development
Ph.D. in Mechano-Informatics from The University of Tokyo
Motion planning and control of full-sized humanoid robots
R&D in Autonomous Navigation of mobile robots.
![Page 8: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/8.jpg)
8
Advanced Robotic Systems
High number of DoF
Nonlinearity
Multiple Layers of Control
Multiple States or Modes
Real time and No real-
time software
![Page 9: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/9.jpg)
9
Robotics System Toolbox for Robotics Development
Connecting MATLAB/Simulink to ROS
ROS data exploration and analysis
Algorithms and transformation functions
ROS
Features for flexible and convenient robotics development
![Page 10: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/10.jpg)
10
What is ROS (Robot Operating System)?
With the intent to enable researchers to
rapidly develop new robotic systems without
having to “reinvent the wheel” through use of
standard tools and interfaces.
Jonathan Bohren
ROS Crash-Course, Part I: Introduction to ROS distribution, build system and infrastructure
Architecture for distributed inter-process
communication
Multilanguage interface (C++, Python, Lua,
Java, MATLAB)
Tools for runtime and data analysis
Packages for common algorithms and drivers
Open source
![Page 11: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/11.jpg)
11
Gazebo Simulator
Gazebo is one of the most
popular robotics simulators
Many robot manufacturers
provide plugins for Gazebo that
help simulate their robots
(TurtleBot, Baxter, Husky, …)
Download a VM with Gazebohttp://www.mathworks.com/supportfiles/robotics/ros/
virtual_machines/v1/installation_instructions.htm
Add visualization to simulations for effective algorithm evaluations
![Page 12: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/12.jpg)
12
Ethernet
Main CPU
Developing Robotic Applications with ROS
Kinematics& Control
MATLAB
Image pre-
processing
Localization &
Mapping
Image
Processing
Map server
Local
Planner
Global
Planner
NODE NODE NODE
NODE NODE NODE
NODE
NODE
Sensors /
ActuatorsRobot (CPU 2)
NODE
NODE
NODENODE
NODE
ROS nodes communicate through well-defined message interfaces
![Page 13: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/13.jpg)
13
ROS Network Overview
ROS MasterManage Registration
ROS Node ROS Node
Register Register
Data Exchange
RosbagPlayback
Log Log
ROS Node
Data Exchange
Management of data transmissions through the ROS network
![Page 14: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/14.jpg)
14
Topics
Services
/topic
ROS Node Communication Methods
ROS
Node(s)
Publish
Subscribe
Publish
Subscribe
ROS
Node
ROS
NodeRequest
Response
ROS
Node(s)
Service
Server
Service
Client
ROS message selection based on data usage and needs
![Page 15: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/15.jpg)
15
The Trend in Robotics Development
ROS
– #1 middleware for robotics
applications development
– Yearly increase in users
– Simplify component compatibility
through standalone interfaces
– Integrate with simulation
environments (e.g. Gazebo)
http://rosindustrial.org/ric-americas/
Popular in research and gaining great momentum in industry
![Page 16: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/16.jpg)
16
Previous Challenges Using ROS
• Need for expertise using ROS, Linux, C++, etc.
• Not suitable for algorithm prototyping
• Not able to interface with MATLAB / Simulink
Typical ROS Network
willowgarage.com/Blog
![Page 17: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/17.jpg)
17
Utilizing Robotics System Toolbox
Connect MATLAB/Simulink to ROS for efficient algorithm development
![Page 18: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/18.jpg)
20
General Robotics Development Workflow
Explore Robot
Interface
Develop
Algorithm
Test and
Refine in
Simulation
Test and
Refine on Real
Robot
Verify algorithms at each step to refine design and prevent rework
![Page 19: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/19.jpg)
21
Demo: Playing Checkers with Baxter
Utilizing the power of MATLAB and interfacing with ROS
![Page 20: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/20.jpg)
22
State ControllerImage ProcessingGame Algorithm Path PlanningInterpolation
Low Level Control Inverse Kinematics
Topics:- Camera- End Effector State- Joint State
Topics:- Joint Commands- End Effector Commands- Display Image
Algorithms Developed in MATLAB/Simulink
Data processing and command calculations done in MATLAB/Simulink
![Page 21: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/21.jpg)
23
Step 1 : Explore Robot Interface
Connect to simulated / real robot
over ROS
Explore available sensors and
actuators
Retrieve some sensor data
Control the robot motion
ROS
Explore Robot
Interface
Develop
Algorithm
Test and
Refine in
Simulation
Test and
Refine on Real
Robot
![Page 22: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/22.jpg)
24
Step 2 : Prototype Algorithm
Develop the algorithm in MATLAB using image processing tools
Run tests to ensure the algorithm behaves as expected
Explore Robot
Interface
Develop
Algorithm
Test and
Refine in
Simulation
Test and
Refine on Real
Robot
![Page 23: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/23.jpg)
25
Step 3 : Test Algorithm in Simulator
Explore Robot
Interface
Develop
Algorithm
Test and
Refine in
Simulation
Test and
Refine on Real
Robot
![Page 24: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/24.jpg)
26
Step 4 : Test your algorithm with actual robot
Explore Robot
Interface
Develop
Algorithm
Test and
Refine in
Simulation
Test and
Refine on Real
Robot
![Page 25: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/25.jpg)
27
Next Step: Deploying your Algorithm
Generate ROS
Node with
Simulink
Create a
Stand Alone
Executable
with MATLAB
Compiler™
Generate a
shared library
with MATLAB
Coder™
Determine deployment methods based on application
![Page 26: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/26.jpg)
28
Optional Products for Robotics Applications Development
Image Processing
Toolbox™
Contrast adjustment
Geometric transformations
Various filters
Segmentation
Object analysis
Computer Vision System Toolbox™
High-speed video I/O
Point Cloud processing
Tracking
Stereovision
Image Acquisition Toolbox™
Image capture from standard H/W
Analog, Camera Link, DCAM,
GigE Vision, USB camera, etc
Microsoft Kinect Support
Statistics and Machine Learning
Toolbox™
Multivariate statistics
Probability distribution
Machine learning
Experimental design
Statistical process control
![Page 27: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/27.jpg)
29
Optional Products for Robotics Applications Development
Control System Toolbox™
Linear analysis
Classical
control design
Modern
control design
Simulink Design Optimization™
Model parameter estimation from
test data
Optimization of
parameters
Response
optimization
Simulink Control Design™
Automatic tuning of PID
Controller blocks
Linearization of
Simulink models
Continuous-
Discrete time
conversions
Robust Control Toolbox™
Robust control design
Automatic tuning
of gain-scheduled
controllers
![Page 28: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/28.jpg)
30
Connect MATLAB/Simulink to ROS
Utilize useful toolboxes for algorithm development(Image Processing, Machine Learning, CVST, etc.)
Use simulator to verify algorithms virtually
Deploy algorithms through code generation
A New MathWorks Solution for Robotics Development
Robotics System Toolbox
Integrate MATLAB with ROS using Robotics System Toolbox
ROS
![Page 29: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/29.jpg)
31
Process
logged data
Log file
Message
communication
with robots
Message
communication
with Simulator
Visualization /
Data analysis
Deploy on
Hardware/PIL
Robotics
System
ToolboxMATLAB/Simulink
Algorithm/Controls
development
(data processing,
visualization, logging,
robot controls, etc.)
Conclusion
MATLAB/Simulink Tools to Increase Efficiency of Robotics Development
![Page 30: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/30.jpg)
32
Training and Consulting Services
Investment Effectiveness Training Services
Routine Training Tokyo, Nagoya, Osaka
Onsite Training Held at customer sites
Curriculum customization available
Consulting Services
Custom “Jumpstart” Short-term focused tool adoption support
Advisory Service
Maximize ROI
Course: Designing Robotics Algorithms in MATLAB
(MLRO - MATLAB と ROS によるロボティクス)
![Page 31: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/31.jpg)
33
What Next?
Investigate training courses
Request a trial and test with downloadable Virtual Machine http://www.mathworks.com/supportfiles/robotics/ros/virtual_machines/v1/installation_instructions.htm
Come see Baxter in action at the demo booth!
![Page 32: Robotics System Toolboxによる ロボティクスアプリケーション … · 10 What is ROS (Robot Operating System)? With the intent to enable researchers to rapidly develop](https://reader030.vdocuments.net/reader030/viewer/2022040803/5e3d4a9e07f9f916ac69c297/html5/thumbnails/32.jpg)
34
Thank You For Your Attention
ご清聴ありがとうございました
© 2015 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The
MathWorks, Inc. See www.mathworks.com/trademarks for a list of additional
trademarks. Other product or brand names may be trademarks or registered
trademarks of their respective holders.