4.4转速的测量和控制
C515C 单片机可通过初始化设置自动地发出PWM 脉冲波, 通过改变脉冲宽度来控制电枢的通电电流, 实现转速的控制。本系统中, 通过P1. 1口比较输出功能输出PWM 脉冲, 该脉冲信号控制与非门7426 的B 输入端。当P1. 1口输出低电平时, 使与非门输出高电平, 驱动电路中上侧的MOSFET 管T 1, T3, T5 被封锁; 当P1. 1 口输出高电平时, 与非门的输出状态取决于单片机的控制字, MOSFET 管T1, T3, T5 的导通与截止按正常换相状态进行。利用位置传感器的输出信号作为电动机速度的测量信号, 转速的测量主要是通过C515C 单片机P1. 2口的捕获功能来实现的。单片机可自动地捕获到位置传感器信号的2个上升沿, 可通过计算得出2个上升沿间隔的时间T , 及在T内计得的时钟脉冲φ的个数为m, 则通过公式f?1/T?1/m?, 即可求的电动机的转速。
?2?4.5转速设定
C515C 单片机具有标准的CAN 控制器接口和串行通信接口, 这2个接口是单片机与外界沟通的主要渠道。可以通过任意一个接口来传递速度的设定值。另外, 由于无刷直流电动机的转速与电动机的电压呈线性关系, 可以通过A/ D 转换进行转速的模拟设定。
4.6电流限制
本系统对电动机的电流限制是通过A/ D 转换来实现的。由于电流不能直接由A/ D 转换器转换, 因此必须先将其转变成电压信号。常规测量电流的方法多用在被测电路串联电阻, 直接测量电阻两端电压的方法, 但存在测量范围小、测量误差大等缺点。而测试系统采用电流/电压转换芯片MAX471, 其输出电压可直接输入到C515C 的A/ D 转换输入端, 克服了常规方法的缺点, 实现了电动机电流的高精度测量。当由A/ D 转换采集到的值大于预先设定好的最大值时, 通过软件控制封锁MOSFET 管, 让电动机停转。
4.7正反转控制
无刷直流电动机的正反转原理很简单, 只要改变开关管的通电顺序就可以
实现电动机的反转。本系统中, 正反转控制也是通过软件来完成的, 通过送反转的控制字到P5 口即可。电动机的反转控制字如表2 所列。
4.8系统软件设计
本系统的控制软件主要包括主程序、6个外部中断服务子程序、测速程序、换相程序、A/ D转换程序、脉宽调制程序、PI 调节程序和计数器/ 定时器中断程序等几部分。下面给出部分程序框图, 分别如图5、图6、图7 所示。其中, 控制算法采用的是积分分离的PI 算法, 设转速被控量的最大允许偏差为Δ , 当转速偏差e小于Δ 时, 采用PI调节算法, 而当e大于等于Δ 时则不再进行积分运算, 即把积分分离出去, 这样显著降低了被控量的超调量和过渡时间, 使调节器性能得到改善。
PI 调节器的脉冲传递函数为:
相关推荐: