Mục lục:

Điều khiển bằng giọng nói Alexa Điều khiển từ xa TV ESP8266: 9 bước
Điều khiển bằng giọng nói Alexa Điều khiển từ xa TV ESP8266: 9 bước

Video: Điều khiển bằng giọng nói Alexa Điều khiển từ xa TV ESP8266: 9 bước

Video: Điều khiển bằng giọng nói Alexa Điều khiển từ xa TV ESP8266: 9 bước
Video: Điều khiển thiết bị bằng giọng nói - Google assistant v2 và Blynk IOT - kít wifi nodemcu esp8266 2024, Tháng mười một
Anonim
Điều khiển bằng giọng nói Alexa Điều khiển từ xa TV ESP8266
Điều khiển bằng giọng nói Alexa Điều khiển từ xa TV ESP8266

Có ai đó trong nhà bạn làm mất điều khiển từ xa, bạn bước vào một căn phòng trống và phát hiện ra chiếc TV bị tắt tiếng. Pin bắt đầu hỏng và không có điều khiển từ phía sau phòng. Giờ đây, bạn có thể điều khiển TV, DVR, bất kỳ thứ gì có điều khiển IR mà bạn có thể thu tín hiệu IR. Tôi đã tạo hệ thống này để điều khiển SKY DVR của mình bằng giao diện giọng nói đơn giản.

Phần cứng yêu cầu:

  1. Amazon Echo hoặc Dot
  2. Bộ định tuyến wifi có thể chuyển tiếp (nhà cung cấp dịch vụ của tôi đã làm điều này cho tôi)
  3. Arduino NANO được chuyển đổi thành 3V3
  4. ESP8266 -01 hoặc tương tự
  5. Mô-đun hoặc mạch máy phát hồng ngoại
  6. Mô-đun bộ thu IR nếu bạn muốn chụp mã.

Phần mềm và dịch vụ bắt buộc:

  1. Arduino IDE, tôi đã sử dụng 1.6.11
  2. Tài khoản kỹ năng Amazon Alexa (miễn phí)
  3. Tài khoản Amazon AWS (Bậc miễn phí nhưng yêu cầu thẻ tín dụng để mở tài khoản) hoặc máy chủ thay thế.

Bước 1: Thiết lập kỹ năng Alexa

Thiết lập kỹ năng Alexa
Thiết lập kỹ năng Alexa
Thiết lập kỹ năng Alexa
Thiết lập kỹ năng Alexa
Thiết lập kỹ năng Alexa
Thiết lập kỹ năng Alexa

Bộ kỹ năng Alexas nhận lệnh thoại và lọc nó bằng danh sách 'giá trị'

Sau khi đăng ký:

Trong Bảng điều khiển dành cho nhà phát triển Amazon, chọn tab Alexa> Bộ kỹ năng Alexa [Bắt đầu]

[Thêm một kỹ năng mới]

Loại kỹ năng: Mô hình tương tác tùy chỉnh

Ngôn ngữ: chọn ngôn ngữ chính xác, khi cài đặt này thành tiếng Anh (Mỹ), nó sẽ không phản hồi!

Tên: điều này hiện không quan trọng vì chúng tôi không xuất bản.

Tên gọi:, chọn một tên ngắn, từ được sử dụng để mở ứng dụng.

[KẾ TIẾP]

Lược đồ ý định, dán vào mã

Loại vị trí tùy chỉnh {Thêm loại vị trí], nhập EFFECT_ON_TV

trong giá trị Vị trí, hãy dán mã

Các câu nói mẫu, đặt, TVCommandIntent tv {TVAction}

[LƯU], trên trang kỹ năng tiếp theo, chúng tôi phải thêm liên kết đến mã mà chúng tôi sẽ chạy khi "Ý định" được kích hoạt bởi từ bắt đầu ứng dụng "clicker" hoặc sau đó bởi "tv {slot value}".

Chúng tôi sẽ quay lại Alexa sau khi chúng tôi thiết lập tập lệnh python máy chủ Lambda.

Bước 2: Tập lệnh Python của Máy chủ AWS Lambda

Đăng ký Bậc miễn phí của AWS, tôi đã lo lắng rằng điều này có thể khiến tôi mất tiền thật nhưng sau một thời gian sử dụng và đọc các diễn đàn, giới hạn sử dụng quá cao đối với mục đích sử dụng cá nhân và phát triển, nó sẽ không bao giờ đạt đến điểm tính phí. Có một giải pháp thay thế là sử dụng máy chủ HTTPS của riêng bạn và có thể đây là điều mà esp8266 có thể làm, một hướng dẫn khác!

Đây là mã chạy khi Tên mời được thốt ra (ví dụ: "Alexa open clicker") và nhận từ ma thuật từ Alexa. Khi ứng dụng được khởi động, bạn chỉ cần nói "tv play, tv jump five" và Alexa sẽ gửi "play", "jump 5" tới tập lệnh python này. Ứng dụng sẽ hết thời gian chờ nếu không có phản hồi sau một thời gian.

Trong Dịch vụ AWS, trước tiên hãy chọn vị trí của bạn, ở trên cùng bên phải có một tùy chọn.

đối với Hoa Kỳ chọn N Virginia, đối với Liên minh Châu Âu chọn Ireland.

chọn Lambda từ tiêu đề Tính toán.

[Tạo một hàm Lambda]

[Chức năng trống]

Định cấu hình trình kích hoạt: nhấp vào hộp có dấu chấm và chọn Bộ kỹ năng Alexa

[KẾ TIẾP]

Định cấu hình chức năng

Đặt tên bất cứ điều gì bạn muốn

Mô tả, tùy thuộc vào bạn

Runtine: Python 2.7

dán vào mã python,

trong mã, địa chỉ HTTP URL sẽ cần được thay đổi thành địa chỉ ip bên ngoài của riêng bạn sau này

link = "https://185.255.255.255:777/text?data=" + favourite_color

thấp hơn trên màn hình là VAI TRÒ, nhấp vào tab và chọn Chọn một vai trò tùy chỉnh

Thao tác này sẽ mở ra một màn hình mới và nhấp vào cho phép., Nó trở lại màn hình chức năng Định cấu hình với việc thực thi cơ bản Lamda được chọn là Vai trò hiện có.

[NEXT] đánh giá, nhấn [Tạo chức năng] và nó sẽ biên dịch và cung cấp cho bạn một số ARN. SAO CHÉP mã này và chúng tôi sẽ đưa nó vào bộ kỹ năng alexa.

Bước 3:

Bước 4: Đặt liên kết Bộ kỹ năng Alexa tới AWS Lambda

Đặt liên kết Bộ kỹ năng Alexa tới AWS Lambda
Đặt liên kết Bộ kỹ năng Alexa tới AWS Lambda

Trong bộ kỹ năng Alexa, hãy chọn trang Cấu hình, đi tới Trường toàn cầu và chọn AWS Lambda và khu vực của bạn và dán mã ARN vào hộp, [NEXT], trong thử nghiệm, hãy chọn BẬT được chọn.

Chúng tôi đã hoàn thành ở đây bây giờ, bây giờ cho một số phần cứng.

Bước 5: Chuyển đổi Arduino NANO 3V3

Chuyển đổi Arduino NANO 3V3
Chuyển đổi Arduino NANO 3V3
Chuyển đổi Arduino NANO 3V3
Chuyển đổi Arduino NANO 3V3

ESP8266 chạy từ 3v3 nên bạn có thể chạy nó từ bộ điều chỉnh bên ngoài hoặc chuyển đổi nano. Tôi đã sử dụng một nano nhân bản với một chip CH340 usb. Tôi có hai bố cục pcb khác nhau mà tôi biết, nhưng hy vọng điều này sẽ bao gồm hầu hết các bố cục.

Chúng tôi cần thay thế bộ điều chỉnh 5V bằng một chân 3v3 tương thích, 1117-3. sau đó chỉ định tuyến 5V từ ổ cắm usb đến bộ điều chỉnh và kết nối mọi thứ khác với đầu ra của nó. May mắn thay, điều này có thể đạt được bằng cách loại bỏ diode đầu vào thay thế bộ điều chỉnh và thêm một dây từ phía đầu vào của diode vào Vin trên bảng nano.

kiểm tra xem bạn có thể lập trình nano sau khi chuyển đổi.

Bước 6: Mã NANO

Mã NANO
Mã NANO
Mã NANO
Mã NANO

Đây là mã đã sử dụng cho điều khiển từ xa SKY UK của tôi, nó có thể là kiểu máy cụ thể và đáng để kiểm tra mã của bạn hoạt động trong một bản phác thảo riêng biệt không được liên kết với esp8266.

Tôi đã sử dụng thư viện IRremote của shirriff Phiên bản 2.0.1

Sử dụng ví dụ IRrecord để nắm bắt các lệnh từ xa yêu cầu mô-đun bộ thu IR hoặc bạn có thể tìm thấy mã của mình trên web? Tôi không đi sâu vào vấn đề đó ở đây nhưng đây là nơi bạn có thể chọn những gì bạn kiểm soát và cách thức.

Kết nối bộ phát IR có sẵn trên ebay hoặc xây dựng một bộ phát. Bạn nên sử dụng đèn LED IR 850nm vì chúng là loại phổ biến nhất trong các bộ thu. Thư viện IR đã sử dụng D3 làm chân TX của nó

Từ alexa được chuyển đến nano, vì vậy từ đây nano của nó có khả năng điều khiển bằng giọng nói.

Bước 7: ESP8266

ESP8266
ESP8266
ESP8266
ESP8266
ESP8266
ESP8266

Có rất nhiều mô-đun ESP8266, tôi đã sử dụng một mô-đun mà tôi phải đi dây dưới kính hiển vi, ESP8266-01 có tiêu đề 2x4 và tất cả các chân bạn cần và giá rẻ của nó. Rất nhiều ví dụ trên web,. Chuyến đi của tôi lên, GPIO_0 cần được kết nối với gnd trong quá trình bật nguồn (sau đó có thể được thả nổi) khi lập trình, một chân cấu hình của nó, được kéo cao bên trong. Sau khi được lập trình, hãy để GPIO_0 nổi và cấp nguồn lại. CHPD kết nối với V + vĩnh viễn.

Quản lý bảng trong arduino 1.6.11 không có liên kết esp8622, trong Arduino IDEfile> tùy chọn> URL bổ sung của Trình quản lý bảng, hãy thêm:

arduino.esp8266.com/stable/package_esp8266c…

sau đó goto quản lý hội đồng quản trị và tìm gói esp8266. điều này bây giờ sẽ cung cấp cho bạn một danh sách lớn các bo mạch esp8266, chọn Tools> Board> ESP8266 Generic Module. Sử dụng mô-đun usb to uart giờ đây bạn có thể lập trình phần esp với esp8266_server_text. Nguồn với 3V3, kết nối TX-RX, RX-TX và Gnd.

Bạn cần nhập SSID mạng và mật khẩu của mình vào tập lệnh và cổng bạn sẽ đặt để chuyển tiếp cổng, ví dụ: 777.

Bạn có thể chạy mã bằng cách cấp nguồn lại esp trong khi kết nối với bộ chuyển đổi usb sang uart và cửa sổ nối tiếp arduino (9600 baud) sẽ hiển thị địa chỉ ip cục bộ của mô-đun esp. nhập điều này vào mã và lập trình lại.

Bước 8: Thiết lập mạng

Thiết lập mạng
Thiết lập mạng
Thiết lập mạng
Thiết lập mạng

Vì vậy, để cho phép cuộc gọi Lambda URL kết nối với máy chủ HTTP HTTP, chúng tôi cần đặt bộ định tuyến của bạn thành chuyển tiếp cổng. Tôi nhận được địa chỉ ip bên ngoài của mình từ https://www.whatsmyip.org/, tôi đang ở trên liên kết vi sóng nên nhà cung cấp của tôi có bộ định tuyến và tôi phải yêu cầu chuyển tiếp cổng từ họ. Tôi phải cung cấp địa chỉ IP của ESP8266 trên mạng của mình và cổng tôi đã chọn, ví dụ: 777. Địa chỉ IP bên ngoài cần được nhập vào tập lệnh lambda python và địa chỉ esp cục bộ của bạn sẽ được hiển thị khi bạn chạy mã esp8266 qua liên kết usb to uart.

Mô-đun ESP trên kết nối usb to uart sẽ hiển thị trên một thiết bị đầu cuối từ đến từ lambda.

Kết nối ESP với nano như hình 3v3, gnd và TX với nối tiếp mềm nano D2. nếu bạn có nano trên usb với màn hình comms nối tiếp trên epc, nó sẽ hiển thị những gì nó nhận được từ esp.

Nếu ESP không được kết nối với mạng hoặc không phản hồi lệnh gọi URL từ lambda, lambda sẽ hết thời gian chờ và Alexa báo cáo phản hồi kỹ năng không thành công

Bước 9: Alexa Mở Clicker Tv Pause

Alexa Open Clicker Tv Pause
Alexa Open Clicker Tv Pause

Tôi đặt mô-đun bên cạnh bộ thu nhưng với đầu ra IR công suất cao hơn, nó có thể ở bất kỳ đâu trong phòng. Tôi sử dụng bộ chuyển đổi nguồn usb thương hiệu đã biết để cấp nguồn qua usb.

Ngồi lại và nói "Alexa open Clicker"

Hướng dẫn sử dụng tivi

tv đi xuống

chọn tv

chơi tv

tv nhảy năm

để nhảy về phía trước một số phút đã định, các macro sẽ chuyển sang thời gian chờ 30x trong một khoảng thời gian được yêu cầu và sau đó phát.

Quảng cáo của Vương quốc Anh là khoảng năm phút.

Để thoát khỏi ứng dụng, hãy nói Alexa thoát.

Thưởng thức.

Đề xuất: