Mục lục:
- Bước 1: Các thành phần được sử dụng trong dự án
- Bước 2: Thiết kế mạch
- Bước 3: Tải mã lên NodeMCU Kit bằng ESPlorer
- Bước 4: Định cấu hình Trung tâm cảm biến
- Bước 5: Tùy chỉnh cấu hình
- Bước 6: Bổ sung cảm biến vào Hub và PubNub
- Bước 7: Khởi tạo bộ sưu tập dữ liệu và gửi đến PubNub
- Bước 8: Trang Html đơn giản để hiển thị dữ liệu theo thời gian thực từ PubNub
- Bước 9: Khắc phục sự cố và câu hỏi thường gặp
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)
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:35
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 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
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
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
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
- Tải lên tệp.lua đã sửa đổi..ví dụ tệp ap.lua
- Gửi lệnh "node.compile (ap.lua)" bằng cách nhấp vào nút gửi ở cuối ESPlorer
- 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
Để 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.
- 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
- 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)
- 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
- Tải lên tệp.lua đã sửa đổi..ví dụ tệp ap.lua
- Gửi lệnh "node.compile (ap.lua)" bằng cách nhấp vào nút gửi ở cuối ESPlorer
- 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
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
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:
Máy ghi nhật ký điện tâm đồ - Máy theo dõi tim có thể đeo được để thu thập và phân tích dữ liệu dài hạn: 3 bước
ECG Logger - Máy theo dõi tim có thể đeo để thu thập và phân tích dữ liệu dài hạn: Phát hành lần đầu: tháng 10 năm 2017 Phiên bản mới nhất: 1.6.0 Trạng thái: Ổn định Độ khó: Cao Điều kiện: Arduino, Lập trình, Xây dựng phần cứng Kho lưu trữ độc đáo: SF (xem liên kết bên dưới) Hỗ trợ: Chỉ dành cho diễn đàn, không PMECG Logger là Máy theo dõi tim có thể đeo được trong thời gian dài-
IOT dễ dàng - Trung tâm cảm biến RF được điều khiển bằng ứng dụng cho thiết bị IOT phạm vi trung bình: 4 bước
IOT dễ dàng - Trung tâm cảm biến RF được điều khiển bằng ứng dụng dành cho thiết bị IOT phạm vi trung bình: Trong loạt bài hướng dẫn này, chúng tôi sẽ xây dựng một mạng lưới thiết bị có thể được điều khiển thông qua liên kết vô tuyến từ thiết bị trung tâm. Lợi ích của việc sử dụng kết nối vô tuyến nối tiếp 433MHz thay vì WIFI hoặc Bluetooth là phạm vi lớn hơn nhiều (với
EqualAir: Màn hình NeoPixel có thể đeo được Kích hoạt bởi Cảm biến Ô nhiễm Không khí: 7 Bước (có Hình ảnh)
EqualAir: Màn hình NeoPixel có thể đeo được Kích hoạt bởi Cảm biến Ô nhiễm Không khí: Mục đích của dự án là tạo ra một chiếc áo thun có thể mặc được hiển thị hình ảnh gợi liên tưởng khi ô nhiễm không khí vượt quá ngưỡng đã định. Đồ họa được lấy cảm hứng từ trò chơi cổ điển " máy cắt gạch ", trong đó chiếc xe giống như một mái chèo mà sp
Công tắc ánh sáng kích hoạt chuyển động với cảm biến ánh sáng: 5 bước
Công tắc đèn kích hoạt chuyển động với cảm biến ánh sáng: Công tắc đèn kích hoạt chuyển động có nhiều ứng dụng cả trong gia đình và văn phòng. Tuy nhiên, điều này đã bổ sung lợi thế của việc kết hợp cảm biến ánh sáng, do đó, đèn này chỉ có thể kích hoạt vào Ban đêm
Collegg'tible - Trứng có thể thu thập được: 3 bước (có hình ảnh)
Collegg'tible - Trứng hướng dẫn sưu tầm: Điều gì tạo nên một món quà hoàn hảo cho những ngày lễ năm này qua năm khác? Một tập hợp các Trứng hướng dẫn được sưu tầm mô tả các thành viên nổi tiếng và khét tiếng của cộng đồng thành viên Hướng dẫn. Năm nay, sẽ chỉ có một bộ được đúc và khi chúng được đúc, khuôn