产品在定型前,嵌入式系统需要对设备进行一系列的试验,包含环境性试验和可适应性试验,在这里谈谈可适应性中脚本的应用。

环境描述:

设备需要做emc试验,包含静电,脉冲和浪涌试验。

要验证设备在做试验的过程中是否有损伤、间歇性异常等不良情况,就需要对设备进行实时监控。这样就需要对设备进行在线监控。

当然开发一个上位机软件实时连接设备在线监测是最理想的状态,但是需要消耗大量的人力和物力,在这里我们使用脚本来实现,消耗的时间较少,当然,我们今天的目的不是研究如何使用脚本监测硬件状态,略过不说,抱歉抱歉。。。

难点:

由于emc试验对设备会有损伤的同时,所以对监测设备(如电脑、串口线、网线)也有一定的损伤,经过实践发现,采购抗干扰能力强的设备会有不错的效果,即使增加磁环也不能完全避免这个现象,这样对我们采集实时的状态带来了一定的不确定性。

解决方法:(举例)

while true

do

echo "====================" > /dev/console

echo "test wifi" > /dev/console

echo "====================" > /dev/console

/bin/ping 192.168.124.1 -I wlan0 -c1

[ $? -eq 0 ] && echo "wifi ping success" > /dev/console || echo "${RED} wifi ping failure" > /dev/console

sleep 2

done

以上是一个检测wifi的脚本,运行脚本后会一致检测wifi的状态,并将检测的状态(wifi ping success   或者  wifi ping failure)打印到屏幕上,供我们在线查看。

在试验的过程中会出现这样一个情况,串口设备会因为emc的干扰产生中断,这样在中断的时间里无法看到设备的实际状态。

可以采用将输出信息也打印到文件中来完成,即使中断了,也可以事后查看log文件来分析。

while true

do

echo "====================" >/dev/console

echo " test wifi" >/dev/console

echo "test wifi" >> auto.txt

echo "====================" >/dev/console

/bin/ping 192.168.124.1 -I wlan0 -c1

[ $? -eq 0 ] && echo "wifi ping success" >> auto.txt || echo "${RED} wifi ping failure" >> auto.txt

[ $? -eq 0 ] && echo "wifi ping success" >/dev/console || echo "${RED} wifi ping failure" >/dev/console

sleep 2

done

这样就可以将检测过程的文件输出到  auto.txt 文件中。

经试验发现效果不错,在做电源浪涌的时候,发现设备重新启动了,这下完了,不知道啥时候启动,具体是由于哪个回路的浪涌信号引起的,我总不能一直盯着设备看吧,即使一直盯着,可能也看不到啊。干脆加个时标吧,就变成这个样子了。

while true

do

echo "====================" >/dev/console

echo "`date +%T` test wifi" >/dev/console

echo "`date +%T` test wifi" >> auto.txt

echo "====================" >/dev/console

/bin/ping 192.168.124.1 -I wlan0 -c1

[ $? -eq 0 ] && echo "wifi ping success" >> auto.txt || echo "${RED} wifi ping failure" >> auto.txt

[ $? -eq 0 ] && echo "wifi ping success" >/dev/console || echo "${RED} wifi ping failure" >/dev/console

sleep 2

done

需要注意的一点是,做试验之前,需要对设备进行对时。这样就可以观察到从什么时间开始、结束,只要记录下验证不同项目的时间点,就可以对照时间,查找当时的异常情况了。感觉心里有底多了。

以上仅作记录,供有需求的人参考。

测试脚本的实用性:谈嵌入式系统在型式试验中的脚本应用相关推荐

  1. 嵌入式系统在物联网中的应用及架构

    如果说其他技术涉及到的是物联网的某个特定方向,如感知.计算.通信等.嵌入式系统则是物联网中各种物品的表现形式. 首先要谈一下关于架构 在接触嵌入式之后,就出现了一系列的XX架构之类的狼虎之词,什么物联 ...

  2. 嵌套在计算机中应用,嵌入式系统在计算机中的应用.ppt

    嵌入式系统在计算机中的应用 异步存储器的连接 23 (8–15) (0–7) 16 DATA DATA 'C5000 ADDRESS IOSTRB MSTRB R/W DS A A A CS OE C ...

  3. 浅谈嵌入式系统的持续集成

    持续集成(Continuous Integration(CI))和持续交付(Continuous Delivery(CD))是现代软件开发中两个非常重要的概念.集成是完成交付和部署的前置条件,实现持续 ...

  4. 浅谈嵌入式系统的应用场景

    嵌入式系统一直以其广泛的应用范围为人所熟悉,软硬件集成类单片机形态是它最初的形式,无法对程序和系统进行更改,满足用户的特定需求,硬件模块简单,包括信号处理器.存储器.通信模块等.智能制造是嵌入式系统应 ...

  5. 嵌入式系统和物联网中的软件安全

    文章目录 您需要了解的嵌入式系统软件的功能安全与信息安全 为什么C与C++对于嵌入式系统软件的功能安全及信息安全很重要 为什么静态分析对于嵌入式系统软件的功能安全及信息安全很重要 为什么编码标准对于嵌 ...

  6. 实时级嵌入式系统半实物仿真测试平台技术指标

    一. 技术要求及设备选型情况 1.技术要求 系统采用上下位机的结构,上位机要求功能丰富.灵活易用,下位机要求实时性高.仿真能力强.同步效果好: 可实现高可靠性强实时测试,响应时间≤1ms: 系统具有集 ...

  7. 浅谈C语言嵌入式系统编程注意事项

    C语言嵌入式系统编程注意事项之背景篇   本文的讨论主要围绕以通用处理器为中心的协议处理模块进行,因为它更多地牵涉到具体的C语言编程技巧 不同于一般形式的软件编程,嵌入式系统编程建立在特定的硬件平台上 ...

  8. 嵌入式系统的知识体系、学习误区及学习建议

    嵌入式系统的知识体系.学习误区及学习建议 1.嵌入式系统的知识体系     嵌入式系统的应用范围可以粗略分为两大类:电子系统的智能化(工业控制.现代农业.家用电器.汽车电子.测控系统.数据采集等),计 ...

  9. 嵌入式系统的知识体系

    嵌入式系统的知识体系 嵌入式系统的应用范围可以粗略分为两大类:电子系统的智能化(工业 控制.现代农业.家用电器.汽车电子.测控系统.数据采集等),计算机应用的延伸(MP3.手机.通信.网络.计算机外围 ...

最新文章

  1. 机器学习PAL产品优势
  2. Sketch 57.1 Mac中文版
  3. 交换机端口安全如何部署
  4. 【SpringBoot Testing】测试类/测试用例格式
  5. oracle 不等于某类,Oracle如何查询不等于某数值
  6. dotnet 基于 dotnet format 的 GitHub Action 自动代码格式化机器人
  7. mongodb 可是化_Mongodb GUI可视化管理工具推荐
  8. 一步一步SharePoint 2007之二十八:实现WebPart的单步调试
  9. css中的伪类与伪元素的区别
  10. SQL server 表中如何创建索引?
  11. 微信JS SDK网页接口
  12. RLS算法Matlab实现
  13. Hive表中加载数据的5中方式
  14. 使用DroidCam过程中所遇到的问题及处理方法
  15. php采集cms有哪些,phpcms v9自带采集模块功能体验
  16. 幼儿园数学目标_幼儿园数学区目标
  17. android 模拟器 安装教程,电脑用安卓模拟器详细安装教程
  18. python123:大小写转换
  19. jenkins插件管理提示“update information obtained
  20. 学习大数据-flink实时数据流处理

热门文章

  1. python录入数据至ppt_用 Python 让你的 PPT 数据动起来
  2. gradle项目 避免每次下载gradle文件/解决依赖下载慢的问题
  3. 十进制转十六进制(蓝桥杯)
  4. EntLib 3.1学习笔记(5) : Exception Handling Application Block
  5. 我来阅读lodash源码——Math(一)
  6. Windows 10全新分支版本曝光!专门优化高配置PC
  7. 第二个冲刺期的第七天
  8. 安装RADOS gateway(CEPH对象存储)
  9. 也论标准: 统一是啥好事情?
  10. 深入理解JWT的使用场景和优劣