# Patent

## Title
Method and system for a traffic management network

## Abstract

A system for collecting traffic data includes at least one first node, at least one second node, and a central processing station. The first node includes a cellular communications module and a first networking communications module connected to a first processor. The second node includes a second networking communications module and a device detection module connected to a second processor. The at least one first node and the at least one second node form a network. The device detection module detects devices associated with traffic. The central processing station can be linked to the at least one first node via the cellular communications module. The at least one second node communicates information associated with the devices associated with traffic to the at least one first node. The at least one first node communicates the information associated with the devices associated with traffic to the cellular communications module.

## Background
CROSS-REFERENCE TO RELATED PATENT APPLICATIONS
This application claims priority from Provisional Application U.S. Application 61/211,702, filed Apr. 2, 2009, incorporated herein by reference in its entirety.


BACKGROUND
The field of the disclosure relates generally to traffic management systems. More specifically, the disclosure relates to a traffic management system that collects information using a network.
Currently, various types of information service providers (ISPs) provide traffic information to users. The various types of ISPs include traffic and map systems such as Westwood One, Traffic.com/Navteq, Clear Channel Traffic; portal systems such as Yahoo!, Google, MapQuest/AOL, MicroSoft MSN; wireless carriers such as Verizon Wireless, Cingular Wireless, Sprint Nextel, T-Mobile; telematics and navigation systems—GM OnStar, Ford, Toyota, XM Satellite Radio, Sirius Satellite Radio, Garmin, TomTom, Magellen, Motorola, AAA; and media companies such as NBC, ABC, CBS, etc. With the improvement in the quality and the granularity of traffic and travel time information, ISPs attempt to provide route-specific travel time information and dynamic route guidance information to individual users to influence the individual's travel choices including departure time, arrival time, route, destination, etc. An individual traveler relies on the ISP's information and personal experiences and preferences to make individual decisions for their travel choices.
As ISPs provide route-specific travel time information and dynamic route guidance information to more and more individual users, market penetration of actionable traffic information services may increase rapidly. As this type of actionable traffic information provision market penetration reaches a critical threshold, users with similar traffic and travel time information may compete for the shortest travel time routes creating new congestion for these routes. For example, users in the San Francisco Bay Area typically choose US 101 to travel from San Francisco to San Jose. When severe congestion occurs on US 101, for example, due to a major traffic accident, many ISPs advise motorists to use alternate routes I-280 or El Camino Real to avoid major congestion on US 101. However, with the diversion of a large number of users from US 101 to I-280 or El Camino Real these routes quickly become congested.
In order to populate these systems, large amounts of traffic data need to be collected. The traffic and travel time information can also be used for traffic studies, for monitoring traffic flow, or for detecting accidents. However, it is expensive to collect the traffic information. Traffic information is typically collected by closed-circuit video cameras, observers or by axle counters. Video cameras can be used by employees to determine general traffic flow and detect problems like accidents. However, closed-circuit video systems are expensive to maintain and operate. Observer based studies are comprehensive but expensive to conduct over long periods. Axle counters can be deployed for long periods, but the counters must be collected for processing, Moreover, using current detection methods, travel times are inferred from speed detections which themselves are often derived from vehicle counts, yielding errors of up to 35-40%. Thus, improved systems and methods for collecting traffic data are needed.
SUMMARY
A representative embodiment relates to a system for collecting vehicular traffic data. The system for collecting vehicular traffic data includes at least one first node, at least one second node, and a central processing station. The first node includes a cellular communications module and a first networking communications module connected to a first processor. The second node includes a second networking communications module and a device detection module connected to a second processor. The at least one first node and the at least one second node form a network. The device detection module detects devices associated with vehicular traffic. The central processing station can be linked to the at least one first node via the cellular communications module. The at least one second node communicates information associated with the devices associated with traffic to the at least one first node. The at least one first node communicates the information associated with the devices associated with traffic to the cellular communications module.
Another representative embodiment relates to an apparatus for collecting traffic data. The apparatus includes a cellular communications module, a networking communications module, and a device detection module connected to a processor. The device detection module detects devices associated with traffic. The networking communications module communicates information associated with the devices associated with traffic to a central processing station.



BRIEF DESCRIPTION
FIG. 1 is a diagram of a traffic data collection node in accordance with a representative embodiment.
FIG. 2 is a diagram of a simplified traffic data collection node in accordance with a representative embodiment.
FIG. 3 is a functional diagram of the traffic data collection node of FIG. 1 in accordance with a representative embodiment.
FIG. 4 is a diagram of an overview of a traffic data collection node architecture in accordance with a representative embodiment.
FIG. 5 is a flowchart of operations performed by a MAC address detector in accordance with a representative embodiment.
FIG. 6 is a diagram of a MAC address detection packet in accordance with a representative embodiment.
FIG. 7 is a diagram of a cellular packet-based network in accordance with a representative embodiment.
FIG. 8 is a diagram of a clustered tree type mesh-cellular packet-based network in accordance with a representative embodiment.
FIG. 9 is a diagram of a daisy-chain type mesh-cellular packet-based network in accordance with a representative embodiment.
FIG. 10 is a diagram of a traffic management system in accordance with a representative embodiment.
FIG. 11 is an illustration of a traffic map in accordance with a representative embodiment.



DETAILED DESCRIPTION
A method, system, and apparatus for a traffic management network are described. In the following description, for purposes of explanation, numerous specific details are set forth to provide a thorough understanding of representative embodiments of the invention. It will be evident, however, to one skilled in the art that the invention may be practiced without these specific details. The drawings are not to scale. In other instances, well-known structures and devices are shown in simplified form to facilitate description of the exemplary embodiments.
Traffic Data Collection Node
Referring to FIG. 1, a diagram of a traffic data collection node 100 in accordance with a representative embodiment is shown. The traffic data collection node 100 includes a computing module 110, an energy storage device 130, an energy controller 135, a solar panel 140, a Bluetooth antenna 150, a cellular antenna 160, and a network antenna 165. The traffic data collection node 100 can also optionally include a camera 170, a microphone 180, and a sensor 190. The computing module 110, energy storage device 130, and energy controller 130 are contained in a protective enclosure 120.
The protective enclosure 120 can be a weatherproof fiberglass enclosure, for instance, a NEMA-4 rated enclosure. Other materials such as steel, plastic, or carbon fiber can be used. Some or all of the components, including the antennas, can be enclosed in the protective enclosure 120. The protective enclosure 120 can also include a mount for attaching the traffic data collection node 100 to telephone poles, road signs, barriers, etc.
In at least one embodiment, the traffic data collection node 100 can be about the size of a brick, or smaller. The traffic data collection node 100 can be deployed temporarily or permanently. The traffic data collection node 100 should be placed within radio frequency (RF) proximity of the travel stream of the devices to be detected. Hence, the traffic data collection node 100 can be attached to any existing structure, pole, or strut. The traffic data collection node 100 can be placed directly on the ground, behind guardrails, or mounted to a post. Placement of the traffic data collection node 100 is limited only by practical concerns of safety and security of roadside equipment.
The computing module 110 can be a printed circuit board including processors, memory, input/output modules, hard disk drives, solid state drives, flash memory, transmitters, receivers, controllers, integrated antennas, and slots. The slots can be used to add upgrade modules or other features such as detectors, machine vision processors, and speakers. The computing module 110 can have varying degrees of integration.
Energy storage device 130 and solar panel 140 provide power to the traffic data collection node 100. Energy controller 135 controls recharging of the energy storage device 130 by solar panel 140; and regulates power to the computing module 110 and other components of the traffic data collection node 100. The energy storage device 130 can be a battery, for example a 12V, 20-30 aH lithium ion battery. However, the energy storage device 130 can also be a capacitor, fuel cell, or other energy storage device. Alternatively, power can be provided by a hardwired connection. The solar panel 140 can be of various types and wattages, for example a 5 W or 10 W array.
The optional camera 170 can be color, black and white, or infra-red. The camera can be used, for example, to take a snapshot or video of traffic. The optional camera 170 can also include machine vision capabilities such the ability to identify and/or count objects. For example, the camera 170 could be used to identify license plates, a particular license plate, or a particular person. The optional camera 170 can also be programmed to detect traffic jams and accidents. Likewise, the microphone 180 can be used to detect traffic volume, noise pollution levels, or noise level offenders.
The sensor 190 can be a light sensor, inductance sensor, temperature sensor, a global positioning system (GPS) module, biological/nuclear materials sensor or any other kind of sensor. The sensor 190 can also be more than one or an array of sensors. The sensor 190 can be part of a larger grid of sensors used to monitor weather, temperatures in a city, carbon monoxide levels, detect the threat of a biological materials release, or to detect or monitor the transport of other hazardous materials.
The Bluetooth antenna 150, cellular antenna 160, and network antenna 165 are antennas designed to transmit and receive signals for their corresponding technologies. The cellular antenna 160 can be adapted to communicate with any cellular network. The network antenna 165 is used to connect the traffic data collection node 100 to a network of traffic data collection nodes. For example, the network antenna 165 can be coupled to a ZigBee-type (IEEE 802.15.4) communications module. However, multiple antennas, other antennas, or other communications schemes can be employed. For example, a satellite transmitter or receiver could be included. Additionally, a wired network or communications link can be included, such as an Ethernet connection.
The traffic data collection node 100 can also include hardware (e.g., Bluetooth antenna 150 and network antenna 165) and software configured to connect the traffic data collection node 100 to various networks such as a mobile ad hoc network, a vehicular ad hoc network, an intelligent vehicular ad hoc network, or an internet-based mobile ad-hoc network. A mobile ad hoc network (MANET), sometimes called a mobile mesh network, can be a self-configuring network of mobile devices connected by wireless links. A vehicular ad hoc network (VANETs) can be used for communication among vehicles and between vehicles and roadside equipment. An intelligent vehicular ad hoc network (InVANETs) includes artificial intelligence that helps vehicles to behave in intelligent manners during vehicle-to-vehicle collisions, accidents, drunken driving etc. Internet-based mobile ad hoc networks (iMANET) are MANETs that configure themselves over internet connections, for example, using a cellular network (e.g. using cellular antenna 160) internet connection. Thus, the traffic data collection node 100 can be part of various network configurations. In one illustrative embodiment, the traffic data collection node 100 can collect information about other nodes, devices, vehicles, etc. that are networked with the traffic data collection node 100. Alternatively, nodes of the traffic management network can be connected by a hard line such as an Ethernet cable.
The traffic data collection node 100 can include an embedded system architecture including custom embedded hardware design coupled with firmware. The traffic data collection node 100 detects Bluetooth devices via the Bluetooth antenna 150 (for example, ver 2.1/2.0/1.2/1.1 and class1/2) of vehicles and pedestrians to provide real-time traffic flow to a central processing center. The traffic data collection node 100 anonymously discovers Bluetooth Media Access Control (MAC) addresses, which serve as a unique identifier to a Bluetooth device.
A MAC address is a unique identifier assigned to a network adapter by its manufacturer for identification. MAC addresses are anonymous identifiers. MAC addresses are not associated with any specific user account (as is the case with cell phone probes) or any specific vehicle (as with automated toll tags). The MAC address is not linked to a specific person through any type of central database but is assigned at the Bluetooth electronic chip manufacturer. Additionally, it is difficult to match a MAC address to the purchase of a device by a consumer. The traffic management network, thus minimizes, if not eliminates privacy concerns. In general, users concerned with privacy can set options in their Bluetooth device (often under “Discovery Mode” or ‘Visibility’) to ensure that the device will not be detectable.
After discovering a MAC address, the traffic data collection node 100 places an associated time stamp on the discovered Bluetooth MAC addresses and stores the MAC addresses with time stamps in non-volatile memory. The data can then be sent to a central processing center using a packet-based cellular modem via the cellular antenna 160. The data can also be passed through a wireless mesh based network via the network antenna 165, where a central node collects data from a mesh network of traffic data collection nodes. A central traffic data collection node can then pass the data to a central processing center.
In addition, the traffic data collection node 100 can detect a signal strength of a signal associated with the MAC address. The traffic data collection node 100 can use multiple signal strength measurements to determine the speed and direction of the device associated with the MAC address. Alternatively, the traffic data collection node 100 can collect signal strength data and send it to another device for further processing.
In order to reduce costs and power usage, various implementations of the traffic data collection node are possible. For example, some traffic data collection nodes only require basic features. For example, endpoint node devices could potentially become very simple devices that contain only a Bluetooth radio and a ZigBee radio. The 8-bit microcontroller (used to house the ZigBee stack) that is built into the ZigBee radio can be used as a controller thereby replacing the ARM7 microcontroller in a standard traffic data collection node. A simplified traffic data collection node can utilize a smaller solar panel and battery subsystem. Alternatively, the simplified traffic data collection node could rely solely on solar power. Advantageously, the size and cost of a traffic data collection node can be reduced. The simplified traffic data collection node can also serve as temporary, portable, low cost node.
Referring to FIG. 2, a diagram of a simplified traffic data collection node 200 in accordance with a representative embodiment is shown. The simplified traffic data collection node 200 can be, for instance, used as an end-node in a traffic data collection network. The simplified traffic data collection node 200 includes a microcontroller 210, a real-time clock 212, a memory card 216, an energy storage device 130, a Bluetooth module 255, a Bluetooth antenna 150, a network module 262, and a network antenna 165. The simplified traffic data collection node 200 can also optionally include a sensor 190. The microcontroller 210, real-time clock 212, memory card 216, energy storage device 130, Bluetooth module 255, Bluetooth antenna 150, network module 262, and network antenna 165 are contained in a protective enclosure 120.
The microcontroller 210, real-time clock 212, memory card 216, energy storage device 130, Bluetooth module 255, Bluetooth antenna 150, network module 262, and network antenna 165 can be integrated onto a single printed circuit board including processors, memory, flash memory, transmitters, receivers, controllers, integrated antennas, and slots. The slots can be used to add upgrade modules or other features such as detectors, machine vision processors, and speakers. The simplified traffic data collection node 200 can have varying degrees of integration. For example, the microcontroller 210 and network module 262 can be integrated into the same integrated circuit.
The energy storage device 130 can be a battery, for example a 12V, 20-30 aH lithium ion battery. The energy storage device 130 can also include a power supply controller that divides the voltage, for example to 1.8 V and 3.3 V. The simplified traffic data collection node 200 is a low power implementation that can operate using the same battery for about 10 years.
Other features, as discussed above, can be selectively included. For example, sensor 190 can include a camera, a microphone, a global positioning system (GPS) module, a specialized sensor or detector. Likewise, the simplified traffic data collection node 200 can be tailored for a particular implementation of a network.
Referring now to FIG. 3, a functional diagram of the traffic data collection node 100 of FIG. 1 in accordance with a representative embodiment is shown. A computing module 110 of the traffic data collection node 100 includes a microcontroller 310, configuration/user interfaces 320, monitoring interfaces 330, a power supply interface 340, and data communication and transport interfaces 350. As discussed above, the computing module 110 can have various levels of integration.
In this example, an energy storage device 130 is integrated onto the printed circuit board of the computing module 110. The energy storage device 130 is a 6 V DC or 12 V DC battery. The energy storage device 130 provides power to the power supply interface 340. The power supply interface 340 can be, for example, a switching power supply that converts the voltage of the energy storage device 130 to lower voltages for the components of the computing module 110. For example, the power supply interface 340 can produce a 1.8 V and 3.3 V source to supply the board.
The microcontroller 310 is a processor that controls the traffic data collection node 100. The microcontroller 310 includes a computer-readable medium such as memory 317 that contains computer-readable instructions for operating the traffic data collection node 100. Microcontroller 310 executes the instructions for operating the traffic data collection node 100. Alternatively, memory 317 can be distinct from microcontroller 310. The microcontroller 310 is clocked by crystal 315. The microcontroller 310 is also connected to an expansion slot 319. The expansion slot(s) 319 can be used to add additional capabilities to traffic data collection node 100; for example a camera or auxiliary processing module can be added as discussed above.
The microcontroller 310 can be, for example, an ARM7 microcontroller such as the ARM7TDMI available from various manufacturers including Taiwan Semiconductor Manufacturing Company in Hsinchu, Taiwan. The ARM7TDMI core is a 32-bit embedded RISC processor delivered as a hard macrocell that provides an acceptable combination of performance, power and area characteristics. The ARM7TDMI core enables system designers to build embedded devices requiring small size, low power and high performance.
The ARM7TDMI core contains 128 kB of internal flash memory for firmware storage and 34 kB of internal SRAM for runtime storage. The onboard memory reduces the need for any external discrete memory subsystems that traditional Bluetooth based systems require. The microcontroller 310 interfaces with three subsystems: configuration/user interfaces 320, monitoring interfaces 330, and data communication and transport interfaces 350.
The configuration/user interfaces 320 include an input/output interface 322, a flash card interface 324, a universal serial bus 326, and a serial port 328. The input/output interface 322 can be any kind of communications port. For example, the input/output interface 322 can be a digital output for triggering a camera, a graphics interface, a digital or analog input coupled to a sensor, or an interface to an auxiliary input/output module.
The flash card interface 324 includes a flash card such as a MicroSD-type flash card. The flash card interface 324 controls communications between the microcontroller 310 and a flash card. The flash card interface 324 can be used for storing data such as discovered Bluetooth MAC addresses or instructions for operating the traffic data collection node 100. For example, a MicroSD flash can be used to store a Bluetooth MAC address data and time stamp that can be retrieved later for further processing. A user can retrieve data from the traffic data collection node 100 by removing and reading the flash card. Similarly, a user can update computer-readable instructions for operating the traffic data collection node 100 by replacing or updating the flash card.
The universal serial bus 326 and the serial port 328 can also be used to communicate with the microcontroller 310. The serial port 328 can be, for instance, a RS-232 or RS-485 type port. The traffic data collection node 100 can be configured and serviced via universal serial bus 326 and/or the serial port 328. The universal serial bus 326 and the serial port 328 can also be used to attach peripheral devices and sensors such as cameras, temperature sensors, etc. as discussed above.
The monitoring interfaces 330 include a real-time clock 332, a temperature monitor 336, and an energy source monitor 338. The real-time clock 332 includes a crystal 331 and a backup battery 335. The crystal 331 is, for example, an independent local 32.768 khz crystal oscillator. The backup battery 335 is, for example, a 3.3v lithium ion battery that provides power to the real-time clock 332 in the event that main power has been lost or the traffic data collection node 100 requires servicing. Data, time and date stamps produced by the microcontroller 310 are maintained via the real-time clock 332, which is clocked from the crystal 331 to reduce any potential clock integrity problems. Firmware also provides the ability to synchronize the time and date of the real-time clock 332 with a remote network time-date server. As a result, time and date accuracy is maintained to insure accurate speed calculation.
The temperature monitor 336 monitors the internal temperature of the traffic data collection node 100. The temperature monitor 336 includes a temperature sensor or sensors. Data from the temperature monitor 336 are passed to the microcontroller 310 using, for example, a serial peripheral interface bus. The temperature data can then be sent to a central processing center for analysis.
The energy source monitor 338 can be, for example, a battery monitor. The energy source monitor 338 monitors energy storage device 130, for instance, a battery. The energy source monitor 338 can be implemented as an 8-bit analog to digital converter built into the microcontroller 310. The battery health data can then be sent to a central processing center for analysis. Alternatively, where the energy storage device 130 is a fuel cell, the energy source monitor 338 can send a low fuel warning to the central processing center.
The data communication and transport interfaces 350 include a cellular modem 390, a Bluetooth module 380, a network module 370, and an Ethernet module 360. The cellular modem 390 transmits and receives data from the microcontroller 310 via a cellular antenna 160. The cellular modem 390 can be a CDMA/GSM wireless module. The cellular modem 390 enables communication between the traffic data collection node 100 and a central processing center. The traffic data collection node 100 can send and receive data packets to and from the central processing center using a cellular phone network; thus, the traffic data collection node 100 does not have to be hardwired in order to collect and report data. Alternatively, any computer can communicate with the traffic data collection node 100 via the packet-based cellular phone network. The cellular modem 390 can also be used to remotely update the computer-readable instructions for operating the traffic data collection node 100. For example, an over-the-air protocol can be used to reflash the software. The cellular antenna 160 can be internal, integrated or external. The cellular modem 390 connects to a GPRS/EDGE wide area network thus providing a robust data collection capability. Standardized cellular components can be used to create low-power and low-maintenance devices.
The Bluetooth module 380 primarily receives but can also transmit data from the microcontroller 310 via a Bluetooth antenna 150. The Bluetooth module 380 can be, for example, a BlueTooth Class 1 and/or Class 2 module, BlueCore4IC available from CSR, plc. of Cambridge, England. The Bluetooth module 380 contains a 2.4 GHz Bluetooth radio, a Bluetooth baseband digital signal processor (DSP), and a Bluetooth firmware based stack implemented in an 8-bit microcontroller. The microcontroller 310 interfaces to Bluetooth module 380 via a serial universal asynchronous receiver/transmitter (UART) interface. The Bluetooth module 380 has the ability to perform Bluetooth device inquiries. The microcontroller 310 can command the Bluetooth module 380 to perform a device inquiry. The Bluetooth module 380 returns the Bluetooth devices discovered in real-time to the microcontroller 310 to be recorded and logged to the flash card mounted at the flash card interface 324. For example, as a car with a discoverable Bluetooth transponder passes the traffic data collection node 100, the Bluetooth module 380 can discover the MAC address of the car's Bluetooth transponder and return the MAC address to the microcontroller 310. The microcontroller 310 time stamps the MAC address and saves the data to a flash card mounted at the flash card interface 324. Alternatively, other devices can be detected, for example, the module can be designed to probe for Wi-Fi devices, cell phones, satellite phones, or any other device that transmits a unique or pseudo-unique discovery signal or that responds to wireless inquiries.
The network module 370 transmits and receives data from the microcontroller 310 via a network antenna 165. The network module 370 allows the traffic data collection node 100 to form a network with other traffic data collection nodes and other simplified traffic data collection nodes. The network can be, for instance, a mesh network. Alternatively, other network configurations can be used. In one example, the network module 370 is a ZigBee (IEEE 802.15.4) transponder operating on the 900 MHz Industrial-Scientific-Medical (ISM) band. ZigBee mesh networking allows for linked data hops between receivers (traffic data collection nodes). ZigBee is a low-cost, low-power, wireless mesh networking standard. The low cost allows the technology to be widely deployed in wireless control and monitoring applications, the low power-usage allows longer life with smaller batteries, and the mesh networking provides high reliability and larger range.
Alternatively, other networking schemes and protocols can be used. Hence, the traffic data collection node 100 can pass data to and from other the traffic data collection nodes. For example, in a case where only a few central nodes are equipped with active cellular modems or hardwired connections, other nodes can pass their data through the network to the central node for upload to a central processing center. Advantageously, the number of nodes requiring an expensive cellular modem is substantially reduced.
The Ethernet module 360 transmits and receives data from the microcontroller 310 via a hardline such as a Cat-5 cable. When connected to an Internet access point, the Ethernet module 360 enables communication between the traffic data collection node 100 and a central processing center. Alternatively, any computer can communicate with the traffic data collection node 100 when the Ethernet module 360 is connected to an Internet access point. The Ethernet module 360 can also be used to update (remotely or onsite) the computer-readable instructions for operating the traffic data collection node 100. Alternatively, the Ethernet module 360 can be replaced with a weatherproof coaxial-based hardline communications connection; for example, the traffic data collection node 100 can be connected to a cable television network or phone line.
The basic functions of the traffic data collection node can be executed by firmware. Referring to FIG. 4, a diagram of an overview of a traffic data collection node architecture in accordance with a representative embodiment is shown. The architecture of the traffic data collection node includes a hardware layer 410, a hardware abstraction layer 420, a real-time operating system (RTOS) layer 430 and an application layer 440. The hardware layer 410 represents the physical implementation of the traffic data collection node as discussed above. The RTOS layer 430 consumes about  ̃50 kB of flash memory and 32 kB of runtime memory. A hardware abstraction layer 420 is between the hardware layer 410 and the RTOS layer 430 that allows the real-time operating system to communicate with the hardware using device drivers.
The application layer 440 includes the following application components: a system health monitor 450, a MAC address logger 460, a MAC address detector 470, a configuration interface 480, and a data transport interface 490. The system health monitor 450 monitors the health of the system and signals an alert when the health of the system in danger, for instance, when the battery is about to die or when the system is overheating. The MAC address detector 470 interacts with the driver (in the hardware abstraction layer 420) for the Bluetooth module and detects the MAC address of a device, such as a device in a car. The MAC address detector 470 notifies the MAC address logger 460 that it transferred a new MAC address element to the MAC address logger 460. The MAC address logger 460 records MAC addresses detected along with an associated time stamp. The configuration interface 480 handles the user configuration dialogs that occur over the driver (in the hardware abstraction layer 420) that handles the universal serial bus and the serial port. The data transport interface 490 is responsible for handling the cellular modem, the network module, and the Ethernet module.
Referring to FIG. 5, a flowchart of the operations performed by a MAC address detector in accordance with a representative embodiment is shown. Additional, fewer or different operations may be performed. In a start operation 510, the MAC address detector initializes and begins the process of looking for Bluetooth devices. In a send Bluetooth device inquiry command operation 520, the MAC address detector sends an inquiry command to a Bluetooth module of a traffic data collection node via a Bluetooth module device driver which is part of the hardware abstraction layer. The MAC address detector 470 can look for Bluetooth devices periodically or look for Bluetooth devices as soon as resources are available. Alternatively, the MAC address detector 470 can change the rate it looks for Bluetooth devices based on time of date and prior results; thus, saving power. The inquiry command orders the Bluetooth module to detect any discoverable Bluetooth devices within the range of the Bluetooth module's 2.4 GHz radio transceiver, which for class 1 devices is about 100 meters and for class 2 devices is about 10 meters.
In a Bluetooth radio interface operation 530, the Bluetooth module attempts to find Bluetooth devices. The Bluetooth module, using its own hardware stack, operates independently of the microcontroller. When the Bluetooth module has a result, it interrupts the microcontroller.
In an interrupt service routine operation 540, the real-time operating system services the interrupt and forwards the result to the MAC address detector. The interrupt service routine operation 540 is preferably a high priority interrupt service routine. If the Bluetooth module did not find any Bluetooth devices, the MAC address detector returns to operation 520. However, if a Bluetooth device is found, in a time stamp and data log operation 550, the MAC address detector forwards the detected MAC addresses to the MAC address logger which then appends a time stamp to the detected MAC addresses and saves the data to a flash card.
Referring to FIG. 6, a diagram of a MAC address detection packet 600 in accordance with a representative embodiment is shown. The MAC address logger assembles the MAC address detection packet 600 and saves the MAC address detection packet 600 to the flash card. The MAC address detection packet 600 includes a traffic data collection node id 610, a detected address 620, a time stamp 630, and a checksum 640. The MAC address detection packet 600 can be any length, for example, 16 bytes. The traffic data collection node id 610 is the 24 bit MAC address of the traffic data collection node that detected the Bluetooth device. The detected address 620 is the 24 bit MAC address detected by the MAC address detector. The time stamp 630 is the date, year, and time associated with the detection of the detected address 620. The checksum 640 is the checksum of the MAC address detection packet 600.
Optionally, the MAC address detection packet 600 can also include other fields such as data type, extension fields, destination address, and control flags. The MAC address detection packet 600 can be encrypted and include features such as forward error correction.
Studies show that about 3-5% of vehicles on U.S. roads have a Bluetooth device that is in discoverable mode. Thus, when monitoring a road, a traffic data collection node will probably detect one MAC address per minute on average. Hence, the traffic data collection node accumulates about 16 bytes of data per minute, or about 960 bytes per hour, or about 23 Kbytes per day. Data from a traffic data collection node can be sent to the central processing center about once every 5 minutes with about a 80 byte payload.
Traffic Management Network
In accordance with a representative embodiment, a traffic management network includes a plurality of traffic data collection nodes. The plurality of traffic data collection nodes of the traffic management network monitor and measure vehicular and pedestrian flows by measuring anonymous Bluetooth Media Access Control (MAC) addresses. The plurality of traffic data collection nodes collect MAC addresses from mobile devices such as headsets and in-dash sync services in cars. A MAC address is a unique identifier assigned to a network adapter by its manufacturer for identification. The data generated using the traffic management network can be used to calculate high quality, high density travel times by sampling a portion of actual travel times from a traffic stream.
In accordance with a representative embodiment, computers at a central processing station of the traffic management network match detected MAC addresses. The matched MAC addresses have respective time stamps. By matching MAC addresses from traffic data collection nodes at two different locations, computers at the central processing station can determine the speed and direction of the device associated with the MAC address.
In a representative embodiment, the traffic management network can be arranged in two configurations: a cellular packet-based network or a mesh-cellular packet-based network. Various combinations of the two approaches is possible. Alternatively, other networking configurations can be employed.
In a cellular packet-based network described with respect to FIG. 7, each traffic data collection node has a packet-based cellular modem (GSM or CDMA) which provides the individual traffic data collection nodes with Internet protocol (IP) based connectivity over a point-to-point-protocol (PPP) cellular link. In this configuration, a central processing center has the capability to communicate with each traffic data collection node “directly” over a standard TCP/IP based communication link.
In a mesh-cellular packet-based network described with respect to FIGS. 8 and 9, a traffic data collection node can be a coordinator, router, or end-point device. Coordinators collect data packets from other traffic data collection nodes in the traffic management network. The coordinators send the data packets to a central processing server via a cellular packet-based modem, which provides the coordinator node with IP-(internet protocol) based connectivity over a point-to-point-protocol (PPP) cellular link. Routers pass along data packets from other traffic data collection nodes in the traffic management network. End-points only send data packets to other traffic data collection nodes.
Referring to FIG. 7, a diagram of a cellular packet-based network 700 in accordance with a representative embodiment is shown. The cellular packet-based network 700 monitors, for example, traffic on a road 710. Traffic data collection nodes 732, 734, 736 and 738 are located near the road 710 so that when a vehicle 720 passes, the traffic data collection nodes 732, 734, 736 and 738 can detect a discoverable MAC address. Each of the traffic data collection nodes 732, 734, 736 and 738 is wirelessly connected to one of cellular base stations 742, 744 or 746. The cellular base stations 742, 744 and 746 are connected to Internet 750. A central processing station 770 is also connected to the Internet 750.
The traffic data collection nodes 732, 734, 736 and 738 pass collected data to the central processing station 770 using IP packets. Each of the traffic data collection nodes 732, 734, 736 and 738 is assigned a static IP address. Alternatively, the nodes can be assigned an IP address dynamically using Dynamic Host Configuration Protocol (DHCP). When the traffic data collection nodes 732, 734, 736 and 738 are initialized, they each form a point-to-point-protocol (PPP) cellular link to the central processing station 770. Since, each of the traffic data collection nodes 732, 734, 736 and 738 has its own link to the central processing station 770, the nodes can be placed as far apart as desired. The nodes can periodically or continuously upload data to the central processing station 770.
Each of the nodes communicates to the central processing station 770 independently, though the central processing station 770 can coordinate data collection and other activities amongst the nodes. For example, when the vehicle 720 passes traffic data collection node 732, traffic data collection node 732 detects the MAC address of vehicle 720. Traffic data collection node 732 time stamps and stores the data as a MAC address detection packet. Traffic data collection node 732 then sends an IP packet, addressed to the central processing station 770 and containing MAC address detection packet, to the base station 742. The IP packet may contain many MAC address detection packets. The base station 742 routes the IP packet to the Internet 750. The IP packet arrives at the central processing station 770. The central processing station 770 un-encapsulates the IP packet and processes the MAC address detection packet.
Likewise, when the vehicle 720 passes traffic data collection node 738, traffic data collection node 738 detects the MAC address of vehicle 720. Traffic data collection node 738 time stamps and stores the data as a MAC address detection packet. Traffic data collection node 738 then sends an IP packet, addressed to the central processing station 770 and containing MAC address detection packet, to the base station 746. The IP packet may contain many MAC address detection packets. The base station 746 routes the IP packet to the Internet 750. The IP packet arrives at the central processing station 770. The central processing station 770 un-encapsulates the IP packet and processes the MAC address detection packet. Thus, each of the traffic data collection nodes 732, 734, 736 and 738 has its own link to the central processing station 770.
The mesh-cellular packet-based network can take various forms, for instance, a clustered tree type configuration or a daisy-chain type configuration. Advantageously, the mesh-cellular packet-based network reduces the number of cellular modems needed for communicating with the central processing station thereby reducing hardware costs and usage fees. In a city-type environment, the traffic management network can be a clustered tree type configuration including coordinator nodes, router nodes, and endpoint nodes. In a highway-type environment, the traffic management network can be a daisy-chained type configuration including mostly coordinator nodes and router nodes.
Referring to FIG. 8, a diagram of a clustered tree type mesh-cellular packet-based network 800 in accordance with a representative embodiment is shown. The traffic data collection nodes of the clustered tree type mesh-cellular packet-based network 800 can be a coordinator node 810, a router node 820, 822, 824 and 826, or an end-point node 830, 834 and 836. All of the nodes can have the ability to detect BlueTooth addresses.
The coordinator node 810 is logically central to the network or sub-network and stores all information about the mesh network. The coordinator node 810 can have a communication link, for example, a ZigBee-based networking link, to router nodes or end-point nodes. The coordinator node 810 can be, for example, a traffic data collection node as described above. The coordinator node 810 can preprocess data and perform local analysis on data points. The coordinator node 810 and associated router nodes or end-point nodes can be spaced about 0.2 to 1 mile apart. In FIG. 8, the coordinator node 810 has direct wireless connections to four router nodes 822, 826 and 820.
The coordinator node 810 is wirelessly connected to a cellular base station 840. The cellular base station 840 is connected to Internet 750. A central processing station 770 is also connected to the Internet 750. The coordinator node 810 passes collected data to the central processing station 770 using IP packets. The coordinator node 810 is assigned a static IP address. Alternatively, a coordinator node can be assigned an IP address dynamically using DHCP. When the coordinator node 810 is initialized, it forms a point-to-point-protocol (PPP) cellular link to the central processing station 770.
The router nodes 820, 822, 824 and 826 serve as intermediate nodes and are responsible for passing data to and from coordinator nodes, other router nodes, and endpoint nodes over a communication link, for example, a ZigBee based networking link. The router nodes 820, 822, 824 and 826 can preprocess data and perform local analysis on data points. Some router nodes also contain the capability of utilizing a cellular packet-based modem to alert a central processing server 770 that a coordinator node has failed or is unreachable. The router nodes 820, 822, 824 and 826 can be, for example, a traffic data collection node as described above. The router nodes 820, 822, 824 and 826 and associated router nodes or end-point nodes can be spaced about 0.2 to 1 mile apart.
The end-point nodes 830, 834 and 836 can contain just enough functionality to communicate with a single coordinator node or a single router node over a communication link, for example, a ZigBee based networking link. The end-point nodes 830, 834 and 836 can be, for example, a simplified traffic data collection node as described above. The end-point nodes 830, 834 and 836 pass data to the router nodes 820, 822, 824 and 826 or the coordinator node 810. The end-point nodes 830, 834 and 836 can preprocess data and perform local analysis on data points. Because, nodes in a city-environment can be more clustered, cheaper end-point nodes can be used instead of more expensive router nodes. The end-point nodes 830, 834 and 836 provide the ability to place a low-cost, low-powered simplified traffic data collection node in an urban city-type environment to provide high traffic resolution in an area where roads may be tightly clustered together.
The clustered tree type mesh-cellular packet-based network 800 can be self-forming and self-healing. When the coordinator node 810, the router nodes 820, 822, 824 and 826, and end-point nodes 830, 834 and 836 are activated, they all attempt to self-form a mesh network by building links to each other. The end-point nodes 830, 834 and 836 attach to one of the router nodes 820, 822, 824 and 826, for instance, whichever router node provides the best network connection. The coordinator node 810 and the router nodes 820, 822, 824 and 826 attempt to build links to each other. The clustered tree type mesh-cellular packet-based network 800 attempts to reduce the number of active cellular modems in the system while still maintaining adequate data bandwidth. Hence, the clustered tree type mesh-cellular packet-based network 800 can have more than one coordinator node. The clustered tree type mesh-cellular packet-based network 800 can re-link in order to balance data loads. Additionally, if the links in the clustered tree type mesh-cellular packet-based network 800 fail or become weak, the clustered tree type mesh-cellular packet-based network 800 self-heals when the nodes form new links or paths between each other that avoid the failing node or weak link.
The clustered tree type mesh-cellular packet-based network 800 monitors, for example, traffic on a road 710. The coordinator node 810, the router nodes 820, 822, 824 and 826, and the end-point nodes 830, 834 and 836 are mostly located near the road 710 so that when a vehicle 720 passes, the coordinator node 810, the router nodes 820, 822, 824 and 826, and the end-point nodes 830, 834 and 836 can detect a discoverable MAC address.
When the vehicle 720 passes end-point node 834, the end-point node 834 detects the MAC address of vehicle 720. The end-point node 834 time stamps and stores the data as a first MAC address detection packet. The end-point node 834 sends the MAC address detection packet to router node 824; however, the end-point node 834 may only pass data to its associated router periodically. Router node 824 sends the first MAC address detection packet to router node 822. Router node 822 sends the first MAC address detection packet to coordinator node 810.
The coordinator node 810 then sends an IP packet, addressed to the central processing station 770 and containing the first MAC address detection packet, to the base station 840. The IP packet may contain many MAC address detection packets from various router nodes and end point nodes. The base station 840 routes the IP packet to the Internet 750. The IP packet arrives at the central processing station 770. The central processing station 770 un-encapsulates the IP packet and processes the first MAC address detection packet.
Later, when the vehicle 720 passes end-point node 836, the end-point node 836 detects the MAC address of vehicle 720. The end-point node 836 time stamps and stores the data as a second MAC address detection packet. The end-point node 836 sends the second MAC address detection packet to router node 826; however, the end-point node 836 may only pass data to its associated router periodically. Router node 826 sends the second MAC address detection packet to coordinator node 810.
The coordinator node 810 then sends an IP packet, addressed to the central processing station 770 and containing the second MAC address detection packet, to the base station 840. The IP packet may contain many MAC address detection packets from various router nodes and end point nodes. The base station 840 routes the IP packet to the Internet 750. The IP packet arrives at the central processing station 770. The central processing station 770 un-encapsulates the IP packet and processes the second MAC address detection packet.
The central processing station 770 can analyze the first MAC address detection packet and the second MAC address detection packet. For example, the central processing station 770 can use the data to monitor or analyze traffic conditions. In particular, the speed of the vehicle 720 can be calculated by knowing the positions of end-point node 834 and end-point node 836 and the time difference of the time stamps recorded the first MAC address detection packet and the second MAC address detection packet. The positions of end-point node 834 and end-point node 836 can be determined and recorded at installation, determined by global positioning system (GPS) modules included in the nodes, or determined using triangulation techniques in combination with the cellular network.
Referring to FIG. 9, a diagram of a daisy-chain type mesh-cellular packet-based network in accordance with a representative embodiment is shown. The traffic data collection nodes of the daisy-chain type mesh-cellular packet-based network 900 can be a coordinator node 810, a router node 920, 921, 922, 923, 924, 925, 926, 927 and 929, or an end-point node (not shown). All of the nodes can have the ability to detect BlueTooth addresses.
The coordinator node 810 is logically central to the network or sub-network and stores all information about the mesh network. The coordinator node 810 can have a communication link, for example, a ZigBee based networking link, to router nodes or end-point nodes. The coordinator node 810 can be, for example, a traffic data collection node as described above. The coordinator node 810 can preprocess data and perform local analysis on data points. The coordinator node 810 and associated router nodes or end-point nodes can be spaced about 0.2 to 1 mile apart. The coordinator node 810 can be linked to more than one daisy chain. For example, coordinator node 810 is linked to the daisy chain associated with Highway ‘A’ 910 and the daisy chain associated with Highway ‘B’ 915.
The coordinator node 810 is wirelessly connected to a cellular base station 840. The cellular base station 840 is connected to Internet 750. A central processing station 770 is also connected to the Internet 750. The coordinator node 810 passes collected data to the central processing station 770 using IP packets. The coordinator node 810 is assigned a static IP address. Alternatively, a coordinator node can be assigned an IP address dynamically using DHCP. When the coordinator node 810 is initialized, it forms a point-to-point-protocol (PPP) cellular link to the central processing station 770.
The router nodes 920, 921, 922, 923, 924, 925, 926, 927 and 929 serve as intermediate nodes and are responsible for passing data to and from coordinator nodes, other router nodes, and endpoint nodes over a communication link, for example, a ZigBee based networking link. The router nodes 920, 921, 922, 923, 924, 925, 926, 927 and 929 can preprocess data and perform local analysis on data points. Some router nodes also contain the capability of utilizing a cellular packet-based modem to alert a central processing server 770 that a coordinator node has failed or is unreachable. The router nodes 920, 921, 922, 923, 924, 925, 926, 927 and 929 can be, for example, a traffic data collection node as described above. The router nodes 920, 921, 922, 923, 924, 925, 926, 927 and 929 and associated router nodes or end-point nodes can be spaced about 0.2 to 1 mile apart.
Some of router nodes act as child router nodes, where the daisy chain links to the parent coordinator node. For example, router nodes 924 and 929 are child router nodes. Router nodes 924 and 929 are intermediate nodes for the rest of the nodes in the daisy-chained configuration. Router nodes 924 and 929 can also backup the coordinator node 810 is case of failure by becoming coordinator nodes.
The daisy-chain type mesh-cellular packet-based network 900 is self-forming and self-healing. When the coordinator node 810, and the router nodes 920, 921, 922, 923, 924, 925, 926, 927 and 929 (and any end-point nodes) are activated, they all attempt to self-form a mesh network by building links to each other. The coordinator node 810 and the router nodes 920, 921, 922, 923, 924, 925, 926, 927 and 929 attempt to build links to each other. The central processing station 770 can also direct the nodes to form a specific network configuration based on the node location, maps, predicted demand, etc. The daisy-chain type mesh-cellular packet-based network 900 attempts to reduce the number of active cellular modems in the system while still maintaining adequate data bandwidth. Hence, the daisy-chain type mesh-cellular packet-based network 900 can have more than one coordinator node. The daisy-chain type mesh-cellular packet-based network 900 can re-link in order to balance data loads. Additionally, if the links in the daisy-chain type mesh-cellular packet-based network 900 fail or become weak, the daisy-chain type mesh-cellular packet-based network 900 self-heals when the nodes form new links or paths between each other that avoid the failing node or weak link.
The daisy-chain type mesh-cellular packet-based network 900 monitors, for example, traffic on Highway ‘A’ 910. The coordinator node 810, the router nodes 921, 922, 923, 924, 925, 926 and 927 are mostly located near Highway ‘A’ 910 so that when a vehicle 720 passes, the coordinator node 810 and the router nodes 921, 922, 923, 924, 925, 926 and 927 can detect a discoverable MAC address.
When the vehicle 720 passes router node 921, the router node 921 detects the MAC address of vehicle 720. The router node 921 time stamps and stores the data as a first MAC address detection packet. The router node 921 sends the MAC address detection packet to router node 922; however, the router node 921 may only pass data to its associated router periodically. Router node 922 sends the first MAC address detection packet to router node 923. Router node 923 sends the first MAC address detection packet to router node 924, which is a child router node. Router node 924 sends the first MAC address detection packet to coordinator node 810.
The coordinator node 810 then sends an IP packet, addressed to the central processing station 770 and containing the first MAC address detection packet, to the base station 840. The IP packet may contain many MAC address detection packets from various router nodes and end point nodes. The base station 840 routes the IP packet to the Internet 750. The IP packet arrives at the central processing station 770. The central processing station 770 un-encapsulates the IP packet and processes the first MAC address detection packet.
Later, when the vehicle 720 passes router node 927, the router node 927 detects the MAC address of vehicle 720. The router node 927 time stamps and stores the data as a second MAC address detection packet. The router node 927 sends the second MAC address detection packet to router node 926; however, the router node 927 may only pass data to its associated router periodically. Router node 926 sends the second MAC address detection packet to router node 925. Router node 925 sends the second MAC address detection packet to router node 924, which is a child router node. Router node 924 sends the second MAC address detection packet to coordinator node 810.
The coordinator node 810 then sends an IP packet, addressed to the central processing station 770 and containing the second MAC address detection packet, to the base station 840. The IP packet may contain many MAC address detection packets from various router nodes and end point nodes. The base station 840 routes the IP packet to the Internet 750. The IP packet arrives at the central processing station 770. The central processing station 770 un-encapsulates the IP packet and processes the second MAC address detection packet.
The central processing station 770 can analyze the first MAC address detection packet and the second MAC address detection packet. For example, the central processing station 770 can use the data to monitor or analyze traffic conditions. In particular, the speed of the vehicle 720 can be calculated by knowing the positions of router node 921 and router node 927 and the time difference of the time stamps recorded the first MAC address detection packet and the second MAC address detection packet. The positions of router node 921 and router node 927 can be determined and recorded at installation, determined by global positioning system (GPS) modules included in the nodes, or determined using triangulation techniques in combination with the cellular network.
Advantageously, the traffic management network enables measurement of travel time and average vehicle speed with increased accuracy. Road speed is derived from travel times and accuracy is assured from the volume of Bluetooth MAC addresses collected. The origins and destinations (O-Ds) of BlueTooth devices associated with a moving object can be accurately measured at a reduced cost and with a larger sample size than possible using traditional methods. Advantageously, Bluetooth traffic monitoring is economical than closed-circuit video cameras, observers or axle counters on a cost per data point basis.
Alternatively, the traffic management network can enable the mapping of information on routing decisions. Tracking Bluetooth MAC addresses can identify trends in how and when drivers select their route options. Computers at the central processing station can use information provided by the traffic management network to track travel times, originations and destinations for a variety of modes of transportation (vehicles, rail, and pedestrian) on freeways, arterials and sidewalks (since the Bluetooth devices are associated with people rather than vehicles).
Traffic Management System
Referring to FIG. 10, a diagram of a traffic management system 1000 in accordance with a representative embodiment is shown. The traffic management system 1000 can include a network 1015, nodes 1010, a cellular base station 1017, Internet 1035, a central processing station 1037, and an application server 1060. The nodes 1010 can be located along or near a road 1022. Road 1022 can include, for example, on-ramp 1025 and off-ramp 1020. Road 1022 can also include a first signage 1045, a second signage 1047, and a traffic light 1055. The first signage 1045 and the second signage 1047 can be a traffic sign, a message board, a traffic signal, or an electronic billboard.
The nodes 1010 anonymously discover, for example, Bluetooth MAC addresses, as described above. When a vehicle 1027 passes one of the nodes 1010, the particular node attempts to collect MAC addresses of wireless devices in the vehicle 1027. For example, the nodes 1010 can collect the MAC addresses of cell phone 1040 and navigation device 1042 which are in vehicle 1027. The navigation device 1042 can be a global positioning satellite (GPS) unit that matches the unit's location to a map. The nodes 1010 can be connected to the network 1015, as described above. For example, the network 1015 can be a daisy-chain type mesh-cellular packet-based network, a clustered tree type mesh-cellular packet-based network, an Ethernet network, or any other network. One or many of the nodes 1010 can be communicatively coupled to cellular base station 1017. Alternatively, each node 1010 can be communicatively coupled to cellular base station 1017. In addition, other devices such as first signage 1045 can also be connected to network 1015.
As the cell phone 1040 and navigation device 1042 pass nodes 1010, the MAC addresses of the cell phone 1040 and navigation device 1042 can collected by nodes 1010, be time stamped, and sent to central processing station 1037 through network 1015, cellular base station 1017 and Internet 1035, as discussed above. In one illustrative embodiment, the central processing station 1037 can use the MAC addresses, node locations, and time stamps to determine travel time, vehicle speed, and vehicle direction (directionality), as discussed above. Thus, as many vehicles pass nodes 1010, various conditions of the road can be determined such as traffic congestion and traffic speed. For example, if a crash 1030 occurs on the road 1022, the central processing station 1037 can determine that vehicles are not moving if the nodes 1010 do not detect progression of the cell phone 1040 and navigation device 1042 or that vehicles are moving too slowly if the time the cell phone 1040 and navigation device 1042 take to pass successive nodes implies traffic has slowed.
Information about vehicle travel time, vehicle speed, and vehicle direction can be shared with an application server 1060 over Internet 1035. In one illustrative embodiment, the application server 1060 can be operated by a third party. The application server 1060 can be used to aggregate traffic data, analyze traffic data, and provide enhanced services based on the traffic data.
For example, the central processing station 1037 can pass vehicle travel time, vehicle speed, and vehicle direction associated with the crash 1030 to application server 1060. Additional information can also be included such as an indication that the crash 1030 has occurred. The application server 1060 can provide information to drivers regarding the crash 1030. For example, the application server 1060 can send a message to first signage 1045, via network 1015, instructing the first signage 1045 to display a message such as “Accident Ahead. Please slow down.”
Alternatively, application server 1060 can reroute traffic. The application server 1060 can send a message to second signage 1047, via Internet 1035, instructing the second signage 1047 to display a message such as “Accident Ahead. Temporary Detour. Please Exit” which causes drivers to take off-ramp 1020, thereby decongesting the road 1022. The application server 1060 can also cause other signage to display driving instructions to complete a detour route.
Alternatively, the application server 1060 can send an email or text message describing the traffic conditions to cell phone 1040. Alternatively, the nodes 1010 can also send information, such as the accident warning, back to the cell phone 1040 and navigation device 1042 via network 1015 (e.g. over the Bluetooth link). For instance, users could register for a service that allows the nodes 1010 to pair with their Bluetooth devices.
Alternatively, application server 1060 can stop traffic from entering the road 1022. For example, application server 1060 can send a message to a Department of Transportation (DOT) traffic management server 1050, via Internet 1035, informing the DOT that an accident has occurred at the location of crash 1030. The DOT traffic management server 1050 can control traffic light 1055 to prevent more vehicles from entering the on-ramp 1025, thereby decongesting the road 1022. In addition, the application server 1060 and the DOT traffic management server 1050 can use the vehicle travel time, vehicle speed, and vehicle direction to deploy resources such as police, road crews, ambulances, plows, etc.
In another illustrative embodiment, information regarding traffic conditions can be compiled for various end users. For example, application server 1060 can determine current or historical travel times for roads. Referring to FIG. 11, an illustration of a traffic map 1110 in accordance with a representative embodiment is shown. The traffic map 1110 can show a road system 1120 for a city (depicted as “Big City”). The application server can use vehicle travel time, vehicle speed, and vehicle direction in combination with maps and posted speed limits to generate traffic map 1110. Traffic map 1110 can show the congestion of road system 1120. For example, traffic map 1110 can show areas of light congestion 1130, medium congestion 1140, and high congestion 1150. Traffic map 1110 can show accident 1160. Information regarding the accident 1160, such as location, severity, and driver instructions, can be determined by the application server 1060 or provided by another source such as the DOT. In addition, travel times 1170 can be calculated and displayed.
Optionally, the traffic map 1110 can also display the location of certain vehicles. For example, the MAC address of a wireless device associated with a known vehicle 1180 can be stored by the application server 1060. As discussed above, MAC addresses are anonymous. However, if a user chooses to register the MAC address of his device with a database, the device (and the associated person or vehicle) can then be tracked. When the known vehicle 1180 passes a node 1010, the MAC address associated with the known vehicle 1180, node identifier, and a time stamp can be sent to the central processing station 1037 for processing and then to application server 1060. The application server 1060 can match the MAC address with an identifier of the known vehicle 1180. For example, MAC address “01:23:45:67:89:ab” could be associated with “city snow plow 19.” Thus, when MAC address “01:23:45:67:89:ab” is detected at a node, the map can display the location of “city snow plow 19.” Advantageously, a city can track its snow plows and manage resources, for instance, a manager can easily determine what roads have been plowed and need to be plowed.
Likewise, any other vehicle can be matched with a particular MAC address. For example, police cars, ambulances, road crews, fleets of trucks, and/or employees can be associated with a MAC address and later tracked. In another illustrative embodiment, parents could track the location of their children by registering the MAC address of a child's cell phone in a database. When a teenager is out driving, the MAC address of the child's cell phone will be detected by nodes. The application server 1060 can match the stored MAC address of the child's cell phone with incoming node data. When the application server 1060 detects a match, the application server 1060 can report the location of the child based on the detection at the node. Similarly, a parent can also monitor a child's driving speeds and travel habits.
Referring again to FIG. 10, traffic information, such as the traffic map, can be displayed and/or analyzed on a computer 1070, a smart phone 1075, the cell phone 1040, or the navigation device 1042. The traffic information can be combined with other sources of information such as weather, news, resource deployment, and personal data (e.g. travel plans). For example, the navigation device 1042 can use the traffic information provided by application server 1060 to reroute travel plans entered by the user. In another example, a user can check a website including the traffic map of FIG. 11 before leaving for work using the computer 1070 or smart phone 1075. Advantageously, users of the traffic management system can quickly receive and/or obtain current traffic information in order to adapt to changing road conditions.
Alternatively, a traffic management system can also monitor pedestrian traffic. For example, a traffic management system can be used to monitor congestion in a terminal such as an airport. In addition, a traffic management system can be used to serve individualized advertisements using available signage. For example, a vehicle, or groups of vehicles, associated with a MAC address(es) that has not “stopped” for many hours may be targeted with a food advertisement sent to a nearby electronic billboard. Alternatively, when the user of a registered MAC address passes a node near an electronic billboard, an application server can send an individualized advertisement to the billboard for display. Similarly, an individualized advertisement can be sent to a cell phone, navigation device, etc. based on the location of a node that detects the registered MAC address. Thus, advertisers such as truck stops can send advertisements targeted to a profile of a user with a registered MAC address as the user passes near a specific location. For instance, the advertisement could be sent as the vehicle approaches the truck stop.
The foregoing description of the exemplary embodiments have been presented for purposes of illustration and of description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed, and modifications and variations are possible in light of the above teachings or may be acquired from practice of the invention. For example, the described representative embodiments focused on BlueTooth detection and ZigBee networking. The present invention, however, is not limited to detection of BlueTooth devices. Those skilled in the art will recognize that the device and methods of the present invention may be practiced using other connectivity detection means. Additionally, the networking can be done using other networking methods. Further, although a highway-type implementation is described, the system and method for a traffic management network can also be used in a city environment, warehouses, ports, terminals, etc. The embodiments were chosen and described in order to explain the principles of the invention and as practical applications of the invention to enable one skilled in the art to utilize the invention in various embodiments and with various modifications as suited to the particular use contemplated. It is intended that the scope of the invention be defined by the claims appended hereto and their equivalents.

## Claims

1. A system for collecting traffic data, comprising:
at least one stationary coordinator device comprising:
cellular communications circuitry connected to a first processor; and
first networking communications circuitry connected to the first processor;

a plurality of stationary traffic data collection devices positioned along at least a portion of a road, wherein each stationary traffic data collection device comprises:
second networking communications circuitry connected to a second processor, wherein the at least one stationary coordinator device and the stationary traffic data collection device form a network via the first networking communications circuitry and the second networking communications circuitry;
device detection circuitry connected to the second processor configured to detect device identifiers of devices contained within vehicles traveling on the at least the portion of the road; and
wherein the second processor is configured to control transmission of the detected device identifiers to one of the at least one stationary coordinator device via the second networking communications circuitry; and

a central processing station linked to the at least one stationary coordinator device via the cellular communications circuitry, wherein the central processing station receives a device identifier of a device from two or more stationary traffic data collection devices via one or more of the at least one stationary coordinator device, wherein the central processing station comprises:
a third processor configured to:
calculate a speed of the device on the road, a directionality of the device on the road, and a travel time of the device on the road based upon the received device identifiers from the two or more stationary traffic data collection devices and a predetermined distance between the two or more stationary traffic data collection devices.

2. The system of claim 1, wherein the device detection circuitry is BlueTooth device detection circuitry.

3. The system of claim 2, wherein the first and second networking communications circuitry are ZigBee communications circuitry.

4. The system of claim 1, wherein the device identifier of the device comprises a media access control address.

5. The system of claim 1, wherein the central processing station receives a time stamp associated with the device identifier.

6. The system of claim 1, further comprising an application server configured to determine traffic congestion of the road based on at least one of the speed of the device on the road, the directionality of the device on the road, and the travel time of the device on the road.

7. The system of claim 6, wherein the application server is configured to generate a traffic display indicating at least one of levels of congestion on the road, speed of traffic on the road, and travel time on the road.

8. The system of claim 1, further comprising an application server configured to:
receive a device identifier and a stationary traffic data collection device location;
match the device identifier to a user identifier; and
associate the user identifier with the stationary traffic data collection device location.

9. The system of claim 8, further comprising a display configured to indicate a location of an object based on the user identifier and the device location.

10. The system of claim 1, wherein a time stamp is associated with the device identifier.

11. The system of claim 10, wherein the first networking communications circuitry is further configured to communicate with one or more of the plurality of stationary traffic data collection devices to receive signal strengths associated with the device contained within the vehicle, wherein the central processing station receives the signal strengths associated with the device, and wherein the third processor is configured to determine a speed and direction of the device based upon the detected signal strengths.

12. The system of claim 1, wherein at least one of the plurality of stationary traffic data collection devices further comprises a camera configured to:
take a picture of traffic; and
count a number of license plates within the picture of traffic.

13. The system of claim 12, wherein the camera is further configured to detect traffic jams.