embedded systems details. object model: four main system objects or classes controller object might...
Post on 19-Dec-2015
214 views
TRANSCRIPT
![Page 1: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/1.jpg)
Embedded Systems DetailsEmbedded Systems Details
![Page 2: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/2.jpg)
Object Model: Four main system objects or classesObject Model: Four main system objects or classes
Controller object might be made up of several controllers is the brains of the system. Takes input from the sensors and gives instructions to the
actuators.
Sensor object environmental objects that gives information to controller. Can be passive (thermometer) or active (button).
![Page 3: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/3.jpg)
Object Model: Four main system objects (continued)Object Model: Four main system objects (continued)
Actuator object Environmental objects that are controlled by the controller. Can be turned on or influenced by controller. Examples: User indicator lights, motors, burners.
User Interface object A display for the user. Can be made up of both sensors and actuators. Example: machine control panel
![Page 4: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/4.jpg)
Step One: Develop a high-level object model
EmbeddedSystem
Sensor Controller Actuator User-Interface
Class
Association Aggregation
Inheritance
Zero or more
Operation()
Attribute()
Class Name
Button Pedal
* **
*
![Page 5: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/5.jpg)
Review of Dynamic ModelReview of Dynamic Model
A dynamic model is a type of state machine. System can only be in one state at a time. Arrows: Transitions
from one state to another happen when events happen.
Events are labeled on the transitions. Guards are conditions that keep a transition from
happen, such as [is in neutral or park ]
![Page 6: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/6.jpg)
Step Two: Develop a system-level dynamic model
Idle or off state Running state
‘On’ button pushed [in neutral or park]
‘Off’ button pushed
Transition
State
[ condition ] Guard
![Page 7: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/7.jpg)
Example: Automotive Door Control
The system controls the windows and door locking functions.
All doors have window roll up and down controls. Driver’s door has window lock feature. Driver and front passenger have door lock and unlock
toggle. Fob unit for locking and unlocking doors, with driver
notification (horn honk and lights flash.) Three concurrent systems identified.
![Page 8: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/8.jpg)
![Page 9: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/9.jpg)
![Page 10: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/10.jpg)
![Page 11: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/11.jpg)
![Page 12: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/12.jpg)
![Page 13: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/13.jpg)
Summary of development process
The object model shows the real world objects grouped in classes with attributes and operations and associations.
The dynamic model shows the control aspects with superstates refined into substates.
![Page 14: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/14.jpg)
Embedded Systems DesignEmbedded Systems Design
More Detail on Process
![Page 15: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/15.jpg)
Review of Embedded Systems
Software controller that is interacting with its hardware environment through sensors and actuators.
Concurrency and real time issues. Safety critical nature of many of these systems. Increased demand for these systems to be
designed well.
![Page 16: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/16.jpg)
High level design: Initial thoughts for embedded systems.
Assume there is a hardware environment. Assume that somehow the needed signals are
coming from the environment (sensors.) Assume the needed hardware is there to respond
to your signals (actuators.)
![Page 17: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/17.jpg)
Object Model
In UML the object model is the starting place for the modeling process.
The object model will include objects and their relationships.
The Object Model will be the static, structural aspect of the system.
Class
attribute
operation
![Page 18: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/18.jpg)
Identify Real World Objects
Read over the problem description and find the nouns in the text.
These nouns are candidates for objects in your object model.
Discard unnecessary and incorrect classes. Object classes will include the controller (software
unit that will be built), sensors, and actuators.
![Page 19: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/19.jpg)
Data Dictionary: needs to be written
A written paragraph describing each modeling entity.
Needed so that names are non-ambiguous.
![Page 20: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/20.jpg)
Class: Sensor
Because of the common properties of all sensors, this can be a class of objects, called a superclass.
Generalization - this superclass can be generalized into subclasses.
Inheritance - each subclass will inherit the properties or features from the superclass.
Examples: user interface (buttons etc), thermometers, hardware sensors.
![Page 21: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/21.jpg)
Class: Actuator
Similarly the actuators will probably become a superclass.
Generalization - The various actuators can be generalized into subclasses.
Inheritance - each actuator subclass will inherit properties or features from the superclass.
Examples: LEDs, motor controls, etc.
![Page 22: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/22.jpg)
The Controller
At an abstract level, this would be only one object in most embedded systems.
This object would be refined at lower levels of the modeling process into subsystems or sub-objects.
Aggregation could be used to show the parts of the controller.
![Page 23: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/23.jpg)
Model itself
Graphically a class is shown as a box with the name on top.
Attributes (middle third) and operations (bottom third) added eventually.
Attributes and operations are not needed for high-level object model.
Class
attribute
operation
![Page 24: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/24.jpg)
Find the Associations
Interaction between objects must be shown by associations or lines draw with labels. ex: line between user button and associated LED.
Many times these associations will be a physical connection between objects in an embedded system.
Multiplicity must be shown eventually.
![Page 25: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/25.jpg)
Example
Controller
Actuators Sensors
Water levelUser buttonsMotorLED
readsturned on by
**
![Page 26: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/26.jpg)
Conclusion about Object Model:
Not very complex at first. More details will come as designer proceeds
from abstraction to more and more concreteness. controller will be divided into more objects attributes and operations are identified and
included.
Starting place for OO Modeling. Sets the stage.
![Page 27: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/27.jpg)
Next step: Dynamic Model
The dynamic model shows the control aspect of the system.
Because embedded systems are mainly controllers, the dynamic model is the ‘key’ model for embedded systems.
This model can show the timing aspects. Shows sequence of operations in response to
external stimuli.
![Page 28: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/28.jpg)
Getting started on a Dynamic Model
Helpful to make a scenario: sequence of events that happens in one execution of a
system. Example: insert coins, make selection, pop dispensed.
Interface (high-level prototyping) a rough draft of user interface will help thinking about
the events in an embedded system.
![Page 29: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/29.jpg)
Interface (type of rapid prototyping)
0
6 7 8 8
4321
5
clearenter cancel
receipts cash slot
ATM interface from Figure 8.17 by Rumbaugh
![Page 30: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/30.jpg)
continue getting started….
Next make an event trace. each object is a vertical line. events as horizontal arrow. time goes from top to bottom.
Use previously discussed ‘creation tips.’
![Page 31: Embedded Systems Details. Object Model: Four main system objects or classes Controller object might be made up of several controllers is the brains of](https://reader034.vdocuments.us/reader034/viewer/2022051618/56649d375503460f94a0f2f6/html5/thumbnails/31.jpg)
Example of an Event TraceUser ATM Consortium Bank
insert card
request password
enter passwordverify account
verify card with bank
bank account OKaccount OK
request kind
enter kind
request amount
enter amountprocess transaction
process bank transactions
bank transaction succeeds
Example from Figure 8.18 of Rumbaugh
Event trace for ATM scenario