Inhoudsopgave:

Een windgestuurd MIDI-instrument maken: 5 stappen (met afbeeldingen)
Een windgestuurd MIDI-instrument maken: 5 stappen (met afbeeldingen)

Video: Een windgestuurd MIDI-instrument maken: 5 stappen (met afbeeldingen)

Video: Een windgestuurd MIDI-instrument maken: 5 stappen (met afbeeldingen)
Video: Wanneer een douche nemen te duur is... 2024, September
Anonim
Maak een windgestuurd MIDI-instrument
Maak een windgestuurd MIDI-instrument

Dit project werd ingediend bij 'Creative Electronics', een BEng Electronics Engineering 4e jaars module aan de Universiteit van Málaga, School of Telecommunications.

Het oorspronkelijke idee is lang geleden geboren, omdat mijn maat, Alejandro, meer dan de helft van zijn leven op fluit heeft gespeeld. Zo vond hij het idee van een elektronisch blaasinstrument aantrekkelijk. Dit is dus het product van onze samenwerking; de belangrijkste focus van deze aanpak was het verkrijgen van een esthetisch sobere constructie, vergelijkbaar met die van een basklarinet.

Demo:)

Benodigdheden

  • Een Arduino-bord (we gebruikten de SAV MAKER I, gebaseerd op Arduino Leonardo).
  • Een luchtdruksensor, de MP3V5010.
  • Een rekstrookje, de FSR07.
  • Weerstanden: 11 van 4K7, 1 van 3K9, 1 van 470K, 1 van 2M2, 1 van 100K.
  • Een potmeter van 200K.
  • Een keramische condensator van 33pF.
  • Twee elektrische condensatoren van 10uF en 22uF.
  • Een LM2940.
  • Een LP2950.
  • Een LM324.
  • Een MCP23016.
  • Een geperforeerde plaat van 30x20 gaten.
  • 30-pins headers, zowel vrouwelijk als mannelijk (een geslacht voor de Arduino, de andere voor de cape).
  • Eén paar HD15-connectoren, zowel mannelijk als vrouwelijk (met soldeerbekers).
  • Leen de krimpkous en isolatietape van een vriend. Zwart heeft de voorkeur.
  • Twee 18650 Li-ion batterijen en hun batterijhouder.
  • Een knop.
  • Een Arduino USB-kabel.
  • Ten minste 11 knoppen, als je een kwaliteitsgevoel wilt, gebruik dan de onze niet.
  • Een soort behuizing of koffer. Een houten plank van ongeveer een vierkante meter zou voldoende zijn.
  • Een halve meter PVC-buis, 32 mm uitwendig.
  • 67 graden PVC-verbinding voor de vorige buis.
  • Eén PVC-verkleining van 40 mm naar 32 mm (uitwendig).
  • Eén PVC-verkleining van 25 mm naar 20 mm (uitwendig).
  • Een lege fles Betadine.
  • Een mondstuk voor altsaxofoon.
  • Een altsaxofoon riet.
  • Een altsaxofoon ligatuur.
  • Wat schuim.
  • Veel draad (audiodraad aanbevolen, want het gaat in paar rood-zwart).
  • Enkele schroeven.
  • Mat zwarte spuitbus.
  • Matte spuitlak.

Stap 1: Lichaam

Lichaam
Lichaam
Lichaam
Lichaam
Lichaam
Lichaam

Allereerst werd gekozen voor een PVC-buis als onderdeel van het lichaam. U kunt een andere diameter kiezen, hoewel we een buitendiameter van 32 mm en een lengte van 40 cm aanbevelen, omdat we ons comfortabel voelden met deze afmetingen.

Zodra je de pijp in handen hebt, plaats je een markeringslay-out voor de knoppen. Dit is afhankelijk van de lengte van je vingers. Nu, met de markeringen klaar, boor het corresponderende gat voor elke knop. We raden aan om met een dun bit te beginnen en het gat te laten groeien met de diameter die voor de boor wordt gebruikt. Ook kan het gebruik van een burijn voor de boor de stabiliteit verbeteren.

U moet vier niet-aangesloten draden invoeren om later de manometer en de luchtdruksensor aan te sluiten; dit stuk (het lichaam) en de hals zijn aan elkaar geplakt met een 67 graden verbindingspijp. Deze pijp is geschuurd en zwart geverfd.

Om dit stuk met de voet te verbinden, hebben we een PVC-reductieverbinding gebruikt van 40 mm tot 32 mm (uitwendige diameter). Er werden vier houtschroeven toegevoegd om de verbinding te verstevigen. Tussen de reductieverbinding en het lichaam hebben we een boor gemaakt en een bredere schroef geïntroduceerd om stabiliteit te krijgen. We raden aan om de buizen te boren voor de bedrading; anders is de ondergang verzekerd.

De volgende stap is om draden aan de aansluitingen van de knoppen te solderen, de lengte tot aan de onderkant te meten en een extra lengte te reserveren om te voorkomen dat de verbinding te strak wordt. Nadat de pijp is geschuurd en zwart is geverfd (we hebben matzwarte spuitverf gebruikt; geef zoveel lagen als je wilt, totdat het er mooi uitziet onder zonlicht), breng de knoppen van boven naar beneden in en label ze elk. We raden aan om twee verschillende kleuren voor de kabels te gebruiken (bijvoorbeeld zwart en rood); omdat ze allemaal op één van hun pinnen met aarde zijn verbonden, hebben we de zwarte kabel vrijgelaten en alleen de rode kabels gelabeld. De knopen waren bedekt met zwarte isolatietape zodat ze bij het uiterlijk passen en mooi passen zonder naar beneden te vallen.

Soldeer HD15 vrouwelijke connector (soldeercups helpen veel), gebruik de lay-out die wordt voorgesteld in het diagram van stap 4 (of uw eigen), en voeg de gronden samen. Houd er rekening mee dat krimpkous een hoge betrouwbaarheid biedt tegen kortsluiting.

Stap 2: Voetontwerp

voet ontwerp
voet ontwerp
Voetontwerp
Voetontwerp
voet ontwerp
voet ontwerp
voet ontwerp
voet ontwerp

Het circuit dat voor dit ontwerp wordt gebruikt, is in de basis heel eenvoudig. Twee lithiumbatterijen in serie voeden een LDO (low-dropout) spanningsregelaar, die 5V van zijn uitgang naar de rest van het circuit levert. De operationele versterkers van de LM324 dienen om zowel het dynamische bereik van de luchtdruksensor (MP3V5010, 0,2 tot 3,3 volt) als het gedrag van de manometer (negatieve hellingsvariabele weerstand) aan te passen aan de analoge ingangen van het Arduino-bord (0 tot 3,3 volt). 5 volt). Er wordt dus een niet-inverter met instelbare versterking (1 < G < 3) gebruikt voor de eerste, en een spanningsdeler plus een volger voor de tweede. Deze zorgen voor de juiste spanningszwaai. Voor meer informatie over deze apparaten, klik hier en daar. De LP2950 biedt ook een referentie voor de 3,3 volt die naar de MP3V5010 moet worden geleverd.

Elk model van de FSR-serie (Force Sensing Resistor) is voldoende, en hoewel de 04 de mooiste is, hebben we de 07 gebruikt vanwege voorraadproblemen. Deze sensoren veranderen hun elektrische weerstand afhankelijk van de toegepaste buigkracht, en we hebben experimenteel getest dat ze dat niet doen wanneer ze langs hun hele oppervlak worden gedrukt. Dit was aanvankelijk een vergissing vanwege de plaats waar we het stuk zouden neerleggen, maar de aangenomen oplossing heeft goed gewerkt en zal in de vierde stap worden uitgelegd.

Een van de fundamentele onderdelen van het bord is de MCP23016. Dit is een 16-bits I2C I/O-expander waarvan we dachten dat het nuttig was om de complexiteit van de code (en misschien de bedrading) te verlagen. De module wordt gebruikt als een alleen-lezen 2-byte register; het produceert een interrupt (forceert een logische '0', en dus is een pull-up-weerstand nodig om een logische '1' in te stellen) op zijn zesde pin wanneer een van de registerwaarden verandert. De Arduino is geprogrammeerd om te worden geactiveerd door de helling van dit signaal; nadat dit is gebeurd, vraagt hij de gegevens op en decodeert deze om te weten of de noot geldig is of niet, en als dat zo is, slaat hij deze op en gebruikt deze om het volgende MIDI-pakket te bouwen. Elk van de knoppen heeft twee aansluitingen, respectievelijk verbonden met aarde en met een pull-up-weerstand (4,7K) tot 5 volt. Dus wanneer erop wordt gedrukt, wordt een logische '0' gelezen door het I2C-apparaat en een logische '1' betekent vrijgegeven. Het RC-paar (3.9K en 33p) configureert zijn interne klok; pinnen 14 en 15 zijn respectievelijk SCL- en SDA-signalen. Het I2C-adres voor dit apparaat is de 0x20. Raadpleeg de datasheet voor meer details.

De aansluitlay-out die we hebben gebruikt voor de bedrading van de HD15-connector is natuurlijk niet uniek. We hebben het op deze manier gedaan omdat het gemakkelijker te routeren was op de PCB die we hebben gemaakt, en het belangrijkste punt ligt in het bijhouden van een duidelijke lijst van de knooppunten en de bijbehorende knoppen. Onnodig te zeggen, maar ik zal; knoppen hebben twee aansluitingen. Een van hen is (onduidelijk) verbonden met het respectieve knooppunt op de HD15-connector, terwijl de andere is verbonden met aarde. Alle knoppen delen dus dezelfde aarding en zijn aangesloten op slechts één pin van de HD15-connector. De afbeelding die we leveren is het achteraanzicht van de mannelijke connector, dat wil zeggen het vooraanzicht van het vrouwelijke paar. Soldeer de draden zorgvuldig, je wilt ze niet verkeerd aansluiten, vertrouw ons.

Om het duidelijk te maken, hebben we het circuit ontworpen waarop de Arduino kan worden aangesloten. Er moet voldoende ruimte zijn voor het circuit om onder hem te passen, en dus kan de doos kleiner zijn dan de onze. De voorgestelde gebouwindeling is weergegeven in de onderstaande afbeelding. We gebruikten siliconen om het houderstuk van de batterijen aan de binnenkant van de doos te plakken, boorden de cape aan de randen en gebruikten schroeven om het op deze manier te bevestigen.

Om dit stuk met het lichaam te verbinden, hebben we een PVC-reductieverbinding gebruikt van 40 mm tot 32 mm (uitwendige diameter). Er werden vier houtschroeven toegevoegd om de verbinding te verstevigen. Tussen de reductieverbinding en het lichaam hebben we een boor gemaakt en een bredere schroef geïntroduceerd om stabiliteit te krijgen. Pas op dat u de draden niet beschadigt.

Stap 3: Montage van het mondstuk

Mondstuk montage
Mondstuk montage
Mondstuk montage
Mondstuk montage
Mondstuk montage
Mondstuk montage

Dit is waarschijnlijk het belangrijkste onderdeel van de vergadering. Het is puur gebaseerd op het diagram in de eerste afbeelding. Het oversized deel is groot genoeg om in de 32 mm (externe) PVC-buis te passen.

Bij het ontwerpen van dit stuk (de nek), hebben we besloten om een PCB te gebruiken voor het monteren van de MP3V5010, hoewel je het kunt negeren. Volgens de PDF zijn de gebruikte terminals 2 (3,3 volt voeding), 3 (aarde) en 4 (het elektrische luchtdruksignaal). Om te voorkomen dat u hiervoor een PCB moet bestellen, raden we u aan om de ongebruikte pinnen af te snijden en het onderdeel op de PVC-buis te lijmen zodra de bedrading klaar is. Dit is de gemakkelijkste manier die we kunnen bedenken. Ook heeft deze druksensor twee detectieknoppen; u wilt een van hen bedekken. Dit verbetert de respons. We deden het door een klein metalen stukje in een krimpkous te steken, die de knop bedekte, en de buis op te warmen.

Het eerste dat u wilt doen, is een stuk vinden met een conische vorm dat in de luchtdruksensorbuis zou kunnen passen, zoals weergegeven in de tweede afbeelding. Dit is het gele stuk in het vorige diagram. Maak met behulp van een kleine boor of een dunne soldeerboutpunt een smal gaatje in de top van de kegel. Test of het goed past; zo niet, blijf de diameter van het gat vergroten totdat dit het geval is. Als dit klaar is, wil je een stuk vinden dat om het vorige past en het bedekt om de luchtstroom naar buiten te belemmeren. In feite wilt u bij elke stap testen of er geen lucht uit de behuizing ontsnapt; als dat zo is, probeer dan siliconen aan de gewrichten toe te voegen. Dit zou de volgende afbeelding moeten opleveren. Omdat het helpt, hebben we hiervoor een Betadine-fles gebruikt: het gele stuk is de interne dispenser, terwijl het stuk dat het bedekt de dop is met een snee op zijn kop om het in een buisvorm te veranderen. De snede is gemaakt met een heet mes.

Het volgende stuk was een PVC-reductie van 25 (extern) naar 20 (intern). Dit stuk paste mooi in de reeds aangebrachte buizen, hoewel we het moesten schuren en de wanden moesten lijmen om de genoemde luchtstroom te belemmeren. Voor nu willen we dat dit een gesloten holte is. In het diagram is dit stuk waar we het over hebben de donkergrijze die direct op de gele volgt. Als dit stuk eenmaal is toegevoegd, is de hals van het instrument bijna klaar. De volgende stap is om een stuk uit de 32 mm (externe) diameter PVC-buis te snijden en een gat in het midden te boren, zodat de draden van de manometer eruit kunnen. Soldeer de vier draden die we eerder in stap 1 noemden, zoals weergegeven in het volgende diagram, en lijm de nek op de schuine verbinding (na het zwart geverfd te hebben, voor esthetische doeleinden).

De laatste stap is om het mondstuk gemakkelijk af te sluiten. Om deze taak te volbrengen, gebruikten we een altsax-riet, zwarte isolatietape en een rietbinder. De manometer bevond zich onder het riet, voordat de tape werd aangebracht; de elektrische verbindingen naar de meter werden versterkt met zwarte krimpkousen. Dit stuk is ontworpen om te worden verwijderd, zodat de holte kan worden opgeruimd na enige tijd spelen. Dit alles is te zien op de laatste twee foto's.

Stap 4: Software

Software
Software
Software
Software

Download en installeer Virtual MIDI Piano Keyboard, hier is de link.

De logische manier om deze stap uit te voeren is als volgt: download eerst de Arduino-schets in deze Instructables en laad deze op uw Arduino-bord. Start nu VMPK en controleer uw instellingen. Zoals te zien is in de eerste afbeelding, moet 'Input MIDI-verbinding' je Arduino-bord zijn (in ons geval Arduino Leonardo). Als u Linux gebruikt, hoeft u niets te installeren, zorg er gewoon voor dat uw VPMK-bestand de eigenschappen heeft die worden weergegeven in de tweede afbeelding.

Stap 5: Problemen oplossen

Geval 1. Het systeem lijkt niet te werken. Als de Arduino-LED niet brandt of iets donkerder is dan normaal, controleer dan of het systeem correct is gevoed (zie geval 6).

Geval 2. Er lijkt rook te zijn omdat iets naar verbrand ruikt. Waarschijnlijk is er ergens kortsluiting (controleer stroom en kabelbomen). Misschien moet u (voorzichtig) elk onderdeel aanraken om de temperatuur te controleren; als het heter is dan normaal, geen paniek, vervang het gewoon.

Geval 3. Arduino wordt niet herkend (in de Arduino IDE). Upload de meegeleverde schetsen opnieuw. Als het probleem zich blijft voordoen, zorg er dan voor dat de Arduino correct op de computer is aangesloten en dat de Arduino IDE-instellingen op standaard zijn ingesteld. Als niets werkt, overweeg dan om de Arduino te vervangen. In sommige gevallen kan het helpen bij het uploaden van de schets door de resetknop in te drukken tijdens het "compileren" en vervolgens los te laten tijdens het "uploaden".

Geval 4. Sommige toetsen lijken niet goed te werken. Isoleer welke sleutel niet werkt. Een continuïteitstest kan handig zijn, of u kunt de meegeleverde schets gebruiken om de knoppen te testen; de pull-up weerstand is mogelijk niet goed gesoldeerd of de knop is defect. Als de sleutels in orde zijn, neem dan contact met ons op om uw problemen bloot te leggen.

Geval 5. Ik kan geen notitie ontvangen op VMPK. Controleer of de Arduino goed op de computer is aangesloten. Volg vervolgens op VMPK de stappen die worden weergegeven in stap 3. Als het probleem zich blijft voordoen, voert u een knopreset uit of neemt u contact met ons op.

Geval 6. Elektrische inschakeltest. Voer de volgende metingen uit: nadat u de Arduino van de cape hebt verwijderd, zet u de schakelaar aan. Plaats de zwarte sonde op de aardpen (iedereen is voldoende) en gebruik de rode sonde om de stroomknooppunten te controleren. Op de positieve plaat van de accu moet er minimaal een spanningsval van 7,4 volt zijn, anders laadt u de accu's op. Aan de ingang van de LM2940 zou dezelfde spanningsval moeten bestaan, zoals te zien is in het schema. Aan de uitgang moet er een val van 5 volt zijn; dezelfde waarde wordt verwacht van de LM324 (pin 4), de MCP23016 (pin 20) en de LP2950 (pin 3). De uitgang van de laatste moet een waarde van 3,3 volt aangeven.

Aanbevolen: