
Robotics Applications Development Using Robotics System Toolbox™ (Robotics System Toolboxによるロボティクスアプリケーション開発) MathWorks Application Engineering Fred Noto & Carlos Santacruz-Rosero © 2015 The MathWorks, Inc.1 Complexities of Robotics Application Development MATLAB® and Simulink® can help resolve challenges with robotics application development 2 Agenda . Introduction . ROS and Robotics System Toolbox . Robotics development workflow . Demo: Baxter Checkers Demo . Conclusion 3 MATLAB and Simulink in Robotics Algorithm prototyping Wide variety of resources on using MATLAB/Simulink in Robotics 4 What Is Robotics Development? MathWorks tools are already being used in complex system development 5 MATLAB / Simulink in Robotics Development Input + Output Controller Plant - Festo Bionic Arm DLR Humanoid Robot YZU Robot Hand Efficient system level design that yields higher quality robotics systems 6 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. 7 Advanced Robotic Systems . High number of DoF . Nonlinearity . Multiple Layers of Control . Multiple States or Modes . Real time and No real- time software 8 Robotics System Toolbox for Robotics Development . Connecting MATLAB/Simulink to ROS ROS . ROS data exploration and analysis . Algorithms and transformation functions Features for flexible and convenient robotics development 9 What is ROS (Robot Operating System)? . 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 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 10 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 Gazebo http://www.mathworks.com/supportfiles/robotics/ros/ virtual_machines/v1/installation_instructions.htm Add visualization to simulations for effective algorithm evaluations 11 Developing Robotic Applications with ROS NODE NODE NODE NODE MATLAB Main CPU Image NODE Processing Ethernet NODE NODE NODE NODE Global Image pre- Map server Planner processing Sensors / Robot (CPU 2) Actuators NODE NODE NODE Local Kinematics Localization & NODE Planner & Control Mapping ROS nodes communicate through well-defined message interfaces 12 ROS Network Overview ROS Master Manage Registration Register Register Data Exchange Data Exchange ROS Node ROS Node ROS Node Log Log Rosbag Playback Management of data transmissions through the ROS network 13 ROS Node Communication Methods . Topics Publish Publish ROS /topic ROS Node(s) Subscribe Subscribe Node(s) . Services Response ROS ROS Node Request Node Service Service Server Client ROS message selection based on data usage and needs 14 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 15 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 16 Utilizing Robotics System Toolbox Connect MATLAB/Simulink to ROS for efficient algorithm development 17 General Robotics Development Workflow Test and Test and Explore Robot Develop Refine in Refine on Real Interface Algorithm Simulation Robot Verify algorithms at each step to refine design and prevent rework 20 Demo: Playing Checkers with Baxter Utilizing the power of MATLAB and interfacing with ROS 21 Algorithms Developed in MATLAB/Simulink Topics: - Camera - End Effector State - Joint State Topics: State Controller - Joint Commands - End Effector Commands Image Processing - Display Image Game Algorithm Low Level Control Path Planning Inverse Kinematics Interpolation Data processing and command calculations done in MATLAB/Simulink 22 Step 1 : Explore Robot Interface Test and Test and Explore Robot Develop Refine in Refine on Real Interface Algorithm Simulation Robot . Connect to simulated / real robot ROS over ROS . Explore available sensors and actuators . Retrieve some sensor data . Control the robot motion 23 Step 2 : Prototype Algorithm Test and Test and Explore Robot Develop Refine in Refine on Real Interface Algorithm Simulation Robot . Develop the algorithm in MATLAB using image processing tools . Run tests to ensure the algorithm behaves as expected 24 Step 3 : Test Algorithm in Simulator Test and Test and Explore Robot Develop Refine in Refine on Real Interface Algorithm Simulation Robot 25 Step 4 : Test your algorithm with actual robot Test and Test and Explore Robot Develop Refine in Refine on Real Interface Algorithm Simulation Robot 26 Next Step: Deploying your Algorithm Create a Generate a Generate ROS Stand Alone shared library Node with Executable with MATLAB Simulink with MATLAB Coder™ Compiler™ Determine deployment methods based on application 27 Optional Products for Robotics Applications Development Image Processing Computer Vision System Toolbox™ Toolbox™ . High-speed video I/O . Contrast adjustment . Point Cloud processing . Geometric transformations . Tracking . Various filters . Stereovision . Segmentation . Object analysis Image Acquisition Toolbox™ Statistics and Machine Learning . Image capture from standard H/W Toolbox™ . Analog, Camera Link, DCAM, . Multivariate statistics GigE Vision, USB camera, etc . Probability distribution . Microsoft Kinect Support . Machine learning . Experimental design . Statistical process control 28 Optional Products for Robotics Applications Development Control System Toolbox™ Simulink Design Optimization™ . Linear analysis . Model parameter estimation from . Classical test data control design . Optimization of . Modern parameters control design . Response optimization Robust Control Toolbox™ Simulink Control Design™ . Robust control design . Automatic tuning of PID . Automatic tuning Controller blocks of gain-scheduled . Linearization of controllers Simulink models . Continuous- Discrete time conversions 29 A New MathWorks Solution for Robotics Development Robotics System Toolbox ROS . 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 Integrate MATLAB with ROS using Robotics System Toolbox 30 Conclusion Log file Message communication Process with Simulator logged data Message Robotics communication with robots System Toolbox Deploy on Hardware/PIL MATLAB/Simulink Algorithm/Controls Visualization / development Data analysis (data processing, visualization, logging, robot controls, etc.) MATLAB/Simulink Tools to Increase Efficiency of Robotics Development 31 Training and Consulting Services Training Services Investment Effectiveness 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 によるロボティクス) 32 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! 33 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. 34.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages32 Page
-
File Size-