Iowa DOT Sensor Feed Documentation

The following documentation describes the structure and fields contained within the sensor feed from the Iowa DOT. The Iowa DOT has sensors deployed across the state, primarily in urban area and work zones. This sensor feed has data from all sensors and is updated every minute with the current speed, count, occupancy and classification. In addition to the sensor data, corresponding location and sensor types is also included in the field which can be used to identify the type of sensor, what lanes of data are collected, the roadway data was collected on, the direction of travel and location of the sensor.

Sensor Feed Structure

Below is the structure of the sensor feed with the corresponding parents and nodes. This should be used for reference to understand how the data is structured for each detector.

Download Structure

Description of Data

The following section provides a description of the nodes/fields within the sensor data feed. The section is divided into two section: Context Data and Detector Data. The context data is relevant for all of the sensors which provides organization information and the corresponding time stamps of the data. The detector data section provides unique information and current data for each detector. The unique information describes the location of the sensor including coordinates, the roadway data was collected for, the direction of travel, etc. The current data includes speed, occupancy, count and classification for all lanes the detector collects as well as the individual lane level data.

Context Data

The first fields provide the organization and time stamp for the detector data:

  • organization-id
    The organization collecting the data (Will always be IADOT-SIMS)
  • network-id
    The network within the organization collecting the data (Will always be IADOT-SIMS)
  • detection-time-stamp (XML:parent/JSON:object)
    This is the parent/array for the following fields containing the data and timestamp of the data.
    • local-date
      Date for the data requested in the format YYYYMMDD
    • local-time
      The timestamp the data was requested in the format HHMMSS
    • local-time
      Provides the offset from UTC that is used for timestamps
  • start-time
    The begin time of data collected in the format HHMMSS
  • end-time
    The end time of data collected in the format HHMMSS
Detector Data

The remaining fields are collected for each detector across the state and located within the parent-node(XML)/array(JSON) called detector-list:

  • detector-list (XML:parent/JSON:array)
    contains a list of all of the detectors statewide and the corresponding data for each detector. The remaining nodes are all within this parent/array.
  • status
    Provides the status of the sensor. Status options are: operational, off or failed.
  • workzone
    Reserved field for identifying whether the sensor is located within a work zone. Not currently used.
  • detector-id
    The unique name for each detector station.
  • detector-location (XML:parent/JSON:object)
    The following fields provide the coordinates and datum for the sensor.
    • latitude
      Latitude coordinate.
    • longitude
      Longitude coordinate.
    • datum
      Datum used with coordinates.
  • link-ownership
    The ownership of the roadway the sensor is detecting sensor data.
  • route-designator
    The roadway the sensor is detecting data for.
  • linear-reference (XML:parent/JSON:object)
    The following fields provide the Iowa DOT LRS values.
    • routeId
      This is a reserved fields for the LRS routeId for future use
    • measure
      This is a reserved fields for the LRS measure value for future use
  • detector-type
    The type of detector used to collect data
  • approach-direction
    The direction of travel collected by the sensor.
  • lanes-type
    The type of lanes collected by the sensors. Some examples include: through lanes, right exit ramp, right entrance ramp, etc.
  • detectionReports (XML:parent/JSON:array)
    The remaining fields include the data collected by the sensor including speed, count, occupancy and classification.
    • count
      The total number of vehicles detected. To convert to hourly volumes, multiply by 60.
    • occupancy
      The average occupancy of all lanes.
    • speed
      The average speeds of all lanes in mph.
    • small-count
      The total number of small vehicles detected.
    • medium-count
      The total number of medium vehicles detected.
    • large-count
      The total number of large vehicles detected.
    • lanes (XML:parent/JSON:array)
      The following fields separate the data collected by the sensor by lane. The number of lanes will vary based on the sensor.
      • speed
        The average speed of vehicles detected in the lane-id identified in mph.
      • lane-id
        The lane-id for the data collected. The number of lane-id’s will vary based on the detector. Typically lane numbering will start from the median. So lane-id 1 will be the left-most lane and continue to the shoulder.
      • count
        The number of vehicles detected in the lane-id identified. To convert to hourly volumes, multiply by 60.
      • occupancy
        The average occupancy in the lane-id identified.
      • small-count
        The count of small vehicles detected in the lane-id identified.
      • medium-count
        The count of medium vehicles detected in the lane-id identified.
      • large-count
        The count of large vehicles detected in the lane-id identified.