Vehicles queuing up to pay toll tax at a highway toll gate is a common sight. The toll collection system mostly works on a manual process and can take up to a minute to process each vehicle’s transaction. This has a cumulative effect of increasing traffic congestion, adding delays in travel time and also becoming a pollution hotspot near the toll gate area. Imagine yourself in a car, stuck in one of those long queues. All that you can do is to sit patient till you get past the toll gate.
To solve this problem, in this blog post, I present to you a Smart Toll Collection System. This system can greatly expedite the time taken by each vehicle to pay the toll tax. This is not a new problem. There are existing solutions which are commercially deployed and are practically well suited. What I am presenting here is a model system build atop the IBM Bluemix ecosystem of services.
Bluemix provides a host of services which can ease application development in many ways. Most noteworthy feature of Bluemix is the exhaustive catalog of many services. This contains databases, middleware tools and other computing infrastructure which makes a developer’s job easy. Bluemix is built on top of Cloud Foundry and Docker container architecture, and there is a host of pre-build container images available with your favorite programming language. Read on to get the hang of how can we leverage Bluemix services to build this demo.
As the name suggests, “Smart Highway Toll Collection System” is an automatic system which leverages the “Internet of Things” technology to identify a vehicle via a unique identification tag. We have used RFID tag in this case. When a vehicle passes through a toll booth, this RFID card is used to track & bill the vehicle owner through a payment gateway.
This smart toll collection system has three components.
At the toll booth, a Mediatek LinkitONE hardware manages the toll collection process. LinkitONE is a feature-rich IoT evaluation board from Mediatek that has many built-in communication interfaces . It provides the essential interfaces for connecting to cloud using WiFi and GSM/GPRS. Furthermore, it also integrates Bluetooth EDR/BLE and GPS on the single hardware.
For vehicle tracking at the toll booth, Linkit ONE interfaces with a RFID reader to get the RFID tag information from each of vehicle passing through the toll gate. In addition to that, it is also desirable to have a retractable road barrier to thwart any misadventure on the part of the driver. A servo motor is used to drive the barrier.
The toll management application server is hosted on IBM Bluemix. It is executed on Cloud Foundry based container atop Python build pack. The server performs the following functions
For the vehicle owner’s convenience, a mobile app is also provided to recharge their virtual wallet for toll payment and keep a tab on the vehicle’s toll transactions.
Real-time message sync between the components of this system is a real requirement for speedy toll transaction. In order to do this quickly, we are using PubNub as the messaging service. PubNub offers a real-time data stream network for streaming data across devices connected to the Internet. it is one of the most reliable messaging services available and is well suited for IoT systems. PubNub is available as a service within the Bluemix catalog of services and has a free account to try the service.
Furthermore, we also need a database for storing vehicle data and billing transactions. For this application, we have used Dash DB which is one of the popular data warehousing services, also available under Bluemix catalog of services.
If you want to try your luck in building this system as a model toll booth, then scroll down to the end of this post to get the details of project source code and other instructions. Before you give it a shot, make sure that you sign up for a Bluemix account and PubNub account. Both these services come with free tier accounts that allow you to play with them and build some cool stuff.
The architectural block diagram of the entire system looks like this.
Note that in this case the LinkitONE is configured to communicates with the server using WiFi. Alternately, we can also program it to use GPRS thus giving us extra options in case WiFi hotspot is not available.
The schematic diagram below shows the Linkit ONE powered hardware setup with servo motor and RFID reader
Here is the model toll booth setup with the RFID reader hardware
Any vehicle approaching the booth will present its RFID card for scanning. The RFID tag will be picked up by the reader and sent to server for authentication.
If all goes well, which means that the vehicle is authenticated and is authorized to pass through the toll booth, the server initiates a payment transaction and the user’s mobile will have a notification.
Finally, the server instructs the hardware to retract the servo motor to allow the vehicle to pass through. Here is how this entire process unfolds.
Assuming that the authorities deploy such an identification system universally for automatic vehicle tracking, it also becomes possible to track a stolen vehicle. RFID readers installed at toll booths, checkpoints or at some strategic places can help locate a stolen vehicle.
The user app has a feature by which the vehicle owner can mark his vehicle as stolen, by tapping on the red colored BLOCK button.
So the next time one of the RFID readers detect his vehicle, the server will not authorize the toll transaction. As a result, it will send an alert to the app.
The complete software source code and configuration details for this project are open sourced and available under GitHub.
Refer to this repository for details of configuration, build, and deployment of the system as per the model setup.
I encourage you to try your hands on this. If you are a real IoT DIY enthusiast then you should definitely give this a try. We would also like to know if you can suggest an enhancement in this system in any other possible way to make it more functional.
Shyam is the Creator-in-Chief at RadioStudio. He is a technology buff and is passionate about bringing forth emerging technologies to showcase their true potential to the world. Shyam guides the team at RadioStudio, a bunch of technoholiks, to imagine, conceptualize and build ideas around emerging trends in information and communication technologies.
Model IoT Application For Tracking Kitchen Inventory
Microservice in action : Build a weather enabled chat
Build a real-time recommendation engine with IBM Bluemix and PubNub – Part 2
Build a real-time recommendation engine with IBM Bluemix and PubNub – Part 1
Smart Traffic Management System for Emergency Services