UB CSE 716 - Mobility Robot Integration Software User’s Guide

Unformatted text preview:

Part Number: 2841; Rev. 4Mobility Robot Integration Software User’s GuideCopyright and Liability InformationPREFACE PrefaceCHAPTER 1 Getting Started with Mobility Robot Integration SoftwareCHAPTER 2 A Tour of Mobility With the MOM Graphical InterfaceCHAPTER 3 Examples of Mobility ProgramsCHAPTER 4 MOM — The Mobility Graphical InterfaceCHAPTER 5 Mobility Programming With Class Frameworks (C++ and Java)CHAPTER 6 Mobility Robot Integration Software OverviewCHAPTER 7 Mobility Building Blocks: Basic Robot Components and InterfacesCHAPTER 8 Sim: The Mobility SimulatorCHAPTER 9 Advanced Issues And Common QuestionsAPPENDIX A Installing MobilityAPPENDIX B External Copyright InformationGLOSSARY GlossaryContentsFiguresPREFACE PrefaceWelcome To the World of iRobot Research Mobile RoboticsTechnical Support From iRobotEmail SupportWeb Page SupportMailing List SupportPhone CallsDocumentationUsing This GuideDocumentation FeedbackCHAPTER 1 Getting Started with Mobility Robot Integration SoftwareWelcome to Mobility Robot Integration SoftwareWhat is Mobility Robot Integration Software?FIGURE 1 - 1. The Mobility Environment in ContextWhy did we develop Mobility?Getting Ready to Explore MobilityCHAPTER 2 A Tour of Mobility With the MOM Graphical InterfaceRunning MOM1. Make sure the robot is turned on and enabled for software control. Check the User's Guide for ...2. Log in to the computer as user:mobility, password:mbyrwi3. Run the Naming Service with the command prompt> name -i4. Run the base server with the command prompt> base5. Open another window on the robot computer and run MOM with the command prompt> momFIGURE 2 - 1. MOM’s Object Hierarchy View WindowViewing Sonar Sensor Output through MOMDriving your Robot with MOMFIGURE 2 - 2. MOM Drive View and Range View Windows1. Slide the mouse up to drive the robot forward2. Slide the mouse down to drive the robot in reverse.3. Move the mouse right on the screen to turn the robot to the right.4. Move the mouse left on the screen to tun the robot to the left.CHAPTER 3 Examples of Mobility ProgramsRobot Programming Tips and TricksA Simple Mobility Program: simple_followSimple Follow ProgramNotes On Simple Follow ProgramGetting More Sensor Readings: simple_follow_2Getting SICK-PLS Laser Scanner ReadingsGetting Base Sonar ReadingsA Note on Indexing on the B21rGetting Bump Panel ReadingsThe Program simple_follow_2Makefile for simple_follow_2Mobility In Action – More Realistic ExamplesSquare_and_Circle: A Mobility Sample ProgramSquare_and_Circle’s System ConfigurationFilling Out Square_and_Circle’s FunctionalityWander: A More Interesting Mobility sample programWander’s System ConfigurationFilling Out Wander’s FunctionalityDesigning a Mobility Program1. Derive some new component class(es) from the Mobility Class Framework, and add to or override ...2. Write a main program to create the SystemModule component for your new program. Add the new co...3. Write code to initialize your SystemModule, which will initialize any components you’ve insert...4. Write code to activate your SystemModule. This will initialize the ORB library and connect you...CHAPTER 4 MOM — The Mobility Graphical InterfaceMOM: An OverviewUnderstanding MOM's Environment1. environment variables;2. the Naming Service; and3. some of the different ways Mobility programs can be distributed.iRobot Factory Pre-installed ConfigurationInvoking the Naming Service1. Start the aborted program again. It will register a new object with the same name, replacing t...2. Shut down all Mobility programs using the Naming Service and restart the Naming Service with t...3. Try running the nsclean Mobility utility. This utility is intended to remove invalid object re...The Base ServerTABLE 4 - 1. Mobility Base Server Program For Type of Robot1. When the base server attempts to register with the Naming Service, if a previous run of the ba...2. When the base server starts communicating with the robot firmware (in most models, the rFLEX c...3. In some robot models, it is normal for there to be occasional communication errors.Starting Up MOMMOM's Graphical InterfaceFIGURE 4 - 1. MOM’s Object Hierarchy View WindowRange (Sonar) ViewFIGURE 4 - 2. Selecting MOM’s Range View WindowFIGURE 4 - 3. MOM’s Drive View Window and Range View WindowThe Object HierarchyPropertiesDebug OutputComing SoonCreating and Running ObjectsActive ObjectsHot-Pluggable ConnectionsAdding a ViewerLoading ConfigurationsSaving ConfigurationsCHAPTER 5 Mobility Programming With Class Frameworks (C++ and Java)The Mobility Class Framework Model (Language Dependent C++/Java)1. Interface Methods2. Helper Methods3. Template Methods4. Hook Methods.Interface MethodsHelper MethodsTemplate MethodsHook MethodsBuilding on the Mobility Class Framework1. Write a subclass of one of the framework objects; and2. Extend and/or override the built-in behavior of that class to implement the object for a new s...The Elements of Mobility Robot Integration SoftwareFIGURE 5 - 1. Mobility in the Context of the C++ and Java Programming EnvironmentsMobility Tools: Robot Tools and User InterfacesThe Basics: Robot Components and InterfacesInterface DefinitionsObject Request Broker (ORB)O/S Abstraction LayersCHAPTER 6 Mobility Robot Integration Software OverviewMobility Robot Object Model (Language Independent)Robot Object Model OverviewFIGURE 6 - 1. An Example Mobility Robot Software SetupAn Example Mobility Robot Control SystemFIGURE 6 - 2. Mobility Class Diagram: Core and ComponentsThe Mobility Core InterfacesContained Objects Interface1. have explicit identity;2. can be located in containers; and3. know that they are part of a container structure.1. An object is created in the Uninitialized. state2. An object's creator must initialize an object before use, causing the object to enter the Init...3. An initialized object may become an Active object, that is, may receive its own thread control.4. When an Active object is stopped or waiting for synchronization, it is in the ActiveWaiting st...5. When an Active object has been alerted of a particular condition, but has not yet synchronized...FIGURE 6 - 3. Mobility Object StatesObject Container InterfaceProperty Container InterfaceActiveObject InterfaceObject Factory InterfaceMobility Externalization Interfaces1. The I/O Stream, an abstraction of a serial medium that supports read and write operations like...2. The externalizable object, which can write its persistent state to an IOStream when


View Full Document

UB CSE 716 - Mobility Robot Integration Software User’s Guide

Download Mobility Robot Integration Software User’s Guide
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Mobility Robot Integration Software User’s Guide and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Mobility Robot Integration Software User’s Guide 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?