Tải bản đầy đủ (.docx) (91 trang)

THIẾT KẾ CHẾ TẠO MÔ HÌNH HỆ THỐNG TƯỚI TỰ ĐỘNG ĐƯỢC GIÁM SÁT VÀ ĐIỀU KHIỂN QUA INTERNET

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.52 MB, 91 trang )

THIẾT KẾ CHẾ TẠO MÔ HÌNH HỆ THỐNG TƯỚI TỰ ĐỘNG ĐƯỢC
GIÁM SÁT VÀ ĐIỀU KHIỂN QUA INTERNET

Tác giả

VŨ HUỲNH ĐỨC TÀI
NGUYỄN MINH VƯƠNG

Khóa luận được đệ trình để đáp ứng yêu cầu
cấp bằng Kỹ sư chuyên ngành
Cơ Điện Tử

Giáo viên hướng dẫn:
Th.S NGUYỄN TẤN PHÚC

Tháng 06 năm 2013
1


LỜI CẢM ƠN
Chúng em xin trân trọng cám ơn tất cả quý Thầy, Cô trường Đại Học Nông Lâm
Tp. Hồ Chí Minh và quý Thầy, Cô khoa Cơ khí – Công nghệ đã trang bị cho chúng em
những kiến thức quý báu trong quá trình học tập tại trường.
Chúng em xin chân thành cám ơn các Thầy, Cô bộ môn Cơ điện tử đã hướng dẫn,
giúp đỡ chúng em rất tận tình trong quá trình chúng em làm đề tài.
Chúng em xin chân thành cảm ơn thầy Nguyễn Tấn Phúc đã dành nhiều thời gian công
sức, quan tâm theo dõi, tận tình hướng dẫn, động viên và nhắc nhở chúng em hoàn
thành tốt luận văn này.
Qua đây, chúng em xin gửi lời cám ơn đến những người thân cũng như bạn bè đã
động viên, ủng hộ và luôn tạo cho chúng em những điều kiện thuận lợi trong quá trình
hoàn thành Luận Văn Tốt Nghiệp.



Thành phố Hồ Chí Minh, ngày 14 tháng 06 năm 2013
Sinh viên thực hiện
Vũ Huỳnh Đức Tài – Nguyễn Minh Vương

2


TÓM TẮT
Đề tài “THIẾT KẾ CHẾ TẠO MÔ HÌNH HỆ THỐNG TƯỚI TỰ ĐỘNG ĐƯỢC
GIÁM SÁT VÀ ĐIỀU KHIỂN QUA INTERNET” là đề tài nghiên cứu, chế tạo vi
mạch để giám sát và điều khiển van từ xa qua Internet, qua đó còn giúp bà nông dân
quản lý được lượng nước tưới cho mỗi loại cây trồng khác nhau.
Thời gian nhận đề tài là ngày 11-1-2013. Ngày chúng em bắt đầu bắt tay vào làm
là ngày 25-2-2013. Ngày hoàn thành ngày 1-5-2013. Đề tài được thực hiện tại nhà của
bạn Tài.
Nội dung sơ lược của đề tài như sau: Đề tài ứng dụng nguồn năng lượng mặt trời
thông qua việc sử dụng tấm pin mặt trời biến ánh sáng mặt trời thành điện năng điều
khiển hệ thống tưới nhỏ giọt. Hệ thống tưới nhỏ giọt gồm 3 phần chính: phần cơ khí,
phần điện tử và phần Web điều khiển. Phần cơ khí gồm khung mô hình, hộp điều
khiển, dàn ống nước. Phần điện tử gồm các vi mạch điều khiển từ xa, mạch điều khiển
van, mạch đo nhiệt độ, độ ẩm. Phần Web bao gồm trang Web điều khiển từ xa qua
Internet.
Nội dung luận văn gồm 4 chương:
Chương 1: MỞ ĐẦU
1.1. Mục đích nghiên cứu.
1.2. Mục tiêu đề tài.
1.3. Ý nghĩa thực tiễn
Chương 2: TỔNG QUAN
Chương 3: NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU

Chương 4: KẾT QUẢ VÀ THẢO LUẬN
Chương 5: KẾT LUẬN VÀ ĐỀ NGHỊ
Mặc dù là kết quả tâm huyết của hơn 2 tháng làm việc nhưng có thể sẽ không
tránh được những sai sót, xin quý thầy cô và các bạn đóng góp ý kiến.

3


MỤC LỤC
Trang

DANH SÁCH CÁC CHỮ VIẾT TẮT
-

AJAX (Asynchronous JavaScript And XML)
ARP (Address Resolution Protocol)
CSS (Cascading Style Sheets)
DHCP (Dynamic Host Configuration Protocol)
DNS (Domain Name System)
4


-

FTP (File Transfer Protocol)
HTML (Hyper Text Markup Language)
HTTP (Hyper text Transfer Protocol)
ICMP (Internet Control Message Protocol)
IP (Internet Protocol)
LAN (Local Area Network)

MAC (Media Access Control)
MPFS (Microchip File System Store)
SNMP (Simple Network Management Protocol)
TCP (Transmission Control Protocol)
UDP (User Datagram Protocol)
LED (Light Emitting Diode)
LCD (Liquid Crystal Display)

DANH SÁCH CÁC BẢNG

5


DANH SÁCH CÁC HÌNH

6


7


Chương 1
MỞ ĐẦU
Mục đích nghiên cứu

1.1.

Ngày nay, khi nền nông nghiệp ngày càng phát triển, nhu cầu điều khiển tự động
được đặt lên hàng đầu. Xuất phát từ nhu cầu đó ngành cơ điện tử ra đời và nó đã được
xếp trong nhóm 5 ngành khoa học công nghệ hàng đầu vì những ứng dụng rộng rãi của

nó. Song song với sự ra đời của cơ điện tử là sự ra đời và cải tiến không ngừng của
máy tính. Xuất phát từ thực tế đó, bằng những kiến thức đã được học và sự giúp đỡ
của thầy cô, chúng em đã quyết định tìm hiểu về đề tài “Thiết kế chế tạo mô hình hệ
thống tưới tự động được giám sát và điều khiển qua Internet” nhằm ứng dụng khoa học
và công nghệ phục vụ phát triển nông nghiệp bền vững. Thiết nghĩ, đây là mô hình
tưới tiết kiệm nước cho cây trồng thích hợp, hiệu quả hơn trong việc kiểm soát lưu
lượng tưới, phù hợp với điều kiện thiếu nước trong mùa khô và vấn đề thuê nhân công
lao động, chi phí đầu tư trung bình, khá phù hợp với túi tiền nông dân và hỗ trợ rất
nhiều cho người dân nông thôn. Và quan trọng hơn hết là mô hình còn áp dụng công
nghệ điều khiển từ xa qua Internet, giúp cho việc quản lý tưới tiêu từ xa, không còn
phải vất vả như trước.
1.2.
-

Mục tiêu đề tài
Tìm hiểu về hệ thống tưới nhỏ giọt.
Thiết kế và mô phỏng động trên Inventor.
Thiết kế, chế tạo mô hình.
Tìm hiểu vi điều khiển PIC 18F97J60 và PIC 16F887.
Tìm hiểu về lập trình Web bằng ngôn ngữ HTML.
Thiết lập phương trình tính toán lưu lượng tưới phù hợp từng loại cây trồng
khác nhau.

1.3.
-

Ý nghĩa thực tiễn
Đây là một đề tài nghiên cứu mang tính thực tiễn trong việc vận dụng các kiến
thức đã được học để phục vụ trong nền nông nghiệp Việt Nam.
8



-

Về mặt khoa học, đề tài sẽ giúp cho nhóm sinh viên thực hiện hiểu rõ thêm về

-

truyền dữ liệu điều khiển và cách điều khiển mạch điện thông qua Internet.
Về mặt thực tiễn, đề tài ứng dụng điều khiển từ xa rất thiết thực với những kỹ
sư ngành cơ điện tử khi muốn điều khiển những hệ thống lớn trong nhà máy và
xí nghiệp, trong những hệ thống có tính công nghệ cao.

9


Chương 2
TỔNG QUAN
2.1.
Tổng quan về pin năng lượng mặt trời.
2.1.1. Hệ thống pin năng lượng mặt trời

Hình 2.1: Thành phần của một hệ thống pin mặt trời.
Hệ thống pin mặt trời là một hệ thống bao gồm một số các thành phần như: các
tấm pin mặt trời, các tải tiêu thụ điện, các thiết bị lưu trữ điện năng (acquy) và các
thiết bị điều phối điện năng…
2.1.2. Thiết kế một hệ thống pin mặt trời
Thiết kế một hệ thống pin mặt trời là xây dựng một quan hệ tương thích giữa các
thành phần của hệ về mặt định tính và định lượng để đảm bảo hiệu quả cao
2.1.2.1.


Sơ đồ khối

Từ sự phân tích các yêu cầu và các đặc trưng của các phụ tải điện ta sẽ chọn một sơ đồ
khối thích hợp.

Hình 2.2: Sơ đồ khối hệ thống pin mặt trời
Tính toán nguồn điện pin mặt trời
Có nhiều phương pháp tính toán nhưng thông dụng nhất chủ yếu dựa trên sự cân

2.1.2.2.

bằng điện năng trung bình hằng ngày.
• Tính phụ tải điện theo yêu cầu
10


Giả sử hệ cần cấp điện cho các tải T1, T2, T3,… có các công suất tiêu thụ tương
ứng P1, P2, P3,… và thời gian làm việc hàng ngày của chúng là t1, t2, t3,…
Tổng điện năng phải cấp hằng ngày cho các tải:
Eng = P1t1+P2t2+P3t3+…=
Từ Eng nếu nhân với số ngày trong tháng hoặc trong năm ta sẽ tính được nhu cầu
điện năng trong các tháng hoặc cả năm.


Tính năng lượng điện mặt trời cần thiết Ec
Năng lượng hằng ngày dàn pin mặt trời cần phải cấp cho hệ được xác định theo

công thức:


Ec =
Trong đó: η = η1η2η3... =
η1 : hiệu suất thành phần thứ nhất (ví dụ: bộ biến đổi điện)
η2 : hiệu suất thành phần thứ hai (ví dụ: bộ điều khiển)
η3 : hiệu suất nạp phóng điện acquy


Công suất dàn pin mặt trời
Công suất của dàn pin mặt trời thường được tính ra công suất đỉnh hay cực đại

(Peak Watt, Wp), là công suất của dàn pin trong điều kiện chuẩn.

Trong đó :
Eβ cường độ bức xạ trên mặt phẳng đặt nghiêng một góc β so với mặt phẳng ngang.
η (T) là hiệu suất của pin ở nhiệt độ T.



Tính dung lượng bộ acquy
Dung lượng của bộ acquy được tính theo công thức:

C = [Ah]
D: số ngày cần dự trữ năng lượng (số ngày không có nắng)
ηb: hiệu suất nạp phóng điện của acquy.
DOS: độ sâu phóng điện thích hợp (khoảng 0,6 - 0,7).

11


Hình 2.3: Acquy khô kín hiệu K&V.

2.1.2.3.

Các bộ điều phối năng lượng

Các bộ điều phối năng lượng gồm bộ điều khiển quá trình nạp, phóng điện cho
Acquy và bộ biến đổi DC/AC.
Bộ điều khiển là thiết bị có chức năng kiểm soát tự động các quá trình nạp và
phóng điện của bộ acquy. Bộ điều khiển theo dõi trạng thái của acquy thông qua các
tín hiệu đèn báo trên bộ điều khiển.

Hình 2.4: Bộ điều khiển quá trình nạp acquy Việt Linh.
Bộ biến đổi điện (inverter) có chức năng biến đổi dòng điện một chiều từ dàn pin
mặt trời hoặc từ bộ acquy thành dòng điện xoay chiều.

12


Hình 2.5: Inverter của Việt Linh
2.1.3. Ứng dụng pin mặt trời

13


Hình 2.6: Trạm vũ trụ ISS.
Pin mặt trời có ưu điểm là gọn nhẹ có thể lắp bất kỳ đâu có ánh sáng mặt trời,
thích hợp cho các vùng mà điện năng trong mạng lưới chưa vươn tới, đặc biệt là trong
lĩnh vực hàng không vũ trụ. Ứng dụng của pin mặt trời phát triển rất nhanh, nhất là ở
các nước phát triển. Ngày nay pin mặt trời được ứng dụng trong nhiều dụng cụ cá nhân
như máy tính, đồng hồ và các đồ dùng hằng ngày thay thế dần nguồn năng lượng
truyền thống.


Hình 2.7: Mặt trời được ứng dụng tại các hộ gia đình và trong nông nghiệp

Hình 2.8: Một cuộc thi thiết kế xe chạy bằng năng lượng mặt trời cho sinh viên
Ngày nay hệ thống giáo dục nước ta đang tạo điều kiện cho sinh viên tiếp cận với
năng lượng mặt trời thông qua các cuộc thi.

14


Ở Việt Nam, với sự hỗ trợ của một số tổ chức quốc tế đã thực hiện xây dựng
cáctrạm điện dùng pin mặt trời phục vụ nhu cầu sinh hoạt và văn hóa của các địa
phương vùng sâu, vùng xa nhất là đồng bằng sông Cửu Long và Tây Nguyên. Tuy
nhiên giá thành của pin mặt trời còn quá cao so với thu nhập của người dân, nên việc
sử dụng năng lượng mặt trời rộng rãi còn hạn chế.

2.2.
Tổng quan về hệ thống tưới nhỏ giọt hiện nay
2.2.1. Tổng quan về tưới nhỏ giọt
• Nguyên lý của tưới nhỏ giọt

Hình 2.9: Vùng rễ tích cực tập trung
Vùng rễ tích cực tập trung. Rễ tập trung trong vùng đất xác định và qua đó tiết
kiệm được năng lượng của cây trồng. Nâng cao hiệu quả của việc hấp thu nước và chất
dinh dưỡng. Phát triển độ ẩm và độ thông thoáng tối ưu cho đất.

15


Hình 2.10: Lợi ích của vùng khô

Những lợi ích của vùng khô. Giảm sự phát triển của cỏ dại. Giảm chi phí nhân
công, máy móc và chi phí diệt cỏ dại. Tạo sự di chuyển dễ dàng cho nhân công và máy
móc trong diện tích trồng trọt. Ngăn ngừa sự xói mòn giữa các cây trồng.
Những lợi ích của vùng ướt. Duy trì ẩm độ liên tục dọc theo rễ cây trồng. Cho
phép không khí duy trì trong vùng ướt. Tập trung rễ tích cực của cây trồng trong vùng
ướt. Dải ướt liên tục sẽ tạo ra khối lượng cho rễ tích cực của cây. Ngăn ngừa sự phát
triển độ mặn của đất trong vùng ướt.

Hình 2.11: Lợi ích của vùng ướt
Vùng ướt theo từng loại đất. Hình dạng của vùng ướt tuỳ thuộc vào đặc tính cấu
tạo của đất. Đối với đất nhẹ, nước phân bổ hẹp và sâu hơn. Đối với đất nặng, nước
phân bổ có hình giống như hình cầu.

Hình 2.12: Vùng ướt theo từng loại đất
Khoảng cách giữa đầu nhỏ giọt trên ống nhỏ giọt.
-

Yêu cầu khoảng cách dripper cho đất nặng:
Yêu cầu khoảng cách dripper cho đất vừa :
16

0.50 - 1.00 m.
0.30 - 0.50 m.


Yêu cầu khoảng cách dripper cho đất nhẹ :

-

0.20 - 0.30 m.


Khoảng cách đầu nhỏ giọt phải được cân nhắc với kết cấu đất và yêu cầu của cây
trồng.

2.2.2. Những lợi ích của tưới nhỏ giọt

Tưới nhỏ giọt với lưu lượng thấp mang lại:





Độ ẩm đất đồng đều và tối ưu.
Tạo sự thông thoáng hoàn hảo cho đất.
Nâng cao hiệu quả sử dụng nước.
Nâng cao hiệu quả hấp thu dinh dưỡng.

Hình 2.13: Thành phần trong đất
2.2.3. Hệ thống tưới nước nhỏ giọt kiểu Israel

Bí quyết của nông dân Israel là phát triển những công nghệ và thiết bị hiện đại
như tưới nhỏ giọt, sử dụng các van điều khiển tự động, lọc nhiều tầng, dùng vòi phun
áp lực thấp và phun mưa loại nhỏ. Nhờ tưới nhỏ giọt, nông dân tiết kiệm được 60%
lượng nước.

17


Hình 2.14: Công nghệ hiện đại được Israel ứng dụng nhiều trong nông nghiệp
Các cánh đồng của Israel được trang bị mạng lưới đường ống dẫn nước, có các

ống nhỏ như mao mạch dẫn tới từng gốc cây. Hệ thống này được điều khiển bằng máy
tính, tự động đóng mở van tưới khi độ ẩm của rễ cây đạt tới mức nhất định. Hệ thống
tưới nhỏ giọt này còn kiêm luôn nhiệm vụ bón phân. Người ta pha phân bón vào bể
chứa nước và phân bón theo mạng lưới tới từng bộ rễ cây khi tưới. Với những loại cây
cần tưới cả trên mặt lá, người ta lại dùng hệ thống phun sương.
Tưới nhỏ giọt như thế vẫn chưa đủ tiết kiệm. Họ còn trồng cấy trong nhà kính để
ngăn không cho nước bốc hơi lên trời. Ngoài ra, nhà kính còn ngăn chặn sâu bệnh,
giúp tăng sản lượng và chất lượng của hàng hóa. Israel nhận được rất nhiều đơn đặt
hàng mua giống, từ các loại hạt cho tới gen, trứng và tinh trùng của động vật.

Hình 2.15: Nhà kính trồng rau tại Israel
2.2.4. Áp dụng vào Việt Nam

Với bản chất thông minh và ham học hỏi, những năm gần đây, rất nhiều nông
dân Việt Nam đã bắt đầu mày mò (có thể có hướng dẫn của cơ quan khuyến nông) tự
18


tạo ra những hệ thống tưới kiểu israel bằng những nguyên vật liệu sẵn có và đã gặt hái
những thành tựu nhất định:
-

Giảm chi phí nhân công gánh nước, không còn phải kéo ống, thu ống.
Giảm chi phí điện dùng để bơm nước.
Giảm đáng kể lượng nước tưới.

Hình 2.16: Tưới nước tiết kiệm ở Việt Nam
2.3.
Tổng quan về mạng Internet
2.3.1. Giới thiệu


Internet là một hệ thống thông tin toàn cầu có thể được truy nhập công cộng gồm
các mạng máy tính được liên kết với nhau. Hệ thống này truyền thông tin theo kiểu nối
chuyển gói dữ liệu (packet switching) dựa trên một giao thức liên mạng đã được chuẩn
hóa (giao thức IP). Hệ thống này bao gồm hàng ngàn mạng máy tính nhỏ hơn của các
doanh nghiệp, của các viện nghiên cứu và các trường đại học, của người dùng cá nhân,
và các chính phủ trên toàn cầu. Chúng cung cấp một khối lượng thông tin và dịch vụ
khổng lồ trên internet.
Nguồn thông tin khổng lồ kèm theo các dịch vụ tương ứng chính là hệ thống các
trang Web liên kết với nhau và các tài liệu khác trong WWW (World Wide Web). Trái
với một số cách sử dụng thường ngày, Internet và WWW không đồng nghĩa. Internet
là một tập hợp các mạng máy tính kết nối với nhau bằng dây đồng, cáp quang, v.v..;
còn WWW hay Web là một tập hợp các tài liệu liên kết với nhau bằng các siêu liên kết
(hyperlink) và các địa chỉ URL và nó có thể được truy nhập bằng cách sử dụng
Internet.
2.3.2. Hoạt động của mạng Internet
2.3.2.1.
Các giao thức (Protocol)

Các giao thức là tập các luật mà các máy tính phải tuân theo khi giao tiếp trên
Internet.
19


+

Tranmission Control Protocol (TCP): thiết lập kết nối giữa hai máy tính để truyền

tải dữ liệu, chia dữ liệu thành những gói nhỏ và đảm bảo việc truyền nhận dữ liệu.
TCP là giao thức hướng kết nối (connection-oriented protocol).

+

User Datagram Protocol (UDP): thiết lập kết nối nhanh nhưng không chắc chắn

giữa các máy tính để truyền tải dữ liệu, cung cấp ít dịch vụ để khắc phục lỗi.
+

Internet Protocol (IP): điều chỉnh đường đi của những gói dữ liệu đường truyền

nhận trên Internet. TCP là giao thức phi kết nối (connectionless protocol).
+

HTTP: cho phép trao đổi thông tin trên Internet.

+

FTP: cho phép truyền nhận file trên Internet.

+

SMTP: cho phép gửi thư điện tử trên Internet.
TCP/IP được dùng làm giao thức chuẩn khi giao tiếp trên Internet vì nó độc lập

với nền của hệ thống (platform independent) và không có tổ chức nào có quyền sở hữu
giao thức này.
2.3.2.2.

Địa chỉ IP (IP Adress)

Internet là một mạng kết nối rộng lớn giữa các máy tính. Để xác định một máy

tính trên mạng này, người ta dùng một con số gọi là địa chỉ IP. Địa chỉ IP gồm một tập
4 số nhỏ hơn 255 và được ngăn cách bởi các dấu ‘.’. Ví dụ: 41.212.196.197
2.3.2.3.

Mô hình khách – chủ (Client – Server Model)

Internet dựa trên mô hình khách – chủ (client – server), trong đó dữ liệu được
trao đổi thông qua các trang Web. Trong mô hình client – server, mỗi máy tính được
xác định bởi một địa chỉ Internet protocol (IP) và cả máy tính client, server cùng chấp
nhận một giao thức chung để để giao tiếp với nhau. Trong mô hình khách - chủ, máy
khách (client computer) yêu cầu thông tin từ một máy chủ (server). Máy chủ chấp
nhận yêu cầu và gửi thông tin về cho máy khách. Việc trao đổi thông tin này được diễn
ra thông qua những trang Web.
2.3.2.4.

Hệ thống tên miền (DNS – Domain Name System)

Mỗi máy tính trên mạng Internet được xác định bằng địa chỉ IP, nhưng con số
này rất khó nhớ. Để khắc phục nhược điểm này, người ta dùng hệ thống tên miền để
đặt tên

cho máy tính. Ví dụ: tên miền www.yahoo.com ứng với địa chỉ IP

216.109.127.28. request Web page Miền (domain) ứng với một tập các máy tính trên
20


Internet. Phần mở rộng của tên miền (domain name extension) được dùng để xác định
quốc gia hay tổ chức.
2.3.3. Kết nối Internet


Để kết nối với Internet cần có một số yêu cầu về phần cứng và phần mềm sau:
-

Phần cứng: máy tính, kết nối qua đường dây điện thoại hoặc kết nối cáp,

-

modem.
Phần mềm: kết nối internet, hệ điều hành, giao thức TCP/IP, trình duyệt Web.
Các yêu cầu thiết yếu khi kết nối với Internet: kết nối với Internet thông qua một

nhà cung cấp Internet (Internet Service Provider), modem, trình duyệt và địa chỉ URL.

2.3.4. Giao thức TCP/IP

TCP/IP là bộ giao thức cho phép kết nối các hệ thống mạng không đồng nhất
với nhau. TCP/IP là viết tắt của Transmission Control Protocol (Giao thức Điều
Khiển Truyền thông)/Internet Protocol (Giao thức Internet), ngày nay TCP/IP được sử
dụng rộng rãi trong các mạng cục bộ cũng như trên mạng Internet toàn cầu. TCP/IP
không chỉ gồm 2 giao thức mà thực tế nó là tập hợp của nhiều giao thức. Chúng ta
gọi đó là 1 hệ giao thức hay bộ giao thức (Suite Of Protocols).
TCP/IP được xem là giản lược của mô hình tham chiếu OSI với bốn tầng, trong
mô hình này là (theo thứ tự từ trên xuống):
-

Tầng ứng dụng (Application Layer)
Tầng giao vận (Transport Layer)
Tầng mạng (Internet Layer)
Tầng liên mạng (Network Interface Layer)


Hình 2.17: Kiến trúc TCP/IP
21


2.4.
Giới thiệu bộ thư viện TCP/IP stack của Microchip
2.4.1. Sơ lược về TCP/IP Stack của Microchip

Bộ thư viện TCP/IP Stack của Microchip cung cấp một nền tảng cho các ứng
dụng Ethernet do xử lý hầu hết các yêu cầu tương tác giữa tầng vật lý và tầng ứng
dụng. Nó bao gồm các ứng dụng phổ biến của tầng ứng dụng bao gồm HTTP2 phục vụ
cho các trang Web, SMTP để gửi email, SNMP cung cấp tình trạng kiểm soát, Telnet,
Serial Internet,… Ngoài ra, bộ thư viện TCP/IP Stack này có dung lượng tương đối
nhẹ và hiệu suất triển khai cao.
Bộ thư viện TCP/IP Stack của Microchip tối ưu hóa cho tất cả các PIC18, PIC24,
dsPIC và PIC32. Các ngăn xếp được chia thành nhiều lớp, mỗi lớp truy cập các dịch
vụ từ một lớp khác trực tiếp dưới nó. Bộ thư viện TCP/IP này bao gồm các tính năng
sau :
Hỗ trợ giao thức ARP, IP, ICMP, UDP, TCP, DHCP, SNMP, HTTP, FTP, TFTP
-

Socket hỗ trợ cho TCP và UDP
Secure Socket Layer
NetBIOS
DNS – Domain Name System
Ethernet Device Discovery
Hỗ trợ cho MPLAB C18, C30, C32
Bộ thư viện TCP/IP Stack được viết bằng ngôn ngữ C. Bộ thư viện để lại nhiều


không gian cho người dùng điều chỉnh phù hợp với mục đích sử dụng. Giống như mô
hình tham chiếu TCP/IP, TCP/IP Stack cũng được chia làm nhiều lớp. Mỗi lớp có một
chức năng riêng, trong khi các dịch vụ và các giao diện lập trình ứng dụng được định
nghĩa thông qua các tiêu đề bao gồm các tập tin. Không giống như mô hình TCP/IP,
các lớp trong TCP/IP Stack truy nhập trực tiếp vào một hoặc nhiều lớp dưới mà không
phụ thuộc vào lớp dưới nó. Một bổ sung lớn của TCP/IP Stack là thực hiện bổ sung 2
module mới “ StackTask” và “ARPTask”. StackTask quản lý hoạt động của Stack và
tất cả các module của nó trong khi ARPTask quản lý các dịch vụ của các địa chỉ nghị
quyết Protocol. Dưới đây là các lớp mà Microchip TCP/IP Stack đã xây dựng và vị trí
tương ứng của các lớp này trong mô hình giao thức TCP/IP.
TCP/IP Stack là bộ chương trình viết bằng ngôn ngữ C . Để bật tắt hoặc thiết lập
một tham số nào đó người sử dụng chỉ cần thay đổi một hoặc nhiều tham số trong định
nghĩa. Các định nghĩa được liệt kê trong Bảng 2.1:
22


Bảng 2.1: Các giá trị cấu hình Stack
Giá trị
oscillator frequency (Hz)
10-255
2,4,8,16,32,64,
128,256
N/A
N/A
0-255
External Data EEPROM Control Code
Trong gói thư viện TCPIP Stack, các module chức năng được thiết kế dựa hoàn toàn
trên nguyên lý hoạt động của các lớp tương ứng.
2.4.2. Sử dụng TCP/IP stack


Bộ thư viện TCP/IP Stack chứ đầy đủ các module hỗ trợ như HTTP, IP, FTP,
DHCP,... Tùy vào mục đích sử dụng mà người lập trình có thể thay đổi cho phù hợp
với dự án của mình nhưng phải có một số tập tin nhất định trong dự án. Các module và
các tập tin đó được trình bày như Bảng 2.2 sau:

Bảng 2.2: Các module và tập tin cần thiết trong Stack

23


Một số file cơ bản được dùng trong hầu hết mọi dự án sử dụng thư viện TCPIP
Stack:
-

ARP.c và ARP.h : giúp stack tìm địa chỉ MAC từ địa chỉ IP

-

Delay.c và Delay.h : tạo khoảng thời gian thực hiện cho một số hàm

-

Physical Layers File : cho phép các lớp vật lý hoạt động

-

IP.c và IP.h : cho phép stack thực hiện chức năng lớp IP

-


StackTsk.c và StackTsk.h : chứa code khởi tạo stack và các hàm callback

-

HardwareProfile.h : Cấu hình phần cứng cho board mạch

2.4.2.1.

HTTP2 Server

Để hiểu được cách HTTP2 server làm việc, chúng ta cần hiểu 3 thành phần sau:
Cách tạo trang Web với các biến động, tiện ích MPFS2 và các file nguồn
CustomHTTPApp.c, HTTPPrint.h. Quá trình có thể được tóm tắt như Hình 2.18:

Hình 2.18: Quá trình làm việc của HTTP2 server


Các web page : bao gồm tất cả các file HTML và các ảnh, file CSS, file
JavaScript cần thiết đi kèm để hiển thị 1 trang Web. Có 1 ứng dụng mẫu gồm tất
cả các thành phần này được đặt trong folder WebPage2.



File CustomHTTPApp.c : File này thực hiện các ứng dụng Web. Nó miêu tả đầu
ra cho các biến động (thông qua lời gọi hàm HTTPPrint_varname), phân tích dữ
liệu

được

đưa


ra

qua

các

form

HTTPExecutePosst).
24

(trong

HTTPExecuteGet






File HTTPPrint.h : File này được tạo ra tự động bởi tiện ích MPFS2. Nó chỉ rõ
tất cả các biến động và cung cấp mối liên kết giữa các biến được đặt trong web
page và lời gọi hàm HTTPPrint_varname đi kèm được định nghĩa trong
CustomHTTPApp.c . File này không yêu cầu có sự thay đổi bởi người lập trình.
Trong quá trình làm đồ án, chúng em nhận thấy bộ nhớ nội của vi điều khiển

thường có kích thước không lớn, không đủ chứa ảnh MPFS của các trang Web có dung
lượng cao nên chúng em đã chọn cách sử dụng EEPROM ngoài để lưu trữ ảnh MPFS
của các trang Web.

2.4.2.2.

Webpages2

Các trang Web mà server phục vụ có thể được lập trình bằng các mã HTML,
CSS, JavaScript. Điều cần quan tâm nhất là cách viết các biến động. Biến động có thể
được xem là output của ứng dụng này. Nhờ các biến động mà người dùng (client) có
thể quan sát được trạng thái các đối tượng cần điều khiển. Để tạo một biến động, khi
viết trang Web ta đặt tên biến động vào giữa một cặp dấu ngã (~). Ví dụ để tạo một
biến động có tên builddate trong code của trang Web html ta viết:
<div class="examplebox code">~builddate~</div>
Biến động có thể chứa các tham số như trạng thái của đối tượng có liên quan,
Server chỉ gọi một hàm duy nhất xử lý cho nhóm biến động này.
Ví dụ để quan sát trạng thái các nút bấm được đánh số từ 0 tới 3, ta viết:
<div class="examplebox code"> ~btn(3)~ ~btn(2)~~ btn(1)~~ btn(0)~</div>
Ngoài ra, khi các trang Web có các thành phần không đổi như menu lựa chọn,
header…, chúng ta có thể viết chúng trong một file có đuôi .inc (*.inc) và include vào
trang Web như cách viết biến động.
Ví dụ file header.inc chứa các thành phần không đổi ở các trang Web, ở mỗi trang
Web ta ghi:
<div id="menu">~inc:menu.inc~</div>
2.4.2.3.

Tiện ích MPFS2

Tiện ích MPFS đóng gói các web page thành 1 định dạng để lưu trữ hiệu quả
trong 1 hệ thống nhúng. Nó là 1 ứng dụng đồ họa cho PC, có thể tạo ra MPFS2 và các
ảnh MPFS classic để lưu trữ trong bộ nhớ ngoài hoặc bộ nhớ nội.
25



×