一种双轴激光捷联惯组下位机与上位机之间的交互方法与流程

文档序号:13949950阅读:396来源:国知局
一种双轴激光捷联惯组下位机与上位机之间的交互方法与流程

本发明涉及双轴激光捷联惯组技术领域,更为具体来说,本发明为一种双轴激光捷联惯组下位机与上位机之间的交互方法。



背景技术:

目前,双轴激光捷联惯组对内对外的数据接口非常多。在研发阶段、测试阶段及维护阶段,常规的方案由于技术上的局限,上位机与下位机之间的交互方式不合理,在对双轴激光捷联惯组下位机进行数据采集时往往存在丢数的问题,采集的数据不准确、不完整;不仅如此,常规的方案在上位机向下位机读写参数时,无法兼顾参数读写的准确度和速度。

因此,如何提高上位机采集双轴激光捷联惯组下位机数据的准确性和完整性、如何兼顾参数读写的准确性和速度,成为了本领域技术人员亟待解决的技术问题和始终研究的重点。



技术实现要素:

为解决现有技术上位机对双轴激光捷联惯组下位机进行数据采集时存在丢数的问题以及无法兼顾参数读写的准确度和速度问题,本发明创新提出了一种双轴激光捷联惯组下位机与上位机之间的交互方法,结合多重缓冲技术和多线程处理技术,有效地解决了上述技术问题。

为实现上述技术目的,本发明公开了一种双轴激光捷联惯组下位机与上位机之间的交互方法,该交互方法包括如下步骤,

数据采集步骤:当上位机与下位机之间的数据接口存在数据时,所述上位机通过中断的方式将所述数据拷贝到接收缓冲区;

数据处理步骤:将接收缓冲区的数据拷贝到处理缓冲区,以帧为单位对处理缓冲区中的数据进行处理,将处理完成后的数据放入日志缓冲区,再将日志缓冲区中的数据写入文件;

参数读取步骤:上位机向下位机发出参数读取指令,所述下位机收到所述参数读取指令后向所述上位机发送参数,所述上位机读取所述参数后发送下一条参数读取指令,直至上位机读取到所有参数;

参数写入步骤:所述上位机定时向所述下位机发出参数写入指令,并在所有参数写入下位机完成后,所述上位机批量读取已写入的参数并进行对比。

本发明创新地采用了多重缓冲技术,有效解决了大数据串口采集丢数的问题,从而实现了高频率的数据采集;本发明上位机通过发送指令线程和接受指令线程实现参数的高速、准确地读取,并通过参数写入完毕后的批量读取并对比,保证参数写入全部正确。

进一步地,该交互方法还包括锁放控制步骤;

锁放控制步骤:上位机获取老炼时间,在老炼时间内上位机向下位机循环地发送锁紧控制指令和下放控制指令,通过下位机直接控制惯性器件进行锁紧动作和下放动作。

进一步地,锁放控制步骤包括如下步骤;

步骤11,上位机获取老炼时间,并读取设置的目标循环次数;

步骤12,上位机向下位机发送锁紧控制指令,如果在第一规定时间内上位机收到下位机发出的锁紧完成指令,则经过第一间隔时间后,上位机向下位机发送下放控制指令,执行步骤13;如果在第一规定时间内上位机未收到下位机发出的锁紧完成指令,则执行步骤14;

步骤13,如果在第二规定时间内上位机收到下位机发出的下放完成指令且上位机发出下放控制指令的历史次数小于目标循环次数,则经过第二间隔时间后,返回步骤12;如果在第二规定时间内上位机未收到下位机发出的下放完成指令,则执行步骤14;

步骤14,上位机报错,并结束锁放控制步骤。

基于上述改进的技术方案,本发明采用了自动化控制技术,控制相关锁放机构自动进行老炼流程,不停地进行锁紧操作和下放操作,用来磨合锁放机构、防止以后使用中卡顿的情况发生,从而有效解决常规缩放控制流程需要人为循环控制数千次的问题,进而达到省时省力、提高工作效率的技术目的。

进一步地,在数据处理步骤中,将日志缓冲区中的数据写入文件的过程采用独立线程,每间隔1秒读取日志缓冲区;在日志缓冲区中存在数据的条件下将数据写入文件;如果日志缓冲区中无数据,则间隔5秒后再读取日志缓冲区。

进一步地,在参数读取步骤中,如果所述上位机在发出参数读取指令后没有收到参数,则重复发送当前参数读取指令。

进一步地,在参数读取步骤中,如果所述上位机重复发送当前参数读取指令的次数达到3次而仍未收到参数,则停止参数读取操作并报错。

进一步地,在参数读取步骤中,通过上位机内的xls格式文件保存读取的参数。

进一步地,在参数读取步骤中,所述上位机批量读取参数。

进一步地,在参数读取步骤中,已读取的参数在所述上位机上显示。

进一步地,在参数写入步骤中,已写入的参数和批量读取的已写入的参数均在所述上位机上对应地按列显示。

本发明的有益效果为:本发明创新地采用了多重缓冲技术,有效解决了大数据串口采集丢数的问题,从而实现了高频率的数据采集;本发明的上位机通过发送指令线程和接受指令线程实现参数的高速、准确地读取,并通过参数写入完毕后的批量读取并对比,保证参数写入全部正确。

附图说明

图1为双轴激光捷联惯组下位机与上位机之间的交互方法的流程示意图。

图2为锁放控制步骤的流程示意图。

具体实施方式

下面结合说明书附图对本发明涉及的一种双轴激光捷联惯组下位机与上位机之间的交互方法进行详细的解释和说明。

双轴激光捷联惯组对内对外的数据接口多,在研发阶段、测试阶段以至于维护阶段,都需重新调试上位机与双轴激光捷联惯组下位机进行通讯,使用起来十分不便,即:下位机改变后上位机也必须随之改变,容易引起混乱,而本发明能够将不同的上位机组合起来,实现上位机与下位机之间的合理交互,能更好地辅助双轴激光捷联惯组下位机的研发、测试、生产及售后服务,加快双轴激光捷联惯组下位机的研发进度。

具体地,如图1所示,本发明公开了一种双轴激光捷联惯组下位机与上位机之间的交互方法,该交互方法包括如下步骤。

锁放控制步骤:上位机获取老炼时间,在老炼时间内上位机向下位机循环地发送锁紧控制指令和下放控制指令,通过下位机直接控制惯性器件进行锁紧动作和下放动作。

更为具体地,如图2所示,本发明中的锁放控制步骤包括如下步骤11至步骤14。

步骤11,上位机获取老炼时间,并读取设置的目标循环次数,而具体通过程序实现时,可设置while循环,次数可小于设置的目标循环次数。

步骤12,上位机向下位机发送锁紧控制指令,可以通过调用发送锁紧指令实现,如果在第一规定时间内上位机收到下位机发出的锁紧完成指令,则经过第一间隔时间后,上位机向下位机发送下放控制指令,执行步骤13;如果在第一规定时间内上位机未收到下位机发出的锁紧完成指令,则执行步骤14。

步骤13,如果在第二规定时间内上位机收到下位机发出的下放完成指令且上位机发出下放控制指令的历史次数小于目标循环次数,则经过第二间隔时间后,返回步骤12;如果在第二规定时间内上位机未收到下位机发出的下放完成指令,则执行步骤14。

步骤14,上位机报错,并结束锁放控制步骤。

需要说明的是,在本发明的技术启示下,上述的“第一规定时间”、“第一间隔时间”、“第二规定时间”、“第二间隔时间”可根据具体的使用情况进行合理而明智地选择。

数据采集步骤:本发明涉及的上位机的采集功能可集成多种数据采集协议,本实施例为8种数据采集协议,这些数据采集协议使得本发明涉及的上位机为通用上位机,可适用于不同的惯组平台,当上位机与下位机之间的数据接口存在数据时,上位机通过中断的方式将数据拷贝到接收缓冲区;

数据处理步骤:将接收缓冲区的数据拷贝到处理缓冲区,以帧为单位对处理缓冲区中的数据进行处理,即处理缓冲区中的数据满一帧后,则对数据进行处理,将处理完成后的数据放入日志缓冲区,此时可对全局显示变量赋值,以实现后续数据采集的显示功能,再将日志缓冲区中的数据写入文件;本实施例中,将日志缓冲区中的数据写入文件的过程采用独立线程,每间隔1秒读取日志缓冲区;在日志缓冲区中存在数据的条件下将数据写入文件;如果日志缓冲区中无数据,则间隔5秒后再读取日志缓冲区。

本发明创新结合了多重缓冲技术和多线处理技术,有效解决了大数据串口采集丢数的问题,从而实现了高频率的数据采集,可实现1khz甚至5khz的数据采集。本发明上位机的采集板集合了各个数据传输协议,有效解决了以前采集数据时需要多种上位机来回切换的问题。

参数读取步骤:双轴激光捷联惯组中的数学模型所用参数众多,而且惯性器件特性、安装误差等导致每台双轴激光捷联惯组的参数都不同,在研发或生产调试过程中需要获取大量的参数。读取参数时,上位机内部有两个线程进行交互:发送指令线程和接收参数线程。具体来说,首先打开用于保存参数数据的xls格式文件,获取参数地址、参数名称等可用信息,然后上位机向下位机发出参数读取指令、然后等待,下位机收到参数读取指令后向上位机发送参数,上位机读取参数后发送下一条参数读取指令(该过程实际为接收参数线程接收参数数据后告知发送指令线程发送下一条参数读取指令),直至上位机读取到所有参数,读取过程中,已读取的参数在上位机上显示,通过数据显示线程实现,数据显示线程采用定时方式,根据显示需要制定时间中断,读取全局显示变量当前值赋值给显示页面;本实施例中,如果上位机在发出参数读取指令后没有收到参数,则重复发送当前参数读取指令;如果上位机重复发送当前参数读取指令的次数达到3次而仍未收到参数,则停止参数读取操作并报错;本实施例中,通过上位机内的xls格式文件保存读取的参数,且上位机批量读取参数。

参数写入步骤:首先打开用于保存参数数据的xls格式文件,获取参数地址、参数名称等可用信息,上位机定时向下位机发出参数写入指令,并在所有参数写入下位机完成后,上位机批量读取已写入的参数并进行对比,以保证所有参数写入全部正确。本实施例中,为更直观地查看参数写入情况,已写入的参数和批量读取的已写入的参数均在上位机上对应地按列显示,具体地,回传的参数都在回传参数列显示,把初值设置列和回传参数列进行对比,以保证参数写入全部正确。

本发明通过上述批量参数的读取和写入,并在读写参数时增加了交互过程,达到了保证参数读写正确的前提下有效提高了读写速度。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

在本说明书的描述中,参考术语“本实施例”、“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明实质内容上所作的任何修改、等同替换和简单改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1