基于DSP的铝电磁铸造磁场控制器的设计和实现
鉴于整个系统要实现的任务繁多,DSP各外设均被应用,对处理的实时性要求比较高,并且DSP(TMS320F2808)平台支持和能承载RTOS的开发,所以系统软件采用mC/OS-II设计。mC/OS-II是一种源码公开、可移植、可固化(ROMable)、可裁减(scalable)、可剥夺性(preemptive)、占先式的实时多任务操作系统[3,5]。整个系统软件分为两步:a.μ C/OS-II到DSP移植;b.μC/OS-II平台上软件的编写。μ C/OS-II到DSP移植只需要修改与处理器相关的OS_CPU.H、OS_CPU_C.C和OS CPU A.A三个文件的代码,移植的工作量相对较校由于μ C/OS-II是基于优先级的抢占式实时多任务操作系统,因此,在进行代码编写之前,应先确认系统的任务数,每个任务的优先级别,并为每个任务分配一定数量的堆栈空间以供运行时调用。也就是说,要首先对复合磁场控制系统软件的各功能模块进行管理。
根据复合磁场控制系统的特殊性,将控制软件分为0~9十个级别,表1为软件各功能模块以及分别对应的任务名称、任务优先级别。
控制程序的流程是:首先进行CPU及程序数据初始化;再进行操作系统初始化,主要完成任务控制块(TCB)初始化、TCB优先级表初始化、TCB链表初始化、事件控制块(ECB)链表初始化、空任务的创建等等;然后创建任务D TK ST,在任务D TK ST中再创建其他任务;最后启动多任务调度。在多任务调度开始后,启动时钟节拍源开始计时,此节拍源给系统提供周期性的时钟中断信号,实现延时和超时确认。当时钟中断来临时,系统把当前正在执行的任务挂起,保护现场,进行中断处理,判断有无任务延时到期,若有,则使该任务进入就绪态,并把所有进入就绪态的任务的优先级进行比较,通过任务切换去执行最高优先级的任务,若没有别的任务进入就绪态,则恢复现场继续执行原任务。任务之间通过信号量和消息邮箱进行通信,任务和中断之间通过消息邮箱进行通信。
在保证功能实现的基础上,为进一步提高系统的可靠性,增加了系统监控任务。该任务功能是监视系统其他任务的运行。被监视任务在其即将运行完毕时监视任务发送消息说明自身运行正常。被监视任务运行时,监视任务等待被监视任务给它发送消息,等待时间被设定为预计的任务正常运行所需的最大时间。若等待时间内监视任务收到消息,则认为发送消息的任务运行正常,依照各任务执行顺序的开始运行下一任务,监视任务等待下一任务发送的消息。若等待时间已过,监视任务仍未收到消息,则系统的时间管理函数将强行把监视任务视为就绪状态。因为监视任务的优先权是最高的,它将抢占对CPU的控制权并采取相应的纠错方案以保证系统的稳定运行。
(2)人机接口程序设计
人机接口包括单片机初始化、键盘扫描子程序、LCD子程序、SPI通信子程序。具体软件实现流程图如图7所示。LCD与单片机之间采用串行通信方式,针对LCD自身独特的串口通信协议,单片机利用I/O口模拟此协议,各数据线为提高通信稳定性和抗干扰能力均进行了一阶低通滤波处理(100W,100p)。在实际的键盘扫描程序里进行了软件防抖处理。
(3)高频双窄脉冲列软件设计
针对高频双窄脉冲列的具体要求和前面设计的原理框图,通过QuartusII软件平台,采用VHDL语言编程分别构造定时计数器、2选1开关(初始状态输出'1')、逻辑与门三个功能模块并按原理图连接,仿真结果能很好地达到所要求的前沿一致,仿真波形如图8所示。将所设计的程序下载到CPLD(Altera开发板)里面分别利用模拟示波器和虚拟仪器观察,达到了预期设计目的。虚拟仪器观察波形如图9所示。(仿真波形中:Duble clk-双窄脉冲;out_serial-高频双窄脉冲列;虚拟仪器波形中;$线(下)-双窄脉冲;绿色线(上)-高频双窄脉冲列。)
2 结语
本文针对铝电磁半连续铸造特殊复合磁场的控制要求,在铝电磁快速连续铸轧复合磁场控制器的基础上(已在福州瑞闽铝板带厂运行),设计了改进的磁场控制器。双核(DSP+单片机)的处理形式,便于整体功能的实现和提高系统的稳定与可靠性。利用CPLD实现大功率晶闸管的触发脉冲方式一高频脉冲列,稳定性高、应用灵活。鉴于特殊复合磁场控制器工作环境的恶劣,在PCB板的制作上充分考虑EMC和EMI的处理措施,如A/D信号分开、电源模块的良好设计和管理、大/小信号的分开、A/D采样信号线的处理、I/O的光电隔离等,经过测试,效果良好。
- 磁场检测仪的嵌入式软件和硬件协同开发模式(10-13)
- 浅谈磁传感器(12-20)
- 基于MC9S12XEP100的旋转磁场定向测距系统设计(06-26)
- 基于嵌入式操作系统的磁场测量系统的设计(11-22)
- 新型软件控制防夹电动车窗(12-27)
- 改进永磁同步电机转矩控制精度的措施(11-22)