Мазмұны:
- 1 -қадам: компьютерлік материалдар
- 2 -қадам: фортепиано
- 3 -қадам: құрастыру
- 4 -қадам: Техникалық қиындықтар мен болашаққа қатысты ойлар
Бейне: Фортепианодағы синестезия ойыны: 4 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
Бұл ойыншы фортепиано түрлі түсті дөңгелек пен камераның көмегімен музыканы ойнайды! Суреттер камерамен түсіріледі, өңделеді және музыкалық ноталар ретінде түсіндіріледі. Дәл қазір жаңа ардуино эскизін жүктеу арқылы өзгертуге болатын питомниктік рифмдерді ойнау бағдарламаланған, онда қандай ноталарды ойнату керектігін көрсетеді (камераға қандай түстерді көрсету керек).
Борттық Linux ДК жүктеу кезінде камерамен суретке түсіретін, суреттегі RGB мәндерінің функциясын есептейтін және функцияның қайтару мәніне негізделген дыбысты шығаратын қызметті бастайды. Дыбысты ойнатпас бұрын, ол Arduino -ға сервоны айналдыру керектігін білдіретін сигнал жібереді, ол келесі ойнатылатын нотаға сәйкес келетін түсті көрсетеді. Содан кейін цикл қайтадан басталады, сурет түсіріледі, түс дөңгелегі бұрылады және шексіз дыбыс шығарылады.
Бұл жоба-музыканы, заманауи Linux жүйелерін бағдарламалауды, микроконтроллерлік бағдарламалауды, бояуды бояуды, лазермен кесуді және қажетсіз картон қораптарын қайта жоспарлаудың қызықты әдісі.
Барлық кодтар мен inkscape SVGs github -да қол жетімді:
github.com/melvyniandrag/pyMusic
Қолданылатын материалдар:
- Бос ақ жапсырмалар
- Картон қорап
- Веб-камера
- Қарындаштар
- Ардуино
- Beagleboard-xM
- Сымдар
- Сериялық кабель
- Кескінді өңдеу және музыка туралы негізгі білім
1 -қадам: компьютерлік материалдар
Бортта сізге Raspberry Pi сияқты Linux-пен жұмыс істейтін шағын компьютер қажет болады. Мен ескі BeagleBoard-xM қолдандым, себебі мен оны кездейсоқ орналастырдым, менде SD картасында операциялық жүйе бар. Сіз кез келген нәрсені пайдалана аласыз, егер ол веб -камераны басқара алатын болса, OpenCV (түрлі түсті дөңгелектердің суреттерін түсіруге және өңдеуге арналған компьютерлік көру кітапханасы) жұмыс жасай алады және аудио шығыс ұясы бар.
Мен жүйелік оқулықтан кейін жүктеу кезінде суреттерді түсіретін python кодын іске қосу үшін операциялық жүйені орнаттым. Сценарийді іске қосу үшін сізге көрсетілген кітапханаларды алу үшін sudo apt-get install python-pyaudio python-opencv қажет болады. Сондай -ақ, осы кітапханаларды алу үшін numpy pyserial орнату қажет болады. pyaudio дыбыстарды ойнату үшін қолданылады, opencv суретті түсіру және өңдеу үшін қолданылады, numpy кескінді өңдеу үшін де қолданылады, ал pyserial Arduino -мен байланыс үшін қажет.
Arduino түсті дөңгелегі орнатылған серво қозғалтқышты айналдыру үшін қолданылады. Егер сізде Raspberry Pi болса, онда сіз GPIO түйреуіштерін қолдана аласыз және Arduino -ны қалдыра аласыз, бірақ сізге Python кодын өзгерту қажет болады.
Кескіндерде сіз операцияның технологиялық жақтарын және бірнеше код үзіндісін көре аласыз.
2 -қадам: фортепиано
Мен қолымда болған ескі қораптардан картоннан фортепиано жасадым. Маған лазерлік кескіші бар мейкерлік кеңістіктің жанында өмір сүру бақыты бұйырды. Бір жыл бойы мен лазерлік кескішті не үшін қажет деп ойлап жүрмін, мен ақырында оны қолдануды таптым.
Мен компьютерді, ардуино мен сервоны өлшедім, сондықтан маған қанша орын қажет екенін білдім, фортепианоның бөлшектерін сырлы суретте сыздым және оларды лазерлік кескіште кесіп алдым. (Өңдеу: Мен корпусты компьютер мен ардуиноны ұстап тұру үшін картоннан таусылдым, сондықтан мен оларды салған жоқпын. Олар корпустың сыртында. Маңызды емес, басқа қорапты бір жерден алуға болар еді, бірақ олай болмады. Соңында маңызды емес.)
Бөліктер эпоксидпен біріктірілді.
3 -қадам: құрастыру
Міне, фортепианоның құрастырылып, боялған суреттері. Принтердің сиясы бітті, сондықтан мен жоспарлағандай ақ жапсырмаларға түстерді басып шығара алмадым. Сондықтан мен қызымның қарындаштарын қолдандым. Мен жапсырманы картон түрінде кесетін както пышағын таба алмадым, сондықтан мен стейк пышағын қолданып, асхана үстеліне қорғаныс зат қойдым. Бар нәрсені қолданыңыз!
4 -қадам: Техникалық қиындықтар мен болашаққа қатысты ойлар
Бұл жобаның қиын бөлігі камерада оқылатын RGB мәндерін алу болды. Менде веб -камерада Linux -те қалай өшіру керектігін білмейтін керемет жарық диодтар бар. Менің ойымша, оларды қосуға және өшіруге мүмкіндік беретін Windows драйвері бар. Мен светодиодтарды электрлік таспамен жабыстырып, қосулы күйде қалдыруға тәжірибе жасадым. Мен сонымен қатар бағдарламалық қамтамасыз етуді берік қағазды көрсетіп қана қоймай, сонымен қатар түстерді көрсететін кішкене веб -сайт жазу арқылы оның беріктігін тексердім.
Компьютер шығаратын дыбыстарда кейде дыбыстар пайда болады, бұл менің Linux аудио бағдарламалау тәжірибесінің аздығынан туындайды. Pyaudio кітапханасы компьютерде JACK орнатылмағанына қатысты көптеген шағымдарды шығарады, бірақ әдепкі бойынша JACK бассыз жұмыс жасағысы келмейді (гуи жұмыс үстелі мен мониторсыз). Бұл бағдарламалау тапсырмасы, мен оны жетілдіру деп ойладым, бірақ мен ойлаған фортепианоның мәнін көрсету үшін қажет емес еді.
Мен түстерді өзгерту үшін қолмен итергішті қолдануды ойладым, мүмкін оларды домалақ тәрізді затта ұстауды ойладым, бірақ бұл өз асқынуларын тудырады. Серво сәл шулы, бірақ қазір жақсы жұмыс істейді.
Фортепиано қазіргі уақытта тек 4 нотаны ойнауға арналған. Себебі, серво тек 180 градусқа ғана жылжиды, питомниктердің көпшілігін 3-4 нотамен ғана ойнауға болады, мен түс дөңгелегінің түс аймақтарымен араласып кетуін қаламадым, мүмкін камераны шатастырып жіберуі мүмкін. Музыкалық сәттілік пен техникалық шектеулердің комбинациясы арқылы 4 нота жақсы.
Ұсынылған:
DIY 37 Leds Arduino рулетка ойыны: 3 қадам (суреттермен)
DIY 37 Leds Arduino рулетка ойыны: Рулетка - бұл кішкентай дөңгелекті білдіретін француз сөзімен аталған казино ойыны
BBC Micro: бит және Scratch - интерактивті руль және жүргізуші ойыны: 5 қадам (суреттермен)
BBC Micro: бит және Scratch - интерактивті руль және көлік жүргізу ойыны: Менің осы аптадағы тапсырмаларымның бірі - біз жазған Scratch бағдарламасымен интерфейс жасау үшін BBC Micro: bit пайдалану. Мен бұл ThreadBoard тақтасын ендірілген жүйені құрудың тамаша мүмкіндігі деп ойладым! Менің сызатқа шабытым
Python Tic Tac Toe ойыны: 4 қадам
Python Tic Tac Toe ойыны: python tic tac toe ойыны бұл ойын python компьютерлік тілде жасалған, ол python редакторын қолданған: pycharm, сіз сонымен қатар кәдімгі python код редакторын қолдана аласыз
3d лабиринт ойыны Arduino көмегімен: 8 қадам (суреттермен)
Arduino қолданатын 3d лабиринт ойыны: Сәлем достар, бүгін біз ARDUINO UNO көмегімен лабиринт ойынын жасамақпыз, өйткені Arduino Uno - бұл жиі қолданылатын тақта, онымен ойын жасау өте керемет. Бұл нұсқаулықта джойстиктер көмегімен басқарылатын лабиринт ойынын жасауға мүмкіндік береді. Ұмытпаңыз
Лазерлік фортепианодағы Pi-aser: 9 қадам
Pi-aser лазерлік фортепиано: Сәлеметсіз бе, мен студентпін мультимедия & Howest Belgium -дағы креативті технология. Сіз әрқашан музыка ойнағыңыз келді, бірақ басқалар сияқты емес пе? Мүмкін бұл сізге бір нәрсе болар! Мен лазерден фортепиано жасадым. Саусақтарыңызды жоғары қою керек