loading

Introduction:

Make an inexpensive and automated DIY WeatherBot .Here we are using SIMCom SIM900A. It’s one of the cheapest Gsm/Gprsmodule available in market. A sensor measures temperature of your room and another temperature reading is taken from openweather.com and post them on thingspeak.comand over LCD screen it displays both the temperature and type of weather on the top.

Step 1: Important Points

1. Why we use SIM900A:The 900 in name is use

to denote that module supports communication in 900Mhz band. In India where we are from, most of the network providers operate in 900Mhz band. If you are from another country, you have to check mobile network band in your area.

2. Power requirements of GSM module:

GSM modules are manufactured by different companies even for same GSM IC they can use different input power supply specs. You need to check those spec. and make sure to use the same for it. The module we are using takes 12V, 1A (2A preferable) input supply.

3. Use of internal reference for LM-35 (temperature sensor):

The LM35 is a common TO-92 temperature sensor. It is often used with the equation

temperature = (5.0 * analog-input) * 100.0) / 1024;

However, this does not yield high resolution. This can easily be avoided, however. TheLM35 only produces voltages from 0 to +1V. The ADC uses 5V as the highest possible value. This is wasting 80% of the possible range. If you change aRef to 1.1V, you will get almost the highest resolution possible.

Getting started with GSM

1) Insert the SIM card in module and lock it.

2) Connect the adopter and on the supply.

3) Wait for some time and see the blinking rate of ‘status LED’.

4) Once the connection is established successfully, the status LED will blink for every 3 seconds.

Step 2: All Needed Material

1) SIM900/900A GSM module (preferably from ATRIM electronics).

2) Arduino Uno

3) 16x2 LCD screen

4) Some connecting wires (M2M and M2F)

5) LM-35 temperature sensor

Step 3: Making Hardware Connections

1) Connecting GSM with Arduino

We are using SoftwareSerial library for serial communication with GSM. The connections are shown in above figure .

2) Connecting LCD with Arduino

The connections are shown in above figures

3) Connecting LM-35 with Arduino

The connections are shown in above figures

Step 4: The Code: TCP and HTTP Get

a) Interfacing code for GSM

List of functions created :

·        
openWeatherRequest
(void):
Get weather data from openweather.com
·        
Post2thingspeak (int
data):
Posts data on thingspeak.com

Some AT commands of which you need to change parameters according to you:

· Use your own Apikey for variable apikeyinitialized at the starting of program

·        
AT_input("AT+SAPBR=3,1,\"APN\",\"X1
\"","OK"): You will find it in openWeatherRequest function.

X1- Use APN for your Sim , for airtel it is www.airtelgprs.com

·        
AT_input("AT+HTTPPARA=\"URL\",\"http://api.openweathermap.org/data/2.5/weather?id=X2&units=metric&appid=X3\"","OK"):
You will find it in openWeatherRequest
function.

X2- Use id for your region e.g for Muradnagar, India it is 1262453

X3-Use your own Appid, which you can create by creating an account at openweather.com

b) Interfacing code for LM35

List of functions created to be use:

·        
temp
(void): Return measured room temperature in float

c) Interfacing code for LCD

List of functions created to be use:

·        
Multi_print(String
str): Prints on both hardserial and soft serial

Step 5: Uploading Code in Arduino

1.Code is available on this Github repository here.

2. Download the repository here in zip.

3. Unzip it and open the all_phone_operations folder.

4.Openall_phone_operations.ino in Arduino ide and upload it (as shown in figure).

Team member of project:--

1.Deva Harsha Bolisetty

2.Devvrat Arya

3.Agam Tyagi

About This Instructable

1,440views

16favorites

License:

Bio: I am a B.tech student ....I do all these things for learning nd fun
More by Agam Tyagi:Weather bot & Weather station using GSM shield Basic phone using GSM and Arduino 
Add instructable to: