Developing Autonomous Systems With MATLAB And Simulink - MathWorks

4m ago
8 Views
1 Downloads
5.93 MB
44 Pages
Last View : 1d ago
Last Download : 3m ago
Upload by : Hayden Brunner
Transcription

Developing Autonomous Systems with MATLAB and Simulink Vivek Raju 2015 The MathWorks, Inc. 1

Challenges in Developing Autonomous System Challenge 1: Understand the dynamics of the autonomous system and design control algorithm Challenge 2: Design vision, radar and perception algorithms Challenge 3: Verify and Implement the algorithm on to a real hardware 2

What are we doing today? 3

Key Takeaway Autonomous system design using MATLAB and Simulink can help in : Understanding the dynamics and develop the control algorithm Model aerodynamics, propulsion and motion Design control algorithm in single environment Design vision, radar, perception algorithms Visualizing different sensor data Develop and test sensor fusion and tracking algorithm Implementing the algorithm on actual hardware Test and verify algorithm on 3D simulators Automatic C/C code generation on to actual hardware 4

Aerial Autonomous System Development Workflow Aerodynamics and flight Control Challenge 1: Understand the dynamics and design control algorithm Develop perception and planning algorithm Challenge 2: Design vision, radar and perception algorithms Test and Refine in Simulation Test and Refine on Real Robot Challenge 3: Verify and Implement the algorithm on to a real hardware Birds Eye View 5

Different Approaches for Modeling Dynamic systems Modeling Approaches First Principles Modeling Code Physical Networks (MATLAB) Block Diagram (Simulink) Modeling Language (Simscape language) (Simscape and other Physical Modeling products) Data-Driven Modeling Neural Networks (Neural Network Toolbox) System Identification (System Identification Toolbox) Statistical Methods (Model Based Calibration Toolbox) Symbolic Methods (Symbolic Math Toolbox) 6

Aerodynamics and control design 7

Supervisory control logic 8

Quickly model the Airframe using Aerospace blocksets 9

Design the flight control algorithm u s1 s2 Controller y s3 Plant Simulating plant and controller in one environment allows you to optimize system-level performance 10

Automatic PID tuning S1 S2 - S3 controller Use Simulink Control Design and the Control System Toolbox to automatically linearize the plant, design and tune your PID controllers 11

Quadcoptor –Flight Simulation Model 12

Aerial Autonomous System Development Workflow Aerodynamics and flight Control Challenge 1: Understand the dynamics and design control algorithm Develop perception and planning algorithm Challenge 2: Design vision, radar and perception algorithms Test and Refine in Simulation Test and Refine on Real Robot Challenge 3: Verify and Implement the algorithm on to a real hardware Birds Eye View 13

Common Questions from Engineers Integrating Autonomous Systems How can I visualize my sensor data? How can I develop & test sensor fusion and tracking algorithms? Target How can I verify performance and establish requirements? 14

Test vehicle equipped with sensors Camera Radar Lidar EO/IR Inertial measurement unit 15

Tools to Visualize Multiple Types of Data Birds Eye View Video with Annotations LiDAR & Point Clouds RADAR 16

Custom Visualization & Apps Open and extensible framework Synchronize data from multiple sensor sources 17

Visual Odometry? Manage Sensor data 18

Detailed Session on Image Processing and Computer Vision 19

Common Questions from Engineers Integrating Autonomous Systems How can I visualize my sensor data? How can I develop & test sensor fusion and tracking algorithms? Target How can I verify performance and establish requirements? 20

Why Sensor Fusion? Requires robust detection (low false positives) for obstacle avoidance – Needs classification of likely objects – Needs accurate measurements (range & speed) Sensor Fusion Camera Radar Range Accurate Poor Accurate Speed Measureable directly Estimated Measureable directly Angle Resolution Relatively Good Poor Object Classification Available Estimated Example: Automated Ground Vehicle 21

Fusion & Tracking Algorithm Development Workflow Synthetic data Algorithm Logged multi-sensor data Expected Behavior Generate code yes no C Code Refine algorithm Collect vehicle & lab data Integrate with embedded environment Create new scenario or refine sensor model 22

Tracking of multiple objects (or “targets”) with one or multiple sensors (e.g. radar, EO/IR, Lidar) Multi-object tracking Global nearest-neighbor assignment Kalman filtering Motion and measurement models Detection reporting 23

Common Questions from Engineers Integrating Autonomous Systems How can I visualize my sensor data? How can I develop & test sensor fusion and tracking algorithms? Target How can I verify performance and establish requirements? 24

Fusion & Tracking Algorithm Development Workflow Synthetic data Algorithm Logged multi-sensor data Expected Behavior Generate code yes no C Code Refine algorithm Collect vehicle & lab data Integrate with embedded environment Create new scenario or refine sensor model 25

Common Approaches to Synthesizing Test Data “Buy It” Buying “Off the shelf” solutions like Unreal, Unity, or other simulators enable you to author scenarios and synthesize sensor data “Build It” Building it yourself enables you to control the level of fidelity/complexity appropriate for your application If building for multiple users, it is important to select an approach which is scalable, maintainable, and testable 26

Scenario Generation in MathWorks Tools Phased Array Multi-Target Scenario Autonomous Driving Scenario Robotics Simulation Scenario 27

Aerial Autonomous System Development Workflow Aerodynamics and flight Control Challenge 1: Understand the dynamics and design control algorithm Develop perception and planning algorithm Challenge 2: Design vision, radar and perception algorithms Test and Refine in Simulation Test and Refine on Real Robot Challenge 3: Verify and Implement the algorithm on to a real hardware Birds Eye View 28

Examples of Hardware Implementation of Autonomous Systems 29

What is ROS (Robot Operating System)? An architecture for distributed interprocess communication Packages for common algorithms and drivers Multilanguage interface (C , Python, Lua, Java and MATLAB) 30

Advantages of ROS – Connectivity to 3D Simulators NODE NODE ROS: Connectivity to 3D simulators NODE Planning Localization NODE Motion control NODE Obstacle avoidance NODE NODE Global Map ROS: Communication framework and stack of libraries 31

Advantages of ROS – Connectivity to Hardware NODE LIDAR Camera RADAR NODE GPS/IMU ROS: Connectivity to hardware for autonomous systems NODE Planning Localization NODE Motion control NODE Obstacle avoidance NODE NODE Global Map ROS: Communication framework and stack of libraries 32

What can be done with the Robotics System Toolbox? MATLAB on PC Robot Networking MATLAB Code ROS Simulation environment Built-in algorithms SM Models Code Generation ROS node Generate standalone ROS node from Simulink 33

Aerial Autonomous System Development Workflow Aerodynamics and flight Control Challenge 1: Understand the dynamics and design control algorithm Develop perception and planning algorithm Challenge 2: Design vision, radar and perception algorithms Test and Refine in Simulation Test and Refine on Real Robot Challenge 3: Verify and Implement the algorithm on to a real hardware Birds Eye View 34

Quadrotor Motion Controller 35

System Level Design with MATLAB, Simulink and ROS ROS as Communication Framework Algorithm Design Independent of ROS 36

Demo 37

Key Takeaway Autonomous system design using MATLAB and Simulink can help in : Understanding the dynamics and develop the control algorithm Model aerodynamics, propulsion and motion Design control algorithm in single environment Design vision, radar, perception algorithms Visualizing different sensor data Develop and test sensor fusion and tracking algorithm Implementing the algorithm on actual hardware Test and verify algorithm on 3D simulators Automatic C/C code generation on to actual hardware 38

Flexible delivery options: Public training available worldwide Onsite training with standard or customized courses Web-based training with live, interactive instructor-led courses Self-paced interactive online training More than 30 course offerings: Introductory and intermediate training on MATLAB, Simulink, Stateflow, code generation, and Polyspace products Specialized courses in control design, signal processing, parallel computing, code generation, communications, financial analysis, and other areas Email: training@mathworks.in 39

Control System Design with MATLAB and Simulink This two-day course provides a general understanding of how to accelerate the design process for closed-loop control systems using MATLAB and Simulink . Topics include: Control system design overview System modeling System analysis Control design Controller implementation 40

Designing Robotics Algorithms in MATLAB This one-day course is for engineers designing mobile robotics algorithms for Robot Operating System (ROS) enabled simulators and robots. Topics include: Listing the design workflows possible with Robotics System Toolbox Communicating with ROS and Gazebo Building and testing mobile robotics algorithms Designing algorithms for execution and data sharing 41

MathWorks Training Upcoming Public Trainings Guaranteed to run Dates Location Image Processing with MATLAB May 24 – 25 Bangalore Computer Vision with MATLAB May 26 Bangalore Designing Robotics Algorithms in MATLAB Sept 28 Pune Email: training@mathworks.in URL: http://www.mathworks.in/services/training Phone: 080-6632-6000 42

Questions and Discussion 43

Contact MathWorks India Speaker Details Email: Vivek.Raju@mathworks.in Products/Training Enquiry Booth LinkedIn:https://www.linkedin.com/in/vivekraju87/ Call: 080-6632-6000 Mobile: 91-8971669718 Email: info@mathworks.in Your feedback is valued. Please complete the feedback form provided to you. 44

Control System Design with MATLAB and Simulink This two-day course provides a general understanding of how to accelerate the design process for closed-loop control systems using MATLAB and Simulink . Topics include: Control system design overview System modeling System analysis Control design Controller implementation

Related Documents:

Page 2 Autonomous Systems Working Group Charter n Autonomous systems are here today.How do we envision autonomous systems of the future? n Our purpose is to explore the 'what ifs' of future autonomous systems'. - 10 years from now what are the emerging applications / autonomous platform of interest? - What are common needs/requirements across different autonomous

MATLAB tutorial . School of Engineering . Brown University . To prepare for HW1, do sections 1-11.6 – you can do the rest later as needed . 1. What is MATLAB 2. Starting MATLAB 3. Basic MATLAB windows 4. Using the MATLAB command window 5. MATLAB help 6. MATLAB ‘Live Scripts’ (for algebra, plotting, calculus, and solving differential .

19 MATLAB Excel Add-in Hadoop MATLAB Compiler Standalone Application MATLAB deployment targets MATLAB Compiler enables sharing MATLAB programs without integration programming MATLAB Compiler SDK provides implementation and platform flexibility for software developers MATLAB Production Server provides the most efficient development path for secure and scalable web and enterprise applications

MATLAB tutorial . School of Engineering . Brown University . To prepare for HW1, do sections 1-11.6 – you can do the rest later as needed . 1. What is MATLAB 2. Starting MATLAB 3. Basic MATLAB windows 4. Using the MATLAB command window 5. MATLAB help 6. MATLAB ‘Live Scripts’ (for

3. MATLAB script files 4. MATLAB arrays 5. MATLAB two‐dimensional and three‐dimensional plots 6. MATLAB used‐defined functions I 7. MATLAB relational operators, conditional statements, and selection structures I 8. MATLAB relational operators, conditional statements, and selection structures II 9. MATLAB loops 10. Summary

foundation of basic MATLAB applications in engineering problem solving, the book provides opportunities to explore advanced topics in application of MATLAB as a tool. An introduction to MATLAB basics is presented in Chapter 1. Chapter 1 also presents MATLAB commands. MATLAB is considered as the software of choice. MATLAB can be used .

I. Introduction to Programming Using MATLAB Chapter 1: Introduction to MATLAB 1.1 Getting into MATLAB 1.2 The MATLAB Desktop Environment 1.3 Variables and Assignment Statements 1.4 Expressions 1.5 Characters and Encoding 1.6 Vectors and Matrices Chapter 2: Introduction to MATLAB Programming 2.1 Algorithms 2.2 MATLAB Scripts 2.3 Input and Output

Compiler MATLAB Production Server Standalone Application MATLAB Compiler SDK Apps Files Custom Toolbox Python With MATLAB Users With People Who Do Not Have MATLAB.lib/.dll .exe . Pricing Risk Analytics Portfolio Optimization MATLAB Production Server MATLAB CompilerSDK Web Application