Chapter - I
Chapter - I
1. INTRODUCTION
Nowadays, the communications becomes very simple, fast, interactive and more compact, that makes the global as a small village. So it is very easy of anyone to subscribe in the local or global telecommunication networks with individual mobile phone device. Mobile devices, such as mobile phones, are becoming multipurpose devices. These devices are capable of storing data as well as running custom application. As more people adopt these devices and begin to use them for personal or business tasks, the need for controlling access to the data stored within the devices will become vital With todays and tomorrows wireless technologies, such as IEEE 802.11, Blue tooth and G3, mobile devices will frequently be in close and interactive communication. Many environments including offices, meeting rooms, automobiles and class rooms already contains many computers and computerized applications, and the smart embedded computation .PC remote control with small mobile device is a challenging topic of mobile/ubiquitous computing. Enabling users to use data and functions stored in/served by their home/office PCs from anywhere with small mobile devices is beneficial because users can access the data/functions at any time they want without carrying heavy notebook PCs. Furthermore, users can control applications they want to keep running even while they are out. Several systems and methods have been proposed and developed for controlling remote PCs with mobile phone. To make an ordinary home as a future and a smart home, all appliances must be computerized controllable. To do that, its very preferable that using PC. As the PCs are provided with input/ output ports, which makes easily to interface PC with the real world control applications. The interface is the combination of hardware and software embodies, the hardware is an electronic circuit that matches with the PCs port protocol signal, and the software is the programming of the PC to manage all input/output signals from its ports, hence, the interface hardware circuits. In our software, for the purpose of interfacing with the real time control applications, the PC parallel port is used. Since the parallel port works well as hardware interfacing. The parallel port pins are TTL levels output (originally derived by a 74LS374 octal latch). This means that they put output 0 to
0.8 dc volt logically 0, and 2.4 to 5 dc volt logically 1. According to the parallel port behaviors, there are 8 bits for data input/output, which can produce 256 different control signal statuses . The data bit signals can be managed by software that applied for this purpose, the powerful software language is VB.NET which can access the ports more efficiently than other available computer program languages. As the whole project software here is written and implemented through the use of Microsoft Visual VB.NET. Inside the program by using the command PortOut which is a member in io.dll header file could be used to directly access all data port signals , for example the following code: PortOut (&H378, &H15) makes all data pins of parallel port to low logic (zero output signal), and the following: PortOut(&H378, &H19) means to make the output high. There are many ways could be used to control all homes appliances by sending appropriate signals to the PCs ports, parallel or serial. Then these signals inserted to the interface hardware system that prepared, designed and matches with the output signals, then depend on the signal, the interface hardware control or manage one or more of the home appliances. The designed program will make the PC parallel port to send signals which appear as approximately 5 volts at one or more bits of eight data bits on the parallel port. These volts will change the status of the interface hardware .In order to do that, there are many electronic circuits which can be useful for this purpose, or one could build its own electronic circuits. In most cases the general Transistor is used as a switch mode operation and the mini contactors. As the interface system is directly connected to the PC parallel port, its at high degree recommended to protect the PC and its ports from any back feed misused, thus achieved by using any available type of buffering. Apart from that many times we go outside the home/office without System in on condition so from this software we can switch off, restart, or log off, or switch user .We can also empty our recycle bin by just sending a sms.
2. LITERATURE REVIEW
2.1 Application Programming Interface
An application programming interface (API) is a set of routines, data structures, object classes and/or protocols provided by libraries and/or operating system services in order to support the building of applications. An API may be: 1. Language-dependent; that is, available only in a particular programming language, using the particular syntax and elements of the programming language to make the API convenient to use in this particular context. 2. Language-independent; that is, written in a way that means it can be called from several programming languages (typically an assembly/C-level interface). This is a desired feature for a service-style API that is not bound to a particular process or system and is available as a remote procedure call.
The API itself is largely abstract in that it specifies an interface and controls the behavior of the objects specified in that interface. The software that provides the functionality described by an API is said to be an implementation of the API. An API is typically defined in terms of the programming language used to build an application. The related term, ABI (Application Binary Interface), is a lower level definition concerning details at the Assembly language level. For example, the Linux Standard Base is an ABI, while POSIX is an API. The API acronym may sometimes be used as a reference not only to the full interface but also to a single function or even a set of multiple APIs provided by an organization. Thus the scope is usually determined by the person or document that communicates the information
2.2.1 Content API delivery package contains headers and libraries for released APIs, documentation for each API and sample applications done with C++, C# and VB.NET using Microsoft Visual Studio 2005. Both 32 and 64 bit operating systems are supported. PC Connectivity API 3.2 contains the following APIs: Device Management API File System API Content Access API (since API 1.0) Updated! (since API 1.0) Updated! (since API 3.0) Updated!
Transmission of short messages between the SMSC and the handset is done using the Mobile Application Part (MAP) of the SS7 protocol. Messages are sent with the MAP mo- and mtForwardSM operations, whose payload length is limited by the constraints of the signalling protocol to precisely 140 octets (140 octets = 140 * 8 bits = 1120 bits). Short messages can be encoded using a variety of alphabets: the default GSM 7-bit alphabet (shown above), the 8-bit data alphabet, and the 16-bit UTF-16/UCS-2 alphabet.[26] Depending on which alphabet the subscriber has configured in the handset, this leads to the maximum individual Short Message sizes of 160 7bit characters, 140 8-bit characters, or 70 16-bit characters (including spaces). Support of the GSM 7-bit alphabet is mandatory for GSM handsets and network elements,[26] but characters in languages such as Arabic, Chinese, Korean, Japanese or Cyrillic alphabet languages (e.g. Russian)
must be encoded using the 16-bit UCS-2 character encoding (see Unicode). Routing data and other metadata is additional to the payload size.
Larger content (Concatenated SMS, multipart or segmented SMS or "long sms") can be sent using multiple messages, in which case each message will start with a user data header (UDH) containing segmentation information. Since UDH is inside the payload, the number of characters per segment is lower: 153 for 7-bit encoding, 134 for 8-bit encoding and 67 for 16-bit encoding. The receiving handset is then responsible for reassembling the message and presenting it to the user as one long message. While the standard theoretically permits up to 255 segments,[27] 6 to 8 segment messages are the practical maximum, and long messages are often billed as equivalent to multiple SMS messages. See Concatenated SMS for more information.
known as the Common Language Runtime (CLR). The CLR provides the appearance of an application virtual machine so that programmers need not consider the capabilities of the specific CPU that will execute the program. The CLR also provides other important services such as security, memory management, and exception handling. The class library and the CLR together compose the .NET Framework. Version 3.0 of the .NET Framework is included with Windows Server 2008 and Windows Vista. The current version of the framework can also be installed on Windows XP and the Windows Server 2003 family of operating systems. A reduced "Compact" version of the .NET Framework is also available on Windows Mobile platforms, including smart phones.
10
11
3. PROBLEM IDENTIFICATION
3.1 Problem Scenario
In modern days, we must use various high-tech machineries and equipments to get our jobs done and make the life easier. These machineries should be controlled by the homeowner from any location as the homeowner might be away from home at workplace or traveling in a different place in the weekend. Thus a system of remote monitoring and controlling are very much necessary. EAdministration of Devices is one of these types of system equipped with home appliances which we wish to control smartly from anywhere. Some products are commercially available which allow remote home appliance controlling through internet which is undoubtedly emerging. But it lacks the true sense of real mobility and security, making the remote home appliance controlling a limited term than it is supposed to be. In search of a true remote and adequately secure solution to be really effective and practicable, mobile telephony is better than any other solutions. Mobile phones have become almost an inseparable part of civil lives today. In this paper we introduce a new mechanism so that the ordinary services of the mobile phones can be leveraged to communicate with and control the home appliances and make our homes a really smart one.
The idea behind this project is explained below. Suppose that a housewife was working in her home with all appliances in on state. For ex. Suppose that the fans, coolers, washing machines, TV were in on state. Suddenly a call has arrived on her phone and she go out of her home in emergency without switching off the devices. After reaching at the destination she noticed that the devices were all in ON state. There is no one in house to call to switch off the devices. Then she realized that if there could a service through which she can control the appliances.
For the emergency cases like that described earlier we needed an application that provides us the services to control the appliances.
12
There are lot many software's available in the market and a new attempt is made every day to make the system mobile and user friendly but these softwares are not up to the mark and do not manifest the real world to the mark. Where these software's are restricted to some range of area our software will work overseas and will allow the user to think behind the curtain where geographical areas rule over the functionality and mobility of the devices. This principle can be used to drive as many devices as possible by using some of external hardwares.
13
Chapter IV Methodology
14
4. METHODOLOGY
15
Figure 4.1 Life Cycle Model The phases of a problem solving loop 1) Status quo: - represents the current state of affairs 2) Problem definition: - identifies the specific problem to be solved 3) Technical development:- solves the problem through the application of some technology. 4) Solution integration:- delivers the result e.g. documents ,programs, data, some function, new product.
16
This problem-solving loop applies to many different levels of resolution. It can be used at macro level for entire application, mid level when programs are engineered, and even at line of code level. As this is a loop there is problem solving loop at every level i.e. looping inside a loop. But this simplified view leads to very important idea: regardless of process model that is chosen for a software project, all of the stages: status quo, problem definition, technical development and, solution integration coexist simultaneously at some level of detail this four stages apply equally to the analysis of a complete application an o generation of a small segment of code. As the work progress toward a complete system the sages are applied recursively to user need and technical specification of software. There are different types of process models they are
Waterfall model or linear sequential model. The prototyping model. The RAD model (Rapid Application Development) The incremental model The spiral model The concurrent development model.
Our project software fits in the WATERFALL MODEL because it is not much costly software. After the analysis all the requirements were fixed and frozen. This suggests a systematic and sequential approach to software development that begins at system level and progresses through analysis, design, coding, testing and support.
17
It is a simplest model, which states that the phases are organized in a linear model. The model was originally proposed by Royce. The model encompass following activities: 1) System/information engineering and modeling. 2) Software requirement analysis-The aim of requirement analysis is to understand the exact requirements and to document them properly. 3) Design-It basically concerns with identifying software components like functions, data streams and data stores. 4) Code generation-It involves the translation of design specifications into source code. 5) Testing-It involves two techniques:Integration testing - testing of integrated modules. Acceptance testing - planning and execution of various types of tests. 5) Support-It involves three types of maintenance: Corrective Perfective Adaptive
18
Advantages 1) All phases are clearly defined. 2) One of the most systematic methods for software development. 3) Being oldest, this is one of the time tested model. 4) It is simple and easy to use.
Disadvantages 1) Real projects rarely follow sequential model 2) Poor model for complex and object oriented projects. 3) Poor model for long and ongoing projects 4) High amount of risk and uncertainness
19
20
21
4.3.1 Software Requirements 1. Windows XP or later versions 2. .NET Framework 3.5 4.3.2 Hardware Requirements
Minimum 800 MHz Intel Pentium III processor, or equivalent/better 256 MB of RAM 1 1 1 1
Processor Speed/Type
CPU Memory MOBILE PHONE MOBILE DATA CABLE TRANSMITTER CIRCUIT RECIEVER CIRCUIT
22
23
The block diagram of the system is shown in Fig. 2, where the PC is read and receives the SMS from the mobile phone. Hence, according to the type of mobile phone that in use, the available software which comes with the type of mobile phones manufactures, which includes the recognizable device software, reading, saving, and managing the data of the mobile phone device inside the PC. Here, as the type of the mobile phone is Nokia, the general Nokia mobile phone which is the Nokia PC Suite API software is used.
24
Figure 4.5 The Block diagram of the remote PC control system As the mobile phone is recognized by the PC and its received the SMS message from any other mobile phone, then its send the message to the PC. The PC read the message. Searching inside the received SMS message for any available control words this is done by using the appropriate. Thus, the program is managing the SMS data and compares with any available control words that the whole project is designed for. The program in this project will continuously search inside the receiving SMS for any probability of containing the control words, so if the control words are not found in the received message, the program will delete the entire message file, so as to prepare this file to receive a new SMS message that may send by the remote mobile phone at any time. The comparison with available control words will achieved after the program has found the control words inside the message. Then, the program will prepare and initialize the parallel port to send the proportional signal to the interface hardware that designed in this project; this signal will be proportional with the control appliance in the house with the SMS message that delivered by the PC from the remote mobile phone. If the control word is for handling PC operation then respective process is started using coding.
25
The program is using the internal system timer for continuously observing the received message from mobile phone. On arrival of new sms, PC reads the new message from the cell phone Searching the entire message for acceptable codes that matches between the two mobile phones and the user If there are no such codes, then software again starts for arrival of new sms, otherwise. If the program found the acceptable codes, then carry the words between these codes to compare them with a list of control words that the system is designed for controlling the corresponding home appliances or operating the PC.
IV.
V.
VI.
If the Control word is for other devices, the program through the parallel port send a suitable signal to their bit so as can be carry out by the interface hardware that connected to the parallel port and the home appliances.
VII.
Now this sms is deleted from the mobile phone. Hence, the program is return to first step to repeat the above procedure continually.
VIII.
Hence, the program is return to first step to repeat the above procedure continually. The flowchart for the program is shown in the following figure.
26
27
28
29
30
To find the user who currently logged in the machine We can send message from one machine to another machine without physical presence
31
32
33
After receiving message from the cell phone which is connected to PC, software automatically check whether the message is from authenticated user and then executing the specified command i.e ERB (Empty Recycle Bin)
34
35
36
37
6.1 Conclusion
The conclusion can be summarized in the following points:
I.
Using the SMS message in mobile phone, which is very famous by the mobile user, this make this system be very effective and attractive method. The parallel port data rate is at high degree when compared with other ports. Making all home appliances controllable is very attractive by many house owners, office and so on. The system cost falls under acceptable range, as nowadays many houses have a PC, and anyone can get a skill working with the PC.
II.
III. IV.
38
BIBLIOGRAPHY
Books:
I.
Michael Halvorson, Microsoft Visual Basic 2008 Step by Step, Microsoft Press,USA,1st Edition,2008
II.
Website:
I. II. III. IV. V.
39