在线情况
楼主
  • 头像
  • 级别
  • 门派
  • 职务总版主
  • 声望+9
  • 财富5
  • 积分3065
  • 经验390701
  • 文章6744
  • 注册2006-03-07
基于MSP430的液压测控器的设计
作者:姚长标, 徐莉萍, 任德志 河南科技大学机电学院
摘自:<<煤矿机械>>

0 前言
随着微电子技术的不断发展,出现了以单片机为主体,将计算机技术与测量控制技术集合在一起,组成了所谓的“智能化的测量控制系统”,即智能仪器- 测控器。
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 系统原理框图
  [imga]../../upload/2007/02/07/112656.gif[/imga]
该测控器包括: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 所示。
   [imga]../../upload/2007/02/07/112705.gif[/imga]
本系统的软件采用“自顶向下”的结构化程序设计方法,同时使用模块化编程,使软件可靠,通用性强且便于扩展与修改。主要包括系统初始化、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 移植进去,这样可以进一步增加系统的实时性、可靠性以及稳定性。

参考文献:
[1 ]沈建华,杨艳琴,翟骁曙. MSP430 系列16 位超低功耗单片机原理与应用[M] . 北京:清华大学出版社,2004.
[2 ]魏小龙. MSP430 系列单片机接口技术及系统设计实例[M] . 北京:北京航空航天大学出版社,2002.
[3 ]胡大可. MSP430 系列单片机C 语言程序设计与开发[M] . 北京:北京航空航天大学出版社,2003.
[4 ]TI 公司. MSP430f1xx data sheets. www. ti . com.
[5 ]陶永华,尹怡欣,葛芦生. 新型PID 控制及其应用[M] . 北京:机械工业出版社,2001.
[6 ]孙炎增,郑国强. 基于ADuC812 的环境温湿度测量仪设计和校准[J ] . 河南科技大学学报(自然科学版) ,2004 ,25(3) :24 - 27.
[7 ]张锦龙,刘越峰. 激光电源的单片机控制系统[J ] . 河南科技大学学报(自然科学版) ,2004 ,25(3) :60 - 62.
[8 ]罗杰红. 基于图形用户界面的软件测试技术[J ] . 河南科技大学学报(自然科学版) ,2004 ,25(3) :56 - 59.
[9 ]于庆丽,郭冰菁,赵书尚,等. 膀胱肿瘤灌注热化疗控温治疗仪系统的设计[J ] . 河南科技大学学报(自然科学版) ,2005 ,26 (5) :23- 26.
[10 ]郭晓玉,鲍慧,迟文广,等. MSP430 低功耗运行模式原理及应用[J ] . 单片机与嵌入式系统应用,2005 (12) :63 - 65.
[11 ]闫建国,孙克怡. MSP430 C 和汇编的嵌套[J ] . 单片机与嵌入式系统应用,2005 (12) :72 - 74.
[12 ] 王会良,梁长乐. 开放式运动控制卡2 种方案浅析[J ] . 煤矿机械,2005 ,26(10) :53 - 54.
[13 ]高正中,桑志锋,李世光. P89LP932 单片机在电能表中的应用设计[J ] . 煤矿机械,2005 ,26(10) :8 - 10.
[COLOR=#0000ff]欢迎发贴分享设计心得、开源DIY...[/COLOR]
Powered by LeadBBS 9.2 .
Page created in 0.2500 seconds with 5 queries.