LABVIEW虚拟钢琴的设计
- 格式:doc
- 大小:180.50 KB
- 文档页数:7
基于Labview压力电子琴的设计作者:杜鸣笛何淑珍来源:《科技资讯》2017年第17期摘要:该文采用Labview软件设计了压力电子琴。
利用惠斯通电路原理设计外部压力系统,对输出电压进行放大,采用DAQ数据采集通道来采集该系统所感应压力机械信号成比例的电压信号。
采集的数据在内部进行处理后,实现压力的变化引起输出音调的变化。
关键词:电子琴压力惠斯通中图分类号:TP216 文献标识码:A 文章编号:1672-3791(2017)06(b)-0097-03Labview是一种较先进的工业标准图形化用于编程的工具,是1986年美国国家仪器公司提出的一个概念,是计算机辅助测试(CAT)行业的一项非常重要的技术。
同时它也有一些强大的基本功能,包括一些程序调试工具,如单步执行等。
运用虚拟仪器技术设计,思路清晰,编程、调试和功能十分简单。
关于电子琴的发展,不同的科研人员采用不同的方法。
如:付梦婷用VHDL语言设计了一个产生88个电子琴琴音的数字电路。
王江伟设计了一种激光虚拟电子琴的工作原理和制作过程,通过红外手指定位技术来确定按键,控制音响部分发出相应的声音。
钟秀媚设计采用硬件电路与软件程序相结合的方式,设计的思路是采用一个模拟键盘,由超声波来测定手的位置,测定后数据反馈给FPGA处理模块,内部处理结束后输出对应的频率,再由扬声器进行播放。
王杰等采用嵌入式开发板设计了一个电子琴,电子琴采用触摸式液晶屏按键,由按键来控制脉冲宽度调制波形进行演奏,不同的音符会使得LED灯有不同的闪烁方式,另外还能播放预置歌曲。
王洋设计以AT89S52单片机作为系统核心控制器,通过外部硬件电路的实现和软件的设计,最终实现电子琴的演奏、播放功能。
张国华采用软件的方式,设计的思路是采用前面板设计模拟琴键,程序则负责在有琴键按下的时候,播放对应频率的音乐。
1 压力电子琴程序流程压力电子琴程序流程图如图1所示。
首先电压信号产生和放大;再采用DAQ采集放大的电压信号;然后就是一个多重判断,根据电压大小所在的范围来给y赋不同的值。
LabVIEW在电子音乐制作和合成中的应用随着科技的不断进步和发展,电子音乐制作和合成已经成为了当今乐坛中不可忽视的一股力量。
在这个领域中,各种软件和工具被广泛应用于音乐的创作和制作过程中。
而其中一款备受关注的软件就是LabVIEW,它为音乐人和音乐制作人提供了一种独特而强大的工具,使他们能够更好地实现自己的创意和想法。
LabVIEW是由美国国家仪器公司(National Instruments)开发的一款图形化编程软件。
它的独特之处在于用户可以通过可视化编程的方式构建程序,而不需要使用传统的文本代码。
这一特点使得LabVIEW在电子音乐领域的应用变得相当方便和实用。
首先,LabVIEW可以对音频信号进行处理和分析,从而为音乐制作和合成过程提供了强大的支持。
通过LabVIEW的信号处理功能,音乐人可以对录制或导入的音频进行各种处理,例如降噪、均衡、混响等。
此外,LabVIEW还提供了一系列的分析工具,如频谱分析、波形分析等,使音乐人能够更好地理解和把握音频的特性,并据此作出相应的调整和改进。
其次,LabVIEW的合成功能也是其在电子音乐制作中的重要应用。
通过内置的合成器和音频引擎,LabVIEW能够模拟和生成各类音效和乐器音色。
音乐人可以利用LabVIEW提供的合成器和音频处理模块,自由地创造出各种独特而富有个性的声音效果。
此外,LabVIEW还支持外部MIDI设备的连接,可以通过MIDI控制器进行实时演奏和音乐制作,进一步提升创作的灵活性和交互性。
除了音频处理和合成功能,LabVIEW还可以与其他软件和硬件设备进行无缝集成,进一步丰富了其在音乐制作中的应用。
通过与硬件音频接口、控制器等设备的配合,LabVIEW能够实现音频的输入和输出控制,从而更好地满足音乐人对于音频接口的灵活需求。
同时,LabVIEW还支持与其他音乐制作软件的互联,如Ableton Live、Pro Tools等,使得音乐人可以根据自己的习惯和需求将LabVIEW与其他工具进行结合,实现更加高效和便捷的音乐制作流程。
基于LabVIEW可弹奏电子琴的设计【摘要】本文主要阐述利用LabVIEW软件实现可弹奏电子琴的设计,通过对声音的频率设置,以及LabVIEW中的常用编程控件,来实现电子琴发声,本设计能实现电子琴基本演奏功能,调试效果较好。
【关键词】LabVIEW;可弹奏电子琴;生成安装软件LabVIEW是由美国国家仪器公司(NI)创立的一种功能强大而又灵活的仪器和分析软件应用开发工具,它是一种基于图形化的、用图标代替文本行创建应用程序的计算机编程语言,通常称为G语言。
LabVIEW采用的是数据流编程方式,程序框图中节点之间的数据流向决定了程序的执行顺序。
[1]目前市场上的电子琴都比较昂贵,利用LabVIEW编程能够简单又方便地实现其弹奏功能,当然本设计对于实现高真电子琴模拟还有一段距离。
1.可弹奏电子琴的原理音乐是由音符和节拍组成,而不同的音符是由相应的频率振动产生。
本次设计的电子琴是由36个琴键所构成,包含有高音、中音、低音的音阶以及半音阶共同组成,也就是所谓的黑键跟白键。
基于LabVIEW的可弹奏电子琴主要以软件实现弹奏功能:每按下一个琴键,扬声器播放对应频率声音。
bVIEW介绍在一个虚拟仪器VI的开发过程中,主要利用模板创建和运行程序。
操纵模板共有三类:工具模板、控件模板和函数模板。
创建一个完整的VI程序主要分为以下三步:(1)创建前面板。
前面板模仿了实际仪器的操作面板,它主要由控件构成,是程序与用户交流的窗口,用于设置输入数值和观察输出量。
(2)创建程序框图。
程序框图由函数节点、端口和数据连线组成。
从前面板切换到程序框图窗口,会看到与前面板对象对应的端口,根据需要在函数模板中找到所需的节点,并将节点图标放置到框图程序窗口。
用数据连线将这些端口和节点的图标连接起来,形成一个完整的框图程序。
(3)创建图标。
一个虚拟仪器的图标/连接端口就像一个图形(表示某一虚拟仪器)的参数列表。
这样,其它的虚拟仪器才能将数据传输给子仪器。
设计制作数码世界 P.150基于LabVIEW的多功能电子琴设计黄俊华 刘富成 西北农林科技大学摘要:本文研究设计了一种基于LabVIEW的多功能电子琴,该虚拟电子琴有四个主要的功能:鼠标点击虚拟琴键演奏、键盘控制演奏、显示电子琴谱和播放钢琴曲,文中阐述了这四个功能的设计思路与编程实现。
关键词:LabVIEW 电子琴 多功能引言LabVIEW软件是由美国国家仪器公司(NI)开发的一种功能强大的虚拟仪器和数据处理分析软件,它采用图形化的编程语言——G 语言。
LabVIEW采用数据流的编程方式,程序的执行顺序由数据流向决定,它自带的函数库可用于数据采集、串行设备的控制、数据分析和显示等。
目前市场上的电子琴种类繁多、功能强大,但价格比较高昂,另外,电子琴的体积较大,占用空间较多,而利用LabVIEW编程设计的虚拟电子琴操作简单、使用方便,不占用室内空间,可在一定程度上满足人们对音乐弹奏的需求,供人们娱乐。
一、电子琴概述电子琴,又称电子合成器,属于电子乐器类,其发音音量可以自由调节,音域较宽,和声多样,表现力极其丰富。
电子琴还可以模仿多种音色,甚至可以奏出常规乐器所无法发出的声音(如合唱声,风雨声等)。
另外,电子琴在独奏时,还可随意配上类似打击乐音响的节拍伴奏,适合于演奏节奏性较强的现代音乐。
目前,电子琴主要分为玩具型电子琴、家庭型电子琴和演奏型电子琴。
二、系统设计本文研究设计的基于LabVIEW的电子琴是由36个琴键所构成,包含高音、中音、低音的音阶以及半音阶,也就是人们常称的白键和黑键。
该设计满足了人们对电子琴音阶的基本需求,能演奏绝大多数的歌曲。
参考实际的电子琴的功能,拟设计的基于LabVIEW的电子琴由四个主要的功能模块组成,它们分别是:虚拟电子琴键(鼠标点击)、虚拟电子琴键(键盘控制)、电子琴谱、播放钢琴曲。
根据设计的功能规划,得到系统结构如图1所示。
图1 系统结构图根据设计的基于LabVIEW的电子琴的功能规划,设计好后的电子琴的前面板如图2所示。
基于LabVIEW的乐器数字调音系统作者:胡奕明黄志刚肖雷蕾徐瑞阳来源:《现代电子技术》2013年第06期摘要:该系统采用虚拟仪器思想,利用基于图形化的编程软件LabVIEW开发了乐器数字调音系统。
主要内容包括模拟钢琴,钢琴及吉它音频的基频检测,音频的采集和存储、音频的参数测量、音频的谱分析及图形化显示等内容。
该系统利用LabVIEW中NI模块通过搭积木式编程方法实现了对钢琴和吉它2种乐器的音准调音。
实现钢琴模拟调律过程,满足实际吉它调音的需要。
关键词: LabVIEW;虚拟仪器;模拟钢琴;乐器调音;基频检测中图分类号: TN919⁃34; TM935 文献标识码: A 文章编号: 1004⁃373X(2013)06⁃0141⁃040 引言钢琴和吉它是人们喜闻乐见的乐器,其共同的特点是它们的琴弦都具有金属的延展性,使用过一段时间后其音准会发生变化,从而要周期性地对钢琴和吉它进行调律(调音)。
此类乐器特别是钢琴的调音,传统上都是由专业调音师来完成的。
随着电脑技术的发展,寻求一种科学的,普通人可以掌握的调音工具已经受到广泛的关注。
本文应用EPMC⁃505C嵌入式平台,设计的乐器数字调音系统可以使钢琴和吉他的调音变得简单而有趣。
通过该系统用户可以准确地判断出音准是否有偏差,快速完成调音。
另外,本设计作品参加了2012全国大学生电子设计竞赛嵌入式大赛(获三等奖),为了满足现场演示需要,系统中还设计了模拟钢琴,用以模拟钢琴调音的全过程。
1 系统组成与功能1.1 系统组成本乐器数字调音系统可实现钢琴模拟调律过程,并可完成实际吉它调音的任务。
1.2 系统功能1.2.1 模拟钢琴(1)按键发音(音高可调);(2)琴键变色;(3)声卡、音箱输出。
1.2.2 音频信号处理(1)音阶校准功能:提取信号基音频率,与标准音阶信号对比,实现音阶校准。
并通过表头显示差别;(2)频谱分析图功能;(3)示波器功能。
2 基音频率检测原理乐器调音系统的核心问题是乐音信号的基音频率检测(基频检测),通过检测乐音的基频,比对标准频率,从而判断钢琴和吉它的音准。
基于LabVIEW的虚拟仪器设计实验张巧梅专业:电子信息工程摘要:随着电子技术、计算机技术的高速发展及其在电子测量技术与仪器领域中的应用,新的测试理论、方法以及新的仪器结构不断出现,虚拟仪器也随之出现并得到了很大的发展。
目前在这一领域内,使用较为广泛的计算机语言是美国NI公司的LabVIEW。
LabVIEW(Laboratory Virtual instrument Engineering Workbench)是一种图形化的编程语言开发环境,LabVIEW也是一种通用编程系统,具有各种各样、功能强大的函数库,包括数据采集、GPIB、串行仪器控制、数据分析、数据显示及数据存储,甚至还有目前十分热门的网络功能,是一个功能强大且灵活的软件。
LabVIEW也有完善的仿真、调试工具,如设置断点、单步等,其动态连续跟踪方式,可以连续、动态地观察程序中的数据及其变化情况,并且LabVIEW与其它计算机语言相比,有一个特别重要的不同点:其它计算机语言都是采用基于文本的语言产生代码行,而LabVIEW采用图形化编程语言--G语言。
关键词 LabVIEW软件虚拟仪器实验设计Abstract: With the electronic technology, computer technology's rapid development in electronic measurement and instrument field of application of testing new theories,Virtual instrument has emerged and obtained very big development.Now in this field,Using a wide range of computer language is the NI company bVIEW is a kind of graphical programming language,of the development bVIEWalso is a kind of common programming system,With various and powerful function,Including data acquisition, GPIB,Serial instrumen t control,Data analysis,Data display and data storage,Even now very popular network function,Is a powerful and flexible software.LabVIEW also have simulation and Debugging tools.If set breakpoint and Single-step etc.The dynamic continuosly,Can continuously and dynamic observations of the data and programs.And with other computer language LabVIEW have a particularly important difference: Other computer language is based on the text of the language code, but LabVIEW using graphical programming language - G language. Keywords: LabVIEW Software Virtual instrument Experiment目录引言 (4)1.虚拟仪器系统概述 (4)1.1.虚拟仪器概念 (4)1.2.虚拟仪器的特点 (4)1.3.虚拟仪器的分类 (5)1.4.虚拟仪器的软件开发环境 (5)2.图形化编程语言LabVIEW (5)2.1.LabVIEW概述 (5)2.2.LabVIEW的使用 (6)3.LabVIEW虚拟仪器实验 (7)3.1.一个虚拟温度报警器 (7)3.1.1.此实验的前面板设置 (7)3.1.2.此实验的程序框设置 (7)3.1.3.结果演示 (13)3.2.一个虚拟示波器 (14)3.2.1.前面板设置 (14)3.2.2.函数程序框图 (19)3.2.3.演示结果 (21)3.3.一个虚拟滤波器 (23)3.3.1.前面板设置 (23)3.3.2程序框设计 (23)3.3.3.运行结果: (25)结束语 (26)参考文献 (27)引言虚拟仪器是基于计算机的软硬件测试平台,它可代替传统的测量仪器,如示波器,逻辑分析仪,信号发生器,频谱分析仪等;可集成于自动控制,工业控制系统;可自由构建成专有仪器系统。
LabVIEW技术与应用课程设计报告题目:基于LabVIEW的电子琴程序设计学院:专业班级:学生姓名:学号:指导教师:日期:一、设计题目及要求题目:基于LabVIEW的电子琴程序设计要求:使用LabVIEW设计一个运行于计算机的电子琴软件,电子琴是由36个琴键所构成,包含有高音、中音、低音的音阶以及半音阶共同组成也就是所谓的黑键跟白键。
软件实现弹奏功能。
其中弹奏功能:每按下一个琴键,扬声器播放对应频率声音。
二、前面板设计电子琴是由36个琴键所构成,包含有21个白键和15个黑键,在前面板中利用“确定按钮”作为琴键,白键和黑键的属性设置分别如下图所示:图1 白键属性设置图2 黑键属性设置把设置好的36个琴键按次序排布为电子琴的样子,从左到右白健依次是低音、中音、高音的1 2 3 4 5 6 7,黑键也是依次是低音、中音、高音的半音阶,如下图所示:图3 设置后的电子琴按键三、程序框图设计按以下步骤设计程序框图:1.在本设计中,电子琴需要能连续弹奏,因此要把整个发声程序放在一个while循环中。
2.每个按键发声都是一个事件,所在在程序框图中需要把他们放在事件结构中,在事件结构中对每个按键发声进行设置。
具体做法如下:在程序中选择事件结构,添加新的事件分支,事件源为某琴键按钮,然后将本分支所处理的琴键按钮放入该分支页面中,由于电子琴的琴键通常需要按下去才会发出声音,所以本分支出发的条件就设置为当鼠标按下时触发。
事件结构设置如下图所示:图4 事件结构的设置3.要电子琴能发出声音,得用播放声音之类的控件,本设计选用了播放波形的控件,原因是因为波形的频率容易设置,能让声音听起来更接近。
具体做法如下:通过路径“信号处理-波形生成-仿真信号”选择仿真信号控件,并选择仿真的信号为正弦波,同时创建一个输入控件,输入相应的频率值,该输入控件与仿真信号控件的频率相连。
然后通过路径“图形与声音-声音-输出-播放波形”选择播放波形控件,将仿真信号控件的输出与播放波形控件的输入相连,如下图所示:图5 发声程序如此类推,每个琴键设计一个对应的发声程序,并把该发声程序放入对应的事件结构中,如下图所示:图6 电子琴的程序框图另外,每个按键对应的频率如下图所示:图7 各个音阶对应的频率4.最后,要为循环结构配置一个停止按钮。
LABVIEW虚拟钢琴的设计
LABVIEW虚拟实验系统的设计
期末大作业报告
题目:简易虚拟钢琴的制作
学院: 信息与通信工程学院班级: ########## 姓名: $$$$$$ 学号:
######## 序号: ##
2012年12月25日
一、基本介绍:
此次期末大作业我做的是简易虚拟钢琴,所实现的功能主要是高中低21个音
的弹奏,弹奏方式上实现了鼠标点按弹奏和用电脑键盘弹奏。
以下是程序的主界面:
二、程序基本框图:
三、程序的关键设计点:
1、程序界面:
, 背景和文字:使用Photoshop制作。
如下图:
, 琴键:使用LABVIEW确定按键,自定义颜色形状形成。
2、发音原理:
由于我已经准备好各个音符的声音文件,所以可以直接使用播放声音文件VI 直接播放声音。
播放声音文件VI
声音输出清零VI
具体使用方式如下:
说明:向播放声音文件VI输入声音文件绝对路径,然后再在后面接上声音输出清零VI,其作用是使设备停止播放音频,清空缓存,任务返回至默认状态,并清除与任务相关的资源。
简单来说就是为了使每个音符的发声时间长度一致。
实验中我是把以上整个发音结构作为一个基本单元使用的,以下用到这个结构的地方,我简称它为发音程序。
3、鼠标点按弹奏功能:
, 琴键设置:
琴键采用的是确定按钮,白键的属性设置:
黑键的属性设置:
它们的机械动作均为保持转换直到释放。
, 琴键布局完成后,将它们与程序框图相关联:
如右图,建立一个事件结构:
其作用:包括一个或多个子程序框图或事件分支,结构执行时,仅有一个子程序框图或分支在执行。
事件结构可等待直至事件发生,并执行相应条件分支,处理该事件。
C音的发音程序假如琴键名为C,那么在事件结构里添加C的鼠标按下事件,一旦C按下,就发出对应音乐,实现弹奏。
, 将以上方法应用到每个按键,就实现了所有音符的弹奏。
4、键盘弹奏功能:
, 还是以上的事件结构,再添加一个“键按下”的事件:
当键盘上任意键按下时就启动事件框内的程序,程序负责查找哪个按键被按下,然后确定按下的琴键,并播放按键音。
由于程序框图面积太大,所以只截取具有代表性的框图来说明,以下为截取的关键程序以及相关解释。
条件结构里面放的是发音程序(条件为真时启动方框内的程序):
彩灯在琴键上方。
, 以下为部分键的查找程序框图:
5、停止按钮:
在总程序外加一个WHILE循环,事件结构加停止键“值改变”事件,当停止键按下就终止循环,退出程序,停止键如下:
四、遇到的问题:
, 琴键的设置:一开始没意识到LABVIEW自带的按键的强大功能,我还想着要自己设计的琴键图片导入前面板,后来由于遇到不少问题,我才意识到自己脑袋转得太慢,居然走这种弯路。
, 一开始为了实现按键弹奏,就去找事件结构里的事件情况,结果只有“键按下”事件,无法根据具体按键设置事件。
后来在翻看一些参考书、相关程序之后,我才确定了具体方案,正如同以上程序所写。
, 音长不同问题:连续按不同键时音符的长度与重复按一个键时的长度不同。
解决方法:在播放声音文件VI后加上声音输出清零VI控件,使得每个音的长度都减短,即每个音的长度都相同了。
五、总结:
本次大作业是分组做的,由于我个人独立成组,所以选的题目比较简单,但是这并不意味着工作量少。
一开始我是因为做老师给的作业——计算器的时候想到了我可以做一个按键能发声的程序,于是我马上构思好了雏形,准备做一个虚拟钢琴。
开始我花了不少时间想着怎么设计界面,后来又对每个琴键进行设置,对于琴
键真可谓是“一荣俱荣,一损俱损”,设置思路不对就得一个一个改,所以我只先做好一个键,然后迁移到每个琴键,考虑到时间有限,我只做了21个琴键的弹奏,而没有做钢琴的所有的88个键。
这次LABVIEW程序设计与编写让我加深了对于这一图形化编程语言的理解。
同时我也有点后悔没有与其他同学组成小组一起完成大作业,因为我感觉到团队协作很重要,我的兴趣是程序界面的美化,如果找一个擅长编程的同学协作,我想程序最后出来会十分完美;另外,在做的过程中,当我遇到问题时,我只能一个人去思考去查资料,可以说碰了不少钉子,如果有一个伙伴一起商量做法的话,程序完成起来会高效得多。
还有一点很大的启发就是最后解题展示时老师提的建议,就是要尽量简洁地把自己的努力成果向大家展示,而且要考虑许多方面:怎么让别人一下子就被吸引、考虑所有可能发生的意外情况、自己一定要做好准备、怎么去展示自己作品最好的一面……
总之,这次大作业我的收获挺大的,这对我以后的学习与工作都是一段极其宝贵的经验。