- 收藏
- 加入书签
嵌入式系统设备硬件与软件抗干扰的措施研究
摘要:在嵌入式系统的应用中,抗干扰性能是确保设备安全可靠运行的关键。文章就嵌入式系统硬件、软件中的抗干扰问题进行了分析,提出了解决干扰问题的技术措施。
关键词:嵌入式系统;设备;抗干扰;措施
随着计算机技术、电子信息技术的发展,嵌入式系统设备的应用非常广泛,可以说除了桌面计算机和服务器外,所有的计算设备都属于嵌入式系统设备。嵌入式系统设备以应用为中心,以计算机技术为基础,因为通常被应用在工业环境下,所以对使用环境、抗干扰性有着更严格的标准。以下笔者结合自身工作经验和参考文献,针对嵌入式系统设备硬件和软件的干扰因素及抗干扰技术做出分析和探讨,供大家借鉴和参考。
1.系统抗干扰硬件措施
1.1电源抗干扰
嵌入式电源系统是集成在嵌入式系统中,为嵌入式设备提供直流基础电能的电源设备。在嵌入式系统中,很重要的干扰就是来自电源。电源是系统的可靠性起着至关重要的作用。在选用电源时应考虑设备在起动、停止的瞬间,产生的尖锋电流对电源容量的影响,可以采取以下措施:
第一,系统可采用直流或交流稳压电源,防止电源的欠压和过压;
第二,用压敏电阻抑制尖峰、浪涌;
第三,配置去耦电容抑制负载变化产生的噪声。
第四,采用高通滤波器来避免高次谐波被引入导系统中;
第五,对于ADC、DAC等器件,采用精准电源芯片供电,并且用独立的电源为模拟电路和数字电路的电源供电;
第六,在电网接入电源时,使用隔离变压器降低分布电容所造成的影响。
1.2接地抗干扰
接地可以消除各电路电流流经公共地线阻抗所产生的噪声耦合。接地技术是嵌入式系统的关键环节,正确的接地方法使嵌入式系统更加安全可靠,可以采取以下措施:
第一,合理分配单点接地与多点接地,低频电路与高频线路应分别对应单点接地和多点接地;
第二,数字电路和模拟电路要分开,两者的地线不要相混,分别与电源端地线相连,避免模拟信号受数字脉冲的干扰,从而达到抗干扰的效[1]。
第三,为避免干扰信号叠加在系统芯片悬空输入的引脚上,影响设备的可靠性,应考虑将悬空引脚接地;电路板上每个集成芯片电源处要并接一个0.01μF~0.1μF电容到地,以减少干扰脉冲对芯片的干扰信号。
第四,设备的金属外壳与电缆屏蔽层可和大地直接相连,发挥出屏蔽与防漏电的目地,避免受到外部干扰源的影响,必要时添加屏蔽罩接地,让干扰信号被短路接地。让系统能够提升抗干扰的能力。
1.3时钟信号抗干扰
时钟作为正常运行的主要因素,能够为每个集成芯片提供准确的时钟源。时钟信号的干扰会导致集成芯片的工作时序紊乱,使系统工作流程无法正常进行。
可以采取以下措施:
第一,晶体振荡器尽量贴近集成芯片,引线要保证短,且尽量粗。接地线用于环绕振荡电路,晶体外壳接地[2]。
第二, 晶体振荡器电路的要选择有稳定性能、偏差较小的容量的电容,远离发热元件。
1.4信号传输过程中的抗干扰
在嵌入式系统信号传输过程中,若是抗干扰能力不够强,无用的噪声信号会覆盖微小的有用信号。对信号传输的抗干扰可采取如下技术措施:
第一,用电耦合器将主机和前向、后向通道和与其余部分之间的电路关系有效切断,进行信号隔离。
第二,在进行长线的信号传输时,要使用双绞线,因为使用双绞线可以对系统的抗噪声能力进行有效的提高[3]。针对传输中受到交叉干扰和反射作用出现的畸变情况,传输路线要做到阻抗匹配,给传输线的始端配置串联电阻,末端配置并联电阻,保证传输线两侧负载阻抗与阻原阻抗传输线特性,防止信号传输出现异常。
第三,增加滤波器,抑制高频干扰信号的情况。不同批次谐波容易通过电源进入到嵌入式系统。在电源变压器初级和次级间需要使用屏蔽层隔离,避免分布电容,让抗共模的干扰能力得到提升,也要将低通滤波电路加入到电源电路中。防止高频信号产生干扰。
1.5电磁抗干扰
嵌入式系统机电设备在使用过程中面临复杂的电磁环境,嵌入式系统中的电磁干扰主要通过导线传播和空间传播,防止电磁干扰措施有:
第一,选择合理的导线宽度,尽量减少印制导线的电感量,短而精细的导线对抑制干扰是有利的;
第二,采用正确的布线策略,采用平行的走线方式可以降低导线的电感,印制板一面用横线的走线方式,一面采用纵向的走线方式,在交叉孔处用金属化孔连接;
第三,减少印刷线路的不连续性,导线的拐角应大于90 °,不要环状走线;
第四,时钟信号线最有可能引发电磁辐射干扰。在布线时,应靠近地线回路,驱动器应靠近连接器;每两根信号线之间最好夹一根信号地线,避免电磁干扰;
第五,开关信号与模拟信号检测线均能够应用屏蔽双绞线,屏蔽层最好要独自接入地面,导线的屏蔽层一定不可以当作信号线或者公用线一样进行使用,这样就可以很大程度上对电磁场的干扰进行削减,避免出现静电或者电磁干扰。
第六,为了抑制印刷线条末端的反射干扰,除特殊说明,应尽量缩短印制板线路的长度,使用慢速电路;必要时可采用终端匹配,即在传输线末端对地与电源端各加一个相同阻值的匹配电阻;
第七,微小的模拟信号依旧会受到电磁辐射的影响,因此需要减小远距离传输的次数,同时增加干扰源与敏感器件的距离。
1.6印制电路板抗干扰
印制板是整个电子系统的主要载体,是电子器件、信号和线路的高密度集合,印制板电路设计的好坏对嵌入式系统的抗干扰性能影响很大[4]。印制板电路的抗干扰措施可采取以下几点:
第一,在印制板尺寸方面,应大小合适。尺寸过大、走线过长会导致阻抗增大,抗干扰能力下降,成本高; 过小则散热功能下降,且易受相邻走线的影响;
第二,在元件布局方面,相互有关的元器件布局尽量放的靠近一点,这样可以缩短器件间的连线距离,而相互之间易产生干扰的器件,应布局的远一点。对于高热元器件,应将其放在出风口或利于空气对流的位置,对温度敏感器等元器件应考虑远离热源,大面积铜箔要求用隔热袋与焊盘想连。
第三,在电路布线方面,采用环路最小的原则。信号线与其回路构成的环面积要尽可能小,这样对外的辐射也小。时钟线、信号线要和地线尽量的靠近,集成芯片去偶电容的布局要尽量靠近集成芯片的电源管脚。尽量加粗电源线和接地线,减少电位随电流的变化而变化,增加抗干扰能力。将接地线构成闭环路,可以明显提高抗干扰能力。
第四,印制板上的大电流信号线、电源变压器要远离晶振信号的连线。对于外部时钟源电路,要对芯片电源进行滤波。当时钟电路为其它芯片提供时钟信号时,采取隔离和驱动措施。
2.系统抗干扰软件措施
软件抗干扰技术具有灵活、可靠性高等特点,采用硬件抗干扰技术和软件抗干扰技术相结合的方式,可以更大限度的增强嵌入式系统设备的抗干扰能力。以下是软件抗干扰的几点措施:
2.1重用现有成熟软件抗干扰
对现有成熟软件进行最大限度的重用,一方面可以缩短软件开发的周期,提高软件开发的效率,减少软件人员的工作量;一方面也可以增强软件的可维护性和可靠性,提升整个嵌入式系统的抗干扰能力。
2.2数据采集误差抗干扰
在信号采集时,一般会存在一些干扰信号夹杂在有用信号上,如电磁辐射干扰、静电干扰等。硬件上的滤波器能够对信号实现频率滤波,也可以使用软件程序要反复对模拟信号开展采样工作,同时使用软件算法获得最真实且接近的数值,因此应用的方法包括:中值法、算数平均法、加权平均滤波法等。如果在连续采集数据之间插入延时程序,还能够对付较宽的干扰。
2.3存储器读写检查抗干扰
程序运行过程中要定时检查存储器,将系统产生的随机数写入存储器,再从存储器中将随机数读取出来,检查读写数据是否一致来判断当前存储器是否工作正常。存储器出错会导致整个软件运行出错,检查存储器是否工作正常是嵌入式系统运行过程中不可小觑的关键环节。
2.4 校验码抗干扰
嵌入式系统运行时,各个部件之间要频繁地进行数据交换,为了确保数据准确无误的传送,一是提高硬件电路的可靠性,二是提高代码的校验能力,以进行查错和纠错。通常使用校验码的方法来检测所存储和传送的数据是否出错。对数据可能出现的编码分为合法编码和错误编码两类,合法编码用于存储和传送数据,错误编码是不允许在数据中出现的编码。合理的设计错误编码以及编码规则,使数据在传送中出现某种错误时就会变成错误编码,这样就可以检测出接收到的数据是否有错。常见的校验码包括:奇偶校验码(Parity Codes)、海明码(Hamming Code)、循环冗余校验(CRC)。
奇偶校验码(Parity Codes)是一种增加二进制传输系统最小距离的简单和广泛采用的方法。是一种通过增加冗余位使得码字中1的个数恒为奇数或偶数的编码方法,它是一种检错码。在实际使用时又可分为垂直奇偶校验、水平奇偶校验和水平垂直奇偶校验等几种。
海明码(Hamming Code),是在电信领域的一种线性调试码,以发明者理查德·卫斯里·汉明的名字命名。汉明码在传输的消息流中插入验证码,当计算机存储或移动数据时,可能会产生数据位错误,以侦测并更正单一比特错误。由于汉明编码简单,它们被广泛应用于内存。
循环冗余校验(CRC),是一种数据传输检错方式。对传输的一帧数据进行多项式计算,并将计算后的结果附在数据帧的后面。接收器也执行相同的算法,将计算得到的结果和收到的CRC校验值比对,若对比值不一样,则CRC校验不通过,程序回到上一检查点开始重新执行,这样可有效地消除偶然干扰,以保证数据传输的正确性。
2.5分配时间片抗干扰
在嵌入式系统设备中,ADC、DAC、显示等IO接口通过查询或者中断的方式与CPU进行通信。一旦这些接口的状态字被干扰信号破坏,CPU就会误认为这些接口有输入/输出请求,就会执行错误的服务程序。然而,由于这些接口本身没有输入/输出请求,所以CPU资源被这些错误的请求一直占用而没有释放,导致其他请求任务无法执行而造成整个系统“死锁”。这种“死锁”可以用分配“时间片”的方法来解决。根据不同外围设备的时间要求,分配相应的最大正常输入/输出执行时间,并在每个输入/输出任务模块中增加相应的超时判断程序,当接口受到干扰,CPU 出现误操作时,经过一定时间后,系统将自动从外围设备服务程序中返回,避免“死锁”。
2.6软件看门狗复位抗干扰
软件看门狗电路指的是在程序运行中,定时向看门狗电路发送喂狗信号,系统一旦有死机、操作失误等错误操作情况出现时,会停止喂狗,此时看门狗电路会自动发出复位信号,让系统能够重新开始正常的运行。看门狗技术是结合软件和硬件的解决程序跑飞的技术措施,通过指令强行把失控程序引导复位入口的地址,使程序正常运行[5]。
2.7加强软件测试抗干扰
软件开发是生产制造软件,软件测试是验证开发软件的质量。软件测试是使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。软件测试是保证软件开发产品质量的主要手段,可以最大限度的去除软件中的差错,提高软件的可靠性。
软件测试方法的分类有很多种,以测试过程中程序执行状态为依据可分为静态测试和动态测试;以具体实现算法细节和系统内部结构的相关情况为根据可分黑盒测试、白盒测试和灰盒测试三类;从程序执行的方式来分类,可分为人工测试和自动化测试[6]。
其中,静态测试包括代码检查、静态结构分析、代码质量度量等。动态测试由3部分组成:构造测试实例、执行程序和分析程序的输出结果。白盒测试方法主要有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、路径覆盖和程序变异。黑盒测试方法主要包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法、场景法等。
3.结束语
通过对嵌入式系统设备常见的几种干扰源的分析,采用硬件抗干扰技术和软件抗干扰技术有机结合,最大限度地保证嵌入式系统设备更加安全可靠的运行。
参考文献:
[1]刘瑞瑞.单片机控制系统的抗干扰设计的分析[J].安防科技,2021,000(017):P.119-119.
[2]汪彧.地铁信号设备无线系统抗干扰的分析及措施[J].工程与管理科学,2022,4(9):55-58.
[3]魏敏.单片机PLC控制系统抗干扰能力的途径[J].装备制造技术,2023(1):3.
[4]段向港.电子设备中的电气干扰及抗干扰措施研究[J].电子世界,2021(9):2.
[5]赵山,禹俊,熊钢.智能仪器仪表中单片机的抗干扰措施[J].今日自动化,2022(007):000.
[6]刘宇轩.软件测试方法研究[J].科技风,2018(4):53.
京公网安备 11011302003690号