- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
HIRFL-CSR真空控制系统的设计及其应用
导语:?介绍了以微控制器MSP430F149为核心设计的真空控制模块,给出了在HIRFL-CSR真空控制系统中的硬件电路和软件程序。通过RS485总线和Intranet实现了对模块连接的各种真空设备的实时远程测控 摘 要:介绍了以微控制器MSP430F149为核心设计的真空控制模块,给出了在HIRFL-CSR真空控制系统中的硬件电路和软件程序。通过RS485总线和Intranet实现了对模块连接的各种真空设备的实时远程测控。关键词:MSP430; 真空设备; 控制系统引言 国家“九五”重大科学工程项目HIRFL-CSR(兰州重离子加速器冷却储存环工程)主环真空系统全线非标部件和标准设备的安装、检漏在2004年初已经完成,经烘烤后真空度达到10-11mbar的超高真空环境。放置于加速器注入线和主环真空腔体和束运线上的各类高/低真空泵达几百个, 需要检测和控制的真空计和高真空电源也近百个, 为了实现远程开/关各种真空计和高真空电源,定时检测真空计读数和状态,并需要为中央控制中心提供异常(定值点越界)报警和提示。运行时, 超高真空系统任何一处束流线发生真空故障就会造成束流丢失、仪器设备损坏、加速器停运的严重后果。因此加速器必须具有响应快速、安全可靠的真空保护与控制系统。1 系统硬件组成 本控制系统的核心是自主设计的可以兼容各种真空计,真空泵和高真空电源要求的基于MSP430F149的控制模块VAC400。每个模块连接一台或多台真空计或真空泵,用来采集它们的模拟/数字量和状态码,数据经RS-485串行总线上传到中央控制机进行在线监视/显示,并把中央控制机发送来的测控命令直接作用于真空计,电源或电磁阀,完成巡检测控。每个VAC400都有一个唯一的标识码(或地址),每个RS-485线上最多可以连接32个VAC400模块, 每次通信周期中,只容许一个下位机与上位机通讯,通讯连接采用握手方式, ADC采集的数据不断自动更新并发送给上位机读出显示。VAC400与真空计通信速率为 9600bps。INTRANET用户通过访问上位机来实现对特定真空计特定功能的操作。2 系统软件设计 系统软件的设计关键是要针对不同的控制对象真空计IM520,真空计IT23和真空泵GST-03L这些不同仪器设备自身的控制命令进行设计,而且需要输出与被控仪器实际显示的数据类型和单位相一致的结果。同时当中央控制中心发出本设备其他操作命令或者其他设备的操作命令时,需能产生中断执行,并获取相应的数据。针对不同的被控设备,我们改变相应的主函数部分注入模块,从而实现了复杂多变的系统任务。 2.1 真空计IM520控制部分程序 系统需获取真空计IM520的真空值数据,而真空值与电压值成复杂的函数关系,由于MSP430无法实现复杂函数的计算,所以用 MSP430只显示电压值,后续转换需要用其他软件设计。MSP430的ADC寄存器可显示十六进制整数,人机交互界面需要直观的带三位小数的十进制浮点数的电压值,下面的ADC函数就是实现这一功能: void ADC(void) { unsigned tra[4]; int j; TXBUF1=ADDRESS; //输出模块名称并在其后加“;”和空格 while ((UTCTL10x01)==0); TXBUF1=58; while ((UTCTL10x01)==0); TXBUF1=‘ ‘; while ((UTCTL10x01)==0); if(Buffer[2]==‘r‘)//判断是否输入读取 ADC数据的命令 { for(i=0;i=0;j——) { TXBUF1=Hex2ASCII(ADbit[j]); while ((UTCTL10x01)==0); } TXBUF1=‘ ‘; //输出空格与下一组 ADC数据相间隔 while ((UTCTL10x01)==0); } TXBUF1=13; //显示数据之后换行,执行下一次循环显示 while ((UTCTL10x01)==0); ADC12CTL0 |= 0x02; } // 使能ADC转换 } 真空计监视的真空设备的数据需要自动传送给中央控制中心,以便实现实时监控。下面程序部分实现以MSP430 F149为核心的控制模块自动将数据传送给远控的计算机。 void main(void) { int i=0,j=0; WDTCTL=WDTPW+WDTHOLD; //停止看门狗 _EINT(); //开总中断 Init(); //对ADC进行初始化 ADC12CTL0 |= 0x0
原创力文档


文档评论(0)