CN103973798A - 二次平台运动控制的上下位机通信方法和装置 - Google Patents
二次平台运动控制的上下位机通信方法和装置 Download PDFInfo
- Publication number
- CN103973798A CN103973798A CN201410203410.6A CN201410203410A CN103973798A CN 103973798 A CN103973798 A CN 103973798A CN 201410203410 A CN201410203410 A CN 201410203410A CN 103973798 A CN103973798 A CN 103973798A
- Authority
- CN
- China
- Prior art keywords
- client
- instruction
- information
- communication
- buffer queue
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
二次平台运动控制的上下位机通信方法和装置,涉及一种通信方法和装置。本发明是为了解决传统的二次平台运动控制的上下位机通信方法的实时性差的问题。本发明的上位机和下位机通信节点通过TCP通信协议进行通信,下位机通信节点与单片机通过串口进行通信。由于通信指令多,故定义了应用层的通信协议和装置。当上位机向下位机单片机发送指令时,上位机通过TCP通道把数据发送给下位机通信节点,通信节点再把应用层的信息通过串口发给单片机,单片机根据指令执行相应的功能。本发明适用于二次平台运动控制的上下位机通信。
Description
技术领域
本发明涉及一种通信方法和装置。
背景技术
在现代社会中,经常需要高平面度的平台,比如在空间交汇对接、地面测量、导航、网络通信和编队控制等全物理仿真试验中,需要支撑整个地面仿真器,为地面仿真实验提供基础平台;为编队卫星地面试验验证、控制算法验证分析等物理仿真试验提供平台支撑。由于平台运动或者是静止时都可能由于大面积水平基座的不平整等原因处于倾斜状态,不利于为负载提供尽可能水平的作业平台保证准确对接,因此需要平台在静止和运动状态都能够被快速、精确的调平,以保证平台足够的水平度。
二次平台和六自由度气浮台轨道器及六自由度气浮台上升器共同构成交会对接仿真试验的核心部分。其中,以气浮球轴承和重力平衡伺服运动机构为核心组成的六自由度气浮台轨道器用来模拟轨道器动力学仿真状态;二次平台用来支撑六自由度气浮台轨道器,实现高精度自动调平;与六自由度上升器配合,实现完整的交会对接动力学与控制全物理仿真试验。整个系统运行在大型花岗岩平台上,是地面全物理仿真试验的核心和基础平台;也为未来的编队卫星地面试验验证、控制算法验证分析等物理仿真试验提供平台支撑。其中整个二次平台的运动控制由上位机和运动控制板卡组网通信来完成。
网络处理中最消耗时间的操作是缓冲区拷贝和计算/验算校验和使用传统的TCP协议通信,对链路层的支持有限,并且需要经过系统任务的转发,实时性比较差,因此,提高网络的通信速度,减小网络处理中时间的消耗成为一种必要。
发明内容
本发明是为了解决传统的二次平台运动控制的上下位机通信方法的实时性差的问题,从而提供一种二次平台运动控制的上下位机通信方法和装置。
二次平台运动控制的上下位机通信方法,
将上位机作为客户端,将下位机通信节点作为服务器,由客户端发起的通信过程,由以下步骤实现:
步骤一、客户端接收用户的操作指令,将其转换为服务器的能够识别的格式,并通过Socket接口下传到服务器,然后等待返回数据;
步骤二、服务器接入客户端的操作指令,并添加到指令接收缓冲队列;指令解释任务从指令接收缓冲队列取出指令,并执行对应的软硬件操作,操作结束后将执行结果添加到数据发送缓冲队列;数据发送任务从数据发送缓冲队列取出信息,通过Socket接口将其发送给客户端;
步骤三、客户端接收服务器发出的执行结果,并将该执行结果发送给用户;
由客户端发起的通信过程,由以下步骤实现:
步骤A、服务器在硬件中断的状态下,操作系统执行已经被绑定的中断服务程序,中断服务程序通知中断服务任务,中断服务任务将中断信息添加到信息发送缓冲队列;
若存在采取硬件轮询方式,则将轮询任务将信息添加到发送队列;
数据发送任务发送缓冲队列中的信息上传给客户端;
步骤B、客户端接收服务器上传的信息,并发送给用户,由用户选择的下一步操作指令。
由客户端发起的通信过程,是采用TCP通信协议通过Socket API接口实现的,具体为:
客户端通过操作界面建立客户端Socket接口,服务器有两个服务器socket接口,即:srv Socket接口和clt socket接口;srv Socket接口用于监听客户端socket,并根据出现的客户端的需求分配能够实现服务的clt socket接口;
当客户端socket接口建立以后,将指令的映射关系发送给clt socket接口,而服务器的相关信息,通过clt socket接口发回给客户端,从而形成信息的闭环控制;
当客户端应用层发出关闭指令时,客户端的socket接口停止发送指令,而下位机通信节点一直保持着信息的监控和服务。
二次平台运动控制的上下位机通信装置,它包括基于二次平台运动控制的上位机和下位机通信节点;
下位机通信节点插有运动控制卡,所述运动控制卡嵌入有指令解算模型、控制模型、电机模型和工件台数学模型;所述运动控制卡用于采集二次平台的运行数据,同时发送控制数据给所述二次平台;
指令解算模型,用于对输入的指令进行解算,并将解算后的指令发送给控制模型;
控制模型,用于对接收的指令进行整定,生成电机控制量和工件台控制量,并分将电机控制量发送给电机模型,将工件台控制量发送给工件台数学模型;
电机模型,用于根据电机控制量驱动实际台体中的电机工作;
工件台数学模型,用于根据工作台控制量驱动实际台体中的工作台运动;
下位机通信节点还包括如下装置:
采用TCP通信协议从socket API接口接收上位机发送的命令,并将所述命令添加到指令接收缓冲队列的装置;
从指令接收缓冲队列取出命令,根据所述命令执行相应的软硬件操作,操作结束后将执行结果信息添加到数据发送缓冲队列的装置;
从数据发送缓冲队列取出执行结果信息,采用UDP通信协议通过Socket API接口将所述执行结果信息发送给上位机的装置;
当接收到硬件中断信号时,执行已经被绑定的中断服务程序,中断服务程序通知中断服务任务,所述中断服务任务将中断信息添加到数据发送缓冲队列的装置。
它还包括多个单片机;上位机软件中对不同情况和地址的指令来接受指令并通过TCP协议通过无线传输给下位机通信节点,所述下位机通信节点对命令在进行对应的分配和传递,并通过串口通信传递给该多个单片机,进而实现执行。
本发明提供了一种上下位机通信数据量大、距离长、无线的通信方式,指定了二次平台运动控制上下位机的通信协议和装置,本发明能保证信息正确接收,防止信息丢失;实现信息的流水线处理,降低信息通信双方时间上的关联性;提高系统CPU的利用率;实现控制信息的批处理发送,减小重复性工作的操作时间;根据任务的紧急程度设定任务的优先级,确定发送顺序,保证系统安全运行;有效提高网络通信数据传输效率,实时提供数据,使上下位机通信具有了更高的稳定性和实时性。
附图说明
图1是二次平台运动控制的上下位机通信方法的流程示意图。
具体实施方式
具体实施方式一、结合图1说明本具体实施方式,二次平台运动控制的上下位机通信方法,
将上位机作为客户端,将下位机通信节点作为服务器,由客户端发起的通信过程,由以下步骤实现:
步骤一、客户端接收用户的操作指令,将其转换为服务器的能够识别的格式,并通过Socket接口下传到服务器,然后等待返回数据;
步骤二、服务器接入客户端的操作指令,并添加到指令接收缓冲队列;指令解释任务从指令接收缓冲队列取出指令,并执行对应的软硬件操作,操作结束后将执行结果添加到数据发送缓冲队列;数据发送任务从数据发送缓冲队列取出信息,通过Socket接口将其发送给客户端;
步骤三、客户端接收服务器发出的执行结果,并将该执行结果发送给用户;
由客户端发起的通信过程,由以下步骤实现:
步骤A、服务器在硬件中断的状态下,操作系统执行已经被绑定的中断服务程序,中断服务程序通知中断服务任务,中断服务任务将中断信息添加到信息发送缓冲队列;
若存在采取硬件轮询方式,则将轮询任务将信息添加到发送队列;
数据发送任务发送缓冲队列中的信息上传给客户端;
步骤B、客户端接收服务器上传的信息,并发送给用户,由用户选择的下一步操作指令。
由客户端发起的通信过程,是采用TCP通信协议通过Socket API接口实现的,具体为:
客户端通过操作界面建立客户端Socket接口,服务器有两个服务器socket接口,即:srv Socket接口和clt socket接口;srv Socket接口用于监听客户端socket,并根据出现的客户端的需求分配能够实现服务的clt socket接口;
当客户端socket接口建立以后,将指令的映射关系发送给clt socket接口,而服务器的相关信息,通过clt socket接口发回给客户端,从而形成信息的闭环控制;
当客户端应用层发出关闭指令时,客户端的socket接口停止发送指令,而下位机通信节点一直保持着信息的监控和服务。
具体实施方式二、二次平台运动控制的上下位机通信装置,其特征是:它包括基于二次平台运动控制的上位机和下位机通信节点;
下位机通信节点插有运动控制卡,所述运动控制卡嵌入有指令解算模型、控制模型、电机模型和工件台数学模型;所述运动控制卡用于采集二次平台的运行数据,同时发送控制数据给所述二次平台;
指令解算模型,用于对输入的指令进行解算,并将解算后的指令发送给控制模型;
控制模型,用于对接收的指令进行整定,生成电机控制量和工件台控制量,并分将电机控制量发送给电机模型,将工件台控制量发送给工件台数学模型;
电机模型,用于根据电机控制量驱动实际台体中的电机工作;
工件台数学模型,用于根据工作台控制量驱动实际台体中的工作台运动;
下位机通信节点还包括如下装置:
采用TCP通信协议从socket API接口接收上位机发送的命令,并将所述命令添加到指令接收缓冲队列的装置;
从指令接收缓冲队列取出命令,根据所述命令执行相应的软硬件操作,操作结束后将执行结果信息添加到数据发送缓冲队列的装置;
从数据发送缓冲队列取出执行结果信息,采用UDP通信协议通过Socket API接口将所述执行结果信息发送给上位机的装置;
当接收到硬件中断信号时,执行已经被绑定的中断服务程序,中断服务程序通知中断服务任务,所述中断服务任务将中断信息添加到数据发送缓冲队列的装置。
所述下位机通信节点插有运动控制卡,所述运动控制卡嵌入有指令解算模型、控制模型,电机模型和工件台数学模型;所述运动控制卡用于采集二次平台的运行数据,同时发送控制数据给所述二次平台。
采用TCP通信协议从socket API接口接收上位机发送的命令,将所述命令添加到指令接收缓冲队列。
从指令接收缓冲队列取出命令,根据所述命令执行相应的软硬件操作,操作结束后将执行结果信息添加到数据发送缓冲队列。
从数据发送缓冲队列取出执行结果信息,采用UDP通信协议通过Socket API接口将所述执行结果信息发送给上位机。
当接收到硬件中断信号时,执行已经被绑定的中断服务程序,中断服务程序通知中断服务任务,所述中断服务任务将中断信息添加到数据发送缓冲队列。
上位机作为客户端,下位机通信节点作为服务器。
由端发起的通信过程如下:
(1)客户端:接收用户操作指令,将其转换为服务器可以理解的命令格式,通过Socket接口下传到服务器,然后等待返回数据;
(2)服务器:指令接收任务从SOCket接口接收命令,将其添加到指令接收缓冲队列;指令解释任务从指令接收缓冲队列取出指令,根据具体情况执行特定的软硬件操作,操作结束后将执行结果添加到数据发送缓冲队列;数据发送任务从数据发送缓冲队列取出信息,通过Socket接口将其换回给客户端;
(3)客户端:接收执行结果后返回给操作人员;
由服务器发起的通信过程如下:
(1)服务器:硬件中断,操作系统立即执行已经被绑定的中断服务程序,中断服务程序通知中断服务任务,后者将中断信息添加到信息发送缓冲队列;如果采取硬件轮询方式,也可以是轮询任务将信息添加到发送队列;数据发送任务将此信息上传给客户端;
(2)客户端:接收数据然后提供给操作人员,由操作人员选择下一步的操作方案,指令接收缓冲队列的主要作用是缓存从上位机发下来的命令,保证所有的命令得到尽快的接收,避免由于接收速度慢造成上位机网络发送模块的堵塞,从而给上位机的软件带来不必要的麻烦。
具体实施方式三、本具体实施方式与具体实施方式二所述的二次平台运动控制的上下位机通信装置的区别在于,它还包括多个单片机;上位机软件中对不同情况和地址的指令来接受指令并通过TCP协议通过无线传输给下位机通信节点,所述下位机通信节点对命令在进行对应的分配和传递,并通过串口通信传递给该多个单片机,进而实现执行。
其中二次平台运动控制上下位机的通信流程是的上位机通过指定的TCP通信协议来完成与下位机通信节点的信息传递,下位机通信节通过内置的串口通信和预设的地址,将信息在传递给下一级别的单片机,在此过程中,在处理多个可能有冲突的通信指令时,则定义应用层的通信协议,让每个数据通道得到对应的信息,并在单片机处进行指令最后的接收与识别,完成最后的命令的执行,实现相应的功能。
Claims (4)
1.二次平台运动控制的上下位机通信方法,其特征是:
将上位机作为客户端,将下位机通信节点作为服务器,由客户端发起的通信过程,由以下步骤实现:
步骤一、客户端接收用户的操作指令,将其转换为服务器的能够识别的格式,并通过Socket接口下传到服务器,然后等待返回数据;
步骤二、服务器接入客户端的操作指令,并添加到指令接收缓冲队列;指令解释任务从指令接收缓冲队列取出指令,并执行对应的软硬件操作,操作结束后将执行结果添加到数据发送缓冲队列;数据发送任务从数据发送缓冲队列取出信息,通过Socket接口将其发送给客户端;
步骤三、客户端接收服务器发出的执行结果,并将该执行结果发送给用户;
由客户端发起的通信过程,由以下步骤实现:
步骤A、服务器在硬件中断的状态下,操作系统执行已经被绑定的中断服务程序,中断服务程序通知中断服务任务,中断服务任务将中断信息添加到信息发送缓冲队列;
若存在采取硬件轮询方式,则将轮询任务将信息添加到发送队列;
数据发送任务发送缓冲队列中的信息上传给客户端;
步骤B、客户端接收服务器上传的信息,并发送给用户,由用户选择的下一步操作指令。
2.根据权利要求1所述的二次平台运动控制的上下位机通信方法,其特征在于由客户端发起的通信过程,是采用TCP通信协议通过Socket API接口实现的,具体为:
客户端通过操作界面建立客户端Socket接口,服务器有两个服务器socket接口,即:srv Socket接口和clt socket接口;srv Socket接口用于监听客户端socket,并根据出现的客户端的需求分配能够实现服务的clt socket接口;
当客户端socket接口建立以后,将指令的映射关系发送给clt socket接口,而服务器的相关信息,通过clt socket接口发回给客户端,从而形成信息的闭环控制;
当客户端应用层发出关闭指令时,客户端的socket接口停止发送指令,而下位机通信节点一直保持着信息的监控和服务。
3.二次平台运动控制的上下位机通信装置,其特征是:它包括基于二次平台运动控制的上位机和下位机通信节点;
下位机通信节点插有运动控制卡,所述运动控制卡嵌入有指令解算模型、控制模型、电机模型和工件台数学模型;所述运动控制卡用于采集二次平台的运行数据,同时发送控制数据给所述二次平台;
指令解算模型,用于对输入的指令进行解算,并将解算后的指令发送给控制模型;
控制模型,用于对接收的指令进行整定,生成电机控制量和工件台控制量,并分将电机控制量发送给电机模型,将工件台控制量发送给工件台数学模型;
电机模型,用于根据电机控制量驱动实际台体中的电机工作;
工件台数学模型,用于根据工作台控制量驱动实际台体中的工作台运动;
下位机通信节点还包括如下装置:
采用TCP通信协议从socket API接口接收上位机发送的命令,并将所述命令添加到指令接收缓冲队列的装置;
从指令接收缓冲队列取出命令,根据所述命令执行相应的软硬件操作,操作结束后将执行结果信息添加到数据发送缓冲队列的装置;
从数据发送缓冲队列取出执行结果信息,采用UDP通信协议通过Socket API接口将所述执行结果信息发送给上位机的装置;
当接收到硬件中断信号时,执行已经被绑定的中断服务程序,中断服务程序通知中断服务任务,所述中断服务任务将中断信息添加到数据发送缓冲队列的装置。
4.根据权利要求3所述的二次平台运动控制的上下位机通信装置,其特征是:它还包括多个单片机;上位机软件中对不同情况和地址的指令来接受指令并通过TCP协议通过无线传输给下位机通信节点,所述下位机通信节点对命令在进行对应的分配和传递,并通过串口通信传递给该多个单片机,进而实现执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410203410.6A CN103973798A (zh) | 2014-05-14 | 2014-05-14 | 二次平台运动控制的上下位机通信方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410203410.6A CN103973798A (zh) | 2014-05-14 | 2014-05-14 | 二次平台运动控制的上下位机通信方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103973798A true CN103973798A (zh) | 2014-08-06 |
Family
ID=51242831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410203410.6A Pending CN103973798A (zh) | 2014-05-14 | 2014-05-14 | 二次平台运动控制的上下位机通信方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103973798A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317204A (zh) * | 2014-10-17 | 2015-01-28 | 哈尔滨工业大学 | 基于虚拟现实技术的二次平台半物理仿真系统及方法 |
CN106230745A (zh) * | 2016-07-20 | 2016-12-14 | 北京云杉智源科技有限公司 | 具有高实时性和低延时性的上下位机之间的数据传输方法 |
CN106959672A (zh) * | 2017-04-28 | 2017-07-18 | 深圳市汇川控制技术有限公司 | 一种基于api的工业运动控制系统及方法 |
CN111761586A (zh) * | 2020-07-22 | 2020-10-13 | 西安文理学院 | 一种基于大数据的远程控制机器人 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100017811A1 (en) * | 2008-07-17 | 2010-01-21 | Swee Huat Sng | Method and system for comprehensive socket application programming interface loopback processing |
CN102393762A (zh) * | 2011-08-30 | 2012-03-28 | 上海三一精机有限公司 | 一种用于数控系统电机主轴转速的控制系统及方法 |
CN103439866A (zh) * | 2013-08-28 | 2013-12-11 | 哈尔滨工业大学 | 基于VxWorks的光刻机双工件台通信方法及装置 |
CN103684944A (zh) * | 2012-09-10 | 2014-03-26 | 西门子信号有限公司 | 嵌入式网关、采用该网关的铁路监测系统及其方法 |
-
2014
- 2014-05-14 CN CN201410203410.6A patent/CN103973798A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100017811A1 (en) * | 2008-07-17 | 2010-01-21 | Swee Huat Sng | Method and system for comprehensive socket application programming interface loopback processing |
CN102393762A (zh) * | 2011-08-30 | 2012-03-28 | 上海三一精机有限公司 | 一种用于数控系统电机主轴转速的控制系统及方法 |
CN103684944A (zh) * | 2012-09-10 | 2014-03-26 | 西门子信号有限公司 | 嵌入式网关、采用该网关的铁路监测系统及其方法 |
CN103439866A (zh) * | 2013-08-28 | 2013-12-11 | 哈尔滨工业大学 | 基于VxWorks的光刻机双工件台通信方法及装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317204A (zh) * | 2014-10-17 | 2015-01-28 | 哈尔滨工业大学 | 基于虚拟现实技术的二次平台半物理仿真系统及方法 |
CN106230745A (zh) * | 2016-07-20 | 2016-12-14 | 北京云杉智源科技有限公司 | 具有高实时性和低延时性的上下位机之间的数据传输方法 |
CN106230745B (zh) * | 2016-07-20 | 2019-05-14 | 北京云杉智源科技有限公司 | 具有高实时性和低延时性的上下位机之间的数据传输方法 |
CN106959672A (zh) * | 2017-04-28 | 2017-07-18 | 深圳市汇川控制技术有限公司 | 一种基于api的工业运动控制系统及方法 |
CN111761586A (zh) * | 2020-07-22 | 2020-10-13 | 西安文理学院 | 一种基于大数据的远程控制机器人 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103973798A (zh) | 二次平台运动控制的上下位机通信方法和装置 | |
CN101174143B (zh) | 加工仿真系统 | |
CN101262486B (zh) | 基于嵌入式平台的Modbus总线分析系统 | |
CN103530167A (zh) | 一种虚拟机内存数据的迁移方法及相关装置和集群系统 | |
CN102968377A (zh) | 一种基于虚拟机技术的机载软件系统测试通用平台 | |
CN104067230A (zh) | 准虚拟化高性能计算和gdi加速 | |
CN103049876A (zh) | 电力作业现场管控系统的外网客户端管控方法 | |
Chekryzhov et al. | An approach to technological equipment performance information visualization system construction using augmented reality technology | |
TW201924849A (zh) | 確認刀具位置之方法與工具機系統 | |
CN104040494A (zh) | 准虚拟化的域着色器、外壳着色器和几何着色器 | |
CN112162495A (zh) | 一种基于arinc429总线的惯性导航仿真系统及仿真方法 | |
JP2006217390A (ja) | 機器管理装置および機器管理方法 | |
CN104504495A (zh) | 运维异常处理方法、装置及设备 | |
CN105554702A (zh) | 一种跨网定位系统、方法、定位服务器及移动终端 | |
CN103455363A (zh) | 一种虚拟机的指令处理方法、装置及物理主机 | |
CN108037676A (zh) | 一种适用于飞行器导航制导控制的半物理地面仿真装置 | |
CN114245884A (zh) | 用于计算机数控加工刀具的优化 | |
US20190049934A1 (en) | Control system | |
CN112632700B (zh) | 用于卫星姿轨控通用综合测试的飞轮信号采集方法及系统 | |
CN112596504B (zh) | 用于卫星姿轨控通用综合测试的飞轮信号采集设备 | |
CN101504640A (zh) | 一种数据表的编辑方法和装置 | |
JP6545421B1 (ja) | 軌跡指令生成システム、軌跡指令生成方法及びインターフェース | |
CN103984652A (zh) | 一种基于龙芯平台的北斗通信方法 | |
Snyman et al. | A real-time scheduling system for a sensorised job shop using cloud-based simulation with mobile device access | |
KR101478017B1 (ko) | 시뮬레이션 데이터 처리 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140806 |
|
WD01 | Invention patent application deemed withdrawn after publication |