嵌入式系统的虚拟仪器成测试系统新思路精密夹头
发布时间:2022-09-20 12:39:05 来源:宏洲机械网
嵌入式系统的虚拟仪器成测试系统新思路
1 引言
计算机及其接口技术的发展和传统测试测量仪器系统暴露出来的不足,使得基于计算机的虚拟仪器设备越来越成为测试测量仪器的主导。虚拟仪器系统以其平台通用性、可扩充、易升级和高度的智能性获得了广泛的工业应用。在PC和工业控制计算机中插入基于PC总线(ISA,PCI)的数采板卡构成硬件系统,编写 Windows系统平台的驱动程序和软面板实现软件功能,成为业界的主要解决方案。
但是在野战和恶劣环境下测试任务的实践过程中,我们发现基于PC或工控机的虚拟仪器暴露出很多问题,如:体积大,不便于携行;插卡式结构,接触易松动、不紧固;以机械硬盘为主要存储介质,抗震性能差等等。
以32位嵌入式微处理器和嵌入式操作系统为特征的嵌入式计算平台使计算进入了后PC时代。嵌入式系统的小体积、高可靠能够满足实现野战和恶劣环境下的便携虚拟仪器的需要。基于嵌入式计算平台,设计虚拟仪器系统成为构建测试系统的新思路。
通过构建基于PC104总线嵌入式计算平台,加入仪器卡及其功能程序,我们实现了针对雷达电子装备的多种测试仪器。构建基于嵌入式无锡系统的虚拟仪器需要解决的技术问题集中在系统平台的构建、接口和驱动程序的设计以及软面板设计等方面。
2 硬件系统组成
硬件系统包括嵌入式主板、仪器功能板、Flash存储介质(DOC或CF卡)、液晶显示屏、触摸屏和信号接口等。如图1所示。其中液晶显示屏、触摸屏实现人机交互,信号接口用于耦合测试信号、嵌入式主板作为控制和计算单元,仪器功能板实现具体仪器的功能。
部件按叠放的顺序依次为触摸屏、液晶显示屏、PC104主板、示波器卡、万用表卡功能板卡和嵌入式主板之间通过PC104总线以叠栈的方式实现机械和电气的互连。采用连州这种方式有如下好处:
1.电气接触高度紧密。电路板之间通过多排插针深入连接,比ISA和PCI的插槽连接要紧密得多。
2.机械结构牢固。电路板之间用四个螺柱紧紧相连,使得板卡之间的机械连接非常牢固,不会存在晃动现象。
3.PC104插针的电气特性与ISA完全兼容,PC104Plus插针的电气特性与PCI完全兼容,使得基于ISA或PCI总线设计的功能板卡可以从电原理上重用,有利于系统改造过程的平稳过渡。
摈弃硬盘而采用DOC或CF卡作为外存储介质也能大大提高系统抗震动和冲击能力。
采用如上所述的硬件系统能为小型、可靠的虚拟仪器系统提供硬件保障,但由此带来的系统存储容量小和资源受限等问题为软件系统的设计带来了困难。必须采用嵌入式操作系统,软件编程必须考虑体积小,效率高。
3 软件系统设计
我们采用嵌入式Linux作为操作系统,在linux平台下编写仪器的驱动程序。利用TinyX和GTK+作为图形界面解决方案实现仪器软面板。
3.1.嵌入式linux系统
采用开源的linux系统,并通过编译选项裁减不需要的功能模块,得到大小为车架500K左右的内核模块。用busybox取代shell,在系统中加入 glibc.o等库构建一个4M的Linux运行系统。关于嵌入式Linux系统的构建文献有详细的介绍和指导。
3.2.linux下的io编程
仪器卡的驱动程序采用端口读写来实现。Linux下对端口的操作方法在usr/include/asm/io.h中。由于端口读写函数是一些inline 宏,所以在编写端口读写程序时只需要加入:#include不需要包含任何附加的库文件。另外由于gcc编译器的一个限制,在编写包含端口读写代码的程序时,要么打开编译器优化选项(使陶瓷棍棒用gcc?O1或更高选项),要么在#include之前加上:#defineexternstatic
在读写端口之前,必须首先通过ioperm()函数取得对该端口读写的权限。该函数的使用如下:
ioperm(from,num,turn_on)
如果turn_on=1,则表示要获取从from开始的共num个端口的读写权限。如ioperm(0x300,5,1)就表示获取从端口0x300到 0x304共5个端口的读写权。最后一个参数turn_on表示是否获取读写权(turn_on=1表示获取,turn_on=0表示释放)。一般在程序的硬件初始化阶段调用ioperm()函数。
ioperm()函数需要以root身份运行或使用seuid赋予该程序root权限。
端口的读取使用inb(port)和inw(port)函数来完成,其中inb(port)读取8位端口,inw(port)读取16位端口。
对8位和16位端口的写操作分别用函数outb(value,port)和outw(value,port)来完成。其中各函数的第一个参数表示要写的数值,第二个参数表示端口地址。
宏inb_p(),outb_p(),inw_p()和outw_p()的作用与对应的上述四个端口读写函数一样,只是在端口操作后附加一定时间的延时以保证读写可靠。可以通过在#include前加上:#defineREALLY_SLOW_IO获得约4微秒的延时。
3.3.基于TinyX和Gtk+的软面板编程
仪器软面板的设计涉及linux下GUI的选择和编程,考虑到XWindows的成熟性和与桌面系统的一致性,我们选用精简的XWindows系统TinyX作为底层GUI解决方案。使用Gtk+1.2库作为控件集来开发仪器软面板程序。
基于TinyX和Gtk+库的图形界面开发方案使得软面板的开发与桌面环境下基于Gnome的开发比较接近,很多的桌面环境下的linux工具可以直接使用。
Gtk+图形库是GNOME桌面系统的底层基础,它包含比较完整的GUI控件集合(GtkWidgets)。基于面向对象的方法,GTK+用C语言实现了一套对象系统和消息及回调机制,并将整个图形控件集纳于对象框架中,使得控件集的扩充比较方便。
针对虚拟仪器领域的应用需求,可以构建常见的GUI单元的控件集。我们以GtkWidgets的形式开发了示波器,信号源等仪器的面板控件和一些关键的GUI单元控件。这些都有利于用户的二次开发和软件单元的重用。
4 结论
基于嵌入式主板和嵌入式软件环境,我们给出一个构造虚拟仪器的通用解决方案。同时,通过构建基于TinyX和Gtk+库的GUI环境,再加上我们自主开发的一系列面板单元控件,我们提供了对虚拟仪器软面板开发的支持。
基于以上的方案,我们开发了集示波器、万用表和微波信号源等仪器功能于一体的雷达故障检测仪。
部队野战环境下的实践表明该系统机械结构牢固、可靠性高,携带使用方便。杭州哪个医院能治疗甲状腺
小儿癫痫有哪些类型
常见癫痫病的症状有哪些呢
癫痫发作时的急救方法
计算机及其接口技术的发展和传统测试测量仪器系统暴露出来的不足,使得基于计算机的虚拟仪器设备越来越成为测试测量仪器的主导。虚拟仪器系统以其平台通用性、可扩充、易升级和高度的智能性获得了广泛的工业应用。在PC和工业控制计算机中插入基于PC总线(ISA,PCI)的数采板卡构成硬件系统,编写 Windows系统平台的驱动程序和软面板实现软件功能,成为业界的主要解决方案。
但是在野战和恶劣环境下测试任务的实践过程中,我们发现基于PC或工控机的虚拟仪器暴露出很多问题,如:体积大,不便于携行;插卡式结构,接触易松动、不紧固;以机械硬盘为主要存储介质,抗震性能差等等。
以32位嵌入式微处理器和嵌入式操作系统为特征的嵌入式计算平台使计算进入了后PC时代。嵌入式系统的小体积、高可靠能够满足实现野战和恶劣环境下的便携虚拟仪器的需要。基于嵌入式计算平台,设计虚拟仪器系统成为构建测试系统的新思路。
通过构建基于PC104总线嵌入式计算平台,加入仪器卡及其功能程序,我们实现了针对雷达电子装备的多种测试仪器。构建基于嵌入式无锡系统的虚拟仪器需要解决的技术问题集中在系统平台的构建、接口和驱动程序的设计以及软面板设计等方面。
2 硬件系统组成
硬件系统包括嵌入式主板、仪器功能板、Flash存储介质(DOC或CF卡)、液晶显示屏、触摸屏和信号接口等。如图1所示。其中液晶显示屏、触摸屏实现人机交互,信号接口用于耦合测试信号、嵌入式主板作为控制和计算单元,仪器功能板实现具体仪器的功能。
部件按叠放的顺序依次为触摸屏、液晶显示屏、PC104主板、示波器卡、万用表卡功能板卡和嵌入式主板之间通过PC104总线以叠栈的方式实现机械和电气的互连。采用连州这种方式有如下好处:
1.电气接触高度紧密。电路板之间通过多排插针深入连接,比ISA和PCI的插槽连接要紧密得多。
2.机械结构牢固。电路板之间用四个螺柱紧紧相连,使得板卡之间的机械连接非常牢固,不会存在晃动现象。
3.PC104插针的电气特性与ISA完全兼容,PC104Plus插针的电气特性与PCI完全兼容,使得基于ISA或PCI总线设计的功能板卡可以从电原理上重用,有利于系统改造过程的平稳过渡。
摈弃硬盘而采用DOC或CF卡作为外存储介质也能大大提高系统抗震动和冲击能力。
采用如上所述的硬件系统能为小型、可靠的虚拟仪器系统提供硬件保障,但由此带来的系统存储容量小和资源受限等问题为软件系统的设计带来了困难。必须采用嵌入式操作系统,软件编程必须考虑体积小,效率高。
3 软件系统设计
我们采用嵌入式Linux作为操作系统,在linux平台下编写仪器的驱动程序。利用TinyX和GTK+作为图形界面解决方案实现仪器软面板。
3.1.嵌入式linux系统
采用开源的linux系统,并通过编译选项裁减不需要的功能模块,得到大小为车架500K左右的内核模块。用busybox取代shell,在系统中加入 glibc.o等库构建一个4M的Linux运行系统。关于嵌入式Linux系统的构建文献有详细的介绍和指导。
3.2.linux下的io编程
仪器卡的驱动程序采用端口读写来实现。Linux下对端口的操作方法在usr/include/asm/io.h中。由于端口读写函数是一些inline 宏,所以在编写端口读写程序时只需要加入:#include不需要包含任何附加的库文件。另外由于gcc编译器的一个限制,在编写包含端口读写代码的程序时,要么打开编译器优化选项(使陶瓷棍棒用gcc?O1或更高选项),要么在#include之前加上:#defineexternstatic
在读写端口之前,必须首先通过ioperm()函数取得对该端口读写的权限。该函数的使用如下:
ioperm(from,num,turn_on)
如果turn_on=1,则表示要获取从from开始的共num个端口的读写权限。如ioperm(0x300,5,1)就表示获取从端口0x300到 0x304共5个端口的读写权。最后一个参数turn_on表示是否获取读写权(turn_on=1表示获取,turn_on=0表示释放)。一般在程序的硬件初始化阶段调用ioperm()函数。
ioperm()函数需要以root身份运行或使用seuid赋予该程序root权限。
端口的读取使用inb(port)和inw(port)函数来完成,其中inb(port)读取8位端口,inw(port)读取16位端口。
对8位和16位端口的写操作分别用函数outb(value,port)和outw(value,port)来完成。其中各函数的第一个参数表示要写的数值,第二个参数表示端口地址。
宏inb_p(),outb_p(),inw_p()和outw_p()的作用与对应的上述四个端口读写函数一样,只是在端口操作后附加一定时间的延时以保证读写可靠。可以通过在#include前加上:#defineREALLY_SLOW_IO获得约4微秒的延时。
3.3.基于TinyX和Gtk+的软面板编程
仪器软面板的设计涉及linux下GUI的选择和编程,考虑到XWindows的成熟性和与桌面系统的一致性,我们选用精简的XWindows系统TinyX作为底层GUI解决方案。使用Gtk+1.2库作为控件集来开发仪器软面板程序。
基于TinyX和Gtk+库的图形界面开发方案使得软面板的开发与桌面环境下基于Gnome的开发比较接近,很多的桌面环境下的linux工具可以直接使用。
Gtk+图形库是GNOME桌面系统的底层基础,它包含比较完整的GUI控件集合(GtkWidgets)。基于面向对象的方法,GTK+用C语言实现了一套对象系统和消息及回调机制,并将整个图形控件集纳于对象框架中,使得控件集的扩充比较方便。
针对虚拟仪器领域的应用需求,可以构建常见的GUI单元的控件集。我们以GtkWidgets的形式开发了示波器,信号源等仪器的面板控件和一些关键的GUI单元控件。这些都有利于用户的二次开发和软件单元的重用。
4 结论
基于嵌入式主板和嵌入式软件环境,我们给出一个构造虚拟仪器的通用解决方案。同时,通过构建基于TinyX和Gtk+库的GUI环境,再加上我们自主开发的一系列面板单元控件,我们提供了对虚拟仪器软面板开发的支持。
基于以上的方案,我们开发了集示波器、万用表和微波信号源等仪器功能于一体的雷达故障检测仪。
部队野战环境下的实践表明该系统机械结构牢固、可靠性高,携带使用方便。杭州哪个医院能治疗甲状腺
小儿癫痫有哪些类型
常见癫痫病的症状有哪些呢
癫痫发作时的急救方法
相关阅读
-
微软苹果计划联手竞购柯达1100项专利硝酸钙钢丝螺套烘干VDSL水泥Trp
微软苹果计划联手竞购柯达1100项专利由于柯达的破产,法院宣布在8月8日拍卖其专回油滤芯利。据报道,微软、苹果以及微软前首席技术官纳森 梅尔沃德(Nathan Myhrvold)旗下Intellectual Ventures计划联手
04月18日 12:08
-
10月27日有机乙二醇出厂价格声卡洗车色彩管理轮胎潜水服Trp
10月27日有机乙二醇出厂价格产品名称规格型号生产企业价格涨跌备注乙二醇北京东方55000乙二醇抚顺石化48000乙二醇茂名石化55000目前也有多家国内供应商具有此项技术乙二醇天津石而标线间的距离是
04月18日 11:44
-
智能家居即将成为一种主流趋势散热风机喷绘系统光敏管喷雾机造纸胶辊Trp
智能家居即将成为一乐平种主流趋势从用户需求来讲,随着现代科技的高速发展和提高,人们对于其中塑料作为“白色污染”的主要来源高科技水平的生活需求越来越大,比如苹果,苹果5S已上市,
04月18日 08:24
-
法国香水包装的设计理念羽绒服耒阳钛铁车篮建筑塑料Trp
法国香水包装的设计理念摘 要:法国之所以有如此多的世界级香水品牌,成为世界香水大国,与其香水包装设计理念是分不开的。法国设计师善于运用各种材料,敢于采用新材料、新技术、新形式来设计
04月18日 05:18
-
中小企业SaaS选型必须做的10项考察导电涂料辽源台灯防水接头美工刀Trp
中小企业SaaS选型必须做的10项考察尽管迁移到SaaS也许是中小企业为了寻求效率而做出的举动,但只有选择的解决方案符合SaaS应用的一些原则,它才会给你带来相应回报。SaaS正在改变整个IT产业的格
04月17日 23:08
-
彩虹CH01线池炉度过冷修期再次成功点火烟胶南昌电子书焊接加工固定支架TRp
彩虹CH01线池炉度过冷修期,再次成功点火8日上午,彩虹(合肥)液晶玻璃有限公司CH02线池炉成功点火。今过门石年7月19日,彩虹CH01线池炉经过两年的冷修期后再次成功点火,标志着这一条具有自主
04月03日 06:04