基于嵌入式的杯突试验机测控系统设计与实现
将计数模式设置为四倍频 正交模式以提高计数精度。
3.2 压力测量电路
本系统采用中航第十一研究所的DaCY420压力变送器来测量被测试样的夹紧力和冲压力值,两个变 送器的量程分别为0~2.5 MPa和0~10 MPa,输出标准的4~20 mA电流信号。S3C2440内部集成的ADC只有10位的分辨率,转换精度不足,为此本系统使用了TI(德州仪器) 公司的4通道12位的ADS7842作为A/D转换器。该转换器能在2 mW的功耗下以200kHz的采样率同时进行4通道信号采样,本系统使用其中的两个通道。由于压力变送器输出的是电流信号,需要转换为电压信号才能被 ADS7842测量,此处使用电流转电压芯片RCV420将4~20 mA电流转换为0~5 V电压后接入ADS7842.ADS7842接口电路如图2所示,GPG13用于通道选择,低电平时选择AIN0,高电平时选择AIN1.BUSY作为转 换完成的标志位,输出高电平表示A/D转换完成。
3.3 电平转换电路
本系统使用的LS7266R1和ADS7842工作电压都是5 V,并且LS7266R1数字量输出高电平为4.5~5 V,ADS7842数字量输出高电平为3.5~5 V,二者都超过了S3C2440系统总线的工作电压3.3 V,因此它们要和S3C2440进行数据通信就必须完成电平转换。
本系统采用74LVC16245A完成数据总线的电平转换,使用74LVC4245A完成片选线以 及读写信号线的电平转换。74LVC16245A是TI 公司的一种16位双向总线转换器,能够满足3~5 V的数据信号的输入/输出,转换的方向可由方向控制引脚(DIR)控制。
74LVC4245A是一个8位双电源供电的双向收发器,本系统中芯片的VCCA端采用5 V供电,VCCB端采用3.3 V供电,将方向控制引脚(DIR)置为低电平,从而完成3.3~5 V的电平信号转换。
3.4 继电器驱动电路
试验的整个过程是由微处理器通过6个开关量来控制与试验机机械装置相连的继电器开关通断来完成的。 这6个开关量分别是:夹紧油泵工作;夹紧电机工作;冲压 电机工作;冲压油泵工作;夹紧换向阀换向;冲压换向阀换向。由于微处理器的GPIO口的输出电压远小于继电器工作电压,无法直接通过GPIO口驱动继电 器,因此本系统增加了继电器驱动电路来完成电压的转换,并且使用光耦将输入和输出隔离,使输出信号对输入端无影响,以提高系统的抗干扰能力和稳定性。
4 系统软件设计
系统的软件部分主要有底层驱动程序、操作系统以及上层应用程序,它们共同构成了嵌入式杯突试验机测控系统。其中选用2.6内核的Linux作为操作系统, 并根据开发板的硬件情况和系统需求进行了必要的裁剪以增强系统的专用性。下面主要介绍驱动程序和应用程序的设计。
4.1 驱动程序设计
系统涉及的驱动程序主要有:
(1)计数器驱动程序,主要包括LS7266R1芯片的初始化和数据读取,LS7266R1芯片的初始化和数据读取程序的流程如图3和图4所示。
(2)压力变送器的A/D转换程序,主要是选择转换通道并根据ADS7842转换完成标志来读取转换后的值。
(3)继电器驱动电路的驱动程序,主要是配置相应GPIO控制寄存器,设置相关I/O接口的功能,使其能根据应用程序的要求输出高低电平完成对继电器开关通断的控制。
4.2 应用程序设计
测控系统的应用程序用来完成试验过程的控制、实时采集试验数据并对试验记录进行管理。为了给用户提 供良好的人机交互界面,系统应用程序的开发工具选择了图 形化界面开发工具Qt的嵌入式版本Qt/Embedded 4,它能通过Qt的API直接与Linux I/O以及Framebuffer交互,拥有较高的运行效率,而且采用面向对象编程,并能为用户提供精美的图形用户界面所需要的所有元素。另外,它对多线 程有很好的支持,应用程序的开发中使用了多线程技术来避免因耗时操作而出现的界面冻结现象,使系统能够及时响应用户的操作,提高了系统和用户的交互能力。
系统使用嵌入式数据库SQLite来存储和管理试验记录。SQLite是一个小型开源嵌入式数据 库,具有体积小、快速高效、稳定可靠、可移植等特点,并且 还提供了对SQL92标准的大多数支持:支持多表和索引、事务、视图、触发和一系列用户接口及驱动等。它和应用程序相结合能够方便地完成对试验记录的添 加、删除、修改和查找操作。
系统应用程序主要包括以下几个模块:系统登录、试验运行、记录编辑、数据管理、数据设定和系统设置,应用程序结构如图5所示。
各模块功能简述如下:
(1)系统登录模块:完成用户身份合法性验证。
(2)试验运行模块:包括数据命令发送和数据采集两个部分。主要是控制6个开关量的开关状态来控制继电器从而控制试验的整个过程,并在试验过程中实时采集试验数据,在试验结束时将试验数据保存到数
- Linux嵌入式系统开发平台选型探讨(11-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)
- 嵌入式系统实时性的问题(06-21)
- 嵌入式实时系统中的优先级反转问题(06-10)
- 嵌入式Linux系统中MMC卡驱动管理技术研究(06-10)
- FPGA的DSP性能揭秘(06-16)