INTRODUCTION TO KALMAN FILTERS

Similar documents
KALMAN FILTER APPLICATIONS

Vehicle Speed Estimation Using GPS/RISS (Reduced Inertial Sensor System)

Design and Implementation of Inertial Navigation System

State-Space Models with Kalman Filtering for Freeway Traffic Forecasting

A Java Tool for Exploring State Estimation using the Kalman Filter

Advanced Techniques for Mobile Robotics Location-Based Activity Recognition

AIR FORCE INSTITUTE OF TECHNOLOGY

Introduction to Kálmán Filtering

Satellite and Inertial Attitude. A presentation by Dan Monroe and Luke Pfister Advised by Drs. In Soo Ahn and Yufeng Lu

Integrated Navigation System

Extended Kalman Filtering

State observers based on detailed multibody models applied to an automobile

Robot Motion Control and Planning

A PHOTOVOLTAIC POWERED TRACKING SYSTEM FOR MOVING OBJECTS

CS491/691: Introduction to Aerial Robotics

Applying Multisensor Information Fusion Technology to Develop an UAV Aircraft with Collision Avoidance Model

Design of Accurate Navigation System by Integrating INS and GPS using Extended Kalman Filter

Chapter 4 SPEECH ENHANCEMENT

ANNUAL OF NAVIGATION 16/2010

Systematical Methods to Counter Drones in Controlled Manners

GPS data correction using encoders and INS sensors

A VIRTUAL VALIDATION ENVIRONMENT FOR THE DESIGN OF AUTOMOTIVE SATELLITE BASED NAVIGATION SYSTEMS FOR URBAN CANYONS

Comparative Analysis Of Kalman And Extended Kalman Filters In Improving GPS Accuracy

Dipl.-Ing. Wanda Benešová PhD., vgg.fiit.stuba.sk, FIIT, Bratislava, Vision & Graphics Group. Kalman Filter

Dynamic Model-Based Filtering for Mobile Terminal Location Estimation

Fundamentals of Kalxnan Filtering: A Practical Approach

Applying Multisensor Information Fusion Technology to Develop an UAV Aircraft with Collision Avoidance Model

Outlier-Robust Estimation of GPS Satellite Clock Offsets

A Toolbox of Hamilton-Jacobi Solvers for Analysis of Nondeterministic Continuous and Hybrid Systems

Fuzzy Automaton with Kalman State-Smoothing

ECE 174 Computer Assignment #2 Due Thursday 12/6/2012 GLOBAL POSITIONING SYSTEM (GPS) ALGORITHM

AIRCRAFT CONTROL AND SIMULATION

16 IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS PART B: CYBERNETICS, VOL. 34, NO. 1, FEBRUARY 2004

Surveillance and Calibration Verification Using Autoassociative Neural Networks

Integration of GNSS and INS

302 VIBROENGINEERING. JOURNAL OF VIBROENGINEERING. MARCH VOLUME 15, ISSUE 1. ISSN

Sensorless Position Control of Stepper Motor Using Extended Kalman Filter

ARDUINO BASED CALIBRATION OF AN INERTIAL SENSOR IN VIEW OF A GNSS/IMU INTEGRATION

Wireless Network Delay Estimation for Time-Sensitive Applications

Master s Thesis in Electronics/Telecommunications

Auto-Balancing Two Wheeled Inverted Pendulum Robot

IMPROVEMENTS TO A QUEUE AND DELAY ESTIMATION ALGORITHM UTILIZED IN VIDEO IMAGING VEHICLE DETECTION SYSTEMS

Estimation of State Variables of Active Suspension System using Kalman Filter

Table of Contents. Frequently Used Abbreviation... xvii

Implementing a Kalman Filter on FPGA Embedded Processor for Speed Control of a DC Motor Using Low Resolution Incremental Encoders

Advances in HEV Battery Management Systems

Path Planning in Dynamic Environments Using Time Warps. S. Farzan and G. N. DeSouza

SELF-BALANCING MOBILE ROBOT TILTER

Kalman Filters. Jonas Haeling and Matthis Hauschild

Masters of Engineering in Electrical Engineering Course Syllabi ( ) City University of New York--College of Staten Island

Improved Pedestrian Navigation Based on Drift-Reduced NavChip MEMS IMU

Thank you! Estimation + Information Theory. ELEC 3004: Systems 1 June

Level I Signal Modeling and Adaptive Spectral Analysis

On the GNSS integer ambiguity success rate

Cooperative localization (part I) Jouni Rantakokko

Traveling Waves. Why is there reflection? The one-dimensional (1D) case. A traveling wave is the propagation of motion (disturbance) in a medium.

THE Global Positioning System (GPS) is a satellite-based

TigreSAT 2010 &2011 June Monthly Report

Utility of Sensor Fusion of GPS and Motion Sensor in Android Devices In GPS- Deprived Environment

Math 210: 1, 2 Calculus III Spring 2008

HANDS-ON TRANSFORMATIONS: RIGID MOTIONS AND CONGRUENCE (Poll Code 39934)

Flight Dynamics AE426

Pedestrian Navigation System Using. Shoe-mounted INS. By Yan Li. A thesis submitted for the degree of Master of Engineering (Research)

Chapter 2 Implementation of Kalman Filter to Monitor the Level Fluctuations in a Dam Using FPGA

Optical Correlator for Image Motion Compensation in the Focal Plane of a Satellite Camera

Hybrid Positioning through Extended Kalman Filter with Inertial Data Fusion

INTRODUCTION TO VEHICLE NAVIGATION SYSTEM LECTURE 5.1 SGU 4823 SATELLITE NAVIGATION

State Estimation of a Target Measurements using Kalman Filter in a Missile Homing Loop

Sensor Data Fusion Using Kalman Filter

OughtToPilot. Project Report of Submission PC128 to 2008 Propeller Design Contest. Jason Edelberg

Cooperative navigation (part II)

FPGA Based Kalman Filter for Wireless Sensor Networks

Structure Specified Robust H Loop Shaping Control of a MIMO Electro-hydraulic Servo System using Particle Swarm Optimization

EE 570: Location and Navigation

IN a vehicular environment, knowledge of the location of

Lane Detection in Automotive

Filtering Impulses in Dynamic Noise in the Presence of Large Measurement Noise

Robotic Vehicle Design

Travel time uncertainty and network models

Signals, and Receivers

Intelligent Robotics Sensors and Actuators

Keywords. DECCA, OMEGA, VOR, INS, Integrated systems

Particle. Kalman filter. Graphbased. filter. Kalman. Particle. filter. filter. Three Main SLAM Paradigms. Robot Mapping

Recent Progress on Wearable Augmented Interaction at AIST

In-Depth Tests of Faulhaber 2657CR012 Motor

Estimation and Control of a Tilt-Quadrotor Attitude

The Pennsylvania State University. The Graduate School. College of Engineering STATE SPACE MODELING, ANALYSIS, AND SIMULATION

Appendix C: Graphing. How do I plot data and uncertainties? Another technique that makes data analysis easier is to record all your data in a table.

AN AIDED NAVIGATION POST PROCESSING FILTER FOR DETAILED SEABED MAPPING UUVS

ADAPTIVE STATE ESTIMATION OVER LOSSY SENSOR NETWORKS FULLY ACCOUNTING FOR END-TO-END DISTORTION. Bohan Li, Tejaswi Nanjundaswamy, Kenneth Rose

A Comparative Study of Different Kalman Filtering Methods in Multi Sensor Data Fusion

LOCALIZATION WITH GPS UNAVAILABLE

Residential Load Control with Communications Delays and Constraints

Kalman Filter Based Unified Power Quality Conditioner for Output Regulation

Report on Extended Kalman Filter Simulation Experiments

FAULT DIAGNOSIS AND RECONFIGURATION IN FLIGHT CONTROL SYSTEMS

If you want to use an inertial measurement system...

Vector tracking loops are a type

Effective Collision Avoidance System Using Modified Kalman Filter

An Empirical Solar Radiation Pressure Model for Autonomous GNSS Orbit Prediction

Transcription:

ECE5550: Applied Kalman Filtering 1 1 INTRODUCTION TO KALMAN FILTERS 1.1: What does a Kalman filter do? AKalmanfilterisatool analgorithmusuallyimplementedasa computer program that uses sensor measurements to infer the internal hidden state of a dynamic system. Some examples help to give an idea of how this might be useful: Using radar angle and range measurements in an air-traffic control system to determine the three-dimensional location and speed of aircraft approaching an airport (tracking); Using live-motion video capture of marker dots placed on actors to track physical movement and aid creation of animation in films; Using measurements of external electrical and thermal conditions of battery cells to determine internal state of charge and state of health of a hybrid electric vehicle battery pack; Using measurements of the earth s magnetic field, GPS, and accelerations to determine my own position, orientation, and velocity in three dimensions (navigation); Using financial market data to predict future prices of traded securities and commodities; and many others.

ECE5550, INTRODUCTION TO KALMAN FILTERS 1 2 Because the Kalman filter is a tool, it is very versatile. Its application areas are very diverse. Caution: If all you have is a hammer, everything looks like a nail! Same with Kalman filters! Kalman filters estimate the state of a dynamic system. Asystem sstateisavectorofvaluesthatcompletelysummarizes the effects of the past on the system. An example is the present position, orientation, linear and angular velocity of an aircraft: how the aircraft came to be in this state is not relevant; all future behavior depends only on the present state and future inputs (engine thrust, wind, etc.) to that aircraft. We cannot generally measure the state of a dynamic system directly. Even if we can, we often choose not to because it is too expensive or too complex. Instead, we make measurements that are somehow related to the state. They are linear or nonlinear functions of members of the state. Consider the following model of a linear dynamic system x k = Ax k 1 + Bu k 1 + w k 1 z k = Cx k + Du k + v k. Here: x k is the system state vector at time index k. u k is the measurable (deterministic) input to the system. w k is the disturbance or process noise: an unmeasurable input that affects the state. z k is a sensor measurement, somehow related to x k.

ECE5550, INTRODUCTION TO KALMAN FILTERS 1 3 v k is sensor noise that corrupts the measurement. A, B, C, andd are matrices, specific to the system we are observing, that describe its dynamic behavior. The first equation is the state equation or process equation that describes how the state evolves over time. The second equation is the output equation that describes how the measured output relates to the state. We will see many models of this (and similar) form this semester. For example, consider the one-dimensional motion of a rigid object. The state comprises position p k and velocity (speed) s k [ ] [ ] [ ] [ ] p k 1 T p k 1 0 = + u k 1 + w k 1, s k 0 1 s k 1 T }{{}}{{}}{{}}{{} x k A x k 1 B where T is the time interval between iterations k 1 and k. The measurement may be a noisy position estimate [ ] [ ] p k z k = 1 0 + v k. }{{} s k C

ECE5550, INTRODUCTION TO KALMAN FILTERS 1 4 1.2: The basic idea of the Kalman filter Our goal is generally to estimate as well as we can (in some sense) the values of state vector x k given all past measurements z 0, z 1,...z k. Ahelpfulwaytothinkabouttheproblemisintermsofconditional probabilities z k 2 z k 1 z k Observed f (z k x k ) Unobserved x k 2 x k 1 x k f (x k x k 1 ) The observations allow us to peek at what is happening in the true system. Based on observations and our model, we estimate the state. Discrete-time Kalman filters (the focus of this course) repeatedly execute two steps: 1. Predict the present state value based on all past available data. For example, a linear Kalman filter computes ˆx k = A ˆx + k 1 + Bu k 1, where ˆx k is the prediction of x k. 2. Estimate the present state value, by updating the prediction based on all presently available data. For example, a linear Kalman filter computes ˆx + k =ˆx k + L(z k (C ˆx k + Du k)). Averystraightforwardidea.But... What should L be?

ECE5550, INTRODUCTION TO KALMAN FILTERS 1 5 How do we make this optimal? What about nonlinear systems? What if we don t know u k (as in the tracking application)? There are lots of nuances. You can learn KF in a week, but you can also spend years exploring the breadth and depth of the subject. Our focus will be on learning the most useful forms of KF and how to apply them robustly to real problems. The background to what we will study in this course Because a Kalman filter is a kind of estimator, we will need to study some ideas from estimation theory. Because disturbances and sensor noises are not deterministic, we will need to already know basic (undergraduate) probability (really well) and study some ideas from random process theory. Because the models we use are based very heavily on matrix math, we will need to already know the mechanics of linear algebra (really well) and we will need to study some ideas from linear and nonlinear system theory. Minimize Error/uncertainty Lowest Minimum Error/uncertainty Least Squares Least Mean Squares Kalman Filtering Probability Theory Stochastic Systems Mathematical Foundations Calculate (mean, covariance) Dynamic Systems Uncertainty Analysis (mean, covariance) Models

ECE5550, INTRODUCTION TO KALMAN FILTERS 1 6 It is possible to go really deep into any one of these individual areas the more background you have the better but our focus will be on developing methods that we can apply to real problems. The lectures will be primarily theoretical, and the homework/projects will be primarily applications. Some knowledge of the Laplace, z, andfouriertransformsishelpful to understand certain topics covered in lecture, but will not becritical for implementing Kalman filters and succeeding in this course. We will cover only the background material that we will ultimately apply. (The textbooks have much more information that can add to the richness of your experience in this course.) Be forewarned: You will see that I use different mathematical notation from the textbooks. There are multiple conventions in common use. I choose the most compact one that is most compatible with other courses I teach. Iincludeaglossaryofnotationineachchapterofnotestoaidyour interpretation/translation of one system of notation versus another. We will make extensive use of MATLAB. Prior experience with MATLAB is not necessary. We will teach what is needed as we go. However, general programming knowledge is very important (variables, procedures, conditions, loops... ).

ECE5550, INTRODUCTION TO KALMAN FILTERS 1 7 1.3: Examples of applications of Kalman filtering Knowledge of how KF works is necessary to be able to adapt it to new situations. It is not generally sufficient to simply implement a toolbox function. The following examples are ones that my students and I have been directly involved with. OBJECTIVE: Track marker dots on actors. State: x, y position and velocity of dots in frame. Observation: x, y positions of dots in frame (unlabeled). Issues: Data association, tracking when dots are obscured. OBJECTIVE: Localize bad guys. State: x, y position and velocity. Observation: Radar azimuth/elevation (maybe range).

ECE5550, INTRODUCTION TO KALMAN FILTERS 1 8 Issues: Nonlinear relationship between measurements and position; measurements arriving to KF out-of-sequence. OBJECTIVE: SOC estimation for battery cells. State: SOC, polarization voltages, hysteresis voltages. Observations: Current, temperature, and voltage under load. Issues: Lack of available simple battery model, nonlinear dynamics and measurement. OBJECTIVE: SOH estimation for battery cells. State: Resistance and capacity of battery cells. Observations: Current, temperature, and voltage under load. Issues: Parameter estimation; not state estimation. OBJECTIVE: Localize myself (navigation). State: Position, orientation. Observations: Accelerations, rotations, GPS fixes. Issues: Correct for drift of IMU using GPS.

ECE5550, INTRODUCTION TO KALMAN FILTERS 1 9 Next steps Review of matrix algebra (see Appendix A). Modeling systems in state space form. Review of random processes. Kalman filter derivation. Then, more advanced topics: How do we make this thing actually work?