Mục lục:

Cốc kết nối: 5 bước (có hình ảnh)
Cốc kết nối: 5 bước (có hình ảnh)

Video: Cốc kết nối: 5 bước (có hình ảnh)

Video: Cốc kết nối: 5 bước (có hình ảnh)
Video: Hướng dẫn từng bước vẽ tĩnh vật _CỐC VÀ QUẢ / NC Plan 2024, Tháng mười một
Anonim
Cốc kết nối
Cốc kết nối

Đôi khi vào buổi sáng khi nhấm nháp ly cà phê trước khi đến văn phòng, tôi muốn nhìn thoáng qua những gì nó đang mong đợi tôi trong hộp thư đến của tôi. tức là số lượng và âm thanh của các email nhận được….các dự án tôi vừa hoàn thành ngày hôm trước có đang hoạt động hay không và có nhận xét tích cực hay tiêu cực về dự án đó hay không. Mặt khác, tôi không thực sự bận tâm khi mở ứng dụng email client bằng điện thoại di động của mình và bắt đầu đọc email trong bữa sáng.

Từ những cân nhắc này nảy sinh ý tưởng về dự án này; nó sử dụng một cốc cà phê được tăng cường với đèn LED thay đổi màu sắc của chúng dựa trên kết quả phân tích cảm xúc được thực hiện trên các email chưa đọc cuối cùng nhận được trong tài khoản email của tôi. Chỉ cần cắm cốc và đèn LED sẽ chuyển sang màu xanh lục nếu email nhận được cuối cùng có thông điệp tích cực, ngược lại là màu đỏ.

Việc phân tích tình cảm của các email chưa đọc được thực hiện bởi các dịch vụ IBM Watson IoT. Bo mạch Arduino MKR1000 được sử dụng để điều khiển dải LED và kết nối với các dịch vụ IBM Watson IoT qua WiFi bằng giao thức MQTT.

Bước 1: Thành phần phần cứng

Các thành phần phần cứng
Các thành phần phần cứng
Các thành phần phần cứng
Các thành phần phần cứng

Ban phát triển phần cứng:

Arduino MKR1000

BOM phần cứng

  • Điện trở 3x 100ohm
  • Bóng bán dẫn 3x TIP122 NPN
  • 1x giắc cắm nguồn
  • 1x Dải ánh sáng LED RGB (AglaiaLT-S2)
  • Cáp dự phòng

Cách đấu dây để điều khiển dải đèn LED với Arduino MKR1000 dựa trên hướng dẫn này:

Bước 2: Tạo tài khoản trên IBM Watson IoT và đăng ký thiết bị của bạn

Để tạo một ứng dụng đám mây có thể thực hiện phân tích cảm xúc của các email chưa đọc với IBM Watson IoT, trước tiên, bạn cần đăng ký tài khoản dùng thử miễn phí (https://www.ibm.com/internet-of-things/trial/). Bước thứ hai là tạo một ứng dụng cho nền tảng Watson IoT và đăng ký bo mạch Arduino MKR1000 của bạn; đây hiện là một quy trình tiêu chuẩn để kết nối các nền tảng Phần cứng với IBM Watson IoT và nó được ghi rõ trong các hướng dẫn bắt đầu nhanh của IBM:

console.ng.bluemix.net/docs/services/IoT/i…

IBM cũng cung cấp các mẫu soạn sẵn cho IoT để tăng tốc các bước này bằng cách ràng buộc các dịch vụ và thời gian chạy cần thiết để khởi chạy ứng dụng IoT của bạn. IoT cho Điện tử Khởi động Boilerplate là một trong những được sử dụng cho dự án này.

Hướng dẫn đăng ký thiết bị từng bước được cung cấp tại đây:

console.ng.bluemix.net/docs/services/IoT/i…

Ghi lại id tổ chức, thông tin đăng nhập, id thiết bị và loại thiết bị của bạn, sau khi hoàn tất thủ tục đăng ký thiết bị, vì chúng sẽ cần thiết để định cấu hình bản phác thảo Arduino và ứng dụng NodeRED.

Bước 3: Phát triển ứng dụng Node-RED để phân tích tình cảm

Phát triển ứng dụng Node-RED để phân tích tình cảm
Phát triển ứng dụng Node-RED để phân tích tình cảm

NodeRED là một công cụ trực quan có thể được sử dụng trong nền tảng IBM Watson IoT để tạo các thiết bị nối dây ứng dụng và các dịch vụ đám mây (gật đầu.org).

Ứng dụng NodeRED được phát triển rất đơn giản và được cấu tạo bởi hai luồng, một luồng để phân tích cảm xúc của email và một luồng khác để ghi trạng thái của Arduino MKR1000 (điểm tình cảm nhận được bởi thiết bị và kết hợp RGB cho đèn LED được hiển thị).

Luồng đầu tiên kết nối với tài khoản email theo định kỳ và tìm nạp các email chưa đọc cuối cùng; cấu hình phụ thuộc vào tài khoản email của bạn. Mỗi email nhận được sẽ được gửi đến hộp phân tích tình cảm, hộp này sẽ trả về điểm (thấp hơn hoặc trên 0) dựa trên nội dung tiêu cực / tích cực của văn bản được phân tích (xem thông tin https://github.com/thisandagain/sentiment/blob/mas… cho biết thêm chi tiết). Điểm tình cảm được gửi đến một hộp chức năng đơn giản để tính giá trị trung bình của dữ liệu cuối cùng nhận được và đẩy kết quả đến nút tiếp theo. Cuối cùng khối cuối cùng gửi tin nhắn chứa giá trị của điểm tình cảm đến thiết bị được kết nối bằng giao thức MQTT; khối này cần được định cấu hình bằng thông tin đăng nhập được tạo trong quá trình đăng ký thiết bị.

Luồng thứ hai được sử dụng cho mục đích thử nghiệm để hình dung trạng thái của bảng Arduino; nó kết nối một nút IoT đầu vào cho bảng Arduino của bạn với trang web khởi động nhanh của IBM để trực quan hóa dữ liệu (https://quickstart.internetofthings.ibmcloud.com/). Nút IoT đầu vào được cấu hình như trên để nhận các thông báo trạng thái từ Arduino Board bằng cách sử dụng các giao thức MQTT. Thông báo trạng thái chứa điểm tình cảm và kết hợp RGB cho đèn LED hiện đang được sử dụng trong Arduino.

Ứng dụng Node-RED đã được xuất sang clipbord và đính kèm ở đây dưới dạng tệp.txt.

Bước 4: Phác thảo Arduino

Bản phác thảo Arduino dựa trên thư viện khách MQTT của Gilberto Conti (https://github.com/256dpi/arduino-mqtt) đã được sửa đổi để kết nối với IBM Watson IoT. Mã bao gồm ba phần:

  • setup (): kết nối với WiFi AP và nhà môi giới MQTT của IBM; đăng ký một cuộc gọi lại cho các tin nhắn nhận được từ IBM Watson IoT
  • loop (): đặt chân RGB để điều khiển đèn LED; gửi tới IBM Watson IoT trạng thái của thiết bị (RGB và điểm tình cảm)
  • messageReceive (…): gọi lại khi nhận được tin nhắn có điểm tình cảm từ ứng dụng Watson IoT. Điểm số được ánh xạ thành giá trị RGB (âm: đỏ; dương: xanh).

Định cấu hình mã như sau, dựa trên thông tin đăng nhập được tạo trong quy trình đăng ký thiết bị (id tổ chức, loại thiết bị, id thiết bị):

  • MQTT_MODE = IBM_API_KEY
  • char * client_id = "d: your-org-id: your-device-type: your-device-id";
  • char * user_id = "use-token-auth";
  • char * pwd = "your-pwd";
  • char * ibm_hostname = "your-org-id.messaging.internetofthings.ibmcloud.com";

Ứng dụng đăng ký chủ đề iot-2 / cmd / + / fmt / string và message

Thông báo trạng thái được xuất bản cho chủ đề: iot-2 / evt / status / fmt / json

Lưu ý: nhớ cập nhật chứng chỉ SSL cho MKR1000; làm theo hướng dẫn tại đây: https://github.com/arduino-libraries/WiFi101-Firm… và chèn ibm_hostname của bạn để tải xuống và cài đặt chứng chỉ gốc trong MKR1000.

Bản phác thảo Arduino đính kèm.

Bước 5: Kết nối cốc của bạn

Kết nối cốc của bạn
Kết nối cốc của bạn
Kết nối cốc của bạn
Kết nối cốc của bạn

Sẽ rất tuyệt nếu tích hợp thêm thiết bị điện tử và đèn LED vào cốc, nhưng đối với dự án này, tôi chỉ cần gắn dải đèn LED bám quanh cốc như trong hình.

Sau đó, tôi kết nối dải đèn LED với mạch breadboard, cấp nguồn cho đèn LED và Arduino MKR1000 và chờ nhận thông báo với điểm tình cảm từ ứng dụng NodeRED. Ví dụ trong hình, tôi đã kiểm tra bằng cách gửi tới tài khoản của mình những email có chứa văn bản như "Tuyệt vời !, Dự án của bạn thật tuyệt vời!" Vân vân.

Cũng có thể kiểm tra trong trang web IBM Quickstart công khai (https://quickstart.internetofthings.ibmcloud.com) trạng thái trong thời gian thực của ứng dụng Arduino (mã RGB đang được hiển thị và điểm cảm nhận đã nhận được); chỉ cần nhập id thiết bị..

Bây giờ cuối cùng tôi có thể thưởng thức cà phê của mình trong một chiếc cốc được kết nối.

Đề xuất: