一种仿真系统硬件控制量访问传输的方法
技术领域
本发明涉及仿真硬件控制及通信技术领域,特别是涉及一种可应用于仿真系统的涉及硬件控制量的访问及通信传输的方法。
背景技术
在飞行模拟器仿真、电站仿真等包括人在回路的仿真系统中,会涉及到人对设备的操纵、设备对仿真结果的反映,对设备硬件的采集、驱动、通信传输一直是实现此类仿真系统的一个重要方面。此类仿真系统,必然涉及两类程序:硬件程序和仿真程序。硬件程序是实现对设备硬件进行采样、驱动的程序;仿真程序是使用硬件程序的采样值、生成硬件程序所需的设备硬件驱动值、通常完成特定仿真任务的程序。从目前公开的方法看,在设备硬件的访问、通信传输方面还没有一个规范的方法可以依据。通常的作法是,硬件开发人员对特定设备进行改造,实现硬件程序,完成设备硬件的采集、驱动,并定义出特定的设备控制格式,通常是字节、bit位等针对具体硬件设备改造技术的底层描述;然后网络开发人员对这一特定的格式定义网络传输数据包,把这些字节、bit位通过网络传输在硬件程序和仿真程序之间传输;最后,仿真开发人员要在仿真程序中接收这些特定的字节、bit位,对其按位解析,理解硬件状态;硬件开发人员同样需要接收、解析来自仿真程序的字节、bit位。这种方法的不足主要表现在:一是基于字节、bit位的底层描述不够直观,增大了仿真开发人员、硬件开发人员对硬件状态解析的工作量和错误率;二是如果不同的仿真程序具有不同的设备硬件控制需求,则通常需要定义不同的通信数据格式;三是由于不同仿真系统硬件设备的固有差异,需要对通信数据格式进行重定义;四是当一个硬件设备被调整到另一台设备控制计算机时也会引发对通信数据格式的修改;五是当仿真系统因硬件设备更新需要升级时,会引发对通信数据格式的修改;六是通信代码固化于硬件程序、仿真程序中,造成通信代码重复开发,而且当通信方的网络分布发生改变时,需要对硬件程序、仿真程序的相关通信代码进行修改。以上原因导致的通信数据格式的差异和修改,常常引发通信方因通信数据格式的不一致而造成开发、调试、集成成本的增加;通信代码固化于硬件程序、仿真程序中,使通信代码无法重用,造成相似源程序的重复性开发。这种重复性项目资源消耗,在不同的仿真项目中周而复始地出现,其根源是不同仿真系统硬件设备天然存在的固有差异。只有把差异部分从通用部分分离出来,才能达到解决问题的最佳有效。
发明内容
为了解决上述硬件设备采集、驱动、通信传输方式的不足,本发明的目的是公开一种仿真系统硬件控制量访问传输方法。一种较字节、bit位的底层描述更为直观、简洁、规范的硬件控制量描述方法,以便于硬件开发人员、仿真开发人员更容易地识别硬件控制量;以便硬件开发人员、仿真开发人员能够方便地使用该方法对硬件进行访问或控制;可以有效地解决通信数据格式的不一致性问题和通信数据格式的修改问题,使硬件控制量的通信传输变得十分容易;将差异部分从通用部分中分离,使其具有通用性,可在不同的仿真系统中被重复使用。为实现上述目的,本发明的技术解决方案如下:
一种仿真系统硬件控制量访问传输方法,包括硬件设备,一台或多台硬件计算机,一台或多台仿真计算机;硬件计算机和仿真计算机统称为主机;所述硬件设备与硬件计算机相联,所述硬件计算机和仿真计算机通过以太网络相联;所述的硬件计算机中运行硬件程序;所述的仿真计算机中运行仿真程序;所述硬件程序是直接或间接对硬件设备进行采样获取采样值和/或根据驱动值对硬件设备进行驱动的程序;所述仿真程序是使用硬件程序产生的采样值和/或产生对硬件设备进行驱动的驱动值、通常完成特定仿真任务的程序;所述采样值和/或驱动值称为硬件控制量,以下简称控制量;所述控制量被划分为连续输入量、连续输出量、离散输入量、离散输出量四种类别;所述连续输入量是值域属于实数、由硬件设备输入到系统的控制量;所述连续输出量是值域属于实数、由系统输出到硬件设备的控制量;所述离散输入量是值域属于有限整数、由硬件设备输入到系统的控制量;所述离散输出量是值域属于有限整数、由系统输出到硬件设备的控制量;所述连续输入量和连续输出量统称为连续量;所述离散输入量和离散输出量统称为离散量;所述连续输入量和离散输入量统称为输入量;所述连续输出量和离散输出量统称为输出量;
其特征在于,硬件计算机和仿真计算机中还包括硬件访问传输系统、硬件配置文件和传输配置文件;
硬件程序和仿真程序通过访问传输系统进行硬件控制量的访问和传输;硬件程序和仿真程序称为访问传输系统的客户程序;所述访问是指设置硬件控制量的值、获取硬件控制量的值,还可包括获取硬件控制量的数量;所述传输是指将硬件控制量的值从一个客户程序传输到另一个客户程序;
所述硬件配置文件用于定义硬件控制量标识符,还可包括值域范围;所述控制量标识符用于唯一地确定控制量,必须为仿真系统内的每个控制量都定义一个标识符;
所述传输配置文件用于定义硬件控制量的接收配置、发送配置及其它与传输相关的信息;所述发送配置用于定义发送路由;所述接收配置、发送配置使用IP地址、端口或其它可确定IP地址、端口的数据表达进行定义;
每个硬件程序和仿真程序对应一个访问传输系统、一个硬件配置文件、一个传输配置文件;所有客户程序的访问传输系统是完全相同的;所有客户程序的硬件配置文件的语法格式和有效内容是完全一致的;所有客户程序的传输配置文件的语法格式是完全一致的,有效内容通常是不一致的;
每台主机运行一个或多个客户程序;
访问传输系统提供的编程接口包括进行访问接口,还可包括初始化接口、传输接口和获取控制量个数的枚举接口;
访问传输系统具有通用性,可不做任何修改地应用于任何仿真系统,通过配置新的硬件配置文件、传输配置文件就可完成新的仿真系统的控制量的访问和传输。
访问传输系统可实现为静态库、动态库或组件;
所述硬件控制量访问传输方法步骤如下:
步骤1,定义硬件配置文件;
步骤2,按照客户程序之间的硬件控制量传输关系,定义传输配置文件;
步骤3,访问传输系统的初始化;
访问传输系统执行的初始化操作包括:
a)对硬件配置文件进行语法、语义分析,在内存创建完全反映其信息的数据结构及其它派生数据结构;
b)对传输配置文件进行语法、语义分析,在内存创建完全反映其信息的的数据结构;
以下步骤对硬件配置文件、传输配置文件信息的引用都是指对其内存数据结构相关信息的引用;
步骤4,硬件程序产生输入量的采样值,通过访问接口,把采样值传输给访问传输系统;
步骤5,访问传输系统执行发送操作,所述发送操作步骤如下:
a)生成传输数据包;
b)按照传输配置文件定义的发送配置发送传输数据包;
步骤6,访问传输系统执行接收操作,所述接收操作步骤如下:
a)按照硬件传输配置文件定义的接收配置,接收传输数据包;
b)执行数据包解析,取得驱动值;
步骤7,硬件程序通过访问接口取得驱动值,对硬件设备进行驱动;
步骤8,访问传输系统执行接收操作,所述接收操作步骤如下:
a)按照传输配置文件定义的接收配置,接收传输数据包;
b)执行数据包解析,取得采样值;
步骤9,仿真程序通过访问接口取得采样值;
步骤10,仿真程序完成仿真任务,产生输出量的驱动值,通过访问接口把驱动值传输给访问传输系统;
步骤11,访问传输系统执行发送操作,所述发送操作步骤如下;
a)生成传输数据包;
b)按照传输配置文件的发送配置发送传输数据包;
根据本发明的实施例,所述控制量标识符采用二维表示法,具体形式如下:
ri (面板号, 面板局部控制量号):连续输入量;
ro (面板号, 面板局部控制量号):连续输出量;
si (面板号, 面板局部控制量号):离散输入量;
so (面板号, 面板局部控制量号):离散输出量;
在二维标注法的编程接口实现上,可以采用紧缩二维索引来提高二维标注法的存储效率和访问时间效率。
根据本发明的实施例,访问传输系统的访问接口在源程序中可用做左值。
根据本发明的实施例,所述离散量的状态由基于0的连续整数表示,并可通过访问传输系统的访问接口取得这些值;
根据本发明的实施例,所述访问传输系统提供如下C++语言形式的接口:
(1)初始化接口包括:
a)void rsio_init();
(2)访问接口
a)double& ri(int i, int j);
返回访问控制量ri(i, j)的引用;
其中,i为面板号,j为面板局部硬件控制量号,以下i,j的含义同;
b)double& ro(int i, int j);
返回访问控制量ro(i, j)的引用;
c)unsigned char& si(int i, int j);
返回访问控制量si(i, j)的引用;
d)unsigned char& so(int i, int j);
返回访问控制量so(i, j)的引用;
e)double& ri(int k);
返回第k个连续输入量的引用;
其中,k为全局控制量号,全局控制量号为按照控制量标识符面板号优先、面板号和面板局部控制量号从小到到大的顺序依次排列为从0开始的连续递增的整数,以下k的含义同;
f)double& ro(int k);
返回访问第k个连续输出量的引用;
g)unsigned char& si(int k);
返回访问第k个离散输入量的引用;
h)unsigned char& so(int k);
返回访问第k个离散输出量的引用;
(3)枚举接口:
a)int ri_cnt ();
返回连续输入量数量;
b)int ro_cnt ();
返回连续输出量数量;
c)int si_cnt ();
返回离散输入量数量;
d)int so_cnt ();
返回离散输出量数量;
(4)传输接口
a)void s_update();
实现硬件控制量发送操作;
b)void r_update();
实现硬件控制量接收操作。
有益效果:一、本发明提供了硬件控制量访问传输方法,包括硬件设备,硬件控制计算机,仿真开发计算机与硬件设备和以太网络连接;所述的硬件控制计算机中运行硬件控制程序;仿真开发计算机运行仿真开发程序;
硬件控制计算机,仿真开发计算机是一台计算机或是多台计算机,硬件访问传输系统、仿真访问传输系统同时支持同一个仿真系统的多台计算机内的多个不同的客户程序,或在同一台计算机上同时运行多个客户程序。
使用控制量标识符表示法替代字节、bit位,并使用访问传输系统实现了控制量标识符表示法。在本发明的实施例中,控制量标识符采用二维表示法,通过紧缩二维索引解决简洁、方便与存储效率和访问时间效率之间的矛盾。控制量标识符表示法给出了一种直观、简洁、规范的硬件控制量描述方法,它克服了基于字节、bit位的底层描述的局限,使硬件开发人员、仿真开发人员可以无二义性地、极方便地识别硬件控制量,可简洁、方便地在源程序中使用控制量标识符对硬件控制量进行访问,避免了基于字节、bit位解析的低效和易错;控制量标识符表示法也可以用于技术文档描述和系统需求描述,消除文字描述的不精确性;ri、ro、si、so的使用,可以非常容易地识别硬件控制量的类型,一维、二维下标的使用,可以非常容易地在面板图中定位硬件控制量,无论对于提高源程序的可阅读性、还是技术文档的可阅读性,都是十分有益的。
二、通过配置新的硬件配置文件,可以方便地确定仿真系统内的硬件控制量需求,并能快速适应硬件控制量的变化,因为硬件控制量的变化只需变更硬件配置文件。
三、通过硬件配置文件,使所有客户程序的通信数据格式得以统一,可以有效地解决通信数据格式的不一致性问题和通信数据格式的修改问题,消除了通信数据格式的维护负担。
四、通过硬件传输配置文件、仿真传输配置文件可以方便地确定仿真系统内客户之间的通信结构,并能快速适应这种通信结构的变化,因为通信结构的变化只需变更硬件传输配置文件、仿真传输配置文件,而通常采用的在源程序中嵌入这些通信语句的方法则必须修改源程序。
五、通过硬件配置文件、硬件传输配置文件、仿真传输配置文件,实现了将差异部分从通用部分中分离的目标,使访问传输系统具有通用性,可在不同的仿真系统中被重复使用。差异部分为硬件配置文件和传输配置文件,通用部分为访问传输系统本身。对于新的仿真系统,只需通过修改硬件配置文件和传输配置文件这两个配置文件,就可实现另一个仿真系统对硬件控制量的访问和网络传输任务,而且不会出现差错,因为关键的代码已由访问传输系统实现。本发明的方法有效地避免了重复性劳动和相关项目资源消耗,对提高仿真系统的相关工程的开发效率和相关产品质量具有积极作用。
附图说明
图1是本发明的系统示意图。
图2是访问传输系统的示意图。
图3是根据硬件配置文件(15)形成的内存主要数据结构图。
图4是根据传输配置文件(16)形成的内存主要数据结构图。
图5是初始化模块(201)的程序流程图。
图6是自动更新模块(205)的程序流程图。
图7是接收更新模块(207)的程序流程图。
图8是发送更新模块(306)的程序流程图。
具体实施方式
下面结合附图和实施方式对本发明作进一步说明。
一种仿真系统硬件控制量访问传输方法,如图1所示,包括硬件设备110,一台或多台硬件计算机121,一台或多台仿真计算机122;硬件计算机121和仿真计算机122统称为主机;所述硬件设备110与硬件计算机121相联,所述硬件计算机121和仿真计算机122通过以太网络180相联;所述的硬件计算机121中运行硬件程序131;所述的仿真计算机122中运行仿真程序132;所述硬件程序131是直接或间接对硬件设备110进行采样获取采样值和/或根据驱动值对硬件设备110进行驱动的程序;所述仿真程序132是使用硬件程序131产生的采样值和/或产生对硬件设备110进行驱动的驱动值、通常完成特定仿真任务的程序;所述采样值和/或驱动值称为硬件控制量,以下简称控制量;所述硬件控制量被划分为连续输入量、连续输出量、离散输入量、离散输出量四种类别;所述连续输入量是值域属于实数、由硬件设备输入到系统的控制量;所述连续输出量是值域属于实数、由系统输出到硬件设备的控制量;所述离散输入量是值域属于有限整数、由硬件设备输入到系统的控制量;所述离散输出量是值域属于有限整数、由系统输出到硬件设备的控制量;所述连续输入量和连续输出量统称为连续量;所述离散输入量和离散输出量统称为离散量;所述连续输入量和离散输入量统称为输入量;所述连续输出量和离散输出量统称为输出量;
其特征在于,硬件计算机121和仿真计算机122中还包括硬件访问传输系统14A、14B,以下称访问传输系统、硬件配置文件15A、15B和传输配置文件16A、16B;
硬件程序131和仿真程序132通过访问传输系统14A、14B进行硬件控制量的访问和传输;硬件程序131和仿真程序132称为访问传输系统14A、14B的客户程序;所述访问是指设置硬件控制量的值、获取硬件控制量的值,还可包括获取硬件控制量的数量;所述传输是指将硬件控制量的值从一个客户程序传输到另一个客户程序;
所述硬件配置文件15A、15B用于定义硬件控制量标识符,还可包括值域范围;所述控制量标识符用于唯一地确定控制量,必须为仿真系统内的每个控制量都定义一个标识符;
在本实施例中,所述控制量标识符采用二维表示法,具体形式如下:
ri (面板号, 面板局部控制量号):连续输入量;
ro (面板号, 面板局部控制量号):连续输出量;
si (面板号, 面板局部控制量号):离散输入量;
so (面板号, 面板局部控制量号):离散输出量;
在二维标注法的编程接口实现上,可以采用紧缩二维索引412、422、432、442来提高二维标注法的存储效率和访问时间效率。
在本实施例中,所述硬件配置文件15A、15B的语法如下:
m_seq
k_seq
m_seq: m| m m_seq
k_seq: k| k k_seq
m:<ri (i, j):real_type>|<ri(i, j)> |
<ro (i, j):real_type>|<ro(i, j)>
k:<si (i, j):max_state>|<si(i, j)>|
<so (i, j):max_state>|<so(i, j)>
i:非负整数
j:非负整数
real_type:double|float
max_state:非负整数
所述传输配置文件16A、16B用于定义硬件控制量的接收配置、发送配置及其它与传输相关的信息;所述发送配置用于定义发送路由;所述接收配置、发送配置使用IP地址、端口或其它可确定IP地址、端口的数据表达进行定义;
在本实施例中,所述传输配置文件16A、16B的语法如下:
<update:period>
<recv>r_seq</recv>
<send:ri >s_seq</send:ri >
<send:si >s_seq</send:si >
<send:ro >s_seq</send:ro >
<send:so >s_seq</send:so >
<send:ri,si>s_seq</send:ri,si>
<send:ro,so>s_seq</send:ro,so>
period:-1|ms
ms: 非0整数
r_seq: r| r r_seq
s_seq: s| s s_seq
r:< local_ip,local_port>
s:< local_ip,local_port><remote_ip,remote_port>
local_ip: ip
remote _ip: ip
local_port: port
remote _port: port
ip:0.0.0.0至255.255.255.255
port:0至65536
每个硬件程序131和仿真程序132对应一个访问传输系统14A、14B、一个硬件配置文件15A、15B、一个传输配置文件16A、16B;所有客户程序131、132的访问传输系统14A、14B是完全相同的;所有客户程序131、132的硬件配置文件15A、15B的语法格式和有效内容是完全一致的;所有客户程序131、132的传输配置文件16A、16B的语法格式是完全一致的,有效内容通常是不一致的;
每台主机运行一个或多个客户程序;
如图2所示,所述访问传输系统14以外部配置文件15、16为输入,包括初始化模块201、硬件配置解析模块202、传输配置解析模块203、控制量存储区创建模块204、自动更新模块205、发送更新模块206、接收更新模块207、数据包生成模块208、数据包解析模块209、控制量访问模块210;
所述访问传输系统14还包括进行访问接口211、初始化接口210、传输接口212和获取控制量个数的枚举接口213;
在本实施例中,C++语言形式的接口实现为:
(1)初始化接口210: 由初始化模块201实现
a)void rsio_init();
(2)访问接口(211):由控制量访问模块210实现
a)double& ri(int i, int j);
返回访问控制量ri(i, j)的引用;
其中,i为面板号,j为面板局部硬件控制量号,以下i,j的含义同;
b)double& ro(int i, int j);
返回访问控制量ro(i, j)的引用;
c)unsigned char& si(int i, int j);
返回访问控制量si(i, j)的引用;
d)unsigned char& so(int i, int j);
返回访问控制量so(i, j)的引用;
e)double& ri(int k);
返回第k个连续输入量的引用;
其中,k为全局控制量号,全局控制量号为按照控制量标识符面板号优先、面板号和面板局部控制量号从小到到大的顺序依次排列为从0开始的连续递增的整数,以下k的含义同;
全局控制量号主要是支持硬件控制量循环遍历,通常用于控制量初始化赋值;在源程序中利用循环语句对控制量进行遍历设置初始化值0的C++语句示例为:
int n=ri_cnt(); //取连续输入控制量总数
while(n--) ri(n)=0;//每个连续输入控制量置0
f)double& ro(int k);
返回访问第k个连续输出量的引用;
g)unsigned char& si(int k);
返回访问第k个离散输入量的引用;
h)unsigned char& so(int k);
返回访问第k个离散输出量的引用;
(3)枚举接口213:由控制量访问模块210实现
a)int ri_cnt ();
返回连续输入量数量;
b)int ro_cnt ();
返回连续输出量数量;
c)int si_cnt ();
返回离散输入量数量;
d)int so_cnt ();
返回离散输出量数量;
(4)传输接口212
a)void s_update();
由发送更新模块206实现为硬件控制量发送操作;
b)void r_update();
由接收更新模块207实现为硬件控制量接收操作。
本实施例,访问传输系统14的访问接口211在源程序中可用做左值。
本实施例,所述离散量的状态由基于0的连续整数表示,并可通过访问传输系统14的访问接口211取得这些值;
比如,一个开关si(1,2)有三档,则依次表示为:
一档0,二档1,三档2。当开关si(1,2)处于二档时,在源程序中有语句:
x= si(1,2);
则x的值为2。显然,这种方法比使用bit位表示开关档位更方便易用。
所述初始化模块201执行如下步骤(如图5):
S601,调用硬件配置解析模块202解析硬件配置文件15以创建控制量配置内存映射400(如图3);
S602,调用传输配置解析模块203解析传输配置文件16以创建传输配置内存映射500(如图4);
S603,调用控制量存储区创建模块204创建控制量存储区411、421、431、441;
S604,若发送周期580>0,则为自动更新,发送周期580为自动更新周期,此时,创建线程,该线程循环调用自动更新模块205以实现数据传输自动更新。
所述控制量存储区创建模块204执行如下步骤:
S1,根据连续输入量数量410、430、420、440及其值域范围413、433、423、443申请控制量存储区411、431、421、441;
S2,置控制量存储区411、431、421、441无效;
所述自动更新模块205的执行如下步骤(如图6):
S701,调用接收更新模块207接收控制量;
S702,S703,每隔发送周期580,调用一次发送更新模块206发送控制量。
所述发送更新模块206的执行如下步骤(如图8):
S901,调用数据包生成模块208将控制量存储区411、421、431、 441压缩至连续压缩区buf的对应区段buf1,buf2,buf3, buf4;
S902,对发送配置520, 发送区段buf1;对发送配置530, 发送区段buf2;对发送配置540, 发送区段buf1, buf2;对发送配置550, 发送区段buf3;对发送配置560, 发送区段buf4;对发送配置570, 发送区段buf3, buf4;
所述接收更新模块207的执行如下步骤(如图7):
S801,对接收配置510的每一个配置项执行S802,S803, S804;
S802),接收传输数据包17B、17D;
S803,S804,若接收成功,则调用数据包解析模块209将传输数据包17B、17D解析至控制量存储区411、421、431、441。
所述传输数据包17A、17B、17C、17D由连续的数据块构成,以字节0xff标志所有数据块结束;数据块的类型和格式如下:
(1)连续量数据块
1个字节:块类型, 解释为unsigned char,
取值为1,连续输入量数据块,取值为2,连续输出量数据块;
N个字节:连续存储如下数据片段:
2个字节: 本数据片段第一个有效控制量序号idx1,解释为short,当idx1≥0时有效,当idx1<0时表示数据块结束;
2个字节: 本数据片段最后一个有效控制量序号idx2 (≥idx1), 解释为short;
M个字节: 连续存储序号从idx1至idx2的控制量,每个控制量的类型根据硬件配置文件301中定义的类型确定为doule或float;
(2)离散量数据块
1个字节:块类型, 解释为unsigned char,
取值为3, 离散输入量数据块,
取值为4, 离散输出量数据块;
N个字节:全部离散量,每个控制量的bit位连续存储,所需位数根据硬件配置文件15A、15B中定义的状态数确定,控制量的bit位全1表示无效控制量。
所述数据包生成模块208按照上述传输数据包17A、17B、17C、17D格式的定义,对连续量,只将控制量存储区421、441中的有效控制量存入传输数据包17A、17B、17C、17D,控制量的大小由值域范围413、 433确定;对离散量,将控制量存储区421、441中的所有控制量压缩至传输数据包,依据值域范围413、 433按连续bit位存储。
所述数据包解析模块209上述传输数据包17A、17B、17C、17D格式的定义,对传输数据包17A、17B、17C、17D进行解析,丢弃无效的控制量,以有效控制量对控制量存储区411、421、431、 441进行更新。
访问传输系统(14)具有通用性,可不做任何修改地应用于任何仿真系统,通过配置新的硬件配置文件15、传输配置文件16就可完成新的仿真系统的控制量的访问和传输。
访问传输系统14可实现为静态库、动态库或组件;
所述硬件控制量访问传输方法步骤如下:
步骤1,定义硬件配置文件15A、15B;
步骤2,按照客户程序之间的硬件控制量传输关系,定义传输配置文件16A、16B;
步骤3,访问传输系统14A、14B的初始化;
访问传输系统14A、14B执行初始化模块201;
当访问传输系统14A、14B实现为动态库或组件时,可在动态库或组件加载时调用初始化模块201执行初始化操作;而当访问传输系统14A、14B实现为静态库时,无法实现对初始化模块201的自动调用,必须在客户程序131、132中通过初始化接口210rs_init显式执行初始化模块201;
步骤4,硬件程序131产生输入量的采样值,通过访问接口211,把采样值传输给访问传输系统14A;访问接口211的调用形式为:
ri(i,j)=采样值;si(i,j)=采样值;
步骤5,访问传输系统14A执行发送操作,所述发送操作即调用发送更新模块206;
步骤6,访问传输系统14A执行接收操作,所述接收操作即调用接收更新模块207;
步骤7,硬件程序131通过访问接口211取得驱动值,对硬件设备进行驱动;访问接口211的调用形式为:
驱动值=ro(i,j);驱动值=so(i,j);
步骤8,访问传输系统14B执行接收操作,所述接收操作即调用接收更新模块207;
步骤9,仿真程序132通过访问接口211取得采样值;访问接口211的调用形式为:
采样值=ri(i,j);采样值=si(i,j);
步骤10,仿真程序132完成仿真任务,产生输出量的驱动值,通过访问接口211把驱动值传输给访问传输系统14B;访问接口211的调用形式为:
ro(i,j)=驱动值;so(i,j)=驱动值;
步骤11,访问传输系统14B执行发送操作,所述发送操作即调用发送更新模块206;
若在传输配置文件16A、16B中定义的发送周期大于0,则在初始化模块201的步骤S604创建线程,该线程循环调用自动更新模块205, 此时,步骤5、步骤11的发送更新模块206及步骤6、步骤8的接收更新模块207是由访问传输系统14A、14B通过自动更新模块205自动执行的;否则,必须在客户程序131、132中通过传输接口210的s_update显示执行发送更新模块206、r_update显示执行接收更新模块207。