1. Trang chủ
  2. » Giáo Dục - Đào Tạo

xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện

119 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Xây dựng ứng dụng hệ thống giám sát, điều khiển các thiết bị điện
Tác giả Phan Trung Hiếu, Nguyễn Văn Cường
Người hướng dẫn ThS. Nguyễn Văn Hiệp
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh
Chuyên ngành Công Nghệ Kỹ Thuật Điện Tử - Truyền Thông
Thể loại Đồ Án Tốt Nghiệp
Năm xuất bản 2019
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 119
Dung lượng 7,32 MB

Cấu trúc

  • CHƯƠNG 1. TỔNG QUAN (18)
    • 1.1. ĐẶT VẤN ĐỀ (18)
    • 1.2. MỤC TIÊU (18)
    • 1.3. NỘI DUNG NGHIÊN CỨU (18)
    • 1.4. GIỚI HẠN (19)
    • 1.5. BỐ CỤC (0)
  • CHƯƠNG 2. CƠ SỞ LÝ THUYẾT (20)
    • 2.1. Giới thiệu về hệ thống giám sát, điều khiển các thiết bị điện (21)
    • 2.2. HỆ ĐIỀU HÀNH ANDROID (21)
      • 2.2.1. Khái niệm Android (21)
      • 2.2.2. Ưu và nhược điểm của Android (22)
    • 2.3. CÁCH THỨC TRUYỀN NHẬN DỮ LIỆU WIFI (22)
    • 2.4. CƠ SỞ DỮ LIỆU TRỰC TUYẾN FIREBASE (0)
      • 2.4.1 Lịch sử (23)
      • 2.4.2. Các chức năng chính của Firebase (24)
      • 2.4.3. Ưu nhược điểm Firebase (25)
    • 2.5. GIAO THỨC TRUYỀN TẢI DỮ LIỆU MQTT (26)
      • 2.5.1 Khái niệm về MQTT (26)
      • 2.5.2 Ưu điểm MQTT (27)
    • 2.6. CÔNG NGHỆ NHẬN DIỆN ĐỐI TƯỢNG KHÔNG DÂY RFID (0)
      • 2.6.1. Cấu trúc và đặc điểm hệ thống RFID (28)
      • 2.6.2. Độ bảo mật và tin cậy (29)
  • CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ (30)
    • 3.1 Giới thiệu (30)
      • 3.1.1 Yêu cầu đề tài (30)
      • 3.1.2 Sơ đồ khối tổng quát và sơ đồ khối của hệ thống (30)
      • 3.1.3. Thiết kế ứng dụng trên điện thoại (31)
    • 3.2. Thiết kế bo điều khiển các thiết bị điện (36)
      • 3.2.1. Vi điều khiển (36)
      • 3.2.2. Khối hiển thị (39)
      • 3.2.3. Khối thời gian thực (40)
      • 3.2.4. Khối nhận diện đối tượng (42)
      • 3.2.5. Khối công suất (43)
      • 3.2.6. Khối nguồn (46)
    • 3.3. Sơ đồ toàn mạch (48)
  • CHƯƠNG 4: THI CÔNG MẠCH – VIẾT CHƯƠNG TRÌNH (0)
    • 4.1 GIỚI THIỆU (49)
    • 4.2 THIẾT KẾ ỨNG DỤNG (0)
      • 4.2.1 Giới thiệu phần mềm Android Studio (49)
      • 4.2.2 Xây dựng Firebase (55)
      • 4.2.3 Xây dựng MQTT Broker (58)
      • 4.2.4 Thiết kế chương trình trên điện thoại thông minh (61)
    • 4.3. Phần mềm lập trình cho vi điều khiển ESP32 (72)
      • 4.3.1 Lưu đồ giải thuật chính của mạch vi điền khiển ESP32 (76)
      • 4.3.2 Lưu đồ giải thuật thực thi điều khiển (79)
      • 4.3.3 Thiết kế giao diện màn hình (82)
    • 4.4. Thi công mạch PCB (88)
      • 4.4.1 Các linh kiện sử dụng (89)
      • 4.4.2 Mạch in PCB (90)
      • 4.4.3 Mạch hoàn chỉnh (0)
  • CHƯƠNG 5. KẾT QUẢ, PHÂN TÍCH VÀ THỐNG KÊ (0)
    • 5.1. Phân tích và thống kê (94)
    • 5.2 Kết quả (95)
  • CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (0)
    • 6.1 Kết luận (97)

Nội dung

Việc áp dụng công nghệ làm công cụ để quản lý khu nhà ở tại Việt Nam thì vẫn chưa được phát triển mạnh, nhằm khắc phục vấn đề người dùng quên tắt thiết bị khi ra khỏi phòng, quên thẻ mở

TỔNG QUAN

ĐẶT VẤN ĐỀ

Hiện nay có không ít lần chúng ta đi đến các lớp học và quên không tắt tivi, điều hòa, bóng đèn…xảy ra rất nhiều Việc quên tắt các thiết bị này khi ra khỏi lớp học như vậy sẽ làm lãng phí rất nhiều điện, có thể gây ra nguy cơ hỏng hóc và cháy nổ Vì vậy để tắt các thiết bị đã phải tốn rất nhiều thời gian để trực tiếp thao tác bằng tay lên những công tắc điều này đôi khi gây ra những bất tiện và phiền hà cho người dùng khi sử dụng Chính vì thế, nhóm quyết định nghiên cứu về đề tài “Xây dựng ứng dụng hệ thống giám sát, điều khiển các thiết bị điện” từ xa qua internet, wifi dưới dạng phần mềm lập trình Toàn bộ hệ thống trong các lớp học như tivi, điều hòa, bóng đèn… đều được lập trình để có thể hoạt động độc lập

Hệ thống sử dụng module wifi ESP32 để giải mã rồi đưa ra các tín hiệu điều khiển bật tắt có thể hoạt động dưới sự giám sát, tùy chọn theo khoảng thời gian được cài đặt thông qua app trên điện thoại hoặc thao tác trực tiếp trên màn hình cảm ứng board mạch.

MỤC TIÊU

Giải quyết vấn đề người dùng quên tắt thiết bị khi ra khỏi phòng, quên thẻ mở máy lạnh và phải mất nhiều thời gian cho việc bật tắt các thiết bị trực tiếp bằng tay lên những công tắc, nâng cấp hệ thống các thiết bị điện được điều khiển và giám sát thủ công Cải thiện và áp dụng các công nghệ tự động để tiết kiệm thời gian trong việc bật tắt các thiết bị với việc xây dựng hệ thống có chức năng cài đặt thời gian bật tắt theo ý muốn Nghiên cứu, khảo sát, và thực hiện với mục đích thiết kế một hệ thống điều khiển tự động từ xa hoàn chỉnh cung cấp cho người dùng giao diện bắt mắt, dễ sử dụng trên điện thoại Thực hiện điều khiển các thiết bị điện từ xa thông qua mạng không dây, thực thi theo cài đặt các mốc thời gian, điện thoại thông minh sử dụng hệ điều hành Android có kết nối Internet, nhằm hướng đến việc tiện lợi trong các nhu cầu tiếp cận đến hệ thống, đồng thời có thể tác động trực tiếp thông qua màn hình Để quản lý hệ thống thì chỉ cần thông qua màn hình HMI hoặc app trên điện thoại di động khi được kết nối với Internet Tiết kiệm được thời gian, tiền bạc, đem lại một cuộc sống tiện nghi và thông minh hơn, thêm vào đó ta có thể quản lý thiết bị hoạt động theo chính xác thời gian thực.

NỘI DUNG NGHIÊN CỨU

Nghiên cứu theo phương pháp tìm hiểu về lý thuyết, khảo sát trên linh kiện thực tế, sau đó lập trình trên máy tính, truyền và nhận dữ liệu thử trên test board Xây dựng một hệ thống quản lý, điều khiển các thiết bị trong phòng học qua mạng

 Sử dụng module ESP32 làm vi điều khiển trung tâm để đọc và giải mã lệnh nhận được từ đầu đọc RFID và app điện thoại để đưa ra lệnh điều khiển tương ứng với thiết bị, gửi phản hồi cho biết trạng thái của thiết bị, kết nối WiFi và giao tiếp với điện thoại

 Tìm hiểu điều khiển giao tiếp module ESP32 với màn hình HMI để làm khối hiển thị, điều khiển trực tiếp trên phần cứng

 Tìm hiểu điều khiển giao tiếp module ESP32 với IC DS3231 làm khối thời gian thực giúp lưu trữ thời gian, ngày, tháng, năm khi không có nguồn

 Thiết kế và lập trình khối giao tiếp giữa app android với ESP32 thông qua WiFi có chức năng truyền nhận dữ liệu từ khối giao tiếp và phản hồi tín hiệu điều khiển thông qua WiFi

 Thiết kế, thi công và lập trình khối giao tiếp giữa ESP32 và RFID để cho phép người dùng truy cập vào hệ thống

 Tìm hiểu thiết kế giao diện Android

 Tìm hiểu thiết kế giao diện trên màn hình HMI Nextion

 Tìm hiểu về Firebase để cập nhật dữ liệu điều khiển

 Tìm hiểu về MQTT (Message Queue Telemetry Transport) để cập nhật dữ liệu điều khiển

 Tìm hiểu về giao diện cho ứng dụng chạy trên các thiết bị Android Nếu đã ổn định thì thiết kế board mạch và thi công mô hình

Lắp ráp và thiết kế các khối vào mô hình thực tế

Chạy thử nghiệm hệ thống và xem xét tốc độ xử lý

Viết báo cáo kết quả đạt được sau khi thực hiện đồ án.

GIỚI HẠN

- Xây dựng hệ thống điều khiển thiết bị điện qua web sever với ESP 32 và app trên smartphone

- Xây dựng lưu đồ thuật toán để điều khiển hệ thống

- Viết chương trình điều khiển các thiết bị điện trong các lớp học bằng smartphone

- Đề tài chỉ áp dụng ở nơi có kết nối WiFi

- Điều khiển từ xa thông qua những tùy chọn đã thiết kế trong app trên điện thoại android

- Áp dụng cho phòng học khu A cũ tại trường đại học Sư Phạm Kĩ Thuật TP.HCM với các thiết bị: 3 máy lạnh, 11 đèn, 4 quạt.

BỐ CỤC

Giới thiệu chọn đề tài, nội dung nghiên cứu, mục đích, giới hạn mục tiêu đồ án.

CƠ SỞ LÝ THUYẾT

Giới thiệu về hệ thống giám sát, điều khiển các thiết bị điện

Hiện nay, tại các trường học, công ty, văn phòng, chung cư lớn chúng ta thường bắt gặp những hệ thống các thiết bị điện thường được điều khiển và giám sát rất thủ công vì vậy gây ra rất nhiều bất tiện Hệ thống giám sát, điều khiển các thiết bị điện được trang bị để giám sát các hoạt động bật tắt của các thiết bị điện trong trường học, văn phòng, là một phần của hệ thống để đảm bảo an toàn điện và giám sát toàn bộ các hệ thống các thiết bị điện tại các khu vực trong trường học, văn phòng,…

 Chức năng của hệ thống giám sát, điều khiển các thiết bị điện

- Hệ thống thực hiện chức năng kiểm soát, quản lý lưu trữ những thông tin cần thiết về hệ thống thiết bị điện tòa nhà và các khu vực quan trọng

- Hệ thống giám sát, điều khiển các thiết bị điện là một hệ thống điện tử được thiết kế nhằm quản lý, kiểm soát sự hoạt động của hệ thống các thiết bị điện, đảm bảo an toàn, an ninh cho các trường học, văn phòng, ngân hàng,

- Giải pháp có thể kết hợp sử dụng hệ thống nhận diện thẻ, mã PIN, vân tay, khuôn mặt,… theo từng mục đích quản lý

- Với những lợi ích và cách thức dễ dàng sử dụng Để quản lý hệ thống thì chỉ cần thông qua màn hình HMI hoặc app trên điện thoại di động khi được kết nối với Internet thì các công việc sẽ trở nên tiện lợi và nhanh chóng hơn cho người dùng rất nhiều

 Tiện ích của hệ thống giám sát, điều khiển các thiết bị điện Để thay cho việc làm thủ công là tới tận nơi bật tắt các thiết bị điện thì giờ đây người dùng có thể điều khiển bật tắt các thiết bị điện ở bất cứ nơi đâu chỉ cần có WiFi/3G trên nền tảng ứng dụng của điện thoại di động Cải thiện và áp dụng các công nghệ tự động để tiết kiệm thời gian trong việc bật tắt các thiết bị với việc xây dựng hệ thống có chức năng cài đặt thời gian bật tắt theo ý muốn Theo như đề tài ta cần tìm hiểu các kiến thức như sau:

- Tổng quan về hệ điều hành Android

- Tổng quan về MQTT (Message Queue Telemetry Transport).

HỆ ĐIỀU HÀNH ANDROID

Linux Trước đây, Android được phát triển bởi công ty liên hợp Android ( sau đó được Google mua lại vào năm 2005)

Các nhà phát triển viết ứng dụng cho Android dựa trên ngôn ngữ Java Sự ra mắt của Android vào ngày 5 tháng 11 năm 2007 gắn với sự thành lập của liên minh thiết bị cầm tay mã nguồn mở, bao gồm 78 công ty phần cứng, phần mềm và viễn thông nhằm mục đính tạo nên một chuẩn mở cho điện thoại di động trong tương lai

Android được viết dựa trên ngôn ngữ Java, Kotlin, bộ cộng cụ Android SDK cung cấp các công cụ và bộ thư viện các hàm API cần thiết để phát triển ứng dụng cho nền tảng Android

H ÌNH 2.1 C ÁC PHIÊN BẢN CỦA HỆ ĐIỀU HÀNH A NDROID

2.2.2 Ư U VÀ NHƯỢC ĐIỂM CỦA A NDROID Ưu điểm

- Hệ điều hành có khả năng tùy biến cao

- Kho ứng dụng phong phú

- Sự phổ biến trong tầm giá

- Vì mã nguồn mở nên khả năng tùy biến cao nhưng rất dễ bị nhiễm mã độc

- Khó kiểm soát chất lượng ứng dụng

- Các phiên bản không được hỗ trợ lâu dài

- Khả năng phân mảnh cao

CƠ SỞ DỮ LIỆU TRỰC TUYẾN FIREBASE

Các chuẩn kết nối WiFI:

- Wifi hay mạng 802.11 có 6 chuẩn thông dụng nhất đó là 802.11a, 802.11b, 802.11g, 802.11n, 802.11ac, 802.11

- Chuẩn 802.11b: Đây là phiên bản đầu tiên trên thị trường Chuẩn này có tốc độ truyền chậm và ít phổ biến hơn so với các chuẩn khác Chuẩn 802.11b phát tín hiệu ở tần số 2.4 GHz, nó có thể xử lý đến 11 Mbit/s và sử dụng mã CCK (complimentary code keying)

- Chuẩn 802.11g: Cũng phát ở tần số 2.4 GHz, nhưng nhanh hơn so với chuẩn 802.11b, tốc độ xử lý đạt 54 Mbit/s Chuẩn 802.11g nhanh hơn vì nó sử dụng mã OFDM (orthogonal frequency-division multiplexing), một công nghệ mã hóa hiệu quả hơn

- Chuẩn 802.11a: Phát ở tần số 5 GHz và có thể đạt đến 54 Mbit/s Nó cũng sử dụng mã OFDM

- Chuẩn 802.11n: Phát ở tần số 2.4 GHz, nhưng nhanh hơn so với chuẩn 802.11a, tốc độ xử lý đạt 300 Mbit/s

- Chuẩn 802.11ac: phát ở tần số 5 GHz

- Chuẩn 802.11ad: phát ở tần số 60 GHz WiFi có thể hoạt động trên cả ba tần số và có thể nhảy qua lại giữa các tần số khác nhau một cách nhanh chóng Việc nhảy qua lại giữa các tần số giúp giảm thiểu sự nhiễu sóng và cho phép nhiều thiết bị kết nối không dây cùng một lúc

2.4 CƠ SỞ DỮ LIỆU TRỰC TUYẾN FIREBASE

Firebase được thành lập bởi Tamplin và Lee Hai nhà sáng lập này đã dựa vào một dịch vụ API chat trực tuyến vào trang web được cung cấp bởi Envolve, các định tách riêng hệ thống chat và kiến trúc thời gian thực để thành lập một cơ sở dữ liệu firebasse riêng biệt vào tháng 4 năm 2012 Vào ngày 21 tháng 10 năm

2014 Google đã mua lại Firebase

Firebase là một dịch vụ API (giao diện lập trình ứng dụng) để lưu trữ và đồng bộ dữ liệu giữa hai hay nhiều thiết bị với nhau Firebase hoạt động dựa trên nền tảng đám mây được cung cấp bởi Google nhằm giúp đỡ các lập trình viên phát triển nhanh ứng dụng bằng cách đơn giản hóa các thao tác ứng dụng với cơ sở dữ liệu

Google FireBase là gì: Đó là một dịch vụ cơ sở dữ liệu thời gian thực hoạt động trên nền tảng đám mây được cung cấp bởi Google nhằm giúp các lập trình phát triển nhanh các ứng dụng bằng cách đơn giản hóa các thao tác với cơ sở dữ liệu

2.4.2 Các chức năng chính của Firebase

Firebase Analytics : Là một giải pháp miễn phí và phân tích không giới hạn

Quản lý hành vi người dùng và các biện pháp từ một bảng điều khiển duy nhất

Firebase Develop : Xây dựng ứng dụng tốt hơn và hoạt động tốt hơn Quan trọng trong tiết kiệm thời gian phát triển chất lượng cao, ứng dụng có ít lỗi

- Cloud Messaging là một giải pháp tin nhắn đa nền tảng đáng tin cậy miễn phí Mỗi tin nhắn dung lượng đến 4KB trong ứng dụng client

- Firebase Authentication hầu hết các ứng dụng cần xác thực quyền Giúp ứng dụng lưu dữ liệu an toàn sử dụng trong các đám mây

- Firebase Realtime Database cơ sở dữ liệu đám mây NoSQL đồng bộ hóa

Dữ liệu được đồng bộ hóa trên tất cả các client trong thời gian thực, và luôn có sẵn khi ứng dụng offline

- Firebase Storage được xây dựng cho các nhà phát triển ứng dụng, để lưu trữ và phục vụ nội dung do người dùng tạo ra, chẳng hạn như hình ảnh hoặc video

- Firebase Hosting nhanh chóng và an toàn lưu trữ tĩnh cho ứng dụng website

- Firebase Test Lab cung cấp các thiết bị vật lý và cho phép chạy thử nghiệm mô phỏng môi trường sử dụng thực tế

- Firebase Crash Reporting thông tin toàn diện và hành động để giúp chuẩn đoán và sửa chữa các vấn đề trong ứng dụng

- Notifications cho phép gửi và duy trì tin nhắn của người dùng Sử dụng là miễn phí và không giới hạn

- Remote Config cập nhật ứng dụng không cần triển khai một phiên bản mới

Cài đặt nhanh chóng dễ dàng

- App Indexing trợ giúp người dùng khám phá và tái tham gia với các ứng dụng của bạn bằng cách hiển thị có liên quan nội dung trong ứng dụng trong kết quả tìm kiếm của Google

- Dynamic Links là các URL thông minh tự động thay đổi hành vi để cung cấp tốt nhất trên các nền tảng khác nhau Liên kết động có thể tồn tại trong ứng dụng quá trình cài đặt và đưa người dùng tới nội dung có liên quan cho dù họ là một người dùng mới hoặc một khách hàng lâu năm

- Invites giới thiệu ứng dụng và chia sẻ

- AdWords tự động liên kết AdWords với người dùng mà bạn xác định trong căn cứ Firebase Analytics Cải thiện nhắm mục tiêu quảng cáo và tối ưu hóa hiệu suất chiến dịch của bạn

2.4.3 Ưu nhược điểm Firebase Ưu điểm

- Xây dựng ứng dụng nhanh chóng mà không tốn thời gian, nhân lực để quản lý hệ thống và cơ sơ sở hạ tầng phía sau: Firebase cung cấp cho bạn chức năng như phân tích, cơ sở dữ liệu, báo cáo hoạt động và báo cáo các sự cố lỗi để bạn có thể dễ dàng phát triển, định hướng ứng dụng

- Uy tín chất lượng đảm bảo từ Google: Firebase được google hỗ trợ và cung cấp trên nền tảng phần cứng với quy mô rộng khắp thế giới, được các tập đoàn lớn và các ưng dụng với triệu lượt sử dụng từ người dùng

- Quản lý cấu hình và trải nghiệm các ứng dụng của Firebase tập trung trong một giao diện website đơn giản, các ứng dụng này hoạt động độc lập nhưng liên kết dữ liệu phân tích chặt chẽ

- Điểm yếu duy nhất của “Firebase” chính là phần Realtime Database, mà đúng hơn chỉ là phần Database Cơ sở dữ liệu của họ được tổ chức theo kiểu trees, parent-children, không phải là kiểu Table nên những ai đang quen với SQL có thể sẽ gặp khó khăn từ mức đôi chút tới khá nhiều.

GIAO THỨC TRUYỀN TẢI DỮ LIỆU MQTT

MQTT (Message Queue Telemetry Transport): Đây là một giao thức truyền thông điệp (message) theo mô hình publish/subscribe (xuất bản - theo dõi), sử dụng băng thông thấp, độ tin cậy cao và có khả năng hoạt động trong điều kiện đường truyền không ổn định

MQTT là một giao thức nhắn tin gọn nhẹ được thiết kế để liên lạc giữa các thiết bị và hệ thống máy tính MQTT được thiết kế ban đầu cho các mạng SCADA, các bản sản xuất và băng thông thấp, MQTT đã trở nên phổ biến gần đây do sự phát triển của Internet-of-Things (IoT)

Kiến trúc mức cao (high-level) của MQTT gồm 2 phần chính là Broker và

 Broker được coi như trung tâm, nó là điểm giao của tất cả các kết nối đến từ client Nhiệm vụ chính của broker là nhận message từ publisher, xếp các message theo hàng đợi rồi chuyền chúng tới một địa chỉ cụ thể Nhiệm vụ phụ của broker là nó có thể đảm nhận them một vài tính năng liên quan tới quá trình truyền thông như: bảo mật message, lưu trữ message, logs,

 Client thì được chia thành 2 nhóm là publisher và subscriber Client là các software components hoạt động tại edge device nên chúng được thiết kế để có thể hoạt động một cách linh hoạt Client chỉ làm ít nhất một trong 2 việc là publish các message lên một topic cụ thể hoặc subscribe một topic nào đó để nhận message từ topic này

MQTT Clients tương thích với hầu hết các nền tảng hệ điều hành hiện có: MAC OS, Windows, Linux, Androids, IOS Bởi vì giao thức này sử dụng băng thông thấp trong môi trường có độ trễ cao nên nó là một giao thức lý tưởng cho các ứng dụng M2M (Machine to machine)

MQTT được thiết kế một cách nhẹ và linh hoạt nhất có thể Do đó nó chỉ có

1 lớp bảo mật ở tầng ứng dụng: bảo mật bằng xác thực (xác thực các client được quyền truy cập tới broker) Tuy vậy, MQTT vãn có thể được cài đặt kết hợp với các giải pháp bảo mật đa tầng khác như kết hợp với VPN ở tầng mạng hoặc SSL/TLS ở tầng transport

MQTT được thiết kế nhằm phục vụ truyền thông machine-to-machine nhưng thực tế chứng minh nó lại linh hoạt hơn mong đợi Nó hoàn toàn có thể áp dụng cho các truyền thông khác như: machine-to-cloud, cloud-to-machine, app-to- app Chỉ cần có một broker phù hợp và MQTT client được cài đặt đúng cách, các thiết bị xây dựng trên nhiều nền tảng khác nhau có thể giao tiếp với nhau một cách dễ dàng

H ÌNH 2.4 T ỔNG QUAN VỀ MQTT

- Chuyển thông tin hiệu quả hơn

- Tăng khả năng mở rộng

- Giảm đáng kể tiêu thụ băng thông mạng

- Rất thích hợp cho điều khiền và lấy thông tin

- Tối đa hóa băng thông có sẵn

- Sử dụng tốt ở nơi có băng thông thấp, không ổn định

- Rất an toàn và bảo mật

2.6 CÔNG NGHỆ NHẬN DIỆN ĐỐI TƯỢNG KHÔNG DÂY RFID

RFID hay nhận dạng qua tần số vô tuyến, là một công nghệ dùng kết nối sóng vô tuyến để tự động xác định và theo dõi các thẻ nhận dạng gắn vào vật thể Công nghệ này sử dụng một thẻ điện tử chứa thông tin được lưu trữ bằng điện tử, đối tượng cần theo dõi Thẻ có mạch thu thập năng lượng từ các

CÔNG NGHỆ NHẬN DIỆN ĐỐI TƯỢNG KHÔNG DÂY RFID

(như pin) thì đến hàng trăm mét từ đầu đọc RFID Không giống mã vạch, thẻ không cần phải nằm trong tầm nhìn của người đọc, vì vậy nó có thể được gắn trong đối tượng được theo dõi

2.6.1 Cấu trúc và đặc điểm hệ thống RFID

Hệ thống RFID gồm 2 thành phần chính: thẻ RFID (RIFD tag) và đầu đọc

(reader) Thẻ RFID có gắn chip silicon và ăng ten radio dùng để gắn vào đối tượng quản lý như sản phẩm, hàng hóa, động vật hoặc ngay cả con người,…

Thẻ RFID có kích thước rất nhỏ, bộ nhớ của con chip có thể chứa từ 96 đến

512 bit dữ liệu Đầu đọc reader cho phép giao tiếp với thẻ RFID qua sóng radio ở khoảng cách trung bình từ 0,5 – 30 m từ đó truyền dữ liệu về hệ thống máy tính trung tâm

Nguyên lí hoạt động: Thiết bị RFID reader phát ra sóng điện từ ở một tần số nhất định, khi thiết bị RFID tag trong vùng hoạt động sẽ cảm nhận được sóng điện từ này và thu nhận năng lượng từ đó phát lại cho thiết bị RFID reader biết mã số của mình Từ đó thiết bị RFID reader nhận biết được tag nào đang trong vùng hoạt động

- Sử dụng hệ thống không dây thu phát sóng radio Không sử dụng tia sáng như mã vạch

- Thông tin có thể được truyền qua những khoảng cách nhỏ mà không cần một tiếp xúc vật lý nào

- Có thể đọc được thông tin xuyên qua các môi trường, vật liệu như: bê tông, tuyết, sương mù, băng đá, sơn và các điều kiện môi trường thách thức khác mà mã vạch và các công nghệ khác không thể phát huy hiệu quả

2.6.2 Độ bảo mật và tin cậy

Thẻ chip (tag) RFID chứa rất nhiều mã nhận dạng khác nhau, thông thường là 32bit tương ứng với hơn 4 tỷ mã số khác nhau Ngoài ra khi xuất xưởng mỗi thẻ chip RFID được gán một mã số khác nhau Do vậy khi một vật được gắn chip RFID thì khả năng nhận dạng nhầm vật đó với 1 thẻ chip RFID khác là rất thấp, xác suất là 1 phần 4 tỷ Với ưu điểm về mặt công nghệ như vậy nên sự bảo mật và độ an toàn của các thiết bị ứng công nghệ RFID là rất cao Đối với những địa điểm như các cơ quan, trụ sở lớn, vấn đề về bảo mật, kiểm soát thường rất phức tạp và đặt ra nhiều thử thách Để giải quyết vấn đề trên với công nghệ RFID sẽ là lựa chọn phù hợp nhất Đặc điểm nổi bật:

- Giúp người quản lý chủ động trong công tác kiểm soát, tiết kiệm thời gian, nhân lực, chi phí quản lý

- Giám sát chính xác, triệt để, tránh được sai sót do yếu tố con người như lơ là, thiếu tập trung,

- Hệ thống cho phép ghi lại nhật ký hành trình chi tiết giúp việc đối chiếu, theo dõi dễ dàng và chuẩn xác hơn

- Người quản lý có thể theo dõi giám sát tình hình thông qua mạng LAN, Internet và điều hành mà không cần phải có mặt ở trụ sở

- Hệ thống hoạt động chính xác, ổn định, cho phép nhà quản lý giám sát tình hình mọi lúc, mọi nơi và ở mọi thời điểm.

TÍNH TOÁN VÀ THIẾT KẾ

Giới thiệu

3.1.1 Yêu cầu đề tài Đề tài “Xây dựng ứng dụng hệ thống giám sát, điều khiển các thiết bị điện” tại trường đại học Sư Phạm Kĩ Thuật gồm:

- Bảng điều khiển đặt tại các phòng học có các chức năng:

 Điều khiển được máy lạnh, quạt, đèn

 Thiết lập thời gian tắt các thiết bị

 Điều khiển được bằng thẻ RFID của giáo viên

 Có màn hình hiển thị trạng thái thiết bị, điều khiển, đăng nhập bằng thẻ RFID

- Ứng dụng trên điện thoại Android có các chức năng:

 Giám sát các thiết bị trên phòng học

 Điều khiển được máy lạnh, quạt, đèn

 Thiết lập thời gian tắt các thiết bị

Với những yêu cầu trên thì nhóm em sẽ thiết kế sơ đồ khối, sơ đồ nguyên lí, sơ đồ hệ thống và lựa chọn thiết bị cho phù hợp

3.1.2 Sơ đồ khối tổng quát và sơ đồ khối của hệ thống

Theo sơ đồ tổng quát trên ta sẽ thấy điện thoại và các thiết bị kết nối với nhau dùng để gửi thông tin điều khiển các thiết bị điện qua mạng không dây lên cloud Ứng dụng gửi giá trị lên cloud, cloud truyền dữ liệu cho Esp32 qua mạng wifi, từ dữ liệu đọc về sẽ điều khiển các thiết bị điện thông qua module relay

Thiết kế hai điều khiển, một là điều khiển trên ứng dụng chạy trên hệ điều hành Android, 2 là điều khiển thông qua màn hình (cảm ứng) Điều khiển thiết bị qua wifi sử dụng ứng dụng trên điện thoại, và thông qua cloud

KHỐI XỬ LÝ KHỐI NGUỒN

KHỐI NHẬN DIỆN ĐỐI TƯỢNG

- Khối nguồn: có chức năng cấp nguồn cho toàn bộ mạch để hoạt động(3.3v, 5v, 220v)

- Khối thiết bị: có nhiệm vụ đảm bảo hoạt động ổn định của relay cho việc điều khiển các thiết bị …

- Khối nhận diện đối tượng: cho phép người dùng truy cập để điều khiển

- Khối xử lý: nhận dữ liệu từ các khối và xử lý điều khiển các thiết bị

- Khối thời gian thực: lưu trữ thời gian khi không có nguồn

- Khối hiển thị giúp quan sát theo dõi và điều khiển trực tiếp trên phần cứng

- Điện thoại: điều khiển thiết bị từ xa bằng wifi, hiển thị các chế độ từ khối xử lí

3.1.3 Thiết kế ứng dụng trên điện thoại

Chức năng: Giao diện chính có chức năng cho giáo viên đăng nhập để vào được các chức năng chính của ứng dụng

- Email: Giáo viên nhập email được cung cấp

- Password: Giáo viên nhập mật khẩu được cung cấp

- Quên mật khẩu: Trường hợp giáo viên quên mật khẩu sẽ nhấn vào nút này để tạo mật khẩu mới

 Màn hình 1: Khi giáo viên điền đầy đủ email và password đã được cung cấp có một nút nhấn “Đăng nhập” để chuyển sang màn hình làm việc chính Trong màn hình chính có 2 màn hình giao diện làm việc “Home” và “Account Setting”

Hình 3 4 Giao diện màn hình ‘home’ trên điện thoại

Khi đăng nhập thành công, giao diện “ HOME” sẽ hiển thị các khu phòng học trong trường Khi nhấn vào một trong số các khu thì sẽ xuất hiện giao diện lựa chọn phòng học chia theo khu vực đó để điều khiển các thiết bị trong phòng được chọn Giao diện cho phép cài đặt thời gian tắt theo yêu cầu

H ÌNH 3.5:G IAO DIỆN ĐIỀU KHIỂN

H ÌNH 3.6 G IAO DIỆN MÀN HÌNH ‘A CCOUNT S ETTING ’ TRÊN ĐIỆN THOẠI

Khi đăng nhập thành công, giao diện “Account Setting” sẽ hiển thị các thông tin tạo tài khoản mới, đổi mật khẩu, thêm thẻ RFID, đăng xuất Đây là giao diện quản lý nâng cao cho việc bảo mật

H ÌNH 3.7 G IAO DIỆN MÀN HÌNH ‘T ẠO TÀI KHOẢN ’ TRÊN ĐIỆN THOẠI

Khi người quản lý muốn tạo tài khoản mới cho giáo viên thì chọn vào chức năng tạo tài khoản Ở màn hình tạo tài khoản điền các thông tin như là địa chỉ email, mật khẩu để tạo tài khoản mới

H ÌNH 3.8 G IAO DIỆN MÀN HÌNH ‘ KIỂM TRA TRẠNG THÁI ’ TRÊN ĐIỆN THOẠI

H ÌNH 3.9 G IAO DIỆN MÀN HÌNH ‘T HÊM /X ÓA THẺ RFID’ TRÊN ĐIỆN THOẠI

Khi người quản lý muốn thêm thẻ RFID mới vào hệ thống thì cần chọn chức năng Thêm thẻ RFID Ở màn hình này thì chỉ cần chọn phòng học gần nhất rồi nhấn đồng ý

 Màn hình 2: Khi giáo viên quên password đã được cung cấp có một nút nhấn

“Quên mật khẩu?” để chuyển sang màn hình làm việc chính để tạo mật khẩu mới

H ÌNH 3.10: GIAO DIỆN MÀN HÌNH " QUÊN MẬT KHẨU ?" TRÊN ĐIỆN THOẠI

Thiết kế bo điều khiển các thiết bị điện

Khối xử lí: có chức năng đọc và giải mã lệnh nhận được từ đầu đọc RFID và ứng dụng điện thoại để đưa ra lệnh điều khiển tương ứng, kết nối WiFi và giao tiếp với server cloud

- Pic, Arduino: giá thành rẻ, dễ lập trình, công suất tiêu thụ thấp nhưng không có kết nối trực tiếp với WiFi

- Raspberry Pi: tốc độ xử lí nhanh, khả năng kết nối rộng, bộ nhớ lớn Nhược điểm giá thành cao

- ESP32: Giá thành rẻ, dễ lập trình, kết nối trực tiếp với WiFi

Với yêu cầu và giới hạn của đề tài, nhóm quyết định dùng ESP32 do có kết nối trực tiếp với WiFi và có thể sử dụng IDE của Arduino để lập trình và biên dịch code, điều khiển được nhiều thiết bị, nhiều thư viện hỗ trợ, phổ biến trên thị trường

Giới thiệu và các thông số của ESP32

ESP32 là dòng chip tích hợp Wi-Fi 2.4Ghz có thể lập trình được được phát triển bởi công ty bán dẫn Trung Quốc Espressif systems để cung cấp giải pháp giao tiếp WiFi cho các thiết bị IoT

Là module WiFi được đánh giá rất cao cho các ứng dụng liên quan đến Internet cũng như các ứng dụng truyền nhận sử dụng thay thế cho các module RF khác với khoảng cách truyền lên tới 100m ( Môi trường không có vật cản) Trên 400m với anten và router thích hợp

Cung cấp một giải pháp kết nối mạng WiFi hoàn chỉnh và khép kín, cho phép nó có thể lưu trữ các ứng dụng hoặc để giảm tải tất cả các chức năng kết nối mạng WiFi từ một bộ xử lý ứng dụng

Khi ESP32 là máy chủ các ứng dụng hay khi nó chỉ là bộ vi xử lý ứng dụng có trong thiết bị, nó có thể khởi động trực tiếp từ một flash ngoài Nó có tích hợp bộ nhớ cache để cải thiện hiệu suất của hệ thống trong các ứng dụng này, và để giảm thiểu các yêu cầu bộ nhớ

Sử dụng chip nạp và giao tiếp UART mới và ổn định nhất là CP2102 có khả năng tự nhận driver trên tất cả các hệ điều hành Window và Linux

KIT ESP32 là KIT phát triển bên trong có sẵn một lõi vi xử lý vì thế có thể trực tiếp lập trình cho ESP32 mà không cần thêm bất kì con vi xử lý nào khác

Quản lí năng lượng ESP32

- ESP32 được thiết kế cho điện thoại di động, điện tử lắp ráp và ứng dụng InternetofThings với mục đích đạt được mức tiêu thụ điện năng thấp nhất với sự kết hợp của nhiều kỹ thuật độc quyền Kiến trúc tiết kiệm năng lượng hoạt động trong 3 chế độ: chế độ hoạt động, chế độ ngủ và chế độ ngủ sâu

- Bằng cách sử dụng các kỹ thuật quản lý nguồn điện và kiểm soát chuyển đổi giữa chế độ ngủ ESP32 tiêu thụ chưa đầy 12uA ở chế độ ngủ nhỏ hơn 1.0mW so với (DTIM = 3)hoặc ít hơn 0.5mW (DTIM = 10) để giữ kết nối với các điểm truy cập

- Khi ở chế độ ngủ, chỉ có bộ phận hiệu chỉnh đồng hồ thời gian thực và cơ quan giám sát vẫn hoạt động Đồng hồ thời gian thực có thể được lập trình để đánh thức ESP32 ở bất kỳ khoảng thời gian cần thiết nào

- ESP32 có thể được lập trình để thức dậy khi một điều kiện chỉ định được phát hiện Tính năng tối thiểu thời gian báo thức của ESP32 có thể được sử dụng bởi thiết bị di động SOC Cho phép chúng vẫn ở chế độ chờ, điện năng thấp cho đến khi cần thiết

- Để đáp ứng nhu cầu điện năng của thiết bị di động và điện tử lắp giáp, ESP32 có thể được lập trình để giảm công suất đầu ra của PA phù hợp với các ứng dụng khác nhau bằng việc tắt khoảng tiêu thụ năng lượng

- Kết nối không dây: Wi-Fi: 802.11 b / g / n Bluetooth: v4.2 BR / EDR và BLE

- Tích hợp mạch nạp và giao tiếp UART CP2102

- Điện áp vào: 5V thông qua cổng USB

- Dòng tiêu thụ: Max 200mA

- Dòng ngõ ra: 15mA mỗi chân

- Số chân I/O: 34 (tất cả các chân I/O đều có Interrupt/PWM/I2C/One-wire, trừ chân D0)

- Số chân Analog Input: 1 (điện áp vào tối đa 3.3V)

- Bộ nhớ Flash: 40mhz80mhz( tùy chỉnh khi lập trình)

- Giao tiếp: cáp Micro USB, tốc độ Baudrate mặc định 9600 hoặc 115200

- Hỗ trợ bảo mật: WPA/WPA2

- Tích hợp giao thức TCP/IP

- Làm việc như các máy chủ có thể kết nối với 5 máy con

- Công suất đầu ra +19.5dBm trong chế độ 802.11b

- Tích hợp chuyển đổi TR, balun, LNA, bộ khuếch đại công suất và phù hợp với mạng

- Wake up và truyền các gói dữ liệu trong = 10000) { entry.show();

97 connectTextBox.setText("Vui long nhap the RFID"); acTempFlag = false; lampTempFlag = false; accessFlag = false;

} else { connectTextBox.setText("Vui long nhap the RFID");

DateTime now = rtc.now(); if(tempSec != now.second()) { tempSec = now.second();

Serial2.print("\""); tftUpdate(); if(endFlag == true) { if(endHour == now.hour() && endMinute == now.minute()) { digitalWrite(acPin, LOW); digitalWrite(ledPin, LOW); digitalWrite(fanPin, LOW); acFlag = false; lampFlag = false; fanFlag = false; setStatusDeviceText();

Serial2.print("t6.font=0"); tftUpdate(); endTimeStatus.setText("Not Set Yet"); endFlag = false;

} else { endTimeStatus.setText("Not Set Yet");

// Prepare key - all keys are set to FFFFFFFFFFFFh at chip delivery from the factory

MFRC522::MIFARE_Key key; for (byte i = 0; i < 6; i++) key.keyByte[i] = 0xFF;

//some variables we need byte block; byte len;

// Reset the loop if no new card present on the sensor/reader This saves the entire process when idle if ( !mfrc522.PICC_IsNewCardPresent()) { return;

// Select one of the cards if ( !mfrc522.PICC_ReadCardSerial()) { return;

} if(writeFlag == false) { byte buffer1[18]; block = 4; len = 18; status = mfrc522.PCD_Authenticate(MFRC522::PICC_CMD_MF_AUTH_KEY_A, 4,

&key, &(mfrc522.uid)); //line 834 of MFRC522.cpp file if (status != MFRC522::STATUS_OK) {

} status = mfrc522.MIFARE_Read(block, buffer1, &len);

99 if (status != MFRC522::STATUS_OK) {

} else { if(buffer1[0] == 1 && buffer1[1] == 2 && buffer1[2] == 3 ) { connectTextBox.setText("Thanh cong!"); delay(2000);

MainPage.show(); setStatusDeviceText(); accessSec = millis(); accessFlag = true; if(endFlag) {

} else { endTimeStatus.setText("Not Set Yet");

} else { connectTextBox.setText("Kg phu hop! Thu lai trong 5s"); accessFlag = false; delay(5000); connectTextBox.setText("Nhap the RFID!");

} else { byte block = 4; status = mfrc522.PCD_Authenticate(MFRC522::PICC_CMD_MF_AUTH_KEY_A, block,

&key, &(mfrc522.uid)); if (status != MFRC522::STATUS_OK) { return;

// Write block byte valueBlockA = 4; byte addBlock[] ={1, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, valueBlockA,

~valueBlockA, valueBlockA, ~valueBlockA}; byte removeBlock[] ={0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, valueBlockA, ~valueBlockA, valueBlockA, ~valueBlockA}; char success[] = "Them the moi thanh cong!"; char failed[] = "That bai!"; char* result; if(addRfidFlag) { status = mfrc522.MIFARE_Write(block, addBlock, 16); result = success;

} else { status = mfrc522.MIFARE_Write(block, removeBlock, 16); result = failed;

} if (status != MFRC522::STATUS_OK) { addNewRfidStatus.setText("that bai!"); return;

} else { addNewRfidStatus.setText(result); delay(2000); addNewRfidStatus.setText("Vui long them the RFID!");

} mfrc522.PICC_HaltA(); mfrc522.PCD_StopCrypto1();

Phục lục Code Phần mềm Android https://github.com/pthieu2812/Thesis

Ngày đăng: 26/09/2024, 12:53

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Trang web, “developer.android.com” trong mục “building apps for wearables “ [2] Trang web, “developer.android.com” trong mục “tin tức công nghệ” với chủ đề“Building Your First App”.Sách tham khảo Sách, tạp chí
Tiêu đề: developer.android.com” trong mục “building apps for wearables “ [2] Trang web, “developer.android.com” trong mục “"tin tức công nghệ"” với chủ đề “"Building Your First App
[3] Nguyễn Văn Hiệp – Đinh Quang Hiệp (2014), “Lập trình Android cơ bản”, Đại Học SPKT HCM.Tiếng Anh Sách, tạp chí
Tiêu đề: Lập trình Android cơ bản
Tác giả: Nguyễn Văn Hiệp – Đinh Quang Hiệp
Năm: 2014
[5] MQTT Android Client Tutorial, https://wildanmsyah.wordpress.com/2017/05/11/mqtt-android-client-tutorial/ Link
[6] MQTT Arduino Tutorial, https://techtutorialsx.com/2017/04/09/esp8266-connecting-to-mqtt-broker/ Link
[7] ESP32 HMI Nextion Tutorial, https://nextion.ca/portfolio-items/nextion-iteadlib-and-esp32-step-by-step/ Link
[8] ESP32 Firebase Tutorial, https://github.com/mobizt/Firebase-ESP32 [9] Android Firebase Tutorial Link
[2]. Developing for Android [Devavrata Sharma] Khác

HÌNH ẢNH LIÊN QUAN

Hình 4. 2 Tải phần mềm Android Studio. - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 2 Tải phần mềm Android Studio (Trang 50)
Hình 4. 4 Kết thúc quá trình cài đặt phần mềm Android Studio - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 4 Kết thúc quá trình cài đặt phần mềm Android Studio (Trang 51)
Hình 4. 6 Màn hình tạo project Android Studio. - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 6 Màn hình tạo project Android Studio (Trang 52)
Hình 4. 10 Màn hình thẻ con Text - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 10 Màn hình thẻ con Text (Trang 54)
Hình 4. 11 Giao diện hiển thị của Firebase - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 11 Giao diện hiển thị của Firebase (Trang 55)
Hình 4. 12 Cửa sổ tạo 1 project Firebase - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 12 Cửa sổ tạo 1 project Firebase (Trang 56)
Hình 4. 13  Các package giữa Firebase-App - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 13 Các package giữa Firebase-App (Trang 56)
Hình 4. 14 Tải tập tin google-services.json - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 14 Tải tập tin google-services.json (Trang 57)
Hình 4. 15 Các câu lệnh giúp App kết nối Firebase - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 15 Các câu lệnh giúp App kết nối Firebase (Trang 57)
Hình 4. 16:  Cho phép can thiệp rules vào RealtimeDatabase - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 16: Cho phép can thiệp rules vào RealtimeDatabase (Trang 58)
Hình 4. 22: Màn hình khi mở ứng dụng. - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 22: Màn hình khi mở ứng dụng (Trang 62)
Hình 4. 33 Lựa chọn cổng COM thích hợp với thiết bị nạp - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 33 Lựa chọn cổng COM thích hợp với thiết bị nạp (Trang 74)
Hình 4. 35 Thiết lập các thông số cho ESP32 cho Arduino - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 35 Thiết lập các thông số cho ESP32 cho Arduino (Trang 75)
Hình 4. 44: Thiết kế giao diện trang 1 của màn hình - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Hình 4. 44: Thiết kế giao diện trang 1 của màn hình (Trang 83)
Bảng 4. 1 Các linh kiện thiết kế phần cứng - xây dựng ứng dụng hệ thống giám sát điều khiển các thiết bị điện
Bảng 4. 1 Các linh kiện thiết kế phần cứng (Trang 89)

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

TÀI LIỆU LIÊN QUAN

w