Mục lục:

Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật: 6 bước (có hình ảnh)
Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật: 6 bước (có hình ảnh)

Video: Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật: 6 bước (có hình ảnh)

Video: Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật: 6 bước (có hình ảnh)
Video: Cần Làm Gì Khi Bị Lộ Thông Tin Căn Cước Công Dân | THƯ VIỆN PHÁP LUẬT 2024, Tháng mười hai
Anonim
Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật
Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật
Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật
Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật
Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật
Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật
Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật
Thiết bị mô phỏng sự hiện diện tại nhà và thiết bị kiểm soát bảo mật

Dự án này cho phép chúng tôi mô phỏng sự hiện diện và phát hiện các chuyển động trong nhà của chúng tôi.

Chúng ta có thể cấu hình một mạng lưới các thiết bị được cài đặt trong các phòng khác nhau trong nhà của chúng ta, tất cả chúng đều được điều khiển bởi một thiết bị chính.

Dự án này kết hợp các tính năng này trên một thiết bị duy nhất (HÌNH 1):

  1. Nó là một trình mô phỏng hiện diện: thiết bị bật và tắt một bóng đèn (HÌNH 1) và sử dụng bộ phát IR (HÌNH 2) để gửi mã điều khiển IR 38 KHz đến các thiết bị được điều khiển bằng IR (TV, VCR, đèn,…)
  2. Nó là một máy dò chuyển động: thiết bị có một cảm biến PIR để phát hiện các chuyển động (HÌNH 3)

Toàn bộ hệ thống được điều khiển bởi một thiết bị chính gửi tín hiệu đến các thiết bị phụ khác có mặt trong mạng để bật và tắt đèn và kích hoạt các thiết bị IR được điều khiển theo một mô phỏng hiện diện theo lịch trình.

Các tính năng chính của thiết bị chính như sau:

  • Nó sử dụng sự bảo mật theo lịch trình của các lệnh để điều khiển từng thiết bị phụ. Ví dụ: đèn ở trạm phụ 1 sẽ sáng hàng ngày trong một khoảng thời gian ngẫu nhiên hoặc trạm phụ 2 sẽ bật TV và sẽ chuyển kênh sau một khoảng thời gian.
  • Nó nhận tín hiệu từ các trạm phụ khi phát hiện một chuyển động và gửi cho chúng tôi và e-mail
  • Nó cấu hình Máy chủ Web để kiểm soát và cập nhật toàn bộ hệ thống từ xa từ Đám mây

Tôi hy vọng bạn thích và hữu ích cho ai đó.

Bước 1: Xây dựng thiết bị nô lệ

Xây dựng thiết bị nô lệ
Xây dựng thiết bị nô lệ
Xây dựng thiết bị nô lệ
Xây dựng thiết bị nô lệ
Xây dựng thiết bị nô lệ
Xây dựng thiết bị nô lệ

Để xây dựng một thiết bị nô lệ, chúng ta sẽ cần những thứ sau:

  • Hộp điện
  • ARDUINO NANO hoặc vi điều khiển ARDUINO NANO tương thích
  • Protoboard 480
  • Chuyển tiếp
  • Máy phát IR 38 KHz
  • Cảm biến PIR
  • mô-đun nRF24L01 + ăng-ten
  • Bộ điều hợp cho mô-đun nRF24L01
  • Nguồn điện 5V, 0,6 A
  • Đui đèn
  • Bóng đèn
  • Cáp
  • Khối thiết bị đầu cuối

Các bước để gắn nó như sau (xem bản vẽ Fritzing cho mỗi kết nối chân):

  1. HÌNH 1: khoét lỗ trên hộp điện làm đui đèn
  2. HÌNH 2: lắp đặt protoboard 480 với vi điều khiển NANO, bộ phát IR và bộ nguồn
  3. HÌNH 3: nối dây pha của đui đèn với cực NC của rơ le và dây trung tính với đầu vào trung tính trong khối đấu nối. Sau đó, kết nối đầu cuối chung của rơ le với dây dẫn pha của đầu vào trong khối đầu cuối
  4. HÌNH 4: kết nối bộ phát IR và cảm biến PIR với vi điều khiển NANO. Xem bước 3 để định cấu hình mã IR cho thiết bị bạn muốn điều khiển
  5. HÌNH 5: lắp bộ chuyển đổi nRF24L01 bên ngoài hộp điện và kết nối với bộ vi điều khiển NANO. Như bạn có thể thấy trong hình này, cáp đi vào hộp điện thông qua một lỗ mà nó cũng được sử dụng để kết nối cáp lập trình USB với vi điều khiển NANO

Bước 2: Xây dựng Thiết bị Chính

Xây dựng thiết bị chính
Xây dựng thiết bị chính
Xây dựng thiết bị chính
Xây dựng thiết bị chính
Xây dựng thiết bị chính
Xây dựng thiết bị chính

Để xây dựng thiết bị chính, chúng ta sẽ cần những thứ sau:

  • Hộp điện
  • ARDUINO MEGA 2560 R3 hoặc vi điều khiển ARDUINO MEGA 2560 R3 tương thích
  • Mô-đun WiFi NodeMCU Lua Amica V2 ESP8266
  • RTC DS3231
  • Protoboard 170
  • Chuyển tiếp
  • Máy phát IR 38 KHz
  • Cảm biến PIR
  • mô-đun nRF24L01 + ăng-ten
  • Bộ điều hợp cho mô-đun nRF24L01
  • Nguồn điện 5V, 0,6 A
  • Đui đèn
  • Bóng đèn
  • Cáp
  • Khối thiết bị đầu cuối

Các bước để gắn nó rất giống với bước trước vì thiết bị chính về cơ bản là một thiết bị phụ với nhiều tính năng hơn (xem bản vẽ Fritzing cho mỗi kết nối chân):

  • HÌNH 1: khoét lỗ trên hộp điện làm đui đèn
  • HÌNH 2, HÌNH 3: cài đặt mô-đun ESP8266 trong protoboard 170 và đặt nó trên vi điều khiển MEGA 2560 như bạn có thể thấy trong hình
  • HÌNH 4: dán miếng gỗ vào bên trong hộp eletric. Trên mảnh gỗ, lắp bộ vi điều khiển MEGA 2560 với ESP8266, mô-đun đồng hồ DS3231 và bộ điều hợp nRF24L01
  • HÌNH 5: lắp đặt bộ nguồn và realy. Nối dây pha của đui đèn với cực NC của rơ le và dây trung tính với đầu vào trung tính trong khối đấu nối. Sau đó, kết nối đầu cuối chung của rơle với dây dẫn pha của đầu vào trong khối đầu cuối.

Bước 3: Định cấu hình thiết bị chính và thiết bị nô lệ

Cấu hình thiết bị Master và Slave
Cấu hình thiết bị Master và Slave

Để cấu hình thiết bị, bạn phải thực hiện các bước tiếp theo:

BƯỚC 3.1 (cả hai thiết bị)

Cài đặt các thư viện IRremote, RF24Network, RF24, DS3231 và Time trong ARDUINO IDE của bạn

BƯỚC 3.2 (chỉ dành cho thiết bị phụ)

Định cấu hình địa chỉ trong mạng. Chỉ cần tìm đoạn mã sau trong sketch "present_slave.ino" và cung cấp một địa chỉ ở định dạng bát phân. Chỉ sử dụng các địa chỉ lớn hơn 0 vì địa chỉ 0 được dành riêng cho thiết bị chính

const uint16_t this_node = 01; // Địa chỉ của thiết bị nô lệ của chúng tôi ở định dạng Bát phân

Tải bản phác thảo "present_slave.ino" vào bộ vi điều khiển.

BƯỚC 3.3 (chỉ dành cho thiết bị chính) (GIỚI THIỆU MÃ ĐIỀU KHIỂN IR)

Nếu bạn định sử dụng một thiết bị được điều khiển bởi các mã điều khiển IR 38KHz để mô phỏng sự hiện diện, bạn phải biết một số trong số chúng.

Nếu không, bạn phải lấy mã điều khiển IR từ thiết bị của mình.

Để làm điều đó, bạn sẽ cần một bộ thu IR 38KHz, tải vào một vi điều khiển NANO bản phác thảo "ir_codes.ino" và kết nối mọi thứ như bạn có thể thấy trong HÌNH 1

Sau đó, hướng điều khiển từ xa của bạn đến bộ thu IR, nhấn bất kỳ nút nào và bạn sẽ thấy trong màn hình nối tiếp một cái gì đó tương tự như:

(12 bit) SONY đã giải mã: A90 (HEX), 101010010000 (BIN) // nút POWER

(12 bit) SONY được giải mã: C10 (HEX), 110000010000 (BIN) // 4 nút (12 bit) SONY đã giải mã: 210 (HEX), 1000010000 (BIN) // 5 nút

Trong trường hợp này, bộ điều khiển từ xa sử dụng giao thức SONY IR và khi chúng tôi nhấn nút nguồn trên bộ điều khiển từ xa, chúng tôi nhận được mã IR "0xA90" có độ dài 12 bit hoặc khi chúng tôi nhấn nút 4 trên bộ điều khiển từ xa, chúng tôi nhận được IR mã "0xC10".

Tôi khuyên bạn nên ít nhất tìm nguồn và một số nút số mã điều khiển IR để mô phỏng sự hiện diện.

Sau khi bạn đã lấy được các mã IR trước đó, bạn phải giới thiệu chúng theo cách sau:

CÁCH ĐẦU TIÊN

Nếu bạn đã định cấu hình mạng wifi, bạn có thể thực hiện bằng cách sử dụng trang web (Xem bước: Máy chủ web)

CÁCH THỨ HAI

Nếu không, bạn phải tìm mã tiếp theo trong tệp "ir_codes.ino" và cập nhật thông tin. Trong đoạn mã bên dưới, bạn có thể thấy cách chúng tôi có thể giới thiệu thông tin thu được ở trên chỉ cho thiết bị chính (địa chỉ = 0)

/******************************************/

/ ******* Mã điều khiển IR ***************** / / ******************** ********************** / // protocol_id, number_of_bits, 10 mã điều khiển IR cho thiết bị chính (địa chỉ = 0) SONY, 12, 0xA90, 0xC10, 0x210, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 mã điều khiển IR cho thiết bị phụ (address = 1) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 mã điều khiển IR cho thiết bị phụ (address = 2) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 mã điều khiển IR cho thiết bị phụ (address = 3) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 mã điều khiển IR cho thiết bị phụ (địa chỉ = 4) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 / ************ ********************************* / / ********* Kết thúc mã điều khiển IR ** ************ / / ************************************ ********* /

Bản phác thảo được cấu hình để hoạt động với các giao thức IR sau:

  • NEC
  • SONY
  • RC5
  • RC6
  • LG
  • JVC
  • WHYNTER
  • SAMSUNG
  • NHỌN
  • MÓN ĂN
  • DENON
  • LEGO_PF

Trong tệp "ir_codes.ino", bạn có thể tìm thấy một số mã điều khiển IR cho các giao thức SAMSUNG và SONY.

/***************************************************************************/

// MỘT SỐ IR_PROTOCOLS VÀ MÃ // (SAMSUNG, number_of_bits, button POWER, button 1, 2, 3) // SAMSUNG, 32, 0xE0E010EF, 0xE0E020DF, 0xE0E0609F, 0xE0E0A05F // (SONY, number_of_bits, button POWER), 3, 4, 5, 6, 7, 8, 9, 0) // SONY, 12, 0xA90, 0x010, 0x810, 0x410, 0xC10, 0x210, 0xA10, 0x610, 0xE10, 0x110, 0x910 / ***** ************************************************** ******************* /

QUAN TRỌNG: mã điều khiển IR đầu tiên được giới thiệu phải là mã điều khiển IR để tắt thiết bị. Nó sẽ được gửi bởi chủ nhân cho các nô lệ khi không có bất kỳ hành động nào được lên kế hoạch cho thiết bị đó

Nếu một số cơ quan biết hoặc ai đó đã lấy được một số mã điều khiển IR của một số giao thức được liệt kê ở trên, vui lòng đăng nhận xét trong hướng dẫn này với thông tin sau: id giao thức, độ dài giao thức và mã điều khiển IR.

BƯỚC 3.4 (chỉ dành cho thiết bị chính) (GIỚI THIỆU QUY HOẠCH MÔ PHỎNG TRÌNH BÀY)

Bạn có thể giới thiệu quy hoạch mô phỏng sự hiện diện theo cách sau:

CÁCH ĐẦU TIÊN

Nếu bạn đã định cấu hình mạng wifi, bạn có thể thực hiện bằng cách sử dụng trang web (Xem bước: Máy chủ web)

CÁCH THỨ HAI

Bạn phải tìm mã tiếp theo trong tệp "ir_codes.ino" và cập nhật thông tin.

Định dạng lập kế hoạch mô phỏng sự hiện diện như sau:

(hour_init_interval1), (giờ_end_interval1), (giờ_init_interval2), (giờ_end_interval2), (min_delay_ir), (max_delay_ir), (min_delay_light), (max_delay_light)

/ ************ LẬP KẾ HOẠCH MÔ PHỎNG HIỆN TẠI ************ /

7, 8, 17, 3, 5, 60, 10, 40, // thiết bị chính (địa chỉ = 0) 0, 0, 17, 23, 3, 30, 5, 10, // thiết bị phụ (địa chỉ = 1) 0, 0, 0, 0, 0, 0, 0, 0, // thiết bị phụ (địa chỉ = 2) 0, 0, 0, 0, 0, 0, 0, 0, // thiết bị phụ (địa chỉ = 3) 0, 0, 0, 0, 0, 0, 0, 0 // thiết bị phụ (address = 4) / ************ END PRESENCE SIMULATOR ********** ********** /

Trong ví dụ trên, lập kế hoạch mô phỏng sự hiện diện cho thiết bị chính như sau:

  • (giờ_init_interval1 = 7) Mô phỏng khoảng thời gian đầu tiên sẽ bắt đầu lúc 7:00 sáng hàng ngày
  • (giờ_end_interval1 = 8) Mô phỏng khoảng thời gian đầu tiên sẽ kết thúc lúc 8 giờ sáng cùng ngày
  • (giờ_init_interval2 = 17) Mô phỏng khoảng thời gian thứ hai sẽ bắt đầu lúc 17:00 chiều. Hằng ngày
  • (giờ_end_interval2 = 3) Mô phỏng khoảng thời gian thứ hai sẽ kết thúc lúc 3 giờ sáng ngày hôm sau
  • (min_delay_ir = 5) (max_delay_ir = 60) Thời gian trễ tính bằng phút giữa các lần gửi ngẫu nhiên mã điều khiển IR là một số ngẫu nhiên trong khoảng từ 5 đến 60
  • (min_delay_light = 10) (max_delay_light = 40) Thời gian trễ tính bằng phút giữa bật và tắt công tắc đèn là một số ngẫu nhiên trong khoảng từ 10 đến 40

và lập kế hoạch mô phỏng sự hiện diện cho thiết bị phụ có địa chỉ 2 như sau:

  • (giờ_init_interval1

    = 0) Không có mô phỏng khoảng thời gian đầu tiên được xác định

  • (giờ_end_interval1 = 0) Không có mô phỏng khoảng thời gian đầu tiên được xác định
  • (giờ_init_interval2 = 17) Mô phỏng sẽ bắt đầu lúc 17:00 chiều. Hằng ngày
  • (giờ_end_interval2 = 23) Mô phỏng sẽ kết thúc lúc 23:00 tối. cùng ngày
  • (min_delay_ir = 3)

    (max_delay_ir

    = 30) Thời gian trễ tính bằng phút giữa các lần gửi ngẫu nhiên mã điều khiển IR là một số ngẫu nhiên từ 3 đến 30

    (min_delay_light = 5)

    (max_delay_light

    = 10) Thời gian trễ tính bằng phút giữa việc bật và tắt đèn là một số ngẫu nhiên trong khoảng từ 5 đến 10

BƯỚC 3.5 (chỉ dành cho thiết bị chính) (CẤU HÌNH ĐỒNG HỒ THỜI GIAN THỰC)

Một trong những chìa khóa của proyect này là thời gian. Chúng ta cần đặt thời gian của ARDUINO khi bản phác thảo bắt đầu chạy. Để làm điều đó, chúng ta cần một mô-đun đồng hồ thời gian thực. Một mô-đun đồng hồ là DS3231 hỗ trợ là bộ sạc nhỏ giọt pin dự phòng, có thể được sử dụng trừ khi được kết nối với bộ vi điều khiển bằng ba cáp dữ liệu sử dụng giao thức I2C.

Trước đây để sử dụng DS3231, bạn phải đặt thời gian trong mô-đun này. Để làm điều đó, bạn phải chạy trong thiết bị chính bản phác thảo "DS3231_set.ino".

BƯỚC 3.6 (chỉ dành cho thiết bị chính) (CẤU HÌNH MÔ ĐUN ESP8266)

Bản phác thảo đang chạy trong mô-đun này cố gắng kết nối với mạng wifi cục bộ của bạn và định cấu hình máy chủ web.

Vì vậy, chúng tôi cần cập nhật thông tin sau trong sketch "present_web.ino" để truy cập vào mạng wifi cục bộ của bạn và định cấu hình địa chỉ e-mail Gmail từ nơi ESP8266 sẽ gửi các chuyển động được phát hiện bởi tất cả các thiết bị trong mạng và địa chỉ e-mail mà bạn muốn nhận thông báo (có thể hướng dẫn cho Người gửi Gmail trên ESP8266)

const char * ssid = "ssid của mạng wifi cục bộ của bạn";

const char * password = "mật khẩu của mạng wifi cục bộ của bạn"; const char * to_email = "e-mail nơi bạn muốn nhận thông báo về phát hiện chuyển động"; Máy chủ WiFiServer (80); // cổng dùng để nghe

và thông tin sau trong bản phác thảo "Gsender.h".

const char * EMAILBASE64_LOGIN = "*** mã hóa đăng nhập Gmail của bạn bằng BASE64 ***";

const char * EMAILBASE64_PASSWORD = "*** mã hóa mật khẩu Gmail của bạn bằng BASE64 ***"; const char * FROM = "*** địa chỉ gmail của bạn ***";

QUAN TRỌNG: mã này không hoạt động với lõi ESP8266 cho phiên bản Arduino 2.5.0. Đối với một giải pháp tạm thời, hãy sử dụng phiên bản lõi 2.4.2

BƯỚC 3.7 (chỉ dành cho thiết bị chính)

Sau khi thực hiện bước 3.3, 3.4, 3.5 và 3.6 trước đó, hãy tải phác thảo "present_master.ino" trong vi điều khiển NANO và phác thảo "present_web.ino" trong mô-đun ESP8266

Bước 4: Kiểm tra hệ thống

Để kiểm tra xem mọi thứ có hoạt động như chúng ta muốn hay không, bản phác thảo "present_master.ino" có thể chạy ở chế độ thử nghiệm.

Bạn có thể kiểm tra một thiết bị cụ thể theo hai cách:

CÁCH ĐẦU TIÊN: nếu bạn không sử dụng mạng wifi, bạn phải tìm mã tiếp theo trong tệp "present_master.ino", thay đổi thành "true" giá trị ban đầu cho biến "bool_test_actiised" và cập nhật địa chỉ của một thiết bị để kiểm tra trong dòng mã tiếp theo và tải bản phác thảo vào vi điều khiển ARDUINO trong thiết bị chính.

boolean bool_test_actiised = false; // thay đổi thành true thành chế độ kiểm tra init

int device_to_test = 0; // địa chỉ thiết bị nô lệ để kiểm tra

Đừng quên thay đổi giá trị thành false khi bạn muốn thoát khỏi chế độ kiểm tra và tải lại bản phác thảo

CÁCH THỨ HAI: Nếu bạn sử dụng mạng wifi, bạn có thể sử dụng trang web để kích hoạt chế độ kiểm tra. Xem bước "Máy chủ web"

Nếu thiết bị cần kiểm tra sẽ gửi mã điều khiển IR, hãy đặt thiết bị chính hoặc thiết bị phụ trước thiết bị được điều khiển IR (TV, radio…).

Chế độ này hoạt động theo cách sau:

  • KIỂM TRA ÁNH SÁNG. Đèn của thiết bị cụ thể phải bật và tắt sau mỗi 10 giây.
  • KIỂM TRA MÃ IR. Bản phác thảo sẽ chọn ngẫu nhiên một mã IR đã được giới thiệu trước đó và nó sẽ gửi đến thiết bị được điều khiển bằng IR sau mỗi 10 giây. Vì vậy, bạn phải kiểm tra xem thiết bị đó có đang thực hiện hành động tương ứng với mã IR nhận được hay không
  • KIỂM TRA BỘ PHÁT HIỆN CHUYỂN ĐỘNG. Nếu thiết bị phát hiện chuyển động phía trước cảm biến PIR của nó, nó sẽ gửi tín hiệu đến thiết bị chính và đèn của nó phải bắt đầu nhấp nháy vài lần

Trong video ở cuối hướng dẫn này, bạn có thể thấy chế độ kiểm tra đang chạy.

Bước 5: Máy chủ web

Máy chủ web
Máy chủ web
Máy chủ web
Máy chủ web
Máy chủ web
Máy chủ web

Để kiểm soát hệ thống và kiểm tra xem mọi thứ có hoạt động bình thường hay không, mô-đun ESP8266 được cấu hình như một Máy chủ Web. Bạn không cần bất kỳ phần mềm bổ sung nào khác để truy cập từ xa vào mạng, chỉ cần nhập IP của bộ định tuyến vào trình duyệt web. Trong bộ định tuyến của mình, bạn đã định cấu hình chuyển tiếp cổng trước đó để truy cập mô-đun ESP8266 bằng cách sử dụng IP cục bộ tĩnh do bạn định cấu hình.

Mô-đun này được kết nối với vi điều khiển ARDUINO bằng giao thức I2C.

Bạn có thể xem trang web đầu tiên trong HÌNH 1:

  • Phần TRẠNG THÁI HỆ THỐNG hiển thị cho chúng ta thông tin về hệ thống:

    • Ngày và giờ của hệ thống. Điều rất quan trọng là ngày và giờ phải đúng giờ
    • Trạng thái của trình mô phỏng hiện diện (được bật hoặc tắt), ngày và giờ của hành động hiện diện cuối cùng và địa chỉ của thiết bị đã thực hiện hành động (HÌNH 2)
    • Trạng thái của máy dò chuyển động (được bật hoặc tắt) và lịch sử phát hiện chuyển động của thiết bị: bộ đếm và ngày giờ phát hiện chuyển động cuối cùng (HÌNH 3) Trong hình này, chúng ta có thể thấy rằng trong thiết bị có địa chỉ 1 đã được phát hiện 1 chuyển động và chuyến cuối vào lúc 16:50:34
  • Phần COMMANDS cho phép chúng tôi thực hiện những việc sau:

    • Để kích hoạt trình mô phỏng hiện diện
    • Để kích hoạt máy dò chuyển động
    • Cách chọn một thiết bị để khởi động và dừng kiểm tra (HÌNH 4)
  • Phần PRESENCE COMMAND cho phép chúng tôi thực hiện những việc sau:

    Để giới thiệu hoặc cập nhật kế hoạch mô phỏng sự hiện diện cho một thiết bị cụ thể. Trong HÌNH ẢNH 5, bạn có thể thấy cách cập nhật lập kế hoạch mô phỏng sự hiện diện cho thiết bị địa chỉ 1. Định dạng chuỗi như sau: (addr_device), (giờ_init1), (end_init1), (giờ_init2), (end_init2), (min_delay_ir), (max_delay_ir), (min_delay_light), (max_delay_light). Tất cả các số đều là số nguyên. Nếu bạn đã giới thiệu một chuỗi hợp lệ, bạn sẽ thấy lập kế hoạch mô phỏng sự hiện diện mới trước dòng chữ "LAST", nếu không, bạn sẽ thấy thông báo "LAST: NOT VALID"

  • Phần IR CODE COMMAND cho phép chúng tôi thực hiện những việc sau:

    Để giới thiệu hoặc cập nhật mã điều khiển IR cho một thiết bị cụ thể. Trong HÌNH ẢNH 6, bạn có thể xem cách cập nhật hoặc giới thiệu mã điều khiển IR mới cho thiết bị địa chỉ 1. Định dạng chuỗi như sau: (addr_device), (IR_protocol), (protocol_bits_length), (index_IR_control_code), (IR_control_code). (IR_protocol) là một chuỗi phân biệt chữ hoa chữ thường chỉ chấp nhận các giá trị tiếp theo (SONY, NEC, RC5, RC6, LG, JVC, WHYNTER, SAMSUNG, DISH, DENON, SHARP, LEGO_PF) và (IR_control_code) là số thập lục phân. Vì hệ thống được định cấu hình để lưu trữ 10 mã điều khiển IR, (index_IR_control_code) là một số nguyên từ 1 đến 10. Như trước đây, nếu bạn đã giới thiệu định dạng chuỗi hợp lệ, bạn sẽ thấy mã điều khiển IR mới trước văn bản "LAST", nếu không bạn sẽ thấy thông báo "CUỐI CÙNG: KHÔNG HỢP LỆ"

Để truy cập trang web này từ mạng wifi cục bộ của bạn, chỉ cần nhập IP mà bộ định tuyến của bạn đã gán cho ESP8266 trong trình duyệt web. Trong tất cả các hình ảnh, bạn có thể thấy rằng IP được chỉ định bởi bộ định tuyến của tôi là 192.168.43.120.

Để truy cập từ xa bên ngoài mạng cục bộ của bạn, bạn phải định cấu hình trong bộ định tuyến của mình cổng mà bạn sẽ sử dụng để lắng nghe dữ liệu đầu vào và chuyển hướng nó đến ESP8266 trong mạng cục bộ của bạn. Sau đó, chỉ cần nhập IP của bộ định tuyến của bạn vào trình duyệt web.

Bước 6: Một ví dụ để làm rõ tất cả

Image
Image
Một ví dụ để làm rõ tất cả
Một ví dụ để làm rõ tất cả

Tôi đã thiết kế một ví dụ cụ thể để làm rõ tất cả

Tôi đã chế tạo các thiết bị sau (HÌNH 2)

  • Một thiết bị được điều khiển IR bằng vi điều khiển NANO, một đèn LED RGB bên trong quả bóng bàn và một mô-đun thu IR (HÌNH 1). Khi chúng ta ấn nút điều khiển từ 1 đến 7 của điều khiển từ xa IR, quả bóng bàn sẽ đổi màu.
  • Thiết bị chính (địa chỉ 0)
  • Một thiết bị phụ (địa chỉ 1)

Với tất cả những điều trên, chúng tôi sẽ kiểm tra tất cả các tính năng của dự án. Lập kế hoạch mô phỏng sự hiện diện có thể là:

  1. Quả bóng được điều khiển bởi thiết bị nô lệ sẽ thay đổi màu sắc từ 17:00 chiều. đến 23:00 tối và vào buổi sáng từ 7:00 đến 8:00 sáng cứ cách một khoảng thời gian ngẫu nhiên từ 1 đến 1 phút.
  2. Đèn do thiết bị phụ điều khiển sẽ bật và tắt từ 17:00 chiều. đến 23:00 tối và vào buổi sáng từ 7 giờ sáng đến 8 giờ sáng cứ một khoảng thời gian ngẫu nhiên từ 1 đến 2 phút
  3. Đèn do thiết bị chính điều khiển sẽ bật và tắt từ 16:00 chiều. đến 1 giờ sáng của ngày hôm sau cứ cách một khoảng thời gian ngẫu nhiên từ 1 đến 2 phút

Sau khi thực hiện phác thảo "ir_codes.ino", chúng tôi đã xác định rằng giao thức IR được điều khiển từ xa IR sử dụng là "NEC", độ dài của mã IR là 32 bit và mã điều khiển IR cho các nút từ 1 đến 7 ở định dạng thập lục phân là:

NÚT 1 = FF30CF

NÚT 2 = FF18E7

NÚT 3 = FF7A85

NÚT 4 = FF10EF

NÚT 5 = FF38C7

NÚT 6 = FF5AA5

NÚT 7 = FF42BD

Bạn có thể cấu hình hệ thống theo hai cách:

CÁCH ĐẦU TIÊN: sử dụng trang web (xem video ở cuối phần hướng dẫn này)

CÁCH THỨ HAI: cập nhật tệp "ir_codes.ino" và tải lên sau:

/******************************************/

/ ******* Mã điều khiển IR ***************** / / ******************** ********************** / // protocol_id, number_of_bits, 10 mã điều khiển IR cho thiết bị chính (địa chỉ = 0) NEC, 32, 0xFF30CF, 0xFF18E7, 0xFF7A85, 0xFF10EF, 0xFF38C7, 0xFF5AA5, 0xFF42BD, 0, 0, 0, // protocol_id, number_of_bits, 10 mã điều khiển IR cho thiết bị phụ (address = 1) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 mã điều khiển IR cho thiết bị phụ (address = 2) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 mã điều khiển IR cho thiết bị phụ (address = 3) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 mã điều khiển IR cho thiết bị phụ (địa chỉ = 4) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 / ************ ********************************* / / ********* Kết thúc mã điều khiển IR ** ************ / / ************************************ ********* /

/ ************ LẬP KẾ HOẠCH MÔ PHỎNG HIỆN TẠI ************ /

0, 0, 16, 1, 0, 0, 1, 2, // thiết bị chính (địa chỉ = 0) 7, 8, 17, 23, 1, 1, 1, 2, // thiết bị phụ (địa chỉ = 1) Bóng RGB 0, 0, 0, 0, 0, 0, 0, 0, // thiết bị phụ (địa chỉ = 2) 0, 0, 0, 0, 0, 0, 0, 0, // thiết bị phụ (địa chỉ = 3) 0, 0, 0, 0, 0, 0, 0, 0 // thiết bị phụ (address = 4) / ************ END PRESENCE SIMULATOR ******** ************ /

Đề xuất: