Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
uniE76C
uniE76B
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động

Bộ mô hình tự ráp cửa tự động Dùng Arduino UNO R3

650.000₫

Mã sản phẩm: X03Q

Sản phẩm hiện đang hết hàng.

uniF2E4 Xem chi nhánh còn hàng

– Dùng Arduino Uno R3

SẢN PHẨM CÙNG LOẠI
DỊCH VỤ & KHUYẾN MÃI LIÊN QUAN
  • Cộng thêm 65 điểm tích lũy
  • TP.HCM: Miễn phí vận chuyển [ tối đa 35.000 (đ) ]
    Tỉnh thành khác: Miễn phí vận chuyển [ tối đa 35.000 (đ) ]

    Xem thêm các khuyến mãi vận chuyển khác.

Sản phẩm liên quan

Chi tiết sản phẩm

Bộ mô hình tự ráp cửa tự động bằng Arduino là một sản phẩm nghiên cứu giúp tìm hiểu về cách ứng dụng cảm biến và điều khiển động cơ trong thực tế. Hệ thống sử dụng cảm biến PIR HC-SR501 để phát hiện chuyển động và điều khiển mạch L9110S nhằm mở hoặc đóng cửa tự động.

Thông qua việc nghiên cứu mô hình này, người học có thể hiểu rõ hơn về lập trình vi điều khiển, cách kết nối và sử dụng cảm biến, cũng như nguyên lý hoạt động của động cơ trong hệ thống tự động. Quá trình thử nghiệm cũng cho phép điều chỉnh các thông số để tối ưu hiệu suất hoạt động, đồng thời mở rộng kiến thức về điều khiển thiết bị điện tử. Đây là một dự án thực hành hữu ích cho những ai muốn nghiên cứu về tự động hóa và hệ thống nhúng.

Nguyên lý hoạt động:

Khi một trong hai cảm biến PIR phát hiện có người tiếp cận, hệ thống sẽ ngay lập tức kích hoạt động cơ để mở cửa. Khi cửa mở hoàn toàn và chạm đến công tắc hành trình, nó sẽ giữ nguyên trạng thái mở trong 3 giây. Nếu trong khoảng thời gian này vẫn có chuyển động, cửa sẽ tiếp tục duy trì trạng thái mở. Ngược lại, khi không còn phát hiện chuyển động, sau 3 giây, cửa sẽ tự động đóng lại. Trong quá trình đóng, nếu có người xuất hiện hoặc cửa gặp vật cản khiến cửa bị kẹt, hệ thống sẽ ngay lập tức dừng và mở cửa trở lại để đảm bảo an toàn. Nếu không có sự cố nào xảy ra, cửa sẽ tiếp tục đóng cho đến khi chạm vào công tắc hành trình, hoàn tất chu trình hoạt động một cách trơn tru và an toàn.

Danh sách linh kiện:

Video hướng dẫn lắp ráp phần khung:

Video hoạt động của sản phẩm:

Kích thước Bộ mô hình tự ráp cửa tự động:

Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động

Sơ đồ đấu nối:

  • Sơ đồ đấu nối với Arduino Nano V3
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
  • Sơ đồ đấu nối với Arduino Uno R3
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động

Code tham khảo:

#include "ACS712.h"

#define PIR_OUTSIDE 2  // Cảm biến PIR bên ngoài
#define PIR_INSIDE 7   // Cảm biến PIR bên trong
#define MOTOR_A 5      // Chân điều khiển L9110S
#define MOTOR_B 6
#define LIMIT_OPEN 3   // Công tắc hành trình mở cửa
#define LIMIT_CLOSE 4  // Công tắc hành trình đóng cửa
#define ACS712_PIN A0  // Cảm biến dòng ACS712

ACS712 sensor(ACS712_05B, ACS712_PIN); // Sử dụng ACS712 loại 5A

bool cuaDaMo = false;
unsigned long thoiGianKhongPhatHien = 0;
int dongDienchenhlech = 1; // Dòng điện chênh lệch để so sánh
int thoiGiantangdong = 1; // Thời gian phát hiện tăng dòng
int thoiGianmocua = 3000;// Thời gian cửa mở, thay đổi để mở lâu hơn
void setup() {
    pinMode(PIR_OUTSIDE, INPUT);
    pinMode(PIR_INSIDE, INPUT);
    pinMode(MOTOR_A, OUTPUT);
    pinMode(MOTOR_B, OUTPUT);
    pinMode(LIMIT_OPEN, INPUT_PULLUP);
    pinMode(LIMIT_CLOSE, INPUT_PULLUP);
    Serial.begin(9600);
    sensor.calibrate();  // Hiệu chỉnh ACS712
}

// 🏠 Hàm kiểm tra có người không
bool coNguoi() {
    return digitalRead(PIR_OUTSIDE) == HIGH || digitalRead(PIR_INSIDE) == HIGH;
}

// 🔄 Hàm mở cửa
void moCua() {
    Serial.println("📢 Đang mở cửa...");
    digitalWrite(MOTOR_A, LOW);
    digitalWrite(MOTOR_B, HIGH);

    while (digitalRead(LIMIT_OPEN) == HIGH) {  
        if (coNguoi()) {
            thoiGianKhongPhatHien = millis();
        }
    }

    dungCua();
    Serial.println("🛑 Cửa đã mở hoàn toàn!");
    cuaDaMo = true;
    thoiGianKhongPhatHien = millis();  // Đặt thời gian chờ trước khi đóng
}

// 🔄 Hàm đóng cửa có kiểm tra kẹt
void dongCua() {
    Serial.println("🔄 Đang đóng cửa...");
    float tongDongDien = 0;
    int soLanDo = 0;
    unsigned long thoiGianBatDauTangDongDien = 0;

    while (digitalRead(LIMIT_CLOSE) == HIGH) {  
        digitalWrite(MOTOR_A, HIGH);
        digitalWrite(MOTOR_B, LOW);
        
        float dongDienHienTai = doDongDien();
        soLanDo++;
        tongDongDien += dongDienHienTai;
        float dongDienTrungBinh = tongDongDien / soLanDo;

        if (coNguoi()) {  
            Serial.println("🚨 Phát hiện người! Dừng đóng cửa.");
            dungCua();
            delay(100);
            moCua();
            return;
        }

        if (dongDienHienTai - dongDienTrungBinh > dongDienchenhlech) {
            if (thoiGianBatDauTangDongDien == 0) {
                thoiGianBatDauTangDongDien = millis();
            } else if (millis() - thoiGianBatDauTangDongDien > thoiGiantangdong) {
                Serial.println("⚠️ Động cơ bị kẹt! Mở cửa lại...");
                dungCua();
                delay(100);
                moCua();
                return;
            }
        } else {
            thoiGianBatDauTangDongDien = 0;
        }
    }
    dungCua();
    Serial.println("✅ Cửa đã đóng hoàn toàn!");
    cuaDaMo = false;
}

// 🛑 Hàm dừng động cơ
void dungCua() {
    digitalWrite(MOTOR_A, LOW);
    digitalWrite(MOTOR_B, LOW);
    Serial.println("⏹️ Động cơ dừng!");
}

// 🔋 Hàm đo dòng điện động cơ (đơn vị: mA)
float doDongDien() {
    float dongDien_A = sensor.getCurrentAC();  // Đo dòng điện (A)
    float dongDien_mA = dongDien_A * 1000;     // Chuyển đổi sang mA
    Serial.print("🔋 Dòng điện: ");
    Serial.print(dongDien_mA);
    Serial.println(" mA");
    return dongDien_mA;
}

// 🔄 Chương trình chính
void loop() {
    if (coNguoi()) {  
        Serial.println("👀 Phát hiện người!");
        if (!cuaDaMo) { 
            moCua();
        }
        thoiGianKhongPhatHien = millis();  // Reset thời gian đếm ngược
    }

    if (cuaDaMo && millis() - thoiGianKhongPhatHien > thoiGianmocua) {  
        dongCua();
    }
}

Hình ảnh sản phẩm:

Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Bộ mô hình tự ráp cửa tự động
Phản hồi khách hàng
Nshop reviewer

Nshopvn.com · 28/03/2025 4:54 PM

uniE735uniE735uniE735uniE735uniE735

Bộ mô hình tự ráp cửa tự động giá chỉ 650.000₫

Hộ kinh doanh Linh kiện điện tử Nshop / GPĐKKD số: 41X8035261 do UBND Quận Tân Phú cấp ngày 08/05/2019

Điện tử NShop Tân Phú: 1 Bùi Xuân Phái, Tây Thạnh, Tân Phú, TP. HCM – 📞 0902 64 39 78

Điện tử NShop Quận 9: 7 Trần Hưng Đạo, Hiệp Phú, Quận 9, TP. HCM – 📞 093 27 23 186

NSHOPVN.COM © 2019 - 2021

DMCA.com Protection Status Đã thông báo bộ công thương