Inspiration
The inspiration for this IoT Highway Toll Station model comes from real-life highway toll stations. With the development of IoT technology, automated and intelligent systems are increasingly being applied to various scenarios to improve efficiency and convenience. In this model, by using a weight sensor, servo, and OLED screen, it can automatically detect the vehicle's weight and display the corresponding toll in real-time, which enhances the working efficiency of the highway toll station. Additionally, users can view the charging situation of the model vehicles on the web, increasing the transparency of information. The overall inspiration behind the design is to apply IoT to real-world problems and enhance user experience.
The IoT highway toll station model is an innovative solution that demonstrates the potential of IoT technology in the transportation sector.
What it does
This is an IoT-based highway toll station model that utilizes a weight sensor, servo, and OLED screen for efficient toll collection. When a vehicle enters the designated area at the toll station, the system calculates the corresponding fee based on the vehicle's weight and displays it on the OLED screen. Upon completion of the payment, the staff can raise the barrier by pressing buttons online, allowing the vehicle to pass. Furthermore, people can conveniently access the toll information for vehicles on the highway model via the web. The online system also provides real-time access to each vehicle type and charging fee amount, as well as the total amount of highway tolls over a period of time.
How we built it
Hardware
We utilized Altium Designer to design the four-layer PCBA. The MCU and sensor components were designed in accordance with the respective datasheets, while the power component was developed using TI Power Designer.
- Load Cell - Generic
- Servo - Generic (Sub-Micro Size)
- OLED Display SSD1306 - Passive Matrix I²C, SPI 1.3" (33.02mm) 128 x 64
- PCBA(70mm x 70mm)
For the power of our PCBA, we used BQ24075 as the LiPo charger and utilized TPS62082DSGR and TPS61087DRCR to design our buck (3.3V) and boost (6V) circuit.
For the MCU, we used ATSAMW25H18-MR210PB.
Also, we integrated the chip and surrounding circuitry of Adafruit NAU7802 24-Bit ADC into our PCBA.
Firmware
The comprehensive code editing and development for this project were carried out using Microchip Studio, a versatile integrated development environment (IDE). Leveraging the robust foundation provided by the freeRTOS real-time operating system, we successfully implemented the functionalities such as I2C, MQTT and Bootloader, ensuring smooth and efficient operation.
Cloud
We have successfully deployed Node-RED on Microsoft Azure, taking advantage of its scalable and reliable cloud infrastructure. We processed and classified the raw data by Node-red and finally performed the accumulation. We also get a nice UI Interface through node-red's dashboard feature, which allows us to view our interface whenever and wherever we have a network.
Challenges we ran into
- Methods for optimizing the speed of Wi-Fi and MQTT message publication and subscription.
- Techniques for achieving effective printed circuit board assembly (PCBA) layout and wiring in a constrained physical space.
- Strategies for resource allocation planning on the MCU, including stack overflow prevention, task scheduling, and optimization.
- Procedures for weight sensor calibration.
Accomplishments that we're proud of
- All module functions on the PCBA can be effectively implemented.
- Real-time monitoring and control are facilitated.
- Our functions closely align with real-world requirements and demands.
What we learned
- Utilize FreeRTOS for task scheduling and execution.
- Employ diverse peripheral communication protocols such as I2C, UART, and SPI.
- Finalize the bill of materials (BOM) and draw the PCBA.
- Construct the IoT cloud using Node-RED.
- Establish communication with the cloud via Wi-Fi and the MQTT protocol.
What's next for ESE5160 IoT Highway Toll Station Charging System
We need to incorporate additional and more advanced features. For instance, currently, only human beings can identify the license plate number and manually allow the vehicle to pass. Our next move is to introduce an automatic license plate recognition system that can be deployed either on the edge or in the cloud. This will save labor and increase the system's intelligence.
Built With
- altium
- c
- freertos
- microchip
- onshape
Log in or sign up for Devpost to join the conversation.