Mục lục:

GmailBox Với Zapier và Adafruit: 14 bước
GmailBox Với Zapier và Adafruit: 14 bước

Video: GmailBox Với Zapier và Adafruit: 14 bước

Video: GmailBox Với Zapier và Adafruit: 14 bước
Video: Hướng Dẫn Thiết Lập IFTTT - Học SEO 2024, Tháng mười một
Anonim
GmailBox Với Zapier và Adafruit
GmailBox Với Zapier và Adafruit

Trong phần hướng dẫn này, tôi sẽ giải thích cho bạn từng bước cách tạo trình thông báo Gmail với ESP8266.

Bạn cần gì:

- Tài khoản Gmail

- Tài khoản Zapier

- Tài khoản Adafruit

- Arduino IDE

- NodeMCU ESP8266

- Servomotor (Tôi đang sử dụng SG90)

- Đèn LED (tôi đang sử dụng dải đèn LED Neopixel, các đèn khác cũng sẽ hoạt động nhưng có thể yêu cầu thư viện khác)

Bước 1: Thiết lập Zapier

Thiết lập Zapier
Thiết lập Zapier
Thiết lập Zapier
Thiết lập Zapier

Tạo tài khoản Zapier và tạo một Zap mới. Bạn sẽ cần Zapier để nhận dữ liệu từ Gmail và sau đó sẽ chuyển đến Adafruit. Thêm về điều này sau.

Bước 2: Tạo trình kích hoạt

Tạo một trình kích hoạt
Tạo một trình kích hoạt
Tạo một trình kích hoạt
Tạo một trình kích hoạt

Chúng tôi muốn đảm bảo rằng nếu bạn nhận được thư trong Gmail, thì điều gì đó khác sẽ xảy ra vì vậy bạn sẽ cần tài khoản Gmail của mình. Trong Zap mới của bạn, chọn Gmail làm trình kích hoạt ứng dụng và đăng nhập vào Gmail.

Bước 3: Kết nối Zapier với Adafruit

Kết nối Zapier với Adafruit
Kết nối Zapier với Adafruit
Kết nối Zapier với Adafruit
Kết nối Zapier với Adafruit
Kết nối Zapier với Adafruit
Kết nối Zapier với Adafruit

Bây giờ bạn muốn gửi dữ liệu bạn nhận được trong Gmail tới Adafruit. Trong phần "Thực hiện việc này", hãy tìm kiếm Adafruit và kết nối với tài khoản Adafruit của bạn. Sau đó chọn "Tạo dữ liệu nguồn cấp dữ liệu" làm sự kiện hành động.

Bước 4: Thiết lập Adafruit

Thiết lập Adafruit
Thiết lập Adafruit
Thiết lập Adafruit
Thiết lập Adafruit
Thiết lập Adafruit
Thiết lập Adafruit

Bây giờ hãy truy cập io.adafruit.com và tạo một tài khoản nếu bạn chưa có. Đi tới Nguồn cấp dữ liệu của bạn và tạo Nguồn cấp dữ liệu mới. Trong trường hợp này, tên nguồn cấp dữ liệu của tôi là "gmailbox", bạn sẽ cần tên này sau.

Nếu bạn không thể tìm thấy Khóa Adafruit của mình, bạn có thể tìm thấy nó ở góc trên cùng bên phải.

Bước 5: Nguồn cấp dữ liệu từ Zapier

Dữ liệu nguồn cấp dữ liệu từ Zapier
Dữ liệu nguồn cấp dữ liệu từ Zapier
Dữ liệu nguồn cấp dữ liệu từ Zapier
Dữ liệu nguồn cấp dữ liệu từ Zapier

Bây giờ quay lại Zapier để sắp xếp phần dữ liệu nguồn cấp dữ liệu của bạn. Tại phím nguồn cấp dữ liệu, hãy chọn tùy chọn "Sử dụng giá trị tùy chỉnh". "Giá trị Custum cho Khóa nguồn cấp dữ liệu" phải giống với tên từ Nguồn cấp dữ liệu của bạn trong Adafruit, vì vậy hãy cẩn thận với các chữ cái viết hoa.

Tại "Giá trị", điền w bạn muốn xem là giá trị trong Adafruit. Giá trị tương tự sẽ hiển thị sau này trong màn hình nối tiếp trong Arduino.

Bước 6: Thử nghiệm với Zapier, Adafruit và Gmail

Thử nghiệm với Zapier, Adafruit và Gmail
Thử nghiệm với Zapier, Adafruit và Gmail
Thử nghiệm với Zapier, Adafruit và Gmail
Thử nghiệm với Zapier, Adafruit và Gmail

Bây giờ bạn có thể kiểm tra Zap của mình. Nhấp vào Kiểm tra & Tiếp tục (đừng quên bật Zap sau đó). Sau đó, quay lại Adafruit vào nguồn cấp dữ liệu của bạn và dưới biểu đồ, bạn có thể xem liệu dữ liệu đã đến chưa. Sau khi bật Zap, bạn cũng có thể kiểm tra điều này bằng cách gửi cho mình một email.

Bước 7: Thiết lập Arduino

Thiết lập Arduino
Thiết lập Arduino

Cắm ESP8266 của bạn và mở Arduino. Tạo một bản phác thảo mới và một tab mới như được chỉ ra trong hình trên. Đặt tên nó là "config.h" (bạn có thể đặt tên nó bất cứ điều gì bạn muốn). Dán mã xuống bên dưới trong tab "cấu hình".

Với mã này, bạn có thể kết nối với WiFi và Adafruit của mình. Tôi nhận được nó từ một dự án đã sử dụng trước đó. Tôi vẫn sử dụng nó và nó hoạt động tốt cho tôi.

/ ************************ Cấu hình IO Adafruit ********************** ********* /

// truy cập io.adafruit.com nếu bạn cần tạo tài khoản, // hoặc nếu bạn cần khóa IO Adafruit của mình. #define IO_USERNAME "tên người dùng adafruit của bạn" #define IO_KEY "adafruit key" / ******************************* WIFI ** ************************************ / #define WIFI_SSID "your wifi ssd" #define WIFI_PASS "wifi mật khẩu "#include" AdafruitIO_WiFi.h"

Bước 8: Thiết lập NodeMCU của bạn

Thiết lập NodeMCU của bạn
Thiết lập NodeMCU của bạn

Kết nối động cơ servo và dải đèn LED với ESP8266 của bạn.

Dây từ động cơ servo (SG90): Màu nâu đi vào G (nối đất), Đỏ đi vào 3V, Cam đi vào D6 (hoặc một chân kỹ thuật số khác). Tôi cũng đã sử dụng một số cáp bổ sung để mở rộng.

Dây từ Neopixel: GDN đến G (nối đất), DIN đi đến D4 (hoặc một chân kỹ thuật số khác), + 5V đến 3V.

Bước 9: Thiết lập Thư viện và Phần cứng

Bây giờ, hãy chuyển đến bản phác thảo Arduino mà bạn vừa tạo. Đầu tiên, bạn phải bao gồm các thư viện bạn cần trong bản phác thảo. Bạn sẽ cần config.h vừa tạo, thư viện cho ESP8622 và cho dải LED Neopixel.

Bạn đặt điều này trong mã như sau:

#include "config.h"

#include #include

Tiếp theo, bạn sẽ bao gồm phần cứng bạn đang sử dụng

#bao gồm

Servo servo; #define PIXEL_PIN D4 #define PIXEL_COUNT 10 #define PIXEL_TYPE NEO_GRB + NEO_KHZ800 Adafruit_NeoPixel pixel = Adafruit_NeoPixel (PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);

Thêm dòng này để liên kết bản phác thảo này với nguồn cấp dữ liệu trong Adafruit:

AdafruitIO_Feed * gmailbox = io.feed ("tên nguồn cấp dữ liệu của bạn");

Bước 10: Mã thiết lập trống

Trong "void setup", bạn sẽ kết nối với Adafruit, WiFi và đặt động cơ servo thành chân được chỉ định. Sau đó, bạn có thể kiểm tra màn hình nối tiếp xem kết nối đã được thực hiện chưa.

Tôi khuyên bạn nên nhập lại mã thay vì sao chép và dán nó. Điều này giúp bạn dễ nhớ hơn sau này và bạn bắt đầu học chính xác những gì bạn viết.

Mã sẽ trông như thế này:

void setup () {

// đặt mã thiết lập của bạn ở đây, để chạy một lần: // bắt đầu kết nối nối tiếp với màn hình nối tiếp Serial.begin (115200) // đợi màn hình nối tiếp mở trong khi (! Serial); // kết nối với io.adafruit.com Serial.print ("Đang kết nối với IO Adafruit"); io.connect (); // thiết lập trình xử lý thông báo cho nguồn cấp dữ liệu 'tên nguồn cấp dữ liệu của bạn'. // hàm handleMessage (được định nghĩa bên dưới) sẽ được gọi bất cứ khi nào // nhận được thông báo từ Adafruit. // đợi kết nối while (io.status () get (); // chân của động cơ servo.attach (D6); servo.write (0); nameofyourfeed-> onMessage (handleMessage);}

Bước 11: Mã vòng lặp Void

Tiếp theo, bạn phải đảm bảo rằng Adafruit đang chạy liên tục, chúng ta phải đặt điều này vào vòng lặp trống để tôi chạy liên tục.

Làm như sau:

void loop () {

// đặt mã chính của bạn ở đây, để chạy lặp lại: io.run (); }

Bước 12: Chức năng cho Servomotor và đèn LED làm đầu ra

Bây giờ chúng tôi sẽ đảm bảo rằng khi bạn nhận được email, động cơ servo và đèn LED sẽ phản hồi. Chúng tôi sẽ tạo ra một chức năng đảm bảo điều này. Hàm sẽ được đặt tên là "handleMessage" mà chúng ta đã sử dụng trước đó trong đoạn mã. Chúng tôi sẽ sử dụng giá trị mà chúng tôi thấy Adafruit ở đây.

Nếu bạn nhận được email mới, động cơ servo cần quay 90 độ và đèn LED cần sáng. Đối với đèn LED, chúng tôi đang sử dụng màu đỏ làm màu nhưng bạn có thể thay đổi nó theo bất cứ điều gì bạn muốn. Bạn cũng muốn đảm bảo rằng không chỉ đèn LED đầu tiên của dải sáng, vì vậy bạn phải đặt nó thành một vòng lặp để chiếu sáng toàn bộ dải.

Và một lần nữa, hãy thử nhập lại mã thay vì sao chép và dán mã.

Mã sẽ trông như thế này:

void handleMessage (AdafruitIO_Data * dữ liệu) {

if (dữ liệu> 0) {servo.write (90); chậm trễ (1000); Serial.println ("Bạn đã nhận được thư!"); for (int i = 0; i

Bước 13: Tải lên NodeMCU của bạn và kiểm tra nó

Tải lên NodeMCU của bạn và kiểm tra nó
Tải lên NodeMCU của bạn và kiểm tra nó

Tải bản phác thảo lên ESP8266 của bạn. Bạn có thể thực hiện việc này bằng cách nhấp vào mũi tên trỏ phải bên cạnh dấu kiểm ở góc trên bên trái.

Sau đó, bạn có thể thử gửi cho mình một email để kiểm tra và đảm bảo rằng nó hoạt động.

Bước 14: Chạm hoàn thiện

Bạn đã hoàn thành phần viết mã. Cảm thấy sáng tạo? Xây dựng một nhà chứa hộp thư cho những gì bạn vừa tạo và gắn một lá cờ trên động cơ servo. Cờ sẽ tăng lên mỗi khi bạn nhận được email!

Cảm ơn bạn đã làm theo hướng dẫn này và tôi hy vọng nó sẽ hữu ích.

Đề xuất: