Dr. Subra Ganesan - Oakland University

Download Report

Transcript Dr. Subra Ganesan - Oakland University

Dr. Subra Ganesan
• Professor, Department of Computer Science
and Engineering
• Associate Director Product Development and
Manufacturing Center
• Director Real time DSP Systems Lab
• Oakland University
October 20, 2005 at SECS
Editor International Journal of Agile Manufacturing
( IJAM)
Council member of International Society of
Productivity Enhancement ( ISPE)
General Chair of :
Concurrent Engineering Conference 1997
IEEE IT conference 2001
Workshop on FPGA- 2002
IEEE Embedded system workshop- Sept 2003
International conference ICSIT, Algiers, July 2005
Chrysler summer intern in Manufacturing group1996, 97, 2005.
Worked on Plant Simulation using Simulation software
CATA report generation from Perceptron Vision based
controller. Web based end of line test-data analyzer.
Research Areas
* Information Technology application for
Real time Manufacturing
* Real time Embedded system:
DSP based embedded applications
Finger Print identification
Watermarking
MEMS gages for Structure health analysis
Tire pressure Monitoring
Embedded Software architecture
( Model Driven architecture for
Automotive applications
Real Time Vision based Automatic sorting of
Irregular shape product ( e.g. Fruits) by
Attributes like Size, color, surface defects
Example:
Use multiple CCD cameras, Process huge
Amount of image data, compute Area,
Axis, radius, coefficient of variation method etc.
Multiple DSP processors are used to execute in real time.
Fruit Sorting Experiment Set up.
Real Time Embedded System
Real time Engine controller,
On-Board-Diagnostics
DSP based Embedded Systems
Wireless communication- Mobile IP
Collision Avoidance – side collision
Collision Avoidance Analysis for
Lane Changing and Merging
Calculate in real time with side radar sensors,
the spacing which the vehicle should have to
avoid collision during Lane changing.
Provide Warnings to the driver
Steering Wheel Angle
Vehicle Speed
Windshield wiper status
Radio status
Audio Warning (radio)
Visual Warning
Diagnostics
Side Radar (Left)
Side Radar (Right)
Video
Camera
24Ghz
Rear Radar
System
Collision Avoidance
Electronic Control Unit
Powertrain
Electronic Control Unit
Anti-lock Braking
Electronic Control Unit
77 GHz
Frontal
Radar
Power Steering
Electronic Control Unit
Figure Complete “high-end” collision-avoidance system
Data Logger
Electronic Control Unit
Design of an UML-Based Evolutionary
Architectural Prototype for an Embedded
DSP based system in Automotive
Applications
Venkat Alladi and Subra Ganesan
Dept. of Computer Science,
Oakland University, Rochester Hills – 48309
[email protected]
Model Driven Architecture
• What is MDA ?
– Model Driven Architecture (MDA) is an
approach for building systems that are portable,
interoperable, and reusable. This presentation
will show how to create MDA for an engine
controller system that is independent of the
deploying platform.
What is UML?
• UML – Unified Modeling Language
– Unique and simple way to communicate design
with models that capture specifications
(features, business rules, and special
extensions)
– Easily extensible
– Standard industry practice
– State, Class, Sequence, and Component
diagrams
What is MDA?
MDA is an approach for:
–
–
–
–
Specifying a system independent of its platform
Specifying platforms
Choosing a particular platform for a system
Transforming the system specification into the
one for that particular system
What is MDA?
• Key Terms
–
–
–
–
–
–
–
–
–
System
Model
Model Driven
Architecture
View Point
View
Application
Platform
Platform Independence
What is MDA
• 3 Key Models of MDA
– Computation Independent Model (CIM)
• Represents Domain Model
– Platform Independent Model (PIM)
• Represents technology independent virtual machine
– Platform Specific Model (PSM)
• Represents a system for a specific platform
MDA and Embedded Systems
• How can MDA be used for Embedded
Systems?
– Separation of concerns
– Models independent of microcontroller
platform
– Domain driven reuse
MDA and Embedded Systems
How does MDA work for an Engine
Controller System?
- Following slides are going to demonstrate
how MDA concepts can be applied to a
Engine Controller system.
MDA is
An ideal way to design embedded software
independent of the platform
An unique way to exchange information
across systems
An industry standard provided OMG
Figure 5.0 Ignition Timing Control Design [18]
Future Electronic Architecture
CD CHANGER
RADIO/ICU
•CAN B / MOST Gateway
•NAV
•HVAC
+
+
-
+
+
DISTRIBUTED
AMPLIFIERS
DVD
PLAYER
-
INSTRUMENT PANEL
•Instrument Cluster
•Junction Block Module
•HVAC Unit/Controller
•Radio/ICU
•Speakers
•Switches
•Lamps
•Cigar Lighter/Power Outlets
•Frontal Passive Restraints
•SKIM
+
Media Oriented
Systems Transport
NAV
PHONE
DOORS
•Window Motors
•Lock Motors
•Switches (window, lock,
mirror, memory, disarm, ajar)
•Mirrors
•Courtesy Lamps
INSTRUMENT CLUSTER
•CAN B / CAN C Gateway
+
SEATS
•power
•heat
•memory
•switches
OVERHEAD
•EVIC
•Courtesy/Dome Lighting
•Sunroof
+
+
-
-
+
-
CAN B
Low Speed
Data Bus
ENGINE
•Engine Controller
•Sensors
•Injectors
TRANSMISSION
•Transmission Controller
•Transfer Case Controller
ABS
+
-
SHIFTER
•Shift by Wire
•AutoStick
•Shift Interlock
•Illumination
+
MOST
-
+
-
CAN C
High Speed
Data Bus
Car Multimedia
System
Project Experience
• CAN Verification and Validation ..
Analysis
Log
Database
PC CAN
Card
HS CAN
PC CAN
Card
LS CAN
IEEE or
USB
I/O Bus
Tests
CANoe Environment
MS Windows
Test Target
PC Hardware
Setup for CAN Test, Validation and Verification
DSP in Embedded System
DSP TMS 320 F28x for
Electric Power Steering
•
DSP for misfire detection in
real time.
Electronic Power Steering
Motor
Driver
Column Shaft
Torque Sensor
\
Motor
Worm Gear
Electro-mag
Clutch
Rack & Pinion Mechanism
Setup as in an Automobile
Figure 1
Electronic Control Unit
Monitoring
Angular Velocity Sensor
Calculation of angular
Velocity
CPU
Vehicle Speed Sensor
(From speedometer)
Calculation of vehicle
Speed
Engine Speed
Calculation of engine
speed
Control Block
Basic
Control
Map
Of Motor
P
O
Current
W
E
R
C
I
R
U
I
T
EPS
Brushless
DC
Motor
TMS320C240x Block Diagram
Program Bus
Controller
•
A(15-0)
•
Program
Memory
Memory
Mapped
Registers
D(15-0)
Data Bus
Peripherals
(Event Mgr)
Peripherals
(Non-Event Mgr)
Multiplier
Data
Memory
ALU/Shifters
Peripherals
Event Manager
GP Timers
Compare Unit
Capture Unit
Quadrature
Encoder
Pulse (QEP)
Non-EV Manager
Watchdog Timer
SPI
SCI
A/D Converter
I /O Pins
CAN
Data Bus
PWM Outputs
Dead-Band Logic
What is RFID
• RFID is an area of automatic identification
that has quietly been gaining momentum in
recent years and is now being seen as a
radical means of enhancing data handling
processes, complimentary in many ways to
other data capture technologies such bar
coding.
RFID system component
RFID System Transponder
Passive KeyLess Entry
Passive Entry
• Imagine approaching your car with your arms full of
groceries; keys somewhere in your pocket, you pull the
handle and the vehicle automatically IDs you and unlocks
the door. Sound too good to be true? This is just the first
step on the way to a vehicle without a mechanical key.
• The Keyless or Passive Entry system enables this
convenience. While Remote Keyless Entry systems
require user action to unlock the vehicle, keyless access
solutions provide a means for entry without the need for
user interface.
How It Works
• Persons can have the keyfob in their pocket or purse, and when they
come within 2 meters (about 6.5 feet) of the vehicle and simply pull
the door handle, the device automatically identifies the driver and
unlocks the door.
• Product Descriptions
•
The 3D Analog Front End (3D AFE) is the first RFID Front End IC
handling all RF communication and enabling sophisticated microcontroller supported security tags.
Encrypted Remote Keyless Entry
• Many vehicles are already equipped with a Remote Keyless Entry
(RKE) that typically employs an encrypted transponder and controller
chip (or an ASIC). When pressing a RKE button, the controller
generates a rolling code that is being transmitted to the vehicle. For
immobilization, the vehicle sends a challenge to the transponder and
verifies the response. Both systems are completely independent of each
other an operate with different crypto-algorithms. TI-RFid offers
customized solutions that combine the transponder and RKE function
in one chip.
Product Description
• The Crypto Entry Transponder (CET) provides the security of our antitheft DST immobilizer technology with the convenience of an RKE
device.
Parking lot Access Control
OSEK OS: new challenges
• OSEK is a preemptive operating system
– offers the same challenges to the hard real-time system
developer as any preemptive operating system
• Critically, timing correctness is not part of the
OSEK standard
– Cannot apply the same timing analysis techniques used
to guaranteeing timing behavior in cyclic systems
– Must account for preemption and resource locking
– Must account for the timing of the scheduler itself
– difficult to test for correct timing behavior
Trying to test for meeting
deadlines
probability
longest observed
response time
deadline
response time
best-case
worst-case
Trying to test for meeting
deadlines
• Still possible to miss a deadline after passing tests
– Quality in mass-production systems can be jeopardized
due to run-time across large numbers of products
– e.g. a typical automobile model has “flying hours” of
billions of hours
• Many systems cannot be tested to a sufficiently
high confidence
– e.g. automotive, aerospace
• Need a predictable system where real-time
performance can be determined before system is
running
– Even better if timing can be predicted early in
Realogy Real Time Architect
(RTA)
Guaranteed timing behaviour for
OSEK OS based real-time systems
What is Real Time Architect?
• Real Time Architect (RTA) is a tool-suite and runtime environment for:
– Implementing ECU functionality
– Optimizing ECU resource requirements; and
– Guaranteeing all performance constraints are always
met
• RTA directly supports the design, development
and deployment of timing correct OSEK
compatible embedded systems
What is Realogy Real-Time
Architect?
Realogy Real-Time Architect (RTA)
RTArchitect GUI
SSX5
[off-line OSEK OIL and real-time design tool]
[OSEK compliant, analyzable, run-time kernel]
Time Compiler
System Generator
[Analysis tool]
[Enhanced OIL tool]
Library
Library
[Standard
Build]
Library
[Timing Build]
[Extended Build]
Realogy Real-Time
Architect
RTArchitect
OIL Tool
Resource
Optimisations
Timing
Analysis
Static API
Scaleable
Analysable
SSX5 Extensions
[Periodic schedules, planned schedules, tasksets,
WCET API]
OSEK OS v2.2
[BCC1&2, ECC1&2,
COM CCCA&B,
Combined Resources]
OSEK Optimisations
[Lightweight tasks, counted
activation, static activation
checking]
SSX5
Stimuli and Responses
Stimulus
BANG!
Response
Now Now NowNowNowNow
Stimulus
Now
Response
Time
Stimuli and Responses
• Stimuli are the triggers to the embedded system
– can be internal or external to the embedded system and
are typically reported as interrupts
• e.g. sensor values, timer hardware, etc.
• When a stimulus is detected by the embedded
system one or more responses must be generated
– can be internal or external to the embedded system
• e.g. actuation of some hardware, availability of some
calculation, etc.
• Responses are implemented by tasks or interrupts
• Responses must meet associated deadlines
RTA Development Process
Real-Time Architect
RTA
Model
RTABuild
Target specific
assembly files
Application
specific RTK API
(C header files)
Application
assembly files
Assembler
Developer
provided
RTK
Analysis
results
Time Compiler
RTK API
(C header files)
Linker
Application code
(C source files)
Compiler
RTK library
Object
Code
ORTI
file
Debugger
OSEK
Application
Real Time Linux for Embedded System
•
RTAI – Linux running on Pentium
•
Java for Embedded Applications
A Proposed Solution
• Develop a real-time emulator that can be installed
on any machine with minimal configuration
– Use an open-source operating system as a basis
– Use a virtual machine architecture
– Allow users to run the emulator, and write software for it
for development and educational use
– Allow for multiple emulations on a single machine
Why Linux
• The first hurdle to jump is the cost
– Most RTOSs cost more than any student can afford.
Universities often do not have copies either
• Linux is free, and has many real-time extensions
– These extensions require that you rebuild the kernel.
– These extensions require that you have administrator
access to the machine
– For a Linux novice, the RT Linux extensions can be
very difficult to learn
Choosing an Open Source RTOS
• Of the many (over 60) real time operating systems,
only a few of them are free and open-source
• eCos by RedHat is open source and free. Not a Linux
variant
• uC/OS-II is also open source and free for research
• Some of the most widely used open source solutions
are Linux based
• Linux is a Unix clone, and in many ways acts like
most Unix variants on the market, but it is free and
open source
• The most widely used open source real time Linux
solutions are RTAI and RTLinux
Terminology
Application
Shell
Kernel
Hardware
RTLinux
• Real Time Linux
• Developed by the Open Source community and
FSMLabs
• FSMLabs has a patent on the design, and keeps it's
development environment propriatary
• Most Open Source developers did not like this, and
went on to develop RTAI linux
• RTLinux is still available, and is still being updated,
but not at the rate of RTAI
RTLinux Architecture
Major modifications to the kernel
•New scheduling system with real-time
capabilities
•Kernel Modules support the real-time API
•
Application
Shell
Kernel
Hardware
RTAI
• Real Time Application Interface
• Developed by the Departmenet of Aerospace
Engineering at Politecnico di Milano (DAIPM)
• Originally based off of RTLinux, but no longer
shares any code
• Actively being developed
• User-group support
• Minimal kernel Modifications
• User Space real-time capabilities
RTAI Architecture
• Creates an RT Hardware Abstraction Layer
(RTHAL) in the kernel
• Adds LXRT (Linux Real-Time) to allow for
user applications to use the RT interface
Application
Shell
Kernel
Hardware
RTLinux vs RTAI
• RTLinux and RTAI preform equally
as well
• RTAI uses a much less intrusive
kernel modification
• RTAI includes LXRT
• RTAI has more user support
• RTAI is being developed more
actively
Because of the added features of RTAI, I
have chosen RTAI to use for my
project
User Mode Linux
• Creates a software emulation of the hardware
layer (similar to VMWare)
– Uses kernel signals in place of interrupts
– Hardware timers for kernel switching are
handled with the ALARM signal
– The kernel was then ported to this “hardware”
– The kernel can be run in user mode, as a process
– This allows for different distributions to run on
the same machine
User Mode Linux Architecture
Application
Shell
Kernel
Hardware
User Mode Linux Example
Integration of RTAI and UML
• Port the RTHAL to the UML
architecture
• Create an RTAI module to
support all other RTAI functions
• RTAI OS will run as a user
process, creating an emulator for
RTAI
Integration of RTAI and UML
• Benefits
–
–
–
–
Does not require root access
Multiple systems can be hosted on a single server
No need for the user to build the kernel
Use a debugger on kernel modules
• Use a full distribution (eg Redhat) and use a smaller
distribution on the RT system (eg Slackware) and test out
the target file system
– Distribution of the emulator is simple: The kernel and a single file
for the filesystem
– Hardware devices can be simulated
• Drawbacks
– Not really in real time
– No direct access to hardware
Fingerprint Verification using
TI C6711 DSP Micro
Professor Subra Ganesan
Department of Computer Science and
Engineering
Biometrics is…
recognition or
verification of a
person’s identity
using his or her
physical
characteristics,
such as fingerprint
Approaches
• Common: Minutia-based
– find ridge stops or breaks in a fingerprint, to characterize different
fingerprints
– No invariant representation of print, number of minutia not fixed…
Process Flow Chart
Input Image
Gabor
0
Gabor
22.5
Find Center
Gabor
45
Gabor
67.5
Normalize
Sectorization
Gabor
90
Gabor
112.5
Gabor
135
Gabor
157.5
Feature Vector of Variances
Database of
Fingerprints
Comparison
& Decision
Preprocessing
• Find Core
– Follow the local
direction of ridge flow
towards the core
(center point)
Preprocessing (Cont’d)
•Tesselate
•Define a region of interest
around the core
•Divide the region into
smaller sectors
Preprocessing (Cont’d)
•Normalize Sectors
•Adjust mean and variance
of pixels in each sector to
constant
Commercial Products: Sensors
Optical vs. Solid State
Development Kit
Kit from Authentec
Includes:
•Sensor
•C5509 DSP
•Keypad
•LCD
•Software algorithm
Applications
•
•
•
•
ATM
LapTop computer
Automotive Door entry or Ignition control
Controlled access to Safe Room or
document
• Security Doors
• Airport Check Ins
• Credit Card Use/ Driving License ID
Fingerprint basedCar Door opener
Comparison Of Biometric
Technologies
Biometric System
Real Time Adaptive Digital Image Watermarking
• A Watermark is pseudo-random sequence known
only to the owner so that others can not duplicate or
remove it.
• Add such a sequence to the image such that:
– there is no perceptual degradation of the image
– watermark should be detectable even after
manipulation of image.
Spatial Domain Technique:
•
The spatial-domain techniques directly modify the intensities or color
values of some selected pixels
•
Watermark Embedding
• Watermark Decoding
Watermarking Applications
•
Copyright Protection(Proof of Ownership)
- To prove ownership
•
Copy Control(Fingerprinting)
- To trace illegal copies: Each copy has its own serial number
- License agreement
•
Data Authentication
- Check if content is modified
•
Data Hiding
- Providing private secret messages
•
Broadcasting Monitoring(Internet, TV, Radio…)
- For commercial advertisement
•
Copy Protection
Biometric Smart Camera
Impact of Biometrics on Security
Remote Structural Health
Monitoring of Cable Dynamics
Using MEMS Strain Gauges
Kala Majeti
Darrin Hanna
Subra Ganesan
Oakland University, Rochester, Michigan, U.S.A.
MEMS Capacitive Strain Gage
Tire Pressure Monitoring Unit
Conclusion
My Research is focused on
Real Time Embedded Systems.
DSP based Embedded system
UML and Model Driven Architecture.
CAN Applications
RFID and automotive applications
Finger Print Verification using DSP
Watermarking
MEMS Applications