Mạch hệ thống báo cháy

Một phần của tài liệu Nghiên cứu, thiết kế hệ thống cảnh báo cháy qua điện thoại di động (Trang 42 - 54)

CHƢƠNG IV : PHÂN LOẠI HỆ THỐNG BÁO CHÁY

4.3 Giảỉ pháp tối ƣu và tiết kiệm

4.3.2 Mạch hệ thống báo cháy

a) Chi tiết mạch hệ thống báo cháy

 Hệ thống báo cháy dựa trên SMS rất hữu ích ở những địa điểm xa nơi hạn chế tương tác của con người. Hệ thống như vậy rất hữu ích trong các mỏ, khu công nghiệp, nhà máy, v.v.

 Những người trực đêm- Hệ thống báo cháy dựa trên SMS giúp giám sát các vị trí và gửi tin nhắn đến người trực đêm khi có sự cố xảy ra, giúp họ xác định vị trí nhanh chóng và khắc phục hỏa hoạn.

 Thao tác nhanh để tắt lửa - 90% thiệt hại do hỏa hoạn xảy ra do không phát hiện cháy sớm. Một cuộc hỏa hoạn thường xảy ra trong im lặng và mọi người sẽ chỉ biết khi nó đã lan rộng trên một khu vực rộng lớn. Hệ thống báo cháy dựa trên SMS đưa ra cảnh báo ngay lập tức cho nhiều số điện thoại di động và do đó các hành động khắc phục có thể được thực hiện nhanh chóng. Điều này giúp ngăn ngừa thiệt hại và tổn thất lớn tai nạn do hỏa hoạn.

Hình 4.2 ồ mạch báo cháy c bản

Những khía cạnh quan trọng trong chƣơng trình.

 Khi phát triển Hệ thống báo cháy hoặc các hệ thống quan trọng như vậy, một khía cạnh quan trọng phải ghi nhớ trong thế giới thực. Một vụ cháy có thể xảy ra bất cứ lúc nào (24 × 7). Điều này có nghĩa là hệ thống của chúng tơi phải liên tục theo dõi hỏa hoạn 24 × 7 tất cả ngày tháng và năm. Nếu bạn nhìn vào chương trình, bạn

sẽ thấy nó chỉ có 2 lệnh gọi bên trong void loop () - đó là CheckFire () và CheckShutDown ()

 CheckFire () - là chức năng theo dõi sự cố xảy ra hỏa hoạn 24 × 7. Hàm này lấy nhiệt độ được đo bằng LM35 và lưu nó vào biến Temp_alert_val để so sánh. Giá trị nhiệt độ này được so sánh với giá trị cài đặt là 45 độ C. Thông thường nhiệt độ phòng là từ 25 độ C đến 30 độ C ở vùng nhiệt đới. Và sẽ thay đổi tùy vào châu lục, địa điểm. Bạn phải thay đổi giá trị so sánh này bằng cách đo nhiệt độ phòng trung bình của vị trí lắp đặt!

 Nếu hỏa hoạn xảy ra, nhiệt độ phòng sẽ vượt qua 45 độ (trong vài giây) và một chương trình con bên trong SetAlert () sẽ được gọi. SetAlert () là chức năng kiểm soát số lượng cảnh báo SMS được gửi đến từng số điện thoại di động được tải trong chương trình. Số lượng cảnh báo SMS được gửi có thể được thay đổi bằng cách thay đổi điều kiện dừng của vịng lặp while. Điều kiện dừng sms_count <3 - có nghĩa là 3 thông báo SMS sẽ được gửi đến 3 số điện thoại di động. Nếu bạn muốn gửi 5 thông báo, chỉ cần thay đổi điều kiện dừng thành sms_count <5 - bạn đã nhận được chưa? Chức năng gửi SMS (sử dụng lệnh AT) - SendTextMessage () sẽ được gọi 3 lần nếu số cảnh báo SMS là 3. Hàm này SendTextMessage () sẽ được gọi nhiều lần như số cảnh báo SMS được đặt trong chương trình.

 Lưu ý: - Chúng tôi đã giới hạn số lượng cảnh báo SMS bằng điều kiện dừng. Khi xảy ra tai nạn hỏa hoạn và số lượng cảnh báo SMS đã được gửi, hệ thống sẽ không gửi thêm SMS nữa! Hệ thống giả định rằng cơng việc của nó đã kết thúc bằng cách gửi SMS. Con người phải đến và tắt lửa. Sau khi gửi thông báo, hệ thống sẽ bắt đầu theo dõi quá trình Tắt máy. Khi Lửa đã tắt, hệ thống sẽ kích hoạt lại cài đặt cảnh báo SMS của mình bằng cách đặt lại biến sms_count trở về không.  CheckShutDown () - là chức năng theo dõi nếu tắt lửa. Chúng ta chỉ cần giải trí chức năng này nếu xảy ra tai nạn hỏa hoạn. Để giới hạn mục nhập vào các câu lệnh bên trong vịng lặp này, chúng tơi đã giới thiệu một biến Fire_Set. Trạng thái biến này sẽ được đặt thành giá trị 1 khi xảy ra sự cố cháy (kiểm tra câu lệnh bên

trong SetAlert ()). Các câu lệnh bên trong CheckShutDown () sẽ chỉ được thực thi nếu giá trị của Fire_Set == 1. (Nếu khơng có tai nạn hỏa hoạn và chúng tơi khơng cần phải lãng phí thời gian để thực hiện các tuyên bố kiểm tra ShutDown). Chúng tôi xem xét đám cháy đã được tắt khi nhiệt độ phịng trở lại bình thường. Vì vậy, nếu biến Temp_shut_val của chúng tôi giảm dưới 28 độ, chúng tôi coi lửa đã tắt và mọi thứ đều an tồn. Chúng tơi bắt đầu theo dõi FireAlarm một lần nữa với SMS Alerts hoạt động! (Chúng tôi đặt lại biến Fire_Set và biến sms_count trở về 0 - đó là các điều kiện của trạng thái phịng bình thường).

Hình 4.3 Hình mẫu của một mạch báo cháy qua i n thoại c bản

Tìm hiểu qua một số lệnh cơ bản Sim800A a) Lệnh chung

Lệnh: AT<CR><LF> Trả lời: OK<CR><LF>

Lệnh: ATE[x]<CR><LF> Trả lời: OK<CR><LF>

Mô tả : Chế độ echo là chế độ phản hồi dữ liệu truyền đến.

x = 1 bật chế độ echo , x = 0 tắt chế độ echo (bạn nên tắt chế độ này) Lệnh: AT+IPR=[baud rate]<CR><LF>

Trả lời: OK<CR><LF>

Mô tả : cài đặt tốc độ giao tiếp dữ liệu với module Sim800A, chỉ cài được các tốc độ sau

baud rate : 0 (auto), 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200

b) Lệnh điều khiển cuộc gọi

Lệnh: ATD Số điện thoại ;<CR><LF> Trả lời: OK<CR><LF>

Mô tả : Lệnh thực hiện cuộc gọi Lệnh: ATH<CR><LF> Trả lời: OK<CR><LF>

Mô tả : Lệnh thực hiện kết thúc cuộc gọi , hoặc cúp máy khi có cuộc gọi đến Lệnh: ATA<CR><LF>

Trả lời: OK<CR><LF>

Chú ý: khi nhân được cuộc gọi đến thì Module Sim 900A sẽ phản hồi về như sau RING

RING

Nếu muốn hiển thị thông tin người gọi đến các bạn thực hiên thêm lệnh sau Lệnh: AT+CLIP=1<CR><LF>

Trả lời: OK<CR><LF>

c) Lệnh điều khiển tin nhắn

Lệnh: AT+CMGF=1<CR><LF> Trả lời: OK<CR><LF>

Mô tả : Lệnh đưa SMS về chế độ Text , phải có lệnh này mới gửi nhận tin nhắn dạng Text

Cấu trúc gửi tin nhắn

Lệnh: AT CMGS Số điện thoại <CR><LF> Đợi đến khi có ký tự „>‟ được gửi về

Gửi nội dụng tin nhắn : “This is a test”

Gửi mã Ctrl+Z hay 0x1A để kết thúc nội dung và gửi tin nhắn Trả lời : OK<CR><LF>

Mô tả : Đọc một nhắn vừa gửi đến, lệnh được trả về nội dung tin nhắn, thông tin người gửi, thời gian gửi

Chú ý: Nếu Module Sim 900A nhận được một tin nhắn bất kỳ, thì nó gửi về cụm “+CMTI” để thơng báo

Trong trường hợp bạn muốn hiển thị trực tiếp nội dung tin nhắn(không lưu vào bộ nhớ của sim) bạn gửi lệnh sau

AT+CNMI=2,2<CR><LF>

Chú ý: sau mỗi lệnh các bạn thường thấy <CR><LF> thực chất nó là hai mã điều khiển

<CR> tương ứng 0x0D(hexa)

<LF> tương ứng 0x0A(hexa)

e) Thiết kế chƣơng trình điều khiển Lƣu đồ chƣơng trình chính

Hình 4.5 Lưu ồ chư ng trình chính

Đầu tiên, khi vừa khởi động, vi điều khiển sẽ tiến hành khởi tạo các dữ liệu cơ bản. Sau đó vi điều khiển sẽ thực hiện việc chờ nhận tín hiệu từ tù báo cháy hoặc tin nhắn từ Module Sim800.

Nếu tín hiệu gửi tới là tín hiệu báo cháy, vi điều khiển sẽ xử lí tín hiệu và điều khiển Module Sim800 thực hiện việc gửi tin nhắn và gọi điện cảnh báo.

Nếu tín hiệu gửi tới là tin báo có tin nhắn mới, vi điều khiển sẽ thực hiện gửi lệnh điều khiển đọc tin nhắn mới từ module SIM. Sau khi nhận tin nhắn từ module SIM, vi điều khiển sẽ tiến hành xử lý nội dung tin nhắn đồng thời kiểm tra trạng thái hệ thống. Cuối cùng vi điều khiển tiến hành điều khiển Module Sim800 gửi tin nhắn trả lời báo tình trạng hoạt động và kết thúc quá trình điều khiển. Sau khi thực hiện xong quá trình, vi điều khiển quay lại ban đầu tiếp tục chờ có tin nhắn mới.

Lƣu đồ chƣơng trình cảnh báo cháy

Mạch sẽ liên tục đọc tín hiệu cấp vào từ tủ báo cháy trung tâm, nếu có tín hiệu gửi đến mạch sẽ xử lí tín hiệu này và điều khiển Module Sim800 gửi tin nhắn tới số điện thoại cài đặt sẵn. Sau đó sẽ tiếp tục kiểm tra xem tín hiệu cịn duy trì hay khơng, nếu khơng thì kết thúc q trình và quay lại từ đầu, nếu đúng thì điều khiển Module Sim800 thực hiện cuộc gọi đến số điện thoại cài đặt sẵn, kiểm tra đầu dây bên có đã có người bắt máy hay chưa, nếu chưa thì tiếp tục kiểm tra cịn tín hiệu khơng, nếu khơng thì kết thúc q trình và quay lại từ đầu, nếu cịn thì lại tiếp tục thực hiện cuộc gọi đến khi có người bắt máy. Sau khi bắt máy mà tín hiệu vẫn cịn thì mạch sẽ ở trạng thái chờ và không thực hiện cuộc gọi nữa, đến khi hết tín hiệu thì kết thúc quá trình và quay lại từ đầu.

Lƣu đồ chƣơng trình xử lý tin nhắn

Để xử lý tin nhắn, trước tiên vi điều khiển thực hiện tách lấy phần nội dung của tin nhắn và số điện thoại đã gửi tin nhắn tới. Sau đó vi điều khiển sẽ tiến hành phân tích nội dung tin nhắn. Kiểm tra cú pháp tin nhắn, nếu cú pháp đúng, tiến hành kiểm tra tiếp số điện thoại, nếu số điện thoại đúng, vi điều khiển sẽ tiến hành thực hiện các lệnh khác nhau tùy vào cú pháp tin nhắn, nếu khơng sẽ tự động kết thúc q trình.

Một phần của tài liệu Nghiên cứu, thiết kế hệ thống cảnh báo cháy qua điện thoại di động (Trang 42 - 54)

Tải bản đầy đủ (PDF)

(93 trang)