Mục lục:
- Quân nhu
- Bước 1: Các mô-đun khác nhau
- Bước 2: Phần hội thảo 1
- Bước 3: Lắp ráp Phần 2
- Bước 4: Kết nối hai mắt
- Bước 5: Kết nối Bộ cảm biến & Mô-đun PIR
- Bước 6: Máy nghe nhạc MP3 và Bộ khuếch đại
- Bước 7: Hội đồng cuối cùng
- Bước 8: CÔNG BỐ
Video: Halloween Scary Eyes Prop: 8 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:32
Trong những năm qua, khi thực hiện các dự án khác nhau, đã có
toàn bộ bộ sưu tập các mô-đun khác nhau chỉ nằm xung quanh không được sử dụng và tôi muốn sử dụng ít nhất một số mô-đun trong số chúng cho một thứ gì đó thú vị và sáng tạo cùng một lúc.
Xem qua “Trang web Guidables.com” cho Ý tưởng, tôi bắt gặp một vài dự án mà tôi nghĩ có thể được kết hợp với nhau để tạo ra một thứ gì đó cho “Halloween” này.
Tôi phải ghi công cho Steve Quinn, Người tạo bất ngờ vì đã sử dụng ý tưởng của họ.
Quân nhu
MỤC VÀ CHẾ ĐỘ ĐÃ SỬ DỤNG
Các mô-đun được sử dụng
1 Bảng Atmega8 độc lập
2 Bảng điều khiển dựa trên PIR cho đầu ra 5 Volt
3 Bảng Khuếch đại LM386
4 Mô-đun Máy nghe nhạc MP3 Chung
5 mô-đun LED MAX7219 8x8
6 Mô-đun PIR (Chung)
Loa 7 4 inch 4 Ohm
Vật liệu khác
Một. Hộp các tông rỗng
NS. Chai nước sử dụng một lần rỗng
NS. LED đổi màu 5V
NS. Các loại dây
e. Súng bắn keo
NS. Sắt hàn
NS. Dụng cụ & Máy cắt
NS. Biến áp bước xuống 12V 1A
Quan trọng
1 Arduion IDE
2 Bảng lập trình cho chip AVR
3 Lập trình (Ghi) Phần mềm
Bước 1: Các mô-đun khác nhau
Đầu tiên, chúng tôi sẽ xem xét việc tạo ra các mô-đun khác nhau, Chúng tôi
chắc chắn có thể chỉ tạo ra một PCB cho tất cả các thiết bị điện tử và dự án hoạt động tốt nhưng đối với tôi, ý tưởng là sử dụng các mặt hàng khác nhau mà tôi đã làm trước đó cho các dự án khác nhau và bây giờ khi nhu cầu về chúng đã hết, tôi chỉ muốn sử dụng lại những món đồ đó.
Ban ATmega8
Tôi đang sử dụng chip ATmega8 mà không có bất kỳ tinh thể bên ngoài nào. Trên thực tế, những bảng này được tạo ra để chạy một số Mô-đun LED P10 16x32 và tôi còn lại một ít từ dự án này. Hình ảnh của bo mạch và Bố trí PCB như sau (Xem Hình ảnh). Có vô số bài viết về cách tạo Bảng Arduino của riêng bạn trên "các tài liệu hướng dẫn". Bạn có thể chỉ cần sử dụng bất kỳ Bảng Arduino cũ nào mà bạn có thể có.
Ban điều khiển PIR
Bảng PIR này được tạo ra để Bật & Tắt một số trang trí lễ hội Dựa trên đèn LED nhỏ và bây giờ nó chỉ nằm xung quanh và tôi quyết định đưa nó vào sử dụng. Bố cục mạch được hiển thị trong hình ảnh
Bảng Khuếch đại LM 386
Đây là mô-đun bộ khuếch đại giúp khuếch đại âm thanh phát ra từ Mô-đun máy nghe nhạc MP3. bố cục và mạch khá đơn giản và hình ảnh nói lên tất cả. Bố cục mạch và hình ảnh của bảng hoàn chỉnh là tự giải thích.
Mô-đun máy nghe nhạc MP3
Tôi đã sử dụng Mô-đun Máy nghe nhạc MP3 được hiển thị trong hình. Nó có sẵn trên Amazon, v.v., nó rẻ và dễ sử dụng. Phần tốt nhất về mô-đun cụ thể này là nó không yêu cầu bất kỳ lệnh hoặc kết nối bổ sung nào để bắt đầu chơi. Thời điểm nguồn điện thích hợp được cung cấp cho bo mạch, nó bắt đầu thực hiện công việc của mình.
Mô-đun LED MAX7219 8x8
Các Mô-đun màn hình LED 8x8 này có sẵn trên Amazon, v.v. Hình ảnh của những mô-đun tôi đã sử dụng được cung cấp.
Mô-đun PIR
Tôi đã sử dụng Mô-đun cảm biến PIR có sẵn. Nó có sẵn trên Amazon, v.v., rẻ và dễ sử dụng. Các hình ảnh được cung cấp để tham khảo.
Bước 2: Phần hội thảo 1
Ý tưởng là kết hợp tất cả các mô-đun này và tạo ra một Dự án Halloween sẽ được kích hoạt bất cứ khi nào có ai đó băng qua phía trước chỗ dựa. Đối với điều này, tôi đã kết nối nguồn điện 12volt với Bảng điều khiển PIR, lần lượt giảm điện áp xuống 5V DC với sự trợ giúp của IC 7805 và Điện áp 5V DC này được chuyển đến Cảm biến PIR và xa hơn nữa đến các mô-đun khác, Bo mạch ATmega8, Mô-đun Bộ khuếch đại và Mô-đun Máy nghe nhạc MP3 bất cứ khi nào ai đó đến trước Cảm biến PIR. Lưu đồ nói lên tất cả.
Như chúng ta có thể thấy, Cảm biến PIR kích hoạt Bảng ATmega8, Mô-đun Bộ khuếch đại và Mô-đun Máy nghe nhạc MP3, ATmega8 điều khiển "Mắt" Ma trận LED, Máy nghe nhạc MP3 phát ra các hiệu ứng âm thanh và mô-đun Bộ khuếch đại gửi tín hiệu đến loa.
Mã Arduino là một bước tiến trực tiếp từ người hướng dẫn của Steve Quinn, ngoại trừ thời gian đã được thay đổi trong mã. Mã được sử dụng được đưa ra dưới đây. Tệp INO cũng được đính kèm.
Mật mã
// D10 = Chân số O / P CS
// D11 = Chốt đồng hồ O / P kỹ thuật số
// D12 = Pin dữ liệu O / P kỹ thuật số
//
#bao gồm
#bao gồm
const int numDevices = 2; // số MAX7219 được sử dụng
const int dataPin = 12;
const int clkPin = 11;
const int csPin = 10;
LedControl lc = LedControl (dataPin, clkPin, csPin, numDevices);
// Thả mã này vào môi trường phát triển Arduino
#define LeftEye1 0
#define RightEye1 1
#define LeftEye2 2
#define RightEye2 3
#define LeftEye3 4
#define RightEye3 5
#define LeftEye4 6
#define RightEye4 7
#define LeftEye5 8
#define RightEye5 9
#define LeftEye6 10
#define RightEye6 11
#define LeftEye7 12
#define RightEye7 13
#define LeftEye8 14
#define RightEye8 15
#define LeftEye9 16
#define RightEye9 17
#define LeftEye10 18
#define RightEye10 19
#define LeftEye11 20
#define RightEye11 21
#define LeftEye12 22
#define RightEye12 23
#define LeftEye13 24
#define RightEye13 25
#define LeftEye14 26
#define RightEye14 27
#define LeftEye15 28
#define RightEye15 29
#define LeftEye16 30
#define RightEye16 31
#define LeftEye17 32
#define RightEye17 33
#define LeftEye18 34
#define RightEye18 35
#define LeftEye19 36
#define RightEye19 37
#define LeftEye20 38
#define RightEye20 39
typedef struct {
const unsigned char array1 [8];
}
binaryArrayType;
binaryArrayType binaryArray [40] =
{
{// LeftEye1, 0
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// RightEye1, 1
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// LeftEye2, 2
B00000000, B00111100, B01000010, B01011010, B01011010, B01000010, B00111100, B00000000
}, {// RightEye2, 3
B00000000, B00111100, B01000010, B01011010, B01011010, B01000010, B00111100, B00000000
}, {// LeftEye3, 4
B00000000, B00111100, B00100100, B00110100, B00110100, B00100100, B00111100, B00000000
}, {// RightEye3, 5
B00000000, B00111100, B00100100, B00110100, B00110100, B00100100, B00111100, B00000000
}, {// LeftEye4, 6
B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00000000
}, {// RightEye4, 7
B00000000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000
}, {// LeftEye5, 8
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000010, B01111100
}, {// RightEye5, 9
B01111100, B10000010, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// LeftEye6, 10
B01111110, B10000001, B10000001, B10011001, B10011001, B10000010, B10000100, B01111000
}, {// RightEye6, 11
B01111000, B10000100, B10000010, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// LeftEye7, 12
B01111110, B11000001, B10000001, B10011001, B10011010, B10000100, B10001000, B01110000
}, {// RightEye7, 13
B01110000, B10001000, B10000100, B10011010, B10011001, B10000001, B11000001, B01111110
}, {// LeftEye8, 14
B00111110, B01000001, B10000001, B10011001, B10011010, B10000100, B01001000, B00110000
}, {// NgayEye8, 15
B00110000, B01001000, B10000100, B10011010, B10011001, B10000001, B01000001, B00111110
}, {// LeftEye9, 16
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// RightEye9, 17
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, {// LeftEye10, 18
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, {// RightEye10, 19
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, {// LeftEye11, 20
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, {// RightEye11, 21
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, {// Mắt trái 12, 22
B01111110, B10000001, B10000001, B10000001, B10000001, B10011001, B10011001, B01111110
}, {// RightEye12, 23
B01111110, B10000001, B10000001, B10000001, B10000001, B10011001, B10011001, B01111110
}, {// LeftEye13, 24
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10011001, B01111110
}, {// RightEye13, 25
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10011001, B01111110
}, {// Mắt trái 14, 26
B00000000, B00111100, B01000010, B01000010, B01000010, B01011010, B00111100, B00000000
}, {// RightEye14, 27
B00000000, B00111100, B01000010, B01000010, B01000010, B01011010, B00111100, B00000000
}, {// LeftEye15, 28
B00000000, B00111100, B00100100, B00100100, B00100100, B00111100, B00111100, B00000000
}, {// RightEye15, 29
B00000000, B00111100, B00100100, B00100100, B00100100, B00111100, B00111100, B00000000
}, {// Mắt trái 16, 30
B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00000000
}, {// RightEye16, 31
B00000000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000
}, {// LeftEye17, 32
B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00000000
}, {// RightEye17, 33
B00000000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000
}, {// LeftEye18, 34
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10001101, B01111110
}, {// RightEye18, 35
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10001101, B01111110
}, {// LeftEye19, 36
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10000111, B01111110
}, {// RightEye19, 37
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10000111, B01111110
}, {// LeftEye20, 38
B01111110, B10000001, B10000001, B10000001, B10000001, B10000011, B10000011, B01111110
}, {// RightEye20, 39
B01111110, B10000001, B10000001, B10000001, B10000001, B10000011, B10000011, B01111110
}
};
typedef struct {
int frameCount; // con trỏ chỉ mục vào khung hoạt hình biểu thị binaryArray
int frameDelay; // Độ trễ khoảng MilliSeconds để giữ hiển thị khung hình động này
int frameLuminance; // 0… 15, Cường độ của ma trận dẫn cho một khung hình nhất định
} loại khung;
phim frameType =
{
// Nháy mắt
{LeftEye1, 1000, 1}, {LeftEye2, 5, 1}, {LeftEye3, 10, 1}, {LeftEye4, 10, 1}, {LeftEye17, 100, 1}, {LeftEye4, 10, 1}, {LeftEye3, 10, 1}, {LeftEye2, 5, 1}, // Toàn bộ lại rộng
{LeftEye1, 1500, 2}, // Nhăn mặt
{LeftEye5, 5, 3}, {LeftEye6, 5, 4}, {LeftEye7, 5, 5}, {LeftEye8, 1000, 11}, {LeftEye7, 5, 5}, {LeftEye6, 5, 4}, {LeftEye5, 5, 3}
};
void delayMillis (int mili giây)
{
for (int i = 0; i <mili giây; i ++)
delayMicroseconds (1000);
}
void setup () {
for (int x = 0; x <numDevices; x ++) {
lc.shutdown (x, false); // MAX72XX đang ở chế độ tiết kiệm năng lượng khi khởi động
lc.setIntensity (x, 1); // Đặt độ sáng thành giá trị mặc định
lc.clearDisplay (x); // và xóa màn hình
}
}
void loop () {
lc.setIntensity (0, 3);
lc.setIntensity (1, 3);
trong khi (đúng) {
for (int a = 0; a <(sizeof (movie) / sizeof (frameType)); a ++)
{
for (int i = 0; i <8; i ++)
{
lc.setRow (0, i, binaryArray [movie [a].frameCount].array1 );
lc.setRow (1, i, binaryArray [movie [a].frameCount + 1].array1 );
lc.setIntensity (0, phim [a].frameLuminance);
lc.setIntensity (1, phim [a].frameLuminance);
}
delayMillis (phim [a].frameDelay);
}
}
}
Bước 3: Lắp ráp Phần 2
Khi bạn đã thiết lập và chạy Arduino IDE, bạn cần sao chép mã và biên dịch / xác minh mã. Khi bạn biên dịch mã, tệp HEX được tạo trong thư mục TEMP của máy tính. Trước khi đóng Arduino IDE, bạn có thể sao chép tệp HEX từ thư mục tạm thời và tệp này là những gì chúng ta cần ghi vào Chip ATmega8 để làm cho nó hoạt động.
Trong khi biên dịch mã, tôi đã chọn bảng là "Arduino NG hoặc Older" và bộ xử lý là "ATmega8" và sau khi biên dịch, tôi đã sao chép tệp HEX từ Thư mục tạm thời của máy tính, trước khi đóng Arduino IDE.
Tệp HEX này đã bị ghi vào Chip ATmega8 bằng Trình ghi AVR bên ngoài. Tôi đã sử dụng phần mềm “Extreme Burner_AVR” và một Bảng ghi AVR cho mục đích này. Hình ảnh của bảng được đính kèm. Bạn có thể sử dụng bất kỳ phần mềm lập trình AVR nào mà bạn cảm thấy thoải mái.
Lý do sử dụng một lập trình viên bên ngoài là tôi không muốn ghi bộ nạp khởi động vào các chip Atmega8 và nếu không có bộ nạp khởi động, chúng sẽ không hoạt động trên Bảng Arduino thông thường hoặc với Arduion IDE. Khá dễ dàng để giải nén các tệp HEX sau khi bạn biên dịch mã với Arduino IDE và đó là những gì tôi đã làm.
GHI CHÚ
RẤT QUAN TRỌNG là chọn cài đặt bit cầu chì chính xác trong khi sử dụng bộ lập trình bên ngoài.
Trong trường hợp này, vì chúng tôi không sử dụng tinh thể bên ngoài và dựa vào xung nhịp bên trong của Chip ATmega8, điều quan trọng là chúng tôi phải cấu hình các bit cầu chì cho phù hợp. Tôi đã chọn các cài đặt cầu chì sau.
Lfuse- E4
Hfuse - D9
ĐIỀU NÀY CÓ Ý NGHĨA GÌ
Có nghĩa là chúng tôi không sử dụng tinh thể hoặc bộ cộng hưởng bên ngoài
Đồng hồ được đặt thành xung nhịp bên trong 8mHz
Khi Chip ATmega8 đã được lập trình, đã đến lúc lắp ráp dự án và thử nghiệm nó.
Bước 4: Kết nối hai mắt
Ma trận LED MAX7219 8x8 được kết nối như bên dưới.
Bảng ATmega8 ĐẾN ma trận MAX7219
IO Pin D10 TO CS PIN
IO Pin D11 ĐỂ ĐÓNG PIN
IO Pin D12 TO DIN PIN
VCC ĐẾN VCC
GND ĐẾN GND
Tham khảo Hình ảnh
Bước 5: Kết nối Bộ cảm biến & Mô-đun PIR
Tiếp theo, Cảm biến PIR được kết nối với Bộ điều khiển PIR
Ban, các kết nối như sau
Bảng điều khiển PIR đến Cảm biến PIR
VCC sang VCC
CTRL thành CTRL
GND sang GND
Tham khảo Sơ đồ
Đây là phần tạo nên tất cả. Cảm biến PIR nhận biết chuyển động của bất kỳ sinh vật máu nóng nào và bật nguồn điện cho tất cả các mạch / mô-đun khác nhau. Thời gian trên Cảm biến PIR đã được điều chỉnh theo yêu cầu và trong trường hợp này là khoảng 40 - 45 giây. Nó gửi 5 volt DC đến tất cả các mạch gắn với nó trong khoảng thời gian khoảng 40 -45 giây.
Bước 6: Máy nghe nhạc MP3 và Bộ khuếch đại
TIẾP THEO Mô-đun Máy nghe nhạc MP3 và Mô-đun Bộ khuếch đại.
Máy nghe nhạc MP3 tôi đã sử dụng không cần nhấn bất kỳ nút nào để bật, ngay khi điện áp thích hợp được cung cấp cho nó, nó sẽ tự động bắt đầu phát. Tôi chỉ cần một bản nhạc nên tôi đã tìm thấy thẻ SD có bộ nhớ thấp nhất mà tôi có thể (4 GB vì ngày nay hầu như không thể kiếm được thẻ nào có dung lượng thấp hơn). Những âm thanh tôi đã tải xuống từ internet, trên thực tế có một số hiệu ứng âm thanh đã được tải xuống và tất cả chúng đều được biên dịch để tạo thành một bản nhạc MP3 duy nhất bằng cách sử dụng phần mềm biên tập âm thanh. Tôi đã sử dụng “Trình chỉnh sửa sóng” và cuối cùng đã tải bản nhạc duy nhất này vào thẻ SD. Thẻ SD được gắn trong Mô-đun Máy nghe nhạc MP3 và đầu ra được kết nối với Mô-đun Bộ khuếch đại để lấy âm thanh từ loa.
Tham khảo Hình ảnh
Chip Khuếch đại LM386 yêu cầu rất ít linh kiện bên ngoài và mang lại âm thanh khá tốt từ các loa nhỏ. Mạch này khá dễ lắp ráp một chiếc perfboard và tôi đã mất khoảng 15-20 phút để lắp ráp cái này. Hình ảnh là khá tự giải thích.
Bước 7: Hội đồng cuối cùng
Trước khi lắp mọi thứ vào trong bao vây, tôi muốn kiểm tra mọi thứ và bố trí các mô-đun theo yêu cầu và thực hiện các kết nối cuối cùng. Sau khi tôi hài lòng với công việc của các bộ phận. Tôi đã sửa chúng bên trong Bao vây bảng thẻ được thực hiện cho mục đích này.
Tôi đang đính kèm một đoạn video sau khi lắp ráp chân đế cuối cùng.
Bước 8: CÔNG BỐ
Bao vây
Bao vây được làm từ một hộp bìa thẻ cũ, sơn màu đỏ. Nơi đặt mắt và cảm biến PIR đã được cắt ra bằng một lưỡi dao sắc bén. Một bản in từ hộp sọ được dán trên hộp và đôi mắt, v.v.cắt ra cho phù hợp và đường viền được vẽ lại bằng bút Permanent Marker màu đen. Tôi làm tóc từ những chai nước bỏ đi, cắt chúng thành những dải mỏng và dán chúng bằng Keo nóng chảy lên đầu và hai bên. Tôi đã sửa 2 đèn LED đổi màu ở hai bên và chúng được kết nối với đầu ra từ bảng điều khiển PIR.
Các lỗ nhỏ đã được tạo cho loa và tất cả các vật dụng đã được cố định với sự trợ giúp của Keo nóng chảy ở bên trong hộp. Dây nguồn đã được lấy ra khỏi mặt sau của hộp và đó là về nó.
Tôi hy vọng bạn thích làm Dự án Halloween này cho trẻ em !!
Tôi sẽ sớm đính kèm Đoạn âm thanh được sử dụng trong dự án này.
Chúc mọi người Halloween vui vẻ !!
Đề xuất:
TFT Animated Eyes: 3 bước
TFT Animated Eyes: Dự án này sử dụng các bộ phận chi phí thấp để tạo ra một cặp mắt hoạt hình trên màn hình TFT. Dự án dựa trên Adafruit " Uncanny Eyes " Dự án. Hai màn hình ST7735 128x128 pixel và bo mạch ESP32 thường có thể được mua trực tuyến với giá khoảng
SimpleClean Psycho Pass Dominator Prop: 6 bước
SimpleClean Psycho Pass Dominator Prop: Đây là nỗ lực đầu tiên của tôi trong việc tạo ra chỗ dựa. Tôi xoay sở để hoàn thành việc này trong một tuần nghỉ học, thông qua việc xây dựng tại chỗ. Người thống trị này hỗ trợ để có thể chuyển đổi từ một Kẻ liệt không gây chết người thành Chế độ loại bỏ chết người, đóng vai
Súng phun lửa Mini Prop: 6 bước
Mini Prop Flamethrower: Bạn có muốn một khẩu súng phun lửa cá nhân để làm tan tuyết, làm tan chảy thây ma hoặc phòng thủ tại nhà nhưng không muốn chi 400 đô la thì đây là dành cho bạn
Hát Bust Prop: 7 bước
Hát Bust Prop: Bạn đã bao giờ tự hỏi làm thế nào những bức tượng bán thân đang hát trong Ngôi nhà ma ám hoạt động hay thậm chí muốn thử làm cho chúng thật thành công, bài giảng này sẽ chỉ cho bạn cách làm chúng và nó thực sự đơn giản
Life Size Robot Prop: 6 bước
Life Size Robot Prop: Liza Trainer đã đưa ra một số thứ khá tuyệt vời trong những năm qua. Đây là một trong nhiều sáng tạo của cô ấy bắt đầu, không có gì đáng ngạc nhiên, chỉ với một ý tưởng đơn giản. Thưởng thức :). Được rồi các bạn, tôi thấy vấn đề. Không, tôi không ăn cắp ý tưởng, Liza là một người bạn, và