Professional Documents
Culture Documents
(123doc) - He-Thong-Canh-Bao-Lu-Lut-Full-Code
(123doc) - He-Thong-Canh-Bao-Lu-Lut-Full-Code
ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
Đề tài:
NGHIÊN CỨU THIẾT KẾ HỆ THỐNG CẢNH
BÁO LŨ SỚM
Hà Nội 6/2018
Đánh giá quyển đồ án tốt nghiệp
(Dùng cho giảng viên hướng dẫn)
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
2
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
SVNC khoa học giải 3 cấp Viện trở lên/các giải thưởng khoa
học (quốc tế/trong nước) từ giải 3 trở lên/ Có đăng ký bằng
phát minh sáng chế
Được báo cáo tại hội đồng cấp Viện trong hội nghị sinh viên
nghiên cứu khoa học nhưng không đạt giải từ giải 3 trở
10b 2
lên/Đạt giải khuyến khích trong các kỳ thi quốc gia và quốc tế
khác về chuyên ngành như TI contest.
10c Không có thành tích về nghiên cứu khoa học 0
Điểm tổng /50
Điểm tổng quy đổi về thang 10
Nhận xét thêm của Thầy/Cô (giảng viên hướng dẫn nhận xét thêm về thái độ,
tinh thần làm việc của sinh viên)
……………………………………………………………………………………
……………………………………………………………………………………
Ngày: / /201
Người nhận xét
(Ký và ghi rõ họ tên)
3
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
4
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Ngày: / /201
Người nhận xét
(Ký và ghi rõ họ tên)
5
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Ở Việt Nam lũ lụt là hiện tượng phổ biến và diễn ra trên khắp các vùng miền đất
nước, đặc biệt là vùng ven biển miền Trung, đồng bằng sông Mêkông và đồng bằng
sông Hồng. Người dân ở những vùng này đã phải học cách sống chung với lũ, đặc
biệt là những người có sinh kế phụ thuộc vào chức năng sản xuất của lũ lụt hàng
năm. Mỗi năm lũ lụt đã cướp đi hàng trăm sinh mạng, tàn phá nhà cửa, mùa màng.
Người dân bỗng chốc tay trắng, sau mỗi cơn lũ cuộc sống của những người dân ở
đây rất khó khăn. Tình trạng thiếu lương thực trầm trọng, họ không có nhà để ở,
không có nước sạch để uống để sinh hoạt và rác cùng xác các động vật phân hủy đó
là nguy cơ bùng phát các dịch bệnh nguy hiểm.
Trước những thực trạng đó em đã quyết định thực hiện đề tài “ Nghiên cứu thiết
kế hệ thống cảnh báo lũ sớm” nhằm góp phần vào việc giảm thiểu thiệt hại do lũ lụt
gây ra, hệ thống sẽ đo mực nước ở các sông hồ và tốc độ dòng chảy ở đó so sánh
với số liệu ở vùng đó rồi đưa ra mức cảnh báo cho người dân.
Trong việc thực hiện đồ án này, em xin gửi lời cảm ơn chân thành đến thầy giáo
...– giảng viên viện Điện Tử Viễn Thông, Đại học Bách Khoa Hà Nội đã trực tiếp
hướng dẫn, khuyến khích và tạo điều kiện cho em trong suốt quá trình làm đồ án tốt
nghiệp này. Em xin cam đoan đây là công trình nghiên cứu khoa học độc lập của
riêng em. Các số liệu sử dụng phân tích trong luận án có nguồn gốc rõ ràng, đã công
bố theo đúng quy định. Các kết quả nghiên cứu trong đồ án do em tự tìm hiểu, phân
tích một cách trung thực, khách quan và phù hợp với thực tiễn của Việt Nam. Các
kết quả này chưa từng được công bố trong bất kỳ nghiên cứu nào khác.
6
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
TÓM TẮT ĐỒ ÁN
Lũ ở nước ta có những diễn biến phức tạp và khó lường, mặc dù xảy ra liên tục
hằng năm nhưng để kiểm soát và phòng chống là rất khó, thiệt hại mà nó gây ra vẫn
là rất lớn. Đồ án này hướng tới việc thu thập dữ liệu ở vùng cần thiết lập hệ thống,
sau đó tích hợp vào hệ thống để so sánh với kết quả đo đạc được đưa ra cảnh báo và
đưa dữ liệu lên web, giúp mọi người có thể theo dõi được tình hình lũ nhanh nhất.
Đồ án gồm 5 chương :
Chương 1. Mở đầu
Chương này đặt ra vấn đề, đưa ra lý do chọn đề tài. Nêu lên mục đích, nhiệm vụ
cũng như tình hình nghiên cứu về cái đề tài liên quan đã có trong và ngoài nước
Chương 2. Cơ sở lý thuyết
Tìm hiểu tổng quan về đặc điểm và nguyên nhân hình thành lũ cũng như các
phương pháp đo và cảnh báo lũ
Chương 3. Tổng quan về hệ thống
Trình bày quá trình xây dựng sơ đồ khối cho hệ thống phần mềm và phần cứng,
từ đó lựa chọn các linh kiện cho mạch.
Chương 4. Chi tiết thiết kế
Đi sâu vào phân tích chi tiết từng khối, triển khai phần cứng cũng như phần
mềm
Chương 5. Kết quả thử nghiệm và đánh giá
Các kết quả đạt được trong quá trình thực hiện đồ án. Kết quả: hệ thống thiết kế
đã thực hiện được các chức năng gì? Đưa ra kết luận tổng hợp lại các công việc đã
hoàn thành và chưa hoàn thành, đưa ra hướng phát triển cho hệ thống.
7
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
8
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
MỤC LỤC
9
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
CHƯƠNG 1. MỞ ĐẦU
Những năm gần đây ở nước ta thiên tai lũ lụt xảy ra thường xuyên hơn với mức
độ trầm trọng hơn, đã gây thiệt hại nghiêm trọng về người của cải và môi trường
sinh thái.... Việc giảm nhẹ thiệt hại do lũ lụt đang là một vấn đề hết sức cấp bách
được nhiều tổ chức và các nhà khoa học trên thế giới tập trung nghiên cứu. Lũ lụt là
một trong những tai biến thiên nhiên, kết quả của quá trình tập trung nước với khối
lượng lớn và tràn vào các vùng địa hình thấp, gây ngập lụt trên diện rộng, không chỉ
gây tổn hại nặng nề về người và của ở thời điểm đó mà còn tác động tiêu cực lâu dài
đến môi trường sinh thái, ảnh hưởng trực tiếp đến đời sống và các hoạt động kinh tế
xã hội. Nghiên cứu các giải pháp phòng lũ lụt được nhiều quốc gia quan tâm và
hướng tiếp cận là sự kết hợp giữa giải pháp phi công trình và công trình. Giải pháp
công trình thường được sử dụng là xây dựng các hồ chứa, đê điều, cải tạo lòng
sông… Các giải pháp phi công trình là trồng rừng, bảo vệ rừng; xây dựng và vận
hành các phương án phòng tránh lũ và di dân lúc cần thiết khi có thông tin dự báo
và cảnh báo chính xác.
Qua những lý do đó em quyết định thực hiện đề tài “Nghiên cứu thiết kế hệ
thống cảnh báo lũ sớm”, như là một trong các phương án giúp giảm thiểu hậu qua
gây ra do lũ lụt.
Để tài này trước hết hướng tới việc thu thập số liệu địa lý và thông tin về các hệ
thống cảnh báo đã có từ trước để qua đó có cái nhìn tổng thể về thực trạng lũ lụt tại
Việt Nam. Từ đó tạo ra hệ thống cảnh báo lũ của riêng mình sao cho hoạt động
được tại mọi nơi, dưới mọi điều kiện khắc nghiệt của thời tiết, đồng thời tiếp thu
những ưu điểm cũng như khắc phục những yếu điểm của các hệ thống trước đó,
nhằm tạo ra sản phẩm tốt nhất, có tính hữu dụng cao, có thể đi vào đời sống.
Nhận biết được chính xác đặc điểm từng vùng những nơi hay xảy ra lũ.
10
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Tạo ra hệ thống có tính tương tác cao, thân thiện với người sử dụng.
Hướng đến mục tiêu bất kì người dân nào cũng có thể sử dụng được nó.
Đảm bảo hệ thống hoạt động hiệu quả, chính xác trong mọi điều kiện thời
tiết, có giá thành rẻ, kích thước nhỏ gọn, dễ lắp đặt, vận chuyển.
Luận án đã xây dựng mô hình xác định nguy cơ lũ quét áp dụng cho lưu
vực nhỏ, vùng núi cao, địa hình phức tạp, ít thông tin/số liệu hỗ trợ. Với
những phần mềm GIS có tính năng phân tích không gian đều có thể áp dụng
mô hình ý tưởng này. Đã áp dụng mô hình mô phỏng thành công nguy cơ lũ
quét cho lưu vực sông Năng, Bắc Kạn.
Hệ thống gồm 3 cảm biến đo tốc độ và lưu lượng nước đặt dưới dòng sông
hoặc hồ đập, một hệ thống máy chủ thu thập thông tin từ các cảm biến và tính
toán đưa ra cảnh báo tới người dân qua hệ thống phát thanh, còi báo động.
Chính quyền địa phương có thể gửi thông điệp về tình hình lũ lụt một cách
nhanh chóng tới các nơi khác có thể bị ảnh hưởng và thậm chí xuống cả vùng
hạ lưu để người dân đề phòng.
Hệ thống cảnh báo lũ lụt sớm Leveline-EWS
11
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
được ghi lại bởi LeveLine-Mini khi áp suất khí quyển thay đổi cho phép hệ
thống đo được những thay đổi chỉ nhỏ 1cm.
Trong chương này chúng ta đã tìm hiểu được lý do chọn đề tài cũng như đặt ra
được những mục đích và nhiệm vụ cụ thể cho đề tài qua đó xác định các bước tiếp
theo cần phải làm. Tham khảo các dự án đã có tìm ra những ưu điểm, nhược điểm
của các dự án đó để làm cho đề tài của mình được tối ưu nhất.
12
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
Lũ là hiện tượng nước sông dâng lên cao trong khoảng thời gian nhất định sau
đó giảm dần. Khi lũ lớn, nước lũ tràn qua bờ sông, bờ đê, chảy vào vùng thấp
trũng và gây ngập trên diện rộng thì được gọi là lụt.
Căn cứ vào thời điểm xuất hiện lũ, người ta chia thành các loại lũ như sau:
Lũ tiểu mãn: là loại lũ do mưa lớn sinh ra trong khoảng thời tiết tiểu mãn hàng
năm. Lũ tiểu mãn thưởng xảy ra từ tháng 5 đến tháng 6, và là nguồn cung cấp
lượng nước quan trọng cho các hoạt động đặc biệt là sản xuất nông nghiệp trong
thời kì nắng nóng. Nhưng cũng có những năm lũ tiểu mãn lớn hơn lũ chính vụ
nên gây thiệt hại đáng kể cho địa phương.
Lũ chính vụ: là lũ xuất hiện vào giữa mùa mưa lũ, thường là những trận lũ lớn
nhất trong năm nên dễ gây ngập lụt, làm thiệt hại đáng kể về tính mạng và tài
sản.
Lũ muộn: là lũ thường xảy ra vào cuối mùa mưa lũ. Lũ muộn thường gây thiệt
hại cho người sản xuất nông nghiệp ở vụ Đông Xuân.
Lũ là một hiện tượng tự nhiên vốn chịu ảnh hưởng trực tiếp hệ thống thời tiết
phức tạp của Trái đất và xảy ra hằng năm với khoảng thời gian nhất định. Khi
một khu vực nào đó trong lưu vực sông có mưa, nước mưa chảy xuống các khe,
rãnh trên mặt đất và thấm ướt lớp đất mặt. Khi mưa vẫn tiếp tục với cường độ
tăng dần và lớn hơn cường độ thấm thì trên mặt đất bắt đầu hình thành dòng chảy
mặt do đất khi này đã bão hòa nước. Dòng chảy mặt khi đó được tạo ra trên các
con suối nhỏ, chảy theo các sườn dốc, chảy từ nơi cao đến nơi thấp hoặc tích tụ
lại ở chỗ trũng. Khi nước từ các con suối đổ vào dòng sông, mực nước sông khi
13
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
đó bắt đầu tăng lên, tức là lũ bắt đầu xuất hiện và sẽ tăng lên theo mực nước
sông. Trong mùa mưa lũ, những trận mưa liên tiếp trên lưu vực sông làm cho
nước trên các con suối dâng cao rồi đổ ra sông chính. Tổ hợp nước của các con
suối trong lưu vực làm cho nước trên sông chính tăng dần lên tạo thành lũ.
Ngoài ra, còn một số yếu tố khác ảnh hưởng đến khả năng xuất hiện lũ lớn và bất
thường là:
Lưu vực càng rộng thì nước lũ lên chậm nhưng cũng sẽ rút chậm, ngược lại lưu
vực hẹp và dài sẽ làm nước lũ lên nhanh – một số trường hợp sẽ hình thành lũ quét,
lũ ống.
Rừng bị tàn phá cũng là một trong các nguyên nhân gây nên lũ lụt và xói mòn
đất.
Hiện tượng El Nino (do sự nóng lên của vùng biển xích đạo vùng Nam Mỹ Thái
Bình Dương) và La Nina (do sự lạnh lên của vùng biển xích đạo Đông Thái Bình
Dương) đã tác động tới hiện tượng lũ lụt trên nhiều vùng khác nhau.
Nếu một hệ thống sông có nhiều con sông hợp thành thì khả năng tổ hợp thời
điểm xuất hiện lũ đồng thời sẽ làm gia tăng mức độ nghiêm trọng của lũ.
Lũ là một dạng thiên tai, tiềm ẩn những rủi ro và không dễ dàng phòng tránh
được. Lũ lụt có tác động rất lớn đến hoạt động của con người, nó có thể đe dọa
đến sự sống, tài sản và môi trường. Tần suất và mức độ nghiêm trọng của lũ lụt
thậm chí còn được dự kiến tăng lên bởi biến đổi khí hậu. Phát triển kinh tế, xã
hội cũng có thể đẩy nhanh và gia tăng nguồn nước mặt chảy tràn do thay đổi bề
mặt tiếp xúc, suy thoái thảm phủ thực vật về số lượng và chất lượng. Ngoài ra lũ
cũng được hình thành một cách nhân tạo do hoạt động của con người như xả lũ
hồ chứa để đón lũ theo dự báo.
Để có khả năng phòng chống lũ, con người phải năm được quy luật của lũ.
Tuy nhiên, do lũ có tính rủi ro nên chỉ có thể dự báo sự xuất hiện của lũ với các
cường độ khác nhau (lưu lượng, mực nước) thông qua thống kê các trận lũ xuất
hiện trong nhiều năm tại một mặt cắt nào đó của dòng sông. Đó là tần số xuất
hiện lũ trong một thời gian dài mà con người ghi chép được, dựa vào đó tính
được tần suất lũ.
14
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Cấp báo động lũ là độ cao mực nước lũ quy định cho từng vị trí trên sông, suối.
Mực nước ở mỗi cấp báo động lũ cho biết mức độ nguy hiểm của nước lũ trong
sông, suối cũng như mức ngập lụt do nước lũ gây ra. Theo quy định, có 3 mức báo
động lũ :
Báo động cấp I là mức giới hạn mực nước cho biết trên sông đã bắt đầu có lũ
nhưng nước lũ còn ở giới hạn trong lòng sông - tương đương cấp lũ nhỏ.
Báo động cấp II là mức giới hạn mực nước cho biết lũ trong sông đã lên đến
mức trung bình, nước lũ bắt đầu gây ảnh hưởng ngập lụt và tác động xấu đến
dân sinh, kinh tế, xã hội - tương đương lũ trung bình.
Báo động cấp III là mức giới hạn mực nước cho biết lũ trong sông đã lên đến
mức cao, gây ảnh hưởng ngập lụt nghiêm trọng và có thể gây nguy hiểm cho
đời sống sinh hoạt, sản xuất của nhân dân, đe dọa đến tính mạng và tài sản
của nhân dân - tương đương lũ lớn.
Mực nước tương ứng với các cấp báo động tại một số sông [2]
Mực nước tương ứng với các
TT Tên sông Trạm thủy văn cấp báo động (m)
I II III
I Đài Khí tượng thủy văn khu vực Tây Bắc
1 Đà Mường Tè 285,0 287,5 290,0
2 Đà Lai Châu (Mường 177,0 180,5 184,0
Lay)
3 Đà Hòa Bình 21,0 22,0 23,0
4 Đà Quỳnh Nhai 142,5 144,5 146,5
5 Nậm Rốm Mường Thanh 480,0 481,0 482,0
6 Nậm Pàn Hát Lót 511,5 512,5 513,5
II Đài Khí tượng thủy văn khu vực Việt Bắc
1 Thao Lào Cai 80,0 82,0 83,5
2 Thao Yên Bái 30,0 31,0 32,0
3 Thao Phú Thọ 17,5 18,2 19,0
4 Lô Hà Giang 99,0 101,0 103,0
5 Lô Tuyên Quang 22,0 24,0 26,0
6 Lô Vụ Quang 18,3 19,5 20,5
7 Lô Việt Trì 13,7 14,9 15,9
8 Cầu Bắc Cạn 132,0 133,0 134,0
9 Cầu Gia Bảy 25,0 26,0 27,0
15
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
16
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
17
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Bảng 2.1 Mực nước tương ứng với các cấp báo động lũ
Mực nước là cao trình mặt nước so với mặt chuẩn quy ước (cao trình 0-0), mặt
chuẩn này thường được quy định chung cho từng vùng lảnh thổ. Miền Bắc lấy
chuẩn là mực nước biển trung bình nhiều năm tại hòn Dấu, miền Nam lấy chuẩn
trung bình tại mũi Nai, Hà Tiên.
Ðơn vị đo mực nước thường dùng là cm hoặc mét (m). Ký hiệu biểu thị mực
nước phổ biến là chữ H.
18
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Mực nước biểu thị thế năng của nguồn nước. Mưa lũ và thủy triều là hai tác nhân
chủ yếu gây nên sự giao động mực nước trong các ao hồ, sông suối.
Hình 2.1 Đo mực nước bằng phương thức thủ công [3]
Ðo bằng máy tự ghi mực nước.
Mỗi cách đo có ưu nhược điểm khác nhau, tùy theo điều kiện địa hình, địa chất
và tính chất giao động mực nước tại vị trí trạm đo, kết hợp với khả năng kinh tế mà
chọn cách đo thích hợp.
19
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Lưu lượng nước là lượng nước chảy qua mặt cắt ngang trong một đơn vị thời
gian. Ðơn vị đo phổ biến là m3/s hoặc lít/s. Ký hiệu thường dùng chỉ lưu lượng là Q.
Lưu lượng nước biểu thị động năng của dòng nước. Nước ta thuộc vùng nhiệt đới
và tiếp giáp với biển do đó lưu lượng nước trong các sông suối giao động bởi mưa
lũ và thủy triều.
Lưu lượng trung bình trong khoảng thời gian Δt = t2 - t1 xác định bởi biểu thức:
∆v
Qtb =
∆t
(2.1)
Trong đó ΔV là thể tích chất lưu chảy qua ống trong thời khoảng gian khảo sát.
Lưu lượng tức thời xác định theo công thức:
dv
Q=
dt
(2.2)
Để đo lưu lượng người ta dùng các lưu lượng kế. Tuỳ thuộc vào tính chất chất
lưu, yêu cầu công nghệ, người ta sử dụng các lưu lượng kế khác nhau. Nguyên lý
hoạt động của các lưu lượng kế dựa trên cơ sở:
Đếm trực tiếp thể tích chất lưu chảy qua công tơ trong một khoảng thời gian
xác định Δt.
Đo vận tốc chất lưu chảy qua công tơ khi lưu lượng là hàm của vận tốc.
Đo độ giảm áp qua tiết diện thu hẹp trên dòng chảy, lưu lượng là hàm phụ
thuộc độ giảm áp.
Tín hiệu đo biến đổi trực tiếp thành tín hiệu điện hoặc nhờ bộ chuyển đổi điện
thích hợp.
Trong chương này chúng ta đã xác định được các nguyên nhân hình thành lũ
tham biến, tham số cần thiết đó là mực nước và lưu lượng nước để tiến hành xây
dựng hệ thống, cũng như là các phương pháp đo cho các tham số đó. Vì thế trong
chương tiếp theo chúng ta sẽ bắt đầu xây dựng hệ thống
20
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
21
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Dữ liệu được lấy qua cảm biến được xử lý bằng vi điều khiển, giá trị của cảm
biến đo được sẽ được cập nhật lên web thông qua khối truyền thông người dùng có
thể truy cập vào web, theo dõi diễn biến mực nước và lưu lượng nước đo đạc được.
3.2.2 Sơ đồ khối hệ thống phần cứng
22
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Mô hình Client- Server là một mô hình nổi tiếng trong mạng máy tính, được áp
dụng rất rộng rãi và là mô hình của mọi trang web hiện có. Ý tưởng của mô hình
này là máy con (đóng vai trò là máy khách) gửi một yêu cầu (request) để máy chủ
(đóng vai trò là người cung ứng dịch vụ), máy chủ sẽ xử lý và trả kết quả về cho
máy khách.
23
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Để một chương trình server và một chương trình client có thể giao tiếp được với
nhau thì giữa chúng phải có một chuẩn để nói chuyện, chuẩn này được gọi là giao
thức. Nếu một chương trình từ client nào đó muốn yêu cầu lấy thông tin từ server
thì nó phải tuân theo giao thức mà server đó đưa ra. Bản thân chúng ta cần xây dựng
một mô hình client-server cụ thể thì ta cũng có thể tự tạo ra một giao thức riêng
nhưng thường chúng ta chỉ tạo được điều này ở tầng ứng dụng của mạng. Với sự
phát triển mạng như hiện nay thù có rất nhiều giao thức chuẩn trên mạng ra đời
nhằm đáp ứng nhu cầu phát triển. Với đồ án này em sẽ chọn mô hình client – server
sử dụng giao thức TCP/IP để truyền nhận dữ liệu với nhau
24
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
nhiệm đảm bảo việc truyền dữ liệu đáng tin cậy qua các mạng kết nối Internet. TCP
kiểm tra các gói dữ liệu xem có lỗi không và gửi yêu cầu truyền lại nếu có lỗi được
tìm thấy.
Các giao thức TCP/IP phổ biến nhất
• HTTP – Được sử dụng giữa một web client và một web server, để truyền dữ
liệu không an toàn. Một web client(tức là trình duyệt Internet trên máy tính)
gửi một yêu cầu đến một web server để xem một trang web. Máy chủ web
nhận được yêu cầu đó và gửi thông tin trang web về cho web client.
• HTTPS – Được sử dụng giữa một web client và một web server, để truyền
dữ liệu an toàn. Thường được sử dụng để gửi dữ liệu giao dịch thẻ tín dụng
hoặc dữ liệu cá nhân khác từ một web client (ví dụ trình duyệt Internet trên
máy tính) tới một web server.
• FTP – Được sử dụng giữa hai hoặc nhiều máy tính. Một máy tính gửi dữ liệu
đến hoặc nhận dữ liệu từ máy tính khác một cách trực tiếp.
Xampp là chương trình tạo máy chủ Web (Web Server) được tích hợp sẵn
Apache, PHP, MySQL, FTP Server, Mail Server và các công cụ như phpMyAdmin.
Xampp có chương trình quản lý khá tiện lợi, cho phép chủ động bật tắt hoặc khởi
động lại các dịch vụ máy chủ bất kỳ lúc nào. [6]
25
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Xampp là một mã nguồn mở máy chủ web đa nền được phát triển bởi Apache
Friends, bao gồm chủ yếu là Apache HTTP Server, MariaDB database, và
interpreters dành cho những đối tượng sử dụng ngôn ngữ PHP và Perl. Xampp là
viết tắt của Cross-Plarform (đa nền tảng-X), Apache (A), MariaDB (M), PHP (P)
và Perl (P). Nó phân bố Apache nhẹ và đơn giản, khiến các lập trình viên có thể dễ
dàng tạo ra máy chủ web local để kiểm tra và triển khai trang web của mình. Tất cả
mọi thứ cần cho phát triển một trang web - Apache ( ứng dụng máy chủ), CSDL
(MariaDB) và ngôn ngữ lập trình (PHP) được gói gọn trong 1 tệp. Xampp cũng là 1
đa nền tảng vì nó có thể chạy tốt trên cả Linux, Windows và Mac. Hầu hết việc triển
khai máy chủ web thực tế đều sử dụng cùng thành phần như XAMPP nên rất dễ
dàng để chuyển từ máy chủ local sang máy chủ online.
Adobe Dreamweaver CS6 là một phần mềm hỗ trợ thiệt kế web mạnh mẽ, nhiều
tình năng được sử dụng phổ biến rộng rãi. Dreamweaver hỗ trợ bạn thiết kế giao
diện của trang web mà không cần phải can thiệp vào code của trang web đó.
26
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Adobe Dreamweaver CS6 là một công cụ xử lý dành cho những người thiết kế
web, viết code và những nhà phát triển ứng dụng ở mọi cấp độ. Chức năng code
được nâng cao tạo cho nó một sự mạnh mẽ khi điều hướng những trang web phức
tạp ở thời điểm thiết kế. Những công cụ bố trí được cải thiện làm cho công việc dàn
trang được tiến hành từ ý tưởng tổng hợp đến sự đồng ý của khách hàng. Những
sáng kiến thông qua bản thử Dreamweaver có thể giúp những đội hoặc những người
phát triển web cá nhân tiến đến mức độ tiếp theo như nhau khi thực hiện cũng như
về mặc chức năng.
27
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Web động là những website có hệ thống quản lý nội dung và người dùng có thể
chỉnh sửa nội dung được. Ví dụ như trang vnexpress.net hay 24h.com.vn thì đó là
những web động bởi vì họ có thể đăng tin mới, chỉnh sửa tin mới và chỉnh sửa danh
mục menu,....
Web động sử dụng các công nghệ như HTML, CSS, HTML5, CSS3,
JAVASCRIPT, ... và điều đặc biệt là có sử dụng một ngôn ngữ lập trình server như
PHP, một hệ quản trị CSDL như MySQL, vì vậy web động phải chạy trong máy
chủ. Nếu đặt trên máy tính thì phải cài các Web server ảo như vertrigo, Xampp,
wampp, ...
b. HTML
HTML viết tắt của Hypertext Markup Language - Ngôn ngữ liên kết siêu văn
bản. Ngôn ngữ HTML dùng các tag hoặc các đoạn mã lệnh để chỉ cho các trình
duyệt (Web browsers) cách hiển thị các thành phần của trang như text và graghics,
và đáp lại những thao tác của người dùng bởi các thao tác ấn phím và nhắp chuột.
Đặc điểm chung của Html: Một tài liệu HTML tương đương với một trang web.
Một tài liệu HTML diễn tả một trang web.
Những thẻ HTML sẽ hướng dẫn trình duyệt web trình bày thành phần của
một trang web
Các thẻ trong HTML đều có thẻ đóng và thẻ mở tương ứng, vị dụ các cặp
thẻ: <html> và </html>, <h1> và </h1>, <p> và </p>…
Ngoại trừ các thẻ đặc biệt sau không tuân theo quy luật trên, đó là:
<meta/>, <link/>, <br/>, <hr/>, <img/>.
c. Css
28
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
CSS là chữ viết tắt của cụm từ tiếng anh” Cascading Style Sheet”, là kiểu thiết
kế sử dụng nhiều lớp định dạng chồng lên nhau . Css được tổ chức Word Wide Web
giới thiệu vào năm 1996. Các đơn giản nhất để hiểu CSS là coi nó như một phần mở
rộng của HTML để giúp đơn giản hóa và cải tiến việc thiết kế cho các trang Web.
Các đặc tính cơ bản của Css:
Css quy định cách hiển thị của các thẻ HTML bằng cách quy định các thuộc tính
của các thẻ đó(font chữ, màu sắc). Để cho thuận tiện có thể đặt toàn bộ các thuộc
tính của thẻ vào trong một file riêng có phần mở rộng là “.css”
Css phá vỡ giới hạn trong thiết kế Web , bởi chỉ cần một file Css có thể cho phép
quản lí định dạng và layout trên nhiều trang khác nhau. Các nhà phát triển Web có
thể đinh nghĩa sẵn thuộc tính của một số thẻ HTML nào đó và sau đó nó có thể
dừng lại trên nhiều trang khác.
d. PHP
PHP vay mượn một số cú pháp từ C, Pert, Shell và Java. Nó là một ngôn ngữ lai,
lấy các tính năng tốt nhất từ ngôn ngữ khác và tạo ra một ngôn ngữ kịch bản (script
language): dễ sử dụng và mạnh mẽ. Mã nguồn (code) php được sử dụng với nhiều
mục đích trong đó: đặc biệt thích hợp cho phát triển web và có thể được nhúng vào
các mã HTML.
Các chức năng của php: Trước hết và cũng là quan trọng nhất, nó đảm nhiệm vai
trò của: ngôn ngữ kịch bản phía máy chủ (Server Side script) - máy chủ sẽ tiếp nhận
request (yêu cầu) từ máy khách (client) - máy chủ web sẽ triệu gọi file mã nguồn
tương ứng. Trong file mã nguồn này chứa các mã php để xử lý request - trình thông
dịch sẽ dịch mã php sang mã HTML, CSS, XML,...trả ra cho máy chủ web, máy
chủ web trả lại thông tin (reponse) cho máy khách. Dữ liệu nhận được từ máy khách
là các đoạn mã dạng text như HTML, CSS,...mà không thể thấy mã php ( vì đã được
thực thi thành dạng text ) - đảm bảo được tính bảo mật, đây cũng là chức năng cơ
bản và quan trọng của một ngôn ngữ phía máy chủ.
29
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Chương này đã trình bày các yêu cầu cần thiết của mạch. Xây dựng tổng quan
được sơ đồ khối phần cứng trong đó có thể thấy khối cảm biến là khối quan trọng
nhất vì nó liên quan trực tiếp đến việc đo đạc sao cho chính xác. Phần mềm là cách
thức truyền nhận dữ liệu từ client đến server đến CSDL và hiển thị lên web
30
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Module cảm biến siêu âm SRF05 dùng để đo khoảng cách đến vật chắn bằng
sóng siêu âm. Module có 2 đầu thu và phát sóng, khoảng cách được xác định bằng
cách đo khoảng thời gian mà sóng siêu âm được phát ra từ module truyền đến vật
chắn rồi phản hồi về.
Khi phát ra xung, và chờ xung phản xạ về, chân ECHO của SRF05 sẽ được kéo
lên cao. khi có xung phản xạ về chân ECHO sẽ được kéo xuống thấp, hoặc sau
30ms nếu không có xung phản xạ về.
31
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
32
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Nguồn 5V-24V
Dòng tối đa 15 mA(DC 5V)
Khối lượng 43 g
Lưu lượng đo 1~40 L/min
Nhiệt độ hoạt động0°C~80°C
Nhiệt độ chất lỏng <120°C
Độ ẩm hoạt động 35%~90%RH
Áp lực chịu đc under 1.75Mpa
Nhiệt độ bảo quản -25°C~+80°C
33
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Bảng 4.2 Thông số của cảm biến lưu lượng S201 [8]
Trong đó:
34
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
35
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
bootloader
SRAM 2 KB (Atmega328)
EEPROM 1 KB (Atmega328)
Arduino UNO R3 có thể được cấp nguồn 5VDC thông qua cổng USB hoặc cấp
nguồn ngoài thông qua Adaptor với điện áp khuyên dùng là 7-9VDC, thường thì
nên cấp nguồn bằng pin 9V là hợp lý nhất nếu bạn không có sẵn nguồn từ cổng
USB.
Nếu cấp nguồn vượt quá ngưỡng giới hạn như trên sẽ làm hỏng Arduino UNO
R3.GND (Ground): cực âm của nguồn điện cấp cho Arduino UNO. Khi bạn dùng
các thiết bị sử dụng những nguồn điện riêng biệt thì những chân này phải được nối
với nhau.
5V: cấp điện áp 5V đầu ra. Dòng tối đa cho phép ở chân này là 500mA.
3.3V: cấp điện áp 3.3V đầu ra. Dòng tối đa cho phép ở chân này là 150mA.
Vin (Voltage Input): Để cấp nguồn ngoài cho Arduino UNO, bạn nối cực dương
của nguồn với chân này và cực âm của nguồn với chân GND.
RESET: Khi nhấn nút Reset trên board để Reset vi điều khiển tương đương với
việc chân Reset được nối với GND qua 1 điện trở 10KΩ.
Arduino UNO R3 có 14 chân digital dùng để đọc hoặc xuất tín hiệu. Chúng chỉ
có 2 mức điện áp là 0V và 5V với dòng vào/ra tối đa trên mỗi chân là 40mA. Ở mỗi
36
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
chân đều có các điện trở pull-up từ được cài đặt ngay trong vi điều khiển
ATmega328 (mặc định thì các điện trở này không được kết nối).
Một số chân digital có các chức năng đặc biệt như sau:
2 chân Serial 0 (RX) và 1 (TX): dùng để gửi (Transmit – TX) và nhận (Receive –
RX) dữ liệu TTL Serial. Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2
chân này. Kết nối bluetooth có thể nói là kết nối Serial không dây. Nếu không cần
giao tiếp Serial bạn không nên sử dụng 2 chân này nếu không cần thiết
Chân PWM (~): 3, 5, 6, 9, 10, và 11: Cho phép bạn xuất ra xung PWM với độ
phân giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàm
analogWrite(). Nói một cách đơn giản, bạn có thể điều chỉnh được điện áp ra ở chân
này từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác.
Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Ngoài các chức
năng thông thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI
với các thiết bị khác.
LED 13: trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L). Khi bấm nút
Reset, bạn sẽ thấy đèn này nhấp nháy để báo hiệu. Nó được nối với chân số 13. Khi
chân này được người dùng sử dụng, LED sẽ sáng.
Arduino UNO có 6 chân analog (A0 → A5) cung cấp độ phân giải tín hiệu 10bit
để đọc giá trị điện áp trong khoảng 0V → 5V. Với chân AREF trên board, bạn có
thể để đưa vào điện áp tham chiếu khi sử dụng các chân analog. Tức là nếu bạn cấp
điện áp 2.5V vào chân này thì bạn có thể dùng các chân analog để đo điện áp trong
khoảng từ 0V → 2.5V với độ phân giải vẫn là 10bit.
Đặc biệt, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp
I2C/TWI với các thiết bị khác.
37
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Việc truyền phát dữ liệu được thực hiện trên module SIM 900A. Module
Sim900A là module GSM, hoạt động ở 2 băng tần 900/1800 MHz, xây dựng dựa
trên Sim900A của hãng SIMCOM.
Mạch đặt ngoài trời những nơi không có điện lưới và trong một thời gian dài
nên cần nguồn có thể tự sạc, lựa chọn pin mặt trời làm nguồn là giải pháp tối ưu
38
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Chân Ký hiệu Mô tả
1 Vss Chân nối đất cho LCD, khi thiết kế mạch ta nối chân này với
GND
39
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
2 VDD Chân cấp nguồn cho LCD, khi thiết kế mạch ta nối chân này với
VCC=5V của mạch điều khiển
3 VEE Điều chỉnh độ tương phản của LCD.
Chân chọn thanh ghi (Register select). Nối chân RS với logic
“0”
(GND) hoặc logic “1” (VCC) để chọn thanh ghi.
+ Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi lệnh IR của LCD
4 RS (ở chế độ “ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở
chế độ “đọc” - read)
+ Logic “1”: Bus DB0-DB7 sẽ nối với thanh ghi dữ liệu DR bên
trong LCD.
Chân chọn chế độ đọc/ghi (Read/Write). Nối chân R/W với logic
5 R/W “0” để LCD hoạt động ở chế độ ghi, hoặc nối với logic “1” để LCD
ở chế độ đọc.
Chân cho phép (Enable). Sau khi các tín hiệu được đặt lên bus
DB0- DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép
của chân E.
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào(chấp nhận)
thanh ghi bên trong nó khi phát hiện một xung (high-to-low
6 E transition) của tín hiệu chân E.
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát
hiện cạnh lên (low-to-high transition) ở chân E và được LCD
giữ ở bus đến khi nào chân E xuống mức thấp.
Tám đường của bus dữ liệu dùng để trao đổi thông tin với MPU.
Có2 chế độ sử dụng 8 đường bus này :
+ Chế độ 8 bit : Dữ liệu được truyền trên cả 8 đường, với bit MSB
7-14 DB0 - là bit DB7.
DB7 + Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7
bit MSB là DB7.
40
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Java là một ngôn ngữ lập trình hướng đối tượng (OOP) và dựa trên các lớp
(class). Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã
nguồn thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để
biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi
(runtime environment) chạy.
• Lập trình Socket
Trong lập trình, Socket là một API (Application Programming Interface) cung
cấp các phương thức để giao tiếp thông qua mạng.
Lập trình socket là cách lập trình cho phép chúng ta kết nối các máy tính truyền
tải và nhận dữ liệu từ máy tính thông qua mạng, thông thường là mô hình client-
server sử dụng lập trình Socket sử dụng giao thức TCP/IP để truyền nhận dữ liệu
với nhau.
41
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Hình 4.9 Mô hình truyền nhận client server lập trình socket [12]
Các bước lập trình Socket:
b1: Mở một ServerSocket tại 1 số hiệu cổng
Các client biết tên máy của máy tính mà trên đó chương trình chủ (server)
đang chạy và số cổng mà chương trình chủ lắng nghe. Để thực hiện một yêu
cầu kết nối, client cố gắng tạo ra cuộc gặp với máy chủ trên máy tính của
chương trình chủ và cổng. Các client cũng cần phải tự định danh chính nó với
server để gắn với một cổng địa phương cái sẽ được sử dụng trong suốt quá
trình kết nối này, thông thường nó được gán bởi hệ điều hành.
Hình 4.10 Hình ảnh minh họa client yêu cầu kết nối tới Server [13]
b2: Chấp nhận một yêu cầu kết nối từ phía client
Nếu không có vẫn đề gì xảy ra, server chấp nhận kết nối của client. Khi
chấp nhận, máy chủ có được một socket mới bị ràng buộc vào cùng "số hiệu
cổng". Server tạo ra một socket mới để giao tiếp với client vừa được chấp
nhận kết nối.
42
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Hình 4.11 Hình ảnh minh họa server chấp nhận mở 1socket với client [13]
b3: Mở luồng vào ra trên Socket tại Server
Dữ liệu ghi vào luồng đầu ra trên Socket của client sẽ nhận được trên luồng
đầu vào của Socket tại server. Và ngược lại dữ liệu ghi vào luồng đầu ra
trên Socket của server sẽ nhận được trên luồng đầu vào của Socket tại client.
Hình 4.12 Hình ảnh minh họa luồng vào ra dữ liệu giữa client và server [13]
43
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Trong chương này chúng ta đã tìm hiểu chi tiết từng linh kiện của mạch như
cảm biến siêu âm SRF05, cảm biến lưu lượng S201, arduino uno, module
sim900a ... Lập trình Socket, cách thức hoạt động của mô hình Client-Server
44
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Giả sử khoảng cách từ cảm biến SRF05 đến đáy dòng nước cần đo là 100cm, miếng
nhựa là mặt nước ta có kết quả đo là 74cm (100 – 26, 26 là khoảng cách từ cảm biến
đến miếng nhựa) cho mực nước, lưu lượng = 0
45
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Hình 5.2 Kết quả kiểm thử hoạt động của mạch
Sau khi di chuyển miếng nhựa lại gần cảm biến tương tự như mực nước dâng lên, ta
có mực nước đo được H = 92cm,
46
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Hình 5.3 Kết quả sau khi di chuyển miếng nhựa lại gần
Sau khi thổi hơi vào cảm biến lưu lượng S201 và di miếng nhựa ra ( mực nước rút ),
ta thu được kết quả là H = 70cm, lưu lượng L = 2380l/h
47
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Hình 5.4 Kết quả khi thổi hơi và di chuyển miếng nhựa ra xa
Server mở 1 cổng 9999 chờ client (ở đây là mạch phần cứng) sau khi bật mạch chạy
ta thấy có thông báo là “ đã kết nối với client 27.66.147.268:28679”,
48
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Sau khi nhận được dữ liệu từ client, Server gửi dữ liệu thu được vào database
49
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Hình 5.8 Kết quả mực nước đo được hiển thị lên web
50
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
Hình 5.9 Kết quả lưu lượng nước đo được hiển thị lên web
Phần cứng hoạt động tương đối ổn định, do Pin mặt trời có công suất nhỏ không
đáp ứng được dòng cho Model sim900 chạy nên em vẫn sử dụng apdapter, kết quả
đo vẫn còn sai số tuy nhiên không đáng kể, mới chỉ test được ở môi trường khô,
chưa kiểm thử vào nước. Việc duy trì hoạt động ổn định cho mạch cũng là một
trong những khó khăn. Phần mềm hiển thị đúng với kết quả thu được từ phần cứng,
giao diện chỉ hiển thị kết quả, chức năng của web còn rất đơn giản.
Do thời gian tìm hiểu và xây dựng hệ thống cũng như kiến thức còn hạn chế,
thêm vào đó đề tài là lĩnh vực nghiên cứu lớn nên hệ thống hoạt động mới chỉ dùng
ở mức nghiên cứu, chưa thể đưa ra áp dụng thực tế, chưa đầy đủ chức năng để tới
tay người dùng.
Cần có thêm thời gian nghiên cứu để hoàn thiện chương trình hơn, có thể phát
triển đo thêm thông số như áp suất khí, gió với độ chính xác cao hơn, bổ sung thêm
chức năng cho web như vẽ biểu đồ thông số, chức năng cảnh báo tới người sử dụng
khi đạt ngưỡng lũ ... Bên cạnh đó có thể ứng dụng đề tài vào thực tiễn.
Quá trình nghiên cứu, giúp em có cái nhìn đầy đủ hơn về tình hình lũ lụt tại nước
ta, hiểu hơn về các hoạt động đo lường lũ, các mức cảnh báo lũ lụt, bên cạnh đó em
51
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
đã hoàn thành được việc đo mực nước và lưu lượng nước cũng như hiển thị lên
web, mặc dù kết quả vẫn chưa đáp ứng được yêu cầu của đề tài, nhưng dẫu sao nó
cũng giúp ích cho em củng cố kiến thức chuyên ngành của mình, giúp em rèn luyện
nhiều kỹ năng nghiên cứu.
52
Nghiên cứu thiết kế hệ thống cảnh báo lũ sớm
[1] Bùi Anh Tú, Luận án Thạc sỹ “Giải pháp quản lý tổng hợp lũ trong điều kiện
biến đổi khí hậu nhằm giảm thiểu thiệt hại trên lưu vực sông Hương”, ngày 11 tháng
5 năm 2015.
[2] Quyết định số 632/QĐ-TTg ngày 10 tháng 5 năm 2010 của Thủ tướng Chính
phủ.
[3]https://websrv1.ctu.edu.vn/coursewares/congnghe2/ttcnmoitruong/lythuyet/ch1.h
tm, truy cập lần cuối ngày 12/3
[4]https://websrv1.ctu.edu.vn/coursewares/congnghe2/ttcnmoitruong/lythuyet/ch2.h
tm, truy cập lần cuối ngày 12/3
[5] https://voer.edu.vn/c/mo-hinh-client-server/761b0302/eedbe7c9, truy cập lần
cuối ngày 15/3/2018.
[6] http://it.die.vn/x/xampp/, truy cập lần cuối ngày 15/3/2018.
[7] http://vietmoz.net/kien-thuc-seo/thuat-ngu-seo/Thuat-ngu-Client-280/ truy cập
lần cuối ngày 16/3/2018.
[8] http://banlinhkien.vn.
[9] https://www.youtube.com/watch?v=wpAA3qeOYiI
[10] arduino.vn
[11] https://circuitdigest.com/article/16x2-lcd-display-module-pinout-datasheet truy
cập lần cuối ngày 01/06/2018
[12]http://www.hoclaptrinhweb.com/c/c-lap-trinh-socket-giao-tiep-tcpa0client-
server-hltw1267.aspx truy cập lần cuối ngày 01/06/2018
[13] https://o7planning.org/vi/10393/huong-dan-lap-trinh-java-socket truy cập lần
cuối ngày 01/06/2018
53