3.1 Chỉ tiêu kỹ thuật 3.1.1 Yêu cầu chức năng
Sản phẩm của đồ án này thực hiện chức năng đo mực nước và lưu lượng nước một cách hoàn toàn tự động, đồng thời cũng có thể gửi giá trị đo về máy chủ. Mục đích cuối cùng của sản phẩm là có thể sử dụng để đo chính xác mực nước và lưu lượng nước trong mọi điều kiện thời tiết.
3.1.2 Yêu cầu phi chức năng
Các yêu cầu phi chức năng được đề xuất là :
Hệ thống có tín tương tác cao, thân thiện và dễ sử dụng.
Có giá thành rẻ, kích thước gọn nhẹ, dễ lắp đặt và vận chuyển.
Gửi dữ liệu thông qua GPRS.
3.2 Các sơ đồ của thiết kế
3.2.1 Sơ đồ tổng quan của hệ thống
Hình 3.1 Sơ đồ tổng quan hệ thống
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
Hình 3.2 Sơ đồ khối hệ thống
• Khối nguồn
Khối nguồn có chức năng cung cấp nguồn điện cho hệ thống, tùy thuộc vào linh kiện mà ta cần sử dụng các nguồn điện khác nhau.
• Khối điều khiển
Khối này điều khiển gần như toàn bộ hoạt động của hệ thống từ việc xử lí dữ liệu đo được đến việc truyền các bản tin thu thập được lên web
• Khối truyền thông
Khối này có chức năng truyền dữ liệu đo đạc về máy chủ. Để làm được việc này, ta sử dụng module sim điện thoại kết hợp với vi điều khiển để thống nhất việc gửi bản tin với máy chủ.
• Khối cảm biến
Khối này là khối quan trọng nhất vì nó liên quan đến số liệu và cảnh báo toàn bộ hệ thống. Có nhiệm vụ đo đạc giá trị mực nước và lưu lượng nước.
• Khối hiển thị
Hiển thị ra giá trị đo đạc được, so sánh với giá trị hiển thị trên web từ đó đánh giá hoạt động của hệ thống
3.3 Tổng quan về phần mềm
Hệ thống thực hiện việc đo đạc và giám sát qua web thực hiện bằng cách đo các thông số mực nước và lưu lượng nước qua các cảm biến, các dữ liệu này sau đó được truyền về server và hiển thị lên web. Mô hình client – server được áp dụng trong hệ thống. Kết hợp với chương trình tạo máy chủ web xampp để quản lý web và cơ sở dữ liệu., web và cơ sở dữ liệu chứa trong xampp.
Hình 3.3 Sơ đồ khối phần mềm 3.3.1 Mô hình client – server
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.
Để 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
Hình 3.4 Mô hình client – server [7]
Với mô hình này, mạch phần cứng chính là client, máy tính được sử dụng làm server.
3.3.2 Giao thức TCP/IP
TCP/IP là viết tắt của cụm từ Transmission Control Protocol/Internet Protocol.
TCP/IP là một tập hợp các giao thức (protocol) điều khiển truyền thông giữa tất cả các máy tính trên Internet. Cụ thể hơn, TCP/IP chỉ rõ cách thức đóng gói thông tin (hay còn gọi là gói tin ), được gửi và nhận bởi các máy tính có kết nối với nhau.
Như tên của nó, TCP/IP là sự kết hợp của hai giao thức riêng biệt: Giao thức kiểm soát truyền tin (TCP) và giao thức Internet (IP). Giao thức Internet cho phép các gói được gửi qua mạng; Nó cho biết các gói tin được gửi đi đâu và làm thế nào để đến đó. IP có một phương thức cho phép bất kỳ máy tính nào trên Internet chuyển tiếp gói tin tới một máy tính khác thông qua một hoặc nhiều khoảng (chuyển tiếp) gần với người nhận gói tin. Giao thức điều khiển truyền dẫn có trách
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.
3.3.3 Phần mềm Xampp
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]
Hình 3.5 Giao diện Xampp
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.
3.3.4 Phần mềm Deamweaer 6
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 đó.
Hình 3.6 Phần mềm Dreamweaer
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.
3.3.5 Lập trình web
a. Giới thiệu về web động
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.
Một file HTML phải có phần mở rộng là .html hoặc .htm
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
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ủ.
3.4 Kết luận chương
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