Mục lục:

Bắt đầu với Amazon AWS IoT và ESP8266: 21 bước
Bắt đầu với Amazon AWS IoT và ESP8266: 21 bước

Video: Bắt đầu với Amazon AWS IoT và ESP8266: 21 bước

Video: Bắt đầu với Amazon AWS IoT và ESP8266: 21 bước
Video: Full Stack IOT App: ESP32 Send ADC data to AWS IOT Core Service 2024, Tháng mười một
Anonim
Bắt đầu với Amazon AWS IoT và ESP8266
Bắt đầu với Amazon AWS IoT và ESP8266

Dự án này hướng dẫn bạn cách lấy mô-đun ESP8266 và kết nối trực tiếp với AWS IOT bằng Mongoose OS. Mongoose OS là một hệ điều hành mã nguồn mở dành cho vi điều khiển nhấn mạnh vào kết nối đám mây. Nó được phát triển bởi Cesanta, một công ty phần mềm nhúng có trụ sở tại Dublin và khi kết thúc dự án, bạn sẽ có thể đo nhiệt độ và các giá trị độ ẩm từ cảm biến nhiệt độ DHT11 và xuất bản nó trên nền tảng AWS IOT

Đối với dự án này, chúng tôi sẽ cần:

 Bo mạch NodeMCU dựa trên ESP8266

 Cảm biến nhiệt độ DHT 11

 Công cụ nhấp nháy hệ điều hành Mongoose

 Cáp USB để kết nối bo mạch NodeMCU với máy tính

 Dây Jumber

 Tài khoản AWS mà bạn định sử dụng

Bước 1: Bảng NodeMCU dựa trên ESP8266

Bảng NodeMCU dựa trên ESP8266
Bảng NodeMCU dựa trên ESP8266

ESP8266 là tên của một bộ điều khiển vi mô được thiết kế bởi Espressif Systems. Bản thân ESP8266 là một giải pháp mạng Wi Fi khép kín cung cấp như một cầu nối từ bộ điều khiển vi mô hiện có tới Wi Fi và cũng có khả năng chạy các ứng dụng độc lập. Mô-đun này đi kèm với một đầu nối USB tích hợp và nhiều loại pin-outs phong phú. Với cáp micro USB, bạn có thể kết nối bộ phát triển NodeMCU với máy tính xách tay của mình và flash nó mà không gặp bất kỳ sự cố nào, giống như Arduino

Sự chỉ rõ

• Điện áp: 3.3V.

• Wi-Fi Direct (P2P), soft-AP.

• Dòng tiêu thụ: 10uA ~ 170mA.

• Bộ nhớ flash có thể đi kèm: tối đa 16MB (512K bình thường).

• Tích hợp ngăn xếp giao thức TCP / IP.

• Bộ xử lý: Tensilica L106 32-bit.

• Tốc độ bộ xử lý: 80 ~ 160MHz.

• RAM: 32K + 80K.

• GPIO: 17 (ghép với các chức năng khác).

• Analog to Digital: 1 đầu vào với độ phân giải 1024 bước.

• + Công suất đầu ra + 19,5dBm ở chế độ 802.11b

• Hỗ trợ 802.11: b / g / n.

• Kết nối TCP đồng thời tối đa: 5

Bước 2: Sơ đồ ghim

Sơ đồ chân
Sơ đồ chân

Bước 3: DHT11 - Cảm biến độ ẩm và nhiệt độ

DHT11 - Cảm biến độ ẩm và nhiệt độ
DHT11 - Cảm biến độ ẩm và nhiệt độ

DHT11 là một cảm biến nhiệt độ và độ ẩm kỹ thuật số cơ bản, chi phí thấp. Nó sử dụng một cảm biến độ ẩm điện dung và một điện trở nhiệt để đo không khí xung quanh và phát ra tín hiệu kỹ thuật số trên chân dữ liệu (không cần chân đầu vào tương tự). Sử dụng khá đơn giản nhưng yêu cầu thời gian cẩn thận để lấy dữ liệu. Nhược điểm thực sự duy nhất của cảm biến này là bạn chỉ có thể lấy dữ liệu mới từ nó cứ sau 2 giây một lần

Đặc trưng

 Nhiệt độ bù đầy đủ

 Đo nhiệt độ và độ ẩm tương đối

 Tín hiệu kỹ thuật số đã hiệu chỉnh

 Tính ổn định lâu dài vượt trội

 Các thành phần phụ không cần thiết

 Khoảng cách truyền dài

 Tiêu thụ điện năng thấp

Quy trình giao tiếp (Hai chiều một dây)

Điều thú vị trong mô-đun này là giao thức sử dụng để truyền dữ liệu. Tất cả các kết quả đọc của cảm biến được gửi bằng một bus dây giúp giảm chi phí và kéo dài khoảng cách. Để gửi dữ liệu qua bus, bạn phải mô tả cách dữ liệu sẽ được truyền, để người phát và người nhận có thể hiểu nhau. Đây là những gì một giao thức làm. Nó mô tả cách dữ liệu được truyền đi. Trên DHT-11, bus dữ liệu 1 dây được kéo lên với một điện trở đến VCC. Vì vậy, nếu không có gì xảy ra, điện áp trên bus bằng VCC. Định dạng giao tiếp có thể được tách thành ba giai đoạn

1) Yêu cầu

2) Phản hồi

3) Đọc dữ liệu

Bước 4: Giới thiệu về Mongoose OS

Mongoose OS là một hệ điều hành mã nguồn mở dành cho các hệ thống nhúng nhỏ. Nó được thiết kế để chạy trên các thiết bị như bộ điều khiển vi mô, thường bị hạn chế với bộ nhớ theo thứ tự hàng chục kilobyte, đồng thời hiển thị giao diện lập trình cung cấp quyền truy cập vào các API hiện đại thường thấy trên các thiết bị mạnh hơn. Một thiết bị chạy Mongoose OS có quyền truy cập vào chức năng của hệ điều hành như hệ thống tệp và mạng, cùng với phần mềm cấp cao hơn như công cụ JavaScript và các API truy cập đám mây.

Công cụ nhấp nháy hệ điều hành Mongoose

Công cụ nhấp nháy được sử dụng để cài đặt hệ điều hành Mongoose trong ESP8266. Đầu tiên, hãy lấy một trong các bảng được hỗ trợ, như ESP8266 NodeMCU và kết nối nó với máy tính của bạn, sau đó làm theo các bước sau:

 Điều hướng đến trang web tải xuống Mongoose OS và tải xuống công cụ Mos. (Nhưng trong Dự án này, chúng tôi sẽ sử dụng phiên bản Mongoose OS cũ hơn)

 Chạy tệp thiết lập Mos (Mongoose OS) và làm theo trình hướng dẫn cài đặt:

Bước 5: Trình hướng dẫn thiết lập Mongoose

Trình hướng dẫn thiết lập Mongoose
Trình hướng dẫn thiết lập Mongoose
Trình hướng dẫn thiết lập Mongoose
Trình hướng dẫn thiết lập Mongoose
Trình hướng dẫn thiết lập Mongoose
Trình hướng dẫn thiết lập Mongoose

Bước 6: Trạng thái thiết bị - Trực tuyến

Trạng thái thiết bị - Trực tuyến
Trạng thái thiết bị - Trực tuyến

Sau khi hoàn thành ba bước, bạn sẽ nhận được thông báo dưới đây và trạng thái Thiết bị sẽ trực tuyến. Giờ đây, Mô-đun ESP8266 của chúng tôi có thể giao tiếp với bất kỳ thiết bị từ xa nào

Bước 7: Cung cấp thiết bị trên AWS IOT

Cung cấp thiết bị trên AWS IOT
Cung cấp thiết bị trên AWS IOT

Trước khi có thể gửi sự kiện tới AWS, chúng tôi cần có khả năng tạo kết nối an toàn với AWS IOT. Để làm như vậy, chúng tôi cần cung cấp cho ESP các chứng chỉ AWS. Trong trình hướng dẫn thiết lập Mongoose OS, hãy chọn menu Cấu hình thiết bị, sau đó chọn vùng AWS thích hợp và chính sách AWS cho môi trường AWS của bạn. Nhấp vào nút Cung cấp với AWS IOT. Thiết bị sẽ được thiết lập với thông tin chính xác để kết nối với dịch vụ AWS. Các chứng chỉ sẽ được cài đặt tự động.

Ghi chú:

Người dùng có thể chọn khu vực AWS và chính sách AWS phù hợp.

Sau khi hoàn thành thiết bị cung cấp trên AWS IOT, giờ đây, mô-đun Wi-Fi esp8266 có thể giao tiếp với AWS -IOT

Bước 8: Tải mã mẫu vào bảng NodeMCU

Tải mã mẫu vào bảng NodeMCU
Tải mã mẫu vào bảng NodeMCU

Sau khi bạn chạy trình hướng dẫn thiết lập Mongoose, nếu bạn nhấp vào menu tệp thiết bị, có một tệp có tên là init.js, bên trong tệp đó có mã mẫu. Nếu bạn nhấp vào nút Lưu + Khởi động lại, mã mẫu sẽ được tải và đầu ra có thể được xem từ Nhật ký thiết bị

Bước 9: Bắt đầu với tài khoản AWS

AWS là gì?

Amazon Web Services (AWS) là nhà cung cấp dịch vụ đám mây của Amazon, cung cấp dịch vụ dưới dạng các khối xây dựng, các khối xây dựng này có thể được sử dụng để tạo và triển khai bất kỳ loại ứng dụng nào trên đám mây. Các dịch vụ hoặc khối xây dựng này được thiết kế để hoạt động với nhau và dẫn đến các ứng dụng phức tạp và có khả năng mở rộng cao.

Làm thế nào để thiết lập?

Có hai cách để thiết lập dịch vụ AWS

 Sử dụng tiện ích dòng lệnh AWS CLI

 Sử dụng AWS GUI

Bước 10: Tiện ích dòng lệnh AWS CLI (Tùy chọn)

Đầu tiên chúng ta cần cài đặt AWS CLI. AWS CLI là một công cụ dòng lệnh cung cấp các lệnh để tương tác với các dịch vụ AWS. Nó cho phép bạn sử dụng chức năng do Bảng điều khiển quản lý AWS cung cấp từ thiết bị đầu cuối. Mongoose sử dụng công cụ này để Cung cấp thiết bị IOT trên AWS IOT. AWS CLI cần thông tin đăng nhập của bạn để có thể kết nối với AWS. Để thiết lập, hãy chạy aws, hãy cấu hình từ dòng lệnh và nhập thông tin truy cập của bạn (thông tin đăng nhập của bạn). Nói một cách dễ hiểu, bạn có thể truy cập và quản lý Amazon Web Services thông qua giao diện người dùng dựa trên web trực quan và đơn giản. Nếu mối quan tâm của bạn là truy cập một số tính năng bằng điện thoại di động, thì ứng dụng AWS Console dành cho thiết bị di động cho phép bạn nhanh chóng xem các tài nguyên khi đang di chuyển.

Bước 11: Amazon Web Services (GUI)

Amazon Web Services (GUI)
Amazon Web Services (GUI)

Sau khi cung cấp AWS, chúng tôi có thể đăng nhập vào bảng điều khiển quản lý AWS, trong tab dịch vụ, chúng tôi có các danh mục khác nhau. Trước khi chúng tôi bắt đầu khám phá các tính năng của bảng điều khiển này, bạn cần tạo tài khoản trên AWS. Đối với những người chưa có tài khoản có thể truy cập trang web AWS và tạo một tài khoản miễn phí. Bạn phải nhập chi tiết thẻ tín dụng / thẻ ghi nợ của mình. AWS sẽ không tính phí bạn trong thời gian đăng ký miễn phí miễn là bạn sử dụng các dịch vụ theo các giới hạn đã chỉ định.

Bước 12: AWS IOT Core

AWS IOT Core
AWS IOT Core

Sau khi đăng nhập, bạn sẽ được chuyển đến trang sau và trong Internet of things, chọn lõi IOT

Bước 13: AWS IOT - Giám sát

AWS IOT - Màn hình
AWS IOT - Màn hình

Khi bạn chọn lõi IOT, trang trên sẽ xuất hiện, sau đó chọn menu kiểm tra

Bước 14: AWS IOT - Đăng ký

AWS IOT - Đăng ký
AWS IOT - Đăng ký

Sau khi chọn menu Kiểm tra, bạn sẽ được chuyển đến Đăng ký. Trong chủ đề đăng ký, hãy chỉ định chủ đề thích hợp mà bạn đang sử dụng và nhấp vào nút Đăng ký chủ đề

Bước 15: Xuất bản tin nhắn mặc định

Xuất bản tin nhắn mặc định
Xuất bản tin nhắn mặc định

Sau đó, bạn sẽ được chuyển đến trang trên. Nếu bạn nhấp vào Xuất bản lên chủ đề, chúng tôi sẽ có thông báo mẫu sẽ được hiển thị ở đây theo mặc định

Lưu ý: Nếu bạn muốn viết một mã mới và tải vào bảng NodeMCU (Mã mà chúng ta viết nên được tải trong trình quản lý tệp thiết bị> tệp init.js, sau đó bạn nên đưa tên chủ đề vào mã. Sau khi bao gồm tên chủ đề, bạn phải sử dụng cùng một tên chủ đề trong phần đăng ký để xuất bản đầu ra

Bước 16: Xuất bản thông tin đã nhấn nút

Xuất bản thông tin đã nhấn nút
Xuất bản thông tin đã nhấn nút

Bước 17: Xuất bản các giá trị nhiệt độ và độ ẩm lên Nền tảng AWS IOT

Xuất bản các giá trị nhiệt độ và độ ẩm lên Nền tảng AWS IOT
Xuất bản các giá trị nhiệt độ và độ ẩm lên Nền tảng AWS IOT

Bước 18: Nhiệm vụ

 Kết nối mạch điện như hình bên dưới

 Flash HĐH mongoose trên mô-đun ESP8266

 Cung cấp thiết bị trên AWS IOT

 Nạp mã lập trình vào bảng NodeMCU

 Kiểm tra đầu ra trong nhật ký thiết bị (xem hình 9)

 Đăng nhập vào tài khoản AWS

 Chọn menu phụ lõi IOT

 Chọn tùy chọn Kiểm tra từ phần MQTT client

 Chỉ định chủ đề thích hợp trong các đăng ký

 Nhấp vào nút xuất bản lên chủ đề

 Đảm bảo rằng bất cứ khi nào bạn nhấn nút flash, bạn sẽ nhận được các giá trị nhiệt độ, độ ẩm dưới dạng thông báo

Đề xuất: