




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
皖西学院皖 西 学 院 课程设计报告书 系 别 : 机电系 专 业 : 电气技术与自动化 学 生 姓 名 : 孙星月 学号: 2008010782 课程设计题目:防脉冲干扰移动平均值法数字滤波器算法及其程序设计 起 迄 日 期 : 6月12日 6月25日 课程设计地点: 计算机房 指 导 教 师 : 杜成涛 设计任务完成日期: 2011年6月23日 皖西学院课程设计任务2010-2011学年第2学期专业电气工程及其自动化班级0802课程名称微型计算机原理与接口技术课程类别必修设计时间2011年6月13日2011年6月26日一、课程题目: 防脉冲干扰移动平均值法数字滤波器算法及其程序设计 二、课程设计目的:微机应用课程设计电气工程及其制动化专业本科生重要的实践环节,在学习了与修课程的基础上,综合运用各种所学的软件,通过学生独立进行某一课题的设计和调试,理解和掌握相关软件的使用方法,运用软件的理论和方法,初步掌握汇编程序以及其他使用软件的设计方法和步骤,培养独立思考,深入研究,分析问题,解决问题的能力。 熟悉所采用汇编语言基础知识,基本编程方法和技巧,设计出课题所要求的算法并编程实现。3、 设计任务概述:1.熟悉设计任务,查找资料熟悉相关设计的方法 2.选择最佳的设计方案 3.程序编写及调试 4.撰写设计报告,调试报告,设计心得体会四、设计计划与时间安排:防脉冲干扰移动平均值法数字滤波器算法及其程序设计主要内容包括:理论设计、调试或仿真、撰写设计报告等。其中理论设计又包括选择总体方案、软件系统设、计算参数等;软件设计包括模块化层次结构图,程序流程图。程序设计是课程设计的关键环节,通过调试进一步完善程序设计,使之达到课题所要求的指标。课程设计的最后要求是写出设计总结报告,把理论设计内容,调试的过程及性能指标的测试结果进行全面的总结,把实践内容上升到理论高度。13目 录一、课程任务2二、摘要4三、算法设计4四、软件编程5五、程序调试11六、设计心得12七、参考文献14防脉冲干扰移动平均值法数字滤波器算法及其程序设计摘 要数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。数据采集技术广泛引用在各个领域。比如摄像头,麦克风,都是数据采集工具。被采集数据是已被转换为电讯号的各种物理量,如温度、水位、风速、压力等,可以是模拟量,也可以是数字量。在互联网行业快速发展的今天,数据采集已经被广泛应用于互联网及分布式领域,数据采集领域已经发生了重要的变化。而在数据采集中存在着各种干扰。滤除干扰的方法有很多种,既有数字滤波器,也有模拟滤波器。我们针对数据采集系统中经常出现的随机干扰,这里我们采用了C语言来设计并开发数字滤波系统。 关键词:C语言、数字滤波。 算法设计 在许多的数据采集系统中,现场的强电设备较多,不可避免地会产生尖脉冲干扰,这种干扰一般持续时间短,峰值大,对这样的数据进行数字滤波处理时,仅仅采用算术平均或移动平均滤波时,尽管对脉冲干扰进行了1/n的处理,但,其剩余值仍然较大。这种场合最好的策略是:将被认为受干扰的信号数据去掉,这就是防脉冲干扰平均值滤波法的原理。 算术平均滤波法适用于对一般的具有随机干扰的信号进行滤波。这种信号的特点是信号本身在某一数值范围附近上下波动,如测量流量、液位时经常遇到这种情况。算术平均滤波法是要按输入的N 个采样数据,寻找这样一个Y,使得Y 与各个采样值之间的偏差的平方和最小。具体实现此算法的程序如下: #define N 12 char filter()int count;int sum=0;for(count=0;countk,用移位的方法,可以加快处理速度。 上述算法显然还存在一个不足之处,就是每采集一个数据就要进行一次排序,这样会大量占用系统宝贵的时间。这可以通过存储当前数据中的最大值和最小值来改进。具体做法是:系统中用两个变量来存储当前n个数据的最大值和最小值在这个数组中的偏移量(也就是数组下标,存储数组下标而直接不存储数据本身是因为:在一般的系统中,n不会超无符号短整形的表示范围,因此用一个char形变量就可以存储而如果直接存储数据本身,则许多情况下要用int形变量,甚至更长的类型)。这样只要在当前输入的数据将要覆盖的数据正好是当前的最大值或最小值时才在下个组中查找最大值或最小值,而其他情况下则只要将输入的数据与最大值和最小值比较就可以修改下最大值和最小值了,而且不用进行数据排序。这个算法很简单,下面是对应的C语言代码实现,可以很方便的应用的具体的51单片机,或其他处理器上,只须做少量的修改。 软件编程1、 软件设计步骤2、程序流程图 2、软件程序 #include#define dtype unsigned int /采集数据的数据类型#define LEN 6 /移动算术平均的个数+2=SHIFT=8,因此用指针记录而不是直接记录最大值和最值dtype szlb(dtype _data)/*/* 在调用此子程序前必须对*/* pdata,datas数组, */* pmax,pmin进行初始化 */*/ char i; dtype average=0; /清零,用来计算平均值 pdata=(pdata+1)%LEN; /指针下标在到LEN-1上滑动 dataspdata=_data; /采样所得数据存入数据表中for(i=0;idataspmax) pmax=pdata; /得到最大值的指针 else if(_datadataspmin) pmin=pdata; /得到最小值的指针 if(pdata=pmax) /如果当前输入值将存入当前最大值的位置时 /由以上方法将不可行,必须从其他位置中查找极值 for(i=0;idataspmax) pmax=i; else if(pdata=pmin) /如果当前输入值将存入当前最小值的位置时 /由以上方法将不可行,必须从其他位置中查找极值 for(i=0;iLEN;i+) if(datasiSHIFT); /求算术平均值void main() char i; dtype _data; pdata=0; pmax=0; pmin=0; for(i=0;iLEN;i+) datasi=0; printf(数据: 最大 最小n); while(1) scanf(%u,&_data); szlb(_data); for(i=0;iLEN;i+) printf(%-3u ,datasi); printf( %-3u %-3u,dataspmax,dataspmin); printf(n); 程序调试设计心得这次整个课程设计通过了软件调试。我想这对于自己以后的学习和工作都会有很大的帮助。在这次设计中遇到了很多实际性的问题,在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理解,而且要不断地更正以前的错误思维。一切问题必须要靠自己一点一滴的解决,而在解决的过程当中你会发现自己在飞速的提升。对于防脉冲干扰移动平均值法数字滤波器算法及其程序设计,其程序不是很难的,主要是解决程序设计中的问题,而程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新能力,它才是一个设计的灵魂所在。因此在整个设计过程中大部分时间是用在程序上面的。很多子程序是可以借鉴书本上的,但怎样衔接各个子程序才是关键的问题所在,这需要对系统的结构很熟悉。因此可以说系统的设计是软件和硬件的结合,二者是密不可分的。通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。其次,这次课程设计让我充分认识到要学会借鉴别人的思想的重要性,很多时候你做的东西别人也许已经做出来了,我们可以直接拿来用。虽然这不好,又偷懒的嫌疑,但是这却加快了效率,而且,以后再研究中也要实时关注新的东西,如果你花了很多时间和精力做的东西,已经早有人做了,这就很得不偿失了。俗话说“三人行必有我师”嘛,更何况是这么多人的思想,这也是一种学习的方法。另外在课程设计的过程中,当我们碰到不明白的问题时,指导老师总是耐心的讲解,给我们的设计以极大的帮助,使我们获益匪浅。因此非常感谢老师的教导。通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。我觉得作为一名电气工程专业的学生,这次课程设计是很有意义的。更重要的是如何把自己平时所学的东西应用到实际中。虽然自己对于这门课懂的并不多,很多基础的东西都还没有很好的掌握,觉得很难,也没有很有效的办法通过自身去理解,但是靠着这一个多礼拜的“学习”,在小组同学的帮助和讲解下,渐渐对这门课逐渐产生了些许的兴趣,自己开始主动学习并逐步从基础慢慢开始弄懂它。我认为这个收获应该说是相当大的。一开始我们从参考书上找来了课题,但是毕竟是参考书,做到后来发现很多程序都是不完整的,这让我伤透了脑筋。程序接线什么的都弄好了,调试也没有问题,可是就是无法达到预期想要的结果。参考书毕竟只是一个参考,设计这种东西最后还是要靠自己动脑筋。然后我从平时做的实验老师上课的举例书本上的知识以及老师的辅导和其他同学的帮助下终于完成了。虽然内容并不是很复杂,但是我们觉得设计的过程相当重要,学到了很多,收获了很多。我觉得课程设计反映的是一个从理论到实际应用的过程,但是更远一点可以联系到以后毕业之后从学校转到踏上社会的一个过程。小组人员的配合相处,以及自身的动脑和努力,都是以后工作中需要的。所以我认为这次的课程设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 车位销售赠品合同协议
- 辅导机构教师合同协议
- 配合过户补偿协议书范本
- 《课堂的智慧交锋》课件
- 五四青年团日活动策划方案
- 物业代缴协议书
- 软件无偿借用合同协议
- 道路黑化工程合同协议
- 农村生态环境保护与农业发展协同协议
- 车队用工协议书范本
- 滤料采购合同范本
- 发电厂电气部分智慧树知到期末考试答案章节答案2024年东北电力大学
- 2024年株洲国创轨道科技有限公司招聘笔试冲刺题(带答案解析)
- AI+蛋白质行业研究报告 2024
- 利昕报废汽车回收拆解有限公司报废汽车回收拆解建设项目环评可研资料环境影响
- 农产品加工企业管理培训
- 校车驾驶员交通安全培训
- 飞机维修员入门教程
- 超声引导下神经阻滞下肢篇
- 2024届高三英语二轮专题复习:关于水中或雨中脱困脱险的读后续写练习写作素材
- 《如何处理人际关系》课件
评论
0/150
提交评论