CS452 - Real-Time Programming - Fall 2010

Lecture 22 - Trains

Public Service Announcements

  1. Open house, November 9, 2010

Train Properties

A locomotive travels on the track at a given speed following the path created by directions of turn outs.

How do you know where the locomotive is?

Things can go wrong, such as

The mapping between speed controls and train velocity is complex

Important. Some of these effects are matter; some don't. It's part of your task to find out which is which.

In general the speed of a locomotive may be a function of many variables

  1. which locomotive you have
  2. which speed you set
  3. time since the last speed change
  4. the speed it was travelling at before the last speed change
  5. where it is on the track
  6. how long since the track was cleaned
  7. how long since the locomotive was lubricated

Important. Some of these effects are matter; some don't. It's part of your task to find out which is which.


How to Get Started

The simplest objective:

Sequence of events

  1. Train triggers sensor at t
  2. Application receives report at t + dt1
  3. You give command at t + dt1 + dt2
  4. Train receives and executes command at t + dt1 + dt2 + dt3
  5. Train slows and stops at t + dt1 + dt2 + dt3 + dt4

Questions you need to answer

Now make a table

Sensor 1 Sensor 2 ...
Speed 6
Speed 8
...

There are enough measurements in each cell of the table that you can estimate the random error. (Check with other groups to make certain that your error is not too big.)

Group across cells that have the `same' value.


The Essence of Calibration

  1. You measure the time interval between two adjacent sensor reports.
  2. You calculate the velocity of the train
  3. After many measurements you build a table

The Problems You Have to Solve

  1. The table is too big.

The values you measure vary.

You need to average and estimate error.


Return to: