最新新闻
我要投稿
联系电话:027-87592219/20/21转188
投稿邮箱:tb@e-works.net.cn
您所在的位置:首页 > 智库 > 智能装备

基于WinCE的数控系统掉电保护的设计及实现

发布时间:2013-07-21 作者:林桂清 甘明 袁正萍  来源:万方数据
数控机床加工时。若突然发生断电。要求数控系统能及时准确地保存一些重要参数,以便在来电时能在断点位置以相同的参数继续加工。本文介绍的掉电保护功能是基于三星S3C2410芯片和WindowsCE操作系统构建的嵌入式平台上实现的。

  数控机床加工时,若突然发生断电,常常要求数控系统能准确地保存一些重要参数,如加工速度、断电位置、主轴速度、加工行数等,以便在来电时能在断点位置以相同的参数继续加工。这不仅可缩短加工时间,更重要的是能保证产品质量。Windows CE是Microsoft为多种嵌入式系统而设计的一种紧凑、高效的模块化操作系统,支持多进程、多线程、抢先式多任务操作,能满足实时控制的要求。数控系统掉电保护是强实时性的任务,可以通过触发中断的方式来获得Windows CE操作系统的服务。

  本文介绍的方法是用ARM9系统芯片S3C2410在Windows CE构建的嵌入式平台上实现的。整个掉电保护实现的基本思路是:产生掉电信号、捕捉掉电信号、处理掉电信号以及掉电信息恢复和文件处理。

1 系统的硬件平台

  本系统采用三星公司的基于ARM9体系结构的S3C2410微处理器。SDRAM是一种易失性存储器作为程序的运行空间,类似于PC机的内存;Flash作为程序存储空间是非易失性的。程序运行过程中的数据往往缓存在SDRAM中,在系统掉电时必须将文件写到Hash中。

  本系统采用3.3 V和5 V的直流稳压电源,其中S3C2410及部分外围器件需3.3 V电源,另外部分器件需5 V电源供电。掉电保护电路采用MAX708S芯片,MAX708S具备掉电监控功能,电源电压低至4.5 V时,产生掉电信号,通知系统做好掉电保护工作(图2)。

系统总体框图
图1系统总体框图 
掉电监控电路
图2掉电监控电路

  正常工作时,Pn的电压Va=5×1.8/(4.7+1.8)=1.385 V。通过MAX708S模块输入电压PFI与1.25 V比较,这样MAX708S模块输出电压PFO为高电平。突然掉电时,5 V信号掉到4.5 V以下时,PFI的电压为4.5×1.8/(4.7+1.8)=1.246V<1.25 V。这样MAX708S模块输出电压为低电平,产生掉电中断预警信号,通过外部中断引脚EIN0产生中断,接下来可以进行一些重要数据保护。

2 掉电保护的软件实现

  2.1 Windows CE中断驱动设计

  数控系统掉电保护是强实时性的任务,可以通过触发中断的方式来获得Windows CE操作系统的服务。本驱动引入的中断主要是为了让CPU知道机床运动过程出现突然掉电的问题,应当及时保存一些重要数据。

  在Windows CE系统中,所有用户空间进程通过系统调用来请求内核服务,所有设备通过外部中断来请求内核服务,中断处理是流接口驱动程序中直接和硬件打交道的部分。中断处理过程如图3所示。中断发生后,信号发往异常处理器,并且中断支持处理器调用OAL函数OEMInterruptDisable,关闭来自该硬件的中断。中断服务例程ISR被内核调用并返回结果,且通过内核设置Event事件来触发中断服务线程IST。IST被唤醒后调用各种I/O函数完成中断处理并返回In.terruptDone通知内核。内核调用OEMInterruptDone重新开启中断。

中断处理流程图
图3中断处理流程图

2
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。