📄 10种ad采样的软件滤波方法.htm
字号:
<TBODY>
<TR>
<TD class=region id=FullViewNav>
<TABLE class="ContainerLeftNav fullPageOuter fixedTable "
style="WIDTH: 100%; HEIGHT: 100%" cellSpacing=0 cellPadding=0>
<TBODY>
<TR>
<TD style="VERTICAL-ALIGN: top; WIDTH: 100%; HEIGHT: 100%">
<DIV class=LeftNav>
<DIV class=sppPartTitle>
<DIV class=partHeader>
<DIV class=ContainerHeader>
<TABLE style="TABLE-LAYOUT: fixed; WIDTH: 100%" cellSpacing=0
cellPadding=0>
<TBODY>
<TR>
<TD width="100%">
<DIV class="ellipse partDetail" style="WHITE-SPACE: nowrap">
<DIV class=Title2>
<H2 class="H2WithoutDefaultSpacing LineHeightStandard"
style="FONT-SIZE: 100%">日志</H2></DIV></DIV></TD></TR></TBODY></TABLE></DIV></DIV></DIV>
<DIV>
<SCRIPT type=text/javascript>
/*<![CDATA[*/
function BlogLeftNavTypeChange()
{
var v = event.srcElement.value;
var url = document.URL;
// Remove the hash and stuff that follows
if (url.indexOf("#") >= 0)
{ url = url.substr(0, url.indexOf("#"));
}
url = url.replace(/&fl=[^&]*/, "");
if (url.indexOf("?") == -1)
url += "?fl=" + v;
else
url += "&fl=" + v;
try
{ document.location = url;
} catch (ex) {}
}
/* ]]> */
</SCRIPT>
<LABEL style="DISPLAY: none" for=sortby>选择如何对日志分组:</LABEL><SELECT
id=sortby onchange=BlogLeftNavTypeChange()> <OPTION value=a
selected>按日期列出</OPTION> <OPTION value=cat>按类别列出</OPTION></SELECT>
<UL class=List>
<LI><A class=" " id=LN_blogView
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart"><IMG
style="FLOAT: left" alt=""
src="10种AD采样的软件滤波方法.files/blogdetails.gif">
<DIV>日志</DIV></A>
<LI><A class=" " id=LN_blogSumm
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=summary&_c=BlogPart"><IMG
style="FLOAT: left" alt=""
src="10种AD采样的软件滤波方法.files/blogsummary.gif">
<DIV>摘要</DIV></A>
<LI><A class="" id=LN_200710 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d10%26ayear%3d2007">
<DIV class="">2007年10月</DIV></A>
<LI><A class="" id=LN_20079 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d9%26ayear%3d2007">
<DIV class="">2007年9月</DIV></A>
<LI><A class="" id=LN_20078 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d8%26ayear%3d2007">
<DIV class="">2007年8月</DIV></A>
<LI><A class="" id=LN_20077 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d7%26ayear%3d2007">
<DIV class="">2007年7月</DIV></A>
<LI><A class="" id=LN_20076 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d6%26ayear%3d2007">
<DIV class="">2007年6月</DIV></A>
<LI><A class="" id=LN_20075 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d5%26ayear%3d2007">
<DIV class="">2007年5月</DIV></A>
<LI><A class="" id=LN_20074 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d4%26ayear%3d2007">
<DIV class="">2007年4月</DIV></A>
<LI><A class="" id=LN_20073 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d3%26ayear%3d2007">
<DIV class="">2007年3月</DIV></A>
<LI><A class="" id=LN_20072 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d2%26ayear%3d2007">
<DIV class="">2007年2月</DIV></A>
<LI><A class="" id=LN_20071 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d1%26ayear%3d2007">
<DIV class="">2007年1月</DIV></A>
<LI><A class="" id=LN_200612 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d12%26ayear%3d2006">
<DIV class="">2006年12月</DIV></A>
<LI><A class="" id=LN_200611 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d11%26ayear%3d2006">
<DIV class="">2006年11月</DIV></A>
<LI><A class="" id=LN_200610 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d10%26ayear%3d2006">
<DIV class="">2006年10月</DIV></A>
<LI><A class="" id=LN_20069 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d9%26ayear%3d2006">
<DIV class="">2006年9月</DIV></A>
<LI><A class="" id=LN_20068 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d8%26ayear%3d2006">
<DIV class="">2006年8月</DIV></A>
<LI><A class="" id=LN_20067 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d7%26ayear%3d2006">
<DIV class="">2006年7月</DIV></A>
<LI><A class="" id=LN_20066 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d6%26ayear%3d2006">
<DIV class="">2006年6月</DIV></A>
<LI><A class="" id=LN_20065 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d5%26ayear%3d2006">
<DIV class="">2006年5月</DIV></A>
<LI><A class="" id=LN_20064 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d4%26ayear%3d2006">
<DIV class="">2006年4月</DIV></A>
<LI><A class="" id=LN_20063 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d3%26ayear%3d2006">
<DIV class="">2006年3月</DIV></A>
<LI><A class="" id=LN_20062 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d2%26ayear%3d2006">
<DIV class="">2006年2月</DIV></A>
<LI><A class="" id=LN_20061 title=单击以查看在此期间发布的所有日志。
href="http://heshang640.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&_c=BlogPart&partqs=amonth%3d1%26ayear%3d2006">
<DIV
class="">2006年1月</DIV></A></LI></UL></DIV></DIV></TD></TR></TBODY></TABLE></TD>
<TD class=region id=MainFocus>
<DIV class="ContainerFullView fullPageOuter SPTransparency">
<DIV class=spAToolbar style="WIDTH: 100%">
<TABLE class=spAToolbarTable style="WIDTH: 100%" cellSpacing=0>
<TBODY>
<TR>
<TD>
<UL
id=ctl00_MainContentPlaceholder_ctl00_Toolbar_Internal_LeftToolbarList></UL></TD>
<TD align=right>
<UL
id=ctl00_MainContentPlaceholder_ctl00_Toolbar_Internal_RightToolbarList>
<LI class=sppLast><A title=转到:固态继电器及在应用中一些问题的探讨
href="http://heshang640.spaces.live.com/blog/cns!E244BCA5BE5494FC!355.entry?_c=BlogPart"><IMG
class=HoverButton
style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
src="10种AD采样的软件滤波方法.files/backnext_~Left~_rest_~ContainerHeaderTextLuminance~.gif"
hb:hoversrc="http://shared.live.com/4FK9aqzvrfngWDMu-WEagzq7HY1Jj11OWsHDCtP2mxTbrKmJ0vLcX7-nbLSapZI-LmV8SOd-TOm8DzR42UIICP930R7VT9Mo/AGI_UK_circuit/12.1.1347/hig/img/glyph/backnext_~Left~_hover_~ContainerHeaderTextLuminance~.gif"></A><A
title=转到:自制交流自动稳压器
href="http://heshang640.spaces.live.com/blog/cns!E244BCA5BE5494FC!365.entry?_c=BlogPart"><IMG
class=HoverButton
style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
src="10种AD采样的软件滤波方法.files/backnext_~Right~_rest_~ContainerHeaderTextLuminance~.gif"
hb:hoversrc="http://shared.live.com/4FK9aqzvrfngWDMu-WEagzq7HY1Jj11OWsHDCtP2mxTbrKmJ0vLcX7-nbLSapZI-LmV8SOd-TOm8DzR42UIICP930R7VT9Mo/AGI_UK_circuit/12.1.1347/hig/img/glyph/backnext_~Right~_hover_~ContainerHeaderTextLuminance~.gif"></A></LI></UL></TD></TR></TBODY></TABLE></DIV>
<DIV class=ContainerPadding><SPAN
id=ctl00_MainContentPlaceholder_ctl00_ctl00_lblEntry>
<DIV class="fixedTable bvEntry" id=entrycns!E244BCA5BE5494FC!364 bv:cat=""
bv:ca="true" bv:cns="cns!E244BCA5BE5494FC!364">
<DIV id=LastMDatecns!E244BCA5BE5494FC!364>3月1日</DIV>
<H4 class=TextColor1 id=subjcns!E244BCA5BE5494FC!364
style="MARGIN-BOTTOM: 0px">10种AD采样的软件滤波方法</H4>
<DIV class=bvMsg id=msgcns!E244BCA5BE5494FC!364>
<DIV><FONT face=宋体 size=3>1、限幅滤波法(又称程序判断滤波法</FONT><BR><FONT face=宋体
size=3> A、方法:<BR> 根据经验判断,确定两次采样允许的最大偏差值(设为A)<BR> 每次检测到新值时判断:<BR> 如果本次值与上次值之差<=A,则本次值有效<BR> 如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值<BR> B、优点:<BR> 能有效克服因偶然因素引起的脉冲干扰<BR> C、缺点<BR> 无法抑制那种周期性的干扰<BR> 平滑度差 <BR>2、中位值滤波法<BR> A、方法:<BR> 连续采样N次(N取奇数)<BR> 把N次采样值按大小排列<BR> 取中间值为本次有效值<BR> B、优点:<BR> 能有效克服因偶然因素引起的波动干扰<BR> 对温度、液位的变化缓慢的被测参数有良好的滤波效果<BR> C、缺点:<BR> 对流量、速度等快速变化的参数不宜<BR>3、算术平均滤波法<BR> A、方法:<BR> 连续取N个采样值进行算术平均运算<BR> N值较大时:信号平滑度较高,但灵敏度较低<BR> N值较小时:信号平滑度较低,但灵敏度较高<BR> N值的选取:一般流量,N=12;压力:N=4<BR> B、优点:<BR> 适用于对一般具有随机干扰的信号进行滤波<BR> 这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动<BR> C、缺点:<BR> 对于测量速度较慢或要求数据计算速度较快的实时控制不适用<BR> 比较浪费RAM <BR>4、递推平均滤波法(又称滑动平均滤波法)<BR> A、方法:<BR> 把连续取N个采样值看成一个队列<BR> 队列的长度固定为N<BR> 每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则)<BR> 把队列中的N个数据进行算术平均运算,就可获得新的滤波结果<BR> N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4<BR> B、优点:<BR> 对周期性干扰有良好的抑制作用,平滑度高<BR> 适用于高频振荡的系统 <BR> C、缺点:<BR> 灵敏度低<BR> 对偶然出现的脉冲性干扰的抑制作用较差<BR> 不易消除由于脉冲干扰所引起的采样值偏差<BR> 不适用于脉冲干扰比较严重的场合<BR> 比较浪费RAM <BR>5、中位值平均滤波法(又称防脉冲干扰平均滤波法)<BR> A、方法:<BR> 相当于“中位值滤波法”+“算术平均滤波法”<BR> 连续采样N个数据,去掉一个最大值和一个最小值<BR> 然后计算N-2个数据的算术平均值<BR> N值的选取:3~14<BR> B、优点:<BR> 融合了两种滤波法的优点<BR> 对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差<BR> C、缺点:<BR> 测量速度较慢,和算术平均滤波法一样<BR> 比较浪费RAM<BR>6、限幅平均滤波法<BR> A、方法:<BR> 相当于“限幅滤波法”+“递推平均滤波法”<BR> 每次采样到的新数据先进行限幅处理,<BR> 再送入队列进行递推平均滤波处理<BR> B、优点:<BR> 融合了两种滤波法的优点<BR> 对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差<BR> C、缺点:<BR> 比较浪费RAM<BR>7、一阶滞后滤波法<BR> A、方法:<BR> 取a=0~1<BR> 本次滤波结果=(1-a)*本次采样值+a*上次滤波结果<BR> B、优点:<BR> 对周期性干扰具有良好的抑制作用<BR> 适用于波动频率较高的场合<BR> C、缺点:<BR> 相位滞后,灵敏度低<BR> 滞后程度取决于a值大小<BR> 不能消除滤波频率高于采样频率的1/2的干扰信号<BR> 8、加权递推平均滤波法<BR> A、方法:<BR> 是对递推平均滤波法的改进,即不同时刻的数据加以不同的权<BR> 通常是,越接近现时刻的数据,权取得越大。<BR> 给予新采样值的权系数越大,则灵敏度越高,但信号平滑度越低<BR> B、优点:<BR> 适用于有较大纯滞后时间常数的对象<BR> 和采样周期较短的系统<BR> C、缺点:<BR> 对于纯滞后时间常数较小,采样周期较长,变化缓慢的信号<BR> 不能迅速反应系统当前所受干扰的严重程度,滤波效果差<BR>9、消抖滤波法<BR> A、方法:<BR> 设置一个滤波计数器<BR> 将每次采样值与当前有效值比较:<BR> 如果采样值=当前有效值,则计数器清零<BR> 如果采样值<>当前有效值,则计数器+1,并判断计数器是否>=上限N(溢出)<BR> 如果计数器溢出,则将本次值替换当前有效值,并清计数器<BR> B、优点:<BR> 对于变化缓慢的被测参数有较好的滤波效果,<BR> 可避免在临界值附近控制器的反复开/关跳动或显示器上数值抖动<BR> C、缺点:<BR> 对于快速变化的参数不宜<BR> 如果在计数器溢出的那一次采样到的值恰好是干扰值,则会将干扰值当作有效值导入系统<BR>10、限幅消抖滤波法<BR> A、方法:<BR> 相当于“限幅滤波法”+“消抖滤波法”<BR> 先限幅,后消抖<BR> B、优点:<BR> 继承了“限幅”和“消抖”的优点<BR> 改进了“消抖滤波法”中的某些缺陷,避免将干扰值导入系统<BR> C、缺点:<BR> 对于快速变化的参数不宜</FONT><BR></DIV></DIV>
<TABLE cellSpacing=0 border=0>
<TBODY></TBODY></TABLE>
<DIV class=footerLinks><NOBR>14:44</NOBR> | <NOBR><A
id=blogAddComment0 title=单击为此日志添加评论。
href="http://heshang640.spaces.live.com/blog/cns!E244BCA5BE5494FC!364.entry#post"
bvItemType="post">添加评论</A></NOBR> | <NOBR><A id=blogSendMessage0
title=给作者发送消息
href="http://spaces.live.com/api.aspx?wx_action=sendMessage&wxp_toCid=-2142380102672673540&wx_ru=http%3a%2f%2fheshang640.spaces.live.com%2fblog%2fcns!E244BCA5BE5494FC!364.entry&wxp_subject=%e7%ad%94%e5%a4%8d%ef%bc%9a%e6%82%a8%e7%9a%84%e6%97%a5%e5%bf%97%e2%80%9c10%e7%a7%8dAD%e9%87%87%e6%a0%b7%e7%9a%84%e8%bd%af%e4%bb%b6%e6%bb%a4%e6%b3%a2%e6%96%b9%e6%b3%95%e2%80%9d&wxp_body=%3cDIV%3e%3cBR+%2f%3e%3cBR+%2f%3e%3cHR%3e%e6%9f%a5%e7%9c%8b%e6%97%a5%e5%bf%97%ef%bc%9a%3cA+href%3d%22http%26%2358%3b%26%2347%3b%26%2347%3bheshang640.spaces.live.com%26%2347%3bblog%26%2347%3bcns%26%2333%3bE244BCA5BE5494FC%26%2333%3b364.entry%22%3ehttp%26%2358%3b%26%2347%3b%26%2347%3bheshang640.spaces.live.com%26%2347%3bblog%26%2347%3bcns%26%2333%3bE244BCA5BE5494FC%26%2333%3b364.entry%3c%2fA%3e%3c%2fDIV%3e"
bvItemType="">发送消息</A></NOBR> | <NOBR><A id=blogTrackbacks0
title=单击以显示此日志的引用通告。
href="http://heshang640.spaces.live.com/blog/cns!E244BCA5BE5494FC!364.entry#trackback"
bvItemType="trackback">引用通告 (0)</A></NOBR> | <NOBR><A id=blogThis0
title=将此写入您的共享空间日志。 href="javascript:BlogIt('cns!E244BCA5BE5494FC!364');"
bvItemType="">写入日志</A></NOBR></DIV>
<DIV class=footer></DIV></DIV></SPAN>
<SCRIPT type=text/javascript>
/*<![CDATA[*/
var g_spLastMTime = "2007/4/3 4:56:04zh-CN2007-08-23_15.41";
if (Spaces.LoadMonitor)
{ Spaces.LoadMonitor.RegisterComponent("BlogPermalink", "sp_pct_blogpermalink");
}
/* ]]> */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -