Các bạn đã từng gửi bố mẹ cất hộ tiền lì xì và không lấy lại được chưa? Nếu bạn đã từng thì hãy chế tạo ngay chiếc hộp này nhé!
Chắc hẳn không ít lần các bạn đã từng bị bố mẹ bảo đưa tiền lì xì bố mẹ "giữ hộ" sau mỗi dịp năm mới. Và tất nhiên các bạn sẽ không thể từ chối lời đề nghị "giữ hộ" này từ bố mẹ. Tuy nhiên đến lúc các bạn cần đến tiền thì bố mẹ lại không đưa cho các bạn, bố mẹ sẽ đưa ra một lý do nào đấy rất hợp lý khiến bạn không thể lấy lại được tiền.
Hôm nay chúng tôi sẽ hướng dẫn các bạn chế tạo một chiếc hộp cất tiền lì xì mà chỉ có bạn mới có thể mở được
Clip giới thiệu hoạt động
Chuẩn bị:
Một hộp nhựa (giá khoảng 5.000 đồng, các bạn có thể tùy chọn những vật liệu khác có độ an toàn cao hơn tùy thuộc tình hình :D)
Hai chiếc bản lề nhỏ ( giá 5.000 đồng)
Một broad Arduino UNO R3 (giá khoảng 180.000 đồng)
Một module RFID RC522 ( giá khoảng 90.000 đồng)
Một Servo sg90 (giá khoảng 50.000 đồng)
Dây đực cái, cái cái ( giá khoảng 14.000 đồng)
Những linh kiện cần chuẩn bị
Bước 1: Làm kết cấu cơ đóng mở cho hộp
Đánh dấu vị trí đục lỗ để lắp bản lề
Các bạn ướm vị trí đặt bản lề trên hộp rồi đánh dấu để đục lỗ.
Sau khi đục lỗ xong các bạn dùng ốc để lắp bản lề vào hộp. Các bạn có thể đổ thêm keo con voi vào ốc để không thể xoay được ốc ra.
Kết cấu bản lề đóng mở hộp
Làm tương tự với phần nắp hộp. vậy là chúng ta đã hoàn chỉnh phần cơ khí cho chiếc hộp, giờ chúng ta sẽ chuyển sang phần điện.
Bước 2: Lắp các chi tiết điện tử
Đục lỗ để lắp servo
Các bạn đục một lỗ trên nắp hộp sao cho vừa với Servo SG90 sau đó đặt servo vào và lắp ốc. Như vậy là servo vừa làm nhiệm vụ khóa hộp đồng thời cũng như một cái núm để chúng ta cầm vào mở nắp hộp lên dễ hơn.
Cố định servo lên nắp hộp
Các bạn lắp ốc và dán thêm keo con voi để cố định Servo chắc hơn.
Với kết cấu khóa chúng ta sẽ dùng miếng nhựa đơn này, miếng nhựa này đi cùng với servo khi các bạn mua.
Thanh gờ để khóa nắp hộp
Và làm thanh gờ trên hộp để servo gá vào khóa cứng nắp hộp lại.
Đục lỗ để cắm cổng USB Type B
Tiếp theo các bạn đục một lỗ ở thành hộp để cho cổng USB type B ra. Khi nào cần dùng đến hộp chúng ta sẽ cấp điện qua cổng này.
Bước 3 Hàn chân kết nối cho module RC522 và nối dây với Arduino
Hàn chân kết nối
Module RFID RC522 khi mua về sẽ chưa được hàn chân kết nối, để sử dụng thì chúng ta phải tiến hành hàn chân kết nối.
Các chân kết nối trên RC522
Có 8 chân kết nối trên module RC522, nhưng chúng ta chỉ cần sử dụng 7 chân. Trong đó có 2 chân nguồn và 5 chân tín hiệu.
Sơ đồ chân kết nối như sau:
Chân RST cắm vào chân số 9 trên Arduino
Chân SDA cắm vào chân số 10 trên Arduino
Chân MOSI cắm vào chân số 11 trên Arduino
Chân MISO cắm vào chân số 12 trên Arduino
Chân SCK cắm vào chân số 13 trên Arduino
Chân 3.3V cắm vào chân số 3.3v trên Arduino
Chân GND cắm vào chân số GND trên Arduino
Các bạn kết nối RC522 với Arduino theo sơ đồ trên.
Bước 4: Kết nối Servo với Arduino và cố định Module RFID RC522
Kết nối servo Sg90 với Arduino
Trên Servo sẽ có 3 dây trong đó 2 dây nguồn thường có màu đỏ và nâu dây tín hiệu thường có màu cam. Các bạn sẽ kết nối dây tín hiệu với chân số 3 trên Arduino. Dây nguồn thì kết nối với chân 5V và chân GND trên arduino.
Cố định Module RC522 lên nắp hộp
Sau đó các bạn cố định module RC522 lên nắp hộp
Bước 5: Nạp code, đọc ID của thẻ.
Do Arduino không có sẵn thư viện MFRC522 vậy nên chúng ta cần phải thêm vào Arduino. Cách thêm thư viện vào Arduino các bạn có thể tham khảo trong các bài hướng dẫn " Đừng chơi Asphalt 8 nữa, chúng tôi sẽ hướng dẫn bạn chế hẳn ô tô thật mà điều khiển như trong game !"
Các bạn tải thư viện MFRC522 tại đây. Sau khi thêm thư viện xong các bạn copy đoạn code này vào Arduino trên máy tính và tiến hành nạp code lên arduino.
#include < SPI.h >
#include < Servo.h >
#include < RFID.h >
#define SS_PIN 10
#define RST_PIN 9
Servo genkservo;
RFID rfid(SS_PIN, RST_PIN);
unsigned char reading_card[5];
unsigned char master[5] = {228,56,192,167,187};
unsigned char master2[5] = {89,200,225,213,165};
unsigned char i,a,b,d;
void indication(int);
void allow();
int pos = 0;
void setup()
{
genkservo.attach(3);
Serial.begin(9600);
SPI.begin();
ADCSRA = 0;
rfid.init();
for (pos = 180; pos >= 0; pos -= 1)
{
genkservo.write(pos);
delay(10);
}
genkservo.detach();
}
void loop()
{
a=b=1;
if (rfid.isCard())
{
if (rfid.readCardSerial())
{
Serial.println(" ");
Serial.println("So ID cua the la:");
for (i = 0; i < 5; i )
{
Serial.print(rfid.serNum[i]);
Serial.print(" ");
reading_card[i] = rfid.serNum[i];
}
Serial.println();
}
{
for (i = 0; i < 5; i )
{
reading_card[i] = rfid.serNum[i];
}
for (i = 0; i < 5; i )
{
if (reading_card[i]!=master[i])
{
a=0;
}
if (reading_card[i]!=master2[i])
{
b=0;
}
}
d=a b;
if (d == 1)
{
allow();
}
}
}
rfid.halt();
}
void allow() {
genkservo.attach(3);
for (pos = 0; pos <= 180; pos = 1)
{
genkservo.write(pos);
delay(5);
}
delay(2000);
for (pos = 180; pos >= 0; pos -= 1)
{
genkservo.write(pos);
delay(30);
}
genkservo.detach();
}
Lấy ID thẻ của bạn
Sau khi nạp code thành công các bạn bấm tổ hợp phím Ctrl Shift M để mở cổng Serial Monitor trên màn hình lên. Và quẹt thẻ qua module RC522 để hiển thị ID của thẻ.
Thay ID thẻ của bạn vào đây
Sau khi đã có được ID của thẻ rồi các bạn tiến hành thay ID thẻ của bạn vào 2 dòng trong khung màu đỏ. Ở đây mình dùng 2 thẻ đi kèm theo module RC522. Thay ID thẻ của bạn vào xong thì các bạn tiến hành nạp lại code.
Vậy là chúng ta đã hoàn thành xong chiếc hộp đựng tiền lì xì an toàn rồi. Bây giờ bạn có thể bỏ tiền lì xì vào và chỉ có bạn mới có thể mở chiếc hộp ra để lấy tiền. Chúc các bạn thành công!
Xin cảm ơn cửa hàng Linh Kiện Hà Nội đã hỗ trợ chúng tôi thực hiện bài viết này.
Bạn đọc có thắc mắc trong quá trình thực hành có thể tham gia nhóm Facebook tại đây để đặt câu hỏi và thảo luận.
NỔI BẬT TRANG CHỦ
Người Trung Quốc khoe có được GPU AI xịn nhất của NVIDIA bất chấp lệnh cấm vận của Mỹ
Chưa rõ tại sao những GPU này lại có thể xuất hiện ở Trung Quốc.
Thiết kế mới của iPhone 17 Pro được xác nhận bởi nhiều nguồn uy tín