Nawiedzona książka na Halloween

Nawiedzona książka na Halloween
Pobierz PDF Download icon

Halloween nie jest może typowym świętem, obchodzonym w naszym kraju, ale nic nie stoi na przeszkodzie, aby zorganizować dla znajomych imprezę w strasznym klimacie. Doskonałym uzupełnieniem wystroju imprezy może być przedstawiony w poniższym artykule rekwizyt – elektroniczna nawiedzona księga.

Poniższy projekt to książka dość nietypowa. Dzięki zastosowaniu prostego układu elektronicznego w jej wnętrzu, wydaje się... nawiedzona. Będzie się trząść, śmiać i świecić na zielono, będzie próbowała rozchylać strony i lśnić tajemniczym, błękitnym blaskiem ze środka. Wszystko to sterowane z poziomu prostego mikrokontrolera w module Arduino.

Potrzebne elementy

Do budowy tej nietypowej konstrukcji potrzebujemy zwykłych, niemagicznych elementów. W pierwszej kolejności musimy odnaleźć odpowiednią książkę, która jednocześnie posłuży nam za obudowę systemu. Wybierzmy do tego jakąś niepotrzebną książkę, najlepiej już i tak zniszczoną, ponieważ po przekształceniu jej w rekwizyt będzie się nadawała wyłącznie do straszenia.

Z modułów elektronicznych potrzebujemy:

  • Arduino Nano,
  • moduł z układem ISD1820,
  • niewielki głośnik o impedancji 8 Ω,
  • serwomotor (może być modelarski),
  • przekaźnik,
  • silnik DC (na 5 lub 10 V),
  • odważnik – do zamontowania na osi silnika, by wywołać wibracje (nada się każdy ciężki element, umieszczony niesymetrycznie na osi silnika),
  • trzy diody LED – dwie zielone i jedna niebieska,
  • trzy oporniki 220 Ω i jeden rezystor 1 MΩ,
  • głośnik piezoelektryczny,
  • mały przełącznik bistabilny,
  • drobne śrubki, przewody i cienkie listewki drewniane (można w tym celu wykorzystać patyczki po lodach i podobne)
  • pleksi, lub podobny przeźroczysty plastik o grubości 2 mm,
  • taśma izolacyjna lub rurki termokurczliwe,
  • klej.

Przygotowanie książki

Konstruowanie rozpoczniemy od wydrążenia książki. Należy pozostawić około 25 stron u góry i u dołu – muszą pozostać niewycięte i niesklejone z resztą. Pozostałą część wycinamy w środku, zostawiając ścianki o grubości około 16 mm. Do wycięcia prostokątnego otworu można wykorzystać nóż introligatorski/tapicerski i linijkę. Jeśli nasza książka nie ma zbyt sztywnej okładki, możemy dolną jej część wzmocnić kawałkiem drewna, wklejonym w wycięty otwór. We wzmocnieniu wiercimy otwór wielkości silnika i wklejamy razem z nim.

Zielony blask uzyskuje się dzięki przezroczystemu plastikowi. Należy pociąć go na paski szersze lub równe bokom książki (fotografia 1).

Fotografia 1. Efekty świetlne widoczne w trakcie działania układu

Następnie przykleić je w różnych miejscach między stronami. Pamiętajmy aby plastik licował ze stronami książki i wszystko było na zewnątrz równe oraz nie rzucało się w oczy. Przed montażem musimy skonfigurować moduł z układem ISD1820. Autor użył odgłosu śmiechu, który znalazł w Internecie, ale można nagrać dowolny dźwięk, jaki podpowiada nam fantazja.

Zastosowany serwomotor jest wyposażony w ramiona z otworami do sterowania elementami, np. w samolotach RC. Należy wywiercić dwa otwory w patyczku do lodów i przykręcić go do jednego z ramion. Najlepiej jest wykorzystać ramię, które wystaje tylko w jednym kierunku. Następnie ustawiamy serwomechanizm na 0 stopni, na czas montażu. Umieszczamy go w książce tak, aby poruszający się patyczek do lodów otwierał lekko górną część książki. Przekaźnik jest przeznaczony do sterowania silnikiem prądu stałego. Należy podłączyć główny przewód zasilający do wspólnego złącza, a dodatni przewód silnika prądu stałego do normalnie otwartego pinu przekaźnika.

Za sterowanie przekaźnikiem odpowiedzialny jest moduł Arduino. Silnik musi być mocno przyklejony do podstawy książki, aby całość poruszała się razem.

Diody LED należy zlutować z opornikami 220 Ω i kablami, a następnie zaizolować wszystkie wyprowadzenia w ten sposób, aby móc podłączyć kable do Arduino. Diody LED umieszczamy tak, aby zielone LEDy oświetlały plastikowe przekładki stron – ich blask będzie widoczny z zewnątrz. Niebieską diodą oświetlamy wnętrze książki. Staramy się, podczas montażu diod LED, aby świeciły one do przodu książki.

Głośnik piezoelektryczny działa jako czujnik, aktywujący książkę. Należy przylutować do niego przewody – jeden podłączany jest do masy, a drugi do wejścia analogowego Arduino. Przewody muszą być wystarczająco długie, aby przejść przez strony do wewnętrznej strony okładki książki. Ponadto należy dodać opornik 1 MΩ, równolegle z piezoelementem pomiędzy przewodami, najlepiej wzdłuż przewodów (może być przy głośniku lub przy Arduino). Piezoelement wklejamy zaraz pod górną okładką książki.

Schemat połączeń

Na rysunku 1 zaprezentowano diagram połączeń elektronicznych w książce. Dla wygody dobrze jest w pierwszej kolejności wykonać połączenia zasilania, a następnie przyłączyć sygnały sterujące.

Rysunek 1. Schemat połączeń elektrycznych w systemie

Moduł Arduino Nano ma 5-woltowy stabilizator, który pobiera napięcie z pinu VIN i stabilizuje je do zasilania mikrokontrolera oraz innych, podłączonych do układu elementów. Moduł Arduino, jak i silnik prądu stałego zasilane są bezpośrednio z akumulatora przez włącznik. Wszystkie pozostałe komponenty pobierają napięcie 5 V, z pinu 5 V na Arduino Nano, i są podłączone do pinu masy w module Arduino.

Oprogramowanie

Kod programu dla modułu Arduino jest dosyć prosty, jego istotne fragmenty pokazuje listing 1. System czeka na aktywację, poprzez puknięcie w książkę. W momencie gdy mierzony na wejściu analogowym sygnał, przekroczy zaprogramowany próg, system wywołuje funkcję, w której zawarte jest całe „straszenie”.

Listing 1. Fragment szkicu dla Arduino IDE

#include <Servo.h> // Biblioteka obsługi serwa
Servo servo; // deklaracja obiektu serwa
int pos = 0; // zmienna pozycji
int i = 0; // zmienna licznika
int val = 0; // wartość dla sensora
const int KnockSensor = A0; // sensor pukania
const int THRESHOLD = 350; // Próg aktywacji sensora
int pwmLED = 5; // PWM dla zielonych diod LED
int pwmLED2 = 6;

void setup() {
pinMode(A0, INPUT); // Pin sensora pukania
pinMode(3, OUTPUT); // Otwarcie książki
pinMode(4, OUTPUT); // Silnik poruszania
pinMode(7, OUTPUT); // Niebieskie światło
pinMode(8, OUTPUT); // Złowrogi śmiech
pinMode(pwmLED, OUTPUT); // Zielona dioda 1
pinMode(pwmLED2, OUTPUT); // Zielona dioda 1
}

void loop() {
sensor(); // sprawdzenie sensora
haunt(); // uruchomienie programu
}

void sensor() {
val = analogRead(KnockSensor); // odczyt sensora pukania
if (val < THRESHOLD) { // jeśli sensor nie jest
sensor(); // aktywowany, program czeka
} else { // jeśli sensor jest aktywowany
haunt(); // zaczynamy straszenie
}
}

void haunt() { // straszenie
delay(5000); // odczekaj 5 sekund
digitalWrite(4, HIGH); // załaczenie silnika
delay(700); // odczekaj 0,7 s
digitalWrite(4, LOW); // zatrzymanie silnika

delay(20000); // odczekaj 20 sekund

digitalWrite(8, HIGH); // odtwarzanie nagrania
delay(3000); // oczekiwanie na zakończenie nagrania
digitalWrite(8, LOW); // zakończenie odtwarzania

delay(17000); // odczekaj 17 sekund

for (int i = 0; i < 255; i++) { // PWM diody LED od 0 do 255
analogWrite(pwmLED, i); // zapisz PWM na pin 5
analogWrite(pwmLED2, i); // oraz na pin 6
delay(5); // czas pomiędzy iteracjami - 5 ms
analogWrite (pwmLED, HIGH); // po 255 ustaw stan wysoki
analogWrite (pwmLED2, HIGH);
}

//pominięte na tym listingu kolejne efekty straszenia

servo.detach();

delay(140000);

haunt(); // powrót na początek pętli straszenia
}

Funkcja straszenia uruchamia kolejno różne efekty w różnym połączeniu i w różnych odstępach czasowych (które można zmienić, by dopasować do swoich preferencji). Bloki różnych efektów, także można dowolnie przestawiać, aby zmieniać ich kolejność. Dobrze jest zaprogramować Arduino docelowym szkicem, zanim zostanie on na stałe umieszczony we wnętrzu książki. Po jego umocowaniu, dostęp do portu USB może być utrudniony.

Uruchomienie i konfiguracja

Przy pierwszym uruchomieniu, książka powinna od razu działać w pożądany sposób. Po dotknięciu książki, po kilku sekundach (zależnie od ustawionych opóźnień) układ uruchomi poszczególne efekty. Na tym etapie można dostosować czasy oczekiwania pomiędzy różnymi efektami – prędkości mrugania diodami LED, otwierania książki, itd.

Podczas konfiguracji warto sprawdzić kąt ruchu serwomechanizmu – czy nie jest on za duży. Zbyt szerokie otwarcie książki może spowodować, że widoczna będzie elektronika w jej środku. Można zmniejszyć kąt zapisany w szkicu lub też umieścić pod innym kątem drewniany element na serwomechanizmie.

Nikodem Czechowski, EP

Źródło: https://bit.ly/3cm7atg

Artykuł ukazał się w
Elektronika Praktyczna
październik 2020
DO POBRANIA
Pobierz PDF Download icon
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik listopad 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio listopad - grudzień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje październik 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna listopad 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich listopad 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów