Mục lục:

Trung tâm thu thập dữ liệu cảm biến được kích hoạt IoT với ESP8266 & PubNub: 9 bước (có hình ảnh)
Trung tâm thu thập dữ liệu cảm biến được kích hoạt IoT với ESP8266 & PubNub: 9 bước (có hình ảnh)

Video: Trung tâm thu thập dữ liệu cảm biến được kích hoạt IoT với ESP8266 & PubNub: 9 bước (có hình ảnh)

Video: Trung tâm thu thập dữ liệu cảm biến được kích hoạt IoT với ESP8266 & PubNub: 9 bước (có hình ảnh)
Video: ĐỌC NHIỆT ĐỘ - ĐỘ ẨM DÙNG ESP8266 LÊN THINGSPEAK || MEASURE TEMPERATER ESP8266 THINGSPEAK SERVER 2024, Tháng mười một
Anonim
Trung tâm thu thập dữ liệu cảm biến được kích hoạt IoT với ESP8266 & PubNub
Trung tâm thu thập dữ liệu cảm biến được kích hoạt IoT với ESP8266 & PubNub
Trung tâm thu thập dữ liệu cảm biến được kích hoạt IoT với ESP8266 & PubNub
Trung tâm thu thập dữ liệu cảm biến được kích hoạt IoT với ESP8266 & PubNub

Hầu hết các hướng dẫn về ESP8266 đều ở cấp độ người mới (nhấp nháy đèn led từ xa) hoặc quá phức tạp đối với những người đang tìm kiếm thứ gì đó để cải thiện và nâng cấp kỹ năng nháy đèn led của mình. bằng cách sử dụng ESP8266 và đăng dữ liệu thu thập được lên PubNub. Mục đích / mục tiêu chính là giảm thiểu thời gian mọi người dành cho việc xây dựng phần cứng và thay vào đó tập trung thời gian của họ vào phân tích dữ liệu và trực quan hóa với dữ liệu thu thập được.

Đối với những người không quen thuộc với ESP8266 / NodeMCU, chúng tôi khuyên bạn nên hiểu cơ bản về cách flash và lập trình thông qua ESPLORER. -Commands-NodeMCU.

Vào cuối phần hướng dẫn này, bạn sẽ có thể xây dựng trung tâm thu thập dữ liệu cảm biến của riêng mình và trực quan hóa biểu đồ thời gian thực cơ bản với sự trợ giúp của PubNub

Chào mừng bạn đến với Bài học ESP8266-NodeMCU - 102 !!

Bước 1: Các thành phần được sử dụng trong dự án

Các thành phần được sử dụng trong dự án
Các thành phần được sử dụng trong dự án

Các thành phần sau được yêu cầu để hoàn thành dự án

  • Bo mạch ESP8266. Bo mạch được sử dụng cho hướng dẫn này là NodeMCU devKit v1.0 (chèn liên kết mô-đun 143 tại đây)
  • Bất kỳ cảm biến nào có dữ liệu cần được thu thập và ghi lại. Ở đây một chiết áp đơn giản được sử dụng như một cảm biến tương tự
  • Một công tắc trượt
  • Cáp micro to USB (loại đực) để tải mã lên NodeMCU devKit v1.0 và cấp nguồn cho thiết bị
  • 2 đèn led cho chỉ báo chế độ
  • Một số cáp nam và cáp nam và breadboard
  • Tài khoản PubNub có khóa xuất bản, khóa đăng ký và kênh

Tải xuống các tệp bên dưới. Nếu bạn không muốn thay đổi bất cứ điều gì và chỉ cần nó hoạt động, hãy tải xuống phiên bản được biên dịch trước (chèn thư mục zip phiên bản đã biên dịch tại đây). thì bạn cũng có thể tải mã nguồn chính xuống (chèn phiên bản mã nguồn tại đây)

Bước 2: Thiết kế mạch

Nếu bạn đã mua (chèn liên kết của sản phẩm cuối cùng tại đây) thì bạn có thể bỏ qua bước này

Bước 3: Tải mã lên NodeMCU Kit bằng ESPlorer

Tải mã lên NodeMCU Kit bằng ESPlorer
Tải mã lên NodeMCU Kit bằng ESPlorer
Tải mã lên NodeMCU Kit bằng ESPlorer
Tải mã lên NodeMCU Kit bằng ESPlorer

Sau khi bạn mở ứng dụng ESPlorer, màn hình ban đầu sẽ giống như hình ảnh đầu tiên, chọn cổng COM từ menu thả xuống ở trên cùng. Nếu cổng COM không hiển thị ngay cả khi thiết bị được kết nối, chỉ cần mở lại ứng dụng.

Bây giờ, có hai cách bạn có thể tiếp tục và hoàn thành phần hướng dẫn này

Hoàn thành phần cứng trung tâm cảm biến càng sớm càng tốt và chuyển sang chơi với dữ liệu

Hiểu cách thức hoạt động của NodeMCU và tập lệnh lua và tùy chỉnh theo nhu cầu của bạn

nếu (tùy chọn == 1)

Tải lên tất cả các tệp được biên dịch trước (tệp.lc) và chuyển sang bước tiếp theo

khác nếu (tùy chọn == 2)

Chỉ cần mở tệp mã nguồn (.lua) tệp trong ESPlorer và bắt đầu chơi với mã. Chuyển sang bước 5 để xem mô tả

Bước 4: Định cấu hình Trung tâm cảm biến

Định cấu hình Trung tâm cảm biến
Định cấu hình Trung tâm cảm biến
Định cấu hình Trung tâm cảm biến
Định cấu hình Trung tâm cảm biến

Bây giờ, hãy trượt công tắc sang chế độ cấu hình và khởi động lại mô-đun. Đèn led chỉ báo chế độonfig sẽ phát sáng.

Như trong hình đầu tiên, mạng không dây với tên "configMode" sẽ được tạo và hiển thị. Kết nối với mạng đó bằng mật khẩu là "password1234" từ bất kỳ máy tính, lapotop hoặc thiết bị di động nào.

Mở bất kỳ trình duyệt nào và nhập url sau

192.168.4.1/?username='wifi_network_name'&pwd='password'&apipubkey='publish_key'&apisubkey='subscribe_key'&channel='Channel_name'&sensorOneName='Sensor_1_name'&check=1

Thay thế các tham số trong dấu ngoặc kép bằng giá trị mật khẩu tên người dùng wifi (có truy cập internet) của riêng bạn và các khóa PubNub. Url cuối cùng sẽ giống như bên dưới

192.168.4.1/?username=MyWiFi&pwd=123456&apipubkey=pub_kjabdc_56513akhbcqio3_ad&apisubkey=sub_ajkd23d_sf23_24'&channel=channel1&sensorOneName=ck=1

Nếu trung tâm cảm biến được định cấu hình đúng cách, đèn LED chế độ cấu hình sẽ tắt và đèn LED chế độ dữ liệu sẽ bật và mạng không dây "configMode" sẽ biến mất. Nếu bạn muốn hiểu cách này hoạt động hoặc muốn thay đổi một số thông số, hãy xem bước tiếp theo, nếu không, hãy chuyển sang bước 8

Bước 5: Tùy chỉnh cấu hình

Tùy chỉnh cấu hình
Tùy chỉnh cấu hình

Vì vậy, những gì sẽ xảy ra là ESP8266 hoạt động như một bộ định tuyến và tạo ra một mạng không dây với ssid, tên người dùng và địa chỉ ip đã cho mà bạn có thể kết nối. bất kỳ thiết bị nào được kết nối với mạng không dây đã định cấu hình.

192.168.4.1/?username='wifi_network_name'&pwd='password'&apipubkey='publish_key'&apisubkey='subscribe_key'&channel='Channel_name'&sensorOneName='Sensor_1_name'&check=1

Mở tệp ap.lua trong ESPlore. Tập lệnh này chịu trách nhiệm cho cấu hình ban đầu của trung tâm cảm biến. Nó tạo ra hai tệp dựa trên dữ liệu được cung cấp bởi người dùng

  • station.lua (chứa ssid mạng và mật khẩu có thể truy cập internet để đăng dữ liệu)
  • api_file.lua (chứa các phím PubNub, tên kênh với tên cảm biến)

Để tùy chỉnh địa chỉ ip:

IP có thể được đặt thành bất kỳ địa chỉ vaild nào cần được thay đổi trong url. Địa chỉ mặc định sẽ là "192.168.4.1". nếu địa chỉ thích hợp bằng cách gửi lệnh "= wifi.sta.getip ()"

Để tùy chỉnh tên ssid

Bộ mã tiếp theo trong cùng một hình ảnh chịu trách nhiệm thiết lập ssid và mật khẩu cho mạng không dây.

Hãy nhớ rằng nếu bạn đã thực hiện bất kỳ thay đổi nào trong tệp.lua, bạn phải biên dịch chúng để các thay đổi được phản ánh sau khi khởi động lại

  1. Tải lên tệp.lua đã sửa đổi..ví dụ tệp ap.lua
  2. Gửi lệnh "node.compile (ap.lua)" bằng cách nhấp vào nút gửi ở cuối ESPlorer
  3. Bây giờ các tệp lua của bạn đã được biên dịch và các tệp.lc mới sẽ được tạo

Bước 6: Bổ sung cảm biến vào Hub và PubNub

Bổ sung cảm biến vào Hub và PubNub
Bổ sung cảm biến vào Hub và PubNub
Bổ sung cảm biến vào Hub và PubNub
Bổ sung cảm biến vào Hub và PubNub

Để thêm nhiều cảm biến

Theo mặc định, mã chỉ gửi một dữ liệu cảm biến được kết nối với chân tương tự 0. Bạn có thể thêm nhiều cảm biến hơn để gửi dữ liệu đồng thời.

  1. Thêm tên cảm biến vào url như được hiển thị in đậm. Vì vậy, bây giờ url sẽ giống như dưới đâyhttps://192.168.4.1/? Username = 'wifi_network_name' & pwd = 'password' & apipubkey = 'Publishing_key' & apisubkey = 'subscribe_key' & channel = ' Channel_name '& sensorOneName =' Sensor_1_name '& sensorTwoName =' Sensor_2_name '& check = 1
  2. Tên tương ứng sẽ được thêm vào tệp ap.lua như trong hình ảnh 1sensorTwo = _GET.sensorTwoName print (sensorTwo). (Đây chỉ là để xem và kiểm tra dữ liệu)
  3. Bước cuối cùng là thêm nó vào phần tạo api_file ở cuối như thể hiện trong hình 2 {"eon": {"'..sensorOne..'": / '.. adc.read (0).. \', "'..sensorTwo..'": / '.. gpio.read (2).. \'}} Lặp lại bước tương tự cho mỗi lần bổ sung cảm biến. Hãy nhớ sử dụng gpio.read (pin #) cho kỹ thuật số và adc.read (pin #) cho tín hiệu tương tự sang kỹ thuật số

Hãy nhớ rằng nếu bạn đã thực hiện bất kỳ thay đổi nào trong tệp.lua, bạn phải biên dịch chúng để các thay đổi được phản ánh sau khi khởi động lại

  1. Tải lên tệp.lua đã sửa đổi..ví dụ tệp ap.lua
  2. Gửi lệnh "node.compile (ap.lua)" bằng cách nhấp vào nút gửi ở cuối ESPlorer
  3. Bây giờ các tệp lua của bạn đã được biên dịch và các tệp.lc mới sẽ được tạo

Bước 7: Khởi tạo bộ sưu tập dữ liệu và gửi đến PubNub

Khởi tạo thu thập dữ liệu và gửi đến PubNub
Khởi tạo thu thập dữ liệu và gửi đến PubNub

Khi cấu hình được thực hiện đúng cách, đèn led chế độ dữ liệu sẽ được bật.

Về cơ bản, điều này có nghĩa là dữ liệu cảm biến đang được gửi đến PubNub dựa trên cài đặt cấu hình mà bạn đã cung cấp trong các bước trước.

Theo mặc định, trung tâm sẽ gửi dữ liệu đến PubNub sau mỗi 5 giây. Nếu bạn muốn định cấu hình, hãy làm theo các bước dưới đây

Để tùy chỉnh tần suất thu thập dữ liệu:

  • Mở main.lua trong ESPlorer
  • Chuyển đến dòng được đánh dấu trong hình ảnh
  • Giá trị được đề cập ở đó phải tính bằng mili giây, ít nhất nên có khoảng thời gian là 2 giây để tránh mất mát dữ liệu.
  • Tải tệp main.lua lên esp và biên dịch tệp để tạo tệp.lc
  • Khởi động lại mô-đun và xác minh

Bước 8: Trang Html đơn giản để hiển thị dữ liệu theo thời gian thực từ PubNub

Trang Html đơn giản để hiển thị dữ liệu theo thời gian thực từ PubNub
Trang Html đơn giản để hiển thị dữ liệu theo thời gian thực từ PubNub
Trang Html đơn giản để hiển thị dữ liệu theo thời gian thực từ PubNub
Trang Html đơn giản để hiển thị dữ liệu theo thời gian thực từ PubNub

Mở tệp Sample.html từ các tệp đã tải xuống. Đây chỉ là một trang html thuần túy để xem biểu đồ thời gian thực của dữ liệu đã thu thập.

Như đã thấy trong hình 1, bạn chỉ cần định cấu hình nó bằng các khóa PubNub và tên kênh của riêng bạn.

Bạn cũng có thể thêm phần này vào bất kỳ trang web nào bạn phát triển và tạo ra hình ảnh trực quan tuyệt đẹp hơn nữa. Tham khảo PunNub EON để biết thêm thông tin.

Bước 9: Khắc phục sự cố và câu hỏi thường gặp

Sẽ sớm được cập nhật

Đề xuất: