Cấu trúc của một cảm biến gas

Một phần của tài liệu điều khiển từ xa các thiết bị bằng tin nhắn sms (Trang 66)

Hình 3.20 Bộ cảm biến gas MQ-6

Hình 3.21 Sơđồ cấu tạo của cảm biến gas MQ-6

Điện áp lấy ra trên chân A (hoặc chân B) của cảm biến giống nhưđiện áp lấy ra ở cầu phân áp. Điện trở Rs của cảm biến thay đổi làm cho giá trịđiện áp trên đầu ra này thay đổi, tùy thuộc vào nồng độ khí gas trong không khí ở nơi đặt cảm biến mà ta có các giá trị Vout khác nhau. Điện trở RL được chọn nằm trong khoảng từ 10K tới 20K .

Trang 67

Hình 3.22 Sơđồ mắc cảm biến gas MQ-6 trong mạch điện

Đặc điểm của MQ-6

Độ nhậy cao với LPG, iso-butano , propane Kém nhậy với alcohol và khói

Đáp ứng nhanh, tuổi thọ cao, mạch đơn giản. Chú ý:

- Lắp mạch ở gần nơi có khả năng xảy ra rò rỉ gas lớn nhất.

- Không nên để nước hoặc các chất lỏng khác rơi vào mạch, đặc biệt là rơi vào cảm biến. - Sau khoảng thời gian làm việc là 02 ngày thì nên để mạch ở chếđộ nghỉ khoảng 5 phút. - Khi có báo động xảy ra thì cần tìm cách khắc phục sự cố kịp thời: Khóa van an toàn của gas, mở tất cả các cửa để khí gas bay ra ngoài…Không nên dùng bất cứ dụng cụ đánh lửa nào hoặc không nên bật bất cứ công tắc nào trong phòng, tránh cháy nổ xảy ra.

Ứng dụng của cảm biến gas MQ-6

Cảm biến MQ-6 được ứng dụng để phát hiện dò khí gas trong gia đình, phòng trọ, các cửa hàng bán gas và một số nơi dễ bị rò gas khác. Nó thích hợp cho việc phát hiện LPG, iso-butano , propane, LNG tránh để gần nơi có alcohol, khói thuốc lá, khói bếp.

Nồng độđo:

- Từ 500 – 4000ppm với khí gas thường - Từ 1000 – 10000 ppm với CH4

Trang 68 c. Nguyên lý làm việc của cảm biến gas

Dùng cảm biến khí gas MQ-6 nhận biết sự xuất hiện của khí gas trong không khí. Tín hiệu ở

ngõ ra của khối cảm biến sẽ được đưa đến vi điều khiển, nếu có khí gas dò rỉ thì vi điều khiển sẽ nhận biết được và sẽ phát tín hiệu báo động.

Trên đây là những phương án lựa chọn thiết kế mà trong quá trình thực hiện đồ án em đã

đưa ra. Từ việc phân tích em đã lựa chọn phương án tối ưu nhất để thi công mạch sẽ được trình bày trong chương 4.

Trang 69 CHƯƠNG 4

THỰC HIỆN THIẾT KẾ VÀ THI CÔNG MẠCH

4.1. GIỚI THIỆU

Sau quá trình nghiên cứu lý thuyết, quá trình thực hiện luận văn, lựa chọn các phương án thiết kế em thực hiện thiết kế mạch thật.

- Thiết kế mạch sử dụng phần mềm Altium Designer. - Mã nguồn được viết trên chương trình Codevision AVR.

Trong chương 4 này, em đưa ra sơđồ mạch và diễn giải kết quả thu đươc.

4.2 SƠ ĐỒ KHỐI CỦA HỆ THỐNG VÀ CHỨC NĂNG CỦA TỪNG KHỐI 4.2.1 Sơ đồ khối của hệ thống 4.2.1 Sơ đồ khối của hệ thống

Hình 4.1 : Sơđồ khối của hệ thống

4.2.2 Chức năng của các khối

Khối nguồn: Cung cấp nguồn hoạt động cho toàn bộ hệ thống. Gồm nguồn ngoài hoặc pin.

Trang 70

Khối Module SIM 900: Nhận tin nhắn hoặc cuộc gọi từ điện thoại người dùng gửi tới khối xử lý trung tâm và gửi tín hiệu trở lại.

Khối xử lý trung tâm: Xử lý bản tin nhận/gửi tới module GSM từ đó đưa ra hoạt

động thích hợp cho các khối khác.

Khối công suất: khuếch đại tín hiệu điều khiển sao cho phù hợp với công suất của tải

Khối cảm biến: Phát hiện khi có người lạđột nhập, rò gas…

Khối giao tiếp bàn phím màn hình LCD: Giúp người dùng có thể cài đặt hoặc hiển thị thông báo trạng thái hoạt động của mạch.

4.3 SƠ ĐỒ NGUYÊN LÝ CỦA HỆ THỐNG 4.3.1. Module điều khiển 4.3.1. Module điều khiển

4.3.1.1. Khối nguồn

Hình 4.2 Sơđồ nguyên lý khối nguồn

Dùng IC LM2576 chuyển đổi từ nguồn một chiều từ 9-30V sang nguồn một chiều 5V (VCC)để cung cấp cho Vi điều khiển và các khối cảm biến.

Nguồn 5V qua diode D2 (FR207) giảm xuống thành 4,3V (VBAT) cấp nguồn cho module SIM900

Sử dụng tụđiện, điện trởđể lọc và ổn định nguồn ra. Dùng đèn Led để báo trạng thái nguồn.

Trang 71

Hình 4.3 Sơđồ nguyên lý khối vi điều khiển

Sử dụng Vi điều khiển Atmega 8 với các chức năng đã được giới thiệu ở chương 3. Các nút bấm Program, Menu dùng để thao tác, cài đặt sốđiện thoại hoặc nhắn tin gọi

điện.

Sử dụng Led để báo trạng thái Debug (gỡ rối) Vi điều khiển.

4.3.1.3. Mạch hiển thị

Trang 72

Dùng LCD 16x2 hiển thị nội dung tin nhắn lưu giữ trong SIM điện thoại, cuộc gọi

đến hoặc hiển thị các thông báo khác của hệ thống.

Các tín hiệu cảm biến được nối vào jack P6 rồi đến vi điều khiển

4.3.1.4. Mạch công suất

Hình 4.5 Sơđồ nguyên lý mạch công suất

Sử dụng rơle để bật tắt thiết bịđiện. Tín hiệu điều khiển từ vi điều khiển đưa đến cực b của Transistor 2N2822 đểđiều khiển rơle bật tắt bóng đèn.

Trang 73

Hình 4.6 Sơđồ nguyên lý module SIM 900

Module SIM900 giao tiếp với Vi điều khiển theo chuẩn RS232, ghép nối với Simcard

để hệ thống có thể giao tiếp với mạng GSM.

Trang 74 4.4 SƠ ĐỒ MẠCH IN MODULE ĐIỀU KHIỂN

Trang 75

4.5. SƠ ĐỒ THUẬT TOÁN

Hình 4.8 Sơđồ thuật toán Giải thích thuật toán:

Khởi tạo hệ thống

Khởi tạo giá trị

Khởi tạo LCD

Khởi tạo Modem GSM Cập nhật dữ liệu Thực hiện lệnh điều khiển Hiển thị Bắt đầu

Trang 76

Chương trình có 3 hàm chính được gọi đến trong hàm Main đó là hàm Update, hàm Control và hàm Display:

Hàm Update thực hiện chức năng nhận các dữ liệu được gửi đến cổng Com lưu vào trong bộđệm và chờđược xử lý.

Hàm Control xử lý các dữ liệu đã được lưu trong bộđệm từ hàm Update sau đó đưa ra đáp ứng thích hợp của mạch.

Hàm Display thực hiện việc hiển thị các dữ liệu đã được lưu sẵn trong bộ đệm từ

hàm Update lên LCD.

Hàm Main của chương trình sau khi khởi tạo hệ thống, khởi tạo các giá trị ban đầu và khởi tạo cho Modem SIM900 sẽ lần lượt gọi các hàm Update, Control, Display liên tục nhận dữ liệu, xử lý và hiển thị dữ liệu.

4.6. KẾT QUẢ LUẬN VĂN

Trang 77

Hình 4.10 Mạch hoạt động của hệ thống Hoạt động của hệ thống:

Người dùng gửi tin nhắn từ sốđiện thoại đã được cài đặt sẵn tới sốđiện thoại của hệ

thống. Điều khiển bật/tắt thiết bịđiện.

Sau khi nhận và thực hiện lệnh từ tin nhắn người dùng, hệ thống sẽ tựđộng thực hiện cuộc gọi tới người dùng báo đã thực hiện.

Người dùng có thể kiểm tra tình trạng thiết bị bằng cách thực hiện cuộc gọi tới số điện thoại của hệ thống, hệ thống sẽ tự động ngắt cuộc gọi và gửi tin nhắn báo tình trạng thiết bị cho người dùng.

Đối với hệ thống cảnh báo: Khi cảm biến phát hiện có khí gas rò rỉ hoặc có người lạ đột nhập, hệ thống sẽ thực hiện cuộc gọi tới người dùng để cảnh báo cho người dùng biết có rò rỉ khí gas hoặc có người lạđột nhập.

Trang 78

4.7 KẾT LUẬN

Trên đây là toàn bộ quá trình thi công mạch. Kết quả đạt được như mục đích đặt ra ban

đầu. Mạch chạy ổn định và thực hiện được các yêu cầu đặt ra như bật tắt các thiết bị khi nhận được tin nhắn điều khiển của người dùng, tự động tạo cuộc gọi cảnh báo cho người dùng khi có sự cố rò rỉ khí gas hoặc có người lạđột nhập.

Trong quá trình thi công mạch em đã gặp một số khó khăn nhất định. Vì thời gian thực hiện có hạn, đồng thời sự thiếu sót về kinh nghiệm thực tế nên gặp nhiều khó khăn trong việc lựa chọn linh kiện dẫn đến trong quá trình thử nghiệm với mạch phải diễn ra nhiều lần mới đạt được kết quả như mong muốn.

Mặc dù gặp nhiều khó khăn, nhưng nhờ sự định hướng cùng những ý kiến đóng góp trong quá trình thực hiện mạch của giáo viên hướng dẫn là PGS.TS. Hoàng Mạnh Thắng

Trang 79 CHƯƠNG 5

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 5.1 KẾT LUẬN

Sau một thời gian nghiên cứu, thiết kế và thi công, đồ án đã được hoàn thành bằng sự

nỗ lực của em cùng sự hướng dẫn chỉ bảo chu đáo và tận tình của PGS.TS Hoàng Mạnh Thắng. Đồ án đã được hoàn thành đúng tiến độ và đáp ứng được các yêu cầu đã đặt ra của hệ thống là giám sát và điều khiển bằng tin nhắn SMS thông qua mạng GSM.

Kết quảđạt được:

Mạch điện đã được thiết kế và thi công hoàn chỉnh. Mạch được thử nghiệm nhiều lần và hoạt động ổn định, thực hiện các chức năng sau:

Thực hiện bật tắt các thiết bịđiện bằng tin nhắn SMS.

Cảnh báo cho người dùng khi có người lạđột nhập hoặc xảy ra rò rỉ khí gas. Kiểm tra tình trạng các thiết bịđiện để thông báo cho người dùng.

5.1.1 Ưu điểm

- Hệ thống hoạt động ở tất cả mọi vùng lãnh thổ trên thế giới có phủ sóng GSM. Vì vậy việc điều khiển không bị giới hạn bởi khoảng cách địa lý.

- Hệ thống hoạt động ở những vị trí khó khăn mà đường dây điện, điện thoại, cáp không có, chỉ cần mạng di động GSM phủ sóng

- Hệ thống có thể sử dụng các loại sim của các nhà cung cấp khác nhau như: Viettel, mobile…

- Cấu trúc tin nhắn điều khiển đơn giản, dễ kiểm soát

- Phần cứng được thiết kế đơn giản, sử dụng số linh kiện tối thiểu, kết nối chân ra đáp ứng nhu cầu phát triển đề tài sau này.

5.1.2 Khuyết điểm

- Hệ thống chỉ hoạt động ở vùng có phủ sóng điện thoại di động GSM. Nên ở

những vùng không phủ sóng GSM sẽ không sử dụng được tính năng của hệ

thống.

- Phải tốn chi phí gửi tin nhắn SMS đểđiều khiển thiết bị và nhận tín hiệu thông báo bằng SMS của thiết bị.

5.1.3 Khả năng ứng dụng thực tế của đề tài

Trang 80

- Có thể nhận tin nhắn điều khiển với số lượng và thời lượng không giới hạn. Chủ nhà có thể kiểm soát được các thiết bị cần theo dõi trạng thái trong nhà khi vắng nhà. - Có thểđiều khiển, kiểm tra trạng thái thiết bị từ xa thông qua điện thoại di động chí với 1 tin nhắn SMS.

Với những đặc điểm và tính năng trên, hệ thống sẽ trở thành sản phẩm tiêu dùng, đáp ứng nhu cầu xã hội. Đề tài mang tính hiện đại, thực tiễn cao và tính khả thi tốt trong thực tế.

5.2 HƯỚNG PHÁT TRIỂN ĐỀ TÀI

Đề tài mở có nhiều hướng phát triển và ứng dụng trong tương lai.

Phát triển thêm giao tiếp giữa các module điều khiển với nhau thông qua chuẩn RS485 điều khiển nhiều thiết bịđặt ở các vị trí khác nhau trong nhà tạo thành mạng cục bộ RS485 để mở rộng hoạt động của hệ thống.

Tích hợp thêm các loại cảm biến khác như cảm biến độ ẩm, cảm biến khói, … để

nâng cao hiệu quả giám sát.

Khai thác tính năng GPRS của modem GSM SIM 900 để có thể giám sát điều khiển qua GPRS.

Lập trình có thể tạo password trong cấu trúc của tin nhắn SMS để hệ thống được nâng cao cấp bảo mật bằng Password.

Khi ở gần thiết bị, có thể điều khiển được bằng tay thông qua công tắc được thiết kế

trong hệ thống mà không cần phải nhắn tin.

Mở rộng phạm vi ứng dụng chức năng điều khiển của hệ thống không chỉ sử dụng trong gia đình mà còn dùng trong công nghiệp vì việc này sẽ rất có lợi để tiết kiệm chi phí điều khiển của hệ thống.

Trang 81 PHỤ LỤC Mã nguồn chương trình

/***************************************************** This program was produced by the

CodeWizardAVR V2.03.4 Standard Automatic Program Generator

© Copyright 1998-2008 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com

Chip type : ATmega8 Program type : Application Clock frequency : 8.000000 MHz Memory model : Small

External RAM size : 0 Data Stack size : 256

*****************************************************/ #include <mega8.h> //#include <stdio.h> #include <string.h> #include <delay.h> #include "lcd.h" //--- #define Device1 PORTB.0

#define LedDebug PORTB.1

#define GasSensor PIND.5 #define MoveSensor PIND.6 #define OpenDoor PIND.7

Trang 82 #define ON 1 #define OFF 0 //--- #define CR 0x0D #define LF 0x0A #define Begin_Update 1 #define Check_SMS 2 #define Check_Call 3 #define Check_GPRS 4 #define Finish_Update 5 #define ReceiveSMS_Sim900 1 #define Delete_SMS 2 #define Finish_Call 3 #define SendSMS_Sim900 4 #define SendSMS_Step1_Sim900 5 #define SendSMS_Step2_Sim900 6 #define SendSMS_Step3_Sim900 7 #define Calling_Sim900 8 #define Calling_Step1_Sim900 9 #define Unimplement_Sim900 99 #define EndCommand_Sim900 100 //--- #define CanhBaoDoGas 1 #define CanhBaoTrom 2 #define TrangThaiThietBi 3

Trang 83

//--- bit Flag_Reciever_SMS = OFF;

unsigned char PassPhone1[13] = {11,0,1,6,7,8,3,1,5,2,2,2}, PassPhone2[13] = {11,0,1,6,7,8,3,1,5,3,3,3};

unsigned char BufferDataSim900[40], BufferProgressDataSim900[40], PhoneNumberArrive[13], CountDataSim900, PC_UpdateDataSim900, PC_ProgressControlSim900, SimCount_NgoacKep, Stack_Restore_SMS, Times_UpdateData, PC_SendSMS;

unsigned int Times_ProgressControlSim900; //---

unsigned char BufferDisplay1[16], BufferDisplay2[16]; //---

bit Led_Toggle;

unsigned char Led_Blink_Times;

bit Device_Status; bit Calling_Status; bit Flag_GasSensor, Flag_OpenDoorSensor ; //---

Trang 84 void sys_init(void); void variable_init(void); void Data_Update(void); void Control(void); void Display(void); void ClearDisplay(void); void Sim900_Init(void); void UpdateDataSim900(void); void ProgressControlSim900(void); void Clear_BufferDataSim900(void); void Clear_BufferProgressDataSim900(void); void Read_SMS(char SMS_Number);

void Clear_SMS(char SMS_Number);

unsigned char Compare_Character(char data1,char data2); unsigned char Check_Pass(void);

void putchar(char c);

void putsf(char flash *string);

//--- void main(void) { sys_init(); lcd_init(); Sim900_Init(); variable_init(); strcpyf(BufferDisplay1,"Device Control "); strcpyf(BufferDisplay2," SMS ");

Trang 85 while (1) { Data_Update(); Control(); Display(); }; } //--- void sys_init(void) {

// Declare your local variables here // Input/Output Ports initialization // Port B initialization

// Func7=In Func6=In Func5=Out Func4=In Func3=In Func2=In Func1=Out Func0=Out // State7=T State6=T State5=0 State4=T State3=T State2=T State1=0 State0=0

PORTB=0x00; DDRB=0x23;

// Port C initialization

// Func6=In Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out

Một phần của tài liệu điều khiển từ xa các thiết bị bằng tin nhắn sms (Trang 66)