光电伺服控制软件调试工具顶层框架设计与应用

    廖洪波+朱文亮+王永宏+范大鹏

    摘 要:光电伺服控制软件作为光电稳定平台的重要组成之一,如何进行有效调试是工程技 术人员越来越关注的问题。针对光电伺服控制软件的特点,分析了其在调试过程中存在的用传统 调试方法难以解决的问题。基于这些问题,提出了一种专门针对此种软件调试的顶层方案,论述 了调试工具的功能需求和设计的关键问题,采用模块化编程思想,构建了调试工具的顶层框架。

    关键词:光电伺服控制软件;调试工具;框架设计

    中图分类号:TP311.56 文献标识码:A 文章编号:1673-5048(2014)01-0057-04

    TheTopFrameworkDesignandApplicationofDebugging ToolforOptoElectronicServoControlSoftware

    LIAOHongbo,ZHUWenliang,WANGYonghong,FANDapeng

    (NationalUniversityofDefenseTechnology,Changsha410073,China)

    Abstract:Optoelectronicservocontrolsoftware(OESCS)isanimportantcomponentoftheopto electronicstabilizedplatform,engineerspaymoreandmoreattentiontothedebuggingproblem.Thispa perstartsfromtheanalysisofthecharacteristicsofOESCS,theproblemsofOESCSdebuggingprocess whichisdifficulttosolvebyusingtraditionalmethodarestated.Accordingtotheseproblems,thespecial isticdebuggingtoolforOESCSisdesigned.Thefunctiondemandanddesignessentialsarediscussed,and thetopframeworkofdebuggingtoolisconstructedusingthemodularprogrammingidea.

    Keywords:optoelectronicservocontrolsoftware;debuggingtool;frameworkdesign

    0 引 言

    光电稳定平台的目的在于隔离载体扰动,实 现光电探测器视轴稳定和精确瞄准等功能。光电 伺服控制系统作为平台的核心组成之一,它的实 现直接关系到光电稳定平台是否能够正常工 作[1-2]。随着计算机技术的发展,数字伺服控制系 统越来越多地应用于光电伺服控制中。相对于模 拟控制而言,数字控制的硬件结构简单,容易标准化,具有很高的噪声容限,可通过软件实现更为复 杂的控制律[3-5]。数字伺服控制系统是通过软件编 程的方法实现各种控制算法和各项控制功能,从 而形成一套针对目标对象的伺服控制软件,但此 软件从研制开发到形成产品,需要经过反复的调 试、测试和验证过程,需要花费工程技术人员大量 的时间和精力,还不一定取得比较好的效果。因此 为了把工程技术人员从繁重的程序调试工作中解 放出来,同时实现对软件各项功能的测试,需要开 发一种针对此种软件的专用调试工具。

    本文从分析光电伺服控制软件调试过程中存 在的问题角度出发,提出解决问题的方案,即设计 一种服务于此种软件调试工作的调试工具。通过对调试工具的功能需求和设计关键问题分析,构 建其顶层结构框架,为调试工具的具体实现提供 软件框架设计方面的依据。

    1 光电伺服控制软件调试中的问题分析

    1.1 软件特点分析

    光电伺服控制系统中的电流环回路,由模拟 控制器实现;位置预定回路、速度控制回路、陀螺 稳定控制回路和跟踪控制回路都由数字控制器实 现。目前,在数字控制器的设计过程中,dSPACE 半实物仿真系统由于实时性、控制器设计和验证 快速性等优异性能,在光电伺服控制系统开发中 得到越来越广泛的应用,已成为光电伺服控制系 统中各控制回路控制器设计和验证必不可少的工 具。然而,光电伺服系统各控制回路的实现是以 DSP(TMS320F2812)主控芯片为硬件基础,在集成 开发环境(CCS)中基于C语言的编程实现的,并 通过调试-修改-调试的过程,形成一套完整的 为光电稳定平台伺服控制服务的软件系统,如图1 所示。

    图1中,各控制回路控制器设计和验证是在 dSPACE半实物仿真系统中完成,以各回路控制器 为基础的光电伺服控制各项功能的实现是在DSP 中编程实现的。虽然光电伺服系统所需功能根据 任务需求有所不同,但它们通常都包括以下几个 主要功能:稳像功能,隔离载体扰动对图像的影 响;位置锁定功能,根据控制指令,使平台视轴指 向预定的角度位置;搜索功能,根据控制指令,在 惯性空间内按照设定方式和范围运动并搜索目标; 跟踪功能,让平台自动跟踪目标运动,实现对目标的定位和瞄准;上电自检和故障诊断功能,检测各 传感器工作是否正常,实现对平台信息的初始化, 初步实现对平台常见故障的自诊断;通信功能,实 现平台与上位机或者其他信息节点之间的数据交 换。为了降低编程的复杂性,增加程序的通用性, 采用模块化的编程思想[1-2],依据各功能需求,对 软件结构进行模块化划分,如图2所示。

    1.2 软件调试过程中存在的问题

    通过对光电伺服控制软件特点的分析发现, 在光电伺服控制软件的调试过程中存在以下几个 方面亟待解决的问题:

    (1)在软件调试过程中,为了检测各传感器 的信号是否正常,需要在不中断程序运行的情况 下对传感器信号进行实时监测。同样,光电伺服控 制系统由于多任务需求,存在多功能工作模式,面 临在不同工作模式之间进行切换的问题,需要在 线修改DSP软件程序中的指定变量,用传统的调 试手段难以得到圆满解决;

    (2)光电伺服控制系统的调试是在工厂或者 实验室环境下完成的,而实际使用环境较调试环 境复杂很多,也更为恶劣,需要在调试环境下建立 一套模拟外部工作环境的硬软件系统对光电伺服 控制系统进行测试,故存在与外部硬软件环境之 间进行实时数据交换的问题。

    由于光电伺服控制软件调试过程中存在的问 题有很强的专业性,用传统的软件调试方法很难 得到圆满解决,故本文提出了设计一种针对此软 件的调试工具的设想,以弥补其调试过程中存在 的不足。

    2 调试工具顶层框架设计

    2.1 功能需求分析

    调试工具的功能需求是通过被调试软件的任务 需求确定的,作为一种专用于光电伺服控制软件调试工作的工具,它应满足以下三个方面的功能:

    (1)各回路控制器性能验证功能。包括位置 预定回路、陀螺稳定回路和跟踪回路的控制性能 测试和验证;

    (2)各种传感器信号和控制指令信号实时显 示功能。传感器信号包括位置传感器、测速传感 器、陀螺和图像跟踪器等,控制指令包括光电伺服 控制系统测试中常用的不同频率和幅值的正弦和 方波信号;

    (3)辅助功能。包括系统自检、被调试软件的 故障监测与诊断、数据信息保存、陀螺漂移修正等。

    同样按照模块化编程的思想,对上述每个功 能进行细化,构建调试工具软件顶层框架,如图3 所示。由于光电稳定平台多采用两轴结构,故调试 工具的每种调试功能需要实现对两轴的独立调试 和协同调试,在定义各轴变量时应该把不同的轴 单独定义。调试工具作为一个开放的软件系统,当 被调试软件有新的功能需要调试时,只需在已有 的软件框架下加入新的调试功能模块即可。

    2.2 关键问题分析

    目前,大多数光电伺服控制软件是在以DSP 为基础的硬件上实现的,DSP的软件开发与调试 是在CCS集成开发环境中完成,而调试工具往往 是基于另一种软件开发与调试环境,这两种硬软 件环境之间的实时数据交换是实现各项调试功能 的基础,如图4所示。

    在调试工具的设计过程中,一方面,由于光电 伺服控制系统的伺服周期一般选择在1ms左右, 每完成一个伺服周期,系统的各种状态信息更新 一次。为了能够实时观测伺服控制系统各种状态 信息的变化,调试工具与光电伺服控制软件之间 的数据交换频率不能太低,小于或者等于伺服周 期为最优。另一方面,调试工具与光电伺服控制软 件之间进行数据交换时有可能包含几种数据信息, 这要求两者之间进行一次数据交换的信息容量足 够大。

    3 实例应用

    基于Matlab软件环境下编写的某光电伺服控 制软件调试工具采用了上面提出的框架设计思想, 调试工具的界面如图5所示。

    调试工具界面主要由数据显示、控制命令发 送、曲线绘制以及操作控制按钮组成。按照调试工 具顶层框架设计的思想,数据显示主要实现了各 个传感器数据信息实时显示功能。控制命令发送 主要实现了电机使能、运动轴选择、各个控制回路 模式切换和激励信号参数设置的功能。曲线绘制 主要实现了当前所需要观测的传感器信息和激励 信号的实时绘图功能。操作控制按钮实现了界面 的运行、暂停和停止功能。

    调试工具与光电伺服控制软件之间的实时数 据交换是通过4个RTDX通道完成的,一个RTDX 通道一次可以交换的数据为1012个字符类型的数 据,而完成数据交换的时间不受限制,因此保证了 数据交换的实时性和信息量大的要求。

    4 结 论

    本文针对光电伺服控制软件调试过程中难以 用现有调试手段解决的问题,提出了设计一种光电伺服控制软件专用调试工具的设想。通过对光 电伺服控制软件特点分析、调试工具的功能需求 和设计中关键问题的分析,采用模块化编程思想, 构建了调试工具软件顶层框架。实例应用表明:顶 层框架的设计为调试工具的具体实现提供了技术 指导。

    参考文献:

    [1]高新烨.光电搜跟系统控制软件的模块化设计[D].长 沙:国防科学技术大学,2011.

    [2]李杰.光电侦察平台软硬件模块化设计[D].长沙:国防科学技术大学,2010.

    [3]朱华征,范大鹏,马东玺,等.基于双DSP的导引头数 字控制系统设计[J].光电工程,2009,36(6).

    [4]马东玺,范大鹏,张连超.数字伺服控制系统软件模块 化设计[J].兵工自动化,2005,24(2).

    [5]文顺安.一种飞行控制数字信号处理系统设计[J].航 空兵器,2006(6).

    [6]张文山,刘增明.基于DSP/BIOS的空空导弹飞控软件 仿真[J].航空兵器,2007(3).

    [7]钱东海,余小鹏.嵌入式运动控制系统中软件的设计 [J].制造业自动化,2007,29(9).

    (2)光电伺服控制系统的调试是在工厂或者 实验室环境下完成的,而实际使用环境较调试环 境复杂很多,也更为恶劣,需要在调试环境下建立 一套模拟外部工作环境的硬软件系统对光电伺服 控制系统进行测试,故存在与外部硬软件环境之 间进行实时数据交换的问题。

    由于光电伺服控制软件调试过程中存在的问 题有很强的专业性,用传统的软件调试方法很难 得到圆满解决,故本文提出了设计一种针对此软 件的调试工具的设想,以弥补其调试过程中存在 的不足。

    2 调试工具顶层框架设计

    2.1 功能需求分析

    调试工具的功能需求是通过被调试软件的任务 需求确定的,作为一种专用于光电伺服控制软件调试工作的工具,它应满足以下三个方面的功能:

    (1)各回路控制器性能验证功能。包括位置 预定回路、陀螺稳定回路和跟踪回路的控制性能 测试和验证;

    (2)各种传感器信号和控制指令信号实时显 示功能。传感器信号包括位置传感器、测速传感 器、陀螺和图像跟踪器等,控制指令包括光电伺服 控制系统测试中常用的不同频率和幅值的正弦和 方波信号;

    (3)辅助功能。包括系统自检、被调试软件的 故障监测与诊断、数据信息保存、陀螺漂移修正等。

    同样按照模块化编程的思想,对上述每个功 能进行细化,构建调试工具软件顶层框架,如图3 所示。由于光电稳定平台多采用两轴结构,故调试 工具的每种调试功能需要实现对两轴的独立调试 和协同调试,在定义各轴变量时应该把不同的轴 单独定义。调试工具作为一个开放的软件系统,当 被调试软件有新的功能需要调试时,只需在已有 的软件框架下加入新的调试功能模块即可。

    2.2 关键问题分析

    目前,大多数光电伺服控制软件是在以DSP 为基础的硬件上实现的,DSP的软件开发与调试 是在CCS集成开发环境中完成,而调试工具往往 是基于另一种软件开发与调试环境,这两种硬软 件环境之间的实时数据交换是实现各项调试功能 的基础,如图4所示。

    在调试工具的设计过程中,一方面,由于光电 伺服控制系统的伺服周期一般选择在1ms左右, 每完成一个伺服周期,系统的各种状态信息更新 一次。为了能够实时观测伺服控制系统各种状态 信息的变化,调试工具与光电伺服控制软件之间 的数据交换频率不能太低,小于或者等于伺服周 期为最优。另一方面,调试工具与光电伺服控制软 件之间进行数据交换时有可能包含几种数据信息, 这要求两者之间进行一次数据交换的信息容量足 够大。

    3 实例应用

    基于Matlab软件环境下编写的某光电伺服控 制软件调试工具采用了上面提出的框架设计思想, 调试工具的界面如图5所示。

    调试工具界面主要由数据显示、控制命令发 送、曲线绘制以及操作控制按钮组成。按照调试工 具顶层框架设计的思想,数据显示主要实现了各 个传感器数据信息实时显示功能。控制命令发送 主要实现了电机使能、运动轴选择、各个控制回路 模式切换和激励信号参数设置的功能。曲线绘制 主要实现了当前所需要观测的传感器信息和激励 信号的实时绘图功能。操作控制按钮实现了界面 的运行、暂停和停止功能。

    调试工具与光电伺服控制软件之间的实时数 据交换是通过4个RTDX通道完成的,一个RTDX 通道一次可以交换的数据为1012个字符类型的数 据,而完成数据交换的时间不受限制,因此保证了 数据交换的实时性和信息量大的要求。

    4 结 论

    本文针对光电伺服控制软件调试过程中难以 用现有调试手段解决的问题,提出了设计一种光电伺服控制软件专用调试工具的设想。通过对光 电伺服控制软件特点分析、调试工具的功能需求 和设计中关键问题的分析,采用模块化编程思想, 构建了调试工具软件顶层框架。实例应用表明:顶 层框架的设计为调试工具的具体实现提供了技术 指导。

    参考文献:

    [1]高新烨.光电搜跟系统控制软件的模块化设计[D].长 沙:国防科学技术大学,2011.

    [2]李杰.光电侦察平台软硬件模块化设计[D].长沙:国防科学技术大学,2010.

    [3]朱华征,范大鹏,马东玺,等.基于双DSP的导引头数 字控制系统设计[J].光电工程,2009,36(6).

    [4]马东玺,范大鹏,张连超.数字伺服控制系统软件模块 化设计[J].兵工自动化,2005,24(2).

    [5]文顺安.一种飞行控制数字信号处理系统设计[J].航 空兵器,2006(6).

    [6]张文山,刘增明.基于DSP/BIOS的空空导弹飞控软件 仿真[J].航空兵器,2007(3).

    [7]钱东海,余小鹏.嵌入式运动控制系统中软件的设计 [J].制造业自动化,2007,29(9).

    (2)光电伺服控制系统的调试是在工厂或者 实验室环境下完成的,而实际使用环境较调试环 境复杂很多,也更为恶劣,需要在调试环境下建立 一套模拟外部工作环境的硬软件系统对光电伺服 控制系统进行测试,故存在与外部硬软件环境之 间进行实时数据交换的问题。

    由于光电伺服控制软件调试过程中存在的问 题有很强的专业性,用传统的软件调试方法很难 得到圆满解决,故本文提出了设计一种针对此软 件的调试工具的设想,以弥补其调试过程中存在 的不足。

    2 调试工具顶层框架设计

    2.1 功能需求分析

    调试工具的功能需求是通过被调试软件的任务 需求确定的,作为一种专用于光电伺服控制软件调试工作的工具,它应满足以下三个方面的功能:

    (1)各回路控制器性能验证功能。包括位置 预定回路、陀螺稳定回路和跟踪回路的控制性能 测试和验证;

    (2)各种传感器信号和控制指令信号实时显 示功能。传感器信号包括位置传感器、测速传感 器、陀螺和图像跟踪器等,控制指令包括光电伺服 控制系统测试中常用的不同频率和幅值的正弦和 方波信号;

    (3)辅助功能。包括系统自检、被调试软件的 故障监测与诊断、数据信息保存、陀螺漂移修正等。

    同样按照模块化编程的思想,对上述每个功 能进行细化,构建调试工具软件顶层框架,如图3 所示。由于光电稳定平台多采用两轴结构,故调试 工具的每种调试功能需要实现对两轴的独立调试 和协同调试,在定义各轴变量时应该把不同的轴 单独定义。调试工具作为一个开放的软件系统,当 被调试软件有新的功能需要调试时,只需在已有 的软件框架下加入新的调试功能模块即可。

    2.2 关键问题分析

    目前,大多数光电伺服控制软件是在以DSP 为基础的硬件上实现的,DSP的软件开发与调试 是在CCS集成开发环境中完成,而调试工具往往 是基于另一种软件开发与调试环境,这两种硬软 件环境之间的实时数据交换是实现各项调试功能 的基础,如图4所示。

    在调试工具的设计过程中,一方面,由于光电 伺服控制系统的伺服周期一般选择在1ms左右, 每完成一个伺服周期,系统的各种状态信息更新 一次。为了能够实时观测伺服控制系统各种状态 信息的变化,调试工具与光电伺服控制软件之间 的数据交换频率不能太低,小于或者等于伺服周 期为最优。另一方面,调试工具与光电伺服控制软 件之间进行数据交换时有可能包含几种数据信息, 这要求两者之间进行一次数据交换的信息容量足 够大。

    3 实例应用

    基于Matlab软件环境下编写的某光电伺服控 制软件调试工具采用了上面提出的框架设计思想, 调试工具的界面如图5所示。

    调试工具界面主要由数据显示、控制命令发 送、曲线绘制以及操作控制按钮组成。按照调试工 具顶层框架设计的思想,数据显示主要实现了各 个传感器数据信息实时显示功能。控制命令发送 主要实现了电机使能、运动轴选择、各个控制回路 模式切换和激励信号参数设置的功能。曲线绘制 主要实现了当前所需要观测的传感器信息和激励 信号的实时绘图功能。操作控制按钮实现了界面 的运行、暂停和停止功能。

    调试工具与光电伺服控制软件之间的实时数 据交换是通过4个RTDX通道完成的,一个RTDX 通道一次可以交换的数据为1012个字符类型的数 据,而完成数据交换的时间不受限制,因此保证了 数据交换的实时性和信息量大的要求。

    4 结 论

    本文针对光电伺服控制软件调试过程中难以 用现有调试手段解决的问题,提出了设计一种光电伺服控制软件专用调试工具的设想。通过对光 电伺服控制软件特点分析、调试工具的功能需求 和设计中关键问题的分析,采用模块化编程思想, 构建了调试工具软件顶层框架。实例应用表明:顶 层框架的设计为调试工具的具体实现提供了技术 指导。

    参考文献:

    [1]高新烨.光电搜跟系统控制软件的模块化设计[D].长 沙:国防科学技术大学,2011.

    [2]李杰.光电侦察平台软硬件模块化设计[D].长沙:国防科学技术大学,2010.

    [3]朱华征,范大鹏,马东玺,等.基于双DSP的导引头数 字控制系统设计[J].光电工程,2009,36(6).

    [4]马东玺,范大鹏,张连超.数字伺服控制系统软件模块 化设计[J].兵工自动化,2005,24(2).

    [5]文顺安.一种飞行控制数字信号处理系统设计[J].航 空兵器,2006(6).

    [6]张文山,刘增明.基于DSP/BIOS的空空导弹飞控软件 仿真[J].航空兵器,2007(3).

    [7]钱东海,余小鹏.嵌入式运动控制系统中软件的设计 [J].制造业自动化,2007,29(9).