随着微电子技术的不断发展,出现了以单片机为主体,将计算机技术与测量控制技术集合在一起,组成了所谓的“智能化的测量控制系统”,即智能仪器- 测控器。
1 系统硬件设计
1. 1 主芯片MSP430F167
MSP430F167 单片机是美国TI 公司推出的超低功耗16 位单片机系列中的一种,低电压供电、宽工作电压范围1.8~3.6V。该芯片具有32 k 的FlashROM,1 kB RAM,采用串行在线编程方式,为用户编程和控制参数提供灵活的空间。且它内部的安全保密熔丝可使程序不被非法复制,它可以擦写10万次,有超强的抗干扰能力。MSP430F167 具有强大的中断功能及输出、功能选择、中断等多个寄存器,使得功能口和通用I/ O 口复用。在对同一个I/O口进行操作前,首先选择要实现的功能,这就增强了端口的功能和灵活性。该芯片具有丰富的外围功能,内部集成多通道12 位的A/D转换器、双12 位D/A同步转换、16位定时器TimerA和TmerB、硬件乘法器。有十分方便的开发调试环境,片内有JTAG 调试接口,只需要PC机和JTAG调试器即可进行开发。开发语言有C语言和汇编语言。
1. 2 测控系统硬件设计
设计的测控器系统原理框图如图1 所示。该系统主要有以下模块组成:主控制器、电源模块、A/D模块、D/A和PWM模块、LCD显示和按键模块。
图1 系统原理框图
该测控器包括:4 路压力信号、2路位移信号和2路电流信号的A/ D采样,D/A输出2路电流信号,通过功率放大器控制2个伺服阀,输出2 路PWM信号通过滤波后变成正(余) 弦波,作为颤振信号,通过电位器可以方便地调整幅值,用来防止伺服阀的死区,另外人机接口由6 个按键和LCD 显示组成,按键可以实现上下左右移动、数值的加减和设定、一个功能键和确定键。LCD 的使用使人机界面非常友好灵活,方便了工人的操作和使用。
(1) 主控制器
本模块采用TI的16位超低功耗单片机MSP430F167 ,程序存储器32KB+256B flash ,数据存储器1KBRAM,其内部集成了多种外围设备。
(2) 电源模块
系统中电源通过广州金升阳的VRA2412D-5W提供±12V给运放供电, 同时通过金升阳的WRB2405S-2W提供5V电压给液晶提供电源和背光电源,5V电压通过78L33提供3.3V给MSP430使用。(3)A/D模块图1 中运算放大器采用AD 公司的OP497 ,它是采用±12V供电的四运放。因为传感器采样的信号是0~10V,而MSP430的A/D只能接受0~2.5V的电压,所以采用电阻分压再通过运算放大器跟随输入MSP430F167的P6口,为了保护430单片机出现负电压的情况,在跟随器前加上bat54s保护电路使输入控制在0~3.3V,430 的ADC12 内置参考电源,而且参考电压可通过软件选择2.5V或1.5V,也可以采用外部参考电源。
(4)D/A和PWM模块
图1 中D/A 经功率放大器后输出。采样信号经过PID 控制算法通过单片机的D/A模块输出,再经过功率放大器输出±100mA电流控制伺服阀,同时电流经A/D后送LCD显示。功率放大器采用的是BB 公司的OPA547T ,它是一种宽电压输入大电流输出并且带可调节电流保护的功放,电源用±12V,输出电流在0~750mA可调,通过配置电阻调节。通过MSP430输出PWM信号再经二阶RC 滤波可以得到正(余)弦波作为颤振信号,用电位器可以调节颤振信号的幅值。可以克服库仑摩擦力的影响,从而防止伺服阀出现死区。原来的纯模拟电路没有加颤振信号,系统的零点漂移严重,伺服阀运动不平稳,而且由于运算放大器自身的漂移使系统工作更加不平稳。
(5)LCD 显示和按键模块液晶显示选用的是金鹏公司的OCMJ中文160×80的模块,OCMJ中文模块系列液晶显示器可以显示汉字、ASCII码、点阵图形和变化曲线的同屏显示,并可通过字节点阵图形方式造字,满屏可以显示5行10列50个汉字。它内部自带16×16点阵国标一级简体汉字和ASCII8×8(半高)和8×16(全高)点阵英文字库,输入区位码或ASCII 码即可实现文本显示,非常方便。按键采用的是薄膜开关式按键,可以使仪表的面板简捷、美观。
2 系统的软件设计
软件集成开发环境由著名的IAR公司提供的Embedded Workbench for 430 V3.10A。其特点有:①通用性。可以在Windows环境下运行;分层的项目表示;直观的用户界面;工具与编辑器全集成;全面的超文本帮助。②编辑器。可以同时编辑汇编和C语言源文件;汇编程序和C 语言程序的句法用文本格式和颜色区别显示;强有力的搜索和置换命令,而且可以多个文件搜索;从出错列表直接跳转到出错的相关文件的相关语句;可以设置在出错语句前标志;圆括号匹配;自动缩进,可以设置自动缩进的空格;每个窗口的多级取消与恢复。系统的软件框图
如图2 所示。
本系统的软件采用“自顶向下”的结构化程序设计方法,同时使用模块化编程,使软件可靠,通用性强且便于扩展与修改。主要包括系统初始化、A/D转换、PID控制、D/A转换、键盘管理程序、LCD显示管理程序、PWM的输出等。
(1) 初始化。主要是硬件初始化、I/O口的配置和液晶初始化。
(2) 数据采集处理程序。主要是对传感器来的信号进行采集和A/D转换,送PID处理,再通过D/A 输出。
(3) 键盘管理程序。采用非编码键盘的程序控制扫描方式。程序有以下功能:判别键盘上有无键闭合,消除键的抖动,判别闭合键的键号,并转入相应的键处理程序,进行键功能调用。
(4)LCD 显示管理程序。主要包括液晶的驱动程序、用户界面的输入和显示等。
(5) PWM输出。通过定时器B 内部寄存器可以方便地输出占空比可调的方波。
MSP430 FLASH型都是由n 段主存储器与2 段信息存储器组成的,信息存储器为每段128字节,分别为信息存储器A和B,主存储器每段为512字节。所有型号器件的信息存储器地址相同,从1000H~10FFH,可以作为EEPROM使用。该系统中的系统初始化的数据都放在A 段中,PID 参数、上次结束时的数据等都可以保存在这一段中,从而使系统具有**的功能。6个按键功能分别是上下、加减、模式选择和功能确定,可以通过按键给PID 设定控制参数、位移设定、颤振频率和波形的设定、人机界面的转换和确定等。
3 结语
系统经过初步调试,基本能够实现构想的功能,运行比较平稳可靠,伺服阀运动灵活平滑。系统在工作中铣刀工作平稳、灵活,没有出现卡刀等现象,切削出的铜管表面光滑,控制精度能够达到±011mm。系统下一步打算换一种2KBRAM的MSP430F169 或更大RAM 的芯片,把嵌入式操作系统uC/OS-II 移植进去,这样可以进一步增加系统的实时性、可靠性以及稳定性。 |