Bảng 1.4. Thứ tự chân SIM card
Chân Tên Mô tả
C1 VSIM Nguồn do module cung cấp. Module
SIM548 sẽ tự động xác định loại SIM để cung cấp nguồn 33.0V±10% hay
1.8V±10%. Dòng cung cấp là 10mA.
C2 SIM_RESET Chân reset SIM card.
C3 SIM_CLOCK Chân xung clock SIM card.
C5 GND Chân nối đất.
C6 VPP Không cần kết nối.
C7 SIM_DATA Chân truyền nhận dữ liệu.
5. Trạng thái của chân STARTUS
Ta có thể biết được tình trạng của mạng GSM thơng qua chân STATUS.
Bảng 1.5. Trạng thái chân STATUS
Tráng thái Mạng GSM
Off Ứng dụng GSM của SIM548 khơng hoạt động.
Hình 1.13. Kết nối với chân NETLIGHT
1.4.4. Ứng dụng GSM của modul Sim548C
1. Giới thiệu về ứng dụng GSM
GSM (Global System for Mobile Communication) là hệ thống thơng tin di động tồn cầu. GSM là chuẩn giao tiếp phổ biến nhất cho điện thoại di động nhờ khả năng phủ sóng rộng khắp thế giới. GSM khác với các chuẩn giao tiếp trước đó về chất lượng tín hiệu, tốc độ và tiện ích tin nhắn. Nó được xem là một hệ thống di động thứ hai (second generation, 2G). GSM là một chuẩn mở, hiện tại nó được phát triển bởi 3rd Generation Partnership Project (3GPP).
Hình 1.14. Mạng GSM
2. Sử dụng ứng dụng GSM cho dịch vụ gửi tin nhắn và cuộc gọi
Sử dụng tập lệnh AT dành cho GSM của module SIM548 trong các thao tác dùng cho dịch vụ SMS (Short Message Service) và cuộc gọi, bao gồm:
- Khởi tạo - Nhận cuộc gọi. - Thiết lập cuộc gọi. - Nhận tin nhắn. - Gửi tin nhắn. a. Thuật ngữ.
<CR> : Carriage return (0x0D). <LF> : Line Feed (0x0A).
MT : Mobile Terminal. Thiết bị đầu cuối mạng (trong trường hợp này là module SIM548).
TE : Terminal Equipment. Thiết bị đầu cuối (máy tinh, hệ vi điều khiển). b. Khởi tạo ứng dụng GSM.
- Đưa module về chế độ nghỉ (sleep mode)
Hình 1.15. Chuyển từ chế độ bình thường sang chế độ nghỉ
(sleep mode)
(1) AT+CFUN=0<CR>
Tắt hết mọi chức năng liên quan đến truyền nhận sóng RF và các chức năng liên quan đến SIM, module khơng cịn được kết nối với mạng.
(2) <CR><LF>OK<CR><LF>
Chuỗi thông báo kết quả thực thi lệnh thành công, thông thường là sau 3 giây kể từ lúc nhận lệnh AT+CFUN=0.
(3) Chuyển trạng thái chân DTR từ mức 0 sang mức 1. Module hoạt động ở chế độ sleep mode.
Hình 1.16. Đưa module trở về trạng thái hoạt động
(1) Đưa chân DRT chuyển từ mức 1 xuống mức 0 Module thoát khỏi chế độ sleep.
(2) AT+CFUN=1<CR>
Đưa module trở về chế độ hoạt động bình thường. (3) MT trả về chuỗi <CR><LF>OK<CR><LF>.
(4) Module gửi tiếp chuỗi thông báo <CR><LF>Call Ready<CR><LF>. Thời gian kể từ lúc nhận lệnh AT+CFUN=1<CR> đến lúc module gửi về thơng báo trên khoảng 10 giây.
Hình1.17. Khởi tạo cấu hình mặc định cho module SIM548
(1) ATZ<CR>
Reset modem, kiểm tra modem dã hoạt động bình thường chưa. Gửi nhiều lần cho chắc ăn, cho đến khi nhận được chuỗi: ATZ<CR><CR><LF>OK<CR><LF>.
(2) ATE0<CR>
Tắt chế độ echo lệnh. Chuỗi trả về có dạng: ATE0<CR><CR><LF>OK<CR><LF>.
(3) AT+CLIP=1<CR>
Chuỗi trả về có chứa thơng tin về số điện thoại gọi đến. Thông tin này cho phép xác định việc có nên nhận cuộc gọi hay từ chối cuộc gọi.
Kết thúc các thao tác khởi tạo cho quá trình nhận cuộc gọi. Các bước khởi tạo tiếp theo liên quan đến các thao tác truyền nhận tin nhắn.
(4) AT&W<CR>
Lưu cấu hình cài đặt được thiết lập bởi các lệnh ATE0 và AT+CLIP vào bộ nhớ. (5) AT+CMGF=1<CR>
Thiết lập quá trình truyền nhận tin nhắn được thực hiện ở chế độ text (mặc định là ở chế độ PDU).
Chuỗi trả về sẽ có dạng: <CR><LF>OK<CR><LF> (6) AT+CNMI=2,1,0,0,0<CR>
Thiết lập chế độ thông báo cho TE khi MT nhận được tin nhắn mới. Chuỗi trả về sẽ có dạng:
<CR><LF>OK<CR><LF>
Sau khi lệnh trên được thiết lập, tin nhắn mới nhận được sẽ được lưu trong SIM, và MT gửi thơng báo khi có tin nhắn mới. TE có thể đọc tin nhắn được lưu trong SIM.
(7) AT+CSAS<CR>
Lưu cấu hình cài đặt được thiết lập bởi các lệnh AT+CMGF và AT+CNMI. - Xóa tin nhắn trước khi hoạt động :
(1) AT+CMGD=1
Xóa tin nhắn ở vùng nhớ 1 trong SIM.
Chuỗi trả về sẽ có dạng: <CR><LF>OK<CR><LF> (2) AT+CMGD=2
Tác dụng tương tự như lệnh số 1. Lệnh này được dùng để xóa tin nhắn được lưu trong ngăn số 2.
Có thể hình dung bộ nhớ lưu tin nhắn trong SIM bao gồm nhiều ngăn (loại Super SIM của Mobi phone có 50 ngăn), mỗi ngăn cho phép lưu nội dung của 1 tin nhắn (bao gồm tất cả các loại tin nhắn: tin nhắn từ tổng đài, tin nhắn thông báo kết quả q trình gửi tin nhắn trước đó, tin nhắn từ thuê bao khác, …). Mỗi ngăn được đại diện bằng một số thứ tự.
Khi nhận được tin nhắn mới, nội dung tin nhắn sẽ được lưu trong một ngăn trống có số thứ tự nhỏ nhất có thể.
Việc xóa nội dung tin nhắn ở hai ngăn 1 và 2 cho phép tin nhắn nhận được luôn được lưu vào trong hai ô nhớ này, giúp dễ dàng xác định vị trí lưu tin nhắn vừa nhận được, và giúp cho việc thao tác với tin nhắn mới nhận được trở nên dễ dàng và đơn giản hơn, giảm khả năng việc tin nhắn mới nhận được bị thất lạc ở một vùng nhớ nào đó mà ta khơng kiểm sốt được.
c. Nhận cuộc gọi.
này để có thể ra quyết định nhận cuộc gọi hay từ chối cuộc gọi.
(2A) Nếu số điện thoại gọi đến không hợp lệ, từ chối nhận cuộc gọi bằng lệnh ATH và chuỗi trả về sẽ có dạng:
<CR><LF>OK<CR><LF> Cuộc gọi kết thúc.
(2B) Nếu số điện thoại gọi đến là hợp lệ, nhận cuộc gọi bằng cách gửi lệnh ATA và chuỗi trả về sẽ có dạng: <CR><LF>OK<CR><LF>
(3) Giai đoạn thơng thoại.
(4A) Kết thúc cuộc gọi. Đầu còn lại gác máy trước.
(4B) Kết thúc cuộc gọi, chủ động gác máy bằng cách gửi lệnh ATH. d. Thiết lập cuộc gọi.
(1) ATDxxxxxxxxxx;<CR> Quay số cần gọi.
(2) Chuỗi trả về có dạng: <CR><LF>OK<CR><LF>.
Chuỗi này thông báo lệnh trên đã được nhận và đang được thực thi.
Sau đó là những chuỗi thơng báo kết quả q trình kết nối (nếu như kết nối khơng được thực hiện thành công).
(2A) Nếu MT không thực hiện được kết nối do sóng yếu hoặc khơng có sóng, chuỗi trả về sẽ có dạng:
<CR><LF>NO DIAL TONE<CR><LF>
(2B) Nếu cuộc gọi bị từ chối bởi người nhận cuộc gọi hoặc số máy đang gọi tạm thời không hoạt động (chẳng hạn như bị tắt máy) chuỗi trả về có dạng:
<CR><LF>NO CARRIER<CR><LF>
(2C) Nếu cuộc gọi không thể thiết lập được do máy nhận cuộc gọi đang bận (ví dụ như đang thơng thoại với một thuê bao khác), chuỗi trả về sẽ có dạng:
<CR><LF>BUSY<CR><LF> (4s)
Tổng thời gian từ lúc modem nhận lệnh cho đến lúc nhận được chuỗi trên thông thường là 4 giây.
(2D) Nếu sau 1 phút mà thuê bao nhận cuộc gọi khơng bắt máy, chuỗi trả về sẽ có dạng: <CR><LF>NO ANSWER<CR><LF> (60s)
(3) Trong trường hợp quá trình thiết lập cuộc gọi diễn ra bình thường, khơng có chuỗi thơng báo nào (2A, 2B, 2C hay 2D) được trả về và chuyển sang giai đoạn thơng thoại. Q trình kết thúc cuộc gọi được diễn ra trong hai trường hợp:
(4A) Đầu nhận cuộc gọi gác máy trước. Chuỗi trả về sẽ có dạng: <CR><LF>NO CARRIER<CR><LF>
(4B) Đầu thiết lập cuộc gọi gác máy trước. Phải tiến hành gửi lệnh ATH và chuỗi trả về sẽ có dạng: <CR><LF>OK<CR><LF
Hình 1.21. Đọc tin nhắn từ 2 vùng nhớ 1 và 2 trên SIM
Mọi thao tác liên quan đến quá trình nhận tin nhắn đều được thực hiện trên 2 ngăn 1 và 2 của bộ nhớ nằm trong SIM.
(1) Đọc tin nhắn trong ngăn 1 bằng lệnh AT+CMGR=1.
(2A) Nếu ngăn 1 không chứa tin nhắn, chỉ có chuỗi sau được trả về: <CR><LF>OK<CR><LF>
(2B) Nếu ngăn 1 có chứa tin nhắn, nội dung tin nhắn sẽ được gửi trả về TE với định dạng như sau:
<CR><LF>+CMGR: "REC
UNREAD","+84929047589",,"07/05/15,09:32:05+28" <CR><LF>NỘI DUNG<CR><LF>
<CR><LF>OK<CR><LF>
Các tham số trong chuỗi trả về bao gồm trạng thái của tin nhắn (REC UNREAD), số điện thoại gửi tin nhắn (+84929047589) và thời gian gửi tin nhắn (07/05/15,09:32:05+28) và nội dung tin nhắn.
Đây là định dạng mặc định của module SIM548 lúc khởi động dạng mở rộng có thể được thiết lập bằng cách sử dụng lệnh AT+CSDH=1 trước khi thực hiện đọc tin nhắn.
(3) Sau khi đọc, tin nhắn được xóa đi bằng lệnh AT+CMGD=1.
Thao tác tương tự đối với tin nhắn chứa trong ngắn thứ 2 trong các bước 4, 5A (5B) và 6.
f. Gửi tin nhắn.
Hình 1.22. Gửi tin nhắn
(1) Gửi tin nhắn đến thuê bao bằng cách sử dụng lệnh AT+CMGS=”số điện thoại”. (2) Nếu lệnh (1) được thực hiện thành cơng, chuỗi trả về sẽ có dạng: <CR><LF>> (kí tự “>” và 1 khoảng trắng).
(3) Gửi nội dung tin nhắn và kết thúc bằng kí tự có mã ASCII 0x1A.
(3A) Gửi kí tự ESC (mã ASCII là 27) nếu không muốn tiếp tục gửi tin nhắn nữa. Khi đó
TE sẽ gửi trả về chuỗi <CR><LF>OK<CR><LF>.
(4) Chuỗi trả về thơng báo kết quả q trình gửi tin nhắn. Chuỗi trả về có định dạng như sau:
<CR><LF>+CMGS: 62<CR><LF> <CR><LF>OK<CR><LF>
chức năng RF của modem không được cho phép hoạt động (do sử dụng các lệnh AT+CFUN=0 hoặc AT+CFUN=4), hoặc số tin nhắn trong hàng đợi phía tổng đài vượt qua giới hạn cho phép hoặc bộ nhớ chứa tin nhắn của MT nhận được tin nhắn bị tràn, MT sẽ gửi thơng báo lỗi trở về và có định dạng như sau:
<CR><LF>+CMS ERROR: 193<CR><LF> <CR><LF>+CMS ERROR: 515<CR><LF>
Chức năng truyền nhận tin nhắn và chức năng thoại được tách biệt. Khi đang thơng thoại vẫn có thể truyền nhận được tin nhắn. Khi truyền nhận tin nhắn vẫn có thể tiến hành thiết lập và kết thúc cuộc gọi.
1.5. Vi điều khiển Atmega32-16AL1.5.1. Tổng quát Atmega32-16AL1.5.1. Tổng quát Atmega32-16AL1.5.1. Tổng quát Atmega32-16AL 1.5.1. Tổng quát Atmega32-16AL
Atmega32 là vi điều khiển 8 bit dựa trên kiến trúc RISC. Với khả năng thực hiện mỗi lệnh trong vịng một chu kỳ xung clock, Atmega32 có thể đạt được tốc độ 1MIPS trên mỗi MHz (1 triệu lệnh/s/MHz).
Dưới đây là sơ đồ khối của Atmega32
Hình 1.24. Sơ đồ cấu trúc Atmega32
Atmega32 có các đặc điểm sau:
− 32KB bộ nhớ Flash với khả năng đọc trong khi ghi, − 1024 byte bộ nhớ EEPROM,
− 2KB bộ nhớ SRAM,
− 32 thanh ghi chức năng chung, − 32 đường vào ra chung,
như: trình dịch C, macro assemblers, chương trình mơ phỏng/sửa lỗi, kit thử nghiêm, ...
1.5.2. Các chức năng của Atmega32-16AL ứng dụng trong đề tài1. Các cổng vào ra (I/O)1. Các cổng vào ra (I/O) 1. Các cổng vào ra (I/O)
Vi điều khiểnATmega32 có 32 đường vào ra chia làm bốn nhóm 8 bit một. Các đường vào ra này có rất nhiều tính năng và có thể lập trình được. Ở đây ta sẽ xét chúng là các cổng vào ra số. Nếu xét trên mặt này thh các cổng vào ra này là cổng vào ra hai chiều có thể định hướng theo từng bit. Và chứa cả điện trở pull-up (có thể lập trình được). Mặc dù mỗi port có các đặc điểm riêng nhưng khi xét chúng là các cổng vào ra số thì dường như điều khiển vào ra dữ liệu thì hồn tồn như nhau. Chúng ta có thanh ghi và một địa chỉ cổng đối với mỗi cổng, đó là: thanh ghi dữ liệu cổng (PORTA, PORTB, PORTC, PORTD), thanh ghi dữ liệu điều khiển cổng (DDRA, DDRB, DDRC, DDRD) và cuối cùng là địa chỉ chân vào của cổng (PINA, PINB, PINC, PIND).
2. Bộ định thời
Bộ định thời (timer/counter0) là một module định thời/đếm 8 bit, có các đặc điểm sau:
− Bộ đếm một kênh
− Xóa bộ định thời khi trong mode so sánh (tự động nạp)
− PWM
− Tạo tần số
− Bộ đếm sự kiện ngoài − Bộ chia tần 10 bit
− Nguồn ngắt tràn bộ đếm và so sánh Sơ đồ cấu trúc của bộ định thời:
Hình 1.25. Sơ đồ cấu trúc bộ định thời
3. Đơn vị so sánh ngõ ra
Hình 1.26. Sơ đồ đơn vị so sánh ngõ ra
Bộ so sánh 8 bit liên tục so sánh giá trị TCNT0 với giá trị trong thanh ghi so sánh ngõ ra (OCR0). Khi giá trị TCNT0 bằng với OCR0, bộ so sánh sẽ tạo một báo hiệu. Báo hiệu này sẽ đặt giá trị cờ so sánh ngõ ra (OCF0) lên 1 vào chu kỳ xung clock tiếp theo. Nếu được kích hoạt (OCIE0=1), cờ OCF0 sẽ tạo ra một ngắt so sánh ngõ ra và sẽ tự động được xóa khi ngắt được thực thi. Cờ OCF0 cũng có thể được xóa bằng phần mềm.
4. USART
Bộ truyền nhận nối tiếp đồng bộ và bất đồng bộ là một thiết truyền thông nối tiếp có các chức năng chính như sau:
− Hoạt động song công (các thanh ghi truyền và nhận nối tiếp độc lập với nhau). − Hoạt động đồng bộ hoặc bất đồng bộ
− Phát hiện lỗi khung
− Lọc nhiễu, bao gồm phát hiện bit start lỗi và bộ lọc thông thấp số − Ngắt khi kết thúc truyền, thanh ghi truyền hết dữ liệu và kết thúc nhận − Chế độ truyền thông đa vi xử lý
− Chế độ truyền đồng bộ tốc độ cao Sơ đồ khối của bộ USART như sau:
USART bao gồm 3 phần chính: bộ tạo xung clock, bộ truyền và bộ nhận. Các thanh ghi điều khiển được sử dụng chung giữa các phần này.
5. Bộ biến đổi A/D
Vi điều khiểnATmega32 có một bộ biến đổi ADC tích hợp trong chip với các đặc điểm:
− Độ phân giải 10 bit − Sai số tuyến tính: 0.5LSB − Độ chính xác +/-2LSB
− Thời gian chuyển đổi:65-260μs − 8 Kênh đầu vào có thể được lựa chọn
− Có hai chế độ chuyển đổi free running và single conversion − Có nguồn báo ngắt khi hồn thành chuyển đổi
− Loại bỏ nhiễu trong chế độ ngủ
ghi dữ liệu.
1.6. Cảm biến dò chuyển động nhiệt hồng ngoại
Passive InfraRed sensor (PIR sensor) là bộ cảm biến thụ động dùng nguồn kích thích là tia hồng ngoại. Tia hồng ngoại (IR) chính là các tia nhiệt phát ra từ vật thể nóng. Trong cơ thể sống, trong chúng ta ln có thân nhiệt (thường là 37 độ C) và từ cơ thể chúng ta luôn phát ra tia nhiệt, thường gọi là tia hồng ngoại, người ta sẽ dùng một tế bào điện để chuyển đổi tia nhiệt thành tín hiệu điện và nhờ đó có thể dùng làm cảm biến phát hiện vật thể nóng đang chuyển động. Cảm biến này gọi là thụ động vì nó khơng dùng nguồn nhiệt tự phát mà phụ thuộc vào các nguồn mang nhiệt, đó thân nhiệt của các thực thể khác như con người hay con vật,….
Hình 1.29. Cảm biến PIR và kính fresnel
Đây là đầu dị PIR, loại bên trong có gắn 2 cảm biến tia nhiệt, có 3 chân ra, một chân nối masse, một chân nối với volt DC, mức áp làm việc có thể từ 3V đến 15V. Góc dị lớn. Để tăng độ nhậy cho đầu dị dùng kính fresnel, nó được thiết kế
cho đầu dị có 2 cảm biến. Góc dị lớn có tác dụng ngăn tia tử ngoại.
Hình1.30. Bộ cảm biến dị các vật nóng chuyển động
Ngun lý làm việc của đầu dò cảm biến PIR
Các nguồn nhiệt đều phát ra tia nhiệt, qua kính fresnel lọc lấy tia hồng ngoại cho tiêu tụ trên 2 cảm biến hồng ngoại gắn trên đầu dò và tạo ra điện áp được khuếch đại với transistor PET. Khi có một vật nóng đi ngang qua, từ hai cảm biến này sẽ cho ra 2 tín hiệu, tín hiệu này sẽ được khuếch đại để có biên độ đủ cao và đưa vào mạch so áp để điều khiển hay báo động.
Hình 2.1 Mơ hình hệ thống cơ khí
Trong các vị trí trên của ngơi nhà ta lựa chon vị trí đặt thiết bị cho phù hợp nhất. 1- Đặt cảm biến dò chuyển động của người, sao cho hướng của cảm biến vng góc với hướng đi vào cửa chính.
3- Đặt hệ thống điều khiển kết nối với các cảm biến. Trong đề tài em chỉ dùng một cảm biến dò chuyển động của người nên em chọn đặt cảm biến ở vị trí 1.
2.2. Mơ hình hóa hệ mạch báo trộm qua điện thoại di động
Hình 2.2. Sơ đồ khối
2.3. Chức năng của từng khối2.3.1. Khối cảm biến2.3.1. Khối cảm biến2.3.1. Khối cảm biến 2.3.1. Khối cảm biến
Gồm một cảm biến hồng ngoại PIR dò chuyển động người, nó có nhiệm vụ dị chuyển động người khi có người đi ngang qua nó, đầu ra của cảm biến sẽ cho ra tín