Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <SoftwareSerial.h>
- #include "DHT.h"
- #define DHTPIN 2
- #define DHTTYPE DHT11
- // Initialize DHT sensor for normal 16mhz Arduino
- DHT dht(DHTPIN, DHTTYPE);
- // Create global varibales to store temperature and humidity
- float t; // temperature in celcius
- float f; // temperature in fahrenheit
- float h; // humidity
- SoftwareSerial gsm(7, 8);
- void setup() {
- // put your setup code here, to run once:
- dht.begin();
- gsm.begin(9600);
- Serial.begin(9600);
- gsm.println("AT+IPR=9600");
- delay(1000);
- gsm.println("AT+CGATT=1");
- delay(1000);
- gsm.println("AT+SAPBR=1,1");
- delay(1000);
- ShowSerialData();
- gsm.println("AT+SAPBR=3,1,\"CONTYPE\",\"GPRS\"");
- delay(1000);
- ShowSerialData();
- gsm.println("AT+SAPBR=3,1,\"APN\",\"prepaidnet\"");
- delay(1000);
- ShowSerialData();
- gsm.println("AT+SAPBR=3,1,\"USER\",\"mts\"");
- delay(1000);
- ShowSerialData();
- gsm.println("AT+SAPBR=3,1,\"PWD\",\"064\"");
- delay(1000);
- ShowSerialData();
- gsm.println("AT+SAPBR=1,1");
- delay(1000);
- ShowSerialData();
- gsm.println("AT+SAPBR=2,1");
- delay(1000);
- ShowSerialData();
- gsm.println("AT+HTTPTERM");
- delay(1000);
- ShowSerialData();
- gsm.println("AT+HTTPINIT");
- delay(2000);
- ShowSerialData();
- gsm.println("AT+HTTPPARA=\"CID\",1");
- delay(3000);
- ShowSerialData();
- }
- void loop() {
- // put your main code here, to run repeatedly:
- while(gsm.available()) {
- Serial.write(gsm.read());
- }
- if(Serial.available()) {
- gsm.write(Serial.read());
- }
- t=readTemp();
- h=readHum();
- gsm.print("AT+HTTPPARA=\"URL\",\"https://api.thingspeak.com/update?api_key=Z1Q5633A4S1GHIHU&field1=26");
- //gsm.print(t);
- //gsm.println();
- delay(5000);
- //gsm.println((char)26);
- ShowSerialData();
- delay(1000);
- gsm.println("AT+HTTPPARA=\"REDIR\",1");
- delay(3000);
- gsm.println("AT+HTTPSSL=1");
- delay(3000);
- gsm.println("AT+HTTPACTION=0"); /* Start POST session */
- delay(5000);
- gsm.println("AT+HTTPREAD");
- delay(3000);
- gsm.println("AT+HTTPTERM"); /* Terminate HTTP service */
- delay(5000);
- gsm.println("AT+SAPBR=0,1");
- delay(3000);
- ShowSerialData();
- }
- float readTemp() {
- // Read temperature as Celsius
- t = dht.readTemperature();
- //Read humidity
- h = dht.readHumidity();
- // Compute temperature values in Celcius
- t = dht.computeHeatIndex(t,h,false);
- // Check if any reads failed and exit early (to try again).
- if (isnan(t)) {
- Serial.println("Failed to read temp from DHT sensor!");
- return 1;
- }
- return t;
- }
- float readHum() {
- //Read humidity
- h = dht.readHumidity();
- // Read temperature as Celsius
- t = dht.readTemperature();
- // Compute temperature values in Celcius
- t = dht.computeHeatIndex(t,h,false);
- // Check if any reads failed and exit early (to try again).
- if (isnan(h)) {
- Serial.println("Failed to read hum from DHT sensor!");
- return 1;
- }
- return h;
- }
- void ShowSerialData()
- {
- while(gsm.available()!=0)
- Serial.write(gsm.read());
- if(Serial.available()) {
- gsm.write(Serial.read());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement