首页> 中国专利> 望远镜控制系统时变时滞问题的解决方法

望远镜控制系统时变时滞问题的解决方法

摘要

望远镜控制系统时变时滞问题的解决方法:设计绝对时间计算程序;利用UMAC内部的高精度时钟;作为一个高优先级PLC程序(甚至最高优先级的PLC0程序)在UMAC后台运行;程序从上位机GPS处得到绝对时间的初值T

著录项

  • 公开/公告号CN102809961A

    专利类型发明专利

  • 公开/公告日2012-12-05

    原文格式PDF

  • 申请/专利号CN201210309250.4

  • 发明设计人 杨世海;

    申请日2012-08-27

  • 分类号G05B19/418;

  • 代理机构江苏致邦律师事务所;

  • 代理人栗仲平

  • 地址 210042 江苏省南京市板仓街188号

  • 入库时间 2023-12-18 07:36:17

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-08-16

    未缴年费专利权终止 IPC(主分类):G05B19/418 授权公告日:20140917 终止日期:20180827 申请日:20120827

    专利权的终止

  • 2014-09-17

    授权

    授权

  • 2013-01-30

    实质审查的生效 IPC(主分类):G05B19/418 申请日:20120827

    实质审查的生效

  • 2012-12-05

    公开

    公开

说明书

技术领域

本发明涉及一种控制系统的时变时滞问题的解决方法,具体涉及一种大口径望远镜控制系统时变时滞问题的解决方法。本发明是国家自然科学基金面上项目(11073034)“南极大口径天文光学望远镜低速高精度跟踪中的低温非线性干扰补偿的研究”(江苏省“333”工程共同资助项目)的研究成果。

背景技术

时滞问题是许多控制系统都存在的问题,时滞会降低控制系统的性能甚至影响到系统的稳定性。望远镜控制系统中也存在时滞问题。时滞问题难以通过常规的控制算法加以解决。

当前国内的几台大型天文望远镜(如LAMOST)的控制系统采用“IPC+UMAC+独立高性能伺服驱动器+独立伺服力矩电机”这种分层且分布式控制的方式被证明效果非常好。强实时性任务由UMAC完成,上位机只负责通讯管理,系统维护以及天体轨迹计算等弱实时性任务。形成了各司所长的工作方式。

UMAC即通用运动与自动化控制器(Universal Motion and Automation Controller)是美国Delta Tau公司的多轴运动控制产品?UMAC是3U架构?集成化的PMAC,更加易于扩展,功能也更为强大。UMAC运动控制器具有类似与BASIC形式的PMAC编程语言,用该语言编程,可使控制器独立工作。但是,UMAC的缺点是内部的绝对时间无法参加运算。其“DATE”、“TIME”仅供在线命令查询显示,且精度仅能到秒。天文望远镜跟踪天体,对时间的精度要求比较高,以方位轴跟踪时速度为15″/s计算,时间误差10毫秒,则带来方位轴指向跟踪误差为0.15″。数据交换过程中的时滞给望远镜控制精度带来了巨大的困扰。由于UMAC在依赖工控机的时钟,依赖工控机得到当前指向目标,从工控机发送该目标给UMAC执行跟踪,是有时滞的。时滞造成了的跟踪误差是随着跟踪目标速度的变化而变化的。另外,这个时滞在通讯过程中受到通讯介质、通讯繁忙程度、操作系统实时性的影响,时滞自身也是在一定范围内变化的,即是个时变时滞。

如图1所示,这是一台望远镜的方位轴跟踪数据。从中可见:随速度变化,19分钟内方位轴跟踪误差从-0.6″~-0.8″的区间逐渐漂移到-1.2″~-1.4″的区间。从中可见数据交换中的时变时滞给望远镜跟踪精度带来的巨大的影响。

这个时变时滞问题的根源是因为UMAC没有绝对时间,造成望远镜控制系统不得不依赖上位工控机的时间。目前望远镜控制系统还没有很好的根本性解决方法,只能通过提高通讯和操作系统的实时性进行缓解。

发明内容

本发明的目的是针对现有技术的不足,提出一种望远镜控制系统时变时滞问题的解决方法。本方法采用UMAC控制器的天文望远镜跟踪控制系统,获得可靠的绝对时间,从而解决望远镜控制系统的时变时滞问题,能够极大地提高望远镜的实时性和指向跟踪精度。

实现上述发明目的的的技术方案是:一种望远镜控制系统时变时滞问题的解决方法,其特征在于,步骤如下:

⑴. 设计一个绝对时间计算程序;

⑵. 该绝对时间计算程利用UMAC内部的高精度的时钟(例如伺服周期计数器);该绝对时间计算程序作为一个高优先级的PLC程序(或PLC0程序)在UMAC后台运行;

⑶.该 PLC程序或PLC0程序从上位机的GPS处得到绝对时间的初值T0,而同时从高精度的时钟(例如伺服周期计数器)中得到此时的计数值为t0;

⑷. UMAC的功能特性是通过参数I变量设置;其中I10设置伺服中断时间;

伺服中断时间Ts与I10的关系是:

                                                                                                                                   (1),

其中8388608是223

这样任意时间的绝对时间计算公式为:

                                                                                  (2),

在公式(2)中,所有时间均以秒为单位进行计算,所以进一步把T化为年月日时分秒的形式,即得到了我们需要的绝对时间;

⑸. UMAC在跟踪过程中,得到来自上位机的跟踪数据流,该数据中含有被跟踪目标的绝对时间信息,其信息格式为:

“绝对时间  方位轴目标  高度轴目标  消旋轴目标”;

由于已经得到当前绝对时间,UMAC运动程序在数据流中根据绝对时间找到目标进行跟踪;从而摆脱了对上位机时钟的依赖和通讯中时滞的影响。

本发明的工作原理,以及更具体更优化的操作是:

UMAC内部是有高精度的时钟的,例如伺服周期计数器。该时钟/计数器是一个24位计数器。设计一个绝对时间计算程序,利用了伺服周期计数器,绝对时间计算程序作为一个高优先级的PLC程序在UMAC后台运行,其绝对时间的初值来自上位机的GPS。PMAC的PLC程序可以以很快的速度重复执行。之所以称作PLC程序,因为这些程序执行类似硬件可编程逻辑控制器的功能。PLC控制模块用于系统的开关量的逻辑控制。当运动程序在前台有序运行时,UMAC可以在后台运行多达32个异步PLC程序。PLC程序能够以极高的采样速率监视模拟输入和数字输入、命令运动停止/起动等作业,以极高的循环速度对PLC程序进行反复扫描。PLC0是更加特殊的PLC程序,不同于其它PLC程序在后台循环执行,PLC0是和伺服算法一起在前台执行,其优先级很高,所以这个程序不能太大,否则会占用伺服算法的时间,PLC0用来处理实时性要求很高、紧急的任务,此处我们用PLC0来实现绝对时间的计算,确保了时间的精确性。

PLC0程序从上位机的GPS处得到绝对时间的初值T0,而同时从伺服周期计数器中得到此时的计数值为t0,这样在以后的任意时间,采样伺服周期计数器得到当前计数值为t,可以求得此时的绝对时间T(形如年月日时分秒),其中秒带有小数,精确到0.001秒。

UMAC的功能特性是通过参数I变量设置的。其中I10设置伺服中断时间。

伺服中断时间Ts与I10的关系是:

                                                                                    (1)

其中8388608是223

这样任意时间的绝对时间计算公式为:

                                                                                  (2)

在公式(2)中,所有时间均以秒为单位进行计算,所以进一步把T化为年月日时分秒的形式,即得到了我们需要的绝对时间。之所以不是每次都从上位机取GPS时间,仅仅赋初值的时候读取一次,以后依靠PLC0程序自己累计,就是为了避免双机通讯与数据交换中的时变时滞。

UMAC在跟踪过程中,得到来自上位机的跟踪数据流,该数据中含有被跟踪目标的绝对时间信息,其信息格式为:

“绝对时间  方位轴目标  高度轴目标  消旋轴目标”

由于已经得到当前绝对时间,UMAC运动程序在数据流中根据绝对时间找到目标进行跟踪。从而摆脱了对上位机时钟的依赖和通讯中时滞的影响。 

本发明的有益效果是本发明为采用UMAC控制器的天文望远镜跟踪控制系统获得了可靠的绝对时间,从而解决了望远镜控制系统的时变时滞问题,极大地提高了望远镜的实时性和指向跟踪精度。

附图说明

图1为方位轴跟踪误差随速度变化曲线图;

图2为绝对时间PLC程序变量监视图;

图3为获得绝对时间的PLC程序流程图;

图4为时间计算程序流程图。

具体实施方式

下面将结合附图和具体实施例对本发明做进一步的说明。

UMAC内部有伺服周期计数器,这是一个高精度的时钟。在UMAC中编写如下代码:

#define ServoCounter    M100         ; 24-bit servo cycle counter

ServoCounter->X:$000000,0,24,S                                                                                                                          

使存储单元M100指向伺服周期计数器X:$000000,0,24,S,该时钟/计数器是一个24位计数器,每个伺服周期增加1。它的计数从UMAC上电开始,计数到最大值后会翻转到负数。在实施例的望远镜的控制系统中,UMAC的晶振频率为19.6608MHz,系统参数I10=4194560,求得UMAC的伺服中断时间为 

                   (3)

即M100中每增加1,代表增加500。这样就得到了一个分辨率为500的绝对时钟。

绝对时间计算程序作为一个高优先级的PLC程序在UMAC后台运行,其绝对时间的初值来自GPS,由计算机通过Ethernet通讯为UMAC赋值。

采用具有最高优先级的PLC0进行获得绝对时间的工作。PLC0程序流程图如图3所示,其中的时间计算程序流程图如图4所示。此处需要指出的是,时间计算程序不是一个独立的子程序,而是程序中的一个部分,为了能够清楚说明程序的功能,所以特别独立出来。

由于伺服周期计数器是一个24位计数器,有计数到最大值就会翻转的问题,所以程序特别对此进行判断处理,其翻转常数值为223=8388608。

在获得了以秒为单位的当前时间(即总秒数)后,根据望远镜跟踪控制的需要,实施例把总秒数进一步化为年月日时分秒的形式,这由时间计算程序完成,如图4。

在流程图中,秒钟是整数,而总秒数带有小数位。总秒数、总分钟、总小时均是以UMAC开机为起始零点到当前计数值的相对值加上UMAC开机时的绝对时间。

在进行时间的计算时,要特别考虑平年和闰年的计算问题。此处通过以下条件判断闰年:能被400整除;能被4整除,但不能被100整除。

通过以上方法就得到了天文望远镜跟踪天体所需要的绝对时间,UMAC在跟踪过程中,得到来自上位机的跟踪数据流,信息格式为“绝对时间  方位轴目标  高度轴目标  消旋轴目标”,由于已经得到当前绝对时间,UMAC运动程序在数据流中根据绝对时间找到目标进行跟踪。

图2上位机监视图,显示了UMAC中PLC程序计算出来的绝对时间变化,证明该方法正确、可靠。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号