1外存储芯片选型
由于C8051F060内部集成的外存存储器容量为4K,无法满足测试系统的要求,所以必须扩展外存容量。本方案中,考虑到C8051F060可扩展的外存容量为64K,因此选用IDT71V124SA12PH实现存储器的扩展。IDT71V124SA12PH是一款3.3V供电的、CMOS静态RAM,其存储容量为128K,完全符合测试系统的要求。C8051F060通过专用的EMIF接口配置外存储器,包括复用方式与非复用方式的选择、存储模式的选择以及时序的设置。
2模拟信号调理电路设计
测试仪中,模拟量采集模块分-5V~+5V、0~5V、0V~10V、4~20mA四种,而ADC1和ADC2的输入信号范围为0~VREF(VREF的值为2.5V),因此必须设计相应的信号调理电路进行转换处理。信号调理电路设计如图2所示。在图2所示的电路中,输入的±5V信号首先经LT1991降压后转换为±1.25V,LT1991是一款精准、增益可选放大器,通过改变引脚的接法可以获得不同的增益,当按图示的接法连接电路时,其增益为0.25。输入信号经LT1991降压后,再通过集成运算放大器LT1363同1.25V的基准电压做反相加法运算,将±1.25V的信号转换为0~-2.5V。最后经反相比例运算电路调整为0~2.5V。其中1.25V和2.5V的基准电压分别由电压基准芯片LT1790-1.25和LT1790-2.5产生。在图3所示的电路中,输入的0~5V信号首先经LT1991降压后转换为0~1.25V。经过降压的0~1.25V信号再经过由LT1363组成的放大电路放大为0~2.5V信号。在图4所示的电路中,由于LT1991可实现的最小增益为0.25,因此0~10V的信号经过LT1991后可直接衰减为0~2.5V。在图5所示的电路中,4~20mA的电流信号首先经过专用的芯片RCV420转换为0~5V的电压信号。再经过图5所示的0~5V信号调理电路转换为0~2.5V信号。数字信号调理电路设计转速的测量主要通过编码器实现,考虑到编码器输出方式一般为NPN型集电极开路输出,因此在设计信号接收电路时,必须要在编码器信号输出引脚上加一定的激励,否则无法实现信号的接收。编码器输出的信号经过激励后,接入隔离整形滤波电路,数字信号的隔离主要是通过光耦实现,笔者选用6N137光耦设计隔离电路。高速光耦6N137的前级输入电流为6.3~15mA,而加在编码器输出端口上的电压为5V,上拉电阻选为4.7k,因此如果直接将激励后的信号接入6N137,则无法使光耦导通。因此,必须将输出信号进行驱动。笔者选用74HC14作为驱动输入信号,该芯片内部集成六路反相施密特触发器,其输出电流可达25mA,完全符合系统的要求。编码器信号调理电路见图6所示。图6所示的电路中,编码器输出的A相信号经过74HC14后接入光耦6N137的输入级,光偶的输出信号在经过反相施密特触发器74HC14和电阻电容组成的整形滤波电路后送入单片机。反相施密特触发器的作用是将输入信号整形,电阻电容组成的滤波电路的作用是去除高频毛刺信号。考虑到输入信号的最高频率为500kHz,因此电阻R4的阻值选为200欧姆,电容C2的容值选为10nF,其信号截止频率=109/200×10=500kHz。由于本系统一共有16路模拟信号输入,8路数字量输入,而单片机内部的A/D转换器ADC0和ADC1以及可编程计数器阵列PCA0都只有1个信号输入通道,因此,必须设计模拟和数字多路选择电路进行多路信号的采集。考虑到单片机内部集成有2个A/D,因此模拟多路选择电路选用ADI公司的ADG1607芯片,该芯片内部有2个8选1的多路选择开关,供电电压最大可达18V,其应用电路如图7所示。数字多路选择电路以74LS151为核心,其应用电路如图8所示。
3通信接口电路设计
由于测试系统全部的数据显示工作都由上位机完成,因此必须保证下位机与上位机的通信功能。本系统采用RS232的通信方式。接口芯片选择MAXIM公司的MAX3232。MAX3232芯片是一款3.0~5.5V供电、低功耗、1Mbps、真RS232收发器。在使用时,只需要外接4只0.1μF的电容,就可以完成数据传输、通信的功能。
4软件设计
下位机软件设计下位机软件主要包括:系统初始化程序、读上位机命令程序、采样周期设置程序、模拟/数字通道设置程序、定时器T2中断服务程序、数据上传程序。下位机程序的流程如图9所示。上位软件设计在测试系统中,上位机与下位机需要进行通信。上位机发送控制指令给下位机,下位机采集数据结束后,上传数据给上位机。上位机接收到数据后,要对数据进行滤波,运算,并以曲线的形式进行显示。通过上位机测控软件可以方便实现上述功能。本测试系统利用虚拟仪器开发工具LabWindows/CVI开发了一套多功能测试系统上位机测控软件。本上位机软件的功能是,通过串口配置模块配置串口参数,与下位机进行通信;采集通道、采样周期等控制参数设置;发送控制指令,接收下位机采集到的数据;对数据进行物理量值转换、数据统计等运算处理以及曲线显示。为实现串口配置用到了OpenComConfig()函数,通过函数ComRd()与ComWrt()实现了数据的接收与发送。
5实验验证
为了验证方案的可行性,制作了采集系统样机并进行了系统实验。图10所示为使用高速凸轮机构进行实验的结果显示。
6结束语
该多功能测试仪提供了多个模拟量和数据量的高速采集端口,可通过串行总线与PC机连接进行数据交互,同时上位软件能够进行必要的数据转换以及数学统计计算。该测试仪能够完成所有机械传动参数的测试,并且具有温度、湿度等其它参数的测试潜力,具有一定的实用性和推广价值。
作者:金益韩 李树军 邓波 许元恒 单位:西北工业大学