
Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02

I denne instruksjonsboken skal jeg lage en kontroller for å la noen gamle Roland elektroniske trommesettputer utløse lyder uten den originale trommemodulen som fulgte med settet.
Jeg vil bruke Pure Data til å lage en oppdatering for å laste inn noen wav -filer og deretter spille dem når den mottar input fra en seriell inngang.
Den serielle inngangen kommer fra en Arduino, leser putene med de analoge pinnene og sender verdiene til oppdateringen.
Rekvisita
Arduino mikrokontroller (jeg har valgt Arduino Mega, med sine 16 analoge pinner som gir mulighet for 16 pad -innganger, eller 8 stereoputer i mitt tilfelle)
Pads for input (jeg bruker noen gamle Roland -pads, men den samme forutsetningen kan også brukes på piezo -pads)
En enhet som kan kjøre Pure Data - dette kan være alt fra en Raspberry Pi til en PC. Det er en flott programvare som kan kjøres på Linux, Mac eller Windows. Jeg bruker et gammelt Windows 8 -nettbrett.
Trinn 1: Hvorfor Pure Data?
Jeg har jobbet med musikkprosjekter i en årrekke, og på den tiden har jeg brukt all slags programvare og maskinvare for å lage mitt sluttprodukt. Normalt ville jeg se etter å bruke Python til noe slikt, men på et annet nylig prosjekt jeg startet var det klart at jeg trengte noe mer egnet for å håndtere behandling av flere lydfiler. Jeg snublet over Pure Data, og har brukt det til lydprosjektene mine siden!
Den objektbaserte stilen og den visuelle redaktøren gjør det å sette sammen lydkjeden din veldig raskt og enkelt, og det store utvalget av eksterne biblioteker gjør det mulig å legge til mange funksjoner ganske enkelt.
Pure Data gjør det enkelt å laste og spille av lydfiler, og også motta og rute serielle kommandoer, så det gjorde det nyttig for dette prosjektet!
Trinn 2: Lag din inndataenhet

Dette trinnet vil variere avhengig av din tiltenkte bruk, men grunnleggende vil forbli det samme.
Koble inndataenhetene til mikrokontrollerens analoge pinner og også strøm; Når putene blir truffet, sender den en verdi til pinnene. De analoge pinnene leser verdier mellom 0 og 1023; vi kan bruke denne verdien til å bestemme volumet for å spille lyden!
Bildet vedlagt viser en Arduino Uno og tre TRS -innganger; Roland -putene jeg bruker har en hovedpute og en felgpute som overføres via en TRS -kontakt. Til oss dem med min arduino har jeg plassert dem på et brødbrett og brukt brødbrettsledninger for å koble kontaktene til mine analoge pinner.
Når du er ferdig, blir knektene boret og montert i et prosjektkapsling og kablet direkte til arduinoen.
Last til slutt opp den vedlagte koden SamplePadController.ino til din arduino. Hvis du trenger å legge til flere innganger, må du bare kopiere strukturen i filen for å legge dem til den serielle kommandolinjen som sendes til oppdateringen.
Trinn 3: Sett opp Pure Data -enheten


Last ned Pure Data fra Pure Data -nettstedet for det valgte systemet, og legg deretter til komporten ekstern ved å gå til hjelp> finne eksternt og skrive inn 'comport'. Dette gjør at enheten din kan samhandle med seriell.
Last ned de vedlagte filene, endre de to.txt -filtypene til.pd og åpne SamplePad.pd -filen.
Legg til wav -filene i mediemappen - det gjør det enkelt å adressere dem i oppdateringen.
Ved å bruke ctrl+e for å gå inn i redigeringsmodus kan du endre com -porten fra 9 for å matche den på din Arduino serielle port, og også endre navnene på wav -filene som skal brukes. Hvis du har lagt dem i mediemappen i prosjektets katalog (i bilde 2), kan du referere dem til./media/filename.wav
Måten patch fungerer på er veldig enkel; den åpnes, laster deretter inn wav -filene og åpner deretter den serielle porten for å kommunisere med arduinoen. Når arduino sender en streng med verdier til den, dirigerer den deretter inngangen til hver av putene; pad1, pad2 etc. verdien mottatt spiller deretter filen med den som volumet, så lenge verdien er over 0. Hvis puten ikke har blitt truffet, spilles ingen lyd. Enkel!
Trinn 4: Utvikle videre
Den modulære måten denne oppdateringen er satt sammen på, gjør det enkelt å utvide den i fremtiden; legg til ekstra sensorer i mikrokontrolleren din, og for å gjøre den brukbar i oppdateringen, legg bare til navnet på verdien i 'ruten', kopier delen av objektene til en av de eksisterende inngangene, koble dem til ruting og voila!
Det er så mye mer som Pure Data -miljøet kan gjøre, og jeg ber dere alle om å se på det og prøve det. Du vil kunne lage noen fantastiske lydprosjekter!
Anbefalt:
Profesjonell værstasjon som bruker ESP8266 og ESP32 DIY: 9 trinn (med bilder)

Profesjonell værstasjon ved bruk av ESP8266 og ESP32 DIY: LineaMeteoStazione er en komplett værstasjon som kan grensesnittes med profesjonelle sensorer fra Sensirion samt noen Davis Instrument -komponent (regnmåler, vindmåler) Prosjektet er beregnet som en DIY værstasjon, men bare krever
Hindringsrobot som bruker ultralydsensor (Proteus): 12 trinn

Hinder -unngåelsesrobot ved bruk av ultralydssensor (Proteus): Vi støter vanligvis på hindrings -unngåelsesroboter hvor som helst. Maskinvaresimulering av denne roboten er en del av konkurransen på mange høyskoler og i mange arrangementer. Men programvaresimulering av hinderrobot er sjelden. Selv om vi kan finne det et sted
Bruke Complex Arts Sensor Board for å kontrollere rene data over WiFi: 4 trinn (med bilder)

Bruke Complex Arts Sensor Board for å kontrollere rene data over WiFi: Har du noen gang ønsket å eksperimentere med gestikal kontroll? Få ting til å bevege seg med en håndbølge? Kontroller musikk med en vri på håndleddet? Denne instruksen vil vise deg hvordan! Complex Arts Sensor Board (complexarts.net) er en allsidig mikrok
Slik bruker du Mac Terminal og hvordan du bruker viktige funksjoner: 4 trinn

Slik bruker du Mac Terminal og hvordan du bruker viktige funksjoner: Vi viser deg hvordan du åpner MAC Terminal. Vi viser deg også noen få funksjoner i terminalen, for eksempel ifconfig, endring av kataloger, tilgang til filer og arp. Ifconfig lar deg sjekke IP -adressen din og MAC -annonsen din
Hvordan lage en autonom basketballball som bruker en IRobot Lag som base: 7 trinn (med bilder)

Slik lager du en autonom basketballball som bruker en IRobot Lag som base: Dette er min oppføring for iRobot Create -utfordringen. Den vanskeligste delen av hele denne prosessen for meg var å bestemme hva roboten skulle gjøre. Jeg ønsket å demonstrere de kule funksjonene i Create, samtidig som jeg la til litt robo -teft. Alle mine