Spisu treści:

Sonic Bow Tie, autor: David Boldevin Engen: 4 kroki (ze zdjęciami)
Sonic Bow Tie, autor: David Boldevin Engen: 4 kroki (ze zdjęciami)

Wideo: Sonic Bow Tie, autor: David Boldevin Engen: 4 kroki (ze zdjęciami)

Wideo: Sonic Bow Tie, autor: David Boldevin Engen: 4 kroki (ze zdjęciami)
Wideo: I wuv my shovel 💖 2024, Może
Anonim
Image
Image

Kompaktowa muszka, zdolna do ciągłego wyświetlania otaczającego dźwięku w czterech różnych częstotliwościach na dwóch lustrzanych matrycach LED 4x5

W tym samouczku dowiesz się, jak zrobić muszkę, która wyróżni Cię w każdym tłumie.

Czego potrzebujesz do tego projektu:

1 Arduino Pro Micro lub podobnej wielkości Arduino działające z częstotliwością 16 MHz

40 diod LED 3mm

1 prosty przycisk

1 mikrofon elektretowy

1 akumulator 3,7 V 800 mAh 25C 1-ogniwowy akumulator LiPo

10 rezystorów 100Ω

1 rezystor 10kΩ

1 rezystor 220Ω

Dostęp do maszyny PCB (płytka drukowana)

Tania regulowana muszka z haczykiem / przypinanym lub po prostu regulowany zaczep na szyję / przypinany

Krok 1: Wydrukuj PCB

Wydrukuj płytkę drukowaną
Wydrukuj płytkę drukowaną

Podczas drukowania płytki drukowanej może być konieczne dostosowanie pliku.cmp do wymagań producenta. Jednak płytka w oryginale została wykonana dość niedokładną metodą, więc większość producentów najprawdopodobniej będzie w stanie wyprodukować płytkę PCB bez przeróbek. Na zdjęciach widać przód i tył PCB. Konstrukcja zakłada, że otwory lutownicze nie zawierają przelotek, a przelotki można umieszczać tylko osobno (w płytkach z więcej niż jedną stroną przelotek są połączenia między warstwami).

Każde światło jest adresowane indywidualnie przy użyciu techniki zwanej Charlieplexing, która pozwala na znacznie mniej węzłów wejściowych niż zwykła matryca LED, wadą jest to, że tylko światło może być włączone na raz, co określa limit tego, jak duża może być matryca i bez zauważalnego migania. Charliplexing działa zamiast dwóch sygnałów 1 i 0, ma trzy 1, 0 i Z. Gdzie Z działa jak obwód otwarty, mając bardzo wysoką impedancję. Tak więc każde światło jest włączane, gdy węzeł ma kombinację 1, 0, Z, Z, Z, co oznacza, że prąd może przepływać tylko z jednego węzła do drugiego na raz.

Krok 2: Zlutuj wszystko razem

Lutowanie wszystkiego razem
Lutowanie wszystkiego razem

Podczas lutowania lampek na PCB bardzo ważne jest konsekwentne lutowanie dodatniej strony diody LED do kwadratów i ujemnej do koła. Wykonanie tego odwrotnie spowoduje, że adres w kodzie włączy niewłaściwe światła, a niespójność spowoduje, że wiele świateł zostanie włączonych przez te same bodźce.

Następnie przylutuj rezystory 10 100Ω z przodu muszki.

Następnie podłącz pozostałe elementy w sposób pokazany na schemacie obwodu, można przylutować baterię bezpośrednio do Arduino, ponieważ będzie się ładować, gdy arduino jest podłączone przez USB. Przed przyklejeniem wszystkich elementów z tyłu płytki PCB należy przetestować pod kątem błędów w tablicy.

Krok 3: Przesyłanie kodu i debugowanie

Prześlij powyższy kod. Po przesłaniu naciśnij przycisk, aby go aktywować, teraz trójkątny kształt skierowany do wewnątrz powinien przewijać się w górę lub w dół na muszce.

Jeśli tego nie zrobisz, użyj funkcji Blink(LED), która pobiera liczbę 1-20 dla każdego światła osobno w pętli while(mode=0) w pętli void, jednocześnie komentując resztę tego while pętla.

pusta pętla () {

podczas (tryb == 0) {

Miga (1); //Testuj jeden po drugim, czy światła działają tak, jak powinny, a które nie

//Mrugnięcie(2); //następny krok aż do 20

/* if (digitalRead(Przycisk) == 0) {

tryb = 1;

Wyłączony();

włącz(1);

opóźnienie(200);

przerwa;

}

Wyłączony(); */ // ta sekcja jest wykomentowana podczas debugowania

}

…..

Debugowanie:

Jeśli masz różne światła z każdej strony, coś jest nie tak z lutowaniem i powinieneś wylutować uszkodzone światła i ponownie wykonać krok 2.

Jeśli pary 2 świateł są wyłączone, może brakować przelotek.

Jeśli dwa światła zawsze włączają się razem i są mniej jasne niż inne, jeden został źle przylutowany.

Jeśli każde światło włącza się osobno, ale nie postępuj zgodnie ze schematem opisanym w instrukcjach u góry kodu, który zepsułeś, krok 2.

inne problemy mogą wynikać ze złych połączeń lub zwarcia na płytce drukowanej.

Ostrzeżenie: ten segment jest bardzo techniczny i niepotrzebny do robienia muszki

Napisałem kod analizy widma specjalnie dla Arduino z częstotliwością zegara 16 MHz. Więc nie jestem do końca pewien, jak dobrze będzie działać na innych systemach, może to spowodować, że wszystkie pasma będą reagowały bardzo różnie, ale może to niewiele zmienić.

Działa poprzez pobranie 60 próbek w około 6, 7 ms, co jest częstotliwością próbkowania około 8, 9 kHz. Następnie analizujemy je na 4 różne sposoby dając 4 różne częstotliwości.

Analiza najwyższej częstotliwości polega na porównaniu każdej innej próbki z następną, podniesieniu wartości do kwadratu i zsumowaniu dla każdej pary próbek. Daje to najwyższy efekt około połowy częstotliwości próbkowania, więc jest to filtr pasmowy około 4,4 kHz.

Przybliżony wzór matematyczny do analizy:

Σ(sq(x[2n-1]-x[2n]))

Kolejny działa bardzo podobnie, ale najpierw dodaje dwie próbki na raz. To skutecznie daje połowę częstotliwości próbkowania ostatniego systemu, jednocześnie odfiltrowując najwyższe częstotliwości, tworząc filtr pasmowy około 2, 2 kHz.

Następny system robi to samo, ale zamiast dodawać 2 próbki naraz, dodaje 10, które stają się filtrem pasmowym dla 440 Hz.

Ostatnia analiza sumuje pierwsze 30 próbek i porównuje je z sumą ostatnich 30. To skutecznie staje się filtrem pasmowym dla 150 Hz.

Krok 4: Sklej wszystko razem

Sklej to wszystko razem
Sklej to wszystko razem

Ważne jest, aby Arduino było odseparowane od płytki drukowanej, ponieważ może to spowodować zwarcie, jeśli się zetkną. Można to zrobić, sklejając je razem taśmą elektryczną pomiędzy. dla zachowania równowagi korzystne jest również umieszczenie baterii na jednym skrzydle muszki, a mikrokontrolera na drugim. Powinieneś starać się, aby środek muszki był dość pusty, ponieważ w tym miejscu podłączasz pałąk na szyję, z możliwym wyjątkiem mikrofonu, ponieważ powinien wystawać na kilka milimetrów i wskazywać na przełyk, będzie to oznaczać, że kiedy mówisz wszyscy zobaczą to najwyraźniej.

Pamiętaj: funkcjonalność z tyłu muszki jest o wiele ważniejsza niż estetyka, ponieważ nikt tego nie zobaczy.

Zalecana: