Mục lục:

Arduino Light Up Sweater: 9 bước
Arduino Light Up Sweater: 9 bước

Video: Arduino Light Up Sweater: 9 bước

Video: Arduino Light Up Sweater: 9 bước
Video: Arduino Tutorial: LED Sequential Control- Beginner Project 2024, Tháng bảy
Anonim
Image
Image

Những bữa tiệc áo len xấu xí là một yếu tố chính trong những ngày lễ. Mỗi năm, bạn phải bắt đầu trò chơi của mình và mặc chiếc áo len đẹp nhất mà bạn có thể tìm thấy. Nhưng năm nay bạn có thể làm một cách tốt hơn và tạo ra chiếc áo len đẹp nhất. Chúng tôi sử dụng Adafruit Wearables để tạo ra một chiếc áo len sáng màu tuyệt đẹp và chắc chắn sẽ gây ấn tượng với bạn bè và gia đình của bạn.

Adafruit đã tạo một số dự án tuyệt vời về Wearables nên chúng tôi đang sử dụng mã đã sửa đổi của họ để triển khai dự án này từ dự án Váy lấp lánh của họ.

Trong hướng dẫn này, bạn sẽ:

  • Học cách sử dụng Thiết bị đeo được
  • Mã hóa bảng mạch chính Flora, gia tốc kế và NeoPixels của bạn để sáng lên bằng Arduino

Bước 1: Bắt đầu

Bắt đầu
Bắt đầu

Chúng tôi sẽ sử dụng Adafruit Flora Wearables, một bộ pin, sợi dẫn điện và một chiếc áo len dành cho ngày lễ. Bạn cũng sẽ cần một số chỉ, kim và sơn móng tay thông thường. Tất cả sẽ có ý nghĩa trong thời gian. Phiên bản của chúng tôi sẽ giúp ông già Noel sáng mắt nhưng chúng tôi ủng hộ tất cả các tôn giáo, ngày lễ và tín ngưỡng, vì vậy hãy sáng tạo!

  • Bảng chính Adafruit Flora (https://www.adafruit.com/product/659)
  • Gia tốc kế Flora (https://www.adafruit.com/product/1247)
  • Flora RGB NeoPixels (https://www.adafruit.com/product/1260)
  • Bộ pin (https://www.adafruit.com/product/727)
  • Chủ đề dẫn điện (https://www.adafruit.com/product/641)

Bước 2: Bố cục

Bố trí
Bố trí

Chúng ta cần bố trí các pixel, bảng mạch chính và gia tốc kế trước khi bắt đầu quá trình ghép nối. Các pixel sẽ có kết nối dữ liệu, + cho nguồn và - cho mặt đất. Gia tốc kế cần kết nối 3V, SCL, SDA và mặt đất.

Bố trí các pixel, bảng mạch chính và gia tốc kế trên áo len khi bạn định khâu nó. Hãy chắc chắn rằng bạn sẽ không vượt qua bất kỳ đường khâu nào vì điều đó sẽ gây ra quần đùi. Vì chúng tôi đang có bảng của chúng tôi hướng vào trong và NeoPixels hướng ra ngoài nên chúng tôi đang sử dụng 3V, Pin 9 và Nối đất để kết nối NeoPixels.

NeoPixels có một mũi tên cho biết cách kết nối dữ liệu sẽ đi từ bảng chính Flora đến NeoPixel tiếp theo. Đảm bảo rằng tất cả các NeoPixel đều được xếp theo cùng một cách.

Bước 3: Mẹo khâu

Phần quan trọng của khâu là ba thứ; không có quần đùi / đường khâu, thắt nút khi kết thúc một đường khâu và kết nối tốt với Thiết bị đeo được.

Không có quần short / đường khâu chéo

Đảm bảo bố trí Thiết bị đeo được của bạn sao cho đường khâu của bạn không bị chéo. Rõ ràng là các đường không được cắt ngang. Khi bạn đã có một bố cục đảm bảo tất cả các mũi khâu vẫn tách biệt, bạn cần đảm bảo rằng khi khâu bạn phải thật chặt chẽ. Nếu bạn để quá nhiều độ chùng, nó có thể cho phép các sợi chỉ chạm vào nhau. Khi bạn hoàn thành một đường khâu, hãy cắt các đầu thừa để không có sợi chỉ bị lạc.

Knots chặt chẽ

Khi kết thúc một đường khâu, một nút thắt chặt sẽ đảm bảo đường khâu không bị lỏng. Mẹo nhỏ là chấm một ít sơn móng tay trong suốt lên nút thắt và để khô. Điều này giúp giữ nút cố định, tương tự như keo. Chỉ dẫn điện không giữ chặt chẽ như chỉ thông thường, vì vậy tôi thực sự khuyên bạn nên sử dụng sơn móng tay, nếu không bạn có thể gặp khó khăn khi đường khâu bị lỏng.

Kết nối tốt

Đảm bảo rằng các vòng trên ghim được chặt chẽ. Điều này sẽ giúp đảm bảo rằng nếu mạch của bạn không hoạt động, chúng tôi biết đó không phải là sự cố của các kết nối. Bạn có thể lặp qua các chân 2-3 lần để đảm bảo rằng sẽ luôn có một kết nối tốt.

Mẹo / Thủ thuật

Đảm bảo rằng mặt hàng quần áo của bạn không được bật nguồn khi bạn cởi và cởi. Đây là cách dễ nhất để các sợi chạm vào nhau và gây ra hiện tượng đoản mạch. Không bật bộ pin của bạn cho đến khi mặt hàng quần áo được bật thoải mái.

Bước 4: Khâu các thành phần

Khâu các thành phần
Khâu các thành phần
Khâu các thành phần
Khâu các thành phần

Phần đầu tiên chúng ta cần đính kèm là Bảng chính Flora. Khâu bảng vào áo len của bạn bằng chỉ thường xuyên qua hai chiếc ghim mà bạn không định sử dụng. Điều này sẽ giữ bảng đúng vị trí và giúp bạn dễ dàng khâu bằng cách sử dụng chỉ dẫn điện. Một vài vòng lặp đơn giản là đủ để giữ cho nó không di chuyển.

Tiếp theo, bạn cần khâu bốn kết nối từ Bảng mạch chính Flora và Máy đo gia tốc. Đây sẽ là Nguồn, Mặt đất, SCL và SDA. Nếu bạn đặt Gia tốc kế ở phía trên bên trái của bo mạch chính, các kết nối sẽ thẳng hàng. Vì vậy, bạn sẽ có bốn mũi khâu riêng biệt để kết nối hai bảng. Sử dụng một chút sơn móng tay trong suốt trên cả hai nút thắt ở đầu để giữ cho chúng không bị bung ra. Một chút sơn móng tay trên bảng sẽ không làm tổn thương chúng.

Cuối cùng, bạn cần kết nối 3V, nối đất và kết nối dữ liệu từ Bo mạch chính Flora với NeoPixels. Bạn có thể thực hiện hai đường khâu dài, liên tục cho mặt đất và nguồn vì chúng nằm ở dưới cùng và trên cùng của NeoPixels. Đối với các kết nối dữ liệu từ Pin 9, bạn cần thực hiện các đường khâu riêng biệt từ mỗi NeoPixel đến các đường tiếp theo.

Bước 5: Arduino IDE

Bo mạch chính Flora tương thích với Arduino nên chúng tôi sẽ sử dụng Arduino IDE cho mã của mình. Bạn có thể tải xuống phiên bản mới nhất thông qua liên kết này.

Cũng có một phiên bản web thông qua liên kết này.

Có bốn thư viện cần được thêm vào để sử dụng NeoPixels và Accelerometer của chúng tôi. Đi tới Phác thảo, Bao gồm Thư viện, Quản lý Thư viện. Đối với mỗi cái, bạn sẽ cần phải tìm kiếm nó theo tên, chọn phiên bản mới nhất và nhấp vào cài đặt.

  • Adafruit NeoPixel
  • Cảm biến hợp nhất Adafruit
  • Adafruit TSL2561
  • Adafruit LSM303DLHC

Sau khi chúng được cài đặt và đường khâu hoàn tất, chúng tôi đã sẵn sàng để kiểm tra áo len của mình để đảm bảo mọi thứ đều hoạt động.

Bước 6: Tập lệnh thử nghiệm

Tập lệnh thử nghiệm
Tập lệnh thử nghiệm

Để kiểm tra dự án của chúng tôi, chúng tôi cần kết nối bo mạch chính Adafruit của chúng tôi với máy tính của bạn bằng cáp USB. Sau đó, vào Tools, Port và chọn bảng Flora Main của bạn trong danh sách.

Điều đầu tiên chúng tôi sẽ kiểm tra xem gia tốc kế có hoạt động bình thường không. Đi tới File, Examples, Adafruit LSM303DLHC, accelsensor. Thao tác này sẽ mở một tập lệnh kiểm tra xem cảm biến có được kết nối hay không và đọc các giá trị tọa độ. Tải lên bảng của bạn và mở Serial Monitor ở trên cùng bên phải của Arduino IDE. Nếu bạn thấy các giá trị thay đổi trong Màn hình nối tiếp, như trong ảnh, trong khi di chuyển gia tốc kế thì nó đang hoạt động!

Điều thứ hai chúng tôi sẽ kiểm tra xem NeoPixels có hoạt động hay không. Đi tới Tệp, Ví dụ, Adafruit NeoPixels, strandtest. Trước khi chúng tôi chạy tập lệnh này, hãy thay đổi Ghim thành 9 và số pixel thành 6 (hoặc bất kỳ thứ gì bạn đang sử dụng cho dự án của mình). Tải lên bảng của bạn và nếu tất cả các pixel sáng lên, bạn đã sẵn sàng cho tập lệnh cuối cùng!

Bước 7: Tập lệnh cuối cùng

Kịch bản cuối cùng
Kịch bản cuối cùng

Bây giờ đã đến lúc tải mã cuối cùng của chúng tôi. Sao chép mã bên dưới vào một tệp dự án mới. Pin được đặt thành 9 và số NeoPixels được đặt thành 6. Nếu bạn đang sử dụng thứ gì đó khác, hãy thay đổi chúng trước khi chạy tập lệnh này. Bạn có thể điều chỉnh các màu yêu thích bằng cách điều chỉnh các giá trị của R, G và B từ 0-255. Bạn cũng có thể thêm nhiều màu yêu thích hơn bằng cách thêm một dòng mới. Ngưỡng di chuyển cũng có thể được điều chỉnh. Số càng thấp, càng dễ phát hiện chuyển động và bật NeoPixels. Khi bạn thực hiện bất kỳ thay đổi nào bạn muốn, hãy lưu và tải lên Bảng chính Flora của bạn. Bạn sẽ có thể thấy các pixel sáng lên nếu bạn di chuyển gia tốc kế xung quanh. Sau khi thấy rằng bạn có thể rút phích cắm khỏi máy tính của mình và chúng tôi có thể kết nối với bộ pin của mình.

#include #include #include #include #define PIN 9 #define PIXELCOUNT 6 // Tham số 1 = số pixel trong dải // Tham số 2 = số pin (hầu hết đều tốt nhưng chúng tôi đang sử dụng 9) // Tham số 3 = loại pixel cờ, thêm với nhau khi cần thiết: // Các điểm ảnh NEO_RGB được nối dây cho dòng bit RGB (v1 pixel FLORA, không phải v2) // Các điểm ảnh NEO_GRB được nối dây cho dòng bit GRB (hầu hết các sản phẩm NeoPixel. Sản phẩm chúng tôi đang sử dụng) // NEO_KHZ400 400 KHz (cổ điển 'v1' (không phải v2) FLORA pixel, trình điều khiển WS2811) // NEO_KHZ800 800 KHz bitstream (hầu hết các sản phẩm NeoPixel có đèn LED W / WS2812. sản phẩm chúng tôi đang sử dụng) Adafruit_NeoPixel dải = Adafruit_NeoPixel (PIXELCOUNT, PIN, NEO_GRB + NEO_KHZ800); Adafruit_LSM303_Accel_Unified accel = Adafruit_LSM303_Accel_Unified (54321); // Điều chỉnh R, G, B từ 0-255 và // thêm mới {nnn, nnn, nnn}, để có thêm màu // RGB uint8_t myFavoriteColors [3] = {{ 255, 255, 255}, // trắng {255, 0, 0}, // đỏ {0, 255, 0}, // xanh lục}; // không chỉnh sửa dòng bên dưới #define FAVCOLORS sizeof (myFavoriteColors) / 3 // số này điều chỉnh độ nhạy chuyển động // số thấp hơn = nhạy hơn #define MOVE_THRESHOLD 5 // siêu nhạy hiệnvoid setup () {Serial.begin (9600); // Cố gắng khởi tạo và cảnh báo nếu chúng tôi không thể phát hiện ra chip // Sử dụng Serial Monitor để xem bản in if (! Accel.begin ()) {Serial.println ("Chúng tôi gặp sự cố. Đó là bạn, không phải tôi … Không thể khởi chạy LSM303. Tôi sẽ bắt đầu bằng việc kiểm tra nhanh hệ thống dây điện "); trong khi (1); } dải.begin (); dải.show (); // Đặt pixel thành 'off'} void loop () {/ * Nhận sự kiện cảm biến mới * / sự kiện sensor_event_t; accel.getEvent (& sự kiện); // Serial.print ("Dấu X:"); Serial.print (event.acceleration.x); Serial.print (""); // Serial.print ("Y:"); Serial.print (event.acceleration.y); Serial.print (""); // Serial.print ("Z:"); Serial.print (event.acceleration.z); Serial.print (""); // Lấy độ lớn (độ dài) của vector 3 trục kép storageVector = event.acceleration.x * event.acceleration.x; storageVector + = event.acceleration.y * event.acceleration.y; StorageVector + = event.acceleration.z * event.acceleration.z; StorageVector = sqrt (ManagedVector); // Serial.print ("Len:"); Serial.println (ManagedVector); // đợi một chút trễ (250); // lấy dữ liệu mới! accel.getEvent (& sự kiện); double newVector = event.acceleration.x * event.acceleration.x; newVector + = event.acceleration.y * event.acceleration.y; newVector + = event.acceleration.z * event.acceleration.z; newVector = sqrt (newVector); // Serial.print ("Len moi:"); Serial.println (newVector); // chúng ta đang di chuyển chưa? if (abs (newVector - ManagedVector)> MOVE_THRESHOLD) {Serial.println ("Flashy! Flash! Flash! McFlash!"); flashRandom (10, 2); // số đầu tiên là độ trễ 'chờ', ngắn hơn num == ngắn hơn twinkle flashRandom (10, 4); // số thứ hai là bao nhiêu neopixel để đồng thời sáng flashRandom (10, 6); }} void flashRandom (int wait, uint8_t howmany) {for (uint16_t i = 0; i <howmany; i ++) {// được chọn ngẫu nhiên từ các màu yêu thích int c = random (FAVCOLORS); int white = myFavoriteColors [c] [0]; int red = myFavoriteColors [c] [1]; int green = myFavoriteColors [c] [2]; // các pixel được bật theo thứ tự for (int i = 0; i <6; i ++) int j = strip.numPixels (); Serial.print ("Pixel on"); Serial.println (i); // bây giờ chúng ta sẽ 'làm mờ' nó trong 3 bước for (int x = 0; x = 0; x--) {int w = white * x; w / = 3; int r = red * x; r / = 3; int g = green * x; g / = 3; dải.setPixelColor (i, dải. Color (w, r, g)); dải.show (); trì hoãn (chờ đợi); }} // Các đèn LED sẽ tắt khi hoàn tất (chúng mờ dần về 0)}

Bước 8: Bộ pin

Bộ pin
Bộ pin

Để giữ cho áo len của bạn được cấp điện liên tục, chúng tôi sẽ sử dụng một bộ pin. Chúng tôi cần tạo một dây nịt cho gói để nó không chỉ treo trên bảng. Tôi đã sử dụng góc của một chiếc áo gối cũ làm túi đựng pin của mình. Tôi khâu mặt hở và khâu một mặt của mặt trên vào áo len đủ gần với bo mạch chính để nó có thể dễ dàng cắm vào và không bị kéo ra.

Cắm bộ pin vào bảng mạch chính, bật công tắc nhỏ trên bảng mạch chính từ tắt sang bật và bật bộ pin của bạn. Áo len của bạn bây giờ đã hoạt động và sẵn sàng để mặc.

Bước 9: Kết luận

Phần kết luận
Phần kết luận

Bây giờ bạn đã làm được một chiếc áo len sáng màu sẽ gây ấn tượng với tất cả bạn bè và gia đình của bạn! Nhưng đây không chỉ là một dự án kỳ nghỉ. Làm cho ngày lễ tình nhân của bạn một chiếc áo len nhẹ hình trái tim hoặc làm sáng một chiếc áo sơ mi shamrock cho Ngày lễ Thánh Patrick. Sử dụng trí tưởng tượng của bạn và cho chúng tôi biết những gì bạn đã tạo ra!

Đề xuất: