Đồ án tốt nghiệp - Mô hình mạng cảm nhận không dây - WSN - Pdf 69


Đồ án tốt nghiệp

Mô hình mạng cảm nhận không dây -
WSN Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

1
MỞ ĐẦU
Ngày nay dưới sự phát triển rất mạnh mẽ của khoa học kĩ thuật nói
chung và công nghệ thông tin nói riêng, mạng cảm nhận không dây ra đời là
một trong những thành tựu cao của công nghệ chế tạo và công nghệ thông tin.
Một trong các lĩnh vực của mạng cảm nhận không dây ( Wireless Sensor
Network – WSN ) là sự kết hợp của việc cảm nhận, tính toán và truyền thông

Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

2

Đồ án được chia làm 5 chương với nội dung được trình bày như sau:
- Chương 1: Giới thiệu về mạng cảm nhận không dây.
- Chương 2: Tổng quan về màn hình tinh thể lỏng - LCD và Vi điều
khiển.
- Chương 3: Màn hình LCD 1602A và vi điều khiển CC1010
- Chương 4: Phần mềm nhúng cho hệ đo nhiệt tự động
- Chương 5: Cài đặt thử nghiệm trên hệ thống, các kết qu
ả đạt được Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

3
CHƯƠNG 1:
GIỚI THIỆU VỀ MẠNG CẢM NHẬN KHÔNG DÂY
(Wireless sensor Network - WSN)
1.1. Mạng cảm nhận không dây
Mạng cảm nhận không dây (WSN) thu thập dữ liệu môi trường ra đời
đáp ứng cho nhu cầu thu thập thông tin của môi trường tại một tập hợp các
điểm xác định trong một khoảng thời gian xác định nhằm phát hiện các quy

gốc ( nút cơ sở), nút gốc thường là cố định và được nối với PC, hoặc máy tính
xách tay qua cổng RS232 việc đó nảy sinh những vấn đề như sự thiếu linh
hoạt trong việc theo dõi ,dám sát trực tiếp môi trường, không cơ động…
Hình 1.2 là mô hình của một m
ạng cảm nhận không dây truyền thống có nút
gốc được nối cố định với máy vi tính hoặc máy tính xách tay. Hình 1.2: Mạng cảm nhận thông thường sử dụng CC1010
Nút cảm nhận
CC1010
Nút cảm nhận
CC1010
Nút cảm nhận
CC1010
Nút gốc
CC1010
PC
RS 232
Liên kết có dây

Liên kết không dây
Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

5
Từ đề tài cụ thể “CHƯƠNG TRÌNH THU NHẬN, XỬ LÝ DỮ LIỆU,
CẢNH BÁO SỰ CỐ TRÊN NÚT MẠNG CẢM NHẬN KHÔNG DÂY

LK có dây

LK không dây
Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

6
1.2. Mô tả hệ thống
Từ hình 1.3 ta thấy hệ thống gồm có 2 phần cơ bản là:
1.2.1. Các nút cảm nhận và truyền dữ liệu:
Đại diện cho tất cả nút mạng cảm nhận, bao gồm các nút cảm nhận thông
số cần đo, mạch tích hợp CC1010EM nhận, xử lý rồi truyền không dây đến
nút di động. Mỗi nút cảm nhận trên đều được gán một địa chỉ cụ thể.
Từ những phân tích lý thuyết
ở trên ta có mô hình của nút mạng cảm
nhận và truyền dữ liệu như sau :
Hình 1.4: Mô hình nút cảm nhận và truyền dữ liệu
Cảm biến-Sensor
a) Khái niệm
Trong các hệ thông đo lường, điều khiển mọi quá trình đều được đặc
trưng bởi các trạng thái như nhiệt độ, áp suất, tốc độ, mô men…Các biến
trạng thái này thường là các đại lượng không điện. Nhằm mục đích điều
chỉnh, điều khiển các quá trình ta cần thu thập các thông tin, đo đạc, theo dõi
sự biến thiên của các biến trạng thái của quá trình. Các bộ
cảm biến thực hiện

- Nhiệt: Nhiệt độ, thông lượng, nhiệt dung, tỉ nhiệt…
- Bức xạ: Kiểu, năng lượng, cường độ…
- Ngoài ra còn có rất nhiều loại cảm biến tùy theo tính năng và phạm vi sử
dụng…
Theo chức năng mạng và đặc điểm của mỗi cấu hình mạng c
ảm nhận
mà có thể sử dụng những loại cảm biến khác nhau ,Trong đồ án này cảm biến
được chọn để nghiên cứu là loại cảm biến nhiệt độ có tên là LM61 có dạng
IC.
c) Đặc điểm IC LM61 :
¾ Biến đổi nhiệt độ cảm nhận được ra điện áp nối ra
¾ Khoảng cảm nhận từ -30
0
C đến 100
0
C.
¾ Nguồn cung cấp 2,7V.
¾ Khoảng thay đổi điện áp nối ra là 10mV/
0
C
¾ Điện thế bù DC = 600mV.
Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

8
¾ Khoảng thay đổi điện áp lối ra là từ 300mV đến 1600mV ứng với
khoảng nhiệt độ từ -30
0

Hình 1.5: Mô hình nút mạng di động

LCD 1602A
CC1010
Angten thu
Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

9
1.3. Kết luận
Ở chương 1 em đã trình bày được một số những kiến thức cơ bản của
mạng WSN. Các nội dung đã được trình bày:
¾ Mạng cảm nhận không dây.
¾ Mô hình mạng cảm nhận thông thường kết nối máy tính thông qua
cổng nối tiếp RS-232.
¾ Mô hình mạng sử dụng vi điều khiển CC1010 có ghép nối với màn
hình tinh thể lỏng – LCD.
¾ Mô tả hệ thống.
Đồ án tốt nghiệp

Thực chất vi điều khiển cũng là một kiến trúc siêu nhỏ, gồm các linh
kiện điện tử ở kích thước rất nhỏ có th
ể là micro hoặc là Nano, các linh kiện
này được kết hợp với nhau và được nối với các thiết bị bên ngoài thông qua
các chân của vi điều khiển vì vậy để bắt tay vào xây dựng một ứng dụng cụ
thể của vi điều khiển ta cần phải hiểu rõ được kiến trúc của vi điều khiển.
Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

11
2.2.3. Tập lệnh
Tập lệnh chính là tập mã lệnh nhị phân. Bản chất của một tập lệnh là một
tập hợp các mã nhị phân mà qua đó các đơn vị xử lý trung tâm (CPU) có thể
nhận biết và thực hiện được. Vậy dữ liệu được CPU xử lý là các số nhị phân.
Tập lệnh sẽ thực hiện các công việc chính sau đây :
¾ Tính toán các con số nhị phân.
¾ Các lệnh
để chuyển các giá trị ra thành tín hiệu điện tử ở các chân
linh kiện.
¾ Các lệnh di chuyển các giá trị giữa các thanh ghi.
¾ Các lệnh điều khiển con trỏ chương trình.
¾ Các tập lệnh được chia làm hai loại, tập lệnh RISC và tập lệnh CISC.
2.3. Lập trình cho Vi điều khiển
Chương trình là một tập hợp các lệnh được tổ chức theo một trình tự hợp
li để giải quyết các yêu cầu của người lập trình. Tập hợp tất cả lệnh gọi là một
tập lệnh. Các họ Vi điều khiển đều có chung một tập lệnh, Các Vi điều khiển
ngày nay được cải tiến thường ít thay đổi hoặc mở rộng tập lệnh mà chú trọ
ng

nhất là tiết kiệm năng lượng, ph
ẳng, hình ảnh sáng chân thật, nhỏ gọn được
ứng dụng rất nhiều trong thực tế như các thiết bị yêu cầu nhỏ gọn, tiêu thụ
năng lượng ít như đồng hồ, điện thoại di động…ngoài ra trong xu thế phát
triển mạnh của khoa học công nghệ màn hình tinh thể lỏng còn được ứng
dụng rất nhiều trong cuộc sống như màn hình màu của máy tính và tivi.
2.5. Kết luận
Trong chương 2 em đã nêu được một số các nội dung sau :
- Giới thiệu về Vi điều khiển trong đó có các nội dung đã được trình
bày như vi điều khiển là gì, kiến trúc của vi điều khiển, các tập lệnh của vi
điều khiển. Trước khi bắt tay vào viết chương trình cho vi điều khiển chúng ta
cần nắm rõ các đặc điểm của vi điều khiển nói chung để
từ đó chọn ra được
loại vi điều khiển mà mình muốn làm việc.
- Màn hình tinh thể lỏng-LCD. Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

13
CHƯƠNG 3:
MÀN HÌNH LCD 1620A VÀ VI ĐIỀU KHIỂN CC1010
3.1. Màn hình tinh thể lỏng LCD 1602A
Hiện nay trên thế giới có rất nhiều loại màn hình tinh thể lỏng khác nhau
tùy theo mục đích sử dụng và đòi hỏi của công việc mà có những loại màn
hình khác nhau, yêu cầu công việc càng cao thì các loại màn hình tinh thể
lỏng lại có chất lượng khác nhau.Trong mô hình mạng cảm nhận WSN lại

hoặc đường RS.
- Khi (E) = 0 LCD không cho phép và không quan tâm đến những tín
hiệu từ R/W hoặc RS.
- Khi (E) = 1 LCD sẽ kiểm tra trạng thái của hai đường điều khiển và
trả lời phù hợp yêu cầu của đường điều khiển.
¾ Đường Read.Write (R/W): Xác định hướng của dữ liệu giữa LCD và
vi điều khiển.
- Khi (R/W) = 0 cho phép ghi thông tin lên LCD
- Khi (R/W) = 1 đọc thông tin từ
LCD.
¾ Đường Register Select (RS) :Dựa vào đường (RS) LCD sẽ làm rõ
kiểu của dữ liệu trên đường dữ liệu.
- Khi (RS) = 0 chọn thanh ghi mã lệnh, cho phép người dùng gửi lệnh
lên LCD.
- Khi (RS) = 1 chọn thanh ghi dữ liệu cho phép người dùng gửi dữ liệu
cần hiển thị lên LCD.
Hai đường A, K là nguồn +5V dùng để điều khiển độ sáng tối của màn
hình LCD, LCD 1602A có 8 đường dữ liệu từ DB0 đến DB7, hai đường Vss
và Vee điều khi
ển độ tương phản của LCD.
3.2. Cơ chế hoạt động và điều khiển hiển thị trên LCD
Khi LCD được khởi động để sẵn sàng nhận dữ liệu hoặc lệnh cần thiết
lập các đặc trưng của LCD như : độ dài giao diện, ghi mã lệnh (0x010) để tắt
màn hình hiển thị, ghi mã lệnh (0x001) để xóa màn hình hiển thị, ghi mã lệnh
hướng dịch chuyển của con trỏ, ghi mã lệnh cho phép hiển thị con trỏ ở trạng
thái chờ, ghi mã lệnh (0x20) để cho phép chế độ 4bit làm việc.nếu nhận m
ột
ký tự nó sẽ ghi ký tự đó lên màn hình và di chuyển con trỏ sang phải một
khoảng. Vùng con trỏ đánh dấu vùng tiếp theo là nơi ký tự tiếp theo được ghi
lên. Khi muốn viết một chuỗi ký tự, đầu tiên chúng ta cần thiết lập địa chỉ ban

- C : On(1) / Off(0) con trỏ.
- B : On(1) / Off(0) nhấp nháy con trỏ.
Di chuyển con trỏ trên mà hình hiển thị:
- SC : On(1) / Off(0) Sự dịch chuyển màn hình hiển thị.
- RL : Hướng dịch chuyển Phải(1) / Trái (0).
- DL : Thiết lập độ dài dữ liệu 8bit(1) / 4bit(0).
- N : Số dòng hiển thị 1dòng (0) / 2dòng (1).
- F : Font ký tự 5x10 (1) / 5x7 (0).

Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

16
Thăm dò cờ báo bận BUSY FLAG:
- BF : Sét module đang trong quá trình sử lý
Dịch chuyển con trỏ tới vùng CGRAM để hiển thị A-Address đọc viết
mã ASCII để hiển thị D-DATA.
3.3. Vi điều khiển CC1010
Vấn đề lựa chọn vi điều khiển để xây dựng nút mạng là một vấn đề rất
quan trọng. Việc lựa chọn vi điều khiển hợp lý sẽ làm cho quá trình xây dựng
hệ thống được rút ngắn, hệ thống có thể hoạt động ổn định, độ tin cậy cao và
có thể đạt các chỉ tiêu đề ra như sau:
¾ Tiêu thụ năng lượng thấp.
¾
Bộ nhớ chương trình cũng như bộ nhớ dữ liệu có kích thước hợp lý.
¾ Kích thước vật lý nhỏ.
¾ Giá thành rẻ, dễ sử dụng, quen thuộc với người sử dụng....
Như đã giới thiệu ở chương 2 thì trên thế giới hiện nay có rất nhiều loại

- Có 3 kênh ADC 10 Bit.
- Giao diện lập trình SPI.
- Bộ mã hóa DES tích hợp bên trong.
- Có 26 chân vào ra chung.
- Cần rất ít thành phần bên ngoài.
- Độ nhạy cao (-107 dBm).
- Nguồn nuôi từ 2,7 – 3,6 V.
- Có bộ thu phát sóng vô tuyế
n 300 – 1000 MHz.
- Tiêu thụ dòng thấp ( 9.1 mA trong chế độ thu ).
- Công suất phát có thể lập trình được ( lên đến +10 dBm ).
- Tốc độ thu phát dữ liệu lên đến 76.8 kbit/s.
3.3.1. Bộ nhớ Flash:
CC1010 có tích hợp 32-kbyte bộ nhớ lập trình flash. Nó được chia thành
256 trang, mỗi trang dài 128 byte. Nó có thể được lập trình hoặc xoá dữ liệu
thông qua giao diện nối tiếp SPI hoặc thông qua vi nhân 8051. Tuổi thọ của
bộ nhớ Flash thường là 20.000 lần ghi/xoá. Bộ nhớ Flash có thể
được khoá để
không đọc/ghi được bằng cách thiết lập bít tương ứng thông qua giao diện nối
tiếp. Việc xoá chíp phải được thực hiện trên bộ nhớ không bị khoá. Ðiều này
cho phép ngăn chặn phần mềm không bị copy trái phép.

Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

18
3.3.2. Các cổng vào – ra chung:
Vi điều khiển CC1010 có tất cả 4 cổng vào - ra chung đó là: P0, P1, P2,

i /bộ đếm có một thanh ghi 16 bit có thể ghi đọc được thông qua TL0
và TH0 cho Timer 0 và TL1 và TH1 cho Timer 1. Ngoài 2 bộ định thời trên
CC1010 còn cung cấp thêm 2 bộ định thời Timer2 và Timer3 có khả năng
điều chỉnh độ rộng xung. Chế độ hoạt động của 2 bộ định thời này có thể
được thiết lập thông qua thanh ghi TCON2 có địa chỉ 0xA.

Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

20Hình 3.2: Các thanh ghi của bộ định thời

3.3.4. Các cổng nối tiếp
CC1010 có tích hợp 2 cổng nối tiếp 0 và 1. Hai cổng này được điều
khiển thông qua thanh ghi SCON0 và SCON1. Dữ liều vào ra trên hai cổng
này sẽ được lưu tạm thời thông qua các thanh ghi đệm SBUF0 và SBUF1.
Cổng nối tiếp 0 được sử dụng trong các giao tiếp chung. Trong khi đó cổng
nối tiếp 1 được dùng chủ yếu cho mục đích gỡ rối.
3.3.5. Các bộ biến đổi ADC:
Bộ biến đổi ADC tích hợp trên chip được điều khiển bởi thanh ghi
ADCON và ADCON2. Có 2 chân analog được dùng để lấy mẫu được điều
khiển bởi ADCON.ADADR. Thanh ghi này được dùng để lựa chọn chân
AD1 như là chân so sánh bên ngoài (khi đang dùng AD0). Ðiện thế so sánh
được điều khiển bởi ADCON.ADCREF. Bit ADCON.AD_PD được lập khi
ADC không được dùng để tiết kiệm điện năng.
Bộ biến

ưỡng có giá trị
TRUE thì một ngắt được sinh ra và một thủ tục phục vụ ngắt tương ứng được
thực hiện nếu các cờ ngắt EIE.ADIE và ADCON2.ADCIE được bật. ADC sẽ
thực hiện tiếp tục các quá trình chuyển đổi mà không quan tâm tới kết quả của
việc so sánh ngưỡng. Ðể luôn luôn nhận được ngắt khi quá trình biến đổi
được hoàn thành thì ADTRH phải được đặt =0.
¾ Ða chuyển đổi - có dừng:
Khi việc so sánh ngưỡng có giá trị TRUE
thì một ngắt được sinh ra và một thủ tục phục vụ ngắt tương ứng được thực
hiện nếu các cờ ngắt EIE.ADIE và ADCON2.ADCIE được bật. ADC sẽ dừng
hoạt động và bit ADCON.ADCRUN được xóa.
¾ Ða chuyển đổi nạp lại: Khi đã vượt qua ngưỡng thì một quá trình
khởi động lại hệ thống sẽ được sinh ra. Chế độ này thường được s
ử dụng cùng
với chế độ Stop Mode của 8051 và bộ dao động 32 kHz để tiết kiệm điện năng
Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

22
trong khi giám sát tín hiệu. Giá trị được lưu trữ trong ADDATH và ADDATL
không bị ảnh hưởng khi reset hệ thống.
3.4. Kết luận
Trong chương 3 đã giới thiệu một số các kiến thức cơ bản về vi điều
khiển CC1010, các đặc điểm chính, các thành phần mà ta sẽ tiến hành làm
việc trực tiếp đó là lập trình cho nó, một nội dung quan trọng nữa là các kiến
thức về loại màn hình được chọn để hiển thị kế quả của nút gốc sau khi nhận
được dữ liệu từ các nút cơ sở
đó là loại màn hình tinh thể lỏng – LCD 1602A,

lựa chọn ngôn ngữ thích hợp. Từ đó cũng chọn ra chương trình dịch thích
hợp. Ngày nay nhu cầu phát triển hệ thống nhanh, bảo trì dẽ dàng nên dùng
ngôn ngữ được lựa chọn thường là ngôn ngữ cấp cao như C/C++.
Quy trình xây dựng một phần mềm bất kỳ thường trải qua các bướ
c như
sau:
- Tìm hiểu bài toán
- Phân tích
- Thiết kế
- Viết chương trình
Đồ án tốt nghiệp
Sinh viên: Đoàn Duy Hà – CT701

Trang

24
- Kiểm thử
Việc xây dựng một phần mềm nhúng cũng tuân theo trình tự các bước
như trên. Ngoài ra, phần mềm nhúng còn có đặc trưng là làm việc trực tiếp
với phần cứng. Do đó để kiểm soát quá trình làm việc với các thành phần
chấp hành có đúng đắn không là điều kiện rất quan trọng.
4.3. Phần mềm nhúng viết cho vi điều khiển CC1010
Phần mềm nhúng viết cho vi điều khiển CC1010 được viết bằng ngôn
ngữ C, sử dụng các thư viện cho CC1010 do hãng chipcon cung cấp, sử dụng
chương trình dịch Keil uVersion 2.0.
Chương trình dịch Keil uVersion 2.0 do hãng Keil Electronic GmbH xây
dựng là một môi trường phát triển tích hợp (IDE) dùng để xây dựng các
chương trình cho các họ vi điều khiển tương thích họ 8051 của Intel. Đây là
bộ chương trình dịch cho phép người viết chương trình soạn thảo chương
trình, dịch chương trình và gỡ lỗi trên cùng một môi trường. Chương trình


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status