版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1页共7页深圳大学考试答题纸(以论文、报告等形式考核专用)
二○14~二○15学年度第一学期课程编号课程名称现代数字信号处理主讲教师张旭评分学号2140220502姓名宋泽阳专业年级生物医学工程14级(硕士)教师评语:题目:现代数字信号处理课程心得和膜片钳电压信号的读取与处理摘要:本文主要分为两个部分:前一部分讲述了学习现代数字信号处理课程的主要收获,和在期末的心得体会。后一部分介绍了一款用MATLAB编写的读取和处理膜片钳电压信号的GUI模块。其中膜片钳电压信号由clampfit软件截取成高时间密度的离散时间文本,被GUI模块读取后拟合成连续信号,而后进行后续处理和特征输出。关键字:现代数字信号处理心得体会MATLAB膜片钳电压信号一.课程心得自20世纪60年代以来,随着计算机和信息学科的飞速发展,数字信号处理(DSP)技术应运而生并迅速发展,现已形成一门独立的学科体系1。数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号采集、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。其系统具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等诸多突出优点,远远优于模拟信号处理系统1。数字信号处理在工程技术领域使用极其广泛,如何在较强的背景噪声下提取出真正的信号或信号特征并将它们应用于工程实际是信号处理的关键任务1。数字信号处理学在理论上涉及的范围非常广,包括数学领域、网络通信领域、人工智能、模式识别、神经网络等等1。在学科上,数字信号处理作为一套较完整的理论体系,包括信号采集A/D技术、抽样定理、量化噪声、离散信号分析、离散系统分析、信号处理的快速算法、信号估值、建模等方面。信号处理的理论和算法是密不可分的1。数字信号处理中所涉及的信号包括确定性信号、平稳随机信号、时变信号、一维及多维信号、单通道及多通道信号。所涉及的系统也包括单通道系统和多通道系统,对每一类特定的信号与系统,理论上的各个方面都有不同的内容1。数字信号处理的实现分为软实现和硬件实现两大类。软件实现最强大的工具是MATLAB,其具有形形色色的信号处理软件包,使用起来十分方便。硬件实现指各种DSP芯片和其他的数字信号处理系统,其中DSP芯片处理能力十分突出1。现代数字信号处理课程,我们主要学习了离散时间信号的Z变换、傅里叶变换和快速傅里叶变换;数字滤波器的设计;信号处理的正交变换;信号的插值和抽取;平稳随机信号的定义和特征;经典功率谱估计及数字信号建模的知识。对数字信号处理有了较本科学习更深入的了解。二.膜片钳电压信号处理的MATLAB实现膜片钳放大器是专门针对1pA—nA级别的微电流放大器,其输入是极微小的电流信号,通过I/V放大系统,输出放大后的电压信号2。本文所使用的信号是,使用膜片钳放大器检测的纳米孔过孔信号,该信号产生原理是:在中央被纳米孔薄膜分开的样品池两侧,外加一个稳定的电压激励,由于纳米孔十分微小,使样品池中的待检测物在电压的作用下,逐个通过纳米孔,通过检测纳米孔过孔电流的变化,来测定待检测物的种类和浓度3。鉴于纳米孔信号的特点,本文使用的信号有一个人为的基准电压,即纳米孔空载时的电压值;目标特征值为电压降大小和电压降时间。Step1,信号预处理使用clampfit软件,通过记录横、纵坐标值,从采集到的长信号中截取10-50秒长度,保存在txt文本中,方便MATLAB软件读取(图1)。本文使用的待处理信号是已被膜片钳放大的信号。根据其放大倍数换算成电流,单位用pA表示(图1a)。本文使用的膜片钳放大器带宽很高,达到100MHz,因此截取信号时,使用的时间采样间隔为0.01ms(图1b),以保证预处理阶段信号不失真。(a)(b)图1:(a)所取信号在clampfit软件中的部分显示。x轴:时间,单位(s);y轴:电流值,单位(pA)。(b)从clampfit中截取的从169s开始的离散信号部分显示。左侧为横坐标时间,单位(ms),采样间隔0.01ms;右侧为纵坐标电流值,单位pA。Step2,信号读入和特征检测本文使用MATLAB编写gui模块实现信号读取和特征值检测。软件设计的大致思路为:①读入截取的txt文档中的离散信息,使用MATLAB绘图软件将其显示出来。②手动设定基线电流和检测宽度。比较每100个点间的y轴值(电压变化),当其最高值和最低值差大于设定的检测宽度值时,分辩出y轴电压下降起始点和y轴电压上升结束点,用红线标出;将红线内信号其记录为一个特征信号。③计算记录到的特征信号平均值,用红线标出。④计算特征信号的时间宽度和压降幅度,记录并保存为exl表格。软件界面和其使用步骤见图2。图2.MATLABgui界面和使用步骤。输出的exl表格如图3。图3.通过软件生成的exl表格。每一行是一个特征信号,信号“描述”列前部分记录了信号的总阻断时间和最大阻断电流,后部分记录了台阶信号两部分的阻断时间和阻断电流。该模块尚有一些不足,比如:在信号跳变比较剧烈时容易出现漏检,起始基线很难校准,上下台阶信号特征无自动标出等等,有待进一步改进。三.总结膜片钳电压信号在采集时是一个连续的交流模拟信号,不能直接被计算机处理,因此先将其分割为高密度的离散时间信号,在保证不失真的情况下,使用特定的软件进行快速处理,体现了数字信号处理灵活、准确、速度快等特点。虽然该信号的处理过程并没有涉及太多的数值计算,但在MATLAB编程过程中遇到的问题也加深了我对这门课程的理解。在文章最后,谢谢张旭老师精彩的课程和详细的ppt,谢谢课余和我耐心讨论的同学们,你们的每一份付出都是我努力学习的动力。附录.部分代码1.搜索信号主函数:functionSignalSearch(Obj,handles)%搜索信号函数lowlim=str2double(get(handles.edit_f1,'String'));gdbase=str2double(get(handles.edit_gdbase,'String'));err=str2double(get(handles.edit_err,'String'));ishand=get(handles.checkbox_hand,'Value');index=get(handles.datalist,'Value');if(index<1)returnenddata=Obj.DM.datas{index};autocut=get(handles.checkbox_autocut,'Value');[signaldatacut]=Obj.test1(data,lowlim,autocut,ishand,gdbase,err);Obj.DM.signaldatas{index}=signaldata;Obj.DM.cuts{index}=cut;return2.搜索信号主函数中调用的test1函数,用来查找信号和降噪function[signalsnum]=findsignal(data2,base,d,lowlim,start,num)%对一个数据段寻找信号的函数data=data2(:,2);c_signals=find(data<(base-d));%所有疑似信号点的位置的数组if(isempty(c_signals))signals=[];returnendlen=length(data);signals_place=find(c_signals(2:end)-c_signals(1:end-1)>1);d_signals=[[1;signals_place+1][signals_place;length(c_signals)]];%以左右两端的形式将疑似信号放入n*2数组e_signals=c_signals(d_signals);if(length(e_signals)==2)e_signals=e_signals';endf_signals=[e_signals(:,1)*2-e_signals(:,2)e_signals(:,2)*2-e_signals(:,1)];%检测电磁信号的范围:前后与信号长度相同的长度范围f_signals(f_signals<1)=1;f_signals(f_signals>len)=len;%去除无效值g_signals=[e_signals(:,1)-10e_signals(:,2)+10];%用于寻找两端的范围g_signals(g_signals<1)=1;g_signals(g_signals>len)=len;%去除无效值signals=[];i=1;while(i<=size(e_signals,1))minpoint=base-min(data(e_signals(i,1):e_signals(i,2)));bdata=data(f_signals(i,1):f_signals(i,2));maxpoint=max(bdata)-base;if(maxpoint>minpoint)%根据是否含有电磁干扰筛选e_signals(i,:)=[];f_signals(i,:)=[];g_signals(i,:)=[];elseif(g_signals(i,2)<40||g_signals(i,1)>length(data)-40)e_signals(i,:)=[];f_signals(i,:)=[];g_signals(i,:)=[];elsebddata=data(g_signals(i,1):g_signals(i,2));diffdata=[0;diff(bddata)];e_signals(i,1)=g_signals(i,1)-1+find(diffdata<=0.27*min(diffdata),1);temp=find(diffdata>=0.25*max(diffdata));e_signals(i,2)=g_signals(i,1)-1+temp(end);num=num+1;if(e_signals(i,2)<e_signals(i,1))temp=e_signals(i,2);e_signals(i,2)=e_signals(i,1);e_signals(i,1)=temp;endsignals{i}=SignalAnalysis(data2,e_signals(i,:),start,num);i=i+1;endendendend参考文献:胡广书.数字信号处理[M].北京:清华大学出版社,2003.1-3丁克俭,张海燕,胡红刚,赵红敏,关伟军,马月辉.生物大分子纳米孔分析技术
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论