Het probleem
De volumeknop op vele jukeboxen is gelegen in de meest ongelegen plek mogelijk te maken. Het is met opzet gedaan om dronken bar mecenassen ontmoedigen stralen hun muziek wat resulteert in ergernis van hun landgenoten Barflys. De standaardlocatie van de volumeregelaar is in het midden van de achterkant van de jukebox tegen de muur. Om het volume van een jukebox te veranderen een dronken luisteraar moet de jukebox van de muur te trekken, tast rond voor de knop, draai hem, verplaats dan de jukebox terug naar zijn oorspronkelijke positie, zonder dat iemand het merkt deze activiteit. De meeste jukeboxen hebben een optionele afstandsbediening op een lange draad voor de barman om het volume te regelen. Sommige modellen hebben een regelbare weerstand die in een doosje gemonteerd met een kortstondige schakelaar. De externe weerstand regelt het volume. Verdraaien van de volumeknop omhoog of verzacht de muziek volume. De kortstondige schakelaar regelt de "Cancel / Weigeren button". Door op deze knop wordt uitgeworpen de huidige record te spelen. Als het record wordt gekrast uiterst smakeloos kan met deze toets worden uitgeworpen. De Seeburg SMC 1 Disco heeft niet zo'n eenvoudige afstandsbediening. De afstandsbediening maakt gebruik van een motor die hecht aan de achterkant van de volumeregeling regelweerstand. Het wordt verondersteld zich te gedragen als een hand draaien van de bedieningsknop. Ze zijn duur en kijk onbetrouwbaar. De onderdelen zijn 35 jaar oud. Het is moeilijk genoeg om de jukebox draaiende te houden, zonder dat dit extra complexiteit. Ik dacht over het probleem voor een tijdje, toen besloot ik kan een knop draaien met een Arduino.
Stap 1: De oplossing: RF Controle
De arduino processor is een goede keuze voor kleine motoren en interface mens beheersen. De motor wordt geregeld door een afscherming die gebruik maakt 74HC Bridge. De stepper motor is een bipolaire vier draad 200 stap 12V stepper. Raido Frequentie (RF) gekozen via infrarood (IR) omdat het geen aanpassingen aan de behuizing vereist. IR zou vereisen zetten een ontvanger ergens waar het een lichtsignaal kan zien. De RF-module kan worden weggestopt in de achterkant of zijkant van de jukebox kast. Het volume kan nog steeds handmatig worden bediend, maar het vereist het openen van het kabinet en het verdraaien van de bedieningsknop. Hoewel deze wijziging is gedaan om een Seeburg SMC 1 Disco kan aan veel andere merken en modellen. Wijzigingen aan een oude juke kan worden teruggedraaid zonder noemenswaardige wijzigingen in de jukebox. Hopelijk kan deze gids helpen om een paar jukes levend in hun semi oorspronkelijke staat een beetje langer.
Gereedschap
- Broodplank en assemblage draden
- Computer met USB
- Dremel Rotary Tool
- Drill + beetjes Glue
- Gun w / Lijm sticks
- hemostats
- multimeter
- Vergrootglas, Head Mounted
- Schroevendraaier, Multidriver
- Soldeerbout (goed) w / soldeer
- T square
- Ondeugd
- vice Grips
- Draadsnijders
- Wood Saw
materialen
- Arduino Uno R3 ( Adafruit # 50 $ 24,95 )
- Aluminium Bar 1 "x 4" x 1/8 "(HD $ 8.00)
- Motor / Stepper Driver ( Adafruit # 1438 $ 19,95 )
- Sleutelhanger 4-knops RF-afstandsbediening ( Adafruit # 1095 $ 6,95 )
- RF Momentary Reviever ( Adafruit # 1096 $ 4,95 )
- Relais Breakout Board (Ebay $ 3.00)
- Stappenmotor NMEA 17 grootte - 200 stappen / omw, 12V 350mA ( Adafruit # 324 $ 14,00 )
- Motor Shaft Koppeling ( Adafruit # 1177 $ 4,95 )
- Voeding AC / DC 9V 1 MA ( Adafruit # 63 $ 6,95 )
- Rainbow draad 6 "
- Lichte verlengsnoer
- Schroeven 3 mm x 10 mm (4) Past motor (HD $ 1.50)
- Hout van de Schroeven Wasmachines # 8
- Epoxy Glue, kleine mini-buis (Dollar Stores $ 1.00)
- Hoek plank beugel 2 "x 2" (HD $ 3,99)
- Schroot Multiplex (Garage $ 0)
- Verf, Mat Zwart (HD $ 3,99)
- Filmbus (Antique Bin $ 0,00)
- High Intensity LED (Fry's $ 5.00)
- Jukebox (Craigs $ 100.00 - $ 6.000,00)
Software
- jbvolcontrol - Programma's die in dit voorbeeld.
- Motor Shield Bibliotheek - Controle stappenmotor
- Versnelling Bibliotheek - Zorg voor soepele beweging van Stepper.
skills
- Arduino Programming
- Solderen en Board Assembly
- schematische Reading
- licht metaalbewerking
- licht Houtbewerking
Stap 2: bouwen en testen The Motor Shield
Vind de beste plaats in uw jukebox kast te monteren de project.In het geval van de SMC1, het is aan de linkerkant van de kast onder de versterker. Verzamel materialen voor het project. Veel van de items kunnen worden gekocht bij Adafruit. Sommige moet zelf worden vervaardigd. Anderen kunnen worden scrounged uit de doos gebroken speelgoed en vergeten projecten. Monteer de motor schild en te testen. Adafruit heeft een stap voor stap handleiding voor de montage. Controleer alle soldeerverbindingen met een vergrootglas. touch-up verdachte soldeerverbindingen. Het prototype moeten worden gebouwd omdat sommige componenten vervangingen nodig zijn. Dit is een lerende oefening, evenals het krijgen van een afstandsbediening. De motor schild is in staat om 2 servo, 4 gelijkstroommotoren, 2 stappenmotoren. We hoeven alleen maar een stepper motor te regelen. Kennis van pintoewijzingen is nuttig om conflicten te vermijden bij het aansluiten van andere apparaten in het project. De motor schild gebruikt de volgende Arduino pinnen.
Motor Shield Pin Opdrachten:
- Digital 11 Stepper # 1
- Digital 3 Stepper # 1
- Digital 5 Stepper # 2
- Digitale 6 Stepper # 2
- Digital 4,7,8,12 digitale klink
- Digitale 9 Servo # 1
- Digital 10 Servo # 2
- Alle Analog Pins Open
- Digital 2,14-19 Open
Draad van de stepper om het schild:
- M1 ------ Red
- M1 ------ Geel
- GND ---- NC
- M2 ------ Green
- M2 ------ Grijs / Bruin
Sluit de arduino aan de stappenmotor schild. Download en installeer de stappenmotor bibliotheken van adafruit. Ik besloot het niet te gebruiken AccelStepper bibliotheek . Dit is een eenvoudige applicatie en vereist geen vloeiende motion control. We zijn slechts enkele intensivering van de motor. Een zeer eenvoudige voorbeeld van de klok mee te draaien dan tegen de klok in wordt getoond. Geen beweging demping is noodzakelijk. Download de Arduino sketch programma's Github-jbvolcontrol . Maak een nieuwe, lege schets. Laad de code in het volgende voorbeeld.
//
// Voorbeeld van basis stappenmotor operatie met behulp van de adafruit bibliotheek
#include
int i = 1; int dir = VOORUIT;
// Sluit een stappenmotor met 200 stappen per omwenteling
// Naar de motor poort # 1 (M1)
AF_Stepper motor (200, 1);
void setup () {
Serial.begin (9600);
// Opgezet Serial bibliotheek op 9600 bps
Serial.println ( "Stepper test!");
motor.setSpeed (30); // 10 rpm
}
leegte lus () {
if (i <200) {
motor.step (1, dir, Afwisselend); i = i + 1; vertraging (100);
} Else {i = 1;
dir = -dir; }
}
Experimenteer met verschillende snelheden stap maten te traag en de goede werking van de stappenmotor te krijgen. Pas op voor de prestaties van de motor verandert met de verschillen in de voeding. Na elke test koppelt u de Arduino vormen de computer. Gebruik de AC-adapter om het verschil in snelheid en het koppel te zien. In mijn jukebox is er een behoorlijke hoeveelheid weerstand bij het draaien van de volumeknop. De stappenmotor controller kan in vier verschillende standen voor verschillende prestatieprofielen.
- Single - Een enkele spoel in de stappenmotor wordt bekrachtigd.
- Dubbel - Twee spoelen worden bekrachtigd
- Interleave - De energie om de spoelen overlapt, Dit geeft meer gladheid in de stappen.
- Microstep - Spoelen naast elkaar opgevoerd en neer waardoor microstappen. Het koppel wordt verlaagd i deze modus.
Bij het wijzigen van modes, de mate toename van rotatie in de motor verandert het. Er zijn fysica die betrokken zijn bij het draaien van de stappenmotor. Afhankelijk van de wijze, kan een stap in een 200 stappenmotor 1/200 de as van rotatie niet roteren. Single intensivering van de motor in de "Single" mode geeft 1/200 rotatie. Een "Interleave" stap is meer als 1/400 van een rotatie. Microstepping zelfs minder. Het zal een aantal experimenten te nemen om de gewenste prestaties te krijgen. Het vergt ook geduld. Ik heb niet gevonden een formule die goed is voor de snelheid, mode en stapgrootte stap grootte. Het lijkt alsof het een continue functie zou moeten zijn, maar deterministisch gedrag ontgaat me. Laad de Accelstepper bibliotheek en spelen met gedempte beweging. Download Accelerator bibliotheek. Neem de tijd en ontdek de werking van de stappenmotor.
Stap 3: Sluit en test de RF-module
Dit project maakt gebruik van een RF-ontvanger module gebaseerd op de PT 2262 chip. Deze chip is een CMOS afstandsbediening decoder. Gebruik de broodplank om uw vermogen om componenten te bedienen voordat het allemaal bij elkaar solderen te testen. Bijgevoegd is een schema voor de circuits die nodig zijn voor dit project. De RF-module gebruikt zeven draden te bedienen. Macht en de grond zijn twee draden. Vijf draden worden gebruikt om signalen naar de computer te geven. Een van de vier draden (D0-D3) gaan waar wanneer een knop op de RF sleutelhanger drukt. VT gaat het geval wanneer een knop wordt ingedrukt. De Arduino leest de RF-module door het bewaken van de toestand van de analoge pinnen A0-A4.
Een relais is een elektrisch bediende schakelaar. Het laat de Arduino schakelaars van andere apparaten te bedienen. De relay breakout board maakt gebruik van drie draden. Macht en de grond zijn twee draden. Een analoge uitgang (A5) wordt gebruikt om het relais te grijpen.
Sluit de RF-module, zoals weergegeven.
Arduino ........ RF Ontvanger
- A0 ------ D0
- A1 ------ D1
- A2 ------ D2
- A3 ------ D3
- A4 ------ VT
- + 5V --- + 5V
- GND --- GND
Arduino ........... Relay Breakout Board
- A5 ------- Select
- GND ---- GND
- + 5V ----- + 5V
Maak een schets met de code in dit voorbeeld.
/ *
RFKeyfob geeft een voorbeeld van hoe de XL-R02 RF-module met signalen van de vier-knop sleutel met afstandsbediening lezen. Leest een digitale ingang op de pinnen 2-6, het resultaat aan de seriële beeldscherm afgedrukt. Het is gebaseerd op de PT 2272 chip. De applicatie maakt gebruik van de analoge pinnen omdat sommige schilden gebruik maken van de digitale pennen. Er is een relais gecontroleerd door pin A5. Het wordt ingeschakeld door het indrukken van de knop A op de afstandsbediening.
Auteur: Bobby Kawamura 2014/06/21
Sluit de RF-module naar de Arduino als volgt:
GND - GND 5V - 5V D0 - A0 D1 - A1 D2 - A2 D4 - A3 VT - A4 Relay - A5
Dit voorbeeld code is in het publieke domein.
* /
// Analoog kunnen 0-4 heeft een uitvoer van de XL-R02A verbonden.
// De setup routine loopt één keer wanneer je reset op:
// Pin 5 wordt gebruikt om een relaismodule regelen. Het wordt gedefinieerd als een uitvoer. void setup () {
// Initialiseren seriële communicatie met 9600 bits per seconde: Serial.begin (9600);
// Maken pin van de drukknop van een ingang: pinMode (A0, INPUT);
pinMode (A1, INPUT);
pinMode (A2, INPUT);
pinMode (A3, INPUT)
; pinMode (A4, INPUT);
pinMode (A5, output);
// Maak de ingangen een pullup weerstand
digitalWrite (A0, HIGH);
digitalWrite (A1, HIGH);
digitalWrite (A2, HIGH);
digitalWrite (A3, HIGH); digitalWrite (A4, HIGH);
digitalWrite (A5, LOW);
// PinMode (A5, output);
// Wacht 1 seconde vertraging (1000); }
// De lus routine loopt over en weer voor altijd: void lus () {
// Lees de input pin:
int u toets = digitalRead (A0);
int u toets = digitalRead (A1);
int buttonB = digitalRead (A2);
int knopEen = digitalRead (A3);
int PinStateVT = digitalRead (A4);
// Print de toestand van de knoppen:
Serial.print ( "A =");
Serial.print (knopEen); Serial.print ( "\ tB =");
Serial.print (buttonB); Serial.print ( "\ tC =");
Serial.print (u toets); Serial.print ( "\ tD =");
Serial.print (u toets); Serial.print ( "\ TVT =");
Serial.print (PinStateVT);
Serial.println ();
if (knopEen == 1) {digitalWrite (A5, HIGH);
} Else {digitalWrite (A5, LOW); }
delay (1000); // Vertraging tussen leest voor stabiliteit
}
Laad het programma in de Arduino van de computer via de USB-kabel. Start de seriële monitor met een "Ctrl + Shift + m". Kijken naar de uitgang terwijl het indrukken van de knoppen op de sleutelhanger afstandsbediening. Gebruik de multimeter om het relais te testen. Bevestig de grond leiden tot de multimeter gemeenschappelijke klem. Bevestig de test leidt het de NO (Normally Open) Terminal. Draai de multimeter op "Continuity check". Wanneer het relais wordt bekrachtigd het de contacten zal sluiten en zal de meter piepen.
Stap 4: Solder de componenten en Programma De Arduino
Lees en begrijp het schema. De motor schild heeft analoge pinnen die door het schild bestuur door te geven aan de Arduino. Aansluitdraden de RF module daadwerkelijk gesoldeerd aan de afscherming. Het schema toont de logische verbindingen naar de processor board.
Solderen en monteren van de elektronica. Wees voorzichtig om alle soldeerverbindingen solide te maken. Gebruik een vergrootglas om elke verbinding te inspecteren. In dit voorbeeld regenboog draad wordt gebruikt. Regenboog draad als modem lintkabel, voor degenen oud genoeg om modems onthouden, alle delen een andere kleur. Programmeer de Arduino met de jbcontrol software. I is vergelijkbaar met het voorbeeld code voorbeelden. De code kan worden gedownload van Github. Test de montage door het draaien van de motor.
Eén ervan is voorzien van het programma is een software koppeling. Een mogelijk probleem is dat wanneer de volumeknop op zijn grenzen, zal de stappenmotor proberen te dwingen verder met schade aan de regelbare weerstand. Een oplossing is het maken van een software koppeling. De koppeling zal de spanning van de weerstand van de stappenmotor. Wanneer de stappenmotor draait met tussenpozen de motor wordt ingesteld op los. Dit betekent dat het zal stoppen met proberen om de weerstand te zetten voorbij zijn grenzen.
Laad de Arduino met de volumeknop programma en doorgaan naar de volgende stap.
Stap 5: Fabriceer A Motor Mount, volumeregeling Zet en koppeling
Methode
In principe is de methode om het volume te controleren is om de stappenmotor aan te sluiten op de volumeknop. Het idee is om plak ze tegenover elkaar met montagebeugels. De motoras is gekoppeld met de de knop met een aangepaste knop.
motor Mount
Gebruik twee 2 "L-vormige plank beugels voor de motorsteunen. Leg de L beugels naast elkaar op een tafel. Stel de stappenmotor op de beugels. Markeer de plaats van de motor te monteren gaten. Boor de gaten op dezelfde grootte als de motorsteun schroeven. Bevestig de motor aan de beugels.
Volume Controle Mount
Dit is een mooie L beugel aan de regelbare weerstand te monteren op het project. Aluminium werd gebruikt voor esthetiek en gemakkelijk om te werken. Neem een 1 "x 4 x 1/8" "stuk aluminium voorraad en schrijver over de middellijn. Klem de voorraad om een tafel te stabiliseren tijdens het slijpen. Gebruik een Dremel om een groef halverwege dwars door de voorraad. Angle het als een V zodat wanneer het wordt gebogen het geen barst in de achterkant. Doe de bouillon in de bankschroef en buig het tot 90 graden. Controleer de bocht met een T plein. Line up van de motor as uit met de regelbare weerstand te monteren. Mark de aluminium houder op de hartlijn van de as. Boor een gat ter grootte van de regelweerstand as en voeg een beetje speelruimte. Boor een paar kleine gaten om de beugel aan de bodemplaat schroef. Grind uit een metalen bramen rond de gaten . de beugel is klaar om te monteren op de bodemplaat.
Koppeling
Schuif de aluminium motor as koppeling op de as van de stappenmotor. Zorg ervoor dat de platte kant van de as uitgelijnd met één van de set schroeven. Draai het naar beneden met een inbussleutel. Hier krijg je een knop die de jukebox volumeregelaar weerstand past. Grootte een machine schroef waarmee de inwendige diameter van de motor koppeling past. Snijd de machine schroef aan 0.75 "lang. Grind het overtollige boren. Grootte een boorkop met de buitendiameter van de machine schroef aan te passen. Boor een gat in het midden van het plastic volumeknop. Duw de schroef door het gat in de knop. Gebruik epoxy om de schroef om de koppeling te lijmen. Draai de stelschroef in de aluminium koppeling. Nu de volumeregelaar weerstand en worden uitgeschakeld door een stappenmotor.
Stap 6: Maak een montageplaat voor de montage
Knip een stuk triplex groot genoeg om de motor beugel en de weerstand op de bout. Ik vond een 11 "x 4" stuk basswood handig. Schuur de randen en boor montagegaten in de hoeken. Zoek een aantal schroeven die gaan door de montageplaat en in de kast, maar niet helemaal door de kast. Verf de multiplex montageplaat zwart. Line-up van de onderdelen aan te passen op de montageplaat. Neem de motor schild van de Arduino. Schroef de Arduino op de montageplaat met behulp van kleine schroeven. Zet de motor schild terug op de Arduino. Bevestig de motor beugel aan de montageplaat met houtschroeven. Lijm de RF-module aan de montageplaat. Lijm het relais breakout op de montageplaat. Bevestig de weerstand op de montageplaat met houtschroeven.
Stap 7: Voeg de LED Volumeregelaar indicator
Wanneer het volume wordt opgedraaid of hij een LED-indicator wordt gebruikt om het geluidsniveau te tonen wordt gewijzigd. Een hoge output LED gemonteerd in een plastic film. Het licht op wanneer de stappenmotor wordt van richting te veranderen. Dit is een een van de eenvoudigste voorbeelden van arduino code. Een 220 Ohm weerstand wordt gebruikt om overtollige stroom te beperken. De LED is gelijmd naar de basis van de film. Een inkeping gesneden in de kan om de draden aan te sluiten op de frequentieomvormer projectzaal. De film wordt dan gelijmd aan de montage plate.The anode draad van de diode is gesoldeerd aan de motor te beschermen in de D2 pin. De weerstand en kathode kant gesoldeerd aan de grond pin.
Stap 8: Installeer de volumeregeling Asembly In Jukebox
Demonteer de volumeregelaar assemblage in de jukebox. Route de volumeregelaar draden naar de nieuwe locatie aan de zijkant van de kast. Monteer de volumeregelaar weerstand aan de aluminium montagebeugel. Wees voorzichtig om de uitlijning van de motor as en de weerstand as te controleren. Goede afstemming is nodig voor een soepele operation.Tighten de weerstand moer met een kleine sleutel.
Haal de twee draden uit de jukebox te annuleren switch. Snijd de terminals af. Strip 1/8 "isolatie van de uiteinden. Draai de draden stevig vast. Plaats ze in de headers van het relais. Gebruik de normaal open (NO) aansluitingen. Schroef ze naar beneden net strak genoeg, zodat ze niet uit te vallen met een zachte pull.
Schroef de montage aan de zijwand van de jukebox.
De jukebox heeft een interne stopcontact dat alleen wordt aangedreven wanneer hoofdschakelaar is ingeschakeld. Gebruik het verlengsnoer aan de AC / DC-voeding aan te sluiten op de geschakelde stopcontact. Eén stekker gaat naar Arduino PS de andere gaat naar de jukebox versterker. Zip bind het allemaal samen. De Arduino wordt alleen ingeschakeld als de jukebox hoofdschakelaar is ingeschakeld. Gebruik een label maker om knoppen te identificeren op de afstandsbediening. Snijd de labels om de toetsen op de afstandsbediening te passen.
Stap 9: Listen To The Music
Zet de jukebox. Verlaag het volume met de keyfob. Selecteer wat muziek. Zet het volume een back-up. Zet hem wat meer. Luister naar de muziek. Test op de knop te weigeren. Denk na over hoe cool het is om bos van 70 TTL logic bestuurd met uw vingertoppen te hebben. Kijk naar de jaren '60 mechanische snufjes pop uit een record. veranderingen code kan worden verwezen naar nul op het optimale volume snelheid van verandering voor maximaal luisterplezier. Dit project heeft elementen die kunnen worden toegepast op vele andere toepassingen. Besturen van een motor van een externe en flip sommige switches. De vierde toets afstandsbediening kan worden gebruikt om een bron geschakelde schakelaar bedient. Een relais kan toegevoegd aan een Ipod-ingang toe te voegen aan de jukebox. Laat het feest beginnen!