浅谈数控直流电流源的设计与实现
部的采样模拟量相比较,以尽快找出外部信号模拟量的数字量,A/D转换的结果保存在SAR内。当10位A/D转换完成时,RDY=1,此时,通过读P_ADC_MUX_Data单元,可以获得10位A/D转换的数据。其IRQ1 中断服务程序的流程如图6所示。 图6 IRQ1 中断服务程序的流程图 PID算法主要用于修正实际输出的电流值和设定值的偏差,调节下一次的输出值,使输出更接近于设定值,提高精度。具体控制过程为:单片机经A/D转换芯片读出实际电流Ik,然后和设定的电流Is比较,得出偏差值Ek=Is-Ik,单片机根据Ek的大小,调用PID公式,计算出本次电流调节的增量ΔIk,然后根据前一次的D/A转换输出电流Iq-1,计算出本次的输出电流Iq。 离散增量PID的计算公式为 ΔIk=Kp[(Ek-Ek-1)+K1Ek+KD(Ek-2Ek-1+Ek-2)] =Kp(Ek-Ek-1)+K1’Ek+KD’(Ek-2Ek-1+Ek-2) 式中: K1’= Kp*K1, KD’=Kp * KD,Ek为本次采样的电流误差, Ek-1为上次采样电流误差, Ek-2为再次采样电流误差值。 结语 为了测试系统运行的准确性和可靠性,可以对设定量与反馈量进行测试,误差在0.01%之内,并且运行稳定,达到了预期目的,还增添了特色的音频播放设计。凌阳SPCE061A单片机在该系统中使用,使系统功能齐全、外围电路简单、输出精确,软件编程采用C和汇编混合编程来实现,集两种优点于一身,丰富了编程思想,体现了很大的优越性。 通过以上对各模块的分析,系统在工作过程中由SPCE061A单片机将被预置的电流通过换算进行D/A转换,以输出电压驱动V/I转换电路,并将该电流对应的电压通过闭环回路,经信号处理电路作A/D转换后输入单片机系统,通过PID算法调整电流输出。整个系统工作流程如图4所示。 图4 系统工作流程图 系统软件设计在凌阳十六单片机应用开发工具unSPIDE1.16.1中进行,采用凌阳单片机汇编语言和标准C语言对单片机进行编程,以实现各种功能。主要包括: (1)系统的初始化,包括各外围接口设备的初始化;(2)键盘输入;(3)D/A、A/D转换; (4)PID算法进行电流调整;(5)语音提示和电流显示。其主程序流程如图5所示。
- 高压直流电源技术应用初见成效(12-09)
- TILM5046直流电源转换评估参考设计方案(12-09)
- 直流电源屏(12-08)
- 一种新型直流电源监控系统的设计(12-07)
- 10T真空电弧炉用40kA直流电源的研制与应用(12-07)
- 试探影响真空自耗电极熔炼炉供电直流电源稳定性的因素(12-07)