AN RASPBERRY PI BASED SYSTEM FOR COLLISION AVOIDANCE AND CRACK DETECTION ON RAIL TRACK
Abstract
- Currently, most of railway inspections are manually conducted by railroad
- This inspection takes too much time to inspect the rail collision and then inform to the railway authority people. In this way it may lead to disaster.
- Hence to avoid delay and improve the accuracy, our propose system will automatically monitor the rail by using vision based method and vibration based method.
- This monitoring is unacceptable for slowness and lack of objectivity, because the results are related to the ability of the observer to recognize critical situations. So, we proposed automatic visual inspection of rail using Raspberry pi microcontroller and GSM
CHAPTER 1
INTRODUCTION
As the railway transportation network is considered to be the safest and easiest network, but nowadays, it is not that much safer as the lot of collisions and accidents occur due to improper communication among the network, wrong signaling, worst weather condition, immediate change in track or route change. It is very difficult to stop such collisions because of speed of moving trains, which needs a lead distance to stop. There have been many train accidents all over the world. As per the report from CNN IBN India dates Sept 2011 85% of the train accidents are due to human errors . The primary goal of our train collision detection system is to identify possible train collision ahead of time and to report these to the main control room or driver before collision happens. Currently there is no solution to avoid train collision. Indian Railways have implemented solution based on ACD (anti-collision device) system. They have inherent problems in Station section and near mountains due to its design concept of using GPS for track detection and have high cost of implementation [2]. My system is used to eliminate train accidents by exploiting automated surveillance system, it is based on RFID, ARM Controller and GSM, which will help eliminate problems stated above. In this system each train track is identified by track id, every train reads and sends its track id to nearby trains. If two trains are on same track id then alert is send to main control room or to the train drivers.
CHAPTER 2
EMBEDDED SYSTEMS
Overview of embedded systems
An embedded system is a special-purpose computer system designed to perform one or a few dedicated functions, often with real-time computing constraints. It is usually embedded as part of a complete device including hardware and mechanical parts. In contrast, a general-purpose computer, such as a personal computer, can do many different tasks depending on programming. Embedded systems have become very important today as they control many of the common devices we use. Since the embedded system is dedicated to specific tasks, design engineers can optimize it, reducing the size and cost of the product, or increasing the reliability and performance. Some embedded systems are mass-produced, benefiting from economies of scale. Embedded systems range from portable devices such as digital watches and MP3 players, to large stationary installations like traffic lights, factory controllers, or the systems controlling nuclear power plants. Complexity varies from low, with a single microcontroller chip, to very high with multiple units, peripherals and networks mounted inside a large chassis or enclosure. In general, “embedded system” is not an exactly defined term, as many systems have some element of programmability. For example, Handheld computers share some elements with embedded systems such as the operating systems and microprocessors which power them but are not truly embedded systems, because they allow different applications to be loaded and peripherals to be connected. Don't use plagiarised sources.Get your custom essay just from $11/page
Embedded systems provide several functions
- Monitor the environment; embedded systems read data from input sensors. This data is then processed and the results displayed in some format to a user or users
- Control the environment; embedded systems generate and transmit commands for actuators.
- Transform the information; embedded systems transform the data collected in some meaningful way, such as data compression/decompression although interaction with the external world via sensors and actuators is an important aspect of embedded systems, these systems also provide functionality specific to their applications. Embedded systems typically execute applications such as control laws, finite state machines, and signal processing algorithms. These systems must also detect and react to faults in both the internal computing environment as well as the surrounding electromechanical systems. There are many categories of embedded systems, from communication devices to home appliances to control systems. Examples include;
- Communication devices
e.g.: modems, cellular phones
- Home Appliances
e.g.: CD player, VCR, microwave oven
- Control Systems
e.g.: Automobile anti-lock braking systems, robotics, satellite control
Block diagram of an embedded system:
An embedded system usually contains an embedded processor. Many appliances that have a digital interface microwaves, VCRs, cars utilize embedded systems. Some embedded systems include an operating system. Others are very specialized resulting in the entire logic being implemented as a single program. These systems are embedded into some device for some specific purpose other than to provide general purpose computing.
Block diagram of a typical embedded system
Characteristics of embedded systems
Embedded systems are characterized by a unique set of characteristics. Each of these characteristics imposed a specific set of design constraints on embedded systems designers. The challenge to designing embedded systems is to conform to the specific set of constraints for the application.
Application Specific Systems
Embedded systems are not general-purpose computers. Embedded system designs are optimized for a specific application. Many of the job characteristics are known before the hardware is designed. This allows the designer to focus on the specific design constraints of a well-defined application. As such, there is limited user reprogram ability. Some embedded systems, however, require the flexibility of reprogram ability. Programmable DSPs are common for such applications.
Reactive Systems
As mentioned earlier, a typical embedded systems model responds to the environment via sensors and control the environment using actuators. This requires embedded systems to run at the speed of the environment. This characteristic of embedded system is called “reactive”. Reactive computation means that the system (primarily the software component) executes in response to external events. External events can be either periodic or aperiodic. Periodic events make it easier to schedule processing to guarantee performance. Aperiodic events are harder to schedule. The maximum event arrival rate must be estimated in order to accommodate worst case situations. Most embedded systems have a significant reactive component. One of the biggest challenges for embedded system designers is performing an accurate worst case design analysis on systems with statistical performance characteristics (e.g., cache memory on a DSP or another embedded processor). Real time system operation means that the correctness of a computation depends, in part, on the time at which it is delivered. Systems with this requirement must often design to worst case performance. But accurately predicting the worst case may be difficult on complicated architectures. This often leads to overly pessimistic estimates erring on the side of caution. Many embedded systems have a significant requirement for real time operation in order to meet external I/O and control stability requirements. Many real-time systems are also reactive systems.
Distributed Systems
A common characteristic of an embedded system is one that consists of communicating processes executing on several CPUs or ASICs which are connected by communication links. The reason for this is economy. Economical 4 8-bit microcontrollers may be cheaper than a 32-bit processors. Even after adding the cost of the communication links, this approach may be preferable. In this approach, multiple processors are usually required to handle multiple time-critical tasks. Devices under control of embedded systems may also be physically distributed.
Heterogeneous Architectures
Embedded systems often are composed of heterogeneous architectures (Fig 1.2). They may contain different processors in the same system solution. They may also be mixed signal systems. The combination of I/O interfaces, local and remote memories, and sensors and actuators makes embedded system design truly unique. Embedded systems also have tight design constraints, and heterogeneity provides better design flexibility.
Harsh environment
Many embedded systems do not operate in a controlled environment. Excessive heat is often a problem, especially in applications involving combustion (e.g., many transportation applications). Additional problems can be caused for embedded computing by a need for protection from vibration, shock, lightning, power supply fluctuations, water, corrosion, fire, and general physical abuse.
System safety and reliability
As embedded system complexity and computing power continue to grow, they are starting to control more and more of the safety aspects of the overall system. These safety measures may be in the form of software as well as hardware control. Mechanical safety backups are normally activated when the computer system loses control in order to safely shut down system operation. Software safety and reliability is a bigger issue. Software doesn’t normally “break” in the sense of hardware. However, software may be so complex that a set of unexpected circumstances can cause software failures leading to unsafe situations. Discussion of this topic is outside the scope of this book, but the challenges for embedded designers include designing reliable software and building cheap, available systems using unreliable components. The main challenge for embedded system designers is to obtain low-cost reliability with minimal redundancy.
Control of physical systems
One of the main reasons for embedding a computer is to interact with the environment. This is often done by monitoring and controlling external machinery. Embedded computers transform the analog signals from sensors into digital form for processing. Outputs must be transformed back to analog signal levels. When controlling physical equipment, large current loads may need to be switched in order to operate motors and other actuators. To meet these needs, embedded systems may need large computer circuit boards with many non-digital components. Embedded system designers must carefully balance system tradeoffs among analog components, power, mechanical, network, and digital hardware with corresponding software. Small and low weight Many embedded computers are physically located within some larger system. The form factor for the embedded system may be dictated by aesthetics. For example, the form factor for a missile may have to fit inside the nose of the missile. One of the challenges for embedded systems designers is to develop non-rectangular geometries for certain solutions. Weight can also be a critical constraint. Embedded automobile control systems, for example, must be light weight for fuel economy. Portable CD players must be light weight for portability purposes.
Cost sensitivity
Cost is an issue in most systems, but the sensitivity to cost changes can vary dramatically in embedded systems. This is mainly due to the effect of computer costs have on profitability and is more a function of the proportion of cost changes compared to the total system cost.
Power management
Embedded systems have strict constraints on power. Given the portability requirements of many embedded systems, the need to conserve power is important to maintain battery life as long as possible. Minimization of heat production is another obvious concern for embedded system
EMBEDDED SYSTEM
A system is something that maintains its existence and functions as a whole through the interaction of its parts. E.g. Body, Mankind, Access Control, etc A system is a part of the world that a person or group of persons during some time interval and for some purpose choose to regard as a whole, consisting of interrelated components, each component characterized by properties that are selected as being relevant to the purpose.
- Embedded System is a combination of hardware and software used to achieve a single specific task.
- Embedded systems are computer systems that monitor, respond to, or control an external environment.
- Environment connected to systems through sensors, actuators and other I/O interfaces.
- Embedded system must meet timing & other constraints imposed on it by environment.
An embedded system is a microcontroller-based, software driven, reliable, real-time control system, autonomous, or human or network interactive, operating on diverse physical variables and in diverse environments and sold into a competitive and cost conscious market. An embedded system is not a computer system that is used primarily for processing, not a software system on PC or UNIX, not a traditional business or scientific application. High-end embedded & lower end embedded systems. High-end embedded system – Generally 32, 64 Bit Controllers used with OS. Examples Personal Digital Assistant and Mobile phones etc. Lower end embedded systems – Generally 8, 16 Bit Controllers used with a minimal operating systems and hardware layout designed for the specific purpose.
CHAPTER 3
Literature survey
Efficient Monitoring System for Railways for Crack Detection
Railways serve people with numerous benefits like helping in reaching places very quickly, providing low priced fare travelling, etc. On the basis of such various advantages the railways provide, it is one of the most largely used mode of public transportation. During the recent times in Indian railways, frequent number of accidents have taken place due to fault like presence of cracks on rail tracks. This is making railways a dangerous option for travelling. The monitoring system used at present in Indian railways is proving to be inappropriate. To overcome the shortcomings of the currently used rail monitoring system for detection of cracks an efficient monitoring system has been proposed and explained in this paper. Along with it, the implementation result of the proposed system has been shown and described in the paper.
Crack detection in railway axle using horizontal and vertical vibration measurement
In this paper, numerical investigations are carried out to assess the possible use of vibration measurements to identify the presence of a fatigue crack in railway axles. A non-linear finite element model of a cracked axle, reproducing the crack breathing mechanism, is introduced. The solid model of the axle is built in the ABAQUS FEM software and a crack is introduced in it. Numerical simulations are presented for two different types of axle: hollow ones, as in passenger trains, and solid ones, as in freight trains. Simulation are carried out for different possible locations of the crack and different measuring points for the monitoring equipment. Results indicate that the presence of a crack in the shaft affects not only the vertical vibration signal, but also the horizontal (perpendicular to the axle axis) one, generating harmonic components of bending vibration at frequencies that are multiple integers of the frequency of revolution of the axle. Results revealed also that the horizontal vibration provides promising indicators of axle fault development because the effect of various sources of disturbance, namely wheel out-ofroundness, can be more easily dealt with.
A combined threshold and signature match method for the automatic detection of rail RCF cracks using an ACFM sensor
Detection of surface breaking defects, such as rolling contact fatigue (RCF) cracks, is an on-going topic of research within the context of rail inspection. At present, detection and classification of RCF cracks using an ACFM sensor is based on low speed walking stick systems where negligible sensor lift-off changes result in a reasonably stable background signal and hence the defects can be automatically detected using a threshold method. However, in the case of high speed inspection systems, the inevitable lift-off variations (e.g. owing to the dynamics of the train bogie etc.) lead to a varying background ACFM signal which renders the threshold method ineffective. A novel method for the detection of isolated RCF cracks, namely combined threshold and signature match (CTSM), has previously been applied to ACFM scans over RCF cracks. The method proved to be effective for automatic detection of isolated RCF cracks, however, it was observed to perform poorly in response to areas of multiple RCF cracks, which often appear in clusters. This paper investigates the application of an enhanced CTSM algorithm to the detection of clustered RCF cracks. The algorithm has been applied to low speed scans over sections of rails removed from service containing real RCF cracks and to ACFM scans obtained at high speed (up to 48 km/h) over a spinning rail rig containing clusters of artificial cracks. Results suggest that the extended CTSM algorithm is effective in automatically detecting multiple RCF cracks with a high detection rate (> 90%). Further, in the case of widely spaced (> 5 mm) multiple cracks, the algorithm can also provide extra characterisation information about the number and position of cracks within a cluster.
Autonomous railway crack detector robot for bangladesh: SCANOBOT
An automatic railway track crack detector system for Bangladesh Railway has been proposed here which aims in building a robot that can detect and analyze any kind of crack on the railway line and send the coordinates of that faulty line to the concerned authority. This robot includes two ultrasonic sensors, GPS, GSM modules, and Arduino Mega based crack detection assembly which is cost effective and robust to facilitate better safety standards in railways. As soon as the robot passed through a crack that might cause the derailment of a train, the ultrasonic sensors sense that and generate a signal. Then this signal is fed into the Arduino Mega. At that point, with the assistance of GSM and GPS modules, an alert SMS consist of the geographic coordinate of that damaged track is sent to the nearby railway authority who can easily take necessary steps to resolve the problem before any major accident occurs. This will save several trains in Bangladesh from an unwanted discontinuity from the rail track.
CHAPTER 4
DESIGN OF EMBEDDED SYSTEM:
Like every other system development design cycle embedded system too have a design cycle. The flow of the system will be like as given below steps.
From the initial state of the project to the final fabrication the design considerations will be taken like the software consideration and the hardware components, sensor, input and output. The electronics usually uses either a microprocessor or a microcontroller. Some large or old systems use general-purpose mainframe computers or minicomputers.
CLASSIFICATION:
- Real Time Systems.
- RTS is one which has to respond to events within a specified deadline.
- A right answer after the dead line is a wrong answer
- RTS classification
- Hard Real Time Systems
- Soft Real Time System
Hard Real Time Systems
- “Hard” real-time systems have very narrow response time.
- Example: Nuclear power system, Cardiac pacemaker.
Soft Real Time System
- “Soft” real-time systems have reduced constrains on “lateness” but still must operate very quickly and repeatable.
- Example: Railway reservation system – takes a few extra seconds the data remains valid.
CHAPTER 5
Proposed work module
Existing System
- The instant detection of collisions with the guardrails will allow to minimize the consequences of an accident or disaster. In a collision detection, all the intervention mechanisms in emergency aid and support to victims can be triggered, allowing a fast response by the emergency and rescue teams.
- At the same time, the security procedures are activated in order to inform in real time other drivers prior to arrive. In this context, wireless sensors have been employed in order to monitor and report the conditions of the highways The Wireless Sensor networks (WSN) are being adopted in a multitude of environments and applications.
- Composed by tiny and very lower-power sensors capable of sensing a wide range of environmental parameters and other physical quantities, they provide the best solution for small data processing sensor applications.
- Problem Statement
- Manual Process
- Low efficiency
- Not suitable in lagre population countries
Proposed System
- This project having the Raspberry pi, ultrasonic sensor, IR sensor, GSM,GPS and Alarm.
- The ultrasonic sensor will detect obstacle before the train reach the obstacle if any obstacle is detected it will send the message to the respective mobile number with location and also it will detect .
- If any one of this sensor detected it will send the message with location to the respective authority person.
Proposed Block diagram
Hardware Components:
- Raspberry pi
- Ir sensor
- Motor
- GSM
- GPS
- Monitor
- Ultrasonic sensor
- Alarm
Software Used:
- Python
CHAPTER 6
6.1 Block Diagram Explanation
6.1.1 power supply
All electronic circuits works only in low DC voltage, so we need a power supply unit to provide the appropriate voltage supply for their proper functioning. This unit consists of transformer, rectifier, filter & regulator. AC voltage of typically 230volts rms is connected to a transformer voltage down to the level to the desired ac voltage. A diode rectifier that provides the full wave rectified voltage that is initially filtered by a simple capacitor filter to produce a dc voltage. This resulting dc voltage usually has some ripple or ac voltage variation. A regulator circuit can use this dc input to provide dc voltage that not only has much less ripple voltage but also remains the same dc value even the dc voltage varies somewhat, or the load connected to the output dc voltages changes.
Fig 5.1.1. General Block of Power Supply Unit
TRANSFORMER:
A transformer is a static piece of which electric power in one circuit is transformed into electric power of same frequency in another circuit. It can raise or lower the voltage in the circuit, but with a corresponding decrease or increase in current. It works with the principle of mutual induction. In our project we are using a step down transformer to providing a necessary supply for the electronic circuits. Here we step down a 230volts ac into 12volts ac.
RECTIFIER:
A dc level obtained from a sinusoidal input can be improved 100% using a process called full wave rectification. Here in our project for full wave rectification we use bridge rectifier. From the basic bridge configuration, we see that two diodes (say D2 & D3) are conducting while the other two diodes (D1 & D4) are in off state during the period t = 0 to T/2.Accordingly for the negative cycle of the input the conducting diodes are D1 & D4. Thus the polarity across the load is the same.
In the bridge rectifier the diodes may be of variable types like 1N4001, 1N4003, 1N4004, 1N4005, IN4007 etc… can be used. But here we use 1N4007, because it can withstand up to 1000v.
FILTERS:
In order to obtain a dc voltage of 0 Hz, we have to use a low pass filter. So that a capacitive filter circuit is used where a capacitor is connected at the rectifier output& a dc is obtained across it. The filtered waveform is essentially a dc voltage with negligible ripples & it is ultimately fed to the load.
REGULATORS:
The output voltage from the capacitor is more filtered & finally regulated. The voltage regulator is a device, which maintains the output voltage constant irrespective of the change in supply variations, load variations & temperature changes. Here we use fixed voltage regulator namely LM7805.The IC LM7805 is a +5v regulator which is used for microcontroller.
FEATURES AND DESCRIPTION OF REGULATORS
- Output Current up to 1A
- Output Voltages of 5, 6, 8, 9, 10, 12, 15, 18, 24V
- Thermal Overload Protection
- Short Circuit Protection
- Output Transistor Safe Operating Area Protection
CIRCUIT DIAGRAM:
6.1.2 Ultrasonic (UV) Sensors or Ultrasound Sensors
Bats are wonderful creatures. Blind from the eyes and yet a vision so precise that could distinguish between a moth and a broken leaf even when flying at full speed. No doubt the vision is sharper than ours and is much beyond human capabilities of seeing, but is certainly not beyond our understanding. Ultrasonic ranging is the technique used by bats and many other creatures of the animal kingdom for navigational purposes. In a bid to imitate the ways of nature to obtain an edge over everything, we humans have not only understood it but have successfully imitated some of these manifestations and harnessed their potential to the greatest extent.
How Ultrasonic Sensors work?
Ultrasonic sensors are devices that use electrical–mechanical energy transformation, the mechanical energy being in the form of ultrasonic waves, to measure distance from the sensor to the target object. Ultrasonic waves are longitudinal mechanical waves which travel as a succession of compressions and rarefactions along the direction of wave propagation through the medium. Any sound wave above the human auditory range of 20,000 Hz is called ultrasound. Depending on the type of application, the range of frequencies has been broadly categorized as shown in the figure below:
When ultrasonic waves are incident on an object, diffused reflection of the energy takes place over a wide solid angle which might be as high as 180 degrees. Thus some fraction of the incident energy is reflected back to the transducer in the form of echoes and is detected. The distance to the object (L) can then be calculated through the speed of ultrasonic waves (v) in the medium by the relation
Where‘t’ is the time taken by the wave to reach back to the sensor and ‘ ’ is the angle between the horizontal and the path taken as shown in the figure. If the object is in motion, instruments based on Doppler shift are used. Get all the details about internal structure and working of an ultrasound sensor at Insight-How Ultrasonic Sensors Work.
Importance of Ultrasonic Sensors
There are a variety of sensors based on other physical transduction principles like the optical range finding sensors and the microwave based devices too. Then why should one use ultrasonic transducers in the first place, given that the speed of sound is very slow than the speed of electromagnetic waves? The answer lies in the question itself. Because the EM waves based devices are too fast. Being slower that the EM waves, the time taken by ultrasonic waves is much longer than that taken by the latter and hence its measurement can be done more easily and less expensively. Because these are based on sound waves rather than EM waves, these would work in places where the latter would not.
For example, in the case of clear object detection and measurement of liquid levels or high glare environments, light based sensors would suffer greatly because of the transmittance of the target or the translucence of the propagating media. Ultrasonic devices being based upon sound propagation would remain practically unaffected. These also function well in wet environments where optical beams may suffer from refraction from the water droplets in the environment. On account of range and accuracy, the ultrasonic sensors may lie in between two EM wave based sensors, the Infrared rangefinders on the lower end and the LIDARs on the upper end. Not as accurate or long distance as the LIDARs, the Ultrasonic rangefinders fare better than the IR rangefinders which are highly susceptible to ambient conditions and require recalibration when environment changes. Further these devices offer advantage in medical imaging as compared to MRI or X-Ray scans due to inexpensiveness and portability. No harmful effects of ultrasonic waves at the intensity levels used have been detected in contrast to X-rays or radioactivity based methods and is particularly suited for imaging soft tissues.
6.1.4 GSM MODEM:
DEFINITION:
Global system for mobile communication (GSM) is a globally accepted standard for digital cellular communication. GSM is the name of a standardization group established in 1982 to create a common European mobile telephone standard that would formulate specifications for a pan-European mobile cellular radio system operating at 900 MHz.
THE GSM NETWORK
GSM provides recommendations, not requirements. The GSM specifications define the functions and interface requirements in detail but do not address the hardware. The reason for this is to limit the designers as little as possible but still to make it possible for the operators to buy equipment from different suppliers. The GSM network is divided into three major systems: the switching system (SS), the base station system (BSS), and the operation and support system (OSS). The basic GSM network elements are shown in below figure
GSM Network Elements
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.
A GSM modem can be an external device or a PC Card / PCMCIA Card. Typically, an external GSM modem is connected to a computer through a serial cable or a USB cable. A GSM modem in the form of a PC Card / PCMCIA Card is designed for use with a laptop computer. It should be inserted into one of the PC Card / PCMCIA Card slots of a laptop computer. Like a GSM mobile phone, a GSM modem requires a SIM card from a wireless carrier in order to operate.
As mentioned in earlier sections of this SMS tutorial, computers use AT commands to control modems. Both GSM modems and dial-up modems support a common set of standard AT commands. You can use a GSM modem just like a dial-up modem.
In addition to the standard AT commands, GSM modems support an extended set of AT commands. These extended AT commands are defined in the GSM standards. With the extended AT commands, you can do things like:
- Reading, writing and deleting SMS messages.
- Sending SMS messages.
- Monitoring the signal strength.
- Monitoring the charging status and charge level of the battery.
- Reading, writing and searching phone book entries.
The number of SMS messages that can be processed by a GSM modem per minute is very low — only about six to ten SMS messages per minute.
GSM MODEM APPLICATIONS:
FACTS AND APPLICATIONS OF GSM/GPRS MODEM:
The GSM/GPRS Modem comes with a serial interface through which the modem can be controlled using AT command interface. An antenna and a power adapter are provided. The basic segregation of working of the modem is as under
- Voice calls
- SMS
- GSM Data calls
- GPRS
Voice calls:
Voice calls are not an application area to be targeted. In future if interfaces like a microphone and speaker are provided for some applications then this can be considered.
SMS:
SMS is an area where the modem can be used to provide features like:
• Pre-stored SMS transmission
- These SMS can be transmitted on certain trigger events in an automation system
- SMS can also be used in areas where small text information has to be sent. The transmitter can be an automation system or machines like vending machines, collection machines or applications like positioning systems where
The navigator keeps on sending SMS at particular time intervals. SMS can be a solution where GSM data call or GPRS services are not available
APPLICATIONS:
Access control devices:
Now access control devices can communicate with servers and security staff through SMS messaging. Complete log of transaction is available at the head-office Server instantly without any wiring involved and device can instantly alert security personnel on their mobile phone in case of any problem. RaviRaj Technologies is introducing this technology in all Fingerprint Access control and time attendance products.
Transaction terminals:
EDC machines, POS terminals can use SMS messaging to confirm transactions from central servers. The main benefit is that central server can be anywhere in the world. Today you need local servers in every city with multiple telephone lines. You save huge infrastructure costs as well as per transaction cost.
Supply Chain Management:
Today SCM require huge IT infrastructure with leased lines, networking devices, data centre, workstations and still you have large downtimes and high costs. You can do all this at a fraction of the cost with GSM M2M technology. A central server in your head office with GSM capability is the answer; you can receive instant transaction data from all your branch officers, warehouses and business associates with nil downtime, Low cost
APPLICATIONS SUITABLE FOR GSM COMMUNICATION:
If your application needs one or more of the following features, GSM will be more cost-effective then other communication systems.
Short Data Size:
You data size per transaction should be small like 1-3 lines. e.g. banking transaction data, sales/purchase data, consignment tracking data, updates. These small but important transaction data can be sent through SMS messaging which cost even less then a local telephone call or sometimes free of cost worldwide. Hence with negligible cost you are able to send critical information to your head office located anywhere in the world from multiple points.
You can also transfer faxes, large data through GSM but this will be as or more costly compared to landline networks.
Multiple remote data collection points:
If you have multiple data collections points situated all over your city, state, country or worldwide you will benefit the most. The data can be sent from multiple points like your branch offices, business associates, warehouses, and agents with devices like GSM modems connected to PCs, GSM electronic terminals and Mobile phones. Many a times some places like warehouses may be situated at remote location may not have landline or internet but you will have GSM network still available easily.
High uptime:
If your business require high uptime and availability GSM is best suitable for you as GSM mobile networks have high uptime compared to landline, internet and other communication mediums. Also in situations where you expect that someone may sabotage your communication systems by cutting wires or taping landlines, you can depend on GSM wireless communication.
Large transaction volumes:
GSM SMS messaging can handle large number of transaction in a very short time. You can receive large number SMS messages on your server like e-mails without internet connectivity. E-mails normally get delayed a lot but SMS messages are almost instantaneous for instant transactions. Consider situation like shop owners doing credit card transaction with GSM technology instead of conventional landlines. time you find local transaction servers busy as these servers use multiple telephone lines to take care of multiple transactions, whereas one GSM connection is enough to handle hundreds of transaction.
Mobility, Quick installation:
GSM technology allows mobility, GSM terminals, modems can be just picked and installed at other location unlike telephone lines. Also you can be mobile with GSM terminals and can also communicate with server using your mobile phone. You can just purchase the GSM hardware like modems, terminals and mobile handsets, insert SIM cards, configure software and your are ready for GSM communication.
6.1.4 Global Positioning System (GPS)
A variety of GPS modules designed for many different applications. The modules are classified into two families: FGPMMOSLx and FGPM MOPAx series (x denotes the model number). The major difference between these two families is the inclusion of smart patch antenna. PAx comes with the ceramic antenna, while SLx does not. These GPS modules provide a complete GPS solution that excels in position, speed, and accuracy performances as well as high insensitivity and tracking capabilities in urban environment. The GPS module are powered by MediaTek Inc. GPS chipset, the world’s leading digital media solution provider and largest fab-less IC Company in
Circuit Design
Power supply Vcc
It is necessary to provide a clean and stable power supply for our GPS module in order to obtain good performances (Ex: TTFF). Unstable power source will have a significant negative impact on the GPS performance. To achieve this, the Vcc ripple must be controlled under 50mVpp.
In addition, there are also some important suggestions for main power circuit design:
- Add ferrite bead, power choke or low pass filter for power noise reduction
- Use linear regulator for voltage regulation
- Use enough decoupling capacitors for stable voltage due to current variation.
UART 0 (RX/TX) –Serial Interface
UART is the default interface, and it supports transfer baud rate ranging from 4800 bps to 115200 bps. The logic is TTL level. If the RS232 logic-level is needed for application, then the use of level shifters is necessary. Please leave RX open if it is not used, there is an internal pull-up to VCC. Please don’t use an external pull-up for unexpected current draw.
Antenna Design , ANTENNA_IN
GPS antenna is a receiving device to acquire week GPS signal from sky. Popular solution would be ceramic patch antenna due to its small form factor with low cost. There are two types of antennas, passive and active. Passive antenna is with solely antenna itself. Active antenna is with LNA to have high gain with the cost of current supply.
Antenna can be chosen according to radiation efficiency, radiation pattern, gain, bandwidth, form factor and cost. Make sure the ground plane is sufficient for the antenna to operate with acceptable performance. And place the matching circuit between antenna and GPS module to compensate the frequency shift due to PCB layout.
Circuit diagram
6.1.5 Motor
A. General Information
A DC motor is used to drive a mechanical load. In this lab, a separately excited DC generator provides the load. The load on the motor is adjusted by varying the generator field current. By increasing the field current of the DC generator, the load on the DC motor increases and thus the armature current increases. In general, DC motors are characterized by their torque-speed curves as shown in Figure 9.1. Since the measuring equipment for shaft torque is not available in the lab it is necessary to use alternative means of characterizing the DC motor. One alternative is to plot shaft speed versus armature current since torque is directly proportional to the armature current ( ) with a constant field current supplied to the motor. Shaft speed is also a function of the field current in a DC motor while maintaining a constant armature voltage ( ) as field current is directly proportional to the direct axis flux produced in the machine.
B. Construction
The stator of the dc motor has poles, which are excited by dc current to produce magnetic fields. In the neutral zone, in the middle between the poles, commutating poles are placed to reduce sparking of the commutator. The commutating poles are supplied by dc current. Compensating windings are mounted on the main poles. These short-circuited windings damp rotor oscillations. The poles are mounted on an iron core that provides a closed magnetic circuit. The motor housing supports the iron core, the brushes and the bearings. The rotor has a ring-shaped laminated iron core with slots. Coils with several turns are placed in the slots. The distance between the two legs of the coil is about 180 electric degrees. The coils are connected in series through the commutator segments. The ends of each coil are connected to a commutator segment. The commutator consists of insulated copper segments mounted on an insulated tube. Two brushes are pressed to the commutator to permit current flow. The brushes are placed in the neutral zone, where the magnetic field is close to zero, to reduce arcing. The rotor has a ring-shaped laminated iron core with slots. The commutator consists of insulated copper segments mounted on an insulated tube. Two brushes are pressed to the commutator to permit current flow. The brushes are placed in the neutral zone, where the magnetic field is close to zero, to reduce arcing. The commutator switches the current from one rotor coil to the adjacent coil, the switching requires the interruption of the coil current. The sudden interruption of an inductive current generates high voltages. The high voltage produces flashover and arcing between the commutator segment and the brush.
C. DC Motor Operation
In a dc motor, the stator poles are supplied by dc excitation current, which produces a dc magnetic field. The rotor is supplied by dc current through the brushes, commutator and coils. The interaction of the magnetic field and rotor current generates a force that drives the motor. The magnetic field lines enter into the rotor from the north pole (N) and exit toward the south pole (S). The poles generate a magnetic field that is perpendicular to the current carrying conductors. The interaction between the field and the current produces a Lorentz force; the force is perpendicular to both the magnetic field and conductor. The generated force turns the rotor until the coil reaches the neutral point between the poles. At this point, the magnetic field becomes practically zero together with the force. However, inertia drives the motor beyond the neutral zone where the direction of the magnetic field reverses. To avoid the reversal of the force direction, the commutator changes the current direction, which maintains the counterclockwise rotation. Before reaching the neutral zone, the current enters in segment 1 and exits from segment 2. Therefore, current enters the coil end at slot a and exits from slot b during this stage. After passing the neutral zone, the current enters segment 2 and exits from segment 1, this reverses the current direction through the rotor coil, when the coil passes the neutral zone. The result of this current reversal is the maintenance of the rotation.
D. DC Motor Equivalent circuit
The following figures show the equivalent circuit of a separately excited dc motor. Equivalent circuit is similar to the generator only the current directions are different. The operation equations are:
Armature voltage equation
The induced voltage and motor speed vs angular frequency
The combination of the equations results in
The current is calculated from this equation. The output power and torque are:
Generally, even the simplest robot requires a motor to rotate a wheel or performs particular action. Since motors require more current then the microcontroller pin can typically generate, you need some type of a switch (Transistors, MOSFET, Relay etc.,) which can accept a small current, amplify it and generate a larger current, which further drives a motor. This entire process is done by what is known as a motor driver.
Motor driver is basically a current amplifier which takes a low-current signal from the microcontroller and gives out a proportionally higher current signal which can control and drive a motor. In most cases, a transistor can act as a switch and perform this task which drives the motor in a single direction.
Turning a motor ON and OFF requires only one switch to control a single motor in a single direction. What if you want your motor to reverse its direction? The simple answer is to reverse its polarity. This can be achieved by using four switches that are arranged in an intelligent manner such that the circuit not only drives the motor, but also controls its direction. Out of many, one of the most common and clever design is a H-bridge circuit where transistors are arranged in a shape that resembles the English alphabet “H”.
As you can see in the image, the circuit has four switches A, B, C and D. Turning these switches ON and OFF can drive a motor in different ways.
- Turning on SwitchesA and D makes the motor rotate clockwise
- Turning on SwitchesB and C makes the motor rotate anti-clockwise
- Turning on SwitchesA and B will stop the motor (Brakes)
- Turning off all the switches gives the motor a free wheel drive
- Lastly turning onA & C at the same time or B & D at the same time shorts your entire circuit. So, do not attempt this.
H-bridges can be built from scratch using relays, mosfets, field effect transistors (FET), bi-polar junction transistors (BJT), etc. But if your current requirement is not too high and all you need is a single package which does the job of driving a small DC motor in two directions, then all you need is a L293D IC. This single inexpensive package can interface not one, but two DC motors. L293, L293B and few other versions also does the same job, but pick the L293D version as this one has an inbuilt fly back diode which protects the driving transistors from voltage spikes that occur when the motor coil is turned off.
Introduction to L293D IC
L293D IC generally comes as a standard 16-pin DIP (dual-in line package). This motor driver IC can simultaneously control two small motors in either direction; forward and reverse with just 4 microcontroller pins (if you do not use enable pins). Some of the features (and drawbacks) of this IC are:
- Output current capability is limited to 600mA per channel with peak output current limited to 1.2A (non-repetitive). This means you cannot drive bigger motors with this IC. However, most small motors used in hobby robotics should work. If you are unsure whether the IC can handle a particular motor, connect the IC to its circuit and run the motor with your finger on the IC. If it gets really hot, then beware… Also note the words “non-repetitive”; if the current output repeatedly reaches 1.2A, it might destroy the drive transistors.
- Supply voltage can be as large as 36 Volts. This means you do not have to worry much about voltage regulation.
- L293D has an enable facility which helps you enable the IC output pins. If an enable pin is set to logic high, then state of the inputs match the state of the outputs. If you pull this low, then the outputs will be turned off regardless of the input states
- The datasheet also mentions an “over temperature protection” built into the IC. This means an internal sensor senses its internal temperature and stops driving the motors if the temperature crosses a set point
- Another major feature ofL293D is its internal clamp diodes. This flyback diode helps protect the driver IC from voltage spikes that occur when the motor coil is turned on and off (mostly when turned off)
- The logical low in the IC is set to 1.5V. This means the pin is set high only if the voltage across the pin crosses 1.5V which makes it suitable for use in high frequency applications like switching applications (upto 5KHz)
- Lastly, this integrated circuit not only drives DC motors, but can also be used to drive relay solenoids, stepper motors etc.
L293D Connections
The circuit shown to the right is the most basic implementation of L293D IC. There are 16 pins sticking out of this IC and we have to understand the functionality of each pin before implementing this in a circuit
- Pin1 and Pin9 are “Enable” pins. They should be connected to +5V for the drivers to function. If they pulled low (GND), then the outputs will be turned off regardless of the input states, stopping the motors. If you have two spare pins in your microcontroller, connect these pins to the microcontroller, or just connect them to regulated positive 5 Volts.
- Pin4, Pin5, Pin12 and Pin13 are ground pins which should ideally be connected to microcontroller’s ground.
- Pin2, Pin7, Pin10 and Pin15 are logic input pins. These are control pins which should be connected to microcontroller pins. Pin2 and Pin7 control the first motor (left); Pin10 and Pin15 control the second motor(right).
- Pin3, Pin6, Pin11, and Pin14 are output pins. Tie Pin3 and Pin6 to the first motor, Pin11 and Pin14 to second motor
- Pin16 powers the IC and it should be connected toregulated +5Volts
- Pin8 powers the two motors and should be connected to positive lead of a secondary battery. As per the datasheet, supply voltage can be as high as 36 Volts.
Truth table
I have shown you where to connect the motors, battery and the microcontroller. But how do we control the direction of these motors? Let us take an example:
Suppose you need to control the left motor which is connected to Pin3 (O1) and Pin6 (O2). As mentioned above, we require three pins to control this motor – Pin1 (E1), Pin2 (I1) and Pin7 (I2). Here is the truth table representing the functionality of this motor driver.
Pin 1 | Pin 2 | Pin 7 | Function |
High | High | Low | Turn Anti-clockwise (Reverse) |
High | Low | High | Turn clockwise (Forward) |
High | High | High | Stop |
High | Low | Low | Stop |
Low | X | X | Stop |
High ~+5V, Low ~0V, X=Either high or low (don’t care)
In the above truth table you can observe that if Pin1 (E1) is low then the motor stops, irrespective of the states on Pin2 and Pin7. Hence it is essential to hold E1 high for the driver to function, or simply connect enable pins to positive 5 volts.
With Pin1 high, if Pin2 is set high and Pin7 is pulled low, then current flows from Pin2 to Pin7 driving the motor in anti-clockwise direction? If the states of Pin2 and Pin7 are flipped, then current flows from Pin7 to Pin2 driving the motor in clockwise direction.
The above concept holds true for other side of the IC too. Connect your motor to Pin11 and Pin14; Pin10 and Pin15 are input pins, and Pin9 (E2) enables the driver.
IR (Infrared) Sensor
- An infrared sensoris an electronic device that emits in order to sense some aspects of the surroundings. An IR sensor can measure the heat of an object as well as detects the motion. These types of sensors measures only infrared radiation, rather than emitting it that is called as a passive IR sensor. Usually in the infrared spectrum, all the objects radiate some form of thermal radiations. These types of radiations are invisible to our eyes that can be detected by an infrared sensor. The emitter is simply an IR LED (Light Emitting Diode) and the detector is simply an IR photodiode which is sensitive to IR light of the same wavelength as that emitted by the IR LED. When IR light falls on the photodiode, the resistances and these output voltages, change in proportion to the magnitude of the IR light received.
- IR Sensor Applications
- IR sensors are used in various Sensor based projectsand also in various electronic devices which measures the temperature that are discussed in the below.
- Radiation Thermometers
- IR sensors are used in radiation thermometers to measure the temperature depend upon the temperature and the material of the object and these thermometers have some of the following features
- Measurement without direct contact with the object
- Faster response
- Easy pattern measurements
CHAPTER 7
RASPBERRY PI
- Raspberry Pi Basic Hardware Setup
7.1. Extra Hardware
You Will Need The Raspberry Pi board contains a processor and graphics chip, program memory (RAM) and various interfaces and connectors for external devices. Some of these devices are essential, others are optional. RPi operates in the same way as a standard PC, requiring a keyboard for command entry, a display unit and a power supply. It also requires ‘mass-storage’, but a hard disk drive of the type found in a typical PC is not really in keeping with the miniature size of RPi. Instead we will use an SD Flash memory card normally used in digital cameras, configured in such a way to ‘look like’ a hard drive to RPi’s processor. RPi will ‘boot’ (load the Operating System into RAM) from this card in the same way as a PC ‘boots up’ into Windows from its hard disk.
The following are essential to get started:
- SD card containing Linux Operating system
- USB keyboard
- TV or monitor (with HDMI, DVI, Composite or SCART input)
- Power supply (see Section 1.6 below)
- Video cable to suit the TV or monitor used recommended optional extras include:
- USB mouse
- Internet connection, Model A or B: USB WiFi adaptor
- Internet connection, Model B only: LAN (Ethernet) cable
- Powered USB hub
Case 1.2. Connecting Everything Together
- Plug the preloaded SD Card into the RPi.
- Plug the USB keyboard and mouse into the RPi, perhaps via a USB hub. Connect the Hub to power, if necessary.
- Plug a video cable into the screen (TV or monitor) and into the RPi.
- Plug your extras into the RPi (USB WiFi, Ethernet cable, external hard drive etc.). This is where you may really need a USB hub.
- Ensure that your USB hub (if any) and screen are working.
- Plug the power supply into the mains socket.
- With your screen on, plug the power supply into the RPi microUSB socket.
- The RPi should boot up and display messages on the screen. It is always recommended to connect the MicroUSB power to the unit last (while most connections can be made live, it is best practice to connect items such as displays with the power turned off). The RPi may take a long time to boot when powered-on for the first time, so be patient!
7.2. Operating System SD Card:
As the RPi has no internal mass storage or built-in operating system it requires an SD card preloaded with a version of the Linux Operating System. • You can create your own preloaded card using any suitable SD card (4GBytes or above) you have to hand. We suggest you use a new blank card to avoid arguments over lost pictures. • Preloaded SD cards will be available from the RPi Shop.
7.3. Keyboard & Mouse:
Most standard USB keyboards and mice will work with the RPi. Wireless keyboard/mice should also function, and only require a single USB port for an RF dongle. In order to use a Bluetooth keyboard or mouse you will need a Bluetooth USB dongle, which again uses a single port. Remember that the Model A has a single USB port and the Model B has two (typically a keyboard and mouse will use a USB port each).
7.4. Display:
There are two main connection options for the RPi display, HDMI (High Definition) and Composite (Standard Definition). • HD TVs and many LCD monitors can be connected using a full-size ‘male’ HDMI cable, and with an inexpensive adaptor if DVI is used. HDMI versions 1.3 and 1.4 are supported and a version 1.4 cable is recommended. The RPi outputs audio and video via HMDI, but does not support HDMI input. • Older TVs can be connected using Composite video (a yellow-to-yellow RCA cable) or via SCART (using a Composite video to SCART adaptor). Both PAL and NTSC format TVs are supported. When using a composite video connection, audio is available from the 3.5mm jack socket, and can be sent to your TV, headphones or an amplifier. To send audio to your TV, you will need a cable which adapts from 3.5mm to double (red and white) RCA connectors. Note: There is no analogue VGA output available. This is the connection required by many computer monitors, apart from the latest ones. If you have a monitor with only a D-shaped plug containing 15 pins, then it is unsuitable.
Raspberry pi Port specification:
7.5. Power Supply:
The unit is powered via the microUSB connector (only the power pins are connected, so it will not transfer data over this connection). A standard modern phone charger with a microUSB connector will do, providing it can supply at least 700mA at +5Vdc. Check your power supply’s ratings carefully. Suitable mains adaptors will be available from the RPi Shop and are recommended if you are unsure what to use.
Note: The individual USB ports on a powered hub or a PC are usually rated to provide 500mA maximum. If you wish to use either of these as a power source then you will need a special cable which plugs into two ports providing a combined current capability of 1000mA.
7.6. Cables:
You will need one or more cables to connect up your RPi system.
- Video cable alternatives: o HDMI-A cable o HDMI-A cable + DVI adapter o Composite video cable o Composite video cable + SCART adaptor
- Audio cable (not needed if you use the HDMI video connection to a TV)
- Ethernet/LAN cable (Model B only)
7.6.1 Additional Peripherals:
You may decide you want to use various other devices with your RPi, such as Flash Drives/Portable Hard Drives, Speakers etc.
7.6.2 Internet Connectivity:
This may be via an Ethernet/LAN cable (standard RJ45 connector) or a USB WiFi adaptor. The RPi Model B Ethernet port is auto-sensing which means that it may be connected to a router or directly to another computer (without the need for a crossover cable).
7.6.3 USB hub:
In order to connect additional devices to the RPi, you may want to obtain a USB hub, which will allow multiple devices to be used. It is recommended that a powered hub is used – this will provide any additional power to the devices without affecting the RPi itself. A USB 2.0 model is recommended. USB 1.1 is fine for keyboards and mice, but may not be fast enough for other accessories.
7.6.4 Case:
Since the RPi is supplied without a case, it will be important to ensure that you do not use it in places where it will come into contact with conductive metal or liquids, unless suitably protected.
7.6.5 Expansion & Low-Level Peripherals:
If you plan on making use of the low-level interfaces available on the RPi, then ensure you have a suitable plug for the GPIO header pins. Also if you have a particular low-level project in mind, then ensure you design-in suitable protection circuits to keep your RPi safe.
7.7 Raspberry Pi Advanced Setup (Geeks only)
7.7.1 Finding hardware and setting up:
You’ll need a preloaded SD card, USB keyboard, TV/Monitor (with HDMI/ DVI/ Composite/SCART input), and power supply (USB charger or a USB port from a powered USB Hub or another computer). You’ll likely also want a USB mouse, a case, and a USB hub (a necessity for Model A). A powered USB hub will reduce the demand on the RPi. To connect to the Internet, you’ll need either an Ethernet/LAN cable (Model B) or a USB WiFi adaptor (either model). When setting up, it is advisable to connect the power after everything else is ready.
7.7.2 Serial connection:
The Serial Port is a simple and uncomplicated method to connect to the RPi. The communication depends on byte wise data transmission, is easy to setup and is generally available even before boot time.
7.7.3 First interaction with the board:
Connect the serial cable to the COM port in the RPi, and connect the other end to the COM port or USB Serial Adapter in the computer.
7.7.3 Serial Parameters:
The following parameters are needed to connect to the RPi. All parameters except Port_Name and Speed are default values and may not need to be set. Port_Name: Linux automatically assigns different names for different types of serial connectors.
Choose your option:
- Standard Serial Port: ttyS0 … ttySn
- USB Serial Port Adapter: ttyUSB0 … ttyUSBn
- Speed: 115200
- Bits: 8
- Parity: None
- Stop Bits: 1
- Flow Control: None The Serial Port is generally usable by the users in the group dialout. To add oneself to the group dialout the the following command needs to be executed with root privileges:
$useradd -G {dialout} your_name
7.7.4 Super Easy Way using GNU Screen:
Enter the command below into a terminal window
screen Port_Name 115200
7.7.5 Super Easy Way using Minicom Run minicom with the following parameters:
minicom -b 115200 -o -D Port_Name
7.7.6 GUI method with GtkTerm:
Start GtkTerm,
select Configuration->Port and enter the values above in the labelled fields.
7.7.7 Windows Users:
Windows 7 or Vista users must download putty or a comparable terminal program. Users of XP and below can choose between using putty and HyperTerminal.
7.7.8 First Dialog:
If you get the prompt below, you are connected to the Raspberry Pi shell!
prompt> #
First command you might want try is “help”:
prompt> # help
If you get some output, you are correctly connected to the Raspberry Pi! Congratulations!
7.7.9 SD card setup:
Now we want to install a GNU/Linux distro on an SD card and make space for our stuff. You can use either an SD or SDHC card. In the latter case of course take care that your PC card reader also supports SDHC. Be aware that you are not dealing with an x86 processor, but instead a completely different architecture called ARM, so don’t forget to install the ARM port for the distro you are planning to use.
7.7.9 Formatting the SD card via the mkcard.txt script:
- Download mkcard.txt .
- $ chmod +x mkcard.txt
- $ ./mkcard.txt /dev/sdx, where x is the letter of the card.
You can find this by inserting your card and then running dmesg | tail. You should see the messages about the device being mounted in the log. Mine mounts as sdc. Once run, your card should be formatted.
PYTHON:
Python is an interpreted, object-oriented, high-level programming language with dynamic semantics. Its high-level built in data structures, combined with dynamic typing and dynamic binding, make it very attractive for Rapid Application Development, as well as for use as a scripting or glue language to connect existing components together. Python’s simple, easy to learn syntax emphasizes readability and therefore reduces the cost of program maintenance. Python supports modules and packages, which encourages program modularity and code reuse. The Python interpreter and the extensive standard library are available in source or binary form without charge for all major platforms and can be freely distributed.
ssOften, programmers fall in love with Python because of the increased productivity it provides. Since there is no compilation step, the edit-test-debug cycle is incredibly fast. Debugging Python programs is easy: a bug or bad input will never cause a segmentation fault. Instead, when the interpreter discovers an error, it raises an exception. When the program doesn’t catch the exception, the interpreter prints a stack trace. A source level debugger allows inspection of local and global variables, evaluation of arbitrary expressions, setting breakpoints, stepping through the code a line at a time, and so on. The debugger is written in Python itself, testifying to Python’s introspective power. On the other hand, often the quickest way to debug a program is to add a few print statements to the source: the fast edit-test-debug cycle makes this simple approach very effective
REFERENCE:
- Benjamin and S. Sankaranarayanan, “Performance of hierarchical agent based wirelesssensor meshnetwork for patient health monitoring,” in Nature Biologically Inspired Computing, 2009. NaBIC 2009. World Congress on, Dec., pp. 1653–1656.
- Gungor and G. Hancke, “Industrial wireless sensor networks: Challenges, design principles, and technical approaches,” Industrial Electronics, IEEE Transactions on, vol. 56, no. 10, pp. 4258–4265, Oct 2009.
- -M. Han and J.-H. Lim, “Design and implementation of smart home energy management systems based on zigbee,” Consumer Electronics, IEEE Transactions on, vol. 56, no. 3, pp. 1417–1425, Aug 2010.