AD数据采集的“数字滤波”:10个“软件滤波程序”
- 格式:docx
- 大小:19.19 KB
- 文档页数:6
8路ADC常规方案引言模拟数字转换器(ADC)是现代电子系统中常用的一个关键元件。
它将连续变化的模拟信号转换为数字信号,使得数字处理器能够读取和处理这些信号。
在很多应用中,需要将多个模拟信号转换为数字信号,这就要使用多路ADC方案。
本文将介绍一种常规的8路ADC方案。
设计方案器件选择在设计8路ADC方案时,首先需要选择适当的器件。
以下是一些常见的器件选择:1.ADC芯片:需要选择支持8路输入的ADC芯片。
常见的选择有Texas Instruments的ADS1278和Analog Devices的AD7476A。
2.电压参考源:ADC的转换结果受到参考电压的影响,因此需要选择适当的电压参考源。
3.滤波器:如果输入信号存在噪声或杂散成分,需要使用滤波器进行滤波以提高转换结果的精度。
硬件连接一旦选择了合适的器件,下一步是进行硬件连接。
以下是8路ADC方案的典型硬件连接:1.连接电压参考源:将电压参考源连接到ADC的参考输入引脚上,确保参考电压稳定且与所选ADC的参考电压要求相匹配。
2.连接模拟输入信号:将8个模拟输入信号分别连接到ADC的输入引脚上。
确保信号连接正确且没有干扰。
3.连接滤波器:如果需要使用滤波器,将滤波器与ADC的输入引脚相连。
软件编程完成硬件连接后,需要进行软件编程以实现数据的采集和处理。
以下是进行软件编程的主要步骤:1.初始化ADC芯片:使用特定的命令序列初始化ADC芯片,包括设置采样率、参考电压等参数。
2.配置GPIO:配置GPIO以使其能够接收来自ADC芯片的数据。
3.数据采集:使用适当的指令从ADC芯片中读取数据,将其存储在相应的变量中。
4.数据处理:对采集到的数据进行处理,可以进行滤波、校正、单位换算等操作。
5.数据显示:将处理后的数据显示在适当的界面上,以便用户进行观察和分析。
总结本文介绍了一种常规的8路ADC方案。
通过选择合适的器件、进行正确的硬件连接和软件编程,可以实现对8个模拟输入信号的数字化采集和处理。
第一章计算机控制系统概述习题及参考答案1.计算机控制系统的控制过程是怎样的计算机控制系统的控制过程可归纳为以下三个步骤:(1)实时数据采集:对被控量的瞬时值进行检测,并输入给计算机。
(2)实时决策:对采集到的表征被控参数的状态量进行分析,并按已定的控制规律,决定下一步的控制过程。
!(3)实时控制:根据决策,适时地对执行机构发出控制信号,完成控制任务。
2.实时、在线方式和离线方式的含义是什么(1)实时:所谓“实时”,是指信号的输入、计算和输出都是在一定时间范围内完成的,即计算机对输入信息以足够快的速度进行处理,并在一定的时间内作出反应并进行控制,超出了这个时间就会失去控制时机,控制也就失去了意义。
(2)“在线”方式:在计算机控制系统中,如果生产过程设备直接与计算机连接,生产过程直接受计算机的控制,就叫做“联机”方式或“在线”方式。
(3)“离线”方式:若生产过程设备不直接与计算机相连接,其工作不直接受计算机的控制,而是通过中间记录介质,靠人进行联系并作相应操作的方式,则叫做“脱机”方式或“离线”方式。
3.微型计算机控制系统的硬件由哪几部分组成各部分的作用是什么—由四部分组成。
图微机控制系统组成框图(1)主机:这是微型计算机控制系统的核心,通过接口它可以向系统的各个部分发出各种命令,同时对被控对象的被控参数进行实时检测及处理。
主机的主要功能是控制整个生产过程,按控制规律进行各种控制运算(如调节规律运算、最优化计算等)和操作,根据运算结果作出控制决策;对生产过程进行监督,使之处于最优工作状态;对事故进行预测和报警;编制生产技术报告,打印制表等等。
(2)输入输出通道:这是微机和生产对象之间进行信息交换的桥梁和纽带。
过程输入通道把生产对象的被控参数转换成微机可以接收的数字代码。
过程输出通道把微机输出的控制命令和数据,转换成可以对生产对象进行控制的信号。
过程输入输出通道包括模拟量输入输出通道和数字量输入输出通道。
第二章6 采样-保持器有什么作用?说明保持电容大小对数据采集系统的影响。
答:为了提高模拟量输入信号的频率范围,以适应某些随时间变化较快的信号的要求,可采用带有保持电路的采样器,即采样保持器。
保持电容对数据采集系统采样保持的精度有很大影响。
保持电容值小,则采样状态时充电时间常数小,即保持电容充电快,输出对输入信号的跟随特性好,但在保持状态时放电时间常数也小,即保持电容放电快,故保持性能差;反之,保持电容值大,保持性能好,但跟随特性差。
7 在数据采样系统中,是不是所有的输入通道都需要加采样-保持器,为什么?答:并不是所有的模拟量输入通道都需要采样保持器的,因为采样保持器是为了防止在A/D转换之前信号就发生了变化,致使A/D转换的结果出错,所以只要A/D转换的时间比信号变化的时间短就不需要。
8 采样频率的高低对数字控制系统有什么影响?举出工业控制实例加以说明?9 A/D和D/A转换器在微型计算机控制系统中有什么作用?答:答:A/D的作用主要是把传感器检测到的模拟电信号转换为数字电信号,方便用于单片机中进行处理。
D/A的作用,在单片机处理完毕的数字量,有时需要转换为模拟信号输出,D/A的作用正是用于把数字信号转换为模拟信号。
10 A/D转换器转换原理有几种?他们各有什么特点和用途?答:逐次逼近型,分辨率高,误差较低,转换速度快,应用十分广泛;双积分型:性能比较稳定,转换精度高,抗干扰能力强,电路较简单,工作速度低,多用于对转换精度要求较高,对转换速度要不高的场合,如数字电压表等检测仪器中,用的十分普遍。
并联比较型:转换速度快,精度高,但使用的比较器和触发器多,适用于速度高,精度要求不高的场合。
11 说明逐次逼近型A/D转换器的转换原理。
答:开始转换以后,时钟信号首先将寄存器的最高有效位置为1,使输出数字为100…0,这个数码被D/A转换器转换成相应的模拟电压U0,送到比较器中并与比较电压U1比较,若U0>U1,将高位的1清除;若U0<U1,将最高位保留。
1、遥测即远程测量: 应用远程通信技术进行信息传输,实现对远方运行设备的监视与控制。
遥信即远程指示;远程信号:对诸如告警情况、开关位置或阀门位置这样的状态信息的远程监视。
遥控即远程命令: 应用远程通信技术,使运行设备的状态产生变化。
遥调即远程调节: 对具有两个以上状态的运行设备进行控制的远程命令。
2、远动技术就是一门综合性的应用技术,它的基本原理包括数据传输原理、编码理论、信号转换技术原理、计算机原理等。
远动配置就是指主站与若干子站以及连接这些站的传输链路的组合体。
远动系统就是指对广阔地区的生产过程进行监视与控制的系统,它包括对必需的过程信息的采集、处理、传输与显示、执行等全部的设备与功能。
3、误码率:错误接收的码元数与传送的总码元数之比。
用Pe表示。
误比特率:错误接收的信息量与传送信息总量之比。
用Peb表示。
在远动系统中,为了正确的传送与接收信息,必须有一套关于信息传输顺序、信息格式与信息内容等的约定,这一套约定称为规约或协议。
4、当同步字在信道中受到干扰,使其中某些码元发生变位,致使收端检测不出同步字,称为漏同步。
当接收到的信息序列中,出现与同步字相同的码序列时,在对同步字检测时会把它误判为同步字,造成假同步。
收发两端发送时钟与接收时钟的相位差<∏时,数字锁相电路在工作过程中,通过相位调整,会使两者的相位差继续增加,直到≈2∏,造成两端时序错一位,这种情况称为反校。
5、事件指的就是运行设备状态的变化,如开关所处的闭合或断开状态的变化,保护所处的正常或告警状态的变化。
事件顺序记录就是指开关或继电保护动作时,按动作的时间先后顺序进行的记录。
事件分辨率指能正确区分事件发生顺序的最小时间间隔。
6、完成一次A/D转换所需的时间,称为转换时间,其倒数称为转换速率。
7、数字滤波就就是在计算机中用一定的计算方法对输入信号的量化数据进行数学处理,减少干扰在有用信号中的比重,提高信号的真实性。
死区计算就是对连续变化的模拟量规定一个较小的变化范围。
XXXXXX大学研究生实验报告课程名称:DSP技术应用综合设计名称:电量参数计算和发送学生姓名:班级学号:学科名称:2012年5月25日一、综合实验题目和要求1、实验设计要求要求1:对给定的波形信号,采用TMS320F28335的浮点功能计算该信号的以下时域参数:信号的周期T(频率f也需要计算),信号的均方根大小V rms、平均值V avg (即直流量)、峰峰值V pp。
其中,均方根V rms的计算公式(数字量的离散公式)如下:rmsV=式中,N为采样点数,u(i)为采样序列中的第i个采样点。
要求2:所设计的软件需要计算采样的波形周期个数,并控制采样点数大于1个波形周期,小于3个波形周期大小。
要求3:对采样的数据通过串口发送至PC界面。
2、实验目的主要考核学生对TMS320F28335浮点处理器、A/D模块、SCI模块和信号时域分析等知识的掌握。
产生的波形可选择正弦波,也可以是其它任意波形。
如果波形中添加了随机噪声,则建议采用软件设计中加入数字滤波算法,否则可能计算中产生较大的误差。
实验所需的频率不能太大,(建议范围:10Hz~100kHz),采样点建议在256点左右(自己任意设定也可,不少于32点)。
二、硬件框图图1 系统硬件框图图1 给出了该综合实验的硬件框图,首先通过小键盘设置波形的参数,包括频率、幅值以及波形等。
然后通过信号发生器产生模拟信号,由DSP28335的AD通道6进行采样处理。
DSP与PC机之间通过串口进行通信,由DSP28335的SCIb通道处理。
ADC模块有16个转换通道,可配置成两个独立的8通道转换模块,分别对应于管理器A和B,根据用户需求,两个独立的8通道转换模块可以级联成一个8通道模块,在ADC模块中尽管可以多通道输入和有两个排序器,但只有一个A/D转换器可以。
两个8通道模块可以自动对一系列转换进行排序,而且每个模块都可以通过多路复用开关选择任何一个通道。
在级联模式下,自动排序器将作为一个单一的8通道排序器。
第二阶段练习题考试科目:《机电一体化系统设计》第三章至第四章(总分100分)学习中心(教学点)批次:层次:专业:学号:身份证号:姓名:得分:一、单项选择题(本题共10小题,每小题1分,共10分。
)1、直线光栅传感器属于()数字信号传感器。
A、增量码B、绝对码C、BCD码D、格雷码2、在控制感性负载器件的直流功率接口中,为了保护功率管需要接入保护()。
A、电感B、电阻C、二极管D、电容3、为了消除A/D转换期间由于信号变化产生误差,需要采用()电路。
A、放大B、采样保持C、模拟开关D、分压4、晶体管作为无触点开关,其导通电阻和开路电阻,依次应该()。
A、前大后小B、前大后大C、前小后小D、前小后大5、设计键盘程序时要考虑()。
A、消抖功能和延时功能B、单次响应和延时功能C、单次响应功能和消抖功能D、延时功能和批处理功能6、过零比较器常用于对信号的()。
A、电平转换B、整形C、放大D、阻抗匹配7、有源滤波器比起无源滤波器,带负载能力依次()。
A、前强后弱B、前弱后强C、前弱后弱D、前强后强8、按信息传递方向分有两种接口,它们是()。
A、机械接口和物理接口B、人机接口和机电接口C、无源接口和有源接口D、输入接口和输出接口9、A/D转换器的转换速度依据对信号的()频率确定。
A、传送B、变换C、采样D、放大10、在计测系统中如果需要滤除信号中的高频干扰应该使用()。
A、低通滤波器B、比较电路C、微分电路D、高通滤波器二、多项选择题(本题共5小题,每小题2分,共10分。
多选、少选、错选均不得分。
)1、在机电接口的功率接口中常用的驱动元件有()。
A、功率晶体管B、晶闸管C、功率场效应管D、固态继电器2、以下哪些是数字滤波算法()。
A、算术平均滤波B、RC高通滤波C、RC低通滤波D、滑动平均滤波3、传感器的非线性补偿采用的软件方式包括()。
A、定时法B、计数法C、计算法D、查表法4、光电编码盘在系统中一般用于测量()。
10种简单的数字滤波C语言源程序算法(2009-11-09 10:25:08)假定从8位AD中读取数据(如果是更高位的AD可定义数据类型为int),子程序为get_ad();1、限幅滤波法(又称程序判断滤波法)A、方法:根据经验判断,确定两次采样允许的最大偏差值(设为A)每次检测到新值时判断:如果本次值与上次值之差<=A,则本次值有效如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值B、优点:能有效克服因偶然因素引起的脉冲干扰C、缺点无法抑制那种周期性的干扰平滑度差2、中位值滤波法A、方法:连续采样N次(N取奇数)把N次采样值按大小排列取中间值为本次有效值B、优点:能有效克服因偶然因素引起的波动干扰对温度、液位的变化缓慢的被测参数有良好的滤波效果C、缺点:对流量、速度等快速变化的参数不宜3、算术平均滤波法A、方法:连续取N个采样值进行算术平均运算N值较大时:信号平滑度较高,但灵敏度较低N值较小时:信号平滑度较低,但灵敏度较高N值的选取:一般流量,N=12;压力:N=4B、优点:适用于对一般具有随机干扰的信号进行滤波这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动C、缺点:对于测量速度较慢或要求数据计算速度较快的实时控制不适用比较浪费RAM4、递推平均滤波法(又称滑动平均滤波法)A、方法:把连续取N个采样值看成一个队列队列的长度固定为N每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则) 把队列中的N个数据进行算术平均运算,就可获得新的滤波结果N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4 B、优点:对周期性干扰有良好的抑制作用,平滑度高适用于高频振荡的系统C、缺点:灵敏度低对偶然出现的脉冲性干扰的抑制作用较差不易消除由于脉冲干扰所引起的采样值偏差不适用于脉冲干扰比较严重的场合比较浪费RAM5、中位值平均滤波法(又称防脉冲干扰平均滤波法)A、方法:相当于“中位值滤波法”+“算术平均滤波法”连续采样N个数据,去掉一个最大值和一个最小值然后计算N-2个数据的算术平均值N值的选取:3~14B、优点:融合了两种滤波法的优点对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差C、缺点:测量速度较慢,和算术平均滤波法一样比较浪费RAM6、限幅平均滤波法A、方法:相当于“限幅滤波法”+“递推平均滤波法”每次采样到的新数据先进行限幅处理,再送入队列进行递推平均滤波处理B、优点:融合了两种滤波法的优点对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差C、缺点:比较浪费RAM7、一阶滞后滤波法A、方法:取a=0~1本次滤波结果=(1-a)*本次采样值+a*上次滤波结果B、优点:对周期性干扰具有良好的抑制作用适用于波动频率较高的场合C、缺点:相位滞后,灵敏度低滞后程度取决于a值大小不能消除滤波频率高于采样频率的1/2的干扰信号8、加权递推平均滤波法A、方法:是对递推平均滤波法的改进,即不同时刻的数据加以不同的权通常是,越接近现时刻的数据,权取得越大。
AD数据采集的“数字滤波”:10个“软
件滤波程序”
在AD采集中经常要用到数字滤波,而不同情况下又有不同的滤波需求,下面是10种经典的软件滤波方法的程序和优缺点分析:
1、限幅滤波法(又称程序判断滤波法)
2、中位值滤波法
3、算术平均滤波法
4、递推平均滤波法(又称滑动平均滤波法)
5、中位值平均滤波法(又称防脉冲干扰平均滤波法)
6、限幅平均滤波法
7、一阶滞后滤波法
8、加权递推平均滤波法
9、消抖滤波法
10、限幅消抖滤波法
1、限副滤波
A、方法:根据经验判断,确定两次采样允许的最大偏差值(设为A),每次检测到新值时判断:
如果本次值与上次值之差;A,则本次值无效,放弃本次值,用上次值代替本次值
B、优点:能有效克服因偶然因素引起的脉冲干扰
C、缺点:无法抑制那种周期性的干扰,平滑度差
程序:
/* A值可根据实际情况调整,value为有效值,new_value为当前采样值,滤波程序返回有效的实际值*/
#define A 10
char value;
char filter()
{
char new_value;
new_value = get_ad();
if ( ( new_value - value >; A ) || ( value - new_value >; A )
return value;
return new_value;
}
2、中位值滤波法
A、方法:连续采样N次(N取奇数),把N次采样值按大小排列,取中间值为本次有效值
B、优点:能有效克服因偶然因素引起的波动干扰,对温度、液位的变化缓慢的被测参数有良好的滤波效果
C、缺点:对流量、速度等快速变化的参数不宜
程序:
/* N值可根据实际情况调整
排序采用冒泡法*/
#define N 11
char filter()
{
char value_buf[N];
char count,i,j,temp;
for ( count=0;count;value_buf[i+1] )
{
temp = value_buf[i];
value_buf[i] = value_buf[i+1];
value_buf[i+1] = temp;
}
}
}
return value_buf[(N-1)/2];
}
3、算术平均滤波法
A、方法:连续取N个采样值进行算术平均运算
N值较大时:信号平滑度较高,但灵敏度较低
N值较小时:信号平滑度较低,但灵敏度较高
N值的选取:一般流量,N=12;压力:N=4
B、优点:适用于对一般具有随机干扰的信号进行滤波这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动
C、缺点:对于测量速度较慢或要求数据计算速度较快的实时控制不适用比较浪费RAM
程序:
#define N 12
char filter()
{
int sum = 0;
for ( count=0;count;value_buf[i+1] )
{
temp = value_buf[i];
value_buf[i] = value_buf[i+1];
value_buf[i+1] = temp;
}
}
}
for(count=1;count;当前有效值,则计数器+1,并判断计数器是否>;=上限N(溢出)
如果计数器溢出,则将本次值替换当前有效值,并清计数器
B、优点:对于变化缓慢的被测参数有较好的滤波效果,可避免在临界值附近控制器的反复开/关跳动或显示器上数值抖动
C、缺点:对于快速变化的参数不宜,如果在计数器溢出的那一次采样到的值恰好是干扰值,则会将干扰值当作有效值导入系统
程序:
#define N 12
char filter()
{
char count=0;
char new_value;
new_value = get_ad();
while (value !=new_value);
{
count++;
if (count>;=N) return new_value;
delay();
new_value = get_ad();
}
return value;
}
10、限幅消抖滤波法
A、方法:相当于“限幅滤波法”+“消抖滤波法”,先限幅,后消抖
B、优点:继承了“限幅”和“消抖
”的优点,改进了“消抖滤波法”中的某些缺陷,避免将干扰值导入系统
C、缺点:对于快速变化的参数不宜
程序略参考子程序1、9。