The Self Parking Car System Information Technology Essay
The project presents an overview of the self parking car system for the model car. The aim of this project is to design a self parking system, so the model car can park into a parking space without needing to control it. In order to achieve this goal, the model car must know where, when and how much to turn, as well as travelling at a comfortable pace.
Sensors play an extremely important role in this self parking system. They are used to provide information about the surrounding environment. Infrared sensors are used to prevent the model car from hitting any object or obstacles during the process of parking. Whenever an obstacle is detected the sensor sends a signal to the model car so that it will stop moving. The movements and steering of the car will be controlled by two types of motor. The DC motor will be fixed at the rear part of the car to move the model car front and back, driven by an H-bridge circuit whereas the servo motor is used to control the steering of the model car. Therefore, the model car is able to guide itself to park by controlling both steering and speed simultaneously. A good controller cannot be achieved without an appropriate microcontroller and therefore PIC microcontroller is chosen because of its ease of use and its low cost. C Language is chosen as the programming language because it is easy to understand and to implement it. Communication between the user and the car will be integrated via an RF module whereby the user will have the transmitter and the receiver will be inputted to the PIC.
CHAPTER 1: INTRODUCTION
Nowadays, many features are available in a car. Most of these features make driving easier, safer and more comfortable. For example, the reverse sensor is installed in a car so that when the car is near an object, it will beep. This helps the driver so that they know they’re close to an object and will stop reversing. This feature is a great help to people in the process of parking. However, to some people, parking is already a problem to them. In order to park into a parking box, one must be able to anticipate the distance between the car from other objects and at the same time to determine how much to move the car. Due to lack of experience, some people take many tries to park, resulting in a waste of time. Some might have miscalculated which caused them to damage their car by either hitting the curb, hitting other cars, obstacles or even worse; passer-bys. This will then lead them to loss of money because the driver has to fork out the money to repair the car and some even have to pay for the loss of the vehicle that they have hit or medical fees.
In order to solve this problem, a self parking car is made so that drivers would not have to worry about damaging the car while parking and at the same time, saves their time. It will scan for available parking space. If the space if enough for the car to park then it will park by itself without having the driver to manoeuvre the car at all. The car will also sense nearby objects and stop when necessary. This is more convenient and at the same times saves cost for drivers as well.
Today, auto self parking cars are no longer thing of the future. Such systems have already been implemented in automobiles to help people to park their cars and provide a better driving experience. However, they are not fully automated as the driver still has to control the acceleration of the car and to brake whenever necessary. The steering of the vehicle will be controlled by an electronic device.
In this project, a fully automated self parking system will be produced whereby we just have to select the direction of parking; parallel parking of perpendicular parking then select the direction of parking; left or right and then the model car will do the parking by its self. Infrared sensors are placed in the front, rear and side of the model car to prevent the car from hitting any object. Servo motors are used to control the model car’s steering and DC motors will be used to move the model car forward and backwards, with the help of an H-bridge driver to manage the moving speed of the model car. An RF module is used as a wireless device to control the car from a distance. The transmitter of the module will be held by the user and the receiver will be connected to the microprocessor as inputs. Finally, a single microprocessor, the PIC16F877A is the core of the self parking controller. It is used to receive information from the sensor and remote controller inputs and generate appropriate outputs to control both speed and steering for the model car.
Driving a car has never been so much easier compared to the olden days. With technologies such as automatic transmission, power steering and reverse sensors available in almost every car in the market, drivers can now drive with no sweat. However, one of the most challenging parts of driving a car is to park a car.
Even after going through driving tests whereby parking tests are included, some people still fail to park properly. There are also other factors that contribute to parking problems such as lack of experience and poor sighted or old citizens. In addition, nobody is perfect. Humans tend to make mistake therefore accidents do happen when parking. The worst part is, these accidents not only are a waste of money and time, it is also dangerous to the driver as well as the passer-bys.
Some drivers will also face parking problems while driving bigger cars when they are used to driving a smaller cars. Although reverse sensors are installed in most modern cars today, it can only aid the driver up to a certain extent. It is still up to the driver to manoeuvre the car on their own.
In order to solve this matter, a small scale self parking module will be produced via a remote controlled model car. Success in this project will definitely assist and help the inexperienced drivers to safely pull off a side parking or a parallel parking without risk of sustaining damages to the car or the driver itself. Even though the self parking car system has already been implemented in cars, such technology comes with a high price. Hence, with this project, hopefully it will open up more possibilities to a more affordable system which will benefit the people.
Aims and Objectives
The aim of this project is to come up with a self parking system that is able to detect parking space that is suitable for the car to park and then perform the parking process autonomously without any control from the user. Infrared sensors will be placed around the model car to act as the eyes for the model car. An H-bridge circuit will serve its purpose to drive the DC motor forward and backwards and the servo motor will be used to steer the direction of the model car. An RF module will be used as a remote controller for the car. All of these components will be controlled by a microcontroller, PIC16F877A by receiving signals from the infrared sensors and remote controller and then sending signals out to the H-bridge and servo motor.
In order to accomplish the aims above, the objectives of the project is listed in Table 1 below:
The car model should be able to simulate a real car while it is parking (sideways and parallel)
To understand the operation of an ultrasonic sensor and the theory on transmitting and receiving ultrasonic signals
To understand the theory and development of an oscillator circuit
To understand the theory of an Operational Amplifier and implementing it as a functional circuit
To gain understanding of different variation of modulation techniques such as Pulse Width Modulation and Radio Frequency Modulation
To know the data structure of C language to be used for programming into the PIC16F877A
Table : Technical Objectives for Self Parking Car System
The project is done by adding sensors to the model car and connecting the motors, sensors and RF module to the PIC. With the switches connected to the RF module and then connected to the PIC, the car should be able to move forwards, backwards, left and right. There will also be a switch to select parking mode for the car.
The thesis layout will be organized in such a way to give readers a full understanding of each chapter and its significance.
CHAPTER 2: LITERATURE REVIEW
This chapter will focus on the research works done on self parking systems by some renowned car manufacturers. In addition, brief reviews on the components and software chosen are done as well.
2.2 Self parking systems from car manufacturers
As of today, car manufacturers have come up with a lot of new technologies to help improve the driving experience of drivers. Among the many inventions, self parking system is one of them. Most of them are using the same approach to solve the parking problem. Below are the details from a few selected car manufacturers.
2.2.1 Mercedes-Benz Active Parking Assist
By just only pressing a button, control the accelerator and brakes, Mercedes-Benz’s Active Parking Assist searches for a suitable parking space and parks automatically into the parking lot .
At a speed of less than 36 kilometres per hour (kmph), the Active Parking Assist starts to search for parking spaces automatically. A display of a “P” and an arrow in the instrument panel display shows the driver that the car has found a suitable gap for parking. The driver must then engage the reverse gear and then move the car slowly; not more than 10kmph. The Active Parking Assist will manoeuvre the steering on its own to complete the parking process.
Ultrasonic sensors are places at the front and rear of the vehicle for distance measuring purposes, so the driver has to only look out on the accelerator and brake throughout the whole process. Within a few moves, the car will then be parked parallel to the direction of travel.
The Active Parking Assist consists of a total of ten ultrasonic sensors, with six in the front and four more placed at the rear bumper. The sensor’s signal is then processed by an electronic control unit and then it calculates the best entry lane into the parking slot. After calculation, the electric motor powers the power steering and makes necessary steering of the wheels. The Active Parking Assist is quite efficient; its distance between the next vehicles is only 1.2 meters from the car.
2.2.2 BMW Parking Assistant
Similar to Mercedes’ Active Parking Assist, the BMW’s Parking Assistant scans for available parking space at a speed of 35kmph and a maximum distance of 1.5m from the line of parked vehicles . With ultrasonic sensors installed around the car, the information is displayed on the BMW’s Control Display for eligible parking space. Once the parking space is selected, the driver puts the reverse gear and look after the throttle and brakes and the car will handle the steering on its own; the Parking Assistant will control the steering and will give audio and visual indicators to the driver so that the drivers know when to step on the accelerator and when to step on the brakes.
2.2.3 Volkswagen Park Assist
Volkswagen’s Park Assist, like BMW and Mercedes, has ultrasonic sensors installed to determine whether the parking space is suitable for the car to fit in . The system compares the area available with the length of the vehicle. Then it automatically guides the vehicle into the parking space from an optimum position. The driver only has to step on the throttle and brakes.
On certain models, the Park Assist has been improved in such a way that the car is capable of parking even in tight spaces. The driver only needs to accelerate, brake and observe the surrounding area while the car steers by its self. The Parking Assist can also be deactivated by the driver by braking to a halt or taking over the steering.
In the new Golf Plus, the Park Assist is further improved with the addition of Park Pilot, setting a higher standard in terms of technology. This new technology is capable of using multiple moves to park into smaller parking lots. There will also be a multifunction display to indicate the driver how much the driver can move the car.
2.3 Microcontroller Overview
2.3.1 Introduction to PIC
In the early ’90s, the Peripheral Interface Controller (PIC) was developed by Arizona microchip to meet demands for a cheap, small and practical microcontroller which was easy to program and use . Microchip Technology incorporated was initiated by a group of venture capitalists who saw potential in the semiconductor division of General Instruments, which produced various electronic components.
PICs are actually simple microcontrollers built on a reduced instruction set code (RISC) architecture. It is capable of running efficiently at one instruction per clock cycle at a high oscillator frequency of 20MHz. For an 8-bit micro, the PIC is considered relatively fast however, their main feature was the 20mA source and sink current capability on each input or output (I/O) pin when at that time, typical micros were advertising high I/O currents of 1mA source and 1.6mA sink.
As Microchip’s parts were selling really well, they managed to develop new components with new features including interrupts, on-board A/D, on-board comparators and more. Soon enough, flash memory parts as well as low cost OTP (One Time Programmable) parts were available in Microchip, which had set Microchip apart from their competitors. Other 8-bit micro companies offered OTP’s too but they come at a high price compared to the masked ROM (Read Only Memory) version.
The PIC16F877A has a powerful (200 nanosecond instruction execution) yet easy-to-program (35 single word instructions only) CMOS FLASH-based 8-bit microcontroller packs Microchip’s powerful PICÂ® architecture into a 40 or 44 pin package and is compatible with the PIC16C5X, PIC12CXXX and PIC16C7X devices . It features 256 bytes of EEPROM data memory, self programming, and ICD, two comparators, 8 channels of 10-bit Analog-to-Digital (A/D) converter, two capture/compare/PWM (CCP) functions, the synchronous serial port can be configured as either 3-wire Serial Peripheral Interface (SPIÃ¢â€žÂ¢) or the 2-wire Inter-Integrated Circuit (I2CÃ¢â€žÂ¢) bus and a Universal Asynchronous Receiver Transmitter (USART). Advanced level A/D applications in automotive, industrial, appliances and consumer applications can now be easily achieved with all these features.
A microcontrollers’ most important aspect is its input and output capabilities. The PIC16F877A has 33 I/O pins; RA0-RA5, RB0-RB7, RC0-RC7, RD0-RD7 and RE0-RE2. The first need of the microcontroller is power. The operating voltage of a PIC16F877A is between 2.0 Vdd and 5.5 Vdd. Pins 11 and 32 will be connected to Vdd and pins 12 and 31 will be connected to ground.
There will be a total of six unidirectional signals connected to the microcontroller, as well as the real time clock (RTC). The output from the RTC oscillator will be connected to pin 13 (OSC1/CLKIN) of the PIC16F877A. In order for the RTC oscillator to know the current time, the connection should be constant and bidirectional. The clock signal will then be sent to the RTC from pin 14, the OSC2/CLCKOUT port. There is no need for direct connection to the antenna. There are many other functions of the PIC but could not be explained in detail. The diagram below shows the pin assignment for a 40-pin PIC16F877A.
Figure : Pin Diagram of a 40-pin PIC16F877A
For this project, MPLAB has been selected as the software to program the PIC16F877A. As for the programming language, there are a few languages available e.g. assembly language, C language, C++, Basic C etc. Out of the many languages, C language is chosen because it is popular and widely used, not to mention easy to understand as well. In comparison with assembler programs however, it is slower in execution. As the assembler belongs to low level languages that are programmed slowly, it takes up the least amount of space in memory and gives the best results where execution speed is concerned. Successful compilation of a program will generate a .HEX file, which will then be downloaded to the PIC program memory or for simulation of other program.
Sensors are used in everyday objects such as touch-sensitive elevator buttons (tactile sensor) and lamps which dim or brighten by touching the base. There are also innumerable applications for sensors of which most people are never aware. Applications include cars, machines, aerospace, medicine, manufacturing and robotics.
A sensor is a device which receives and responds to a signal or stimulus. Here, the term “stimulus” means a property or a quantity that needs to be converted into electrical form. Hence, sensor can be defined as a device which receives a signal and converts it into electrical form which can be further used for electronic devices. A sensor differs from a transducer in the way that a transducer converts one form of energy into other form whereas a sensor converts the received signal into electrical form only.
A sensor’s sensitivity indicates how much the sensor’s output changes when the measured quantity changes. For instance, if the mercury in a thermometer moves 1 cm when the temperature changes by 1 Â°C, the sensitivity is 1 cm/Â°C. Sensors that measure very small changes must have very high sensitivities. Sensors also have an impact on what they measure; for instance, a room temperature thermometer inserted into a hot cup of liquid cools the liquid while the liquid heats the thermometer. Sensors need to be designed to have a small effect on what is measured; making the sensor smaller often improves this and may introduce other advantages. Technological progress allows more and more sensors to be manufactured on a microscopic scale as microsensors using MEMS technology. In most cases, a microsensor reaches a significantly higher speed and sensitivity compared with macroscopic approaches.
2.4.1 Infrared sensor
Infrared is a form of light energy just that it has longer wavelengths compared to ordinary light. Infrared rays are invisible to naked eye but can be seen through a camera. Ordinary light is emitted by objects at higher temperature while infrared rays are emitted by objects at lower temperature.
Figure : Infrared waves
Infrared sensors are used in this project because it is easy to interface as it can be made to produce digital outputs. This is compatible with the PIC16F877A which processes digital data. It is built using a pair of an infrared transmitter and receiver, some resistors and an op-amp. It works in such a way that whenever it detects an object, it will send a signal to the PIC which will be programmed to stop whenever it receives a signal from the sensors.
2.4.2 Ultrasonic Sensor
2.5 Wireless Devices
2.5.1 RF Module (433MHz)
2.6 Model Car
There are various model cars in the market to choose. They also come in various sizes and configuration depending on the users’ preference. The sizes of the cars made are a ratio to the original car size. Some are as small as 1:80 and it goes as big as 1:3. There are model cars that can be controlled and some are just for display purposes only. That is why a suitable model car needs to be selected.
2.6.1 1:10 Radio Controlled model car
The model car selected for this project is a 1:10 scale radio controlled car with brushless DC motor. The reason this car is selected is because the design of the car is designed almost similar to a real car. The steering of the car consists of a servo motor, which allows precise steering. And the movement of the car is powered by a brushless DC motor, which is allows the car to go very fast.
2.7 Servo Motor
A servo motor is constructed by four basic components: a motor, some gears, a feedback device and a control circuit. The control circuit is the one that controls the steering. A typical servo motor has 3 wires: two of them are from the power supply, V+ and ground. The other wire is the control pin. The turning angle of the servo depends on the duty cycle of a Pulse Width Modulation (PWM).
Servo motors are used for angular positioning, such as in radio control airplanes to control the position of wing flaps, or in remote controlled cars to turn the wheels. The output shaft of a servo motor does not move as freely as the shafts of a DC motor, but it is specially made to get a particular angular position under electronic control.
Most servo motors can rotate about 90 to 180 degree but some can rotate through a full 360 degrees or even more. Some manufacturers have come out with the continuous rotational servo motors whereby they can rotate continuously and can be used for driving wheels. However, the continuous servo motor can also be made by modifying the normal servo motor.
Most servo motors operate within a range of 4.8-6V. To use a servo motor, we just have to connect to a +5V source to the red wire, black wire to ground and the yellow or white wire to a signal generator: a microcontroller.
2.9 DC Motor
2.9 Tact switch
In electronics, a switch is an electrical component that can break an electrical circuit, interrupting the current or diverting it from one conductor to another. The most familiar form of switch is a manually operated electromechanical device with one or more sets of electrical contacts. Each set of contacts can be in one of two states: either ‘closed’ meaning the contacts are touching and electricity can flow between them, or ‘open’, meaning the contacts are separated and non-conducting.
A switch may be directly manipulated by a human as a control signal to a system, such as a computer keyboard button, or to control power flow in a circuit, such as a light switch. Automatically-operated switches can be used to control the motions of machines, for example, to indicate that a garage door has reached its full open position or that a machine tool is in a position to accept another workpiece. Switches may be operated by process variables such as pressure, temperature, flow, current, voltage, and force, acting as sensors in a process and used to automatically control a system. For example, a thermostat is an automatically-operated switch used to control a heating process. A switch that is operated by another electrical circuit is called a relay. Large switches may be remotely operated by a motor drive mechanism. Some switches are used to isolate electric power from a system, providing a visible point of isolation that can be pad-locked if necessary to prevent accidental operation of a machine during maintenance, or to prevent electric shock.
2.10 Printed Circuit Board (PCB)
Printed Circuit Board (PCB) is one of the electronics packaging methods. It provides both the physical structure for mounting and holding electronic components as well as the electrical interconnection between components. It can be classified into Single-sided PCB, Double-sided PCB, Multi-layer PCB and Flexible PCB.
There are two types of PCB technology, the through-hole and the surface mount technology (SMT). For Through-hole technology, the component leads are inserted into drilled holes and soldered to pads on the opposite site of the board. In SMT, the electronic components are soldered to the pads on the surface of the PCB. In SMT, surface mount components are used and their packing is particularly suitable for automatic assembly. Generally surface-mount packages are much smaller than equivalent through-hole packages, so they require smaller, more closely spaced pads, thinner traces and more precise soldering.
There are many advantages of PCB compared to other interconnection wiring and mounted component techniques, some of which are as follows:
The size of assembled component is reduced with a corresponding decrease in weight
Quantity production can be achieved at lower unit cost.
Component wiring and assembly can be mechanized
Circuit characteristics can be maintained without introducing variation in inter-circuit capacitance
They ensure a high level of repeatability and offer uniformity of electrical characteristics from assembly to assembly
The location of parts is fixed, which simplifies identification and maintenance of electronic equipment and systems
Printer wiring personnel require minimal technical skills and training. Chances of mis-wiring or short-circuited wiring are minimized
CHAPTER 3: HARDWARE AND SOFTWARE DEVELOPMENT
The design of this self parking car consists of 2 main parts; the hardware and the software parts. The main component of the hardware is the PIC16F877A, also known as the brain of the car. The infrared sensor is also equally important for this project. Only during the parking process, the sensor will be the one communicating with the PIC whether the car should continue moving or not. Then the PIC will correspond to the signal by sending out signals to the servo motor and DC motor. When the car is not in parking mode, the car will be waiting for signal from the remote controller.
Figure : Project Design Flow
3.2 Hardware Design
Figure : Block Diagram
From the block diagram above, we can see that the PIC Microcontroller is taking inputs from 2 sources; the remote control unit and the infrared sensor.
Remote Control Unit: The remote control unit will be held by the user so that the car can be controlled from a distance.
Infrared Sensor: The infrared sensors will be placed around the car. When objects are detected, it will send input signals into the PIC.
Together with the program downloaded into the PIC, the PIC processes the inputs received and generates the output according to the program, to the H-bridge and the servo motor. The H-bridge will then be connected to the DC motor.
PIC16F877A running circuit
pic running circuit.jpg
Figure : Running circuit for PIC16F877A
Figure 7 above shows the Running Circuit for the PIC16F877A. The explanation for this circuit will be broken into a few parts for easier explanation.
Figure : Bridge Rectifier
h bridge schematic.jpg
Figure : H-bridge schematics
Figure 7 is an H-bridge circuit adopted from the internet and was modified to fit for its current purpose. The H-bridge design consists of 4 Bipolar Junction Transistors, also known as BJT. There are two types of BJT; the NPN type and PNP type. The transistor model used in this experiment is the TIP102 and TIP107 complementary silicon powered Darlington transistors. It comes with a built-in freewheeling diode that makes driving inductive loads such as motor simpler. Basically the function of the transistors in this circuit is a switching device to turn on the DC motor.
The transistors are by optocouplers. The function of the optocoupler is to isolate the current and voltage from leaking to the signal provider. The optocoupler is an IC type with a build in LED and phototransistor. The phototransistor has a base that will react when it receives a light signal to change the PN junction of the phototransistor to be forward biased and thus, allowing the phototransistor to turn on. Once the LED lights up, the photo transistor will turn on. The signal provided into the optocoupler is from the PIC, which is 5V.
The H-bridge and the phototransistor section of the optocoupler are connected to a 7.2V power supply. Each optocoupler is connected between two transistor pair each; Q1 and Q4, Q2 and Q3. An example from Figure 7; when the optocoupler OK1 is turned on, it allows the currents from R1 and R2 to flow across R3 and flows to R9 and R10 thus, turning transistors Q2 and Q3 on. As the DC motor is connected to the pinheads 1 and 3 located in JP3 in Figure 1, the source voltage will flow across the emitter and collector of Q3, then to the load which is the motor, followed by the emitter and collector of Q2 and then to ground. When the voltage flows in this direction, the motor will turn clockwise. The same thing applies when optocoupler OK2 is supplied with 5V from the PIC, it will turn on transistors Q1 and Q4, resulting in the motor spinning in a counter clockwise direction.
There are 4 types of resistors used in the chopper circuit. R2 and R7 in Figure1 are labelled as pull up resistors, to make sure the transistor is not ON when the optocoupler is not turned on. On the other hand, R4 and R9 are the pull down resistors for the NPN transistors of the chopper circuit. These pull down resistors forces the transistor to turn OFF when the optocouplers are not turned on. Resistors R1, R5, R6 and R10 are base resistors to limit the current from flowing across the base of the transistor, so that the voltage across the collector and emitter, VCE will achieve saturation.
The resistor values can be determined by using the voltage divider rule, with a few assumptions which includes the total current of the circuit must not exceed the power rating of the resistor, then setting a current of our own choice. With current and voltage constant, then only we can count the resistor values. Another assumption to be made is that base current, IB is equals to zero.
IR sensor circuit.jpg
Figure : Infrared Sensor circuit
The circuit shown above is the Infrared sensor circuit. It consists of four pairs of LED-type infrared transmitters and receivers, a variable resistor, an operational amplifier and some resistors. The detecting range of the sensor is determined by the resistor connected to the Infrared receiver. The tested maximum detection range of the infrared sensor circuit can be up to 30cm and the minimum detection range is around 2cm.
The wires between the Infrared receivers and the resistor are connected into the inverting inputs whereas the reference voltage is connected into the non-inverting inputs of the op-amp. The op-amp is configured as voltage comparator to compare the voltages between the receivers and the reference voltage. When no object is detected, the voltage across the Infrared receiver is bigger than the reference voltage. Because the inverting input voltage is larger, the comparator will have a low output (0V). When the infrared receiver receives a signal, the voltage across the receiver will drop because when the receiver receives infrared signal, it acts like a wire therefore having almost no voltage drop across it. As the voltage across the receiver is almost zero, the non-inverting input voltage is now higher than the inverting input. Consequently, the comparator op-amp will have a high output (5V).Order Now