基于DSP的空间光通信APT运动控制箱设计
4运动控制箱软件设计
4.1系统初始化设置
DSP上电复位后要进行的初始化设置主要包括:系统设置、I/O端口设置、PWM(脉宽调制电路)输出设置、串口通信设置以及LCD初始化设置。其中,液晶初始化需设置:图形区首地址和宽度、文字区首地址和宽度,光标形状和是否闪烁、光标指针、地址指针。为了保证显示效果,还需执行一次清屏操作。由于清屏操作时间较长,将自动触发看门狗,导致系统初始化无法继续。故编写复位和中断向量文件vectors.asm,使DSP上电后直接进入DisableWatchdog()函数。该函数的功能为禁止看门狗,并跳转到复位向量处。下面给出了该函数的核心代码:
4.2扫描算法实现
扫描算法的核心是如何在最短时间内扫描覆盖信标光的所有可能出现的区域。常见的扫描算法主要包括矩形扫描、螺旋扫描、矩形螺旋扫描、玫瑰形扫描及李萨如形扫描等。综合考虑扫描性能与DSP实现难度,确定采用光栅螺旋扫描算法和蜂窝螺旋扫描算法。这两种算法都能以较小的扫描步数实现大范围的扫描策略,扫描重叠区域小,可在短时间内实现高性能扫描,但算法实现相对复杂。以蜂窝螺旋扫描算法为例,其蜂窝螺旋扫描排列方式如图4所示。
图中小圆代表一个扫描子区,以蜂窝状六边形方式重叠。每个子区的直径为信标光发散角大小,从而得到相邻两个子区圆心间距离,即光栅螺旋扫描算法的扫描步长。根据该扫描步长分别得到水平和俯仰两个方向电机执行步长,从而通过控制电机运动实现蜂窝螺旋扫描算法,其程序代码如下:
4.3精确跟踪实现
评论