Download presentation
Presentation is loading. Please wait.
Published byJoseph Reed Modified over 9 years ago
1
Jill Goryca, Richard Hill American Control Conference June 17, 2013
2
Background System Models Control Software Implementation Task Planning Algorithm Simulation Results Conclusion
3
Goal: ◦ To control two or more robots that work together Challenges: ◦ Coordinate robot actions ◦ Respond to changing goals and conditions ◦ Scale small examples to larger ones Practical applications: ◦ Surveillance, search & rescue, and firefighting
4
Develop tools necessary to address complex scenarios Tools include: MATLAB Control Software Task-Planning Optimization
5
Apply supervisory control framework ◦ Allow controllable and uncontrollable events ◦ Assume all events are observable ◦ Formally ensure safety and nonblocking Use a relatively simple, but illustrative scenario involving control of two robots
6
Components: 2 robots 4 tasks 4 regions Rules: Complete all tasks ◦ 1 before 2, same robot ◦ 3 before 4, same robot Different regions
7
Finite State Machine (FSM) represents region boundaries and task locations One FSM for each robot Initial location of robot is marked with an arrow (Robot A starts in region 5) Geographical Constraints
8
Represents the rule that the robot must finish a task before it can start another one Task Contraints
9
Represents the order of task completion Task 1 before task 2 by the same robot Task 3 before task 4 by the same robot Task Completion
10
Represents the rule that robots may not be in the same region at the same time Avoidance
11
Use UMDES/DESUMA software Combine multiple FSMs to synthesize controller that meets goals Contains 638 states and 1666 transitions Text file format (*.fsm) is input to MATLAB control software
12
Interface High-Level Control Low-Level Control (D*Lite, VFH, Mapping) Simulation (Player/Stage) Planner (Main Control File) User InputFinite State Machine MATLAB Tool Intermediary (Goal Plan, Detect Region Events) Optimization (Calculate Costs, Dijkstra) Offline Online User Data
13
1 3 4 5 6 7 8 2
14
Interface High-Level Control Low-Level Control (D*Lite, VFH, Mapping) Simulation (Player/Stage) Planner (Main Control File) User InputFinite State Machine MATLAB Tool Intermediary (Goal Plan, Detect Region Events) Optimization (Calculate Costs, Dijkstra) Offline Online User Data
15
Script file generated from MATLAB Tool Name of Initial and Final State User Data matrices: ◦ States—from FSM file ◦ Events—from MATLAB Tool ◦ Tasks—from MATLAB Tool ◦ Regions—from MATLAB Tool
16
Interface High-Level Control Low-Level Control (D*Lite, VFH, Mapping) Simulation (Player/Stage) Planner (Main Control File) User InputFinite State Machine MATLAB Tool Intermediary (Goal Plan, Detect Region Events) Optimization (Calculate Costs, Dijkstra) Offline Online User Data
17
MATLAB high-level control code Written off-line References User Data file generated by MATLAB Tool Controls 1 robot “While” loop completes “mission” of FSM Executes optimal path through FSM Receives events from both robots (when crossing borders and finishing tasks)
18
Interface High-Level Control Low-Level Control (D*Lite, VFH, Mapping) Simulation (Player/Stage) Planner (Main Control File) User InputFinite State Machine MATLAB Tool Intermediary (Goal Plan, Detect Region Events) Optimization (Calculate Costs, Dijkstra) Offline Online User Data
19
Detects “uncontrollable” events (border crossing) Compares robot current position to all user- defined regions Converts list of region names to event names for calling function (Goal Plan)
20
Commands controllable events, sending robot to goal until event is detected. Uses low-level algorithms ◦ D*Lite ◦ VFH ◦ Mapping When uncontrollable event is detected, returns event names to calling function (Main Control File)
21
Interface High-Level Control Low-Level Control (D*Lite, VFH, Mapping) Simulation (Player/Stage) Planner (Main Control File) User InputFinite State Machine MATLAB Tool Intermediary (Goal Plan, Detect Region Events) Optimization (Calculate Costs, Dijkstra) Offline Online User Data
22
Plan the best path through FSM “Best” is defined as shortest time ◦ (shortest time = shortest distance) Path is used to: ◦ Control actions of robots ◦ Determine when mission is complete Path can be re-optimized if costs change
23
Determines cost matrix for Dijkstra’s algorithm. Cost is defined as straight-line distance between robot position and task locations. New robot position after completion of task is taken into account.
24
Plans minimum-cost path through FSM Sums total cost of all edges (events) Does not distinguish between robots
25
MATLAB high-level control algorithm Utilizes both robots working simultaneously Sums cost for each robot individually
26
Player/Stage simulation software Robot A completed tasks 3 and 4 Robot B completed tasks 1 and 2 1 1 2 2 3 3 4 4
27
Developed MATLAB control software and optimization algorithms ◦ MATLAB Tool Generates a data structure from FSM and user input that maps events to low-level functions ◦ Planner Commands controllable events based on optimal path Detects uncontrollable events ◦ Optimization Calculate costs as distance to task Choose optimal path through FSM for two robots
28
Expand MATLAB tool for additional DES applications with controllable and uncontrollable events. Further test control software ◦ More complex models, actual hardware Improve optimization algorithms ◦ Save cost information that has not changed, only choose from controllable events
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.