ADVANCED FOOTSTEP POWER GENERATION SYSTEM

by Anil babu in Circuits > Arduino

11635 Views, 7 Favorites, 0 Comments

ADVANCED FOOTSTEP POWER GENERATION SYSTEM

circuit diagram.JPG
proposed system.JPG

Utilization of power turns to be necessary for every work in today's world. To comfort our daily routines the devices are used in large numbers. The benefits of roadway energy harvesting systems are potentially excellent. Energy harvesting is defined as capturing minuteamounts of energy from one or more of the surrounding energy resources. To generate the power through footsteps as a source of renewable energy sources that we can obtain while walking on a certain arrangement like stepping foot on piezoelectric tiles. an advanced footstep power generation system proposed here uses the piezoelectric sensors. To generate a voltage from footstep the piezo sensors are mounted below the platform. To generate maximum output voltage the sensors are placed in such an arrangement. This is then forwarded to our monitoring circuitry. The circuit is the microcontroller based monitoring circuit that allows users to monitor the charges and voltage a connected battery to it and this power source has many applications. It also displays the charge generated by our footstep and displays it on an LCD. Also, it consists of a USB mobile phone charging point where a user may connect cables to charge the mobile phone from the battery charge. The current is distributed using (radio-frequency identification) RFID cards so that only an authorized person can use the generator for charging. Thus we charge a battery using power from footsteps, display it on LCD using a microcontroller circuit and allow for mobile chargin through the setup. Our project model cost is effective and easy to implement and also it is green and not harmful to the environment.

Supplies

The project advanced footstep power generator using RFID for charging describes when applying weight on piezoelectric plates voltage is developed across the plates. That voltage is applied to the battery for charging purposes. This is then provided to our monitoring circuitry.LCD is interfaced with a piezo sensor using a microcontroller that allows the user to monitor the voltage and charges a connected battery by it. Also, RFID is interfaced with microcontroller to know authorized users & it consists of a USB mobile phone charging point where the user may connect cables to charge the mobile phone from the battery charge.


Block Diagram

bloack diagram.JPG

The Footstep power generator works on the principle of piezoelectric effect impact. Piezoelectric Effect is the ability of certain materials for generating electric charges in response to applied mechanical stress on the piezoelectric plate. Thus, squeeze certain crystals and you can make electricity flow through them. In most crystals, the unit cell is symmetrical in piezoelectric crystals. Normally, the piezoelectric crystals are electrically neutral and atoms inside the piezoelectric plate may not be symmetrically arranged, but their electrical charges are perfectly balanced, the positive charge in one place cancels out a negative charge nearby them. However, if you squeeze or stretch the piezoelectric crystal, you deform the structure, negative, and causing net electrical charges to appear. This effect carries through a whole structure so net positive and negative charges appear on the opposite, outer faces of the crystal. Normally, the charges in the piezoelectric crystal are exactly balanced, even if they are not symmetrically arranged. If you squeeze the crystal (massively exaggerated in this picture!), you force the charges out of balance. Now the effects of the charges are no longer eliminated one another out and net positive and negative charges appear on opposite crystal faces. By squeezing a crystal, you have produced the voltage across its opposite faces and that's piezoelectricity. In this project, we have used the same phenomenon of producing piezoelectricity from the piezoelectric crystal in the form of a coin shape disc.

When one steps on a weighing machine the piezoelectric disc gets compressed. After the leg is lifted a crystal is decompressed. Thus a full vibration is sensed by a crystal disc and a voltage across it is produced. This voltage is sensed by a voltmeter and displayed on its display. Also, at the same time, this voltage is used to charge the 12V DC Battery. LED’s have been mounted under the weighing machine that is switched on by relay through 555 timer IC whenever a voltage is generated. This event is notified by a glowing LED on the PCB. (Also one can hear the switching sound of the relay)Thus, whenever a person walks through a weighing machine the battery gets charged due to the voltage which is also displayed on the voltmeter. This event is notified by a glowing LED beneath the weighing machine.

ARDUINO UNO

Arduino Uno is the robot's brain. Arduino Uno uses the ATmega328 microprocessor. Arduino has 14 pins. The most popular Arduino card is the Arduino UNO model shown in Figure 2. It can be easily programmed with Arduino libraries [7]. Easily programmable is the biggest advantage of other microprocessors. Programming in the Arduino Uno is carried out specifically in the integrated development environment (IDE). The programming language is selected as Embedded C language. Using signals from sensors, it helps to design robots and systems that affect the environment. So actions happen such as sound and light specific to the output of the project.

 

 

 

 

Fig 3.2 Arduino uno

PIEZO ELEMENT

A piezoelectric sensor is a device that uses the piezoelectric impact to gauge weight, quickening, strain or power by changing over them to an electrical flag. Piezoelectric impact is the capacity of specific materials to produce an electric charge in light of connected mechanical pressure. At the point when piezoelectric material is set under mechanical pressure, a moving of the positive and negative charge focuses in the material happens, which at that point brings about an outer electrical field.

 

 

 

 

Fig 3.3 Piezoelectric sensor

BRIDGE RECTIFIER

The yield from the stride body is sustained to the rectifier. It changes over A.C. into pulsating D.C. The rectifier might be a half wave or a full wave rectifier. In this undertaking, an extension rectifier is utilized in light of its benefits like great strength and full wave correction. The Bridge rectifier is a circuit, which changes ac voltage to dc voltage utilizing both half cycles of the information air conditioning voltage.

 

 

 

Fig 3.4 Bridge rectifier

BATTERY

Batteries are a collection of one or more cells whose chemical reactions create a flow of electrons in a circuit. All batteries are made up of three basic components: an anode (the '-' side), a cathode (the '+' side), and some kind of electrolyte (a substance that chemically reacts with the anode and cathode). When the anode and cathode of a battery is connected to a circuit, a chemical reaction takes place between the anode and the electrolyte. This reaction causes electrons to flow through the circuit and back into the cathode where another chemical reaction takes place. When the material in the cathode or anode is consumed or no longer able to be used in the reaction, the battery is unable to produce electricity. At that point, your battery is "dead."

 

 

 

 

Fig 3.5 Battery

 

VOLTAGE SENSOR

A voltage sensor is a sensor is used to calculate and monitor the amount of voltage in an object. Voltage sensors can determine both the AC voltage or DC voltage level. The input of this sensor can be the voltage whereas the output is the switches, analog voltage signal, a current signal, an audible signal, etc.

 

 

 

 

 

Fig 3.6 Voltage sensor

GSM MODEM

GSM module is a breakout board and minimum system of SIM800 Quad-band/SIM800L Dual-band GSM/GPRS module. It can communicate with controllers via AT commands (GSM 07.07, 07.05 and SIMCOM enhanced AT Commands). This module supports software power on and reset. It has a quad-band 800/900/1800/1900 MHz and a dual-band 900/1900 MHz. It has control via AT commands, a very low power consumption of 1.5mA (sleep mode).

 

 

 

 

 

 

Fig 3.7 GSM 800L

 

RFID

Radio-frequency identification (RFID) uses electromagnetic fields to automatically identify and track tags attached to objects. An RFID tag consists of a tiny radio transponder; a radio receiver and transmitter. When triggered by an electromagnetic interrogation pulse from a nearby RFID reader device, the tag transmits digital data, usually an identifying inventory number, back to the reader. This number can be used to inventory goods. There are two types. Passive tags are powered by energy from the RFID reader's interrogating radio waves. Active tags are powered by a battery and thus can be read at a greater range from the RFID reader; up to hundreds of meters. Unlike a barcode, the tag doesn't need to be within the line of sight of the reader, so it may be embedded in the tracked object. RFID is one method of automatic identification and data capture (AIDC)

 

 

 

Fig 3.8 RFID

RELAY

           Relay is a switch which controls (open and close) circuits electromechanically. The main operation of this device is to make or break contact with the help of a signal without any human involvement in order to switch it ON or OFF. It is mainly used to control a high powered circuit using a low power signal.

 

 

 

Fig 3.9 Relay

 

LCD DISPLAY

Alphanumeric displays are used in a wide range of application, include palmtop computer, word processor. Available as an optional extra is the serial LCD firmware, which allows serial control of the display. This option provides much easier connection and use of the LCD module. The firmware enables microcontroller to visually output user instruction or reading onto an LCD module. All LCD command are transmitted serially via a single microcontroller pin. The firmware can also be connected to the serial port of a computer.

 

 

 

 

 

 

 

Fig 3.10 LCD Display

POWER SUPPLY

           A power supply is an electrical device that supplies electric power to an electrical load. The primary function of a power supply is to convert electric current from a source to the correct voltage, current, and frequency to power the load. In this circuit we want 5v dc  so we using a voltage regulator IC 7805 which convert input voltage from 6-18 v to 5v. 


CIRCUIT

circuit diagram.JPG

In this project piezoelectric power generation with rfid describes that the pressure applied on a piezoelectric plate creates a voltage thus a series of plates connected together to make a voltage and that voltage is passed to a bridge rectifier to convert it to a unidirectional dc voltage then a capacitor is used to avoid ac ripples in it. This charge is used for the battery charging, the battery does not discharge through the piezo sensor because the diode will avoid it. The battery voltage is measured by a voltage sensor with a microcontroller, arduino microcontroller is used here . the stored voltage is used for mobile charging with a7805 voltage regulator with the help

RFID , RFID means radio frequency identification. When the authorized swipe the card the charging will be start using the relay switch controlled by the arduino. When an unauthorized user try to access it this will send an message to the registered number. And when the battery status is weak it will also send a message to the number.  All the operations will be displayed on the lcd display. When charging occurs by RFID card is able to stop charging by a simple button press 

It is a microcontroller board developed by Arduino.cc and based on Atmega328.Electronic devices are becoming compact, flexible and cheap that are capable of doing more function as compared to their predecessors that happened to cover more space, turned out costly with the ability to perform fewer functions. Experts always strive to introduce innovation in automation that requires minimum effort and gives maximum output. The microcontroller was introduced in the electronics industry with the purpose of making our tasks easy that come with even a remote connection with automation in any way.Microcontrollers are widely used in embedded systems and make devices work according to our needs and requirements. We have already discussed the controllers like 8051, Atmega16, Atmega328 and PIC16F877.Arduino Uno is a very valuable addition in the electronics that consists of USB interface, 14 digital I/O pins, 6 analog pins, and Atmega328 microcontroller. It also supports serial communication using Tx and Rx pins. You should also have a look at this UNO for beginners.There are many versions of Arduino boards introduced in the market like Arduino Uno, Arduino Due, Arduino Leonardo, Arduino Mega, however, most common versions are Arduino Uno and Arduino Mega. If you are planning to create a project relating to digital electronics, embedded system, robotics, or IoT, then using Arduino Uno would be the best, easy and most economical option.

It is an open-source platform, means the boards and software are readily available and anyone can modify and optimize the boards for better functionality.The software used for Arduino devices is called IDE (Integrated Development Environment) which is free to use and required some basic skills to learn it. It can be programmed using C and C++ language.Some people get confused between Microcontroller and Arduino. While former is just an on system 40 pin chip that comes with a built-in microprocessor and later is a board that comes with the microcontroller in the base of the board, bootloader and allows easy access to input-output pins and makes uploading or burning of the program very easy.

  • Arduino Uno is a microcontroller board developed by Arduino.cc which is an open-source electronics platform mainly based on AVR microcontroller Atmega328.
  • First Arduino project was started in Interaction Design Institute Ivrea in 2003 by David Cuartielles and Massimo Banzi with the intention of providing a cheap and flexible way to students and professional for controlling a number of devices in the real world.
  • The current version of Arduino Uno comes with USB interface, 6 analog input pins, 14 I/O digital ports that are used to connect with external electronic circuits. Out of 14 I/O ports, 6 pins can be used for PWM output.
  • It allows the designers to control and sense the external electronic devices in the real world.
  • There are 14 I/O digital and 6 analog pins incorporated in the board that allows the external connection with any circuit with the board. These pins provide the flexibility and ease of use to the external devices that can be connected through these pins. There is no hard and fast interface required to connect the devices to the board. Simply plug the external device into the pins of the board that are laid out on the board in the form of the header.
  • The 6 analog pins are marked as A0 to A5 and come with a resolution of 10bits. These pins measure from 0 to 5V, however, they can be configured to the high range using analogReference() function and AREF pin.
  • 13KB of flash memory is used to store the number of instructions in the form of code.
  • Only 5 V is required to turn the board on, which can be achieved directly using USB port or external adopter, however, it can support external power source up to 12 V which can be regulated and limit to 5 V or 3.3 V based on the requirement of the project.

Applications of Arduino

  • Embedded System
  • Security and Defense System
  • Digital Electronics and Robotics
  • Parking Lot Counter
  • Weighing Machines
  • Traffic Light Count Down Timer
  • Medical Instrument
  • Emergency Light for Railways
  • Home Automation
  • Industrial Automation

ARDUINO UNO PIN OUT

Fig 3.13 Arduino UNO Pinout

 

PIEZOELECTRIC SENSOR

Sensors are devices used to detect or sense the different types of physical quantities from the environment. The input could be light, heat, motion, moisture, pressure, vibrations etc… The output generated is usually an electrical signal proportional to the applied input. This output is used to calibrate the input or the output signal is transmitted over a network for further processing. Based on the input to be measured there are various types of sensors. Mercury-based thermometer acts as a temperature sensor, an Oxygen sensor in cars emission control system detects oxygen, Photo sensor detects the presence of visible light. In this article, we would describe the piezoelectric sensor. Please refer the link to know more about the piezoelectric effect.`

A sensor which works on the principle of piezoelectricity is known as a piezoelectric sensor. Where piezoelectricity is a phenomenon where electricity is generated if mechanical stress is applied to a material. Not all materials have piezoelectric characteristics.

There are various types of piezoelectric materials. Examples of piezoelectric materials are natural available single crystal quartz, bone etc… Artificially manufactured like PZT ceramic etc…

WORKING

The commonly measured physical quantities by a piezoelectric sensor are Acceleration and Pressure. Both pressure and acceleration sensors work on the same principle of piezoelectricity but the main difference between them is the way force is applied to their sensing element.

In the pressure sensor, a thin membrane is placed on a massive base to transfer the applied force to the piezoelectric element. Upon application of pressure on this thin membrane, the piezoelectric material gets loaded and starts generating electrical voltages. The produced voltage is proportional to the amount of pressure applied.

In accelerometers, seismic mass is attached to the crystal element to transfer the applied force to piezoelectric materials. When motion is applied, seismic mass load’s the piezoelectric material according to Newton’s second law of motion. The piezoelectric material generates charge used for calibration of motion.

 

CIRCUIT

A piezoelectric sensor internal circuit is given above. The resistance Ri is the internal resistance or insulator resistance. The inductance is due to the inertia of the sensor. The capacitance Ce is inversely proportional to the elasticity of the sensor material. For the proper response of the sensor, the load and leakage resistance must be large enough so that low frequencies are preserved. A sensor can be called a pressure transducer in an electrical signal. Sensors are also known as primary transducers.

 

 

 

 

Fig 3.14 piezo electric sensor circuit

SPECIFICATIONS

Some of the basic characteristics of piezoelectric sensors are

·        The range of measurement: This range is subject to measurement limits.

·         

·        Sensitivity S: Ratio of change in output signal ∆y to the signal that caused the change ∆x.

S = ∆y/∆x.

·        Reliability: This accounts to the sensors ability to keep characteristics in certain limits under set operational conditions.

Besides these, some of the specifications of piezoelectric sensors are a threshold of reaction, errors, time of indication etc…

·        These sensors contain as Impedance value ≤500Ω.

·        These sensors generally operate in a temperature range of approximately -20°C to +60°C.

·        These sensors are to be kept at a temperature between -30°C to +70°C to prevent them from degradation.

·        These sensors have very low Soldering temperature.

·        Strain sensitivity of a piezoelectric sensor is 5V/µƐ.

·        Due to its high flexibility Quartz is the most preferred material as a piezoelectric sensor.

 

RFID

Radio-frequency identification (RFID) uses electromagnetic fields to automatically identify and track tags attached to objects. An RFID tag consists of a tiny radio transponder; a radio receiver and transmitter. When triggered by an electromagnetic interrogation pulse from a nearby RFID reader device, the tag transmits digital data, usually an identifying inventory number, back to the reader. This number can be used to inventory goods. There are two types. Passive tags are powered by energy from the RFID reader's interrogating radio waves. Active tags are powered by a battery and thus can be read at a greater range from the RFID reader; up to hundreds of meters. Unlike a barcode, the tag doesn't need to be within the line of sight of the reader, so it may be embedded in the tracked object. RFID is one method of automatic identification and data capture (AIDC).

RFID tags are used in many industries. For example, an RFID tag attached to an automobile during production can be used to track its progress through the assembly line; RFID-tagged pharmaceuticals can be tracked through warehouses; and implanting RFID microchips in livestock and pets enables positive identification of animals.

Since RFID tags can be attached to cash, clothing, and possessions, or implanted in animals and people, the possibility of reading personally-linked information without consent has raised serious privacy concerns.[2] These concerns resulted in standard specifications development addressing privacy and security issues. ISO/IEC 18000 and ISO/IEC 29167 use on-chip cryptography methods for untraceability, tag and reader authentication, and over-the-air privacy. ISO/IEC 20248 specifies a digital signature data structure for RFID and barcodes providing data, source and read method authenticity. This work is done within ISO/IEC JTC 1/SC 31 Automatic identification and data capture techniques. Tags can also be used in shops to expedite checkout, and to prevent theft by customers and employees.

 

TAGS

RFID tags are made out of three pieces: a micro chip (an integrated circuit which stores and processes information and modulates and demodulates radio-frequency (RF) signals), an antenna for receiving and transmitting the signal and a substrate.[12] The tag information is stored in a non-volatile memory. The RFID tag includes either fixed or programmable logic for processing the transmission and sensor data, respectively.

RFID tags can be either passive, active or battery-assisted passive. An active tag has an on-board battery and periodically transmits its ID signal. A battery-assisted passive has a small battery on board and is activated when in the presence of an RFID reader. A passive tag is cheaper and smaller because it has no battery; instead, the tag uses the radio energy transmitted by the reader. However, to operate a passive tag, it must be illuminated with a power level roughly a thousand times stronger than an active tag for signal transmission. That makes a difference in interference and in exposure to radiation. Tags may either be read-only, having a factory-assigned serial number that is used as a key into a database, or may be read/write, where object-specific data can be written into the tag by the system user. Field programmable tags may be write-once, read-multiple; "blank" tags may be written with an electronic product code by the user. The RFID tag receives the message and then responds with its identification and other information. This may be only a unique tag serial number, or may be product-related information such as a stock number, lot or batch number, production date, or other specific information. Since tags have individual serial numbers, the RFID system design can discriminate among several tags that might be within the range of the RFID reader and read them simultaneously.

READERS

RFID systems can be classified by the type of tag and reader.

A Passive Reader Active Tag (PRAT) system has a passive reader which only receives radio signals from active tags (battery operated, transmit only). The reception range of a PRAT system reader can be adjusted from 1–2,000 feet (0–600 m)[13], allowing flexibility in applications such as asset protection and supervision. An Active Reader Passive Tag (ARPT) system has an active reader, which transmits interrogator signals and also receives authentication replies from passive tags. An Active Reader Active Tag (ARAT) system uses active tags awoken with an interrogator signal from the active reader. A variation of this system could also use a Battery-Assisted Passive (BAP) tag which acts like a passive tag but has a small battery to power the tag's return reporting signal. Fixed readers are set up to create a specific interrogation zone which can be tightly controlled. This allows a highly defined reading area for when tags go in and out of the interrogation zone. Mobile readers may be handheld or mounted on carts or vehicles.

VOLTAGE SENSOR

A voltage sensor is a sensor is used to calculate and monitor the amount of voltage in an object. Voltage sensors can determine both the AC voltage or DC voltage level. The input of this sensor can be the voltage whereas the output is the switches, analog voltage signal, a current signal, an audible signal, etc.

Sensors are basically a device which can sense or identify and react to certain types of electrical or some optical signals. Implementation of voltage sensor and current sensor techniques have become an excellent choice to the conventional current and voltage measurement methods.

Advantages of Voltage Sensors Over Conventional Measuring Techniques

The advantage of voltage sensors include:

  • Small in weight and size.
  • Personnel safety is high.
  • Degree of accuracy is very high.
  • It is non-saturable.
  • Wide dynamic range.
  • Eco-friendly.
  • It is possible to combine both the voltage and current measurement into a single physical device with small and compact dimensions.

Types of Voltage Sensors

These sensors are classified into two types like a resistive type sensor and capacitive type sensor.

 

1) Resistive Type Sensor

This sensor mainly includes two circuits like a voltage divider & bridge circuit. The resistor in the circuit works as a sensing element. The voltage can be separated into two resistors like a reference voltage & variable resistor to make a circuit of the voltage divider. A voltage supply is applied to this circuit. The output voltage can be decided by the resistance used in the circuit. So the voltage change can be amplified.

 

 

 

Fig 3.15 Resistive Type Sensor

The bridge circuit can be designed with four resistors. One of these resistors can be subjected to the voltage detector device. The change in voltage can be directly exhibited. This difference alone can be amplified but the difference within the voltage divider circuit not only amplified.

2) Capacitor Type Sensor

This type of sensor consists of an insulator and two conductors within the center. As the capacitor is power-driven with 5 Volt, then the flow of current will be there in the capacitor. This can create revulsion of electrons within the capacitor. The difference in capacitance indicates the voltage and the capacitor can be connected within the series.

 

 

 

 

 

Fig 3.16 Capacitor Type Sensor

 

GSM MODEM

SIM800L GSM/GPRS module is a miniature GSM modem, which can be integrated into a great number of IoT projects. You can use this module to accomplish almost anything a normal cell phone can; SMS text messages, Make or receive phone calls, connecting to internet through GPRS, TCP/IP, and more! To top it off, the module supports quad-band GSM/GPRS network, meaning it works pretty much anywhere in the world.


 

 

 

 

Fig 3.17 GSM 800L frontside


At the heart of the module is a SIM800L GSM cellular chip from SimCom. The operating voltage of the chip is from 3.4V to 4.4V, which makes it an ideal candidate for direct LiPo battery supply. This makes it a good choice for embedding into projects without a lot of space.

All the necessary data pins of SIM800L GSM chip are broken out to a 0.1″ pitch headers. This includes pins required for communication with a microcontroller over UART. The module supports baud rate from 1200bps to 115200bps with Auto-Baud detection.The module needs an external antenna to connect to a network. The module usually comes with a Helical Antenna and solders directly to NET pin on PCB. The board also has a U.FL connector facility in case you want to keep the antenna away from the board.

 

 

 

 

Fig 3.18 GSM800L backside


 

There’s a SIM socket on the back! Any activated, 2G micro SIM card would work perfectly. Correct direction for inserting SIM card is normally engraved on the surface of the SIM socket.

This module measures only 1 inch² but packs a surprising amount of features into its little frame. Some of them are listed below:

·        Supports Quad-band: GSM850, EGSM900, DCS1800 and PCS1900

·        Connect onto any global GSM network with any 2G SIM

·        Make and receive voice calls using an external 8Ω speaker & electret microphone

·        Send and receive SMS messages

·        Send and receive GPRS data (TCP/IP, HTTP, etc.)

·        Scan and receive FM radio broadcasts

·        Transmit Power:

·        Class 4 (2W) for GSM850

·        Class 1 (1W) for DCS1800

·        Serial-based AT Command Set

·        FL connectors for cell antennae

·        Accepts Micro SIM Card

SIM800L GSM Module Pinout

The SIM800L module has total 12 pins that interface it to the outside world. The connections are as follows:

 

 

 

 

 

 

 

Fig 3.19 GSM800L Pinout

 

 

 

LCD DISPLAY

LCD modules are very commonly used in most embedded projects, the reason being its cheap price, availability and programmer friendly. Most of us would have come across these displays in our day to day life, either at PCO’s or calculators. The appearance and the pinouts have already been visualized above now let us get a bit technical.

16×2 LCD is named so because; it has 16 Columns and 2 Rows. There are a lot of combinations available like, 8×1, 8×2, 10×2, 16×1, etc. but the most used one is the 16×2 LCD. So, it will have (16×2=32) 32 characters in total and each character will be made of 5×8 Pixel Dots. A Single character with all its Pixels is shown in the below picture.

Now, we know that each character has (5×8=40) 40 Pixels and for 32 Characters we will have (32×40) 1280 Pixels. Further, the LCD should also be instructed about the Position of the Pixels. Hence it will be a hectic task to handle everything with the help of MCU, hence an Interface IC like HD44780is used, which is mounted on the backside of the LCD Module itself. The function of this IC is to get the Commands and Data from the MCU and process them to display meaningful information onto our LCD Screen. You can learn how to interface an LCD using the above mentioned links. If you are an advanced programmer and would like to create your own library for interfacing your Microcontroller with this LCD module then you have to understand the HD44780 IC is working and commands which can be found its datasheet.

Features of 16×2 LCD module

·        Operating Voltage is 4.7V to 5.3V

·        Current consumption is 1mA without backlight

·        Alphanumeric LCD display module, meaning can display alphabets and numbers

·        Consists of two rows and each row can print 16 characters.

·        Each character is build by a 5×8 pixel box

·        Can work on both 8-bit and 4-bit mode

·        It can also display any custom generated characters

Fig 3.20  LCD Display Pinout

 

Advantages

·                    Power generation is strolling on the step.

·                    No need for fuel input.

·                    This is the non-ordinary technique for producing power.

·                    No moving parts - long administration life.

·                    It is Reliable, Economical, and Eco-Friendly.

·                    Less utilization of Non-sustainable power sources.\Power is likewise produced by running or practicing on the progression.

·                    No big industries required for generation.


Code

#include<SoftwareSerial.h>

#include<LiquidCrystal.h>

LiquidCrystal lcd(12, 11, A2, A3, A4, A5); // interface lcd pins

SoftwareSerial mySerial(9, 10);// (rx,tx) OF GSM

// rfid

#define Ready 4

#define Relay 6

#define Warning 3

#define stoppin 7

#define batterylow 2

boolean stringComplete = false;

String inputString = "";

int n = 0;

//voltage

const int voltagesensorpin=A0;

float vin;

float vout;

float voltagesensorval;

const float factor=5.128;

const float vcc=5.00;

// step count

int a =0;

int e = 8;

 

void setup()

{

Serial.begin(9600);

 mySerial.begin(9600);

 inputString.reserve(200);

 pinMode(Ready,OUTPUT);                                                                                                                        

pinMode(Relay,OUTPUT);                                                                                                               

pinMode(Warning,OUTPUT);

 pinMode(batterylow, OUTPUT);

 pinMode(e,INPUT);

 lcd.begin(16,2);

 lcd.clear();

 lcd.print(" footstep power ");

 lcd.setCursor(0,1);

 lcd.print("  generation ");

 delay(2000);

 lcd.clear();

 lcd.print("with rfid and");

 lcd.setCursor(0,1);

 lcd.print("SMS notification");

 delay(2000);

 lcd.clear();

 lcd.print("   done by  ");

 lcd.setCursor(0,1);

 lcd.print(" **********");

 delay(2000);

 lcd.clear();

 lcd.print("      gsm ");

 lcd.setCursor(0,1);

 lcd.print(" intilizing ");

 delay(2000);

 lcd.clear();

 lcd.print("     gsm    ");

 lcd.setCursor(0,1);

 lcd.print("    ready  ");

 delay(2000);

 lcd.clear();

 lcd.print("    rfid  ");

 lcd.setCursor(0,1);

 lcd.print("    ready ");

 delay(2000);

 lcd.clear();

 lcd.print("checking voltage");

 lcd.setCursor(0,1);

 lcd.print("from battery");

 delay(2000);

}

void loop()

{       

 digitalWrite(Ready,HIGH);

 // voltage sensor

 voltagesensorval=analogRead(voltagesensorpin);

// vout=(voltagesensorval/1024)*vcc;

 //vin=vout*factor;

 if(vin<0.1)

 {

   vin=0.0;

 }

 int button = digitalRead(e);

  if(button == HIGH)

   {

     a++;

     delay(300);

   }

 

 Serial.print("voltage=");

 Serial.println(vin);

 lcd.clear();

 lcd.print("voltage=");

 lcd.print(vin);

 lcd.print("V");

 lcd.setCursor(0,1);

 lcd.print("foot steps=");

 lcd.setCursor(13,1);

 lcd.print(a);

 delay(1000);

  

   if(vin<3.5)

   {

     lcd.clear();

     digitalWrite(batterylow, HIGH);

     lcd.print(" Battery low ");

     lcd.setCursor(0,1);

     lcd.print(" sending sms ");

     delay(2000);

     digitalWrite(batterylow, LOW);

     mySerial.println("AT+CMGF=1");  

     delay(1000); 

     mySerial.println("AT+CMGS=\"+91xxxxxxxxxx\"\r");

     delay(1000);

     mySerial.println("battery low ; maintaince required");

     delay(100);

     mySerial.println((char)26);

     delay(1000);

   }

// welcome message

 lcd.clear();

 lcd.print(" please swipe ");

 lcd.setCursor(0,1);

 lcd.print(" your card ");

 delay(1000);

 

// rfid

 if (stringComplete) {

   Serial.println(inputString);

   if (inputString.equals("2500898FAD8E"))

 

{

Serial.println("user 1 granted");

                        

   for (int i = 60; i>=0 ; i--)

   {    

     if (digitalRead (stoppin) == HIGH)

     { 

       lcd.clear();

       lcd.print("  charging");

       lcd.setCursor(0,1);

       lcd.print("  finished");

       delay(500);

       break;                       

     }

     digitalWrite (Relay, HIGH); 

     lcd.clear();

     lcd.setCursor (0, 0);

     lcd.print("user 1 granted");     

     lcd.setCursor (0, 1);  

     lcd.print("time in sec=");   

     lcd.setCursor (13, 1);    

     lcd.print (i);                

     delay (1000);                 

     lcd.clear();

   }

   digitalWrite (Relay, LOW);  

   lcd.clear();

   lcd.print("  charging");

   lcd.setCursor(0,1);

   lcd.print("  finished"); 

   delay(500);     

 }

 

 if (inputString.equals("250089A21618"))

   {

     Serial.println("user 2 granted");

                        

   for (int i = 60; i>=0 ; i--)

   {    

     if (digitalRead (stoppin) == HIGH)

     { 

       lcd.clear();

       lcd.print("  charging");

       lcd.setCursor(0,1);

       lcd.print("  finished");

       delay(500);

       break;                       

     }

     digitalWrite (Relay, HIGH); 

     lcd.clear();

     lcd.setCursor (0, 0);

     lcd.print("user 2 granted");     

     lcd.setCursor (0, 1);  

     lcd.print("time in sec=");   

     lcd.setCursor (13, 1);    

     lcd.print (i);                

     delay (1000);                 

     lcd.clear();

   }

   digitalWrite (Relay, LOW);  

   lcd.clear();

   lcd.print("  charging");

   lcd.setCursor(0,1);

   lcd.print("  finished"); 

   delay(500);     

 }

 

if (inputString.equals("2B006D642A08"))

{

     Serial.println("Access Denied");

     digitalWrite(Warning,HIGH);

     lcd.clear();

     lcd.print("access denied");

     delay(2000);

     digitalWrite(Warning,LOW);

     mySerial.println("AT");

     mySerial.println("AT+CMGF=1");  

     delay(1000); 

     mySerial.println("AT+CMGS=\"+91xxxxxxxxxx\"\r");

     delay(1000);

     mySerial.println("unauthorised person swiped");

     delay(100);

     mySerial.println((char)26);

     delay(1000); }

    stringComplete = false;

   inputString = "";                                                                                                                                         

}

}

 

  void serialEvent() {

 while (Serial.available()) {

   n++;

   char inChar = (char) Serial.read();

   inputString += inChar;

   if (n >= 12) {

     n = 0;

     stringComplete = true;

   }

 }

}