Difference between revisions of "S15: Smart Sparta Parking System"
Proj user18 (talk | contribs) (→Design & Implementation) |
Proj user18 (talk | contribs) (→Hardware Interface) |
||
Line 248: | Line 248: | ||
=== Hardware Interface === | === Hardware Interface === | ||
− | + | For two modules to communicate, there is a need of a protocol between them. This protocol is different for different types of interfaces. The communication between the different modules in our project is made possible due to the following hardware interfaces. | |
+ | |||
+ | ===== GPIO Interface ===== | ||
+ | The GPIO pins on the SJ-ONE Board are used for switches, LED’s LDR’s and IR sensors. The GPIO pins are used as inputs for the IR receiver, LDR’s and switches. Whenever the signal at the output of these three devices is low, it indicates a logic ‘0’, and whenever the signal at the output of these devices is high, it indicates a logic ‘1’. The GPIO pins are used as outputs for LED’s and IR transmitter. Whenever the output signal is a logic ‘1’, 3.3V signal is given to the device and whenever the output signal is logic ‘0’, 0V signal is given to the device. | ||
+ | |||
+ | ===== PWM Interface ===== | ||
+ | The SJ-ONE Board on the lower level (Master controller) communicates with servo motor through PWM interface. In order to rotate the boom-gate at 90 degrees, PWM signal is sent to the servo motor. | ||
+ | |||
+ | ===== Mesh Interface ===== | ||
+ | The master controller (SJ_ONE Board) on the lower level communicates with the slave controller (SJ_ONE Board) on the upper level using a low mesh interface. The lower level receives the status of the parking spots acquired by the LDR’s at upper level using a mesh packet. | ||
=== Software Design === | === Software Design === |
Revision as of 04:36, 23 May 2015
Contents
Abstract
A smart parking system which aid people to find a parking slot at a parking garage with ease. The system will display the available parking slots in real time and will direct the driver to a specified location hence reducing the touble to find one. This employs a bluetooth communication with control center and consumer via an android application.
Objectives & Introduction
This project aims to simplify the parking process in large parking lots. Currently, when a car enters a parking lot, the information provided at the entrance is the total empty spots available. No information regarding where the spots are is provided. If the parking lot is a large one and the spots left are very few, the users face a difficult time finding an empty spot.
What we are doing here is that we tell the user a spot number, based on his car size, where he can park his car. We also have provided the user with an android based mobile application which has a map of the parking lot hence making it easier for the user to find the exact location.
Team Members & Responsibilities
- Bhargava Leepeng Chandra
- Android application, Model/Prototype Design
- Gautam Saily
- Motor, Nordic Wireless, Model/Prototype Design
- Niveda Das
- IR Sensors, Nordic Wireless
- Rishabh Holenarasipur Sreedhara
- Display, LDRs, Integration
- Sujith Durgad
- Bluetooth, Control Centre
Project Schedule
Week No. | Start Date | Planned End Date | Task | Status | Actual End Date |
---|---|---|---|---|---|
1 | 03/30/2015 | 04/06/2015 |
* Design the Project Layout * Order necessary Hardware * Task allocation * GIT version control system setup and integration |
|
04/06/2015 |
2 | 04/06/2015 | 04/13/2015 |
* Start Model Implementation to position hardware * Design Android Application UI Layout * LCD base code testing * Research Nordic wireless |
|
04/13/2015 |
3 | 04/13/2015 | 04/20/2015 |
* Bring up parking layout and motors on to Model * Basic bluetooth code testing * Basic Nordic wireless design |
|
04/21/2015 |
4 | 04/20/2015 | 04/27/2015 |
* Establish Communication between Nodes using Nordic wireless * Complete hardware model with Motors, IR sensnors and LDRs installed * Implement IR sensors, LDRs and Motor (individual operation) * Update Wiki page |
|
--/--/---- |
5 | 04/27/2015 | 05/04/2015 |
* LCD dispaly Layout for information display with refresh * Implement Nordic wireless on all three boards * Verify mutli node communication * Android App basic initialization and interface with bluetooth * Update Wiki page |
|
--/--/---- |
6 | 05/04/2015 | 05/11/2015 |
* Integration testing with modular approach * Fixing issues * Update Wiki page |
|
--/--/---- |
7 | 05/11/2015 | 05/18/2015 |
* Integration testing of complete system * Check if all systems are operational * Test working of system integration * Fixing issues * Update Wiki page |
|
--/--/---- |
8 | 05/18/2015 | 05/25/2015 |
* Final testing * Complete Wiki page project report * Final demo |
|
--/--/---- |
Parts List & Cost
Index | Part Description | Part Number | Vendor | Qty. | Price/unit | Total Price |
---|---|---|---|---|---|---|
1 | SJOne Board: ARM Cortex-M3 based LPC1758 Platform | -NA- | SCE SJSU | 3 | $80.00 | $240.00 |
2 | Bluetooth Bee | B005GI4HFA | Amazon.com | 1 | $23.00 | $23.00 |
3 | LDRs | GM5539 | Amazon.com | 20 | $0.224 | $4.88 |
4 | Servo Motor | LS-0003 | Fry's Electronics | 2 | $9.99 | $21.73 |
4 | IR Sensors | |||||
5 | MSC Components | |||||
6 |
Design & Implementation
This section consists of the hardware/software design and implementation of our parking system model.
Hardware Design
The project model is divided into two parking levels. Both levels have different controllers. The lower level has the master controller and the upper level has the slave controllers. The modules controlled by the master are LCD Display, LED’s, LDR’s, IR Sensors, Servo Motors, Bluetooth Transceiver and Nordic Wireless. The modules controlled by slave controller are LDR’s and Nordic Wireless.
The function of each module is explained in the hardware implementation part.
Master Controller
The master controller is the SJ-ONE board which is employed on the lower level of parking and it controls all the modules in the system. The functions of each module is explained below.
Light Dependent Resistor (LDR)
As the name suggests, LDR is a resistor whose resistance value depends on the light intensity. These LDR’s are used in our project at the following places: 1) To detect the empty spots. 2) To detect whether the car has crossed the boom-gate at the entrance and exit. These LDR’s are placed at every parking spot in such a manner that if a car is parked over it, there will no no light reaching the LDR and hence the resistance will increase. This increased resistance is detected at GPIO inputs and the values at the GPIO pins (logic 0 - Presence of a car, logic 1 - absence of a car) are sent to the master controller.
LCD Display
The LCD display is placed at the entrance of the parking lot. It displays one of the following: 1) A welcome message with car park rates. 2) The parking spot allocated to the car. 3) A message saying that the parking lot is full.
Infra Red (IR) Sensors
IR sensors are used to detect the presence of an object between the transmitter and the receiver. Output signal from the IR receiver depends whether the line of sight of the transmitter and receiver is intruded or not. In our project, IR sensor have been used to detect the presence of a car at the entrance and to measure the length of the car which further decides whether a compact or a big spot has to be assigned to the car. There are two IR sensors placed at the entrance. One is at the place where the car stops and other at an offset from the entrance (in our case it is 2.5 inches). When a car stops at the entrance of the parking lot, the first IR sensor is blocked. Then we check the second IR sensor. If the sensor is blocked the car is big in size, i.e. more than 2.5” long, otherwise it is a compact car.
Servo Motor
Servo motor is a geared motor that helps in the precise angular control. In our project, we are using the servo motor to control opening and closing of the boom-barrier (or boom-gate) at the entrance and exit. When a car is detected at the entrance by the IR sensor (assuming that the parking is not full) and the entrance button is pressed, the servo motor is actuated to turn 90 degrees so that the boom-gate is open. Once the car has crossed the LDR present at the other side of the boom-gate, the servo motor is brought back to 0 degrees and the boom-gate is closed.
Bluetooth
Nordic Wireless
Nordic wireless supports multi-node mesh network with simultaneous communication between different nodes. It is a medium range wireless communication system which supports a fair amount of distance between different nodes. It is a low power application that extends the lifetime of a battery operated system. In our project we have used the nordic wireless to relay the sensor updates and other relevant information to the master controller at the lower level of the parking lot. The slave controller forms packets of the data it received from the LDR’s and transfers the information to the master controller wirelessly. To achieve this, we have to give a particular address to each node (master and slave) which is the base to operate a mesh network. We set the address of each controller by flashing the address in a file on each SJ-ONE board.
Slave Controller
The slave controller is the SJ-ONE board which is employed on the upper level of parking and it monitors the parking spots at the upper level using LDR and transmits the data to the master controller. The functions of each module is explained below.
LDR's
The function of the LDR’s is described in the master controller.
Nordic Wireless
The function of Nordic Wireless has been described in the master controller.
Hardware Interface
For two modules to communicate, there is a need of a protocol between them. This protocol is different for different types of interfaces. The communication between the different modules in our project is made possible due to the following hardware interfaces.
GPIO Interface
The GPIO pins on the SJ-ONE Board are used for switches, LED’s LDR’s and IR sensors. The GPIO pins are used as inputs for the IR receiver, LDR’s and switches. Whenever the signal at the output of these three devices is low, it indicates a logic ‘0’, and whenever the signal at the output of these devices is high, it indicates a logic ‘1’. The GPIO pins are used as outputs for LED’s and IR transmitter. Whenever the output signal is a logic ‘1’, 3.3V signal is given to the device and whenever the output signal is logic ‘0’, 0V signal is given to the device.
PWM Interface
The SJ-ONE Board on the lower level (Master controller) communicates with servo motor through PWM interface. In order to rotate the boom-gate at 90 degrees, PWM signal is sent to the servo motor.
Mesh Interface
The master controller (SJ_ONE Board) on the lower level communicates with the slave controller (SJ_ONE Board) on the upper level using a low mesh interface. The lower level receives the status of the parking spots acquired by the LDR’s at upper level using a mesh packet.
Software Design
Show your software design. For example, if you are designing an MP3 Player, show the tasks that you are using, and what they are doing at a high level. Do not show the details of the code. For example, do not show exact code, but you may show psuedocode and fragments of code. Keep in mind that you are showing DESIGN of your software, not the inner workings of it.
Implementation
This section includes implementation, but again, not the details, just the high level. For example, you can list the steps it takes to communicate over a sensor, or the steps needed to write a page of memory onto SPI Flash. You can include sub-sections for each of your component implementation.
Testing & Technical Challenges
Describe the challenges of your project. What advise would you give yourself or someone else if your project can be started from scratch again? Make a smooth transition to testing section and described what it took to test your project.
Include sub-sections that list out a problem and solution, such as:
My Issue #1
Discuss the issue and resolution.
Conclusion
Conclude your project here. You can recap your testing and problems. You should address the "so what" part here to indicate what you ultimately learnt from this project. How has this project increased your knowledge?
Project Video
Upload a video of your project and post the link here.
Project Source Code
References
Acknowledgement
Any acknowledgement that you may wish to provide can be included here.
References Used
List any references used in project.
Appendix
You can list the references you used.