第5节 软件设计
本节介绍ACIM矢量控制应用程序的软件设计。CPU任务以如下形式描述:
应用软件是实时的由中断驱动运行。有三个周期性中断服务例程,执行主要的电机控制任务(图16)。
四定时器(TMR)通道0中断服务程序用来捕捉转速传感器产生边沿跳变事件。
四定时器(TMR)通道1中断服务程序每1ms执行一次。用于速度控制回路。
PWM重载中断服务程序每两个PWM重载周期执行一次,PWM重载周期为125μs。用于快速电流控制回路。
ADC扫描中断服务程序在一个周期内连续采样读取三次。它完成对DC总线电流采样的读取操作。
后台循环在应用程序的main函数中执行。它管理实时性要求不高的任务,如应用状态机和FreeMASTER通信。
5.2 应用程序状态图
应用程序状态图由四个主要的状态(ARP_INIT,ARP_STOP,ARP_RUN和ARP_FAULT)和五个子状态组成,这些子状态只能由ARP_RUN主状态调用。复位后,设置ARP_INIT状态,如果所有的必须应用初始化都已完成且没有任何错误,就进入ARP_STOP状态。这种状态等待速度被设置为非零值。当所有的调节都已完成(电机激发并启动),设置ARP_RUN_WASH状态,电机开始运转。根据 想要的速度,应用 程序 跳转到ARP_RUN_SPINNING_LOW和ARP_RUN_SPINNING_HIGH状态。
- ● 应用程序流程图
- ● 应用程序状态图
应用软件是实时的由中断驱动运行。有三个周期性中断服务例程,执行主要的电机控制任务(图16)。
四定时器(TMR)通道0中断服务程序用来捕捉转速传感器产生边沿跳变事件。
四定时器(TMR)通道1中断服务程序每1ms执行一次。用于速度控制回路。
PWM重载中断服务程序每两个PWM重载周期执行一次,PWM重载周期为125μs。用于快速电流控制回路。
ADC扫描中断服务程序在一个周期内连续采样读取三次。它完成对DC总线电流采样的读取操作。
后台循环在应用程序的main函数中执行。它管理实时性要求不高的任务,如应用状态机和FreeMASTER通信。

图16 软件流程图
5.2 应用程序状态图
应用程序状态图由四个主要的状态(ARP_INIT,ARP_STOP,ARP_RUN和ARP_FAULT)和五个子状态组成,这些子状态只能由ARP_RUN主状态调用。复位后,设置ARP_INIT状态,如果所有的必须应用初始化都已完成且没有任何错误,就进入ARP_STOP状态。这种状态等待速度被设置为非零值。当所有的调节都已完成(电机激发并启动),设置ARP_RUN_WASH状态,电机开始运转。根据 想要的速度,应用 程序 跳转到ARP_RUN_SPINNING_LOW和ARP_RUN_SPINNING_HIGH状态。



