Với sự trợ giúp của Arduino, bạn có thể tạo một bản sao của khóa liên lạc nội bộ tại nhà trong vòng 15 phút, ví dụ: nếu xưởng đóng cửa và cần khóa gấp. Hãy xem làm thế nào điều này được thực hiện.
Nó là cần thiết
- - Arduino;
- - máy vi tính;
- - phím cho hệ thống liên lạc nội bộ loại iButton hoặc 1 dây;
- - khóa giả để tạo "bản sao" của khóa gốc;
- - 1 điện trở có điện trở 2, 2 kOhm;
- - dây nối.
Hướng dẫn
Bước 1
Mỗi khóa cho hệ thống liên lạc nội bộ có số riêng - chính số này đóng vai trò là mã định danh khóa. Đó là bởi số quan trọng mà hệ thống liên lạc nội bộ quyết định - của riêng bạn hoặc của người khác. Do đó, thuật toán sao chép như sau: đầu tiên bạn cần phải tìm ra số của khóa "được phép", và sau đó gán số này cho một khóa khác - một bản sao. Nó không tạo ra sự khác biệt cho hệ thống liên lạc nội bộ cho dù khóa gốc hay bản sao của nó được đính kèm. Sau khi kiểm tra số với cơ sở dữ liệu số được ủy quyền của mình, anh ta sẽ mở cửa.
Các phím của hệ thống liên lạc nội bộ, mà chúng ta sẽ kết nối với Arduino (đôi khi được gọi là iButton hoặc Touch Memory), được đọc và ghi qua giao diện 1 dây 1 dây. Do đó, sơ đồ nối dây rất đơn giản. Chúng ta chỉ cần một cặp dây và một điện trở kéo lên 2,2K. Sơ đồ được thể hiện trong hình.
Bước 2
Để làm việc với giao diện 1 dây, có các thư viện được tạo sẵn cho Arduino. Ví dụ: bạn có thể sử dụng cái này: https://www.pjrc.com/teensy/arduino_libraries/OneWire.zip. Tải xuống tệp lưu trữ và giải nén nó vào thư mục "thư viện" nằm trong thư mục Arduino IDE. Bây giờ chúng ta có thể rất dễ dàng làm việc với giao thức này.
Tải bản phác thảo được hiển thị trong hình minh họa vào Arduino theo cách tiêu chuẩn.
Bước 3
Bản phác thảo này cho thấy số khóa của hệ thống liên lạc nội bộ, được kết nối với mạch điện. Đây là những gì chúng ta cần bây giờ - chúng ta cần tìm ra số của khóa mà chúng ta muốn tạo một bản sao. Kết nối Arduino với máy tính của bạn. Hãy bắt đầu màn hình cổng nối tiếp: Công cụ -> Màn hình cổng nối tiếp (hoặc phím tắt Ctrl + Shift + M).
Bây giờ chúng ta hãy kết nối chìa khóa với mạch. Màn hình cổng sẽ hiển thị số khóa. Hãy ghi nhớ con số này.
Bước 4
Bây giờ chúng ta hãy viết lại bản phác thảo để nó có thể ghi dữ liệu vào bộ nhớ khóa. Mã được hiển thị trong hình minh họa. Nhận xét chi tiết được đưa ra trong mã. Quan trọng nhất, đừng quên đặt số lượng khóa ban đầu của bạn trong mảng key_to_write, mà bạn đã học trước đó một chút.
Bước 5
Tải bản phác thảo này lên Arduino. Hãy mở màn hình cổng nối tiếp. Hãy kết nối một chìa khóa với mạch, đó sẽ là bản sao của chìa khóa ban đầu. Màn hình cổng nối tiếp sẽ hiển thị thông báo về kết quả của lập trình.
Bước 6
1) Nếu, khi biên dịch bản phác thảo, xảy ra lỗi [WConstants.h: Không có tệp hoặc thư mục nào như vậy #include "WConstants.h"], thì trong tệp "OneWire.cpp", hãy thay thế khối đầu tiên sau nhận xét bằng phần sau:
#include "OneWire.h"
#include "Arduino.h"
bên ngoài "C" {
#include "avr / io.h"
#include "pin_arduino.h"
}
2) Nếu trong quá trình biên dịch xuất hiện lỗi "class OneWire không có thành viên nào tên là read_bytes" hoặc tương tự thì hãy tìm một thư viện OneWire khác, có rất nhiều thư viện đó trên Internet.