CONTENTS
PAGE NO.
1. ABSTRACT
2
2. INTRODUCTION
3
3. BACKGROUND
4
4. LITERATURE SURVEY
5
5. DESCRIPTION
6
5.1. BLOCK DIAGRAM
6
5.2. EXPLANATION
6
6. HARDWARE REQUIREMENTS
7
6.1. MICROCONTROLLER (AT89c2051)
8
6.2. Ultrasonic Modules HC-SR04
11
6.3. 74ls153(4:1) Multiplexer
13
6.4. RF TX Rx 434 Mhz
17
6.5. Flame and Fire Detection Sensor Module
21
6.6. Water sensor module
22
7. SCHEMATIC DIAGRAM
23
7.1 DESCRIPTION
23
7.2 OPERATION EXPLANATION
25
8. SOFTWARE IMPLEMENTATION
27
8.1 SOURCE CODE
27
9. HARDWARE TESTING
35
9.1 CONTINUITY TEST
35
9.2 POWER ON TEST
36
10. RESULTS AND DISCUSSIONS
37
11. CONCLUSION AND FUTURE SCOPE
38
10. BIBLIOGRAPHY
39
1
ABSTRACT God gifted sense of vision to the human being is an important aspect of our life. But there are some unfortunate people who lack the ability of visualizing things. The visually impaired have to face many challenges in their daily life. The problem gets worse when there is an obstacle in front of them. Blind stick is an innovative stick designed for visually disabled people for improved navigation. The paper presents a theoretical system concept to provide a smart ultrasonic aid for blind people. The system is intended to provide overall measures – Artificial vision and object detection. The aim of the overall system is to provide a low cost and efficient navigation aid for a visually impaired person who gets a sense of artificial vision by providing information about the environmental scenario of static and dynamic objects around them. Ultrasonic sensors are used to calculate distance of the obstacles around the blind person to guide the user towards the available path. Output is in the form of sequence of beep sound which the blind person can hear.
2
INTRODUCTION There are approximately 37 million people across the globe who are blind, over 15 million are from India. Even for the non-visually impaired the congestion of obstacles is sometimes problematic, it’s even worse for the visually impaired. People with visual disabilities are often dependent on external assistance which can be provided by humans, trained dogs, or special electronic devices as support systems for decision making. Existing devices are able to detect and recognize objects that emerge on the floor, but a considerable risk is also includes the objects that are at a sudden depth, or obstacles above waist level or stairs. Thus we were motivated to develop a smart white cane to overcome these limitations. The most common tool that the blind currently use to navigate is the standard white cane. We decided to modify and enhance the walking cane, since blind are only able to detect objects by touch or by cane. The user sweeps the cane back and forth in front of them. When the cane hits an object or falls off of the edge of a stair, the user then becomes aware of the obstacle –sometimes too late. We accomplished this goal by adding ultrasonic sensors at specific positions to the cane that provided information about the environment to the user through audio feedback. The main component of this system is the Radio-Frequency module which is used to find the stick if it is misplaced around.
3
BACKGROUND Vision is the most important part of human physiology as 83% of information human being gets from the environment is via sight. The 2011 statistics by the World Health Organization (WHO) estimates that there are 285 million people in world with visual impairment, 39 billion of which are blind and 246 with low vision [2]. The traditional and oldest mobility aids for persons with visual impairments are the walking cane (also called white cane or stick) and guide dogs. The most important drawbacks of these aids are necessary skills and training phase, range of motion and very little information conveyed. With the rapid advances of modern technology, both in hardware and software front have brought potential to provide intelligent navigation capabilities. Recently there has been a lot of Electronic Travel Aids (ETA) designed and devised to help the blind navigate independently and safely. Also high-end technological solutions have been introduced recently to help blind persons to navigate independently. Many blind guidance systems use ultrasound because of its immunity to the environmental noise. Another reason why ultrasonic is popular is that the technology is relatively inexpensive, and also ultrasound emitters and detectors are small enough to be carried without the need for complex circuit. Blind people have used canes as mobility tools for centuries, but it was not until after World War I that the white cane was introduced.
4
LITERATURE SURVEY Numerous attempts have been made in the society to help the blind. “Project Prakash” is a humanitarian mission to help the blind children especially by training them to utilize their brains to learn a set of objects around them [3]. The stick has a ping sonar sensor to sense the distant objects. It also has a wet detector to detect the water. The micro-controller used is PIC microcontroller. The microcontroller circuit is on the outside of the stick but is protected with a code so its security cannot be breached. The only feedback given to the user is through the vibration motor [4]. Three sensors are used viz. ultrasonic, pit sensor and the water sensor. Even this is a PIC based system. The feedback given is through the vibration as well as the speaker/headphones. There is a GPS system where-in the user has to feed his location. No information on how a blind man would do that. Also they haven’t mentioned anything about the size and shape of their cane and neither.
5
DESCRIPTION
Explanation: In this system the ultrasonic sensor are used to sense the obstacle (if there is any). We have used three ultrasonic sensors at different height to detect the height of the object. The signal is then send to microcontroller to operate a buzzer. There is one more advantage of this system. Sometimes when the blind loose there sticks or forgot where have they put it, they can find it by using the wireless remote. Additional features are also added in the blind stick for safety purposes like, fire detector and water detector. The output of the blind stick will be in the form of sound produced by a buzzer. Buzzer will sound differently for different conditions. 6
HARDWARE REQUIREMENTS MAJOR HARDWARE COMPONENTS USED
1. MICROCONTROLLER (AT89c2051) 2. Ultrasonic Modules HC-SR04 3. 74ls153(4:1) Multiplexer 4. RF TX Rx 434 Mhz 5. Flame and Fire Detection Sensor Module 6. Water sensor module
7
AT89C2051 At89c2051 is 8051 family microcontroller having only 20 pins. The purpose of using this is that it have only 20 pins and it is very compact and use less space. As the circuit space requirements of intelligent blind stick is very less.
Features • Compatible with MCS®-51Products • 2K Bytes of Reprogrammable Flash Memory – Endurance: 10,000 Write/Erase Cycles • 2.7V to 6V Operating Range • Fully Static Operation: 0 Hz to 24 MHz • Two-level Program Memory Lock • 128 x 8-bit Internal RAM • 15 Programmable I/O Lines • Two 16-bit Timer/Counters
8
Description: The AT89C2051 is a low-voltage, high-performance CMOS 8-bit microcomputer with 2K bytes of Flash programmable and erasable read-only memory (PEROM). The device is manufactured using Atmel’s high-density nonvolatile memory technology and is compatible with the industry-standard MCS-51 instruction set. By combining a versatile 8-bit CPU with Flash on a monolithic chip, the Atmel AT89C2051 is a powerful microcomputer which provides a highly-flexible and cost-effective solution to many embedded control applications. The AT89C2051 provides the following standard features: 2K bytes of Flash, 128 bytes of RAM, 15 I/O lines, two 16-bit timer/counters, a five vector two-level interrupt architecture, a full duplex serial port, a precision analog comparator, on-chip oscillator and clock circuitry. In addition, the AT89C2051 is designed with static logic for operation down to zero frequency and supports two software selectable power saving modes. The Idle Mode stops the CPU while allowing the RAM, timer/counters, serial port and interrupt system to continue functioning. The power-down mode saves the RAM contents but freezes the oscillator disabling all other chip functions until the next hardware reset.
PIN diagram And basic circuitry:
9
Above Is the basic circuitry for the 89c51 microcontroller. A crystal of 11.0592MHZ frequency is connected at X1 and X2 to provide clock pulses. AN RC circuit is connected at RST pin to reset the microcontroller whenever the power is turned on. It is also called power on reset. Other connections depends on the pin requirements of the application to be designed.
10
ULTRASONIC SENSOR
Ultrasonic sensors (also known as transceivers when they both send and receive) work on a principle similar to radar or sonar which evaluate attributes of a target by interpreting the echoes from radio or sound waves respectively. Ultrasonic sensors generate high frequency sound waves and evaluate the echo which is received back by the sensor. Sensors calculate the time interval between sending the signal and receiving the echo to determine the distance to an object. This technology can be used for measuring: wind speed and direction (anemometer), fullness of a tank and speed through air or water. For measuring speed or direction a device uses multiple detectors and calculates the speed from the relative distances to particulates in the air or water. To measure the amount of liquid in a tank, the sensor measures the distance to the surface of the fluid. Further applications include: humidifiers, sonar, medical ultra sonography, burglar alarms and non-destructive testing. Systems typically use a transducer which generates sound waves in the ultrasonic range, above 18,000 hertz, by turning electrical energy into sound, then upon receiving the echo turn the sound waves into electrical energy which can be measured and displayed. The technology is limited by the shapes of surfaces and the density or consistency of the material. For example foam on the surface of a fluid in a tank could distort a reading.
11
INTERFACING
Working: 1. The MCU sends 10us pulse to the ultrasonic sensor module. 2. After receiving the pulse the ultrasonic transmitter sends 40 kHz ultrasound pulse train. 3. When the pulse strikes an object. It Came back to the Ultrasonic receiver and ultrasonic coverts it to a digital pulse and interrupt the controller. 4. The MCU calculate the time taken by the Pulse to strike back. And calculate the overall distance in cms.
In our Blind stick project we use three Ultrasonic receivers. Therefor we have to use a 3:1 multiplexer to multiplex the echo pins of the ultrasonic sensors with the MCU INT pin. 3:1 mux is not commercially available so we used 4:1 Mux IC(74LS153).
12
74LS153 DUAL 4-INPUT MULTIPLEXER The LSTTL/MSI SN54/74LS153 is a very high speed Dual 4-Input Multiplexer with common select inputs and individual enable inputs for each section. It can select two bits of data from four sources. The two buffered outputs present data in the true (non-inverted) form. In addition to multiplexer operation, the LS153 can generate any two functions of three variables. The LS153 is fabricated with the Schottky barrier diode process for high speed and is completely compatible with all Motorola TTL families. • Multifunction Capability • Non-Inverting Outputs • Separate Enable for Each Multiplexer • Input Clamp Diodes Limit High Speed Termination Effects
13
14
FUNCTIONAL DESCRIPTION The LS153 is a Dual 4-input Multiplexer fabricated with Low Power, Schottky barrier diode process for high speed. It can select two bits of data from up to four sources under the control of the common Select Inputs (S0, S1). The two 4-input multiplexer circuits have individual active LOW Enables (Ea, Eb) which can be used to strobe the outputs independently. When the Enables (Ea, Eb) are HIGH, the corresponding outputs (Za, Zb) are forced LOW. The LS153 is the logic implementation of a 2-pole, 4-position switch, where the position of the switch is determined by the logic levels supplied to the two Select Inputs. The logic equations for the outputs are shown below. Za = Ea V (I0a V S1 V S0 + I1a V S1 V S0 + I2a V S1 V S0 +I3a V S1 V S0) Zb = Eb V (I0b V S1 V S0 + I1b V S1 V S0 + I2b V S1 V S0 +I3b V S1 V S0) The LS153 can be used to move data from a group of registers to a common output bus. The particular register from which the data came would be determined by the state of the Select Inputs. A less obvious application is a function generator. The LS153 can generate two functions of three variables. This is useful for implementing highly irregular random logic.
15
INTERFACE The mux is used to multiplex three ultrasonic sensors with the MCU.
WORKING: Here the Trigger pins of the sensors are directly connected to the MCU. But the ECHO pins are connected to 1X0, 1X1 and 1X2. A and B input of mux ic are also connected to the MCU. So that MCU can select different inputs. 1. MCU selects sensor 1 by A =0, B=0 2. MCU sends trigger pulse at TRIG 1 pin. 3. The echo pulse is read by MCU at 1Y pin of the mux. 4. Similarly for sensor 2, A=1, B=0. 5. And for sensor 3, A=0, B=1.
16
RF Tx-Rx 434 MHz RF Transmitter
This simple RF transmitter, consisting of a 434MHz license-exempt Transmitter module and an encoder IC , was designed to remotely switch simple appliances on and off. The RF part consists of a standard 434MHz transmitter module, which works at a frequency of 433.92 MHz and has a range of about 400m according to the manufacture. The transmitter module has four pins. Apart from “Data” and the “Vcc” pin, there is a common ground (GND) for data and supply. Last is the RF output (ANT) pin. Pin Assignment of the 434MHz Transmitter module
Note that, for the transmission of a unique signal, an encoder is crucial. For this, I have used the renowned encoder IC HT12E from Holtek. HT12E is capable of encoding information which consists of N address bits and 12N data bits. Each address/ data input can be set to one of the two logic states. The programmed addresses/data are transmitted together with the header bits via an RF transmission medium upon receipt of a trigger signal. Solder bridges TJ1 and TJ2 are used to set the address and data bits. The current consumption with a supply voltage of near 5.4V is about 10 mA. Since the current consumption is very little,the power can also be provided by standard button cells. Recommended antenna length is 17 cm for 433.92 MHz, and a stiff wire can be used as the antenna. Remember to mount the antenna (aerial) as close as possible to pin 4 (ANT) of the transmitter module 17
RF Transmitter – Schematic Diagram
RF Receiver This circuit complements the RF transmitter built aorund the small 434MHz transmitter module. The receiver picks up the transmitted signals using the 434Mhz receiver module. This integrated RF receiver module has been tuned to a frequency of 433.92MHz,exactly same as for the RF transmitter.
434MHz receiver module
The miniature 434MHz RF receiver module receives On-Off Keyed (OOK) modulation signal and demodulates it to digital signal for the next decoder stage. Local oscillator is made of Phase Locked Loop (PLL) structure. Technically, this is an Amplitude Shift Keying (ASK) receiver module based on a single-conversion, super-heterodyne receiver architecture and incorporates an entire 18
Phase-Locked Loop (PLL) for precise local oscillator (LO) generation. It can use in OOK / HCS / PWM modulation signal and demodulate to digital signal. The receiver module has eight (4+4) pins. Apart from three “ground (GND) ” and two “Vcc” pins, there are two pins (one for Digital Data & other for Linear Data) for data output. Last is the RF input (ANT) pin. Pin Assignment of the 434MHz Receiver module
Pin Connections
1 Antenna
2 Ground
3 Ground
4 Vcc
5 Vcc
6 Linear Data (Normally NOT used)
7 Digital Data (Normally Used)
8 Ground
The “coded” signal transmitted by the transmitter is processed at the receiver side by the decoder IC HT12F from Holtek. VR1 and R1 are used to tweak the oscillator frequency of the decoder to that of the transmitter. Any possible variations due to component tolerences and/or a different supply voltage can be compensated by this arrangement. HT12F is capable of decoding informations that consist of N bits of address and 12N bits of data. HT12F decoder IC receives serial addresses and data from the HT12E encoder that are transmitted by the RF transmitter module. HT12D compare the serial input data three times continuously with the local addresses.
19
If no error or unmatched codes are found, the input data codes are decoded and then transferred to the output pins. The “Valid Transmission” (VT) pin also goes high to indicate a valid transmission. For proper operation, a pair of HT12E/HT12F ICs with the same number of addresses and data format should be chosen. The data bits are set up using solder bridges RJ1 and RJ2. Output of the decoder is brought out on a pinheader K1 , making the logical signal available to circuits that need it. This output is also fed to the relay driver transitor T1. The RF Receiver circuit can be powered from a standard 5VDC supply. Just as for the RF Transmiitter, the aerial (17 cm for 433.92 MHz) has to be mounted as close as possible to the RF IN (ANT) pin of the 434MHz RF receiver module.
RF Receiver – Schematic Diagram
20
Flame and Fire Detection Sensor Module
Description
The Fire sensor is used to detect fire flames . The module makes use of Fire sensor and comparator to detect fire up to a range of 1 meters. Allows your robot to detect flames from up to 1M
Typical Maximum Range: 1 meter Calibration preset for range adjustment Indicator LED with easy interface connector Input Voltage: 3.3V to 5V
Features:
Can detect the flame or the wavelength at 760nm to 1100nm range of the light source, The test flame lighters distance of 80cm, The larger the flame, the greater the distance test The detection angle of approx 60 degrees, sensitive to the flame spectrum Sensitivity adjustable (Refer picture for blue digital potentiometer) The comparator output signal clean waveform is good, driving ability, than 15mA With adjustable precision potentiometer for sensitivity adjustment With LED indication Operating Voltage: 3.3V-5V Output in the form: DO digital switching outputs (0 and 1) and AO analog voltage output Fixed bolt holes for easy installation Small PCB size: 3.2cmx1.4cm Using a wide voltage LM393 comparator
21
Water Sensor Module
Description This is simple and small portable water level/water droplet identification, detection sensor water that have high cost performance. Complete water yield and analog conversion, the output value apply to your custom function. It is low power consumption and high sensitivity. It can make better performance with Arduino 328 controller and sensor relay shield. Water Sensor water level sensor is an easy-to-use, cost-effective high level/drop recognition sensor, which is obtained by having a series of parallel wires exposed traces measured droplets/water volume in order to determine the water level. Easy to complete water to analog signal conversion and output analog values can be directly read Arduino development board to achieve the level alarm effect.
Key Features
.Brand new Water Level Alarm Sensor Module Liquid Level Sensor Circuit Board .This sensor module can estimate the water level through a series of exposed parallel conductor line marks measuring the water droplets and capacity .Easily convert water to analog signal, the output analog signal can be read directly on the arduino board to achieve the effect of water level alarm .The surface have gone through plating processing to enhance the electrical conductivity and corrosion resistance .Simple circuit and easy to use and high cost performance Specifications
Working Voltage: DC 3-5V Working Current: <20mA Detection Area: 40 mm x 16 mm Optional Accessories: 3 pin sensor connecting line,Arduino 328 controller,Sensor relay
shield 22
SCHEMATIC DIAGRAM
SCHEMATIC EXPLANATION STANDARD
CONNECTIONS
TO
8051
SERIES
MICRO
CONTROLLER ATMEL series of 8051 family of micro controllers need certain standard connections. The actual number of the Microcontroller could be “89C51” , “89C52”, “89S51”, “89S52”, and as regards to 20 pin configuration a number of “89C2051”. The 4 set of I/O ports are used based on the project requirement. Every microcontroller requires a timing reference for its internal program execution therefore an oscillator needs to be functional with a desired frequency to obtain the timing reference as t =1/f. 23
A crystal ranging from 2 to 20 MHz is required to be used at its pin number 18 and 19 for the internal oscillator. It may be noted here the crystal is not to be understood as crystal oscillator It is just a crystal, while connected to the appropriate pin of the microcontroller it results in oscillator function inside the microcontroller. Typically 11.0592 MHz crystal is used in general for most of the circuits using 8051 series microcontroller. Two small value ceramic capacitors of 33pF each is used as a standard connection for the crystal as shown in the circuit diagram.
RESET Pin no 1 is provided with an resset arrangement by a combination of an electrolytic capacitor and a register forming RC time constant. At the time of switch on, the capacitor gets charged, and it behaves as a full short circuit from the positive to the pin number 1. After the capacitor gets fully charged the current stops flowing and pin number 1 goes low which is pulled down by a 10k resistor to the ground. This arrangement of reset at pin 1 going high initially and then to logic 0 i.e., low helps the program execution to start from the beginning. In absence of this the program execution could have taken place arbitrarily anywhere from the program cycle. A pushbutton switch is connected across the capacitor so that at any given time as desired it can be pressed such that it discharges the capacitor and while released the capacitor starts charging again and then pin number 1 goes to high and then back to low, to enable the program execution from the beginning. This operation of high to low of the reset pin takes place in fraction of a second as decided by the time constant R and C. For example: A 10µF capacitor and a 10kΩ resistor would render a 100ms time to pin number 1 from logic high to low, there after the pin number 1 remains low.
24
BRIEF DESCRIPTION OF TRANSISOR ACTING AS SWITCH An NPN transistor is "on" when its base is pulled high relative to the emitter. The arrow in the NPN transistor symbol is on the emitter leg and points in the direction of the conventional current flow when the device is in forward active mode. Whenever base is high, then current starts flowing through base and emitter and after that only current will pass from collector to emitter.
OPERATION EXPLANATION Microcontroller and connections: The microcontroller used is AT89C2051. The 20th pin of the IC is given a 5v power supply. Pins 4 & 5 of the IC are used to connect crystal to the microcontroller. Pin 1 of the IC is the reset pin which is connected to a mechanical switch. The trigger pins of the ultrasonic sensors are connected to P3.5,4 and 3. The multiplexed echo pin of the sensors is connected to P3.2 which is INT pin of MCU. Water sensor and the buzzer connected to P1.7 and 6 respectively.
25
CIRCUIT WORKING As it is an embedded project, the circuit compilations are reduced with an efficient program. In the circuit diagram of our purposed design when the blind person presses the switch on the stick. The circuit gets the power supply and the MCU activates sensors by giving appropriate signals to the select pins of the multiplexer IC and triggering the sensors. After getting trigger pulse the selected ultrasonic sensor transmits a ultrasound of 40k and its gets back after striking the object. The MCU calculates the time and distance and stores it. After that MCU selects the second sensors and calculate its distance also. Same will be done for sensor 3. After it gets all the distance of the sensors. It compares that distance with the already stored value which is 60cm. If the distance calculated by the topmost sensor is less than 60cm. The buzzer will beep very fast after 200ms. Otherwise if the middle sensors distance is less than 60 cm then buzzer beep will be slow at 400ms interval. For lowest sensor the buzzer beep will be 1sec. This variation can be used by the blind person to approximate the height of the object. If the water sensor detects water at the bottom of the stick. It will give high signal to the controller. And controller is programmed to beeps the sound 3 times faster and give it a delay. Fire sensor is directly connected to buzzer. Whenever Fire is detected it triggers the buzzer. The buzzer in this case continuously beeps. Buzzer is also directly connected to RF receiver circuit. Whenever the blind person have to finds his stick. He will simply have to press a micro switch on his remote, which gives input the RF encoder and transmitted by the transmitter. The signal gets received by the rf receiver and decoded by the decoder and its output triggers the buzzer. The buzzer gets turned on and it will help the blind to find his stick.
26
SOFTWARE IMPLEMENTATION SOURCE CODE #include #include #include #define delay_10us() _nop_();_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_();_nop_()
sbit wat = P1^2; sbit TRIG1 = P3^5; sbit TRIG2 = P3^4; sbit TRIG3 = P3^3; sbit SEL0 = P1^0; sbit SEL1 = P3^7; sbit buzzer = P1^7;
unsigned int T0_ISR_count = 0; unsigned long high_time_us; // 32 bit variable, stores pulse time in uS unsigned long distance_cm1; // 32 bit variable, Distance Value in Centimeter unsigned long distance_cm2; // 32 bit variable, Distance Value in Centimeter unsigned long distance_cm3; // 32 bit variable, Distance Value in Centimeter 27
unsigned long distance_in;
// 32 bit variable, Distance Value in Inches
void calculate(); void delay_ms(int);
unsigned int i; void serial_init() { /*-------------------------------------Set serial port for 9600 baud at 11.0592 MHz. Note that we use Timer 1 for the baud rate generator. --------------------------------------*/ SCON = 0x50; TMOD |= 0x20; TH1 = 0xFA; TR1 = 1; TI = 1; PCON |= 0x80; }
void T0_ISR (void) interrupt 1 { 28
T0_ISR_count++; TF0 = 0; }
void main (void) { buzzer = 0; TRIG1 = TRIG2 = TRIG3 = 0; //serial_init(); // Init serial port at 9600 //
printf ("\nUltrasonic Distance Sensor\n");
ET0 = 1; EA = 1; TMOD = (TMOD & 0xF0) | 0x09; while (1) { SEL1=0;SEL0=0; TRIG1 = 1; delay_10us(); TRIG1 = 0; calculate(); 29
distance_cm1=high_time_us/58; delay_ms(50);
SEL1=0;SEL0=1; TRIG2 = 1; delay_10us(); TRIG2 = 0; calculate(); distance_cm2=high_time_us/58; delay_ms(50);
SEL1=1;SEL0=0; TRIG3 = 1; delay_10us(); TRIG3 = 0; calculate(); distance_c0m3=high_time_us/58; delay_ms(50);
/*if(distance_cm1 > 0 && distance_cm1 < 500) // check valid range then only print printf("Distance1: %6lu cm\n", distance_cm1); 30
if(distance_cm2 > 0 && distance_cm2 < 500) // check valid range then only print printf("Distance2: %6lu cm\n", distance_cm2); if(distance_cm3 > 0 && distance_cm3 < 500) // check valid range then only print 0
printf("Distance3: %6lu cm\n", distance_cm3);*/
if(wat == 0) { buzzer=1; delay_ms(50); buzzer=0; delay_ms(50); buzzer=1; delay_ms(50); buzzer=0; delay_ms(50); buzzer=1; delay_ms(50); buzzer=0; delay_ms(50); } else if(distance_cm3 <60) 31
{ buzzer=1; delay_ms(200); buzzer=0; delay_ms(50); } else if(distance_cm2 < 60) { buzzer=1; delay_ms(400); buzzer=0; delay_ms(250); } else if(distance_cm1 < 60) { buzzer=1; delay_ms(1000); buzzer=0; delay_ms(850); } else 32
buzzer=0; } }
void calculate() { T0_ISR_count = 0; TH0 = 0; TL0 = 0; TR0 = 1; i=0; while (!INT0) { i++; if(i>20000) break; } i=0; while (INT0) { i++; 33
if(i>20000) break; } high_time_us = (unsigned long)((TH0 << 8) | TL0 | ((unsigned long)T0_ISR_count << 16))*1.085; //
return high_time_us;
}
void delay_ms(int x) { int y=0; while(x>=0) { for (y=0; y<100; y++); x--; } }
34
HARDWARE TESTING CONTINUITY TEST: In electronics, a continuity test is the checking of an electric circuit to see if current flows (that it is in fact a complete circuit). A continuity test is performed by placing a small voltage (wired in series with an LED or noise-producing component such as a piezoelectric speaker) across the chosen path. If electron flow is inhibited by broken conductors, damaged components, or excessive resistance, the circuit is "open".
Devices that can be used to perform continuity tests include multi meters which measure current and specialized continuity testers which are cheaper, more basic devices, generally with a simple light bulb that lights up when current flows.
An important application is the continuity test of a bundle of wires so as to find the two ends belonging to a particular one of these wires; there will be a negligible resistance between the "right" ends, and only between the "right" ends.
This test is the performed just after the hardware soldering and configuration has been completed. This test aims at finding any electrical open paths in the circuit after the soldering. Many a times, the electrical continuity in the circuit is lost due to improper soldering, wrong and rough handling of the PCB, improper usage of the soldering iron, component failures and presence of bugs in the circuit diagram. We use a multi meter to perform this test. We keep the multi meter in buzzer mode and connect the ground terminal of the multi meter to the ground. We connect both the terminals across the path that needs to be checked. If there is continuation then you will hear the beep sound.
35
POWER ON TEST: This test is performed to check whether the voltage at different terminals is according to the requirement or not. We take a multi meter and put it in voltage mode. Remember that this test is performed without microcontroller. Firstly, we check the output of the transformer, whether we get the required 12 v AC voltage. Then we apply this voltage to the power supply circuit. Note that we do this test without microcontroller because if there is any excessive voltage, this may lead to damaging the controller. We check for the input to the voltage regulator i.e., are we getting an input of 12v and an output of 5v. This 5v output is given to the microcontrollers’ 40th pin. Hence we check for the voltage level at 40th pin. Similarly, we check for the other terminals for the required voltage. In this way we can assure that the voltage at all the terminals is as per the requirement.
36
RESULTS AND DISCUSSIONS We validated the effectiveness and advantages of our proposed methodology by doing software testing. Each module of the program was verified with various test cases. The device was programmed in such a way that it uses the available memory of AT89C2051 efficiently. The prototype was well designed to implement all the software modules and tested with all possible cases. The prototype suffers from some limitations as well. It is built using 8051 FAMILY MCU which has limited memory, and therefore, there is a limitation on maximum number of SENSORS that it can use.
37
CONCLUSION AND FUTURE SCOPE The proposed project undertakes a viable solution to the blind persons by providing artificial vision on objects and to determine their way. Also the purposed design provides safety to the blind person by alerting the fire and water. The idea can be further modified by using a voice playback module which alerts the blind person by giving speech notifications. The blind stick can also be equipped with GPS module for partially deaf people.
38
BIBLIOGRAPHY TEXT BOOKS REFERED: 1. “The 8051 Microcontroller and Embedded systems” by Muhammad Ali Mazidi and Janice Gillispie Mazidi , Pearson Education. 2. ATMEL 89C2051 Data Sheets.
THE INTERNET SOURCES http://www.atmel.com/images/doc0368.pdf http://www.elechouse.com/elechouse/index.php?main_page=product_info&cPath=&products_id=2233 http://www.electroschematics.com/8712/rf-based-wireless-remote-control-system https://electrosome.com/wp-content/uploads/2014/08/Working-of-HC-SR04-Ultrasonic-Sensor.jpg
REFERENCES [1] Rohit Sheth “Smart White Cane- an Elegant and Economic Walking Aid” [2] www.who.int/mediacentre/factsheets/fs282/en/ [3] “Project Prakash” http://web.mit.edu/bcs/sinha/prakash.html [4] Mohammad Hazzaz Mahmud, “Smart walking stick - an electronic approach to assist visually disabled persons” “http://www.ijser.org/researchpaper%5CSmart-walking-stick-an-electronicapproach-to-assist- visually-disabled-persons.pdf”.
39