Mục lục:

Động cơ bước điều khiển ánh sáng + Giá đỡ / Chân đế treo tường: 6 bước
Động cơ bước điều khiển ánh sáng + Giá đỡ / Chân đế treo tường: 6 bước

Video: Động cơ bước điều khiển ánh sáng + Giá đỡ / Chân đế treo tường: 6 bước

Video: Động cơ bước điều khiển ánh sáng + Giá đỡ / Chân đế treo tường: 6 bước
Video: ĐẠT TIPS: Những phụ kiện ô tô 'phí tiền' không cần thiết phải mua 2024, Tháng bảy
Anonim
Động cơ bước điều khiển ánh sáng + Giá đỡ / Chân đế treo tường
Động cơ bước điều khiển ánh sáng + Giá đỡ / Chân đế treo tường

Chân đế này được sử dụng để chứa một động cơ bước được điều khiển bằng Arduino, được thiết kế để tự động điều khiển rèm theo mức độ ánh sáng trong phòng. Bạn cũng có thể thêm màn hình LCD để in mức độ ánh sáng. Thiết bị 3D chỉ để trình diễn, một thiết bị thực có thể cần thiết cho các ứng dụng thực tế như rèm hoặc bất kỳ ứng dụng nào khác mà bạn có thể nghĩ đến.

Bước 1: Thành phần

Để bắt đầu dự án này, bạn sẽ cần;

- 2 bộ chip Arduino- Một tấm chắn động cơ Arduino- Một màn hình LCD Arduino- 1 Breadboard- 1 Động cơ bước hai cực- 1 pin D- 1 Điện trở phụ thuộc ánh sáng- 1 Điện trở 10k Ω- 10 dây Nam-đực- 6 Nam- dây cái- Truy cập vào máy in 3D

Bước 2: Xây dựng Arduino

Xây dựng Arduino
Xây dựng Arduino

Đầu tiên hãy xếp tấm chắn động cơ bằng các chân Arduino và khi chúng đã thẳng hàng, hãy đặt nó xuống thật chắc chắn. Tiếp theo, gắn dây của động cơ bước vào các chân 8, 9, 10 và 11 của tấm chắn động cơ, sau đó kết nối pin D vào các khe như thể hiện trong sơ đồ. màn hình LCD và cắm chúng vào thiết bị Arduino khác như được hiển thị trong sơ đồ mạch. Sau đó, thiết lập LDR như hình trên, với điện trở kết nối với hàng âm. các kết nối A0 và ở phía đối diện, thêm 1 đầu vào 5V cho mỗi bảng bạn đang sử dụng, vì vậy nếu bạn đang sử dụng 2 bảng, bạn sẽ muốn mỗi trong số chúng có chân 5V và A0 đi đến LDR.

Kết nối tất cả các dây để nó giống như sơ đồ- 2 Đầu vào đến LDR- 2 Đầu ra từ LDR và một điện trở kết nối với đất- 8 dây với màn hình LCD, 1 5V, 1 Nối đất và 6 đầu vào- 4 dây kết nối với bước- 2 kết nối với pin- Mặt đất bảng mạch chính phải được kết nối

Bước 3: Mã hóa Arduino

Mã hóa Arduino
Mã hóa Arduino

Đây là một số mã mẫu để thay đổi trạng thái của bánh răng dựa trên LDR

Đây là mã cho phép dự án tự động điều khiển một bức màn. Ảnh trên giải thích các đường dẫn khác nhau thông qua các câu lệnh IF lồng nhau về bức màn đi lên, đi xuống hoặc giữ nguyên vị trí của nó. (bấm vào hình để xem đầy đủ vì có vấn đề về định dạng)

# defineLDRA0 // Xác định biến "LDR" thành A0 pin # include// Bao gồm mã động cơ bước

constintstepsPerRevolution = 200; // Khi động cơ bước được kích hoạt, vòng quay đầy đủ của nó bằng 200 bước

SteppermyStepper (stepPerRevolution, 8, 9, 10, 11); // Xác định đầu vào cho bước là chân 8, 9, 10, 11

voidsetup () {myStepper.setSpeed (60); // Đặt tốc độ động cơ hoạt động với Chế độ quay vòng (LDR, INPUT); // Xác định biến "LDR" làm đầu vào Serial.begin (9600); // Bắt đầu đọc nối tiếp }

voidloop () {intlightlevel = analogRead (LDR); // Xác định biến "lightlevel" là một hành động đọc giá trị của "LDR" Serial.print ("Light Level:"); Serial.println (lightlevel); // In giá trị của "lightlevel" với chú thích ở trên

/ * Giờ đây có một vòng lặp phát hiện mức độ ánh sáng ở mọi điểm trên đường đi * Có 3 tùy chọn, đi lên, đi xuống, giữ nguyên vị trí * Nó được thiết kế để nếu mức sáng vẫn giữ nguyên, nó sẽ giữ nguyên, nếu không nó sẽ thay đổi * tức là nếu nó là 950, thì chuyển sang 952, sẽ không có gì xảy ra, tuy nhiên nếu nó tăng từ 950 đến 600 nó sẽ kéo bức màn lên và ngược lại * Mỗi bước được ký hiệu bằng một chữ cái ở phía trước của bước để theo dõi vị trí của nó trong vòng lặp thông qua màn hình nối tiếp * /

if (lightlevel> = 900) {Serial.println ("A"); // Bước nào trong loopmyStepper.step (3 * stepsPerRevolution); // Bước thực hiện 3 vòng quay về phía trước. Nếu nó âm, nó sẽ chạy ngược lại (30000); // Để nó ở đó trong 5 phút intlightlevel = analogRead (LDR); // Xác định biến thể "lightlevel" là lần đọc mới nhất từ LDRSerial.print ("Light Level:"); // In văn bản trước biến Serial.println (lightlevel) // In giá trị của mức sáng

if (lightlevel> = 900) {Serial.println ("B"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (mức độ ánh sáng);

if (lightlevel> = 900) {Serial.println ("C"); myStepper.step (3 * -stepsPerRevolution); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Mức sáng:"); Serial.println (lightlevel);}

else {Serial.println ("D"); myStepper.step (3 * -stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);}}

else {Serial.println ("E"); myStepper.step (3 * -stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);

if (lightlevel> = 900) {Serial.println ("F"); myStepper.step (0); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (mức độ ánh sáng);}

else {Serial.println ("G"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);}}

}

else {Serial.println ("H"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);

if (lightlevel> = 900) {Serial.println ("I"); myStepper.step (3 * bướcPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (cấp độ sáng);

if (lightlevel> = 900) {Serial.println ("J"); myStepper.step (3 * -stepsPerRevolution); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Mức sáng:"); Serial.println (lightlevel);}

else {Serial.println ("K"); myStepper.step (3 * -stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);

}}

else {Serial.println ("L"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);

if (lightlevel> = 900) {Serial.println ("M"); myStepper.step (0); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (mức độ ánh sáng);}

else {Serial.println ("N"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);

}}

}

}

Bước 4: Tùy chọn: Màn hình LCD

Điều này sẽ in mức ánh sáng do LDR phát hiện trên màn hình LCD.

#bao gồm

  • // Thêm thư viện tinh thể lỏng với mã bổ sung # define ldr A0 // Định nghĩa biến "ldr" vào chân A0

    Màn hình LCD LiquidCrystal (8, 9, 4, 5, 6, 7); // khởi tạo thư viện với số lượng các chân giao diện

    voidsetup () {// mã chạy một lần tại startlcd.begin (16, 2); // thiết lập số cột và số dòng của LCD tương ứngpinMode (ldr, INPUT); // Định nghĩa ldr dưới dạng đầu vào pinSerial.begin (9600); // Bắt đầu giao tiếp với màn hình nối tiếp

    }

    voidloop () {// mã sẽ được lặp lại liên tụcSerial.println (analogRead (ldr)); // In bài đọc mà ldr nhận được (một số trong khoảng từ 0-1023) trên serial monitorlcd.setCursor (6, 0); // đặt con trỏ đến cột 6, dòng 0lcd.print (analogRead (ldr)); // In bài đọc này trên màn hình LCD screenndelay (1000); // Trì hoãn lệnh tiếp theo trong một giây

    }

    Bước 5: Các bộ phận in

    Sử dụng các tệp sau để in chân đế và bánh răng. Bạn có thể tùy chỉnh thiết bị cho mục đích của riêng mình và bạn có thể sử dụng giá đỡ để gắn nó lên tường hoặc làm màn hình. Vì thiết bị 3D yếu, một thiết bị thực có thể được sử dụng thay thế cho nó miễn là nó phù hợp với bức màn mà nó sẽ điều khiển.

    Nếu bánh răng in 3D sẽ được sử dụng, một trong các răng của bánh răng đã được tháo ra để một vít định vị có thể cố định nó vào động cơ.

    2 chân trước của giá treo tường cũng có thể được tháo rời nếu nó được gắn vào tường. Chúng chỉ được thêm vào để nó sẽ đứng vững trong khi chúng tôi đang thử nghiệm với nó.

    Bước 6: Vị trí

    Bây giờ tất cả các bộ phận đã sẵn sàng, đã đến lúc bắt đầu xếp lớp cuối cùng.

    Đầu tiên, đặt động cơ bước vào hộp được cung cấp trên giá đỡ và đặt bánh răng lên trục Tiếp theo, di chuyển các dây để chúng đi ra phía sau giá đỡ Cuối cùng, đặt arduino và pin phía sau giá đỡ

    Bảng của bạn bây giờ sẽ giống như một trong hình trên.

    Xin chúc mừng!

    Thiết bị này có thể được sử dụng cho rèm cửa tự động hoặc bất kỳ thứ nào khác mà bạn muốn được LDR kiểm soát.

    Bạn xong việc rồi. Thưởng thức sáng tạo mới của bạn.

Đề xuất: