Muzikale Plankboekjes: Stemming & Geheugen Verbeteren voor Alle Leeftijden
Onderdelen en benodigdheden
| Arduino UNO | Aantal: 1 |
Benodigde tools en machines
| 3D-printer (algemeen) |
Over dit project
Muziek heeft een positief effect op mensen. Van peuters tot senioren: muziek verbetert de stemming, bevordert gezondheid en stimuleert het geheugen. Onlangs deelden we een kinder-muzikaal plankboekje met Annelles moeder, die Alzheimer heeft. We waren verbazingwekkend hoe alert en gelukkig ze werd door de bekende liedjes. Waarom zou ze niet haar eigen boekje kunnen hebben met leeftijdsgeschikte muziek?
Notable Board Boekjes zijn aanpasbare, interactieve boekjes met gepersonaliseerde muziek en foto's. Om mee te zingen bevatten ze een hoorbare track met instrumentale en vocale muziek. We proberen alle knoppen en schakelaars te elimineren: het boekje gaat in "klaar"-modus als het wordt opgetild en speelt de pagina die de gebruiker selecteert.
Stap 1: Elektronica-behuizing en luidspreker monteren

Begin met de 3D-geprinte backbase en speakerhousingb. Bekijk de stukken van de kant en match de gaten.

Verbind de luidsprekerbehuizing met de elektronica-behuizing met twee M3-schroeven.

Stap 2: Luidspreker aansluiten

Soldeer draden (~23 cm) aan de 4-ohm luidspreker. Bevestig de luidspreker in de behuizing met twee M3-schroeven en moeren.

Voer de luidsprekerdraden door het grote gat naar de elektronica-behuizing.

Stap 3: Fotoweerstanden (LDR's) plaatsen

Buig de aansluitdraaden van de fotoweerstanden dicht bij het behuizing. Steek ze in de ronde gaten van de elektronica-behuizing; een klein rechthoekig opening is voor de draden.

Stap 4: Kortsluiting voorkomen met krimpkous

Snij een kort stukje krimpkous (~1,3 cm) voor elke fotoweerstand. Schuif het over één aansluitdraad in het plastic om te voorkomen dat de twee draden per ongeluk aan elkaar raken en een kortsluiting veroorzaken.


Doe dit voor alle fotoweerstanden.
Stap 5: Alles aansluiten volgens schema

Soldeer een stukje wrap-draad aan één pootje van een fotoweerstand. Knip de overige poot af. Schuif krimpkous over de gesoldeerde verbinding en krimp.


Herhaal voor alle fotoweerstanden.

Verbind de andere pootjes van de fotoweerstanden – deze gaan allemaal naar +5V.

Stap 6: Kantelschakelaar (tilt switch) monteren


Plaats een rolbal-kantelschakelaar in het 3D-geprinte tilt1. Het messing uiteinde moet hoger zitten dan het zilveren. Soldeer draden aan beide uiteinden en bevestig de unit in de elektronica-behuizing met Klettband.

Stap 7: Gatboren in het plankboekje

Plaats de 3D-geprinte punch jig op de rechterbovenhoek van het lege plankboekje. Markeer de gatposities met een centerpunch.

Boor de gaten met een holle boorkroon (ik gebruikte 7mm). Voorboor eerst met een gewone boor om te voorkomen dat de holle boor afdwalt. Een boorbank is ideaal.


Het eerste gat gaat door 5 pagina's, het tweede door 4, enzovoort.

Stap 8: Pagina's printen en plakken

Na selecteren en formateren van tekst en foto's, print de pagina's op stevig, duurzaam fotopapier (om rimpelen tijdens plakken te voorkomen). Gebruik gewone witte lijm.

Smeer de lijm ruimschoots en verdeel gelijkmatig met een papier handdoek of penseel. Plak de foto/tekst en laat drogen voordat je aan de volgende pagina begint (om te voorkomen dat pagina's aan elkaar plakken).

Stap 9: Muzikabestanden voorbereiden en overzetten
Muziek moet van een bron naar het Notable Board Book. Voor dit voorbeeld (en zo open source mogelijk) koos ik liedjes waar het copyright was verlopen. Annelle speelde keyboard, onze dochter Tia zong mee. Mike nam op en overzette de muziek.
Ik ben geen juridisch adviseur, maar commercieel geproduceerde muziek kan waarschijnlijk gebruikt worden als: (a) je de muziek hebt gekocht, (b) je het voor één individu gebruikt, (c) het niet publiek wordt afgespeeld, en (d) het niet wordt gedistribueerd of verkocht.
Zonder professionele opnameapparatuur gebruikten we een iPhone. Onder Utilities → Voice Memos.

Druk op de rode opnameknop, speel/zing het liedje, druk opnieuw op rood om te stoppen, kies Done → Save, open het bestand.



Kies het kleine vakje met pijl omhoog links van "Edit" → Mail → e-mail naar jezelf.

Het bestand komt als .m4a binnen. Gebruik een gratis online converter (convert m4a to ogg).
Het Adafruit sound board heeft 11 besturingspinnen (slots 0-10). Als het geluid moet spelen bij slot #5, noem het bestand T05.ogg.
Steek het sound board via micro-USB in de computer – het verschijnt als USB-stick. Kopieer de .ogg-bestanden ernaartoe, eject veilig, en het is klaar.
Stap 10: Laatste aansluitingen en testen

Voer de 9V-batterij-draad door het grote gat van de luidsprekerbehuizing naar de elektronica-behuizing. Verbind alles volgens het schema en upload de Arduino-sketch (bijgevoegd in projectbestanden).

Schakel het systeem in (kantel de behuizing) en reggel het volume (knop op de audioversterker) op het gewenste niveau. Harder (zonder vervorming) is beter.

Stap 11: Spanningsmeting en kalibratie
Afwijkende of niet-schone gaten in het boekje beïnvloeden de fotoweerstand-uitgang. Om de spanning op de analoge ingangen te verifiëren, soldeerde ik meetdraden aan de weerstandsknooppunten die naar de analoge pinnen gaan. Gelabeld 1 t/m 5.

In normale kamerverlichting: "donker" (pagina dicht) ≈ 2V, "pagina open" ≈ 3,5V of hoger. Diepere pagina's (kortere tunnel) geven iets hogere waarden. Bij helderder licht zijn alle waarden hoger.
Arduino ADC: 0-5V → 0-1023. Open-pagina lezing ≈ 700. Ik gebruik 600 als drempelwaarde voor "pagina open".
Stap 12: Klettband bevestigen en boekje monteren

Knip de 1-inch brede Klettband in 0,5-inch stroken. Plak ze in de inkepingen van de elektronica-behuizing. Trek het plastic van de Klettband af, positioneer het boekje zodat de gaten in de pagina's uitlijnen met de fotoweerstanden. Bevestig de batterij/luidspreker-klap met M3-schroeven.
Het boekje is nu klaar voor gebruik!

Stuklijst (Bill of Materials)
- (1) Arduino Uno
- (1) Adafruit Audio FX Sound Board WAV/OGG trigger met 16MB Flash
- (1) 2" 4-ohm 3-watt full-range luidspreker (Gikfun EK1725 op Amazon)
- (1) 3W DC 5V audioversterker (DROK super small 3W+3W op Amazon)
- (5) Fotogevoelige weerstand 5mm
- (1) 5V relaismodule voor Arduino
- (1) Kantelschakelaar, rolbal-type
- (5) 3,3kΩ weerstand, ¼ watt
- (1) 9V-batterijconnector
- (1) 9V-batterij
- (6) M3 × 12 mm schroeven
- (2) M3 moeren
- (1) Breadboard (2" × 3,5")
- (1) Leeg plankboekje (6" × 6")
- (1) Klettband, 1" breed, 10" lang
- Diversen: Soldeer, krimpkous, draad
- 3D-geprinte onderdelen: Back Base, Speaker housingb, Speaker lidb, tilt1
Bestanden
Projectbestanden op Hackaday.io
Code
Notable Board Books Control (Arduino)
int r=200, r1=200, r2=200, r3=200, r4=200;
int a=0, b=0, c=0, d=0, e=0;
int t1=0, t2=0, on=0, td=500;
void setup() {
pinMode(2, OUTPUT); pinMode(4, OUTPUT); pinMode(7, OUTPUT);
pinMode(9, OUTPUT); pinMode(11, OUTPUT); pinMode(3, OUTPUT); // bypass relais
digitalWrite(3, HIGH); // houd systeem aan
digitalWrite(2, HIGH); digitalWrite(4, HIGH); digitalWrite(7, HIGH);
digitalWrite(9, HIGH); digitalWrite(11, HIGH);
delay(1000); // wacht terwijl boekje wordt opgetild
}
void loop() {
r4 = analogRead(A4); r3 = analogRead(A3); r2 = analogRead(A2);
r1 = analogRead(A1); r = analogRead(A0);
if (r4 > 600) a = 1;
if (r3 > 600) b = 2;
if (r2 > 600) c = 4;
if (r1 > 600) d = 8;
if (r > 600) e = 16;
t1 = a + b + c + d + e;
delay(600); // tijd tussen metingen
r4 = analogRead(A4); r3 = analogRead(A3); r2 = analogRead(A2);
r1 = analogRead(A1); r = analogRead(A0);
if (r4 > 600) a = 1;
if (r3 > 600) b = 2;
if (r2 > 600) c = 4;
if (r1 > 600) d = 8;
if (r > 600) e = 16;
t2 = a + b + c + d + e;
if (t1 == t2) { // geldige dubbele meting
if (a == 1) {
digitalWrite(2, LOW); on = 1;
digitalWrite(4, HIGH); digitalWrite(7, HIGH); digitalWrite(9, HIGH); digitalWrite(11, HIGH); digitalWrite(3, HIGH);
delay(150); // pin laag houden voor sound FX board
}
if ((b == 2) && (on == 0)) {
digitalWrite(4, LOW); digitalWrite(2, HIGH); digitalWrite(7, HIGH); digitalWrite(9, HIGH); digitalWrite(11, HIGH); digitalWrite(3, HIGH);
on = 1; delay(150);
}
if ((c == 4) && (on == 0)) {
digitalWrite(7, LOW); digitalWrite(4, HIGH); digitalWrite(2, HIGH); digitalWrite(9, HIGH); digitalWrite(11, HIGH); digitalWrite(3, HIGH);
on = 1; delay(150);
}
if ((d == 8) && (on == 0)) {
digitalWrite(9, LOW); digitalWrite(4, HIGH); digitalWrite(7, HIGH); digitalWrite(2, HIGH); digitalWrite(11, HIGH); digitalWrite(3, HIGH);
on = 1; delay(150);
}
if ((e == 16) && (on == 0)) {
digitalWrite(11, LOW); digitalWrite(4, HIGH); digitalWrite(7, HIGH); digitalWrite(9, HIGH); digitalWrite(2, HIGH); digitalWrite(3, HIGH);
delay(150);
}
if (t2 == 0) {
digitalWrite(11, HIGH); digitalWrite(4, HIGH); digitalWrite(7, HIGH); digitalWrite(9, HIGH); digitalWrite(1, HIGH); digitalWrite(3, LOW); // bypass relais uit
}
}
on = 0; a = 0; b = 0; c = 0; d = 0; e = 0;
}
Schema

Productieproces
- UX Ontwerpen Voor Senioren: Een Uitgebreide Gids
- Strijkplank Productie: Ontwerp, Materialen en Productieproces
- Het Erfgoed en de Evolutie van de Klassieke Jukebox
- Bladmuziek: Van Middeleeuwse Handschriften tot Moderne Uitgeverij – Een Brancheoverzicht
- Geprinte Schakelprintplaten: Ontwerp, Fabricage en Toekomstige Trends
- Surfplank Constructie en Ontwerp: Van Polynesische Wortels tot Moderne Innovatie
- De Evolutie en Productieproces van Moderne Boeken
- Helium-gebaseerde Zon-Powered Luchtsensor: Ontwerp & Implementatiegids
- RasPiRobot Board V2: Je Raspberry Pi Uitbreiden tot een Krachtige Robot-controller
- DIY Arduino Woordklok – Bouw een Elegant Real-Time Display
- Bouw een Indrukwekkende 5x5x5 LED-kubus met Arduino Mega