5
ỨNG DỤNG VISUAL STUDIO VÀ NGÔN NGỮ LẬP TRÌNH C# VÀO LẬP TRÌNH ĐIỀU KHIỂN CHO NHÀ THÔNG MINH. SV: Nguyễn Đức Tường. Khoa Điện, trường Đại Học Bách Khoa, Đại Học Đà Nẵng. Tóm tắt: Visual Studio là một môi trường phát triển tích hợp từ hãng Microsoft. Nó được ứng dụng để phát triển các chương trình cho Hệ điều hành Windows, cũng như các trang web, các ứng dụng web và dịch vụ web. Visual Studio sử dụng các nền tảng phát triển phần mềm của Microsoft như là Windows API, Windows Forms, Windows Presentation Foundation, Windows Store and Microsoft Silverlight. Visual Studio hỗ trợ nhiều ngôn ngữ lập trình khác nhau như là C, C++, C#, VB.NET, F#... [2] Trong bản báo cáo này, ngôn ngữ C# sẽ được sử dụng để viết ứng dụng nhằm truy cập các đường link trên websites để giao tiếp I2C với các thiết bị trong nhà thông minh, cũng như là nhận phản hồi từ đường link đó nhằm báo cáo việc giao tiếp có thành công hay không. 1.Yêu cầu: Viết một chương trình theo dạng Windows Form để điều khiển các thiết bị trong nhà thông minh qua mạng Internet, có các nút kết nối để bắt đầu giao tiếp I2C và nút bật tắt các thiết bị. Sau khi thực hiện xong nhiệm vụ thì chương trình sẽ báo “Success” và “OK” nếu thành công, báo “Fail” nếu thất bại. Việc giao tiếp được thực hiện thông qua các đường link, nói cách khác, khi ấn nút thì chương trình sẽ truy cập vào một đường link, sau đó nhận phản hồi từ nó và báo cho người dùng biết.

Report

Embed Size (px)

DESCRIPTION

Ứng dụng Visual Studio vào lập trình điều khiển nhà thông minh qua mạng internet

Citation preview

Page 1: Report

ỨNG DỤNG VISUAL STUDIO VÀ NGÔN NGỮ LẬP TRÌNH C# VÀO LẬP TRÌNH ĐIỀU KHIỂN CHO NHÀ THÔNG MINH.

SV: Nguyễn Đức Tường.

Khoa Điện, trường Đại Học Bách Khoa, Đại Học Đà Nẵng.

Tóm tắt:

Visual Studio là một môi trường phát triển tích hợp từ hãng Microsoft. Nó được ứng dụng để phát triển các chương trình cho Hệ điều hành Windows, cũng như các trang web, các ứng dụng web và dịch vụ web. Visual Studio sử dụng các nền tảng phát triển phần mềm của Microsoft như là Windows API, Windows Forms, Windows Presentation Foundation, Windows Store and Microsoft Silverlight. Visual Studio hỗ trợ nhiều ngôn ngữ lập trình khác nhau như là C, C++, C#, VB.NET, F#... [2]

Trong bản báo cáo này, ngôn ngữ C# sẽ được sử dụng để viết ứng dụng nhằm truy cập các đường link trên websites để giao tiếp I2C với các thiết bị trong nhà thông minh, cũng như là nhận phản hồi từ đường link đó nhằm báo cáo việc giao tiếp có thành công hay không.

1.Yêu cầu:

Viết một chương trình theo dạng Windows Form để điều khiển các thiết bị trong nhà thông minh qua mạng Internet, có các nút kết nối để bắt đầu giao tiếp I2C và nút bật tắt các thiết bị. Sau khi thực hiện xong nhiệm vụ thì chương trình sẽ báo “Success” và “OK” nếu thành công, báo “Fail” nếu thất bại.

Việc giao tiếp được thực hiện thông qua các đường link, nói cách khác, khi ấn nút thì chương trình sẽ truy cập vào một đường link, sau đó nhận phản hồi từ nó và báo cho người dùng biết.

Hình 1: Giao diện chương trình

Page 2: Report

2.Thực hiện chương trình:

Để viết chương trình theo yêu cầu đã nêu, ngôn ngữ C# sẽ được sử dụng. Trước tiên, ta tạo một dự án Visual C#, Windows Form Application. Tiếp theo, ta thiết kế một giao diện Windows Forms có 1 nút Connect để kết nối giao tiếp I2C, một nút ấn ON cho thiết bị 1, một nút ấn OFF cho thiết bị 1, một nút ấn ON cho thiết bị 2, một nút ấn OFF cho thiết bị 2 và hai TextBox để báo hiệu đã giao tiếp thành công (hoặc thất bại). Giao diện chương trình như Hình 1.

Tiếp theo là phần viết chương trình cho ứng dụng. Trước hết ta phải dùng từ khóa “Using” để add các lớp được xây dựng sẵn trong visual studio cần thiết cho ứng dụng. các lớp đó là: System, System.Collection.Generic, System.ComponentModel, System.Data, System.Drawing, System.Linq, System.Text, System.Threading.Tasks, System.Windows.Forms, System.Net, System.Threading.

Sau khi đã add hết các lớp như trên vào chương trình, ta viết chương trình cho các Button, chính là các nút điều khiển. Các code cần thiết phải viết như sau:

- Tạo ra một instance mới để giao tiếp với web:o System.Net.WebClient client = new System.Net.WebClient();

/*Tạo ra một instance mới là “client” trong lớp System.Net.WebClient*/- Truy cập đường link và nhận phản hồi từ website:

o String s = client.DownloadString(“….”);/*gọi Method “DownloadString” cho instance “client” và tạo ra biến xâu “s” để nhận chuỗi trả về. */

- Kiểm tra chuỗi trả về:o bool b = s.Contains(“OK”)

/*kiểm tra xem xâu “s” có chứa ký tự “OK” hay không, nếu có thì biến b sẽ nhận giá trị logic là 1, nếu ko thì b nhận giá trị logic 0*/

- Hiển thị một chuỗi ra textbox:o textbox1.Text = “OK”

/*xuất chuỗi “OK” ra textbox1*/

3.Kết quả và tổng kết:

3.1 Kết quả:

Sau khi tạo Windows Forms và lập trình, biên dịch, ta đã tạo ra được chương trình như yêu cầu dưới dạng file .exe, có thể đem chạy trên máy tính khác không cài visual studio.

Chương trình đã giao tiếp được với thiết bị thông qua internet như yêu cầu ban đầu và trả về kết quả thành công hoặc thất bại.

Trình tự thực hiện như sau: đầu tiên, ấn nút Connect, nếu có kết quả thì ấn OK để xóa chuỗi hiển thị trong các textbox

ấn “ON” để bật thiết bị, ấn OK để xóa xâu hiển thị trong các textbox

Page 3: Report

ấn OFF để tắt thiết bị rồi ấn OK.

3.2 Tổng kết:

Trong quá trình thực hiện chương trình, người lập trình đã gặp một số khó khăn khi phải lập trình bằng phương pháp lập trình hướng đối tượng vốn rất khác so với lập trình theo kiểu cấu trúc quen thuộc như lập trình C. Việc tìm hiểu về các khái niệm của lập trình hướng đối tượng như class, object, method… rất khó khăn và tốn thời gian. Hơn nữa, do không có kinh nghiệm với lập trình hướng đối tượng nên việc viết chương trình gặp rất nhiều sai sót, phải chạy thử và debug nhiều lần.

Tuy nhiên, thông qua đề tài, sinh viên thực hiện đã nắm được phương pháp lập trình hướng đối tượng và quen thuộc hơn với việc xây dựng ứng dụng trên hệ điều hành Windows bằng Visual Studio. Điều này sẽ giúp ích rất lớn cho các đồ án, đề tài nghiên cứu cũng như công việc sau này của sinh viên.

Page 4: Report

TÀI LIỆU THAM KHẢO

[1] Microsoft, http://msdn.microsoft.com.

[2] Wikipedia, http://en.wikipedia.org.