Vous êtes sur la page 1sur 68

HBeonLabs

Off. No. 46, 1st Floor, Kadamba Complex Gamma-I, Greater Noida (India) - 201308

Contact us:
+91-120-4298000 +91-9212314779

info@hbeonlabs.com training@hbeonlabs.com

www. hbeonlabs.com

VEHICLE ALARMCONTROL

GSM BASED VEHICLE FINDING IN CROWDED PARKING

SMS

PORT1

Level Convert er

Vehicle

TABLE OF CONTENTS
CHAPTER ONE: INTRODUCTION 1.1 1.2 1.3 1.4 Introduction Methodology Scope of Work Aims of the GSM Vehicle Location Finder 2

1.5

Objectives of the GSM Vehicle Location Finder

CHAPTER TWO: THEORETICAL BACKGROUND AND LITERATURE REVIEW


2.0 2.1 Theoretical Background GSM Architecture

2.2 2.3 2.4 2.5 2.6


2.7 2.8 2.9

Technical Details Main Cellular Standards GSM Frequencies Network Structure Subscriber Identity Module (SIM)
Literature Review GSM Security Circuit Diagram of the GSM Vehicle Location Finder and Power Supply

CHAPTER THREE: DESIGN AND CONSTRUCTION 3.1 GSM Modem 3.1.1 3.2 3.3 3.4 Accessing GSM MODEM using Microsoft HyperTerminal

Testing of GSM Modem List of Important AT Commands Microcontroller MODEM Interfacing 3.4.1. 3.4.2. DTE and DCE RS-232 3

3.4.3.

RTS/CTS Handshaking

3.4.4. Specifying Baud Rate, Parity & Stop bits 3.4.5 DCE Baud Rates

CHAPTER FOUR: TESTS, RESULTS, AND DISCUSSION


4.1 4.2 4.3 4.4 Testing a DB-9 RS-232 serial port in HyperTerminal Testing and Observations Operational Flowchart Initializations 4.4.1 4.4.2 4.4.3 4.5 4.6 4.6 Serial transfer using TI and RI flags Validity Check Display

Programmer Simulator Burner

4.7 Components List

CHAPTER FIVE: RECOMMENDATION AND CONCLUSION


5.1 5.2 5.2 5.3 Conclusion Problems Encountered Future Improvement Recommendation 4

REFERENCES

APPENDIX A: USERS MANUAL APPENDIX B: TROUBLESHOOTING MANUAL APPENDIX C: PROGRAM FLOWCODE APPENDIX D: CONSTRUCTION STAGES

CHAPTER ONE
1.1 Introduction

GSM and GPRS based Designs have developed another innovative and Public utility product for mass communication [1]. This is a Vehicle Alarm Control Device which control the Vehicle Alarm through messages received as SMS or GPRS Packets and also send acknowledgement of task. Such Devices can be used at different areas of the human being life. Such as malls, cinema houses etc. Sent command from Mobiles or PCs to these devices for move the motor left, right, and stop. These devices are designed to remotely control the Vehicle Alarm from anywhere and anytime. Wireless communication has announced its arrival on big stage and the world is going mobile [2]. We want to control everything and without moving an inch. This remote control Vehicle Finding device is possible through Embedded Systems. The use of Embedded System in Communication has given rise to many interesting applications that ensures comfort and safety to human life [3]. The main aim of the project will be to design a SMS electronic Vehicle Alarm Control toolkit which can replace the traditional Control Devices. The toolkit receives the SMS, validates the sending Mobile Identification Number (MIN) and performs the desired
5

operation after necessary code conversion. The system is made efficient by SIMs so that the SMS can be received by number of devices boards in a locality using techniques of time division multiple access. The main components of the toolkit include microcontroller, GSM modem. These components are integrated with the device board and thus incorporate the wireless features. The GSM modem receives the SMS. The AT commands are serially transferred to the modem. In return the modem transmits the stored message through the wireless link. The microcontroller validates the SMS and then perform specific task on the device. The microcontroller used in this case is ATMEL AT89S52 .Motorola W220 is used as the GSM modem. In this prototype model, LCD display is used for simulation purpose. The results presented in the thesis support the proper functionalities and working of the system. The timing diagram suggests the response of the modem to various AT (attention) commands. 1.2

Methodology

The method used to carry out this project is the principle of serial communication in collaboration with embedded systems. This is a very good project for Industries. This project has a Vehicle Alarm Control, which will be used as the electronic device, and also a GSM modem, which is the latest technology used for communication between the mobile and the embedded devices. System will work like when the user wants to on/off the device; he has to send the message in his mobile defining the messages and then the password of the system to the number of the subscriber identity module (SIM) which is inserted in the display system MODEM. Then, the MODEM connected to the display system will receive the SMS, the microcontroller inside the system is programmed in such a way that when the modem receives any message the
6

microcontroller will read the message from serial headphone and verify for the password, if the password is correct then it will start performing desire task. 1.3

Scope of Work

I will use liquid crystal display for displaying the message; I will also use GSM modem (Motorola W220) as an interface between mobile and microcontroller. I will send message from any phone irrespective of the GSM network to the modem connected to the programmable device using a password. The message will get by the GSM Modem of the device and do specific task.

1.4

Aims of the Vehicle Finding


Uses in Malls: Malls are the important part of the city life and the parking of the malls are so crowded to find you vehicle from this heavy parking .This device real helpful for you and save your valuable time. Uses in Fairs: Fairs are the important part of the city life and the parking of the fairs are so crowded to find you vehicle from this heavy parking .This device real helpful for you and save your valuable time.

1.5

Objectives of the GSM Electronic Vehicle Finding

Programming of the mobile phone with AT (Attention) command sequence Interfacing the programming chip with the personal computer Interfacing the programmable chip with the Relay. Interfacing the programmable chip with the Buzzer.
7

Interfacing of the mobile phone with the programmable chip Sending messages from the remote phone to control device.

CHAPTER TWO THEORETICAL BACKGROUND AND LITERATURE REVIEW


2.0

Theoretical Background

GSM (Global System for Mobile communications: originally from GROUPE Special Mobile) is the most popular standard for mobile phones in the world. Its promoter, the GSM Association, estimates that 80% of the global mobile market uses the standard. GSM is used by over 3 billion people across more than 212 countries and territories [4]. Its ubiquity makes international roaming very common between mobile phone operators enabling subscribers to use their phones in many parts of the world. GSM differs from its predecessors in that both signaling and speech channels are digital, and thus is considered a second generation (2G) mobile phone system [5]. This has also meant that data communication was easy to build into the system. 2.1

GSM Architecture

GSM is a complex system and difficult to understand. The Mobile Station (MS) refers to the mobile equipment [6]. The Base Station Subsystem controls the radio link with the Mobile Station. The Network Subsystem performs main functions such as switching of calls between mobile users, mobility management operations, and proper operation and setup of a network [7]. These functions are controlled by the Mobile Services Switching Center (MSC). 2.2

Technical Details

GSM is a cellular network, which means that mobile phones connect to it by searching for cells in the immediate vicinity.

2.3 MAIN CELLULAR STANDARDS YEAR STANDARD MOBILE TELEPHONE SYSTEM 1981 NMT540 NORDIC TELEPHONY 1985 TACS TOTAL MOBILE ANALOG UE ACCESS ANALOG UE EUROPE,MIDDL E EAST EUROPE CHINA AND TECHNO LOGY PRIMARY MARKETS

COMMUNUNICATION SYSTEM 1986 NMT900 NORDIC TELEPHONY 1991 GSM

MOBILE ANALOG UE

EUROPE, MIDDLE EAST WORLD-WIDE

GLOBAL SYSTEM FOR DIGITAL MOBILE COMMUNICATION

1991

TDMA

TIME

DIVISION DIGITAL

AMERICA

MULTIPLE ACCESS 1993 CDMA CODE DIVISION DIGITAL NORTH AMERICA, KOREA 1992 GSM 1800 GLOBAL SYSTEM FOR DIGITAL MOBILE COMMUNICATION EUROPE

MULTIPLE ACCESS

10

1994

PDC

PERSONAL CELLULAR

DIGITAL DIGITAL

JAPAN

1995

PCS 1900

PERSONAL COMPUTER SERVICES

DIGITAL

NORTH AMERICA NORTH AMERICA

2001

GSM 800

GLOBAL SYSTEM FOR DIGITAL MOBILE COMMUNICATION

2006-TILL DATE

GSM 450

GLOBAL SYSTEM FOR DIGITAL MOBILE COMMUNICATION

WORLD-WIDE

2.4

GSM Frequencies

GSM networks operate in a number of different frequency ranges (separated into GSM frequency ranges for 2G and UMTS frequency bands for 3G). Most 2G GSM networks operate in the 900 MHz or 1800 MHz bands. Some countries in the Americas (including Canada and the United States) use the 850 MHz and 1900 MHz bands because the 900 and 1800 MHz frequency bands were already allocated. Most 3G GSM networks in Europe operate in the 2100 MHz frequency band [9] 2.5

Network Structure

The network behind the GSM seen by the customer is large and complicated in order to provide all of the services which are required.

The Base Station Subsystem (the base stations and their controllers).
11

The Network and Switching Subsystem (the part of the network most similar to a fixed network). This is sometimes also just called the core network.

The GPRS Core Network (the optional part which allows packet based Internet connections).

All of the elements in the system combine to produce many GSM services such as voice calls and SMS.

2.6

Subscriber Identity Module (SIM)


One of the key features of GSM is the Subscriber Identity Module, commonly known as a

SIM card. The SIM is a detachable smart card containing the user's subscription information and phone book. This allows the user to retain his or her information after switching handsets [10]. Alternatively, the user can also change operators while retaining the handset simply by changing the SIM. Some operators will block this by allowing the phone to use only a single SIM, or only a SIM issued by them; this practice is known as SIM locking, and is illegal in some countries [11].

2.7

Literature Review

This project is an implementation to the idea of the wireless communication between a mobile phone and a microcontroller. Currently the main work that has been done on this proposed system is through serial port to the computer but not wireless. If they want to control the Vending Machine, they have to go to the remote area and change the rotation and one /off the Vending Machine. But in this new design, the systems need not be reprogrammed to control Vehicle Alarmchanging the programming of microcontroller. The user will send SMS from his phone and he will be able to control the Vending Machine.
12

2.8

GSM Security

GSM was designed with a moderate level of security. The system was designed to authenticate the subscriber using a pre-shared key and challenge-response. Communications between the subscriber and the base station can be encrypted.

Fig. 2.2 Block Diagram As we see in the above figure, there are at least three interfacing circuits, MAX-232 with Microcontroller, LCD display with microcontroller, and MAX-232 with GSM MODEM.

13

2.9

Circuit

Diagram

of

the

GSM

Electronic

Vehicle

Finder

14

POWER SUPPLY:
Power supply is a reference to a source of electrical power. A device or system that supplies electrical or other types of energy to an output load or group of loads is called a power supply unit or PSU. The term is most commonly applied to electrical energy supplies, less often to mechanical ones, and rarely to others.

Here in our application we need a 5v DC power supply for all electronics involved in the project. This requires step down transformer, rectifier, voltage regulator, and filter circuit for generation of 5v DC power. Here a brief description of all the components is given as follows:

TRANSFORMER:

A transformer is a device that transfers electrical energy from one circuit to another through inductively coupled conductors the transformer's coils or "windings". Except for air-core transformers, the conductors are commonly wound around a single iron-rich core, or around separate but magneticallycoupled cores. A varying current in the first or "primary" winding creates a varying magnetic field in the core (or cores) of the transformer. This varying magnetic field induces a varying electromotive force (EMF) or "voltage" in the "secondary" winding. This effect is called mutual induction.

If a load is connected to the secondary circuit, electric charge will flow in the secondary winding of the transformer and transfer energy from the primary circuit to the load connected in the secondary circuit.
15

The secondary induced voltage VS, of an ideal transformer, is scaled from the primary VP by a factor equal to the ratio of the number of turns of wire in their respective windings:

By appropriate selection of the numbers of turns, a transformer thus allows an alternating voltage to be stepped up by making NS more than NP or stepped down, by making it

BASIC PARTS OF A TRANSFORMER


In its most basic form a transformer consists of:

A primary coil or winding. A secondary coil or winding. A core that supports the coils or windings.

Refer to the transformer circuit in figure as you read the following explanation: The primary winding is connected to a 60-hertz ac voltage source. The magnetic field (flux) builds up (expands) and collapses (contracts) about the primary winding. The expanding and contracting magnetic field around the primary winding cuts the secondary winding and induces an alternating voltage into the winding. This voltage causes alternating current to flow through the load. The voltage may be stepped up or down depending on the design of the primary and secondary windings.

16

THE COMPONENTS OF A TRANSFORMER


Two coils of wire (called windings) are wound on some type of core material. In some cases the coils of wire are wound on a cylindrical or rectangular cardboard form. In effect, the core material is air and the transformer is called an AIR-CORE TRANSFORMER. Transformers used at low frequencies, such as 60 hertz and 400 hertz, require a core of low-reluctance magnetic material, usually iron. This type of transformer is called an IRON-CORE TRANSFORMER. Most power transformers are of the iron-core type. The principle parts of a transformer and their functions are:

The CORE, which provides a path for the magnetic lines of flux. The PRIMARY WINDING, which receives energy from the ac source. The SECONDARY WINDING, which receives energy from the primary winding and delivers it to the load. The ENCLOSURE, which protects the above components from dirt, moisture, and mechanical damage.

BRIDGE RECTIFIER
A bridge rectifier makes use of four diodes in a bridge arrangement to achieve full-wave rectification. This is a widely used configuration, both with individual diodes wired as shown and with single component bridges where the diode bridge is wired internally.

BASIC OPERATION
According to the conventional model of current flow originally established by Benjamin Franklin and still followed by most engineers today, current is assumed to flow through electrical conductors from the positive to the negative pole. In actuality, free electrons in a conductor nearly always flow from the negative to the positive pole. In the vast majority of applications, however, the actual direction of current flow is irrelevant. Therefore, in the discussion below the conventional model is retained. In the diagrams below, when the input connected to the left corner of the diamond is positive, and the input connected to the right corner is negative, current flows from the upper supply terminal to the right along the red (positive) path to the output, and returns to the lower supply terminal via the blue (negative) path.

17

When the input connected to the left corner is negative, and the input connected to the right corner is positive, current flows from the lower supply terminal to the right along the red path to the output, and returns to the upper supply terminal via the blue path.

In each case, the upper right output remains positive and lower right output negative. Since this is true whether the input is AC or DC, this circuit not only produces a DC output from an AC input, it can also provide what is sometimes called "reverse polarity protection". That is, it permits normal functioning of DC-powered equipment when batteries have been installed backwards, or when the leads (wires) from a DC power source have been reversed, and protects the equipment from potential damage caused by reverse polarity. Prior to availability of integrated electronics, such a bridge rectifier was always constructed from discrete components. Since about 1950, a single four-terminal component containing the four diodes connected in the bridge configuration became a standard commercial component and is now available with various voltage and current ratings.

18

OUTPUT SMOOTHING
For many applications, especially with single phase AC where the full-wave bridge serves to convert an AC input into a DC output, the addition of a capacitor may be desired because the bridge alone supplies an output of fixed polarity but continuously varying or "pulsating" magnitude (see diagram above).

The function of this capacitor, known as a reservoir capacitor (or smoothing capacitor) is to lessen the variation in (or 'smooth') the rectified AC output voltage waveform from the bridge. One explanation of 'smoothing' is that the capacitor provides a low impedance path to the AC component of the output, reducing the AC voltage across, and AC current through, the resistive load. In less technical terms, any drop in the output voltage and current of the bridge tends to be canceled by loss of charge in the capacitor. This charge flows out as additional current through the load. Thus the change of load current and voltage is reduced relative to what would occur without the capacitor. Increases of voltage correspondingly store excess charge in the capacitor, thus moderating the change in output voltage / current. The simplified circuit shown has a well-deserved reputation for being dangerous, because, in some applications, the capacitor can retain a lethal charge after the AC power source is removed. If supplying a dangerous voltage, a practical circuit should include a reliable way to safely discharge the capacitor. If the normal load cannot be guaranteed to perform this function, perhaps because it can be disconnected, the circuit should include a bleeder resistor connected as close as practical across the capacitor. This resistor should consume a current large enough to discharge the capacitor in a reasonable time, but small enough to minimize unnecessary power waste.

19

Because a bleeder sets a minimum current drain, the regulation of the circuit, defined as percentage voltage change from minimum to maximum load, is improved. However in many cases the improvement is of insignificant magnitude. The capacitor and the load resistance have a typical time constant = RC where C and R are the capacitance and load resistance respectively. As long as the load resistor is large enough so that this time constant is much longer than the time of one ripple cycle, the above configuration will produce a smoothed DC voltage across the load. In some designs, a series resistor at the load side of the capacitor is added. The smoothing can then be improved by adding additional stages of capacitorresistor pairs, often done only for subsupplies to critical high-gain circuits that tend to be sensitive to supply voltage noise. The idealized waveforms shown above are seen for both voltage and current when the load on the bridge is resistive. When the load includes a smoothing capacitor, both the voltage and the current waveforms will be greatly changed. While the voltage is smoothed, as described above, current will flow through the bridge only during the time when the input voltage is greater than the capacitor voltage. For example, if the load draws an average current of n Amps, and the diodes conduct for 10% of the time, the average diode current during conduction must be 10n Amps. This non-sinusoidal current leads to harmonic distortion and a poor power factor in the AC supply. In a practical circuit, when a capacitor is directly connected to the output of a bridge, the bridge diodes must be sized to withstand the current surge that occurs when the power is turned on at the peak of the AC voltage and the capacitor is fully discharged. Sometimes a small series resistor is included before the capacitor to limit this current, though in most applications the power supply transformer's resistance is already sufficient. Output can also be smoothed using a choke and second capacitor. The choke tends to keep the current (rather than the voltage) more constant. Due to the relatively high cost of an effective choke compared to a resistor and capacitor this is not employed in modern equipment. Some early console radios created the speaker's constant field with the current from the high voltage ("B +") power supply, which was then routed to the consuming circuits, (permanent magnets were then too weak for good performance) to create the speaker's constant magnetic field. The speaker field coil thus performed 2 jobs in one: it acted as a choke, filtering the power supply, and it produced the magnetic field to operate the speaker.

REGULATOR IC (78XX)

20

It is a three pin IC used as a voltage regulator. It converts unregulated DC current into regulated DC current.

Normally we get fixed output by connecting the voltage regulator at the output of the filtered DC (see in above diagram). It can also be used in circuits to get a low DC voltage from a high DC voltage (for example we use 7805 to get 5V from 12V). There are two types of voltage regulators 1. fixed voltage regulators (78xx, 79xx) 2. variable voltage regulators (LM317) In fixed voltage regulators there is another classification 1. +ve voltage regulators 2. -ve voltage regulators POSITIVE VOLTAGE REGULATORS This include 78xx voltage regulators. The most commonly used ones are 7805 and 7812. 7805 gives fixed 5V DC voltage if input voltage is in (7.5V, 20V).

The CAPACITOR FILTER


The simple capacitor filter is the most basic type of power supply filter. The application of the simple capacitor filter is very limited. It is sometimes used on extremely high-voltage, lowcurrent power supplies for cathode ray and similar electron tubes, which require very little load current from the supply. The capacitor filter is also used where the power-supply ripple frequency is not critical; this frequency can be relatively high. The capacitor (C1) shown in figure 4-15 is a simple filter connected across the output of the rectifier in parallel with the load.

21

Full-wave rectifier with a capacitor filter. When this filter is used, the RC charge time of the filter capacitor (C1) must be short and the RC discharge time must be long to eliminate ripple action. In other words, the capacitor must charge up fast, preferably with no discharge at all. Better filtering also results when the input frequency is high; therefore, the full-wave rectifier output is easier to filter than that of the half-wave rectifier because of its higher frequency. For you to have a better understanding of the effect that filtering has on E avg, a comparison of a rectifier circuit with a filter and one without a filter is illustrated in views A and B of figure 4-16. The output waveforms in figure 4-16 represent the unfiltered and filtered outputs of the halfwave rectifier circuit. Current pulses flow through the load resistance (RL) each time a diode conducts. The dashed line indicates the average value of output voltage. For the half-wave rectifier, Eavg is less than half (or approximately 0.318) of the peak output voltage. This value is still much less than that of the applied voltage. With no capacitor connected across the output of the rectifier circuit, the waveform in view A has a large pulsating component (ripple) compared with the average or dc component. When a capacitor is connected across the output (view B), the average value of output voltage (Eavg) is increased due to the filtering action of capacitor C1. UNFILTERED

Half-wave rectifier with and without filtering.

22

FILTERE

D
The value of the capacitor is fairly large (several microfarads), thus it presents a relatively low reactance to the pulsating current and it stores a substantial charge. The rate of charge for the capacitor is limited only by the resistance of the conducting diode, which is relatively low. Therefore, the RC charge time of the circuit is relatively short. As a result, when the pulsating voltage is first applied to the circuit, the capacitor charges rapidly and almost reaches the peak value of the rectified voltage within the first few cycles. The capacitor attempts to charge to the peak value of the rectified voltage anytime a diode is conducting, and tends to retain its charge when the rectifier output falls to zero. (The capacitor cannot discharge immediately.) The capacitor slowly discharges through the load resistance (RL) during the time the rectifier is non-conducting. The rate of discharge of the capacitor is determined by the value of capacitance and the value of the load resistance. If the capacitance and load-resistance values are large, the RC discharge time for the circuit is relatively long. A comparison of the waveforms shown in figure 4-16 (view A and view B) illustrates that the addition of C1 to the circuit results in an increase in the average of the output voltage (Eavg) and a reduction in the amplitude of the ripple component (Er) which is normally present across the load resistance.

23

Now, let's consider a complete cycle of operation using a half-wave rectifier, a capacitive filter (C1), and a load resistor (RL). As shown in view A of figure 4-17, the capacitive filter (C1) is assumed to be large enough to ensure a small reactance to the pulsating rectified current. The resistance of RL is assumed to be much greater than the reactance of C1 at the input frequency. When the circuit is energized, the diode conducts on the positive half cycle and current flows through the circuit, allowing C1 to charge. C1 will charge to approximately the peak value of the input voltage. (The charge is less than the peak value because of the voltage drop across the diode (D1)). In view A of the figure, the heavy solid line on the waveform indicates the charge on C1. As illustrated in view B, the diode cannot conduct on the negative half cycle because the anode of D1 is negative with respect to the cathode. During this interval, C1 discharges through the load resistor (RL). The discharge of C1 produces the downward slope as indicated by the solid line on the waveform in view B. In contrast to the abrupt fall of the applied ac voltage from peak value to zero, the voltage across C1 (and thus across RL) during the discharge period gradually decreases until the time of the next half cycle of rectifier operation. Keep in mind that for good filtering, the filter capacitor should charge up as fast as possible and discharge as little as possible. Figure 4-17A. - Capacitor filter circuit (positive and negative half cycles). POSITIVE HALFCYCLE

Figure 4-17B. - Capacitor filter circuit (positive and negative half cycles). NEGATIVE HALFCYCLE

24

Since practical values of C1 and RL ensure a more or less gradual decrease of the discharge voltage, a substantial charge remains on the capacitor at the time of the next half cycle of operation. As a result, no current can flow through the diode until the rising ac input voltage at the anode of the diode exceeds the voltage on the charge remaining on C1. The charge on C1 is the cathode potential of the diode. When the potential on the anode exceeds the potential on the cathode (the charge on C1), the diode again conducts, and C1 begins to charge to approximately the peak value of the applied voltage. After the capacitor has charged to its peak value, the diode will cut off and the capacitor will start to discharge. Since the fall of the ac input voltage on the anode is considerably more rapid than the decrease on the capacitor voltage, the cathode quickly become more positive than the anode, and the diode ceases to conduct. Operation of the simple capacitor filter using a full-wave rectifier is basically the same as that discussed for the half-wave rectifier. Referring to figure 4-18, you should notice that because one of the diodes is always conducting on. either alternation, the filter capacitor charges and discharges during each half cycle. (Note that each diode conducts only for that portion of time when the peak secondary voltage is greater than the charge across the capacitor.) Figure 4-18. - Full-wave rectifier (with capacitor filter).

25

Another thing to keep in mind is that the ripple component (E r) of the output voltage is an ac voltage and the average output voltage (Eavg) is the dc component of the output. Since the filter capacitor offers relatively low impedance to ac, the majority of the ac component flows through the filter capacitor. The ac component is therefore bypassed (shunted) around the load resistance, and the entire dc component (or Eavg) flows through the load resistance. This statement can be clarified by using the formula for XC in a half-wave and full-wave rectifier. First, you must establish some values for the circuit.

26

27

As you can see from the calculations, by doubling the frequency of the rectifier, you reduce the impedance of the capacitor by one-half. This allows the ac component to pass through the capacitor more easily. As a result, a full-wave rectifier output is much easier to filter than that of a half-wave rectifier. Remember, the smaller the XC of the filter capacitor with respect to the load resistance, the better the filtering action. Since

the largest possible capacitor will provide the best filtering.

Remember, also, that the load resistance is an important consideration. If load resistance is made small, the load current increases, and the average value of output voltage (E avg) decreases. The RC discharge time constant is a direct function of the value of the load resistance; therefore, the rate of capacitor voltage discharge is a direct function of the current through the load. The greater the load current, the more rapid the discharge of the
28

capacitor, and the lower the average value of output voltage. For this reason, the simple capacitive filter is seldom used with rectifier circuits that must supply a relatively large load current. Using the simple capacitive filter in conjunction with a full-wave or bridge rectifier provides improved filtering because the increased ripple frequency decreases the capacitive reactance of the filter capacitor.

CIRCUIT DIAGRAM OF POWER SUPPLY

29

CHAPTER THREE
3.1

GSM Modem

A GSM modem is a wireless modem that works with a GSM wireless network. A wireless modem behaves like a dial-up modem. The main difference between them is that a dial-up modem sends and receives data through a fixed telephone line while a wireless modem sends and receives data through radio waves. Like a GSM mobile phone, a GSM modem requires a SIM card from a wireless carrier in order to operate [11]. 3.1.1 Accessing GSM MODEM using Microsoft HyperTerminal Microsoft HyperTerminal is a small program that comes with Microsoft Windows. We use it to send AT commands to the GSM modem. It can be found at Start -> Programs -> Accessories -> Communications -> HyperTerminal. Before programming our SMS application, it is required to check if the GSM modem and SIM card are working properly first [12]. The MS HyperTerminal is a handy tool when it comes to testing the GSM device. It is a good idea to test the GSM devices beforehand. When a problem occurs, sometimes it is difficult to tell what causes the problem. The cause can be the program, the GSM device or the SIM card. If GSM device and SIM card with MS HyperTerminal are operating properly, then it is very likely that the problem is caused by the program or other hardware [12]. For Linux users, Mincom can be used instead of HyperTerminal. 3.2

Testing of GSM Modem

To use MS HyperTerminal to send AT commands to the GSM modem, the following procedure is followed

30

1. I put a valid SIM (MTN) card into the GSM modem. I obtain a SIM card by subscribing to the GSM service of a wireless network operator. 2. No need to install any driver for the GSM modem 3. Then I set up MS HyperTerminal by selecting Start -> Programs -> Accessories -> Communications -> HyperTerminal. 4. In the Connection Description dialog box (as shown in the screenshot given below), I enter any file name and choose an icon I like for the connection. Then I click the OK button. . In the Connect To dialog box, choose the COM port that your mobile phone or GSM modem is connecting to in the Connect using combo box. I choose COM1 because my mobile phone is connected to the COM1 port. Then click the OK button. Type "AT" in the main window. A response "OK" will be returned from the mobile phone or GSM modem. Type "AT+CPIN?" in the main window. The AT command "AT+CPIN?" is used to query whether the mobile phone or GSM modem is waiting for a PIN (personal identification number, i.e. password). If the response is "+CPIN: READY", it means the SIM card does not require a PIN and it is ready for use. If my SIM card requires a PIN, you need to set the PIN with the AT command "AT+CPIN=<PIN>".
[

3.3

List of Important AT Commands

After successfully testing the MODEM for its correct operational state, I then set the MODEM parameters like Baud rate, Echo off etc to enable easier access via a microcontroller which I used in this project. The following are the ATCOMMAND used for programming the gsm modem Example: Changing and saving parameters AT+IPR=9600[Enter] Transfer rate to 9600bps AT&W [Enter] save parameters
31

AT+CMGF means convert the message to machine instruction format AT+CPMS means selection of SMS memory AT+CMGR means read message from a given memory location AT+CMGD means delete message from a given memory location. 3.4

Microcontroller Modem Interfacing

3.4.1. DTE and DCE The terms DTE and DCE are very common in the data communications market. DTE is short for Data Terminal Equipment and DCE stands for Data Communications Equipment. As the full DTE name indicates this is a piece of device that ends a communication line, whereas the DCE provides a path for communication. Let's say I have a computer on which wants to communicate with the Internet through a modem and a dial-up connection. To get to the Internet I tell my modem to dial the number of my provider. After my modem has dialed the number, the modem of the provider will answer my call and I will hear a lot of noise. Then it becomes quiet and I see my login prompt or my dialing program tells me the connection is established. Now I have a connection with the server from my provider and I can surf the Internet [13]. 3.4.2. RS-232 In telecommunications, RS-232 is a standard for serial binary data signals connecting between a DTE (Data terminal equipment) and a DCE (Data Circuit-terminating Equipment)[14]. It is commonly used in computer serial ports. In RS-232, data is sent as a time-series of bits. Both synchronous and asynchronous transmissions are supported by the standard. In addition to the data circuits, the standard defines a number of control circuits used to manage the connection between the DTE and DCE [14]. Each data or control circuit only operates in one direction that
32

is, signaling from a DTE to the attached DCE or the reverse. Since transmit data and receive data are separate circuits, the interface can operate in a full duplex manner, supporting concurrent data flow in both directions [15]. The standard does not define character framing within the data stream, or character encoding.

Fig.3.4 Female 9 pin plug 3.4.3. RTS/CTS Handshaking

The standard RS-232 use of the RTS and CTS lines is asymmetrical. The DTE asserts RTS to indicate a desire to transmit and the DCE asserts CTS in response to grant permission. This allows for half-duplex modems that disable their transmitters when not required, and must transmit a synchronization preamble to the receiver when they are re enabled [16]. There is no way for the DTE to indicate that it is unable to accept data from the DCE. A non-standard symmetrical alternative is widely used: CTS indicates permission from the DCE for the DTE to transmit, and RTS indicates permission from the DTE for the DCE to transmit [17]. The "request to transmit" is implicit and continuous. The standard defines RTS/CTS as the signaling protocol for flow control for data transmitted from DTE to DCE. The standard has no provision for flow control in the other direction. In practice, most hardware seems to have repurposed the RTS signal for this function [18]. A minimal 3-wire RS-232 connection consisting only of transmits data, receives data and ground, and is commonly used when the full facilities of RS-232 are not

33

required. When only flow control is required, the RTS and CTS lines are added in a 5-wire version. 3.4.4. Specifying Baud Rate, Parity & Stop bits Serial communication using RS-232 requires four parameters: the baud rate of the transmission, the number of data bits encoding a character, the sense of the optional parity bit, and the number of stop bits. Each transmitted character is packaged in a character frame that consists of a single start bit followed by the data bits, the optional parity bit, and the stop bit or bits. A typical character frame encoding the letter "m" is shown here.

I specified the parameters as baud rate 9600 bps, 8 data bits, no parity, and 1 stop bit (9600-8 N-1). This was set in pre-operational phase while setting up the modem through the hyper terminal, as per the serial transmission standards in 8051 microcontroller [19]. 3.4.5 DCE Baud Rates 110,300,1200,2400,4800,9600,19200,38400,57600,115200,230400,460800,921600 Baud Rates) Baud Rate Used Power on default rate (Possible

34

3.5

Microcontroller LCD Interfacing

Above is the quite simple schematic. The LCD panels Enable and Register Select is connected to the Control Port. The Control Port is an open collector / open drain output. Therefore by incorporating the two 10K external pull up resistors, the circuit is more portable for a wider range of computers, some of which may have no internal pull up resistors. I make no effort to place the Data bus into reverse direction. Therefore I had wire the R/W line of the LCD panel, into write mode. This will cause no bus conflicts on the data lines. As a result I cannot read back the LCDs internal Busy Flag which tells us if the LCD has accepted and finished processing the last instruction [20]. This problem is overcome by inserting known delays into my program. The 10k Potentiometer controls the contrast of the LCD panel. Nothing fancy here. I used a power supply of 5volt. The user may select whether the LCD is to operate with a 4-bit data bus or an 8- bit data bus. If a 4-bit data bus is used, the LCD will require a total of 7 data lines. If an 8-bit data bus is used, the LCD will require a total of 11 data lines [20]. LCD with 8bit data bus is used for this design. The three control lines are EN, RS, and RW. EN line must be raised/lowered before/after each instruction sent to the LCD regardless of whether that instruction is read or write text or instruction. In short, I manipulate EN when communicating with the LCD.
[

35

CHAPTER FOUR
4.1 Testing a DB-9 RS-232 serial port in HyperTerminal

This procedure explains how to troubleshoot a COM card using HyperTerminal. Before testing my serial ports, I first hook up a loopback. A loopback connects the output signal (TXD) to the input signal (RXD) in a single serial port connector to make it seem like there are two ports connected together. 4.1.1 Making a loopback Steps Turn off the computer. Connect RXD (pin 2) and TXD (pin 3) of the serial port. Use a loop-back connector if available, or any kind of conductive wire, even a paper clip [21]. Turn on the computer. I am now ready to test the port.

DB9 interface Running HyperTerminal Step Procedure Description Launch HyperTerminal. In Windows, select Programs/ Accessories/

Communications/HyperTerminal. Create a new session. When prompted, give the session any name I wish.
36

Select the COM # associated with the computer, I am now set up to test the port. With the session open, type any text. If the text I type is echoed on the screen, the port is functioning properly. Close the session. Repeat all above steps to test additional you will first need to connect the Loopback Ports [22]. On the other ports using the steps above. 4.2 Testing and Observations

After inclusion of the validation module in the program code, I test the module with the device called universal programmer. In this prototype I used only one valid number. With more memory available three or four valid numbers can be included. When a message is sent to number carried by the SIM of the MODEM, the validation module of the program checks character by character the senders number with the number stored in the memory as the valid or authentic number. I then look for signals on the TX and RX lines. What you see below on the left are the signals on these lines with the ECHO being ON (ATE1). The corresponding picture on the right depicts the modem response after about 460 ms (variable as per message length: D) delay with the new message Test 12345 Please submit your thesis 12345 there will be a meeting by 2pm 12345 I want to see Mr. Musa 12345 I will not come to school today 12345 please enemy alert 12345 I am in India 12345 please hurry up 1234 I will be in office in the next 30 minute Result Please submit your thesis There will be a meeting by 2pm I want to see Mr. Musa I will not come to school today Please enemy alert I am in India Please hurry up I will be in office in the next 30 minute

37

12345 is the password of the GSM electronic notice board. Any message a user want to send has to be preceded by 12345 spaces the message. A user will then send the message to the GSM number that is inside the Motorola c168

4.3

Initializations

The baud rate of the modem was set to be 9600 bps using the HyperTerminal, The ECHO from the modem was turned off using the command ATE0 at the HyperTerminal. For serial transmission and reception to be possible both the DTE and DCE should have same operational baud rates. Hence to set the microcontroller at a baud rate of 9600bps, I set terminal count of Timer 1 at 0FFh (clock frequency = 1.8432). The TCON and SCON registers were set accordingly.

4.4.1 Serial transfer using TI and RI flags After setting the baud rates of the two devices both the devices are now ready to transmit and receive data in form of characters. Transmission is done when TI flag is set and similarly data is known to be received when the Rx flag is set. The microcontroller then sends an AT command to the modem in form of string of characters serially just when the TI flag is set. After reception of a character in the SBUF register of the microcontroller (response of MODEM with the read message in its default format or ERROR message or OK message), the RI flag is set and the received character is moved into the physical memory of the microcontroller [22]. 4.4.2 Validity Check After serially receiving the characters the code then checks for start of the senders number and then compares the number character by character with the valid number pre stored in the

38

memory. Since we are employing just one valid number, we are able to do the validation process dynamically i.e. without storing the new message in another location in the memory. For more than one valid numbers we would require more memory locations to first store the complete (valid/invalid) message in the memory and then perform the comparison procedure. 4.4.3 Display After validity check the control flow goes into the LCD program module to display the valid message stored in the memory. In case of multiple valid numbers all invalid stored messages are deleted by proper branching in the code to the delete-message module.

4.4

Programmer

When we have to learn about a new computer we have to familiarize about the machine capability we are using, and we can do it by studying the internal hardware design (devices architecture), and also to know about the size, number and the size of the registers. A microcontroller is a single chip that contains the processor (the CPU), non-volatile memory for the program (ROM or flash), volatile memory for input and output (RAM), a clock and an I/O control unit. Also called a "computer on a chip," billions of microcontroller units (MCUs) are embedded each year in a myriad of products from toys to appliances to automobiles. For example, a single vehicle can use 70 or more microcontrollers. The following picture describes a general block diagram of microcontroller. 89S52: The AT89S52 is a low-power, high-performance CMOS 8-bit microcontroller with 8K bytes of in-system programmable Flash memory. The device is manufactured using Atmels high-density nonvolatile memory technology and is compatible with the industry-standard 80C51 instruction set and pin out. The on-chip Flash allows the program memory to be reprogrammed in-system or by a conventional nonvolatile memory pro-grammar. By combining a versatile 8-bit CPU with in-system programmable Flash on a monolithic chip, the Atmel AT89S52 is a powerful microcontroller, which provides a highly flexible and cost-effective solution to many, embedded control applications. The AT89S52 provides the following standard features: 8K bytes of Flash, 256 bytes of RAM, 32 I/O lines, Watchdog timer, two data pointers, three 16-bit timer/counters, a six-vector two-level interrupt architecture, a full duplex serial port, on-chip oscillator, and clock circuitry. In addition, the AT89S52 is designed with static logic for operation down to zero frequency and supports two software selectable power saving modes. The
39

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 con-tents but freezes the oscillator, disabling all other chip functions until the next interrupt

40

The hardware is driven by a set of program instructions, or software. Once familiar with hardware and software, the user can then apply the microcontroller to the problems easily. The pin diagram of the 8051 shows all of the input/output pins unique to microcontrollers:

The following are some of the capabilities of 8051 microcontroller. Internal ROM and RAM I/O ports with programmable pins Timers and counters Serial data communication

The 8051 architecture consists of these specific features: 16 bit PC &data pointer (DPTR) 8 bit program status word (PSW) 8 bit stack pointer (SP) Internal ROM 4k
41

Internal RAM of 128 bytes. 4 register banks, each containing 8 registers 80 bits of general purpose data memory 32 input/output pins arranged as four 8 bit ports: P0-P3 Two 16 bit timer/counters: T0-T1 Two external and three internal interrupt sources Oscillator and clock circuits.

4.5

Simulator

KEIL Micro Vision is an integrated development environment used to create software to be run on embedded systems (like a microcontroller). It allows for such software to be written either in assembly or C programming languages and for that software to be simulated on a computer before being loaded onto the microcontroller. The software used is c programming

42

Vision3 is an IDE (Integrated Development Environment) that helps write, compile, and debug embedded programs. It encapsulates the following components: A project manager. A make facility. Tool configuration. Editor. A powerful debugger.

To create a Vehicles Location Finder in Parking Project in uVision3: 1. Select Project - New Project. 2. Select a directory and enter the name of the project file. 3. Select Project Select Device and select a device from Device Database.
43

4. Create source files to add to the project 5. Select Project - Targets, Groups, and Files. Add/Files, select Source Group1, and add the Source files to the project. 6. Select Project - Options and set the tool options. Note that when the target device is selected from the Device Database all-special options are set automatically. Default memory model settings are optimal for most applications. 7. Select Project - Rebuild all target files or Build target. To create a new project, simply start micro vision and select Project=>New Project from the pulldown menus. In the file dialog that appears, a filename and directory was chosen for the project. It is recommended that a new directory be created for each project, as several files will be generated. Once the project has been named, the dialog shown in the figure below will appear, prompting the user to select a target device. The chip being used is the AT89S52, which is listed under the heading Atmel.

Next, Micro Vision was instructed to generate a HEX file upon program compilation. A HEX file is a standard file format for storing executable code that is to be loaded onto the microcontroller. In the Project Workspace pane at the left, rightclick on Target 1 and select Options for Target 1 .Under the Output tab of the resulting options dialog, ensure that both the Create Executable and Create HEX File options are checked. Then click OK.

Next, a file must be added to the project that will contain the project code. To do this, expand the Target 1 heading, rightclick on the Source Group 1 folder, and select Add files Create a new blank file (the file name should end in .c), select it, and click Add. The new file should now appear in the Project Workspace pane under the Source Group 1 folder. Double-click on the newly created file to open it in the editor. To compile the program, first save all source files by clicking on the Save All button, and then click on the Rebuild All Target Files to compile the program as shown in the figure below. If any errors or warnings occur during compilation, they will be displayed in the output window at the bottom of the screen. All errors and warnings will reference the line and column number in which they occur along with a description of the problem so that they can be easily located [23].
44

When the program has been successfully compiled, it can be simulated using the integrated debugger in Keil Micro Vision. To start the debugger, select Debug=>Start/Stop Debug Session from the pulldown menus. At the left side of the debugger window, a table is displayed containing several key parameters about the simulated microcontroller, most notably the elapsed time (circled in the figure below). Just above that, there are several buttons that control code execution. The Run button will cause the program to run continuously until a breakpoint is reached, whereas the Step Into button will execute the next line of code and then pause (the current position in the program is indicated by a yellow arrow to the left of the code). 4.6 PRO51 BURNER SOFTWARE

PRO51 BURNER provides you with software burning tools for 8051 based Microcontrollers in their Flash memory. The 51 BURNER tools, you can burn AT89C/SXXXX series of ATMEL

microcontrollers.

45

A v iew of PRO 51

4.7

Component List

VEHICLS LOCATION FINDER FOR PARKING


Name Regulator Capacitor Capacitor Ceramic Capacitor Diode Push Button Mobile Phone LCD 40 Pin Base 8051(AT89S52) Oscillator LED Resistance Resistance Resistance Buzzer BC547 220 1k 10k 11.0592mhz 16*2 Capacity 7805 1000f 10f 22pf Quantity 1 1 1 2 4 1 1 1 1 1 1 1 2 1 2 1 1 X1 D5 R1,R4 R3 R2,R5 BUZ1 Q1 U2 Code U1 C1 C2 C3,C4 D1,D2,D3,D4

46

CHAPTER FIVE
5.1 Conclusion

GSM and GPRS based Designs have developed another innovative and Public utility product for mass communication [1]. This is a Vehicle Alarm Control Device which control the Vehicle Alarm through messages received as SMS or GPRS Packets and also send acknowledgement of task. Such Devices can be used at different areas of the human being life. Such as malls, cinema houses etc. Sent command from Mobiles or PCs to these devices for move the motor left, right, and stop. These devices are designed to remotely control the Vehicle Alarm from anywhere and anytime. Wireless communication has announced its arrival on big stage and the world is going mobile. 5.2 Problem Encountered
During soldering, many of the connection become short cktd. So we desolder the connection and did soldering again. A leg of the crystal oscillator was broken during mounting. So it has to be replaced. LED`s get damaged when we switched ON the supply so we replace it by the new one. TROUBLESHOOT Care should be taken while soldering. There should be no shorting of joints. Proper power supply should maintain.

5.2

Future Improvement

In my project I am sending messages through GSM network and Control the home devices by utilizing AT (ATTENTION) commands. The same principle can be applied to display the message on electronics display board appliances at a distant location.

Robots can be controlled in a similar fashion by sending the commands to the robots. These commands are read by using AT commands and appropriate action is taken. This can be used for spy robots at distant locations, utilized by the military to monitor movement of enemy troops.
47

Currently farmers have to manually put on or off pumps, drippers etc by using electric switches. Using the principle of AT commands we can put on or off these appliances remotely.

5.3

Recommendation

It is highly recommended that electronic board should be constructed for this new system (GSM electronic notice board)

REFERENCES
1. 2. 3. 4. 5. 6. The 8051Microcontroller by Kenneth J. Ayala The 8051 Microcontroller and Embedded Systems by Muhammad Ali Mazidi. Principles and Applications of GSM by Vijay Garg. Artificial Intelligence Elain Rich & Kevin Knight, Tata Mc Graw Hill, 2nd Edition. Artificial Intelligence A Modern approach Slaurt Russel and Peter Norving, Pearson Education, 2nd Edition. Introduction to Robotics P.J.Mc Kerrow, Addisson Wesley, USA, 1991 Bernard Sklar, Digital Communications: Fundamentals and Applications, Prentice Hall, 2001. 7. A. Clark and R. Harun, Assessment of kalman-_lter channel estimators for an HF radio link," IEE Proceedings, vol. 133, pp. 513{521, Oct 1986. 8. ETS 300 502. European Digital Cellular Telecommunication System (Phase 2); Teleservices Supported by a GSM Public Land Mobile Network (PLMN). European Telecommunications Standards Institute. September 1994. 9. Matthew C. Valenti and Jian Sun, Chapter 12: Turbo Codes, Handbook of RF and Wireless

10. GSM Multiple Access Scheme, http://www.eecg.toronto.edu/~nazizi/gsm/ma/ William Stallings Data and Computer Communications 7th Edition: Chapter 9 Spread Spectrum, http://juliet.stfx.ca/~lyang/csci465/lectures/09-SpreadSpectrum-new.ppt 11. ETS 300 608. Digital Cellular Telecommunication System (Phase 2); Specification of the Subscriber Identity Module-Mobile Equipment (SIM-ME) Interface. European Telecommunications Standards Institute. May 1998.

48

12. ETR 100. European Digital Cellular Telecommunication System (Phase 2); Abbreviations and Acronyms. European Telecommunications Standards Institute. April 1995. 13. Jrg Eberspcher and Hans-Jrg Vgel. GSM switching, services and Protocols. John Wiley and Sons, 1999. 14. Klaus Vedder GSM: Security, Services, and SIM. State of the art in Applied Cryptography. Course on Computer Security and Industrial Cryptography. Leuven, Belgium, June 3-6, 1997. 15. J. Wu and A. H. Aghvami, \A new adaptive equalizer with channel estimator for mobile radio communications," IEEE Transactions on Vehicular Technology, 16. L. J. Cimini, Analysis and simulation of a digital mobile channel using orthogonal frequency division multiplexing," IEEE Transactions on Communications, vol. 33, pp. 665{675, July 1985. 17. B. Saltzberg, Performance of an ancient parallel data transmission system," IEEE Trans. Commun. Techno., pp. 805{813, December 1967} 18. M. Zimmermann and A. Kirsch, The AN/GSC-10/KATHRYN variable rate data modem for HF radio," IEEE Trans. Commun.Techn., vol. CCM{15,16} 19. Hardware and user manuals of the modem from MOTOROLA C168 http://developer.motorola.com/getDocument.do?docId=65054 20. http://www.mobilegpsonline.com/downloads/GM28-29%20Datasheet%20R1G.pdf 21. http://www.mobilegpsonline.com/GSMJC01Spec.pdf 22. http://www.visualgsm.com/wire_sms_index.htm 23. http://en.wikipedia.org/wiki/Gsm

APPENDIX A
USER MANUAL
49

1. Put the power cable into any ac(alternating current) supply, you will see a green light 2. Locate the power button and switch it on 3. Insert the headphone into the mobile phone; a welcome message will be scrolling on the screen. The welcome message is WELCOME TO FUTMINNA. 4. Send a message putting it in this format 12345 space message you are sending to the number inside the modem. Any GSM number will work 5. Ensure the message you are sending does not exceed 16 characters neglecting the password and the space. It is 16 characters because the LCD used is 16 characters. A bigger LCD can be bought to display more number of characters 6. Ensure you have recharge card on your sim because the service provider will charge you based on the sms number you are sending the messages 7. The message will now display on the LCD 8. Send another message, the new message will also be displayed on the LCD but the old one will be deleted

APPENDIX B
TROUBLESHOOTING MANUAL FOR THE GSM ENOTICE BOARD
50

1. SYSTEM NOT POWER : check If the GREEN led IS POWER on and also check if the output voltage from the power supply is 5V or approximately 2. SYSTEM POWER BUT NO DISPLAY ON THE LCD: press the reset button on the system. The reset button is indicated with red color 3. NO MESSAGES ON THE LCD: check if the headphone is connected to the phone and also check if the phone is power 4. SYSTEM HANGED: press the rest button to re-initialize the memory of the embedded system 5. SYSTEM SHOWS SPECIAL CHARACTER: changed the max232 driver inside the system. Max232 is a receiver transmitter driver that is having 16pins 6. LCD CONTRAST IS FADED: rotate the potentiometer in the front panel of the LCD to see the text clearly. 7. BLANK OUTPUT DISPLAY: open the entire system and locate crystal oscillator. Crystal oscillator is harsh in colour. Replace the crystal oscillator with exactly 11.0592 MHz. 8. FAILS TO CONTROL DEVICE: Ensure that there is no messages on the phone memory and then reset the LCD also make sure the character send does not exceed 16 characters. Also make sure you put security code before the messages and you are sending the messages to the appropriate number. The format of the messages is 12345 fanon. 9. NO WELCOME MESSAGE AS YOU POWER ON: The system should display a scrolling welcome message as you power on the system. The welcome message to be

51

display is WELCOME TO PROJECTS. If no welcome message, ensure to connect the headphone to the mobile phone or you can use your hand to touch the headphone 10. NO RESPONSE FROM THE HEADPHONE: You can change the headphone and locate the RX, TX, and GND from the headphone before connecting it to the entire system. 11. IF THE MODEM WAS STOLEN: Get another phone from a GSM shop and replace it, ensure you program the phone and make sure the communication rate is set to 9600bps

APPENDIX C

52

PROGRAM FLOWCLODE
#include<reg52.h> sbit RS=P3^7; sbit EN=P3^6;

//--------------------------------------// Forward function declaration //--------------------------------------void Retry(void); void Txmsg(unsigned char k); unsigned char Rxmsg(void); void lcdinit(void); void lcdData(unsigned char l); void lcdcmd(unsigned char k);

//--------------------------------------// Main rotine //--------------------------------------void main() { unsigned char ret; TMOD=0x20; TH1=0xFD; SCON=0x50; TR1=1; // Configure UART at 9600 baud rate

lcdinit(); initdisplay(); DelayMs(5000); InitModem();

// Initialize LCD

// Initialize Modem

while(1) { ret=Rxmsg(); }

53

//---------------------------------------------------// Retry subroutine to check the connectivity of modem

//---------------------------------------------------void Retry(void) { unsigned char i=0;

retry: lcdcmd(0x01); DelayMs(10); lcdcmd(0x80); DelayMs(10);

for(i=0;i<5;i++) b[i]=0x00;

i=0; while(a[i]!='\0') { SBUF=a[i]; while(TI==0); TI=0; lcdData(a[i]); i++; } // AT sending

lcdData(' '); SBUF=0x0d; while(TI==0); TI=0;

// Enter

for(i=0;i<5;i++) { j=0; while(RI==0)

//command to recv data

54

{ if(j>=1000) goto retry; DelayMs(1); j++; } b[i]=SBUF; RI=0; lcdData(b[i]); } DelayMs(100);

for(i=0;i<5;i++) { if(b[i]=='E' || b[i]=='R') goto retry; if(b[i]=='O' || b[i]=='K') { return; } } goto retry; }

//command to recv data

//--------------------------------------// Modem initialization subroutine //--------------------------------------void InitModem(void) { unsigned int j=0; unsigned char i=0,k=0; unsigned char d[6];

ReInit: //Retry();

for(i=0;i<6;i++)

55

d[i]=0x00;

i=0; while(a[i]!='\0') { SBUF=a[i]; while(TI==0); TI=0; lcdData(a[i]); i++; } // ATE0 sending to turn off the echo

lcdData(' '); SBUF=0x0d; while(TI==0); TI=0; }

// Enter

InitS: for(i=0;i<6;i++) d[i]=0x00;

lcdcmd(0x01); DelayMs(10); lcdcmd(0x80); DelayMs(10);

i=0; while(b[i]!='\0') { SBUF=b[i]; while(TI==0); TI=0; lcdData(b[i]); i++; } // sending AT+CPMS to set the preffered memory location

56

lcdData(' '); SBUF=0x0d; while(TI==0); TI=0;

// Enter

for(i=0;i<5;i++) { j=0; while(RI==0) { if(j>=1000) goto ReInit; DelayMs(1); j++; } d[i]=SBUF; RI=0; lcdData(d[i]); }

//command to recv data

for(i=0;i<5;i++) { if((d[i]=='E') || (d[i]=='R')) goto ReInit; if((d[i]=='+') || (d[i]=='C')) goto InitS2; }

//command to compare data

InitS2: for(k=0;k<10;k++) { for(i=0;i<6;i++) d[i]=0x00;

} for(i=0;i<5;i++) { //command to recv data

57

j=0; while(RI==0) { if(j>=1000) goto ReInit; DelayMs(1); j++; } d[i]=SBUF; RI=0; lcdData(d[i]); } DelayMs(100); } return; }

//--------------------------------------// Recieve message subroutine //--------------------------------------unsigned char Rxmsg(void) {

lcdData('t'); SBUF='t'; while(TI==0); TI=0;

lcdData('m'); SBUF='m'; while(TI==0); TI=0;

lcdData('g'); SBUF='g'; while(TI==0);

58

TI=0;

lcdData('r'); SBUF='r'; while(TI==0); TI=0;

lcdData('='); SBUF='='; while(TI==0); TI=0;

lcdData('1'); SBUF='1'; while(TI==0); TI=0;

lcdData(0x0d); SBUF=0x0d; while(TI==0); TI=0;

DelayMs(500); lcdcmd(0x80);

for(i=0;i<102;i++) { j=0; while(RI==0) { if(j>=1000) goto timeout; DelayMs(1); j++; } c[i]=SBUF; RI=0;

59

lcdData(c[i]); }

timeout:

for(i=0;i<5;i++) { if((c[i]=='E') || (c[i]=='R')) return ret; }

//command to recv data

for(i=0;i<102;i++) { goto sucess; } goto retry;

i=i+8;

while(c[i+4]!='O' && c[i+5]!='K') { lcdData(c[i]); i++; DelayMs(100); } DelayMs(10000);

delete: for(i=0;i<102;i++) { c[i]=0x00; }

SBUF='a'; while(TI==0); TI=0;

60

lcdData('t'); SBUF='t'; while(TI==0); TI=0;

lcdData('+'); SBUF='+'; while(TI==0); TI=0;

lcdData('c'); SBUF='c'; while(TI==0); TI=0;

lcdData('m'); SBUF='m'; while(TI==0); TI=0;

lcdData('g'); SBUF='g'; while(TI==0); TI=0;

lcdData('d'); SBUF='d'; while(TI==0); TI=0;

lcdData('='); SBUF='='; while(TI==0); TI=0;

lcdData('1');

61

SBUF='1'; while(TI==0); TI=0;

lcdData(0x0d); SBUF=0x0d; while(TI==0); TI=0;

// Enter

for(i=0;i<5;i++) { j=0; while(RI==0) { if(j>=1000) goto delete; DelayMs(1); j++; } c[i]=SBUF; RI=0; lcdData(c[i]); } DelayMs(1000);

//command to recv data

return ret; }

//--------------------------------------// Lcd initialization subroutine //--------------------------------------void lcdinit(void) { lcdcmd(0x38); DelayMs(250); lcdcmd(0x0E); DelayMs(250);

62

lcdcmd(0x01); DelayMs(250);lcdcmd(0x06); DelayMs(250); lcdcmd(0x80); DelayMs(250); }

//--------------------------------------// Lcd data display //--------------------------------------void lcdData(unsigned char l) { EN=0; return; }

//--------------------------------------// Lcd command //--------------------------------------void lcdcmd(unsigned char k) { P1=k; DelayMs(1); EN=0; return; }

//--------------------------------------// Delay mS function //--------------------------------------void DelayMs(unsigned int count) { 11.0592 Mhz unsigned int i; while(count) { i = 115; while(i>0) i--; // 115 exact value // Keil v7.5a // mSec Delay

63

count--; } }

void initdisplay(void) { unsigned char d=0,a[]="Home Automation Modem Init..."; while(d!=15) { lcdData(a[d]); d++ } lcdcmd(0xc0); while(a[d]!='\0') { lcdData(a[d]); d++ } } ; ;

APPENDIX D CONSTRUCTION STAGES


64

VEROBOARD STAGE

TESTING STAGE

65

COMPLETED WORK

SIMULATION STAGE

66

4.3

Operational Flowchart

67

For further details regarding to software and hardware and any further queries contact to the given address.

HBeonLabs
Off. No. 46, 1st Floor, Kadamba Complex Gamma-I, Greater Noida (India) - 201308

Contact us:
+91-120-4298000 +91-9212314779

info@hbeonlabs.com training@hbeonlabs.com

www. hbeonlabs.com

16th USENIX Security Symposium,

68

Vous aimerez peut-être aussi