Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A...
Transcript of Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A...
![Page 1: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/1.jpg)
Mobile Robotics:A Component Based Approach
ECE 750 – T4: Component Based Software SystemsProf. L. Tahvildari
Yasmin Hovakeemian (20165205)Adam Bertrand (20144032)
![Page 2: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/2.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
2
Outline
IntroductionRobotics & TerminologySensors
Proposed Robot & MissionCurrent Accomplishments & Future WorkSimulation and PerformanceRelated Research/Common frameworksReferences
![Page 3: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/3.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
3
Introduction to Robotics
Multidisciplinary field that lends itself readily to component based software systems (CBSS)
Rapid developmentLow costModularity
Robots generally have the following three aspects:
Set of sensorsProgram of robot behavior (state estimation and control)Set of actuators and effectors
Robotics Fundamentals [4]
![Page 4: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/4.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
4
Robotic FundamentalsSensors
Sensor classification [5]:Proprioceptive sensors (Internal):
Wheel encodersExteroceptive sensors (External):
GPSSONAR/LaserBumpers
Sensors can be chosen based on: Environmental constraintsObjective/purpose (ie: vacuum robots)
![Page 5: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/5.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
5
Robotic FundamentalsRobot Taxonomy
Autonomous vs. Non-autonomousMobile vs. Immobile/StationaryPhysical vs. Virtual (‘Soft-Bot’ a.k.aIntelligent Agent)
![Page 6: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/6.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
6
Robotic FundamentalsControl Architectures [6]
NASREM architecture:Sense, model, plan, act
Subsumption architecture:Layered control system
TCA architecture:Task-specific modules with centralized control module
LAAS architecture:Decisional (mission supervisor & task supervisor) and functional levels
![Page 7: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/7.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
7
Robotic FundamentalsControl Architecture Characteristics [6]
Hierarchical vs. Centralized ControlFunctional vs. BehavioralReactive vs. Deliberate
![Page 8: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/8.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
8
Why a ‘Soft-Bot’?
No hardware needed (cheaper)Can exploit advantages of component based software systems
Reusability & ModularityExtendibility
Time and Cost efficient
![Page 9: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/9.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
9
Proposed Project
Goal:Build an centralized autonomous mobilesoft-bot using concepts from component based software systems to perform a specific task/mission
![Page 10: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/10.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
10
Definition of Mission/Task
Autonomously navigate the proposed circuit as fast as possible.Avoid any obstacles in the way of the robot.Comply with any traffic signals on the course.
![Page 11: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/11.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
11
System ModelHigh Level Architecture
High Level System Design of Mobile Autonomous Robot
Environment
![Page 12: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/12.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
12
System ModelHigh Level Architecture
Simulation/GUI
Controller
Robot Motor Robot Steering GPS SONAR Laser Encoders State Estimator
SensorsEffectors
![Page 13: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/13.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
13
System ModelComponent Level Architecture
Does not show get/set and constructor operationsShows Current Accomplishments
![Page 14: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/14.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
14
Mission
Currently, soft-bot mission (task) is to start and stop a random walkIn the future, mission of soft-bot can be adapted by simply changing the executeBehavior() method in the Robot class and environment.
![Page 15: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/15.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
15
MissionsState Diagrams
Random Walk in 4-walled environment
![Page 16: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/16.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
16
MissionsState Diagrams – Cont’d
Figure 8 track mission with traffic light and stop signs
![Page 17: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/17.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
17
Performance & Simulation
Simulation (Environment, Sensor Data)Performance metrics:
Time to complete missionSmoothness of trajectory/pathRobustness to noise in sensor data
![Page 18: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/18.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
18
Analysis of System
Advantages:Reusability of codeExtendibility (add components as needed)Behavior can be easily adaptedNo hardware costs
Disadvantages:Need to simulate hardware components (can be complex)Need sensor data to be realistic and coherent with one anotherMay not necessarily match up with the real world
![Page 19: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/19.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
19
Current and Future work
Current Accomplishments:Soft-bot with random walk mobility
Future Work:Add additional sensor capability (eg: Sonar, Compass, etc)Develop more complex environments
ObstaclesFigure 8 TrackNoise
GUI development (envision the robot in its environment with a mission)
![Page 20: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/20.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
20
Related Research
Component-based robotics frameworks are available:
Maintain repository of components Emphasize extensibilityAllow for development of single vehicle to distributed and/or decentralized robots
Advantages of frameworks [7]:Formal organization of componentsUniform communication mechanism between componentsComponent reusabilityStarting point for amateurs
Example ApplicationDARPA Grand Challenge
![Page 21: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/21.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
21
Related ResearchAvailable Component Based Frameworks
Sensor Simulator
Build-in 3D vision
EasyModerateEasy-ModerateModerateEase of use
Built-in Localization
Built-in visualization (GUI)
Open Source
Windows/Linux/MAC
Windows/Linux/MAC
Windows/Linux/MAC
LinuxPlatform
SimbadPlayer/GazeboWebotsCARMEN
![Page 22: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/22.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
22
Summary
Since Robotics is such a module-based field, it can take advantage of organizational aspects of component based software systemsA number of available software frameworks for component-based soft-botsCurrent OO implementation of soft-bot capable of a random walk task
![Page 23: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/23.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
23
References[1] A. Brooks, T. Kaupp, A. Makarenko, S. Williams, and A. Oreback, “Towards component-based
robotics,” in Proceedings of the 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems. (Edmonton, Alberta, Canada, August, 2005, pps. 3567–72).
[2] D. B. Stewart, and P. K. Khosla, “Rapid Development of Robotic Applications Using Component-Based Real-Time Software,” in Proceedings of the 1995 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS’95). (Pittsburgh, PA, U.S.A, August, 1995, pps. 465–470)
[3] P.D. Reiners, “Robots, Mazes, and Subsumption Architecture,” in IBM Developer Works, [online] December 2007. Available: http://www.ibm.com/developerworks/java/library/j-robots/
[4] T. Jones, “Open Source Robotics toolkits,” in IBM Developer Works, [online] September, 2006. Available: http://www.ibm.com/developerworks/linux/library/l-robotools/?ca=dgr-lnxw09OSRoboticToolkits
[5] École Polytechnique Fédérale de Lausanne, “Course Notes for Mobile Robots Course,” [online] 2008. Available: http://moodle.epfl.ch/course/view.php?id=261
[6] A.A.D. Medeiros, “A Survey of Control Architectures for Autonomous Mobile Robots,” in Journal of the Brazilian Computer Society, vol. 4, no. 3, 1998.
[7] X. Li, Y. Jin, and X. Hu, “An XML-driven Component-Based Software Framework for Mobile Robotic Applications,” in Proceedings of the 2nd IEEE/ASME International Conference on Mechatronic and Embedded Systems and Applications. (Beijing, China, August, 2006, pps. 1-6)
[8] L. Hugues and N. Bredeche, “Simbad: an Autonomous Robot Simulation Package for Education and Research” in Proceedings of The International Conference on the Simulation of Adaptive Behavior. Rome, Italy - Lecture Notes in Computer Sciences/ Artificial Intelligence Series, vol. 4095, 2006, pp. 831–842.
![Page 24: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/24.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
24
References[9] T.E. Bihari and P. Gopinath, “Object Oriented Real-Time Systems: Concepts and Examples,” in
Computer, vol. 25, no. 12, pps. 25-32, Dec. 1992.[10] D. Miller and R. Lennox, “An Object-Oriented Environment for Robot System Architectures,”in
Proceedings of the 1990 IEEE International Conference on Robotics and Automation. (Cincinatti, OH, U.S.A, May 1990, vol.1, pps. 352-361).
[11] C. Zielinski, “Object-Oriented Robot Programming,” in Robotica, vol. 15, no. 1, pps. 41-48, 1997.[12] J.A. Fryer, G.T. McKee and P.S. Schenker, “Configuring Robots from Modules: An Object-Oriented
Approach,” in Proceedings of the 8th International Conference on Advanced Robotics. (Monterey, CA, U.S.A, July 1997, pps. 907-912).
[13] C. Schlegel, “Communication Patterns as Key Towards Component-Based Robotics”, in International Journal of Advanced Robotic Systems, vol. 3, no.1, pps. 49-54, 2006.
[14] L.Tahvildari, “Course Notes for Component Based Software Engineering Course,” [online] 2009. Available: http://www.stargroup.uwaterloo.ca/~ltahvild/courses/ECE750-11/materials/
[15] I. Crnkovic, B. Hnich, T. Jonsson, and Z.Kiziltan, "Specification, Implementation, and Deployment of Components", in Communications of the ACM, vol. 45, no. 10, pps. 35-40, October 2002.
[16] Carmen Robot Navigation Toolkit. [online] Available: http://carmen.sourceforge.net/intro.html[17] Player: Cross-platform Robot Device Interface and Server. [online] Available:
http://playerstage.sourceforge.net/index.php?src=player[18] Webots 6. [online] Available: http://www.cyberbotics.com/products/webots/
![Page 25: Mobile Robotics - STARltahvild/courses/... · July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach 20 Related Research Component-based robotics frameworks are available:](https://reader035.fdocuments.us/reader035/viewer/2022071116/5ffed46b9e27dc2da872062f/html5/thumbnails/25.jpg)
July 13, 2009 ECE 750 - T4: Mobile Robotics: A Component Based Approach
25
Questions?