Thermal imaging alert using GPRS for farmers
![](http://www.weebly.com/weebly/images/file_icons/xls.png)
thermal.pptx | |
File Size: | 1952 kb |
File Type: | pptx |
A thermographic camera (also called an infrared camera or thermal imaging camera) is a device that forms an image using infrared radiation, similar to a common camera that forms an image using visible light. Instead of the 450–750 nanometer range of the visible light camera, infrared cameras operate in wavelengths as long as 14,000 nm (14 µm).
Block diagram
![](http://www.weebly.com/weebly/images/file_icons/xls.png)
presentation1.pptx | |
File Size: | 38 kb |
File Type: | pptx |
![](http://www.weebly.com/weebly/images/file_icons/pdf.png)
1401.pdf | |
File Size: | 14 kb |
File Type: |
![](http://www.weebly.com/weebly/images/file_icons/image.png)
1401.bmp | |
File Size: | 2875 kb |
File Type: | bmp |
Component list:-
Click on blue link to download data-sheet.
Click on blue link to download data-sheet.
1) At-mega 168:
2) 10K Ohm Resistor: (Quantity 2)
4) PIR sensor:
5) Copper clad (PCB): (Quantity 2)
6) 1mm drill bit: (Quantity 5)
8) Buzzer:
9) 5 volt relay:
10) ULN2003:
11) 16 pin IC base:
12) 28 pin IC base:
14) 12 volt battery charger:
15) IC 7805:
16) 16MHz crystal:
17) 10uf capacitor: (Quantity 2)
18) LED: (Quantity 6)
19) 330 Ohm resistor: (Quantity 6)
Code
#include <Servo.h>
Servo myservo; // create servo object to control a servo
int val=0; // variable to read the value from the analog pin
int buttonState = LOW;
char inByte;
void setup() {
Serial.begin(9600);
pinMode(4, INPUT);
pinMode(8, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
myservo.attach(9);
myservo.write(val); // sets the servo position according to the scaled value
delay(15);
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
val=90;
myservo.write(val);
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(12, LOW);
digitalWrite(8, HIGH);
delay(500);
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
}
void loop() {
buttonState = digitalRead(4);
if(buttonState == HIGH)
{
val=90;
myservo.write(val);
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(12, LOW);
digitalWrite(8, HIGH);
establishContact();
delay(1000);
}
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
}
void establishContact()
{
while (Serial.available() <= 0)
{
Serial.println("ATE0");
Serial.write(13);
Serial.write(10);
Serial.println("AT");
}
if (Serial.available() > 0)
{
inByte = Serial.read();
inByte = Serial.read();
Serial.println(inByte); // send an initial strin
delay(3000);
Serial.print("AT+CMGF=1"); //set to SMS mode
Serial.write(13);
Serial.write(10);
if (Serial.available() > 0) {
inByte = Serial.read();
Serial.println(inByte); // send an initial strin
delay(2000);
Serial.print("AT+CMGS=\"+919930699904\"\r");
delay(500);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919892682259\"\r");
delay(1000);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919820966214\"\r");
delay(1000);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919820805405\"\r");
delay(1000);
Serial.print("1401");
Serial.print("is using project");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
}
}
}
Servo myservo; // create servo object to control a servo
int val=0; // variable to read the value from the analog pin
int buttonState = LOW;
char inByte;
void setup() {
Serial.begin(9600);
pinMode(4, INPUT);
pinMode(8, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
myservo.attach(9);
myservo.write(val); // sets the servo position according to the scaled value
delay(15);
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
val=90;
myservo.write(val);
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(12, LOW);
digitalWrite(8, HIGH);
delay(500);
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
}
void loop() {
buttonState = digitalRead(4);
if(buttonState == HIGH)
{
val=90;
myservo.write(val);
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(12, LOW);
digitalWrite(8, HIGH);
establishContact();
delay(1000);
}
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
}
void establishContact()
{
while (Serial.available() <= 0)
{
Serial.println("ATE0");
Serial.write(13);
Serial.write(10);
Serial.println("AT");
}
if (Serial.available() > 0)
{
inByte = Serial.read();
inByte = Serial.read();
Serial.println(inByte); // send an initial strin
delay(3000);
Serial.print("AT+CMGF=1"); //set to SMS mode
Serial.write(13);
Serial.write(10);
if (Serial.available() > 0) {
inByte = Serial.read();
Serial.println(inByte); // send an initial strin
delay(2000);
Serial.print("AT+CMGS=\"+919930699904\"\r");
delay(500);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919892682259\"\r");
delay(1000);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919820966214\"\r");
delay(1000);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919820805405\"\r");
delay(1000);
Serial.print("1401");
Serial.print("is using project");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
}
}
}
#include <Servo.h>
Servo myservo; // create servo object to control a servo
int val=0; // variable to read the value from the analog pin
int buttonState = LOW;
char inByte;
void setup() {
Serial.begin(9600);
pinMode(4, INPUT);
pinMode(8, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
myservo.attach(9);
myservo.write(val); // sets the servo position according to the scaled value
delay(15);
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
val=90;
myservo.write(val);
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(12, LOW);
digitalWrite(8, HIGH);
delay(500);
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
}
void loop() {
buttonState = digitalRead(4);
if(buttonState == HIGH)
{
val=90;
myservo.write(val);
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(12, LOW);
digitalWrite(8, HIGH);
establishContact();
delay(1000);
}
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
}
void establishContact()
{
while (Serial.available() <= 0)
{
Serial.println("ATE0");
Serial.write(13);
Serial.write(10);
Serial.println("AT");
}
if (Serial.available() > 0)
{
inByte = Serial.read();
inByte = Serial.read();
Serial.println(inByte); // send an initial strin
delay(3000);
Serial.print("AT+CMGF=1"); //set to SMS mode
Serial.write(13);
Serial.write(10);
if (Serial.available() > 0) {
inByte = Serial.read();
Serial.println(inByte); // send an initial strin
delay(2000);
Serial.print("AT+CMGS=\"+919930699904\"\r");
delay(500);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919892682259\"\r");
delay(1000);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919820966214\"\r");
delay(1000);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919820805405\"\r");
delay(1000);
Serial.print("1401");
Serial.print("is using project");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
}
}
}
Servo myservo; // create servo object to control a servo
int val=0; // variable to read the value from the analog pin
int buttonState = LOW;
char inByte;
void setup() {
Serial.begin(9600);
pinMode(4, INPUT);
pinMode(8, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
myservo.attach(9);
myservo.write(val); // sets the servo position according to the scaled value
delay(15);
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
val=90;
myservo.write(val);
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(12, LOW);
digitalWrite(8, HIGH);
delay(500);
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
}
void loop() {
buttonState = digitalRead(4);
if(buttonState == HIGH)
{
val=90;
myservo.write(val);
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(12, LOW);
digitalWrite(8, HIGH);
establishContact();
delay(1000);
}
val=0;
myservo.write(val);
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
digitalWrite(12, HIGH);
digitalWrite(8, LOW);
delay(1000);
}
void establishContact()
{
while (Serial.available() <= 0)
{
Serial.println("ATE0");
Serial.write(13);
Serial.write(10);
Serial.println("AT");
}
if (Serial.available() > 0)
{
inByte = Serial.read();
inByte = Serial.read();
Serial.println(inByte); // send an initial strin
delay(3000);
Serial.print("AT+CMGF=1"); //set to SMS mode
Serial.write(13);
Serial.write(10);
if (Serial.available() > 0) {
inByte = Serial.read();
Serial.println(inByte); // send an initial strin
delay(2000);
Serial.print("AT+CMGS=\"+919930699904\"\r");
delay(500);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919892682259\"\r");
delay(1000);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919820966214\"\r");
delay(1000);
Serial.print("Warning!");
Serial.print("intruder in your farm");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
Serial.print("AT+CMGS=\"+919820805405\"\r");
delay(1000);
Serial.print("1401");
Serial.print("is using project");
Serial.write(26); //'ctrl+z' or 'SUB'
delay(2000);
Serial.write(13);
Serial.write(10);
delay(1000);
}
}
}