Presentation is loading. Please wait.

Presentation is loading. Please wait.

Department of Computing and Information Sciences Kansas State University Design Methodology for State based Embedded Systems Case Study: Robot Controller.

Similar presentations


Presentation on theme: "Department of Computing and Information Sciences Kansas State University Design Methodology for State based Embedded Systems Case Study: Robot Controller."— Presentation transcript:

1 Department of Computing and Information Sciences Kansas State University Design Methodology for State based Embedded Systems Case Study: Robot Controller Phaneendra Vanka Graduate Student (Masters’ Program)

2 Department of Computing and Information Sciences Kansas State University Contents  Introduction  Demo  Design Methodology for Time-Triggered State Machine based systems  Case Study: Robot Controller  Questions

3 Department of Computing and Information Sciences Kansas State University Introduction

4 Department of Computing and Information Sciences Kansas State University Behavior Control  Behavior – tasks that process external/internal sensory information and issues an action.  Reactive robot control architecture.  Complex behavior – series of alternations of simple behaviors.  Hierarchical Model.

5 Department of Computing and Information Sciences Kansas State University LEGO MINDSTORMS  Robotics Invention System Kit consists of motors, touch sensors, light sensors, bricks, gears etc.  RCX Brick - Hitachi H8/3292 series microcontroller. - 16 MHz of clock speed. - 16Kb ROM. - 32 Kb external RAM.

6 Department of Computing and Information Sciences Kansas State University leJOS  Java Platform for the RCX Brick.  leJOS API - java.lang, java.util and java.io - classes to control motors, sensors, buttons, IR communication, navigation etc.

7 Department of Computing and Information Sciences Kansas State University Behavior Control API Behavior boolean takeControl( ) void action( ) void suppress( ) Arbitrator public Arbitrator (Behavior[ ] behaviors)

8 Department of Computing and Information Sciences Kansas State University Robot Controller  A modification of the Navigator robot as given in Brian Bagnall’s book “Core Lego Mindstorms Programming”.  Sensors and Inputs: Touch sensor, Timer and two Rotation Sensors.  Actuators: Three motors.

9 Department of Computing and Information Sciences Kansas State University Behavior’s of Robot Controller  MOVE (true):  Travel to a random point  COMMAND (Input from IR transceiver):  Travel to a predefined point. If there is an obstacle go around that obstacle  BUMP (Input from touch sensor):  Travels 20 units in backward direction.  GO HOME (Timer as input):  Travel to the starting point  ARM ROTATE (Timer as input):  Rotate the arm.

10 Department of Computing and Information Sciences Kansas State University Robot Controller’s Behavior Model GO HOME COMMAND MOVE Timer Command Motors S S S Point of Suppression Default Touch Sensor BUMP S Timer ARM ROTATE

11 Department of Computing and Information Sciences Kansas State University DEMO

12 Department of Computing and Information Sciences Kansas State University Design Methodology for Time-Triggered State Machine based systems

13 Department of Computing and Information Sciences Kansas State University Ration al Unified Process Actors Use-Cases Class Diagrams Use-Case realizations Implementation Use-Case Model (what) Analysis/Design (how) Actual code

14 Department of Computing and Information Sciences Kansas State University Use-Case realizations WAIT WAKEUP

15 Department of Computing and Information Sciences Kansas State University Use-Case realizations with asynchronous waits  Allocating a thread for each scenario with synchronization code  Finite State Machine based implementation

16 Department of Computing and Information Sciences Kansas State University Allocating a thread for each scenario Actors Use-Cases Class Diagrams Use-Case realizations Component code Identify regions in which synchronization is required Complete code Global invariants (patterns) Coarse- grained solution Fine-grained code A Structured Approach to Develop Concurrent Programs in UML, Masaaki Mizuno, Gurdip Singh, Mitchell Nielsen

17 Department of Computing and Information Sciences Kansas State University Finite State Machine based implementation Actors Use-cases Class Diagrams Use-case realizations Revised Class Diagram Scenarios for threads Implementation Original Class Diagram + State information + Active Classes Time Triggered

18 Department of Computing and Information Sciences Kansas State University Event Triggered Systems Boundary ClassOther Classes

19 Department of Computing and Information Sciences Kansas State University Time Triggered Systems Boundary ClassActive ClassOther Classes

20 Department of Computing and Information Sciences Kansas State University From the above discussion we have the following combinations  Time Triggered State Machine based implementation  Event TriggeredThread for each scenario

21 Department of Computing and Information Sciences Kansas State University Case Study : Robot Controller

22 Department of Computing and Information Sciences Kansas State University Use Cases for Robot Controller  MOVE (true):  Pick up a random point (x,y) to reach.  Calculate the angle and distance to (x,y).  Rotate for the angle and travel the distance in straight line.  COMMAND (Input from IR transceiver):  Calculate the angle and distance to (MAXX, MAXY).  Rotate for the angle and travel the distance in straight line.  BUMP (Input from touch sensor):  Travel 20 units in backward direction.  GO HOME (Timer as input):  Calculate the angle and distance for initial point (0,0).  Rotate for the angle and travel the distance in straight line.  ARM ROTATE (Timer as input):  Rotate the arm in forward direction for 2 seconds  Rotate the arm in backward direction for 2 seconds STEER (Inputs from Rotation Sensors):  Uses rotation sensor to find angle rotated and distance traveled.  Keeps the travel in straight line.

23 Department of Computing and Information Sciences Kansas State University Use Case Model for Robot Controller

24 Department of Computing and Information Sciences Kansas State University Class Diagram

25 Department of Computing and Information Sciences Kansas State University Use Case Realization Example Wait Until MOVE is triggered Pick a new point (x, y) Calculate angle and distance Start the motors Wait Until required angle is rotated Stop motors Update geometry Start the motors Wait Until required distance is traveled Stop motors Update geometry Robot Controller : MOVE Behavior

26 Department of Computing and Information Sciences Kansas State University Use Case Realization Example Wait Until MOVE is triggered Pick a new point (x, y) Calculate angle and distance Start the motors Wait Until required angle is rotated Stop motors Update geometry Start the motors Wait Until required distance is traveled Stop motors Update geometry Robot Controller : MOVE Behavior Asynchronous waits

27 Department of Computing and Information Sciences Kansas State University actions Behavior Action  Each behavior is a set of actions.  After completing one action it goes to the next action of the behavior.  Describe the entire system using finite state machine.  Allocate threads to traverse through the state machine.  Needs only mutual exclusion of shared variables. Finite State Machine Method

28 Department of Computing and Information Sciences Kansas State University Use Case Realization Example Wait Until MOVE is triggered Pick a new point (x, y) Calculate angle and distance Start the motors Wait Until required angle is rotated Stop motors Update geometry Start the motors Wait Until required distance is traveled Stop motors Update geometry Tippy Senior : MOVE Behavior States

29 Department of Computing and Information Sciences Kansas State University Revised Class Diagram

30 Department of Computing and Information Sciences Kansas State University Use Case Realization Example Wait Until MOVE is triggered Pick a new point (x, y) Calculate angle and distance Start the motors Wait until required angle is rotated Stop motors Update geometry Start the motors Wait Until required distance is traveled Stop motors Update geometry Tippy Senior : MOVE Behavior Arbitrator Rotation Sensor Thread

31 Department of Computing and Information Sciences Kansas State University takeControl GO HOME takeControl BUMP takeControl COMMAND Action (COMMAND) Action (GO HOME) Action (BUMP) DONE Arbitrator thread takeControl MOVE Action (MOVE)

32 Department of Computing and Information Sciences Kansas State University takeControl GO HOME takeControl BUMP takeControl COMMAND Action (COMMAND) Action (GO HOME) Action (BUMP) DONE Rotation Sensor Thread takeControl MOVE Action (MOVE)

33 Department of Computing and Information Sciences Kansas State University Acknowledgement  Dr. Masaaki Mizuno  Dr. Gurdip Singh  Dr. Mitchell Nielsen

34 Department of Computing and Information Sciences Kansas State University Questions ???


Download ppt "Department of Computing and Information Sciences Kansas State University Design Methodology for State based Embedded Systems Case Study: Robot Controller."

Similar presentations


Ads by Google