Stap 9: Stap 7 â de Microcontroller programmeren
Nu is het tijd om gebruik uw 1337 (elite) hacken vaardigheden interface uw tesla coil met uw computer vanaf nul.
Deze stap biedt voor de eerste keer ooit in tesla coiling geschiedenis, een rechtstreekse en gemakkelijke manier voor gemiddelde hobbyisten om te bouwen en knutselen rond met het bestuur van hun eigen muziek. Coilers niet typisch ingaan met deze stap omdat ze ervan uitgaan dat als u tot op dit punt, u waarschijnlijk niet gedetailleerde instructies moet (plus het is vrij koel, dus waarom gewoon weggeven instructies kostenloos?). Ik geproduceerd dit board muziek omdat ik niet gewoon wilde een van die degenen die rondzweven online kopen (ze waren 200 dollar, toen ik op zoek was!).
De microcontroller die we zullen gebruiken is de MSP430 Texas Instruments microcontroller. Waarom? Het is werkelijk makkelijk te gebruiken, en, in tegenstelling tot arduinos en dergelijke, is vuil goedkoop (terwijl arduino meer als een generaal is "alles is hier" Raad van bestuur, de MSP430 specifieker is, we krijgen net wat we nodig hebben en niet hoeft te betalen te veel; het is ongeveer $5).
U moet Code componist studio voor uw MSP430 installeren om de codes te laden. Geef een map waarmee u werken wilt en start een nieuw project genaamd Muzak. Volg de handleiding die meegeleverd wordt met uw MSP430 om dit te doen. Zodra u hebt de Code componist Studio, downloaden van deze bestanden en/of kopiëren en plakken van hun code (dit vergt het .rar bestand openen): http://www.mediafire.com/?oogn9t59vvk4p2b
Zet Muzak.h in de omslag van uw project. Dit bestand bevat een lijst met notities die u nodig heeft.
Muzak.c in de 'privé' omslag zette. Dit bestand bevat code die pulse breedte, klokt en frequentie informatie aangeeft.
Zet Main.c in de omslag van uw project. Dit bestand bevat algemene instructies voor de microcontroller.
Zet Song.c in een nieuwe map in uw projectmap met de naam "songs." Dit bestand is een muziekbestand dat uw microcontroller zal spelen.
Zet Rest.c in die map. Dit bestand is een muziekbestand dat is leeg.
Wat deze code doet wordt gezet een signaal via pin P1.0. Zodra u de code op het bord laadt, ziet u de rode LED (licht) knipperen. Dit is omdat de muziek signaal wordt verzonden via de LED en dus het knippert samen met het liedje. Om het liedje te horen, verwijderen de jumper op pin 1 haak omhoog twee draden van een spreker op P1.0 en bodem. U moet hier lied het spelen. Herken je het?
WIJZIGEN AANPASSEN AAN UW COIL
Kijk naar het signaal door middel van een oscilloscoop.
Het signaal voor "aan" is wanneer de spanning langs de spanning van een drempel (het bovenste deel van de blokgolf bereikt). Maak je geen zorgen over de drempel spanning nog, omdat wij op-amps gebruiken zullen te verhogen van de amplitude van het signaal. Maar in feite het bovenste deel van de blokgolf is "on" en de lange onderste deel op in de omgeving van 0 volt is "uitgeschakeld". Wanneer de spoel is "on" energie vrij stroomt in het primaire circuit. Een goede analogie is een alledaagse Speeltuin swingset; Stel dat energie gaat naar de condensator swingende unidirectioneel vertegenwoordigt en energie gaan op de spoel (primary coil) swingen de andere kant vertegenwoordigt. Wanneer u swing, energie heen en weer gaat, maar ga heen en weer moet beginnen u duwen de schommel. Wanneer de energie stroomt van het primaire circuit is (de "on" fase) analoog aan iemand duwen.
Ik weet dat je echt wilt, maar u kan niet gewoon aansluiten op de muziek van bestuur de tesla coil. Je moet het signaal van PULSE breedte, frequentie en DUTY CYCLE aanpassen. Als pulsbreedte te hoog is dan te veel macht zal gaan door de IGBT tegelijk en ze zal blazen. Op dezelfde manier als pulsen de IGBT één na de andere te snel doorlopen, zal ze ook blazen. Tot slot, als de IGBT op voor een te hoog percentage van de tijd (taakcyclus) vervolgens zij zal oververhit raken en/of blazen. De sleutel is pulse breedte, frequentie en plicht cyclus om laag te houden, vervolgens naar hen om te zien wat zij aankan of niet overweg kan met geleidelijk te verhogen. In mijn spoel, ik mijn pulsbreedte te 200uS (maximum maximorum) beperkt (microseconden), de frequentie tot ongeveer 150Hz (200 pulsen per seconde), nabij een taakcyclus van 2,5% (het kan worden op 2,5% van de tijd). Verwacht niet om het even wat voor uw spiraal veel hoger! Digitale oscilloscopen (als u nog geen een zoals mij, zie als u iemand kunt elses op een computerlokaal, college, of in een vriendelijke engineer's house) hebben het voordeel dat ze al deze voor u meten.
Aanpassing van de code kan je al deze parameters aanpassen. Open Muzak.c. Er zijn variabelen in de buurt van de top label speciaal voor u. Hun waarden wijzigen en zien wat er gebeurt met de golfvorm. U kunt ook bewerken Main.c zodat uw microcontroller algemene instructies. Momenteel zijn de twee instructies in het bestand:
playSong(); <-dit speelt het liedje
en vervolgens
delay_ms(0); <-dit vertelt de spoel te rusten voor een bepaalde hoeveelheid tijd voordat het nummer wordt herhaald
Nadat u de code hebt aangepast, controleren de golfvorm met behulp van de oscilloscoop en ga verder met wijzigen totdat je een gewenste output dat uw mening goed werken goed met uw spoel (lage eerst starten!). Jaar geleden de eerste keer dat ik met audio planken experimenteerde mijn frequentie was veel te hoog, en zo blies mijn tesla coil (plus de geluidskwaliteit was niet dat groot omdat op het moment, mijn H vaardigheden waren niet 1337 dus ik was niet codering nummers, ik was gewoon met behulp van elektronica schakelingen te wijzigen van de audio-uitvoer van elke mp3-speler (het was "analoge" in plaats van "digitaal.").
CODERING LIEDJES
Ik heb ook een paar instructies van het lied hier: http://www.mediafire.com/?t48qa78eoplx760, maar als u wilt code uw eigen, zal ik uitleggen hoe kort. In mijn middelbare School java-klasse, wij een nep robot geprogrammeerd en gaf het een lijst van instructies. In wezen, muziek codering werkt op dezelfde manier; u geeft uw tesla spoel een lijst van instructies over wat te spelen. De code die wij met werken is vergelijkbaar met de code van java in dat het object georiënteerde.
Download Anvil Studio en een bestand .midi van uw keuze. Open het .midi-bestand met behulp van het programma. Krijgt u een grafische weergave van het nummer van uw keuze, en u zult zien welke notities spelen wanneer en voor hoe lang (dit is een goede referentie). Dit is alle informatie die u nodig hebt om te coderen een lied! In de code er is een tabel van notities die ik heb vooraf gecodeerd in, dus alles wat u hoeft te doen is het opgeven van een lijst van notities die zal spelen in uw nummer achter elkaar, en voor elke noot, de duur opgeeft het speelt en invoegen berust. Na een paar pogingen en testen, u dat uiteindelijk vinden zult zal uw gecodeerde lied beginnen te lijken op wat je zou willen. Je kan spelen met het maken van uw eigen liedjes, totdat u tevreden bent.
Bijvoorbeeld, in Song.c de instructie beep (G1H, 120); vertelt de microcontroller te "beep" met een notitie G1H voor een duur van 120 eenheden van tijd (bepaald door de kloksnelheid van de microcontroller). De opmerking "R" is een rust.
U kunt uw nummer te lang geen omdat anders u uit geheugen zult lopen. Bovendien, deze hulpprogramma's tonen u hoe u een monofone tesla coil audiokaart, en dus, met andere woorden, u kunt alleen spelen ã‰ã © n nota tegelijk.