1. Trang chủ
  2. » Luận Văn - Báo Cáo

Điều khiển thiết bị nhà thông minh thông qua wifi và visual basic

72 23 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 72
Dung lượng 4,49 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Một trong những ứng dụng tiêu biểu đó là điều khiển các thiết bị trong toà nhà thông minh với những đặc tính nổi bật như:  Có tính thực dụng cao mang lại hiệu quả kinh tế..  Xây dựng

Trang 1

ĐẠI HỌC CÔNG NGHIỆP TP.HCM

KHOA CÔNG NGHỆ ĐIỆN

KHÓA LUẬN TỐT NGHIỆP

ĐIỀU KHIỂN THIẾT BỊ NHÀ THÔNG MINH THÔNG QUA WIFI VÀ VISUAL BASIC

SINH VIÊN : LÝ AN NGHIỆP 15025761

NGUYỄN HỮU DANH 15030931

LỚP : DHDKTD11A

GVHD : ThS HÀ CHÍ KIÊN

TP Hồ Chí Minh, NĂM 2019

Trang 2

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

Trang 3

Xin trân trọng cảm ơn thầy giáo ThS Hà Chí Kiên đã tận tình chỉ bảo và giúp đỡ chúng em trong suốt thời gian vừa qua Xin bày tỏ lòng biết ơn sâu sắc tới các thầy cô trong khoa Công Nghệ Điện Trường Đại học Công Nghiệp TPHCM đã luôn nhiệt tình dạy dỗ và tạo điều kiện cho chúng em học tập và nghiên cứu trong suốt những năm học tập tại trường

Mặc dù đã cố gắng hoàn thiện đề tài với tất cả sự nỗ lực của cả nhóm, nhưng đề tài cũng không tránh khỏi được những sai sót Kính mong nhận được sự góp ý tận tình của thầy cô để nhóm có thể rút kinh nghiệm hoàn thiện sản phẩm của mình hơn

Cuối cùng nhóm thực hiện đề tài xin chúc quý thầy cô lời chúc sức khỏe và lời cảm

ơn chân thành nhất!

Trang 4

MỤC LỤC

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN i

MỤC LỤC iii

DANH SÁCH CÁC HÌNH VẼ vi

CHƯƠNG 1: MỤC TIÊU KHOÁ LUẬN 1

1.1 Đặt vấn đề 1

1.2 Mục tiêu khoá luận 1

CHƯƠNG 2: TỔNG QUAN VỀ HỆ THỐNG NHÀ THÔNG MINH 2

2.1 Khái niệm về nhà thông minh 2

2.2 Tính năng chính, ưu – nhược điểm của nhà thông minh 2

2.2.1 Tính năng chính của nhà thông minh 2

2.2.2 Ưu – nhược điểm của nhà thông minh 3

2.3 Giới thiệu các thành phần trong nhà thông minh 4

CHƯƠNG 3: MẠNG KHÔNG DÂY WIFI (WIRELESS FIDELITY) VÀ CHUẨN TRUYỀN THÔNG UART 6

3.1 Khái niệm mạng WiFi 6

3.2 Nguyên lý hoạt động của WiFi 6

3.3 Các Phương Pháp Bảo Mật WiFi 7

3.4 Chuẩn Truyền Thông Uart 7

3.4.1 Khái niệm về UART 7

3.4.2 Truyền thông nối tiếp và truyền thông song song 8

3.4.3 Sơ đồ khối UART 8

3.4.4 Truyền thông UART 9

3.4.5 Giao diện UART 10

Trang 5

3.4.7 Ưu và nhược điểm của UART 11

CHƯƠNG 4: CÁC PHẦN MỀM SỬ DỤNG TRONG ĐỀ TÀI 12

4.1 Arduino IDE 12

4.1.1 Những phần cơ bản của giao diện phần mềm Arduino IDE 12

4.1.2 Các chức năng cơ bản của các biểu tượng trên phần mềm 12

4.2 Visual Studio 2015 15

4.2.1 Visual Basic 15

4.2.2 Tạo một project Windows Forms Application 15

CHƯƠNG 5: CÁC THIẾT BỊ SỬ DỤNG TRONG ĐỀ TÀI 21

5.1 Sơ đồ khối tổng quát 21

5.2 Khối xử lý 21

5.2.1 NodeMCU ESP8266 V12E 21

5.2.2 ADRUINO UNO R3 25

5.3 Khối mạch công suất 25

5.3.1 Relay 25

5.3.2 Quạt tản nhiệt 26

5.3.3 LED dây 27

5.3.4 Bơm 27

5.3.5 Động cơ Servo 28

5.3.6 LCD 16x2 28

5.3.7 Mạch chuyển đổi I2C cho LCD 29

5.4 Khối cảm biến 30

5.4.1 Cảm biến nhiệt độ, độ ẩm DHT11 30

Trang 6

NODEMCU ESP8266 31

6.1 Thiết lập phần mềm Arduino IDE 31

6.2 Chương trình điều khiển trên NodeMCU ESP8266 32

6.2.1 Lưu đồ giải thuật NodeMCU ESP8266 32

6.2.2 Giao diện điều khiển trên NodeMCU ESP8266 34

6.2.3 Chương trình trên NodeMCU ESP8266 35

6.3 Chương trình điều khiển Arduino Uno R3 47

6.4 Chương trình điều khiển trên Arduino Uno R3 và Visual Basic 51

6.4.1 Lưu đồ giải thuật Visual Basic 51

6.4.2 Giao diện điều khiển trên Visual Basic 53

6.4.3 Chương trình trên Visual Basic 53

CHƯƠNG 7: TỔNG KẾT VÀ ĐÁNH GIÁ 61

7.1 Kết quả 61

7.2 Hạn chế 62

7.3 Hướng phát triển đề tài 62

KẾT LUẬN 63

TÀI LIỆU THAM KHẢO 64

Trang 7

DANH SÁCH CÁC HÌNH VẼ

Hình 2.1 Một hệ thống điều khiển Nhà Thông Minh (Smart Home) 2

Hình 2.2 Ứng dụng Google Asisstant có thể giao tiếp với người sử dụng bằng trợ lý ảo AI (Alex) thông qua Internet 3

Hình 2.3 Bộ điều khiển trung tâm có tên là Broadlink RM Pro 4

Hình 2.4 Công tắc, ổ cắm thông minh 5

Hình 3.1 Mạng không dây WiFi kết nối 2 máy tính với nhau 6

Hình 3.2 Sơ đồ nguyên lý hoạt động mang WiFi 7

Hình 3.3 Sơ đồ giao tiếp giữa 2 thiết bị thông qua giao tiếp UART 8

Hình 3.4 Giao tiếp song song 8

Hình 3.5 Sơ đồ khối UART 9

Hình 3.6 Truyền thông UART 10

Hình 3.7 Giao diện UART 11

Hình 4.1 Giao diện phần mềm Arduino IDE 12

Hình 4.2 Minh họa chọn led chớp tắt (blink) nạp cho mạch Arduino 13

Hình 4.3 Minh họa chọn menu Tools nạp cho mạch Arduino 14

Hình 4.4 Minh họa chọn cổng COM nạp cho mạch Arduino 14

Hình 4.5 Giao diện phần mềm Visual Studio 2015 15

Hình 4.6 Giao diện tạo 1 file Project 16

Hình 4.7 Giao diện New Project 16

Hình 4.8 Giao diện chọn ngôn ngữ lập trình và tạo Project 17

Hình 4.9 Giao diện thiết kế trên Visual Studio 2015 17

Hình 4.10 Thanh công cụ 17

Hình 4.11 Giao diện ToolsBox 18

Hình 4.12 Giao diện thiết kế chính 18

Hình 4.13 Giao diện Proproties 19

Hình 4.14 Giao diện View Code 19

Hình 4.15 Giao diện lập trình 20

Hình 5.1 Sơ đồ khối 21

Trang 8

Hình 5.3 Module ESP-12E 22

Hình 5.4 Sơ đồ yêu cầu năng lượng 22

Hình 5.5 Các chân tín hiệu I/O 23

Hình 5.6 Công tắc và đèn trên board 24

Hình 5.7 Bộ chuyển đổi USB-to-UART CP2102 24

Hình 5.8 ADRUINO UNO R3 25

Hình 5.9 Relay 8 kênh 26

Hình 5.10 Quạt tản nhiệt 27

Hình 5.11 Bơm 27

Hình 5.12 Động cơ servo 28

Hình 5.13 Màn hình LCD 16x2 29

Hình 5.14 Mạch chuyển đổi I2C 29

Hình 5.15 Cảm biến DHT11 30

Hình 6.1 Cửa sổ Preferences 31

Hình 6.2 Board Manager đã cài đặt ESP8266 32

Hình 6.3 Board Manager cài đặt ESP8266 32

Hình 6.4 Giao diện điều khiển trên NodeMCU ESP8266 34

Hình 6.5 Giao diện điều khiển trên Visual Basic 53

Hình 7.1 Mặt trước mô hình (LCD hiển thị địa chỉ IP) 61

Hình 7.2 Mô hình nhìn từ trên xuống 61

Hình 7.3 Hộp chứa vi điều điều khiển và nguồn 62

Trang 9

CHƯƠNG 1: MỤC TIÊU KHOÁ LUẬN

1.1 Đặt vấn đề

Tự động hoá – trong những năm gần đây cụm từ này đã trở nên quen thuộc chứ không còn là khái niệm chỉ được sử dụng trong những lĩnh vực chuyên môn kỹ thuật đặc thù Tự động hoá đã góp mặt trong mọi lĩnh vực từ sản xuất cho đến phục vụ cuộc sống hằng ngày Trên thế giới, các hệ thống thông minh, tự động điều khiển đã đáp ứng từ rất sớm và đến nay đã cho thấy những đóng góp quan trọng không thể phủ nhận Một trong những ứng dụng tiêu biểu đó là điều khiển các thiết bị trong toà nhà thông minh với những đặc tính nổi bật như:

 Có tính thực dụng cao mang lại hiệu quả kinh tế

 Có tính hiện đại, hướng tới tương lai

 Đảm bảo các yêu cầu an toàn

 Nâng cao sự thuận tiện cho người sử dụng toà nhà

 Chính vì vậy nhóm chúng em đã chọn đề tài nghiên cứu là “Điều khiển các

thiết bị điện trong toà nhà thông minh thông qua WiFi và Visual Basic”

1.2 Mục tiêu khoá luận

Nội dung đồ án nhóm thực hiện là tạo ra một mô hình căn phòng trong ngôi nhà thông minh Để có phương hướng rõ rang khi thực hiện đề tài, nhóm đã đặt ra những mục tiêu cần giải quyết sau:

 Tìm hiểu mô hình căn nhà thông minh

 Xây dựng mô hình mô phỏng căn phòng trong nhà thông minh

 Xây dựng một chuẩn truyền thông

 Giao tiếp và điều khiển các thiết bị được sử dụng trong hệ thống

 Lập trình điều khiển hệ thống

Trang 10

CHƯƠNG 2: TỔNG QUAN VỀ HỆ THỐNG NHÀ

THÔNG MINH

2.1 Khái niệm về nhà thông minh

Nhà thông minh (Home Automation, domotics, smart home hoặc Intellihome)

là kiểu nhà được lắp đặt các thiết bị điện, điện tử có thể được điều khiển tự động hoá hoặc bán tự động, thay thế con người thực hiện trong một hoặc một số thao tác quản

lý, điều khiển Hệ thống điện tử này giao tiếp với người dùng thông qua bảng điện tử đặt trong nhà, ứng dụng trên máy tính, điện thoại bảng hoặc một giao diện web

Trong nhà thông minh, các thiết bị điện trong nhà từ phòng ngủ, phòng khách đến toilet đều được gắn các bộ điều khiển điện tử có thể kết nối với Internet hoặc điện thoại di động Cho phép người dùng điều khiển các thiết bị từ xa hoặc lập trình cho các thiết bị ở nhà hoạt động theo lịch trình

2.2 Tính năng chính, ưu – nhược điểm của nhà thông minh

2.2.1 Tính năng chính của nhà thông minh

Hệ thống nhà thông minh cho phép:

 Cho phép các tiện ích (thiết bị thông minh) trong toà nhà hoạt động một cách đồng bộ, chính xác theo đúng yêu cầu của người điều hành

 Cho phép điều khiển các ứng dụng trong toà nhà thông qua Internet

 Giám sát được môi trường không khí, môi trường làm việc của con người

Hình 2.1 Một hệ thống điều khiển Nhà Thông Minh (Smart Home)

Trang 11

 Cảnh báo sự cố, đưa ra những tín hiệu cảnh báo kịp thời trước khi có những sự

cố

 Hệ thống nhà thông minh linh hoạt, có khả năng mở rộng với các giải pháp sẵn sàng đáp ứng mọi yêu cầu

2.2.2 Ưu – nhược điểm của nhà thông minh

Hiện nay, các kỹ sư vẫn đang tiếp tục sáng tạo để tạo ra nhiều tiện ích hơn nữa, cũng như tối ưu hoá về việc triển khai lắp đặt một ngôi nhà thông minh Cùng với sự phát triển của các thiết bị điện tử cá nhân như máy tính bảng, điện thoại thông minh cùng cơ sở hạ tầng thông tin ngày càng tiên tiến như internet hoặc các mạng thông tin

di động như 3G, 4G, 5G các hệ thống nhà thông minh còn cung cấp khả năng tương tác với người sử dụng thông qua các thiết bị điện tử cá nhân cho phép con người có thể giám sát, giao tiếp điều khiển ngôi nhà từ bất cứ đâu Hiện tại, Google đã phát triển một mảng về hệ thống nhà thông minh với ứng dụng Google Assistant Nó có khả năng cho phép người sử dụng có thể giao tiếp với trợ lý AI ảo (Alex) để điều khiển các thiết bị điện trong ngôi nhà thông qua Internet

Hình 2.2 Ứng dụng Google Asisstant có thể giao tiếp với người sử dụng bằng trợ lý ảo AI (Alex)

thông qua Internet

Tuy nhiên, vì thực tế rất nhiều thương hiệu khác nhau cùng nghiên cứu phát triển giải pháp nhà thông minh, vây nên dù đã có nhiều nỗ lực để tiêu chuẩn hoá các dạng phần cứng, phần mềm, điện tử và giao diện giao tiếp cần thiết để xây dựng hệ thống nhà thông minh, tuy vậy chưa có chuẩn công nghiệp nào được đặt ra cho nó và

do thị trường nhà thông minh rất phân mảnh Các gói nhà thông minh hiện nay sử

Trang 12

Giá thành còn quá vì nhiều hệ thống Smart Home từ Âu – Mỹ nếu lắp trọn bộ cho một căn biệt thự có khi đến 1 tỷ đồng Vì thế giá cả là thứ cản trở Smart Home chưa được phổ cập

2.3 Giới thiệu các thành phần trong nhà thông minh

Có 4 thành phần thiết yếu của nhà thông mình:

Bộ điều khiển trung tâm: Đây là thiết bị đầu não của ngôi nhà thông minh,

là nơi kết nối các thiết bị điện khác trong nhà vào cùng một hệ thống hoàn chỉnh cho phép người dùng điều khiển, quản lý ngôi nhà qua smartphone, máy tính tại bất cứ nơi đâu có Internet Thiết bị này cũng cho phép bạn phối ghép hoạt động của nhiều thiết bị khác nhau tạo thành các ngữ cảnh thông

minh

Các ổ cắm, công tắc điều khiển từ xa: Đây là thiết bị không thể thiếu đối

với giải pháp nhà thông minh không yêu cầu đi lại đường dây điện trong gia đình Chỉ cần thay thế các ổ cắm, công tắc thông minh thay cho loại truyền thống thì người dùng dễ dàng biến các thiết bị điện gia dụng trong nhà thành thiết bị thông minh Các ổ cắm, công tắc này được điều khiển từ xa bằng

remote hoặc bằng smartphone

Trang 13

Các loại cảm biến: Thiết bị này có khả năng tự điều khiển hoạt động phát

hiện dấu hiệu có nghĩa Các loại thường được sử dụng trong nhà thông minh như cảm biến nhiệt độ, độ ẩm, cảm biến ánh sáng, cảm biến mưa, cảm biến

khói,… Ứng dụng vào hệ thống đèn, báo cháy, an ninh,…

Hình 2.4 Công tắc, ổ cắm thông minh

Trang 14

CHƯƠNG 3: MẠNG KHÔNG DÂY WIFI (WIRELESS FIDELITY) VÀ CHUẨN TRUYỀN THÔNG UART

3.1 Khái niệm mạng WiFi.

WiFi (Wireless Fidelity) là phương thức kết nối không dây sử dụng sóng vô tuyến WiFi được triển khai trên hầu hết các thiết bị điện tử thông minh hiện nay để có thể kết nối với nhau và kết nối Internet WiFi được triển khai với mục đích truyền dữ liệu không dây với tốc độ cao, không cần đầu nối dây hay cáp mạng, triển khai hạ tầng một cách nhanh chóng

Kết nối WiFi được sử dụng trong việc kết nối Internet và chia sẻ kết nối đến các

thiết bị không dây nhanh nhất WiFi hiện tại đang sử dụng chuẩn kết nối IEEE 802.11

được đặt hầu hết trên các thiết bị điện tử thông minh với ngày càng nhiều các ứng dụng được phát triển dựa trên chuẩn kết nối này

3.2 Nguyên lý hoạt động của WiFi

Mạng Internet sẽ được các ISP (nhà cung cấp dịch vụ Internet – Internet Services Provider) truyền đến bộ giải mã tín hiệu số (Modem) thông qua bộ định tuyến (Router) hay chúng ta thường gọi là “bộ phát WiFi” chuyển tín hiệu hữu tuyến thành kết nối vô tuyến và đưa đến các thiết bị di động không dây thông qua chuẩn kết nối WiFi

Các thiết bị không dây tiếp nhận sóng WiFi thông qua một thiết bị chuyển đổi tín hiệu gọi là Adapter (card WiFi) được cài đặt trực tiếp trên các thiết bị Tín hiệu vô

Hình 3.1 Mạng không dây WiFi kết nối 2 máy tính với nhau

Trang 15

tuyến sẽ được giải mã ngay trên thiết bị, từ đây người dùng có thể trực tiếp truy cập Internet bình thường

3.3 Các phương pháp bảo mật Wifi

Ngoài tính năng bảo mật phổ biến là AES (Advanced Encrypiton Standard) là

chuẩn mã hoá tín hiệu nâng cao được quy chuẩn, WiFi còn được bảo mật bởi các mật

khẩu WPA hoặc WPA2 có nhiệm vụ bảo đảm an ninh truy cập cho các hệ thống WiFi WPA2 được phát triển để thay thế cho hệ thống WEP bị lỗi thời và hay bị giải mã

Với các tính năng này, tuy không phải thực sự an toàm đối với mọi hình thức tấn công nhưng người dùng cũng đã có thể yên tâm sử dụng do việc giải mã các chuẩn bảo mật này vô cùng phức tạp

WiFi là một chuẩn kết nối phổ biến, việc hiễu rõ hơn về WiFi sẽ giúp chúng ta tiếp cận nhiều hơn đến những ứng dụng sử dụng chuẩn kết nối này Các bạn cũng có thể tự đổi mật khẩu WiFi ở nhà hay cơ quan với những nguyên tắc bảo mật phức tạp hơn để đảm bảo an toàn cho hệ thống mạng mình đang sử dụng, với mỗi một modem thì có cách đổi mật khẩu WiFi khác nhau và chúng ta cần nắm rõ cách sử dụng để tránh thiết lập sai đường truyền

3.4 Chuẩn truyền thông Uart

3.4.1 Khái niệm về UART

UART (Universal Asynchronous Receiver Transmitter) là một vi mạch sẵn có trong một vi điều khiển nhưng không giống như một giao thức truyền thồng (I2C và SPI) Chức năng chính của UART là truyền dữ liệu nối tiếp Trong UART, giao tiếp giữa hai thiết bị có thể được thực hiện theo hai cách giao tiếp đó là giao tiếp dữ liệu

Hình 3.2 Sơ đồ nguyên lý hoạt động mang WiFi

Trang 16

3.4.2 Truyền thông nối tiếp và truyền thông song song

Trong giao tiếp dữ liệu nối tiếp, dữ liệu có thể được truyền qua một capble hoặc một đường dây ở dạng bit – bit và nó chỉ cần hai capble Truyền thông dữ liệu nối tiếp không đắt khi chúng ta so sáng với giao tiếp song song Nó đòi hỏi rất ít mạch cũng như dây Vì vậy, giao tiếp hữu ích trong các mạch ghép so với giao tiếp song song,

Trong giao tiếp dữ liệu song song, dữ liệu có thể được truyền qua nhiều capble cùng một lúc Truyền dữ liệu song song tốn kém nhưng rất nhanh, vì nó đòi hỏi phần cứng và capble bổ sung như máy in cũ, PCI, RAM,…

3.4.3 Sơ đồ khối UART

Sơ đồ khối UART bao gồm hai thành phần là máy phát và máy thu được hiển thị bên dưới Phần máy phát bao gồm ba khối là thanh ghi giữ truyền, thanh ghi dịch chuyển và logic điều khiển Tương tụ ở phần máy thu bao gồm một thanh gh giữ, thanh ghi thay đổi và logic điều khiển Hai phần này thường được cung cấp bởi một bộ

Hình 3.3 Sơ đồ giao tiếp giữa 2 thiết bị thông qua giao tiếp UART

Hình 3.4 Giao tiếp song song

Trang 17

tạo tốc độ baud Trình tạo này được sử dụng để tạo tốc độ khi phần máy phát và phần máy thu phải truyền hoặc nhận dữ liệu

Thanh ghi giữ trong máy phát bao gồm byte dữ liệu được truyền Các thanh ghi thay đổi trong máy phát và máy thu di chuyển các bit sang phải hoặc trái cho đến khi một byte dữ liệu được truyền hoặc nhận Một logic điều khiển đọc hoặc ghi được sử dụng để biết khi nào nên đọc hoặc viết

Máy phát tốc độ baud giữa máy phát và máy thu tạo ra tốc độ dao động từ 110bps đến 230400bps Thông thường, tốc độ truyền của vi điều khiển là 9600 đến

115200

Hình 3.5 Sơ đồ khối UART

3.4.4 Truyền thông UART

Trong giao tiếp này, có hai loại UART có sẵn là truyền UART và nhận UART

và giao tiếp giữa hai loại này có thể được thực hiện trực tiếp với nhau Đối với điều này, chỉ cần hai cáp để giao tiếp giữa hai UART Luồng dữ liệu tử cả hao chân truyền (Tx) và nhận (Rx) của UART Trong UART, việc truyền dữ liệu từ Tx sang Rx có thể được thực hiện không đồng bộ (không có tín hiệu CLK để đồng bộ hoá các bit o/p)

Việc truyền dữ liệu của UART có thể được thực hiện bằng cách sử dụng bus dữ liệu ở dạng song song bởi các thiết bị khác như vi điều khiển, bộ nhớ, CPU,… Sau hi

Trang 18

như bắt đầu, dừng lại và trung bình Nó đọc từng bit gói dữ liệu và chuyển đổi dữ liệu nhận được thành dạng song song để loại bỏ ba bit của gói dữ liệu

Hình 3.6 Truyền thông UART

Các bit dữ liệu bao gồm dữ liệu thực được truyền từ người gửi đến người nhận

Độ dài khung dữ liệu có thể nằm trong khoảng 5 & 8 Nếu bit chẵn lẻ không được sử dụng thì chiều dài khung dữ liệu có thể dài 9 bit

3.4.5 Giao diện UART

Hình dưới đây cho thấy UART giao tiếp với vi điều khiển Giao tiếp UART có thể được thực hiện bằng ba tín hiệu như TXD, RXD và GND

Trang 19

Bằng cách sử dụng điều này, chúng ta có thể hiển thị một văn bản trong máy tính cá nhân từ board vi điều khiển cũng như mô-đun UART Trong board 8051, có hai giao diện nối tiếp như UART0 và UART1 Ở đây, giao diện UART0 được sử dụng Chân Tx truyền thông tin đến chân PC & Rx nhận thông tin từ PC Tốc độ baud

có thể được sử dụng để biểu thi tốc độ của cả vi điều khiển và PC Việc truyền và nhận

dữ liệu có thể được thực hiện đúng khi tốc độ truyền của cả vi điều khiển và PC là

Các tiêu chuẩn truyền thông như RS422 & TIA được sử dụng trong UART ngoại trừ RS232 Thông thường, UART là một IC riêng được sử dụng trong giao tiếp UART

3.4.7 Ưu và nhược điểm của UART

 Nó chỉ cần hai dây để truyền dữ liệu, kích thước khung dữ liệu tối đa là 9 bit

 Tín hiệu CLK là không cần thiết, tốc độ truyền của UART phải ở mức 10% của nhau

 Nó bao gồm một bit chẵn lẻ để cho phép kiểm tra lỗi

Trang 20

CHƯƠNG 4: CÁC PHẦN MỀM SỬ DỤNG TRONG ĐỀ

TÀI

4.1 Arduino IDE

4.1.1 Những phần cơ bản của giao diện phần mềm Arduino IDE

Giao diện phần mềm Arduino IDE gồm 3 phần chính:

 Menu lệnh

 Các nút lệnh

 Vùng lập trình

Hình 4.1 Giao diện phần mềm Arduino IDE

4.1.2 Các chức năng cơ bản của các biểu tượng trên phần mềm

NÚT KIỂM TRA CHƯƠNG TRÌNH: Dùng để kiểm tra xem chương trình được

viết có lỗi không Nếu chương trình bị lỗi thì phần mềm Arduino IDE sẽ hiển thị thông tin lỗi ở vùng thông báo thông tin

NÚT NẠP CHƯƠNG TRÌNH XUỐNG BO ARDUINO: Dùng để nạp chương

trình được viết xuống mạch Arduino Trong quá trình nạp, chương trình sẽ được kiểm tra lỗi trước sau đó mới thực hiện nạp xuống mạch Arduino

HIỂN THỊ MÀN HÌNH GIAO TIẾP VỚI MÁY TÍNH: Khi nhấp vào biểu tượng

cái kính lúp thì phần giao tiếp với máy tính sẽ được mở ra Phần này sẽ hiển thị các thông số mà người dùng muốn đưa lên màn hình Muốn đưa lên màn hình phải có lệnh Serial.print() mới có thể đưa thông số cần hiển thị lên màn hình

VÙNG LẬP TRÌNH: Vùng này để người lập trình thực hiện việc lập trình cho

chương trình của mình

Trang 21

VÙNG THÔNG BÁO THÔNG TIN: Có chức năng thông báo các thông tin lỗi

của chương trình hoặc các vấn đề liên quan đến chương trình được lập

SỬ DỤNG MỘT SỐ MENU THÔNG DỤNG TRÊN PHẦN MỀM ARDUINO IDE: Có vài menu trong phần mềm IDE, tuy nhiên thông dụng nhất vẫn là

menu File, ngoài những tính năng như mở một file mới hay lưu một file, phần menu này có một mục đáng chú ý là Example Phần Example (ví dụ) đưa ra các

ví dụ sẵn để người lập trình có thể tham khảo, giảm bớt thời gian lập trình Hình bên dưới thể hiện việc chọn một ví dụ cho led chớp tắt (blink) để nạp cho mạch Arduino Ví dụ về led chớp tắt này thường được dùng để kiểm tra bo khi mới mua về

Hình 4.2 Minh họa chọn led chớp tắt (blink) nạp cho mạch Arduino

Một menu thường được sử dụng khác là menu Tools Khi mới kết nối bo

Arduino với máy tính ta click vào Tools->board để chọn loại board sử dụng Phần mềm chọn sẵn kiểu bo là bo Arduino Uno, nếu người dùng dùng kiểu bo khác thì

chọn kiểu bo đang dùng

Trang 22

Hình 4.3 Minh họa chọn menu Tools nạp cho mạch Arduino

Bên cạnh việc chọn bo thì một phần quan trọng nữa là chọn cổng COM Hình bên dưới minh họa cho việc chọn cổng COM Khi lần đầu gắn mạch Arduino vào máy

tính, người sử dụng cần nhấn chọn cổng COM bằng cách vào Tools -> Serial Port (một số phiên bản dùng từ Port) sau đó nhấn chọn cổng COM, ví dụ như COM5

Những lần sau khi đưa chính board Arduino đó vào máy tính thì không cần chọn cổng COM, nếu đưa bo Arduino khác vào máy thì cần phải chọn lại cổng COM, quy trình thực hiện cũng tương tự

Hình 4.4 Minh họa chọn cổng COM nạp cho mạch Arduino

Sau khi thực hiện các bước trên xong, người dùng có thể bắt tay vào việc lập trình

Trang 23

4.2 Visual Studio 2015

4.2.1 Visual Basic

Phần Visual (có nghĩa là hình ảnh trực quan) đề cập đến phương pháp được sử

dụng để tạo giao diện đồ họa người dùng (Graphical User Interface hay viết tắt là GUI) Với những bộ phận hình ảnh (gọi là controls), bạn có thể sắp đặt vị trí và quyết định các đặc tính của chúng trên một khung màn hình, gọi là form (giống form trong Access) Nếu bạn đă từng sử dụng chương trình vẽ chẳng hạn như Paint, bạn đă

có sẵn các kỹ năng cần thiết để tạo một GUI cho VB6 Sau này, Microsoft phát triển thêm VB.NET để hổ trợ cho người sử dụng quản lý với một hệ thống lớn

Để lập trình Visual Basic, chúng ta sử dụng phần mềm do Microsoft phát hành: Visual Studio 2015

Chúng ta có thể download phần mềm Visual Studio 2015 tại:

https://www.fshare.vn/file/ZW984OPA23ZJ?token=1559134050

4.2.2 Tạo một project Windows Forms Application

 Đầu tiên, chúng ta mở ứng dụng Visusal Studio 2015 từ màn hình Desktop

Để tạo 1 file Windows Forms Application, ta click vào File -> New -> Project

Hình 4.5 Giao diện phần mềm Visual Studio 2015

Trang 24

Sau đó, bảng New Project sẽ hiện ra

Hình 4.7 Giao diện New Project

 Sau đó, ta click vào Windows Froms Application Phần bên trái giao diện (vùng khoanh đỏ) đó là phần cho ta chọn ngôn ngữ lập trình

Hình 4.6 Giao diện tạo 1 file Project

Trang 25

Hình 4.8 Giao diện chọn ngôn ngữ lập trình và tạo Project

Ta tiến hành đặt tên cho project của chúng ta ở phần Name Sau đó, ta có 1 giao diện

thiết kế như sau:

Trang 26

Phần 2 (Vùng khoanh đỏ): Thanh ToolBox chọn các sự kiện như Button,

TextBox, GroupBox, Timer, SerialPort…

Hình 4.11 Giao diện ToolsBox

 Phần 3 (Vùng khoanh màu xanh lá): Giao diện chính mà chúng ta có thể lấy các button, text… Từ thanh ToolsBox bên trái để thiết kế giao diện

Hình 4.12 Giao diện thiết kế chính

Trang 27

 Phần 4 (Vùng khoanh màu vàng): Thể hiện Properties của các thanh Button, text…ta đặt tên cho Button, tuỳ chỉnh màu cho Button,…

Hình 4.13 Giao diện Proproties

Để lập trình Visual Basic cho giao diện thiết kế Tại phần giao diện thiết kế, ta

click chuột phải vào giao diện và chọn View Code hoặc ta nhấn F7

Hình 4.14 Giao diện View Code

Trang 28

Hình 4.15 Giao diện lập trình

Trang 29

CHƯƠNG 5: CÁC THIẾT BỊ SỬ DỤNG TRONG ĐỀ

Khối mạch công suất

Khối cảm

biến

VISUAL BASIC Web app

Hình 5.1 Sơ đồ khối

Hình 5.2 NodeMCU ESP8266 v12E

Trang 30

Module ESP-12E

Module ESP-12E chứa chip ESP8266 có bộ vi xử lý RISC 32-bit LX106 RISC hoạt động ở tần số xung nhịp 80 đến 160 MHz và hỗ trợ RTOS

Ngoài ra còn có 128 KB RAM và 4 MB bộ nhớ Flash (để lưu trữ chương trình

và dữ liệu) vừa đủ để đối phó với các chuỗi lớn tạo nên các trang web, dữ liệu JSON / XML và mọi thứ chúng ta hiện có trên các thiết bị IoT

ESP8266 Tích hợp bộ thu phát Wi-Fi 802.1140 / g / n HT40, do đó, nó không chỉ có thể kết nối với mạng WiFi và tương tác với Internet mà còn có thể thiết lập một mạng riêng, cho phép các thiết bị khác kết nối trực tiếp với nó điều này làm cho ESP8266 NodeMCU trở nên linh hoạt hơn

Yêu cầu năng lượng

Vì dải điện áp hoạt động của

ESP8266 là 3V đến 3,6V, bo mạch đi kèm với bộ ổn áp LDO để giữ điện áp ổn định ở mức 3,3V Nó có thể cung cấp đáng tin cậy tới 600mA, mức này là quá đủ khi

Trang 31

ESP8266 kéo tối đa 80mA trong khi truyền RF Đầu ra của bộ điều chỉnh cũng được chia ra một trong các cạnh của bảng và được dán nhãn là 3V3 Pin này có thể được sử dụng để cung cấp năng lượng cho các thành phần bên ngoài

Cấp nguồn cho NodeMCU ESP8266 được cung cấp qua đầu nối MicroB USB trên bo mạch Ngoài ra, nếu bạn có nguồn điện áp 5V được quy định, chân VIN có thể được sử dụng để cung cấp trực tiếp cho ESP8266 và các thiết bị ngoại vi của nó

*Chú ý:

ESP8266 yêu cầu nguồn điện 3,3V và mức logic 3,3V để liên lạc Các chân GPIO không chịu được 5V! Nếu bạn muốn giao diện bảng với các thành phần 5V (hoặc cao hơn), bạn sẽ cần thực hiện một số thay đổi cấp độ

Thiết bị ngoại vi và I/O

ESP8266 NodeMCU có tổng số 17 chân GPIO được chia ra cho các tiêu đề pin

ở cả hai phía của bảng phát triển Các chân này có thể được gán cho tất cả các loại nhiệm vụ ngoại vi, bao gồm:

- Kênh ADC - Kênh ADC 10 bit

- Giao diện UART - Giao diện UART được sử dụng để tải mã seri

- Đầu ra PWM - Chân PWM để làm mờ đèn LED hoặc điều khiển động cơ Giao diện SPI, I2C & I2S - Giao diện SPI và I2C để kết nối tất cả các loại cảm biến và thiết bị ngoại vi

Giao diện I2S - Giao diện I2S nếu bạn muốn thêm âm thanh vào dự án của mình Nhờ tính năng ghép kênh pin của ESP8266 (Nhiều thiết bị ngoại vi được ghép kênh trên một pin GPIO duy nhất) Có nghĩa là một chân GPIO duy nhất có thể hoạt động như PWM / UART / SPI

Trang 32

Công tắc và đèn led trên board

ESP8266 NodeMCU có hai nút Một đánh dấu là RST nằm ở góc trên cùng bên trái là nút Reset, tất nhiên được sử dụng để đặt lại chip ESP8266 Nút FLASH khác ở góc dưới bên trái là nút tải xuống được sử dụng trong khi nâng cấp chương trình cơ sở

Bảng cũng có đèn LED được người dùng lập trình và được kết nối với chân D0 của bảng

Truyền thông nối tiếp

Bảng mạch bao gồm Bộ điều khiển cầu nối USB-to-UART CP2102 của Silicon Labs , giúp chuyển đổi tín hiệu USB thành nối tiếp và cho phép máy tính của bạn lập trình và giao tiếp với chip ESP8266

Công tắc & chỉ báo

 RST - Đặt lại chip ESP8266

 FLASH - Tải xuống chương

trình mới

 Blue LED - Lập trình người

dùng

Truyền thông nối tiếp

 Bộ chuyển đổi USB-to-UART

CP2102

 Tốc độ truyền thông 4,5 Mb / giây

 Hỗ trợ kiểm soát dòng chảy

Hình 5.6 Công tắc và đèn trên board

Hình 5.7 Bộ chuyển đổi USB-to-UART CP2102

Trang 33

5.2.2 ADRUINO UNO R3

Nhắc tới dòng mạch Arduino dùng để lập trình, cái đầu tiên mà người ta thường nói tới chính là dòng Arduino UNO Hiện dòng mạch này đã phát triển tới thế hệ thứ 3 (R3)

Hình 5.8 ADRUINO UNO R3

Một vài thông số của Arduino UNO R3:

- Vi điều khiển: ATmega328 họ 8bit

- Điện áp hoạt động: 5V DC (chỉ được cấp qua cổng USB)

- Tần số hoạt động: 16 MHz

- Dòng tiêu thụ: khoảng 30mA

- Điện áp vào khuyên dùng: 7-12V DC

- Điện áp vào giới hạn: 6-20V DC

- Số chân Digital I/O: 14 (6 chân hardware PWM)

- Số chân Analog: 6 (độ phân giải 10bit)

- Dòng tối đa trên mỗi chân I/O: 30 mA

Trang 34

 Thông số kỹ thuật:

- Màu sắc: Đỏ

- Sử dụng điện áp nuôi DC 5V

- Đầu ra điện thế đóng ngắt tối đa DC 30V/10A, AC 250V/10A

- Có đèn báo đóng ngắt trên relay

- Thông số điện:

- Điện áp cung cấp: 5V DC

- Dòng điện hoạt động: >100mA

- Tải max: 250V 10A AC hoặc DC 30V 10A

Trang 35

- Đầu Hút Nước Vào: 5mm

- Đầu Nước Ra:

- Đầu Chui 45mm

- Đầu Bao Ngoài: 75mm

Hình 5.11 Bơm Hình 5.10 Quạt tản nhiệt

Trang 36

5.3.5 Động cơ Servo

Động cơ RC Servo 9G là động phổ biến dùng trong các mô hình điều khiển nhỏ

và đơn giản như cánh tay robot Động cơ có tốc độ phản ứng nhanh, được tích hợp sẵn Driver điều khiển động cơ, dễ dàng điều khiển góc quay bằng phương pháp điều độ rộng xung PWM

Ngày đăng: 27/05/2021, 22:42

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w