Để hạn chế vấn đề nhân viên gian lận thời gian khách thuê phòng khách sạn, nhóm quyết định thực hiện đề tài “ Thiết kế và thi công hệ thống quản lý thời gian sử dụng phòng khách sạn” để
Trang 1Nội dung Số trang NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP I LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP III LỜI CAM ĐOAN V LỜI CẢM ƠN VI MỤC LỤC VII DANH MỤC HÌNH XI DANH MỤC BẢNG XIV TÓM TẮT XV
CHƯƠNG 1 TỔNG QUAN 1
1.1 ĐẶT VẤN ĐỀ 1
1.2 MỤC TIÊU 1
1.3 NỘI DUNG NGHIÊN CỨU 1
1.4 GIỚI HẠN 2
1.5 BỐ CỤC 2
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 4
2.1 CÁC KIẾN THỨC CƠ BẢN 4
2.1.1 Tổng quan về website 4
2.1.2 Tổng quan về webserver 4
2.1.3 Tổng quan về Internet of Things 5
a Giới thiệu 5
b Ứng dụng của IoTs 6
2.1.4 Giới thiệu về MySQL 6
2.1.5 Tổng quan về công nghệ LoRa 7
Trang 2b Nguyên lý hoạt động 7
c Cấu hình module RF LoRa SX1278 12
2.2 CÁC CHUẨN GIAO TIẾP 15
2.2.1 Giới thiệu về mạng không dây 15
a Giới thiệu 15
b Nguyên tắc hoạt động 15
2.2.2 Chuẩn giao tiếp UART 16
a Giới thiệu 16
b Các thông số UART 17
CHƯƠNG 3 TÍNH TOÁN VÀ THIẾT KẾ 19
3.1 GIỚI THIỆU 19
3.2 THIẾT KẾ SƠ ĐỒ KHỐI HỆ THỐNG 19
3.3 TÍNH TOÁN VÀ THIẾT KẾ MẠCH 20
3.3.1 Khối thu thập dữ liệu 20
a Vai trò 20
b Phân tích lựa chọn linh kiện 20
c Các thông số chính 22
d Sơ đồ nguyên lý 22
3.3.2 Khối xử lý trung tâm 25
a Vai trò 25
b Phân tích lựa chọn linh kiện 25
c Các thông số chính 26
d Sơ đồ nguyên lý 28
3.3.3 Khối nguồn 29
Trang 3b Tính toán công suất 30
3.4 SƠ ĐỒ NGUYÊN LÝ TOÀN MẠCH 32
3.5 CÁCH THỨC HOẠT ĐỘNG CỦA HỆ THỐNG 33
CHƯƠNG 4 THI CÔNG HỆ THỐNG 34
4.1 GIỚI THIỆU 34
4.2 THI CÔNG HỆ THỐNG 34
4.2.1 Thi công board mạch 34
4.2.2 Lắp ráp và kiểm tra 35
4.3 THI CÔNG KHUNG ĐỠ 38
4.4 LẬP TRÌNH HỆ THỐNG 39
4.4.1 Lưu đồ giải thuật 39
a Lưu đồ toàn hệ thống 39
b Lưu đồ chương trình con quá trình kiểm tra dữ liệu và đưa dữ liệu lên webserver 40
4.4.2 Phần mềm lập trình cho vi điều khiển 41
a Giới thiệu phần mềm lập trình Arduino IDE 41
b Giới thiệu phần mềm lập trình và xây dựng Webserver 45
c Viết chương trình hệ thống 45
4.5 TÀI LIỆU HƯỚNG DẪN SỬ DỤNG 57
4.5.1 Hướng dẫn sử dụng phần cứng 57
4.5.2 Hướng dẫn sử dụng phần mềm 58
a Các bước sử dụng website để quan sát trạng thái phòng 58
b Các bước để thay đổi tên phòng, giá phòng và xem dữ liệu của phòng theo ngày trong tháng 59
Trang 4CHƯƠNG 5 KẾT QUẢ - NHẬN XÉT – ĐÁNH GIÁ 63
5.1 GIAO DIỆN WEBSITE 63
5.2 MẠCH CHẠY THỰC TẾ 65
5.3 GIÁ THÀNH SẢN PHẨM 67
CHƯƠNG 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 68
6.1 KẾT LUẬN 68
6.2 HƯỚNG PHÁT TRIỂN 68
TÀI LIỆU THAM KHẢO 69
PHỤ LỤC 70
Trang 5Hình 2.1 Hệ thống Webserver điển hình 5
Hình 2.2 Kiến trúc một mô hình IoTs điển hình 6
Hình 2.3 Kích thước và sơ đồ chân Module RF LoRa SX1278 8
Hình 2.4 Mô tả truyền điểm – điểm 10
Hình 2.5 Mô tả truyền cố định 11
Hình 2.6 Mô tả truyền broadcast 12
Hình 2.7 Mạch chuyển giao tiếp USB UART SX1278 12
Hình 2.8 Giao diện khi khởi động phần mềm RF_Setting_EN_V2.7 13
Hình 2.9 Giao diện phần mềm RF_Setting_EN_V2.7 13
Hình 2.10 Chuyển sang chế độ sleep cho Module RF LoRa SX1278 13
Hình 2.11 Chọn chế độ Target 14
Hình 2.12 Chọn chế độ Transparent 15
Hình 2.13 Mô hình hệ thống WiFi trong nhà 16
Hình 2.14 Hệ thống truyền dữ liệu bất đồng bộ 17
Hình 2.15 Khung truyền dữ liệu của chuẩn giao tiếp UART 17
Hình 3.1 Sơ đồ khối hệ thống 19
Hình 3.2 Module RF LoRa SX1278 21
Hình 3.3 Sơ đồ nguyên lý kết nối module RF LoRa SX1278 và nguồn AC-DC 5V-1A 23
Hình 3.4 Sơ đồ nguyên lý kết nối module RF LoRa SX1278 Master với module Node MCU ESP8266 24
Hình 3.5 Ảnh thực tế Node MCU ESP8266 26
Trang 6Hình 3.7 Giao tiếp giữa Node MCU ESP8266 module RF LoRa SX1278 28
Hình 3.8 Sơ đồ chân AMS1117 30
Hình 3.9 Sơ đồ kết nối IC AMS1117 30
Hình 3.10 Mạch nguồn chuyên dụng 5V-1A 31
Hình 3.11 Sơ đồ nguyên lý toàn mạch 32
Hình 4.1 Mạch in sau khi vẽ xong 35
Hình 4.2 Mạch sau khi ủi 36
Hình 4.3 Mạch sau khi ăn mòn 36
Hình 4.4 Mặt sau mạch sau khi hàn linh kiện 37
Hình 4.5 Mặt trước mạch sau khi hàn linh kiện 37
Hình 4.6 Mạch khối xử lý trung tâm sau khi gắn các Module 37
Hình 4.7 Mạch khối trung tâm đóng khung bảo vệ hoàn chỉnh 38
Hình 4.8 Lưu đồ toàn hệ thống 39
Hình 4.9 Lưu đồ chương trình con quá trình kiểm tra và gửi dữ liệu lên webserver 40
Hình 4.10 Logo phần mềm Arduino 41
Hình 4.11 Giao diện của phần mềm Arduino 42
Hình 4.12 Bước nhập thư viện cho Arduino 42
Hình 4.13 Bước chọn Boards Manager 43
Hình 4.14 Bước install ESP8266 Community 43
Hình 4.15 Chương trình cho Node MCU ESP8266 trên phần mềm Arduino 44 Hình 4.16 Nạp chương trình cho vi điều khiển 44
Trang 7Hình 4.18 Giao diện đăng nhập khi truy cập web 58
Hình 4.19 Giao diện khi truy cập website 59
Hình 4.20 Chọn View để chuyển sang giao diện hiển thị dữ liệu của phòng theo ngày trong tháng 59
Hình 4.21 Giao diện hiển thị dữ liệu của phòng theo từng ngày trong tháng 60 Hình 4.22 Chọn Edit để thay đổi tên phòng và giá phòng 60
Hình 4.23 Thay đổi tên phòng giá phòng 61
Hình 4.24 Giao diện khi truy cập website 61
Hình 4.25 Chọn biểu tượng calendar để xem dữ liệu của các tháng khác nhau 62
Hình 5.1 Giao diện website khi đăng nhập 63
Hình 5.2 Giao diện website khi tất cả các phòng đang được sử dụng 64
Hình 5.3 Giao diện website khi có 2 phòng đang được sử dụng 64
Hình 5.4 Kết quả hệ thống module thu thập dữ liệu ở mỗi phòng 65
Hình 5.5 Kết quả hệ thống module ở trung tâm 66
Trang 8Bảng 2.1 Tên và chức năng các chân của Module RF LoRa SX1278 8
Bảng 2.2 Các chế độ hoạt động của Module RF LoRa Sx1278 9
Bảng 3.1 So sánh giữa các giao thức không dây trong mô hình IoTs 20
Bảng 3.2 Thông số kỹ thuật module RF LoRa SX1278 22
Bảng 3.3 Kết nối module RF LoRa SX1278 và module nguồn AC-DC 5V-1A23 Bảng 3.4 Kết nối module RF LoRa SX1278 với module Node MCU ESP826624 Bảng 3.5 Kết nối giữa Node MCU ESP8266 module RF LoRa SX1278 28
Bảng 4.1 Danh sách linh kiện sử dụng trong mạch 35
Bảng 5.1 Danh sách giá các linh kiện sử dụng trong mạch 67
Trang 9
Hiện nay, những hệ thống thông minh đang là xu hướng của thế giới, được
áp dụng vào hầu hết mọi lĩnh vực của cuộc sống như công nghiệp, nông nghiệp, dịch vụ hay thậm chí là quản lý Trong quá trình tìm hiểu lý thuyết lẫn tình hình thực tế, chúng tôi thấy được vấn đề ở lĩnh vực quản lý thời gian sử dụng phòng khách sạn, mô hình quản lý vẫn còn rất thủ công, được thực hiện chủ yếu bằng con người, mặc dù lĩnh vực này thật sự rất phổ biến và xuất hiện khắp mọi nơi Vì vậy,
hệ thống quản lý thời gian sử dụng phòng khách sạn đang ngày càng đòi hỏi sự thay đổi, cải tiến để đáp ứng được xu thế của thời đại
Nhóm thực hiện đề tài sẽ giới thiệu và trình bày hệ thống quản lý thời gian
sử dụng phòng khách sạn, dùng công nghệ Long Range(LoRa) trong truyền nhận
dữ liệu Trong thực tế, có rất nhiều công nghệ truyền dẫn không dây như: hồng ngoại, bluetooth, RF tuy nhiên hầu hết đều truyền trong khoản cách ngắn Trong khi đó, LoRa cung cấp khả năng vượt trội về tầm xa Do đó, đề tài này được thực hiện nhằm đóng góp giải pháp cho việc quản lý thời gian sử dụng phòng khách sạn với tầm kiểm soát xa hơn, rộng hơn
Mô hình gồm có chức năng chính bao gồm:
Chức năng hiển thị trạng thái sử dụng của các phòng, thông qua webserver bằng trình duyệt trên các nền tảng PC hoặc Mobile
Chức năng quản lý dữ liệu thời gian sử dụng và chi phí sử dụng của mỗi phòng theo ngày và theo tháng, đồng thời người dùng có thể truy xuất dữ liệu theo thời gian thực thông qua webserver
Thiết bị sử dụng module Node MCU ESP8266 làm vi điều khiển trung tâm
để điều khiển các module thu phát RF LoRa SX1278
Trang 10CHƯƠNG 1 TỔNG QUAN
1.1 ĐẶT VẤN ĐỀ
Hiện nay, việc đầu tư vào lĩnh vực khách sạn khá dễ dàng và đem lại lợi nhuận rất cao nên nhiều nhà đầu tư rất sẵn sàng rót vốn vào lĩnh vực này Tuy nhiên do thời gian và khoảng cách xa, người chủ khách sạn khó có thể kiểm soát được doanh số kinh doanh có chính xác hay bị gian lận, bởi việc quản lý thời gian khách sử dụng phòng vẫn phải thông qua nhân viên
Để hạn chế vấn đề nhân viên gian lận thời gian khách thuê phòng khách sạn,
nhóm quyết định thực hiện đề tài “ Thiết kế và thi công hệ thống quản lý thời gian sử dụng phòng khách sạn” để giúp chủ khách sạn có thể cập nhật thông tin
thời gian sử dụng của phòng, truy xuất dữ liệu theo thời gian thực thông qua website
1.2 MỤC TIÊU
Thiết kế và thi công được hệ thống có khả năng cập nhật liên tục trạng thái
và thời gian sử dụng phòng thông qua website Đồng thời hệ thống cũng có thể tính được doanh thu từng phòng
1.3 NỘI DUNG NGHIÊN CỨU
Trong quá trình thực hiện Đồ án tốt nghiệp với đề tài “ Thiết kế và thi công
hệ thống quản lý thời gian sử dụng phòng khách sạn”, chúng tôi đã tập trung giải quyết và hoàn thành được những nội dung sau:
Nội dung 1: Kết nối module RF LoRa SX1278 trung tâm ( module RF
LoRa SX1278 master) và bốn module RF LoRa SX1278 từng phòng ( module RF LoRa SX1278 slave)
Nội dung 2: Kết nối Node MCU ESP8266 với database qua internet để cập
nhật dữ liệu
Trang 11 Nội dung 3: Nghiên cứu xây dựng webserver để truy cập cũng như quản lý
cơ sở dữ liệu
Nội dung 4: Thiết kế mô hình hệ thống và giao diện website
Nội dung 5: Thi công phần cứng, chạy thử nghiệm và hiệu chỉnh hệ thống
Nội dung 6: Viết báo cáo thực hiện
Nội dung 7: Bảo vệ luận văn
1.4 GIỚI HẠN
Các thông số giới hạn của đề tài bao gồm:
Có thể quản lý các phòng trong phạm vi bán kính 100m so với bộ vi điều khiển trung tâm
Số lượng phòng tối đa có thể quản lý là 255 phòng
Hệ thống chỉ ở mức độ giám sát thời gian sử dụng phòng trên website
Hệ thống chỉ hoạt động khi được cấp điện và kết nối internet liên tục
Chỉ có thể truy xuất dữ liệu trong vòng một năm
Chương 2: Cơ Sở Lý Thuyết
Chương 2, nhóm tổng quát các kiến thức cơ bản để xây dựng được mô hinh này Bao gồm các lý thuyết, khái niệm các chuẩn giao tiếp, các phần mềm ứng dụng, các công cụ cần thiết
Trang 12 Chương 3: Tính Toán và Thiết Kế
Chương 3 thiết kế sơ đồ khối hệ thống, giải thích chức năng các khối, tính toán và thiết kế mạch và lựa chọn linh kiện Cụ thể, tính toán và kết nối cho các khối điều khiển trung tâm, khối nguồn, khối thu thập và xử lý dữ liệu và khối website
Chương 4: Thi Công Hệ Thống
Chương 4 trình bày cách cài đặt hệ điều hành, cài đặt thư viện, các phương pháp điều khiển và hiển thị, lưu đồ giải thuật chính, lưu đồ giải thuật con và giải thích Đồng thời trình bày các bước thi công mạch, sơ đồ mạch layout, lắp ráp, kiểm tra sản phẩm, thi công mô hình, hướng dẫn sử dụng
Chương 5: Kết quả - Nhận Xét – Đánh giá
Chương 5 nêu lên kết quả đã đạt được so với mục tiêu ban đầu về giao diện website, mạch chạy thực tế Đồng thời đưa ra nhận xét và đánh giá về kết quả thực hiện đề tài
Chương 6: Kết Luận – Hướng Phát Triển
Chương này đưa ra kết luận chung về những gì đã thực hiện đồng thời đúc kết lại ưu khuyết điểm để đưa ra hướng phát triển cho đề tài để có thể ứng dụng tốt trong thực tế
Trang 13CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
Ở Chương 2, nhóm sẽ tổng hợp nêu lên những kiến thức được xem là nền tảng để có thể xây dựng được hệ thống này bao gồm: Tổng quan về website và xây dựng hệ thống webserver, hệ thống IoTs ứng dụng trong điều khiển, hệ thống WiFi và ứng dụng của hệ thống vào IoTs, giới thiệu về MySQL và tổng quan về công nghệ truyền không dây LoRa
Về phần mềm nhóm nêu lên các phần kiến thức như: sơ lược về lập trình, các công cụ lập trình
2.1 CÁC KIẾN THỨC CƠ BẢN
2.1.1 Tổng quan về website
World Wide Web (www), hay gọi tắt là web, là một không gian thông tin toàn cầu mà mọi người có thể truy nhập (gửi và nhận thông tin) qua các máy tính hoặc mobile có kết nối với mạng Internet Thuật ngữ này thường được hiểu nhầm
là từ đồng nghĩa với chính thuật ngữ Internet Nhưng web thực ra chỉ là một trong các dịch vụ chạy trên Internet
Đặc điểm tiện lợi của web: Thông tin dễ dàng cập nhật, thay đổi, khách hàng
có thể xem thông tin ngay tức khắc, ở bất kỳ nơi nào, tiết kiệm chi phí in ấn, gửi bưu điện, fax, thông tin không giới hạn muốn đăng bao nhiêu thông tin cũng được, không giới hạn số lượng thông tin, hình ảnh và không giới hạn phạm vi khu vực
sử dụng toàn thế giới có thể truy cập
2.1.2 Tổng quan về webserver
Web Server là một hay nhiều máy tính mà tại đó chứa đựng mã nguồn của trang web, máy tính đó còn phải được cài các chương trình phục vụ web Chính những chương trình này sẽ thiết lập các kết nối để người trình duyệt web có thể truy cập được vào trang web (ví dụ như IIS của Microsoft)
Trang 14Hình 2.4 Hệ thống Webserver điển hình
Trong đề tài nhóm sử dụng Web Server để đóng vai trò như một máy chủ để
có thể lưu dữ liệu, cập nhật dữ liệu hoạt động của phòng, cũng như truy xuất thời gian hoạt động của mỗi phòng khi người dùng truy cập
Trong webserver của đề tài thì nhóm sử dụng hosting để tải dữ liệu lên cũng như lưu trữ dữ liệu, một database để chứa tất cả nguồn của trang webserver như là: tên đăng nhập, mật khẩu, thời gian, dữ liệu thời gian sử dụng, doanh thu của phòng theo thời gian hiện tại, theo ngày và theo tháng,
Để làm được điều đó thì cũng cần một chương trình trung gian ở server để nhận dữ liệu từ hệ thống cũng như trích xuất dữ liệu từ database Chương trình ở server nhóm đã lựa chọn PHP, nhóm đã sử dụng ngôn ngữ PHP để lập trình để tiếp nhận dữ liệu từ hệ thống IoTs và thiết lập cơ sở dữ liệu
2.1.3 Tổng quan về Internet of Things
a Giới thiệu
Internet of Things (IoTs) mô tả mạng lưới kết nối vạn vật Khi mà mỗi đồ vật hay cả con người được cung cấp một định danh riêng và tất cả có khả năng truyền tải, trao đổi thông tin, dữ liệu qua một mạng duy nhất IoTs phát triển từ
sự kết hợp của công nghệ không dây, công nghệ vi cơ điện tử và Internet Nói đơn giản IoTs là một tập hợp các thiết bị có khả năng kết nối với nhau, với
Internet và với thế giới bên ngoài để thực hiện một công việc nào đó
Trang 15Hình 2.5 Kiến trúc một mô hình IoTs điển hình
b Ứng dụng của IoTs
IoTs có ứng dụng trong nhiều lĩnh vực như: công nghiệp (điều khiển hệ thống máy tự động trong nhà máy, giám sát hệ thống cảm biến trong nhà máy, tự động hóa điều khiển các thiết bị tự động trong nhà máy), quản lí các ngành, phản hồi trong các tinh huống khẩn cấp, quản lí các thiết bị cá nhân, đồng hồ đo thông minh,
tự động hóa ngôi nhà và các thiết bị cần thiết
2.1.4 Giới thiệu về MySQL
MySQL là một Database Server, là hệ thống quản lý cơ sở dữ liệu quan hệ Trong việc lưu trữ, tìm kiếm, sắp xếp và truy vấn dữ liệu, nó rất nhanh và mạnh
mẽ MySQL Server điều khiển truy cập dữ liệu đa người dùng cùng một thời điểm, cung cấp khả năng truy cập dữ liệu nhanh, bảo đảm cho người sử dụng được cấp quyền truy cập dữ liệu của hệ thống Do vậy, MySQL là đa người dùng, đa luồng MySQL có thể quản lý tới hàng Terabyte dữ liệu, hàng triệu bản ghi, chạy trên nhiều môi trường khác nhau, có giao diện tương đối dễ sử dụng, có thể truy vấn dữ liệu thông qua câu lệnh SQL
Trang 16MySQL được sử dụng chung với PHP trong những trang web cần sử dụng đến cơ sở dữ liệu
2.1.5 Tổng quan về công nghệ LoRa
a Giới thiệu
LoRa là viết tắt của Long Range Radio được nghiên cứu và phát triển bởi Cycleo và sau này được mua lại bởi công ty Semtech năm 2012 Với công nghệ này, chúng ta có thể truyền dữ liệu với khoảng cách lên hàng km mà không cần các mạch khuếch đại công suất; từ đó giúp tiết kiệm năng lượng tiêu thụ khi truyền/nhận dữ liệu Do đó, LoRa có thể được áp dụng rộng rãi trong các ứng dụng thu thập dữ liệu và gửi dữ liệu về trung tâm cách xa hàng km và có thể hoạt động với battery trong thời gian dài trước khi cần thay pin
b Nguyên lý hoạt động
LoRa sử dụng kỹ thuật điều chế gọi là Chirp Spread Spectrum Có thể hiểu nôm na nguyên lý này là dữ liệu sẽ được băm bằng các xung cao tần để tạo ra tín hiệu có dãy tần số cao hơn tần số của dữ liệu gốc (cái này gọi là chipped); sau đó tín hiệu cao tần này tiếp tục được mã hoá theo các chuỗi chirp signal (là các tín hiệu hình sin có tần số thay đổi theo thời gian; có 2 loại chirp signal là up-chirp có tần số tăng theo thời gian và down-chirp có tần số giảm theo thời gian; và việc mã hoá theo nguyên tắc bit 1 sẽ sử dụng up-chirp, và bit 0 sẽ sử dụng down-chirp) trước khi truyền ra anten để gửi đi
Theo Semtech công bố thì nguyên lý này giúp giảm độ phức tạp và độ chính xác cần thiết của mạch nhận để có thể giải mã và điều chế lại dữ liệu; hơn nữa LoRa không cần công suất phát lớn mà vẫn có thể truyền xa vì tín hiệu LoRa có thể được nhận ở khoảng cách xa ngay cả độ mạnh tín hiệu thấp hơn cả nhiễu môi trường xung quanh
Băng tần làm việc của LoRa từ 430MHz đến 915MHz cho từng khu vực khác nhau trên thế giới:
430MHz cho châu Á
Trang 17 780MHz cho Trung Quốc
433MHz hoặc 866MHz cho châu Âu
915MHz cho USA
Nhờ sử dụng chirp signal mà các tín hiệu LoRa với các chirp rate khác nhau
có thể hoạt động trong cùng một khu vực mà không gây nhiễu cho nhau Điều này cho phép nhiều thiết bị LoRa có thể trao đổi dữ liệu trên nhiều kênh đồng thời (mỗi kênh cho một chirprate)
Hình 2.3 Kích thước và sơ đồ chân Module RF LoRa SX1278
Bảng 2.1 Tên và chức năng các chân của Module RF LoRa SX1278
1 M0 Ghép với M1 và quyết định bốn chế độ hoạt động
2 M1 Ghép với M0 và quyết định bốn chế độ hoạt động
3 RDX Đầu vào TTL UART, kết nối với đầu ra TXD bên
ngoài ( Node MCU ESP8266)
4 TDX Đầu ra TTL UART, kết nối với đầu vào TXD bên
ngoài ( Node MCU ESP8266)
Trang 185 AUX Để biểu thị trạng thái làm việc của module
Thiết bị nhận nên được đặt ở mode
0 hoặc mode 1
1(Wake-up) 0 1 Thiết bị truyền được
đặt ở mode 1
Thiết bị nhận có thể làm việc ở mode 0, mode 1, mode 2
2 (Power-saving) 1 0 Thiết bị nhận được
đặt ở mode 2
Thiết bị truyền không được phép đặt ở mode này
3 (Sleep) 1 1 Cấu hình thông số
Module RF LoRa SX1278 có ba cách để truyền dữ liệu giữa các module với nhau:
Truyền điểm – điểm: các module phải được cấu hình cùng kênh và cùng địa chỉ
Trang 19Hình 2.4 Mô tả truyền điểm – điểm
Truyền cố định: các module khác kênh, khác địa chỉ có thể truyền nhận dữ liệu với nhau với điều kiện thiết bị truyền phải gửi kèm kênh + địa chỉ của thiết bị nhận khi gửi dữ liệu
Trang 20Hình 2.5 Mô tả truyền cố định
Truyền broadcast: một module được cấu hình với địa chỉ là FF FF, module này có thể phát dữ liệu đến tất cả các module có cùng kênh
Trang 21Hình 2.6 Mô tả truyền broadcast
c Cấu hình module RF LoRa SX1278
Cấu hình Module RF LoRa SX1278 SX1278 chính là cài đặt địa chỉ, số kênh, tốc độ truyền và các cài đặt cần thiết để có thể truyền nhận dữ liệu giữa các module
RF LoRa SX1278 với nhau
Bước 1 Cần phải có mạch chuyển USB-UART để giao tiếp giữa Module RF
LoRa SX1278 và máy tính qua cổng USB, giúp cấu hình với Software hoặc truyền nhận dữ liệu trực tiếp với máy tính dễ dàng
Hình 2.7 Mạch chuyển giao tiếp USB UART SX1278
Trang 22Ngoài ra chúng ta cũng cần phải có phần mềm cấu hình RF_Setting_EN_V2.7
Hình 2.8 Giao diện khi khởi động phần mềm RF_Setting_EN_V2.7
Hình 2.9 Giao diện phần mềm RF_Setting_EN_V2.7
Trước khi cấu hình, Module RF LoRa SX1278 phải chuyển qua chế độ sleep, ta cần gỡ 2 jump kết nối trên mạch chuyển USB-UART như hình để chân M0, M1 lên mức 1
Hình 2.10 Chuyển sang chế độ sleep cho Module RF LoRa SX1278
Module RF LoRa SX1278 có 32 kênh ( 0 – 31) và 65536 (0-65535) địa chỉ
Trang 23Địa chỉ cuối 65535 được mặc định là địa chỉ host ( server)
Sau đây là cách cấu hình cho từng hình thức truyền:
Cấu hình truyền điểm điểm: ở cách truyền này, cả 2 LoRa được đặt cùng địa chỉ và cùng kênh
Cấu hình truyền cố định: ở cách này thì phải chọn chế độ Target trong mục Transmit mode
Hình 2.11 Chọn chế độ Target
Ở hình thức truyền cố định, khi gửi dữ liệu thì phải kèm theo địa chỉ và kênh module RF LoRa SX1278 cần gửi đến Ví dụ module RF LoRa SX1278 A
có địa chỉ 01 kênh 01 muốn kết nối với module RF LoRa SX1278 B có địa chỉ
02, kênh 02, thì khi module A gửi dữ liệu phải kèm theo địa chỉ và kênh của module B là: 00 02 02 < data>
Đây cũng chính là chế độ mà nhóm thực hiện đồ án chọn, một Module RF LoRa SX1278 sẽ được cấu hình địa chỉ host ( 65535) và đặt ở khối điều khiển trung tâm, các module còn lại sẽ được cấu hình cùng kênh nhưng khác địa chỉ
Cấu hình truyền broadcast: khi chọn chế độ này thì phải chọn Transparent trong mục Transmit mode
Trang 24Hình 2.12 Chọn chế độ Transparent
2.2 CÁC CHUẨN GIAO TIẾP
2.2.1 Giới thiệu về mạng không dây
a Giới thiệu
WiFi là viết tắt của Wireless Fidelity, được gọi chung là mạng không dây sử dụng sóng vô tuyến, loại sóng vô tuyến này tương tự như sóng truyền hình, điện thoại và radio
WiFi phát sóng trong phạm vi nhất định, các thiết bị điện tử tiêu dùng ngày nay như laptop, smartphone hoặc máy tính bảng có thể kết nối và truy cập internet trong tầm phủ sóng
b Nguyên tắc hoạt động
Để tạo được kết nối WiFi nhất thiết phải có bộ thu phát, thông tin từ mạng internet qua kết nối hữu tuyến rồi chuyển nó sang tín hiệu vô tuyến và gửi đi, bộ chuyển tín hiệu không dây trên các thiết bị di động thu nhận tín hiệu này rồi giải
mã nó sang những dữ liệu cần thiết Quá trình này có thể thực hiện ngược lại, nhận tín hiệu vô tuyến từ adapter và giải mã chúng rồi gửi qua internet
Trang 25Hình 2.16 Mô hình hệ thống WiFi trong nhà
Tuy nói WiFi tương tự như sóng vô tuyến truyền hình, radio hay điện thoại nhưng nó vẫn khác các loại sóng kia ở mức độ tần số hoạt động
Sóng WiFi truyền nhận dữ liệu ở tần số 2,5GHz đến 5GHz Tần số cao này cho phép nó mang nhiều dữ liệu hơn nhưng phạm vi truyền của nó bị giới hạn; còn các loại sóng khác, tuy tần số thấp nhưng có thể truyền đi được rất xa
Kết nối WiFi sử dụng chuẩn kết nối 802.11 trong thư viện IEEE (Institute of Electrical and Electronics Engineers), chuẩn này bao gồm 4 chuẩn nhỏ a/b/g/n
2.2.2 Chuẩn giao tiếp UART
Trang 26Hình 2.17 Hệ thống truyền dữ liệu bất đồng bộ
b Các thông số UART
Hình 2.18 Khung truyền dữ liệu của chuẩn giao tiếp UART
Dưới đây là các thông số thường có của UART:
Baud Rate (tốc độ baud): Khi truyền nhận không đồng bộ để hai đối tượng hiểu được nhau thì cần quy định một khoảng thời gian cho một bit truyền nhận, nghĩa là trước khi truyền thì tốc độ phải được cài đặt đầu tiên Theo định nghĩa thì tốc độ baud là số bit truyền trong một giây
Frame (khung truyền): Do kiểu truyền thông nối tiếp này rất dễ mất dữ liệu nên ngoài tốc độ, khung truyền cũng được cài đặt từ ban đầu để tránh bớt sự mất mát dữ liệu này Khung truyền quy định số bit trong mỗi lần truyền, các bit báo hiệu như start, stop, các bit kiểm tra như parity, và số bit trong một data
Start Bit: Là bit bắt đầu trong khung truyền Bit này nhằm mục đích báo cho thiết bị nhận biết quá trình truyền bắt đầu
Data: Dữ liệu cần truyền Data không nhất thiết phải 8 bit Trong UART bit LSB được truyền đi trước, bit MSB được truyền đi sau
Trang 27Parity Bit: Là bit kiểm tra dữ liệu được truyền có chính xác không Có 2 loại
parity: chẵn (even parity), lẻ (odd parity) Parity chẵn là bit parity thêm vào để số
lượng số 1 trong data và parity là chẵn Parity lẻ là bit parity thêm vào để số lượng
số 1 trong data và parity là lẻ Bit Parity là không bắt buộc nên có thể dùng hoặc
không
Stop Bit: là bit báo cáo kết thúc khung truyền, có thể có 1 hoặc 2 bit stop
Trang 28CHƯƠNG 3 TÍNH TOÁN VÀ THIẾT KẾ
3.1 GIỚI THIỆU
Đề tài này yêu cầu thiết kế hệ thống để thu thập dữ liệu thời gian sử dụng
ở mỗi phòng, từ vi xử lý đưa dữ liệu hiển thị lên website Ở chương này sẽ tập trung tính toán phần công suất và thiết kế các khối, để lựa chọn linh kiện và thiết bị phù hợp cho hệ thống Thiết kế giao diện giám sát mô hình hoạt động Các yêu cầu đặt ra cho mô hình như sau:
Thu thập dữ liệu thời gian sử dụng, thời gian phòng hoạt động và không hoạt động, chuyển chế độ và đáp ứng kịp thời khi thay đổi dữ liệu
Dữ liệu truyền đến server nhanh chóng và đầy đủ và chính xác
Kết cấu chắc chắn, gọn nhẹ, giao diện điều khiển đơn giản, dễ dàng sử dụng
Phù hợp với điều kiện kinh tế
3.2 THIẾT KẾ SƠ ĐỒ KHỐI HỆ THỐNG
Sau một thời gian khảo sát và tìm hiểu các yêu cầu đề tài, dựa trên các yêu cầu của một hệ thống quản lý thời gian sử dụng phòng khách sạn, sơ đồ khối toàn
hệ thống được trình bày như hình sau:
Hình 3.1 Sơ đồ khối hệ thống
Chức năng của các khối như sau:
Trang 29Khối xử lý trung tâm: chức năng chính là xử lý, trao đổi dữ liệu từ các
module trong khối thu thập dữ liệu và đưa dữ liệu thu thập đã được xử lý lên khối website
Khối thu thập dữ liệu: có chức năng thu thập dữ liệu và gửi dữ liệu về khối
xử lý trung tâm, nhận dữ liệu từ vi điều khiển sau đó chuyển đổi thành sóng RF để truyền đi và ngược lại
Khối website: là hệ thống website có chức năng hiển thị dữ liệu, thông qua
database có thể truy xuất dữ liệu thu thập được
Khối nguồn: đây là khối cung cấp nguồn vào cho toàn bộ hệ thống bao gồm
khối xử lý trung tâm, các module khối thu thập dữ liệu
3.3 TÍNH TOÁN VÀ THIẾT KẾ MẠCH
3.3.1 Khối thu thập dữ liệu
a Vai trò
Khối thu thập dữ liệu có chức năng thu thập dữ liệu, giao tiếp và gửi dữ liệu
về khối xử lý trung tâm để xử lý và hiển thị
b Phân tích lựa chọn linh kiện
Các công nghệ không dây được sử dụng phổ biến hiện nay bao gồm: Bluetooth, Zigbee, LoRa,… Các so sánh về hiệu năng hoạt động giữa công nghệ LoRa và các công nghệ không dây phổ biến khác sử dụng trong lĩnh vực IoTs như Bluetooth, ZigBee, WiFi, trình bày dưới bảng sau
Bảng 3.1 So sánh giữa các giao thức không dây trong mô hình IoTs
Trang 30DSSS ( Direct Spread Spectrum Sequence)
OFDM ( Orthogonal Frequency Division Multiplexing)
CSS ( Chirp Spread Spectrum)
Số liệu ở Bảng 3.1 cho thấy, công nghệ LoRa rất phù hợp với các ứng dụng
có vùng phủ sóng tầm xa hoặc môi trường có vật cản như môi trường khách sạn LoRa cho phép truyền thông tin tới nhiều thiết bị với tốc độ cao, các thiết bị có thể kết nối với nhau ở phạm vi rất rộng và đặc biệt các thiết bị LoRa có thể duy trì kết nối và chia sẻ dữ liệu trong thời gian dài
Với giá thành thấp cùng với những ưu điểm của công nghệ LoRa, nhóm đã quyết định chọn module RF LoRa SX1278 cho khối thu thập dữ liệu
Hình 3.2 Module RF LoRa SX1278
Trang 31Các module ngoại vi được sử dụng trong khối thu thập và xử lý dữ liệu bao gồm 5 module thu-phát sóng RF LoRa SX1278 Trong đó, một module RF LoRa SX1278 kết nối với khối xử lý trung tâm, đóng vai trò là LoRa Master, nhận lệnh điều khiển từ khối xử lý trung tâm; đồng thời module RF LoRa SX1278 Master này cũng giao tiếp với 4 module RF LoRa SX1278 qua sóng RF 4 module LoRa
ở các phòng đóng vai trò là các module RF LoRa SX1278 Slave LoRa Master sẽ gửi dữ liệu cho 4 module RF LoRa SX1278, đợi phản hồi và trả về kết quả cho
khối xử lý trung tâm
c Các thông số chính
Các thông số chính của module RF LoRa SX1278 được trình bày ở bảng sau
Bảng 3.2 Thông số kỹ thuật module RF LoRa SX1278
Chuẩn giao tiếp UART
Độ dài chuỗi khi nhận Gói dữ liệu 256 bytes
Khoảng cách truyền tối đa trong
điều kiện lý tưởng
Trang 32 Một module RF LoRa SX1278 kết nối với mạch nguồn và module Node MCU ESP8266, đóng vai trò là LoRa trung tâm ( LoRa Master)
Năm module RF LoRa SX1278 kết nối với mạch nguồn, đóng vai trò là các LoRa ở 4 phòng ( LoRa Slave) để thu thập dữ liệu thời gian hoạt động của các phòng
Chân RXD và TXD của mỗi module RF LoRa SX1278 đóng vai trò Slave được nối với nhau Khi LoRa Slave nhận được data từ sóng RF điều khiển bởi LoRa Master, nó sẽ truyền qua chân TX Chân TX nối chung với chân RX, nên khi đó LoRa nhận được tín hiệu UART, nó sẽ phát sóng RF ngược lại và LoRa Master sẽ nhận được phản hồi từ LoRa Slave
Kết nối module RF LoRa SX1278 với khối nguồn
Cách kết nối module RF LoRa SX1278 và module nguồn AC-DC 5V-1A được trình bảy ở bảng sau
Bảng 3.3 Kết nối module RF LoRa SX1278 và module nguồn AC-DC 5V-1A
Trang 33Chân VCC của module RF LoRa SX1278 nối vào ngõ ra +DC của module nguồn và dây GND Node MCU ESP8266 nối vào ngõ ra -DC của module nguồn Chân M0 và M1 của module RF LoRa SX1278 nối GND, vì module hoạt động ở chế độ phát truyền liên tục nên cần ở trạng thái 00
Kết nối module RF LoRa SX1278 với module Node MCU ESP8266
Module RF LoRa SX1278 kết nối với mạch nguồn và module Node MCU ESP8266, đóng vai trò là LoRa trung tâm ( LoRa Master) Module này sẽ nhận tín hiệu điều khiển từ ESP8266, gửi tín hiệu đi dưới dạng sóng RF cho các module
RF LoRa SX1278 Slave, nhận phản hồi Đồng thời gửi dữ liệu phản hồi cho module Node MCU ESP8266 qua hai chân RX, TX Cách kết nối module RF LoRa SX1278 với module Node MCU ESP8266 được trình bày ở bảng sau
Bảng 3.4 Kết nối module RF LoRa SX1278 với module Node MCU ESP8266
RF LoRa SX1278 Node MCU ESP8266
Hình 3.4 Sơ đồ nguyên lý kết nối module RF LoRa SX1278 Master với module
Node MCU ESP8266
Trang 34Cách nối dây cho Node MCU ESP8266 vào module RF LoRa SX1278 như sau:
Module Node MCU ESP8266 cấp nguồn cho module RF LoRa SX1278 hoạt động thông qua hai chân VCC và GND
Chân D5, D6 đóng vai trò là TX, RX của Node MCU ESP8266 dùng để giao tiếp với LoRa SX1278
Chân D1, D2 set mode hoạt động cho LoRa Master
Chân D7 của module Node MCU ESP8266 nối vào chân AUX của module
RF LoRa SX1278 để có thể xác định một quá trình truyền nhận giữa LoRa Master
và LoRa Slave đã hoàn thành hay chưa
Thiết lập cả hai module Node MCU ESP8266 và module RF LoRa SX1278
b Phân tích lựa chọn linh kiện
Để phù hợp yêu cầu của đề tài và sự phổ biến trên thị trường, nhóm đã chọn được 2 kit như sau: Raspberry Pi và Node MCU ESP8266 Trong đó, Node MCU ESP8266 là nền tảng IoTs mở, được phát triển dựa trên Chip WiFi ESP8266 bên trong của Module giúp dễ dàng kết nối chỉ với vài thao tác Với kích thước nhỏ gọn, linh hoạt thì module có thể dễ dàng kết nối với các thiết bị ngoại vi, hoàn thiện các dự án hay sản phẩm một cách nhanh chóng và đơn giản nhất
Nhóm quyết định chọn kit Node MCU ESP8266 cho khối xử lý trung tâm, dựa trên ưu điểm về tiết kiệm tài nguyên, tiếp cận dễ dàng cũng như giá thành thấp hơn
Trang 35Hình 3.5 Ảnh thực tế Node MCU ESP8266
Điện áp vào: 5V thông qua cổng micro USB
Số chân I/O: 11 (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: 4MB
Giao tiếp: Cable Micro USB
Lập trình trên các ngôn ngữ: C/C++, Micropython, Node MCU – Lua
Sơ đồ chân Node MCU ESP8266 như sau
Trang 36Hình 3.6 Sơ đồ chân Node MCU ESP8266
Node MCU có tổng cộng 13 chân GPIO tuy nhiên một số chân được dùng cho những mục đích quan trọng khác vì vậy chúng ta phải lưu ý khi sử dụng như sau:
Tất cả các GPIO đều có trở kéo lên nguồn bên trong (ngoại trừ GPIO16 có trở kéo xuống GND) Người dùng có thể cấu hình kích hoạt hoặc không kích hoạt trở kéo này
GPIO1 và GPIO3: hai GPIO này được nối với TX và RX của bộ UART0, Node MCU nạp code thông qua bộ UART này nên tránh sử dụng 2 chân GPIO này
GPIO0, GPIO2, GPIO15: đây là các chân có nhiệm vụ cấu hình mode cho ESP8266 điều khiển quá trình nạp code nên bên trong Node MCU (có tên gọi là strapping pins) có các trở kéo để định sẵn mức logic cho chúng như sau: GPIO0: HIGH, GPIO2: HIGH, GPIO15: LOW Vì vậy khi muốn sử dụng các chân này ở vai trò GPIO cần phải thiết kế một nguyên lý riêng để tránh xung đột đến quá trình nạp code
Trang 37 GPIO9, GPIO10: hai chân này được dùng để giao tiếp với External Flash của ESP8266 vì vậy cũng không thể dùng được (đã test thực nghiệm) Như vậy, các GPIO còn lại: GPIO 4, 5, 12, 13, 14, 16 có thể sử dụng bình thường
d Sơ đồ nguyên lý
Kết nối giữa module Node MCU ESP8266 và LoRa SX1278 dựa theo chuẩn kết nối UART, chỉ cần kết nối chân TX, RX của module Node MCU ESP8266 lần lượt với chân RX, TX của module RF LoRa SX1278 để truyền nhận dữ liệu Dữ liệu thu được từ các module RF LoRa SX1278 sẽ được chuyển qua cho ESP8266
xử lý Ở đây, chỉ có module RF LoRa SX1278 Master kết nối với module ESP8266
để nhận tín hiệu điều khiển và trao đổi dữ liệu
Bảng 3.5 Kết nối giữa Node MCU ESP8266 module RF LoRa SX1278
RF LoRa SX1278 Node MCU ESP8266
Trang 38Cách nối dây cho Node MCU ESP8266 vào module RF LoRa SX1278 như sau: Chân 3.3V, GND của Node MCU ESP8266 cấp nguồn cho LoRa SX1278 hoạt động
Chân D5, D6 đóng vai trò là TX, RX của Node MCU ESP8266, giao tiếp với LoRa SX1278 thông qua hai chân RXD, TXD của LoRa SX1278
Chân D1, D2 có chức năng set mode 00 cho LoRa hoạt động nên nối với hai chân M0 và M1 của LoRa
Chân D7 của module Node MCU ESP8266 nối vào chân AUX của module
RF LoRa SX1278 để có thể xác định một quá trình truyền nhận giữa 2 LoRa Master
và LoRa Slave đã hoàn thành hay chưa
Thiết lập cả hai module Node MCU ESP8266 và module RF LoRa SX1278
3.3.3 Khối nguồn
a Tính chọn nguồn
Nguồn điều khiển cung cấp cho toàn bộ ngoại vi, các ngoại vi gồm:
1 module ESP8266 Node MCU sử dụng nguồn 5V, dòng tối đa 800mA
5 module RF LoRa SX1278 sử dụng nguồn 5V, dòng tối đa 120mA
Suy ra ta chọn nguồn 5V để cấp cho toàn bộ hệ thống Trên module Node MCU ESP8266 có tích hợp sẵn IC ổn áp AMS 1117 để tạo mức điện áp 3,3V
Trang 39Hình 3.8 Sơ đồ chân AMS1117
Hình 3.9 Sơ đồ kết nối IC AMS1117
Các chân GND và Vin nối với nguồn đầu vào và tạo ra nguồn 3.3V ở Vout cấp cho mạch
b Tính toán công suất
Nguồn công suất là khối nguồn cung cấp cho mỗi module ở vị trí riêng biệt nên cần một nguồn cung cấp với dòng điện ổn định và kích thước nhỏ gọn
Ở đây ta cần 5 nguồn riêng biệt cho:
4 module RF LoRa SX1278 ở 4 phòng riêng biệt
1 module RF LoRa SX1278 Master và 1 module ESP8266 ở trung tâm
Theo lý thuyết dòng vào của module RF LoRa SX1278 khi module ở chế
độ truyền sóng tối đa là 120mA
Do đó điện năng tiêu thụ theo lý thuyết của 1 module RF LoRa SX1278 là