CN101635711A - 可编程字符通讯方法 - Google Patents

可编程字符通讯方法 Download PDF

Info

Publication number
CN101635711A
CN101635711A CN200910041860A CN200910041860A CN101635711A CN 101635711 A CN101635711 A CN 101635711A CN 200910041860 A CN200910041860 A CN 200910041860A CN 200910041860 A CN200910041860 A CN 200910041860A CN 101635711 A CN101635711 A CN 101635711A
Authority
CN
China
Prior art keywords
character
communication
text
chosen
string
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.)
Granted
Application number
CN200910041860A
Other languages
English (en)
Other versions
CN101635711B (zh
Inventor
师建中
钟流举
秦子彬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GUANGDONG PROVINCE ENVIRONMENTAL MONITORING CENTER
Original Assignee
GUANGDONG PROVINCE ENVIRONMENTAL MONITORING CENTER
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by GUANGDONG PROVINCE ENVIRONMENTAL MONITORING CENTER filed Critical GUANGDONG PROVINCE ENVIRONMENTAL MONITORING CENTER
Priority to CN2009100418609A priority Critical patent/CN101635711B/zh
Publication of CN101635711A publication Critical patent/CN101635711A/zh
Application granted granted Critical
Publication of CN101635711B publication Critical patent/CN101635711B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种可编程字符通讯方法,包括如下步骤:(1)通讯双方约定每一项通讯任务的通讯对方和执行方式;(2)通讯双方根据上述约定的通讯对方和执行方式执行发送或接收顺序字符文本;(3)通讯双方中任一方收到通讯对方发送的顺序字符文本字符串后,将该顺序字符文本字符串分割为若干个顺序间隔排队的不变部分和可变部分;(4)根据预定义的解析方法,将上述分割后的顺序字符文本字符串解析为计算机可识别的字符指令。本发明能够面向通讯协议多样化、通讯任务可调化的发展需求,设计开发新一代智能型计算机及服务器通讯系统和软件,具有广泛的应用领域。

Description

可编程字符通讯方法
技术领域
本发明属于自动化工程、计算机软件及字符信息处理与通讯技术领域,特别涉及一种可编程字符通讯方法。
背景技术
目前,使用计算机测控各种仪器、设备和装置,自动执行作业任务,以及构建集约式数据信息服务平台,已经成为自动化技术的主流发展方向。在现代自动化工程系统中,所有的仪器、设备、计算机、服务器,都被错综复杂的通讯线路连接起来——包括有线与无线形式,电能与光能载体。所有对仪器设备进行测控的指令交互,数据信息资源化的集约存储、传输、查询服务,用户调用数据信息平台提供的浏览、管理、监控界面等等,都离不开基于计算机程序技术实现的通讯。
而这类基于计算机程序技术的通讯的表现形式,与人类通过语言行为进行通讯相仿,即以字符串为通讯编码内容;区别仅在于,计算机所用的字符是以二进制代码存储和传输,而人类能够直接使用可书写和发音的文字符号作为字符。在形式上都是可直接传送字符串,或间接传送约定的媒介信号导致对方解释为对应的字符串。显然,在此类通讯中,通讯双方必须执行同一通讯协议(如同对话双方采用同一语言一样),才能准确解读来自对方的字符串,以及准确生成送达对方的字符串。
然而,由于装置集成复杂程度、用途功能、技术方法、设计思路(乃至设计者个性化的能力、偏爱)等等方面的区别,根本不可能强制所有的仪器、设备、数据信息平台都能够使用同一通讯协议。虽然多年来各标准化组织、机构,一直致力于研究开发自动化工程系统通讯方面的标准化、通用化技术,产生了一些非常出色且影响深远的标准协议;如,Mode Bus、http、xml等。但还远远不能从行为级(而不仅仅是编码级)满足各种自动化工程系统的千差万别的通讯需求——即使是在可预见的将来。这就使我们在用计算机程序与各式各样的仪器、设备、数据信息平台通讯时,必须执行各式各样的通讯协议。当一个自动化工程系统包含有多个品种、型式的仪器、设备、数据信息平台,那么按照所需执行的通讯协议,为所需实现的测控行为设计开发专用的通讯程序软件,就会变得特别复杂、困难。
传统上,自动化工程系统的通讯软件,采用固定程式的技术方法(相对于本发明而言)。即针对工程建造阶段已知的,要求采用的通讯协议和要求实现的测控行为,逐一对应编写专用的程序部分,如进程、函数、模块,条件分支处理等等。结果对于自动化工程系统中的任何一台计算机(包括服务器),其通讯软件固定了所能采用的某个或某些通讯协议,对规定品种型式的仪器、设备、数据信息平台,做规定的测控行为,完成规定的作业任务。这样的通讯方法,在应用上存在很大的局限性,因为:只要出现以下任何一种情况,原先使用的通讯软件就只能废弃,必须为之重新设计适用通讯软件:
1、在系统中更新、更换某品种型式的仪器、设备、数据信息平台时,如果需要采用不同的通讯协议。
2、在系统中增加新品种型式的仪器、设备、数据信息平台时,如果其通讯协议没有包含在原先使用的通讯软件中。
3、在需要增加测控行为时;例如,通讯对方性能升级后可进行更多测控作业。
4、在需要改变通讯流程时;例如,把定时发送改变为接收后应答。
5、在需要改变字符串包含内容时;例如,通讯对方在同次传输中在原字符串前后增加其他字符串。
6、需要增加与之交换、共享数据信息的邻居系统时;例如,某环境空气自动监测系统,增加从某地球卫星遥感系统,自动获取某波段扫描数据。
当代信息科技的快速发展,使自动化工程系统,特别是提供数据信息产品与服务的系统(例如环境污染监控类型的系统和灾害预警、应急类型的系统等),普遍面临实现专业多元化、集成动态化、扩展持续化和交流外向化的迫切需求。现有技术方法的上述局限,使之很难适应、满足这些前沿级的技术需求——经多年从事此类计算机程序软件的设计经验表明,即使能够为系统配备有常备的软件人员,解决问题的效率和效果仍然不可能优佳。
此外还必须注意到,自动化工程系统中测控行为都是针对具体的某种仪器、设备或数据信息平台,因而具有非常鲜明的专业分工性和分类性;譬如气象监测专业与环境污染监测专业之间的区分。计算机程序设计者在编程、调试中,必须遵从测控行为所属专业的专家的指导,而该设计者对于这些专家指导意见的领会水平,局限着其所完成程序最终的成效与品质。
发明内容
基于上述现有技术中存在的问题,本发明的目的在于提供一种可编程字符通讯方法。并基于该通讯方法,为计算机和服务器设计、安装软设备形式的具备极强可编程性的通讯系统软件;面向所有可能需要采用的基于计算机字符编码的通讯协议——包括现有的和未来新出现的,实行直接让测控行为所属专业的专业人员,能够根据工作中需要完成的通讯作业,自行编排、配置、调整出各种通讯任务——而不需依赖软件开发人员不断地修改或更新系统软件。
本发明所采用的技术方案:一种可编程字符通讯方法,包括如下步骤:
(1)通讯双方约定每一项通讯任务的通讯对方和执行方式;
(2)通讯双方根据上述约定的通讯对方和执行方式执行发送或接收顺序字符文本;
(3)通讯双方中任一方收到通讯对方发送的顺序字符文本字符串后,将该顺序字符文本字符串分割为若干个顺序间隔排队的不变部分和可变部分;
(4)根据预定义的解析方法,将上述分割后的顺序字符文本字符串解析为计算机可识别的字符指令。
上述步骤(1)中的通讯对方通过连线端口,或网络地址,或连接设置文本的约定表达形式选定。所述步骤(1)中的执行方式约定为或主动报送,或接收应答,或发送接收。
上述步骤(2)中的通讯任务执行方式约定为主动发送时,则只能向通讯对方发送一个顺序字符文本;通讯任务执行方式约定为接收应答时,则先接收一个顺序字符文本,如果处理产生了一个顺序字符文本,则发送给对方;通讯任务执行方式约定为发送接收时,先发送一个顺序字符文本,然后在指定的时间内等待接收一个顺序字符文本。
上述步骤(3)中的顺序字符文本字符串的分割方式为:可变部分夹在两个不变部分之间;字符串的开头和结束确定为不变部分,且可以为空,当字符串仅有可变部分时则其开头与结束部分均为空,当字符串没有可变部分时则其开头与结束部分任意一个为空。
上述步骤(4)中的解析方法具体通过以下步骤实现:
(a)将所有的不变部分作为排序化配置参数,按序逐个在接收到的顺序字符文本字符串中一一印对,以确认该字符串是否属于本次通讯任务的顺序字符文本,或判断是否传输成功;
(b)建立虚拟线形印模方法,从顺序字符文本字符串中获取可变部分的字符内容;
(c)建立虚拟顺序分步填写方法,生成通讯任务所需的发送字符串;
上述步骤(b)中的虚拟线形印模方法是指用不变部分的排序化配置参数作为印模的各凸模段,在对字符串进行印压去除所有不变部分的字符后,从印模的凹模段取得同样排序化的各可变部分的字符内容;利用上述凹模段提供的字符内容,按照预先配置的文本字符处理关系实现相关操作需求。
上述步骤(c)中的虚拟顺序分步填写方法是指从发送字符串开头的不变部分开始,渐增式按步填写发送用字符串的所有不变部分和可变部分;填写时,遵从预先编排的数据信息来源与处理的规程化操作配置以获得所需字符串。
经过在不同专业需求的计算机和服务器测试证明,本发明所述的可编程字符通讯方法解决了传统技术中存在的各种难题和局限。尤其突出的是:能够面向通讯协议多样化、通讯任务可调化的发展需求,设计开发新一代智能型计算机及服务器通讯系统和软件。也能够以编程构件操作取代源代码编写,让通讯软件的使用者自主地按照通讯业务需求和变化,或创建、或修改、或取消通讯软件承担的通讯任务。
以环境污染自动监测工作为例:包含有环境空气、环境水、污染源,以及气象、水文等等专业监测项目;在各种站点、实验室需要使用很多品种的测量、分析仪器设备;而且服务于各级、各职能的监控管理部门。这使环境污染自动监测类型的自动化工程系统的建造和运行成为目前通讯需求最为复杂的类型之一——因为其通讯协议和通讯任务最为多样且多变。通过使用本发明提供的可编程字符通讯方法,能够解决此间通讯需求的技术方法及其软件,具有广泛的应用领域。
附图说明
图1为本发明所述可编程字符通讯方法的流程图;
图2为基于本发明所述字符通讯方法开发的范例软件的计算机界面图。其中:
1[Running]按钮;            12[执行方式参数]文本框;
2[通讯任务录]框;           13[通讯通道]列表框;
3[类型]下拉列表框;         14[配置字符串]文本框;
4[区域]下拉列表框;         15[Save]按钮;
5[站名]下拉列表框;         16[Delete]按钮;
6[编号]文本框;             17[Save As]按钮;
7[执行]复选钮               18[Delete All]按钮;
8[任务名称]下拉列表框;     19[监控指标/实时数据]按钮;
9[接收应答]单选钮;         20[Save As]按钮;
10[主动发送]单选钮;        21[接收虚拟线形印模方法]框;
11[发送接收]单选钮;        22[印模框图]列表框;
23[模段]列表框;                      41[字段]列表框;
24[凹处理]列表框;                    42[=]单选钮;
25[说明]文本框;                      43[<>]单选钮;
26[参数]对话框;                      44[>]单选钮;
27[流程]文本框;                      45[<]单选钮;
28[关联]按钮;                        46[>=]单选钮;
29[清除]按钮;                        47[<=]单选钮;
30[Save]按钮;                        49[指标]列表框;
31[Delete]按钮;                      50[设定值]文本框;
32[发送应答虚拟分步填写方法]框;      51[查询语句]文本框;
33[步序]列表框;                      52[关联]按钮;
34[步处理]列表框;                    53[排序]按钮;
35[说明]文本框;                      54[清除]按钮;
36[参数]对话框;                      55[Add]按钮;
37[数据源]展示框;                    56[Int]按钮;
38[记录表]下拉列表框;                57[Save]按钮;
39[and]单选钮;                       58[Delete]按钮。
40[or]单选钮;
具体实施方式
下面结合附图对本发明的具体结构作进一步的描述。
如图1所示,本发明提出一种可编程字符通讯方法,其包括如下步骤:
(1)通讯双方约定每一项通讯任务的通讯对方和执行方式;
(2)通讯双方根据上述约定的通讯对方和执行方式执行发送或接收顺序字符文本;
(3)通讯双方中任一方收到通讯对方发送的顺序字符文本字符串后,将该顺序字符文本字符串分割为若干个顺序间隔排队的不变部分和可变部分;
(4)根据预定义的解析方法,将上述分割后的顺序字符文本字符串解析为计算机可识别的字符指令。
上述可编程字符通讯方法是经过详细研究分析大量的通讯协议,包括来自标准化组织、机构的标准协议,以及来自那些不采用或者不仅仅采用标准协议的各种仪器、设备、数据信息平台产品(装置)的专用协议;并结合信息科学、人工智能科学、计算机网络科学等学科知识,研究字符通讯协议设计、编制的原理和技术及其未来发展,总结得出。对于自动化工程系统任何一个切实可行的字符通讯协议,无论其体系是复杂还是简单,都不可或缺地具备以下本发明所提出的特性:
1、约定性:任何一项通讯任务都服务于特定的一个测控行为;因而具备确切的、固定的通讯对方和执行方式。可通过约定通讯任务的唯一性命名和配置,分别约定与不同的通讯对方通讯。通讯对方可通过连线端口、网络地址、连接设置文本等约定表达形式选定。执行方式可约定为或主动报送,或接收应答,或发送接收。
2、完整性:字符通讯任务的每一次成功的传输,总是使接收方能够收到一个完整的顺序字符文本,即收到的字符串具有确切、齐全的开始与结束(起点与终点);否则认定传输没有成功。此外,通讯任务执行方式约定为主动发送时,则只能向通讯对方发送一个顺序字符文本;为接收应答时,则先接收一个顺序字符文本,如果处理产生了一个顺序字符文本,则发送给对方;为发送接收时,先发送一个顺序字符文本,然后在指定的时间内等待接收一个顺序字符文本。
3、分割性:此间由通讯协议规范的计算机程序实现的通讯,属于人工智能级的语言行为,具有固定不变的表述样式。因而任何一个符合顺序字符文本完整性的字符串,都必然能够被分割为若干个顺序间隔排队的,固定不变的部分和随机可变部分。分割原理:可变部分总是夹在两个不变部分之间;字符串开头和结束必定为不变部分,且可以为空——字符串仅有可变部分时则其开头与结束部分均为空,字符串没有可变部分时则其开头与结束部分任意一个为空。这样分割产生的可变部分,对于实施复杂测控行为是必不可少的。利用这种分割性:
a、可以预先把所有不变部分作为排序化配置参数,按序逐个在接收到的字符串中一一印对,以确认该字符串是否属于本次通讯任务的顺序字符文本,或判断是否传输成功。
b、可以建立一种虚拟线形印模方法,从字符串中获取可变部分的字符内容。用不变部分的排序化配置参数作为印模的各凸模段,在对字符串“印压”后——去除所有不变部分的字符,从印模的凹模段取得同样排序化的各可变部分的字符内容。进一步,就可以使用这些凹模段提供的字符内容,按照预先配置的文本字符处理关系实现测控行为的相关操作需求——本发明定义为“凹处理”,用于凸模段的字符定义为“凸字符”,用于凹模段的字符定义为“凹字符”。
c、可以建立一种虚拟顺序分步填写方法,生成通讯任务所需发送字符串。从该发送字符串开头的不变部分开始,渐增式按步填写发送用字符串的所有不变部分和可变部分。填写时,遵从预先编排的数据信息来源(包括上述凹模段提供的内容)与处理的,规程化操作配置以获得所需字符串——本发明定义为“步处理”,步处理所得字符定义为“步字符”。
4、程式性:任何切实可行的字符通讯协议都只拥有数量有限的各项通讯任务,这些任务在系统运行中总是持续产生(由信号或定时事件触发),并要求反复执行。因而可设计适用的计算机程序,依据各项通讯任务的,接收程式和发送程式的一整套配置参数、指标,自动完成所有持续产生的通讯任务。另一方面无论是接收还是发送,所用字符串均可通过计算机字符处理程式生成和整理(包括查询、输入、定位、插入、运算、格式化、变换、校验等等);并且具备行为进化程式,即只要构思、定制出少数最简单处理功能,就可由此组合出所需复杂处理功能,应对广泛需求。
基于字符通讯协议的特性和上述可编程字符通讯方法,本发明设计了一个应用产品级的范例软件,其计算机界面如图2所示。下面结合附图2,描述在本发明中开发、使用的可编程字符通讯方法。
上述范例软件在计算机(包括服务器)的安装过程并不涉及任何通讯协议和通讯任务。运行本范例软件的计算机(或服务器),可用两种方法得知其通讯任务需求与实施流程:一种是直接引用同样运行本范例软件并承担相同需求的其他计算机(或服务器)中现成的通讯任务配置;另一种是使用图2所示的编程构件,按照通讯协议规范和通讯任务需求,设置、编排出包含所有需用接收程式与发送程式的本机通讯任务配置。同样地,如果因为本机的在线用户、通讯协议、测控行为等方面需求发生改变,需要或添加、或修改、或取消某些通讯任务,也可以随时使用图2所示的编程构件完成。
图2界面中各编程构件用途、功能和处理规则说明如下:
1·[Running]按钮1。点击可交替切换运行状态。其标签显示为“Running”则执行通讯任务;显示为“Stop”则暂停执行通讯任务,以利于进行通讯任务创建、修改、取消操作。
2·在[通讯任务录]框2内:遵从通讯任务约定性、完整性
2·1·用[类型]、[区域]、[站名]三个下拉列表框3、4、5显示、选定、新建用户,在[编号]文本框6中显示、输入(新建的)被选定用户在系统中唯一化的编号,并可用[执行]复选钮7手动设定允许或禁止执行被选定用户的通讯任务。
2·2·用[任务名称]下拉列表框8,显示、选定、新建被选定用户的所有通讯任务。可在通讯任务名称中清晰提示其通讯协议和作业目的,以利于同一用户实施多种通讯协议和执行多个通讯任务。
2·3·用[接收应答]、[主动发送]、[发送接收]三个单选钮9、10、11,显示、选定被选定通讯任务的执行方式。并用文本框12显示、输入配置参数。当选定[接收应答]单选钮9,文本框12标签显示“身份识别口令”,则其中的字符为被选定通讯任务中的身份识别口令;当选定[主动发送]单选钮10,文本框12标签显示“动作周期N秒”,则其中的数字为被选定通讯任务持续重复执行的定时周期;当选定[发送接收]单选钮11,文本框12标签显示“动作周期N秒”,则其中第一个数字为被选定通讯任务持续重复执行的定时周期,第二个数字为发送后等待接收的时间长度限制。
2·4·用[通讯通道]列表框13,显示本计算机或服务器进行通讯的所有通道(包括物理形式的和逻辑形式的),供被选定通讯任务选定。并用[配置字符串]文本框14显示、输入被选定通道的配置参数字符串(譬如:端口连线参数,网络地址及服务,数据源连接文本等等)。
本范例软件的上述用户及通讯任务配置用各编程构件,被刷新显示的跟进顺序为:[类型]下拉列表框2(始发);[区域]下拉列表框3;[站名]下拉列表框5;[编号]文本框6、[任务名称]下拉列表框8;[接收应答]、[主动发送]、[发送接收]3个单选钮9、10、11;文本框12;[通讯通道]列表框13;[配置字符串]文本框14。
2·5·用点击[Save]按钮15,可保存被选定通讯任务的配置。
2·6·用点击[Delete]按钮16,可删除被选定通讯任务的配置。
2·7·用点击[Save As]按钮17,可弹出本范例软件建立的对话界面,进行将被选定用户的所有通讯任务配置,导出给选定的其他用户的操作。从而尽可能减少重复操作,提高其他用户通讯任务配置效率。
2·8·用点击[Delete All]按钮18,可删除被选定用户的所有通讯任务配置。
2·9·用点击[监控指标/实时数据]按钮19,可弹出本范例软件建立的对话界面,对被选定用户所拥有的监控指标和实时数据项目,进行创建、修改、保存、删除等操作。
2·10·用点击[Save As]按钮20,可弹出本范例软件建立的对话界面,进行将被选定通讯任务接收程式和发送程式配置,导出给选定的本用户的其他通讯任务。从而尽可能减少重复操作,提高本用户其他通讯任务配置效率。
3·在上述2·1·到2·4·显示、选定了被选定用户、被选定通讯任务,并且[接收应答]、[发送接收]两个单选钮9、11其中任意一个被选定;则可为被选定通讯任务接收程式进行编程,在[接收虚拟线形印模方法]框21内:
3·1·在[印模框图]列表框22,显示出被选定通讯任务接收程式中各模段配置;可用于浏览和辅助选定需要修改配置的模段。其中凸模段配置参数为接收文本字符串的各不变部分——即凸字符,凹模段配置参数为各凹处理的本范例软件规约的专用表达式队列——执行后可获得最终需用凹字符。本列表框没有列表项,则表明被选定通讯任务没有配备接收程式。
3·2·用[模段]列表框23,显示、选定以1起计顺序间隔列表的各凸模段和凹模段,单数模段名取模段序数接“凸”字,双数模段名取模段序数接“凹”字。
其中,当被选定模段名属于凸模段,则[凹处理]列表框24为空,在[说明]文本框25可对凸模段的功能、参数、范例等作出文字说明,提供在线帮助。[参数]对话框26展示为文本框,供输入被选定凸模段的需用凸字符(即需接收的文本中应配置在被选定凸模段的不变部分)。在[流程]文本框27则实时跟随引用、显示[参数]对话框26输入的字符,作为被选定凸模段配置的凸字符。
当被选定模段名属于凹模段,则如下:
3·3·用[凹处理]列表框24,显示、选定本发明创建的各种凹处理功能。在[说明]文本框25可对被选定凹处理的功能、参数、范例等作出文字说明,提供在线帮助。在[参数]对话框26可针对被选定凹处理提供相关的辅助操作构件,以尽量避免字符输入操作。在[流程]文本框27可显示为被选定凹模段配置的凹处理专用表达式队列。点击[关联]按钮28,可按照被选定凹处理及输入、设定参数,自动生成本范例软件规约的相应专用表达式,并联接到[流程]文本框27中原有字符的结尾——即作为被选定凹模段的凹处理表达式队列的最后一项。点击[清除]按钮29可清空[流程]文本框27,以重新进行被选定凹模段的凹处理专用表达式队列的配置。
其中凹处理表达式队列执行规则为:从第一项表达式开始顺序执行至最后一项表达式;各表达式均取被选定凹模段的当前凹字符进行处理,而每一项表达式产生的结果均作为被选定凹模段的(新的)当前凹字符。本发明创建的各种凹处理功能,作用与使用说明如下:
3·3·1·凹处理“作为传输字符(默认)”:选定后,[参数]对话框26无效,无操作。专用表达式:(空)。功能:取被选定凹模段序数的“印压”结果为被选定凹模段当前凹字符。默认所有凹模段配置表达式队列中第一项总为本表达式(总为空)——即“印压”结果自动成为当前凹字符。
3·3·2·凹处理“提取字符-起点,长度”:选定后,[参数]对话框26展示为文本框,供显示、输入用“,”分隔的2个整数;第一个整数用于指定起点,第二个整数用于指定长度(字符数)。专用表达式:@@@提取字符-起点,长度:[被选定凹模段模段名]=(“第一个整数”,“第二个整数”)###。功能:从被选定凹模段当前凹字符中指定起点截取指定长度的字符,作为被选定凹模段当前凹字符;如果条件不足则保持不变。但为了兼容处理那些不变部分字符可能会出现在其前面可变部分字符中(某些基于字节级编码制的老式简单通讯协议)的接收字符文本,特别约定:如果“第一个整数”为0,则“第二个整数”用于确定“印压”必须保证本凹模段可获得字符的长度——即其前后两个凸模段之间具有固定不变的距离。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·3·凹处理“引用固定字符”:选定后,[参数]对话框26展示为文本框,供显示、输入字符。专用表达式:@@@引用固定字符:[被选定凹模段模段名]=(“输入的字符”)###。功能:用“输入的字符”作为凹模段当前凹字符。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·4·凹处理“合并字符”:选定后,[参数]对话框26展示为列表框,顺序列出被选定通讯任务接收程式所有的凹模段名,供选定。专用表达式:@@@合并字符:[被选定凹模段模段名]=(“选定的凹模段”)###。功能:将被选定凹模段当前凹字符与“选定的凹模段”当前凹字符联接,作为被选定凹模段当前凹字符。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·5·凹处理“数值运算”:选定后,[参数]对话框26展示为文本框,供显示、输入变量为x的一元方程式。专用表达式:@@@数值运算:[被选定凹模段模段名]=(“变量为x的一元方程式”)###。功能:将被选定凹模段当前凹字符数值代入指定一元方程式求数值解,并以用“,”分隔的各数值解作为其当前凹字符;如果条件不足则保持不变。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·6·凹处理“替换字符”:选定后,[参数]对话框26展示为[字符]文本框和[替换]文本框,供分别显示、输入被替换字符和替换为字符。专用表达式:@@@替换字符:[被选定凹模段模段名]=(“被替换字符”<><><>“替换为字符”)###。功能:将被选定凹模段当前凹字符中相同于“被替换字符”的部分,替换成“替换为字符”后作为其当前凹字符;如果条件不足则保持不变。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·7·凹处理“作为身份识别口令”:选定后,[参数]对话框26无效,无操作。专用表达式:@@@作为身份识别口令:[被选定凹模段模段名]=()###。功能:将被选定凹模段当前凹字符与被选定通讯任务配置的身份识别口令对比,如果不相同则中止正在执行的被选定通讯任务。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·8·凹处理“引用为监控指标”:选定后,[参数]对话框26展示为列表框,列出被选定用户的所有监控指标名,供选定。专用表达式:@@@引用为监控指标:[被选定凹模段模段名]=(“选定的监控指标名”)###。功能:将被选定凹模段当前凹字符,按照监控指标名保存到本范例软件监控指标配置。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·9·凹处理“采集为实时记录数据”:选定后,[参数]对话框26展示为列表框,列出被选定用户的所有实时数据名,供选定。专用表达式:@@@采集为实时记录数据:[被选定凹模段模段名]=(“选定的实时数据名”)###。功能:将被选定凹模段当前凹字符作为数据,按照实时数据名记录到本范例软件建立的数据库实时数据记录表,供其他数据源服务软件共享以产生相关监测性历史数据记录。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·10·凹处理“采集为实时记录数据标识”:选定后,[参数]对话框26展示为列表框,列出被选定用户的所有实时数据名,供选定。专用表达式:@@@采集为实时记录数据标识:[被选定凹模段模段名]=(“选定的实时数据名”)###。功能:将被选定凹模段当前凹字符作为数据状态标识,按照实时数据名记录到本范例软件建立的数据库实时数据记录表,供其他数据源服务软件共享以产生相关监测性历史数据记录。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·11·凹处理“保存到标准格式文本”:选定后,[参数]对话框26展示为文本框,供显示、输入包含完整路径名和扩展名及字符编码制的文本名称。专用表达式:@@@保存到标准格式文本:[被选定凹模段模段名]=(“文本名称”)###。功能:将被选定凹模段当前凹字符,按照指定文本扩展名约定的标准文本格式和字符编码制保存;如果文本不存在则生成指定文本,如果文本已经存在则合并到指定文本(必须特别注意如xml格式之类树形数据文本的正确合并);供其他软件共享以满足更多应用需求。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·12·凹处理“格式化时标书写”:选定后,[参数]对话框26展示为[转换前格式]列表框,和[转换后格式]列表框,其中列表项包含计算机用各种日期时间格式范例,供选定。专用表达式:@@@格式化时标书写:[被选定凹模段模段名]=(“转换前格式”|“转换后格式”)###。功能:将被选定凹模段当前凹字符作为转换前时标,转换为具有指定转换后格式的时标,时标所表达日期时间值不变,并作为被选定凹模段当前凹字符。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·13·凹处理“置为系统日期时间”:选定后,[参数]对话框26无效,无操作。专用表达式:@@@置为系统日期时间:[被选定凹模段模段名]=()###。功能:将被选定凹模段当前凹字符作为日期时间值,调整本机硬时钟的日期时间值。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·14·凹处理“文本完整性校验CRC”:选定后,[参数]对话框26展示为文本框,供显示、输入以“:”分隔的各参数,包括“取被校验字符起点”、“被校验字符长度”、“取校验码起点”。专用表达式:@@@文本完整性校验CRC:[被选定凹模段模段名]=(“取被校验字符起点”:“取被校验字符长度”:“取校验码起点”)###。功能:从被选定通讯任务接收程式获得的当前字符文本,按照“取被校验字符起点”、“取被校验字符长度”截取被校验字符串,并按照“取校验码起点”截取校验码,进行CRC校验处理,如果校验结果为不正确则中止正在执行的被选定通讯任务。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·15·凹处理“文本完整性校验Long”:选定后,[参数]对话框26展示为文本框,供显示、输入以“:”分隔的各参数,包括“取被校验字符起点”、“被校验字符长度”、“取校验码起点”、“取校验码长度”、“码制”。专用表达式:@@@文本完整性校验Long:[被选定凹模段模段名]=(“取被校验字符起点”:“取被校验字符长度”:“取校验码起点”:“取校验码长度”:“码制”)###。功能:从被选定通讯任务接收程式获得的当前字符文本,按照“取被校验字符起点”、“取被校验字符长度”截取被校验字符串,并按照“取校验码起点”、“取校验码长度”截取校验码,以“码制”指定的样式计算被校验字符的长度编码,如果该长度编码与校验码不符,则中止正在执行的被选定通讯任务。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
3·3·16·凹处理“文本完整性校验XR”:选定后,[参数]对话框26展示为文本框,供显示、输入以“:”分隔的各参数,包括“取被校验字符起点”、“被校验字符长度”、“取校验码起点”。专用表达式:@@@文本完整性校验XR:[被选定凹模段模段名]=(“取被校验字符起点”:“取被校验字符长度”:“取校验码起点”)###。功能:从被选定通讯任务接收程式获得的当前字符文本,按照“取被校验字符起点”、“取被校验字符长度”截取被校验字符串,并按照“取校验码起点”截取校验码,进行XR校验处理,如果校验结果为不正确则中止正在执行的被选定通讯任务。点击[关联]按钮28可生成本表达式,并联接到[流程]文本框27中原有字符的结尾。
本范例软件的上述通讯任务接收程式配置用各编程构件,被刷新显示的跟进顺序为:[模段]列表框23;[印模框图]列表框22、[凹处理]列表框24;[说明]文本框25、[参数]对话框26、[流程]文本框27。
3·4·点击[Save]按钮30,可将被选定凸模段或凹模段,及[流程]文本框27中的字符串或凹处理专用表达式队列,按照本发明定义的分割性,与被选定通讯任务接收程式的所有模段一起进行优化排序后,保存为被选定通讯任务接收程式的相应凹模短配置;并刷新[印模框图]列表框22。
3·5·点击[Delete]按钮31,可将被选定模段及配置,从被选定通讯任务接收程式中删除,同时将被选定通讯任务接收程式的所有模段,按照本发明定义的分割性重新进行优化排序、保存;并刷新[印模框图]列表框22。
4·在上述2·1·到2·4·显示、选定了被选定用户、被选定通讯任务,则可为被选定通讯任务发送程式进行编程,在[发送应答虚拟分步填写方法]框32内:
4·1·用[步序]列表框33可显示、选定被选定通讯任务发送程式的现有各步序的序号——顺序列表。没有步序列表项,则表明被选定通讯任务没有发送程式。
4·2·用[步处理]列表框34可显示、选定本发明创建的各种步处理功能。在[说明]文本框35,可对被选定步处理项的功能、参数、范例等作出文字说明,提供在线帮助。在[参数]对话框36,可针对被选定步处理项提供相关的辅助操作构件,尽量避免字符输入操作。
其中步处理执行规则为:开始执行前置发送用字符串为空。按步序的序数由小到大逐步执行;至执行完成最后一个步序步处理。如果执行后没有生成等待发送的标准格式文本,则发送分步填写产生的发送字符串;否则发送按照选定字符编码制保存的标准格式文本——但必须按照通讯通道及其配置字符串指定的方法决定做文件传输还是内容传输。本发明创建的各种步处理功能,作用与使用说明如下:
4·2·1·步处理“插入/填写到发送用字符串”:选定后,[参数]对话框36展示为文本框,供显示、输入一个整数。功能:将上一步序步处理产生的当前步字符,插入到当前发送字符串的指定位置;如果[参数]对话框36为空,或其字符数值为0,或为“End”,或其字符数值大于当前发送字符串长度,则插入到发送字符串结尾;否则插入到发送字符串中等于[参数]对话框36中字符数值的位置。
4·2·2·步处理“引用固定字符”:选定后,[参数]对话框36展示为文本框,供显示、输入字符。功能:将[参数]对话框36的字符引用为当前步字符。
4·2·3·步处理“从记录表取数据-记录值/逐个”:选定后,为自动合成数据查询命令语句,在[数据源]展示框37内:
用[记录表]下拉列表框38可显示、选定指定用户的全部历史数据记录表(来自共享其他数据源服务类软件提供的数据库)。
用[and]、[or]两个单选钮39、40,显示、选定数据查询条件语句中字段数据约束子句之间的约束条件。
用[字段]列表框41,显示被选定记录表所有字段名,供选定字段数据约束子句和排序子句针对的字段。
用符号[=]、[<>]、[>]、[<]、[>=]、[<=]单选钮42、43、44、45、46、47,显示、选定被约束字段与约束值的关系。
用[指标]列表框49,显示、选定约束值来源。其中列表项包括:“设定值”,“系统日期时间-设定值秒”,和被选定通讯任务接收程式包含的所有凹模段名——以按照通讯对方的需求进行数据查询。用[设定值]文本框50,可显示、输入约束值的相关参数字符。
在[查询语句]文本框51,可显示配置所得的,本范例软件规约样式的数据查询命令条件语句。
点击[关联]按钮52,则可按照:约束字段为[字段]列表框41选定字段;约束关系为[=]、[<>]、[>]、[<]、[>=]、[<=]单选钮42、43、44、45、46、47、中选定项;约束值为[指标]列表框49选定指标,以及[设定值]文本框50显示、输入的指标参数;合成出字段数据约束子句配置表达式;并以[and]、[or]两个单选钮39、40选定项所确定的子句间约束条件,添加、联接到[查询语句]文本框51中各字段数据约束子句之后。
其中,本范例软件规约采用的字段数据约束子句配置表达式书写规则为:取标准SQL数据查询命令条件语句样式,将在字符“′”之间的约束值内容写为:{“[指标]列表框49选定项”}{“[设定值]文本框50输入字符”}。执行时:如果“[指标]列表框49选定项”为“系统日期时间-设定值秒”,则以当前系统日期时间退减“[设定值]文本框50输入字符”中字符数值秒数后产生的日期时间,并自动参照约束字段的数据格式,作为实际约束值内容;如果“[指标]列表框49选定项”为“被选定凹模段”,则以被选定通讯任务接收程式的,被选定凹模段当前凹字符作为实际约束值内容,如果“[指标]列表框49选定项”为“设定值”,则以“[设定值]文本框50输入字符”中字符作为实际约束值内容。
点击[排序]按钮53,则以[字段]列表框41选定字段为排序字段,生成标准SQL数据查询命令样式的字段数据排序子句,并添加、联接到[查询语句]文本框51中排序子句。
点击[清除]按钮54,可清空[查询语句]文本框51,以重新进行被选定步处理的,数据库数据记录查询命令条件语句的配置。
用[参数]对话框36,展示为列表框,供显示、选定[记录表]下拉列表框38中被选定历史数据记录表的所有字段名。
功能:依据[记录表]下拉列表框38选定的历史数据记录表;和[查询语句]文本框51显示的数据查询命令条件语句——按照本范例软件规约从其约束子句约束值表达式获取实际约束值;遵从提供数据源服务的软件所约定的,数据库连接及历史数据记录表定名规则;合成出所需数据查询命令语句,执行数据记录查询;建立查询所得数据记录集的当前集成表,并按照排序字段的排序指针最大值(以日期时间排序即为最新)定位记录项,取[参数]对话框36选定的字段的数据作为当前步字符。
4·2·4·步处理“数据组求最大值”:选定后,[参数]对话框36展示为列表框,供显示、选定当前集成表所引用历史数据记录表的所有字段名。功能:以最进一次执行步处理“从记录表取数据-记录值/逐个”获得的当前集成表中,取被选定字段名的所有数据,求其中最大值,并作为当前步字符。
4·2·5·步处理“数据组求最小值”:选定后,[参数]对话框36展示为列表框,供显示、选定当前集成表所引用历史数据记录表的所有字段名。功能:以最进一次执行步处理“从记录表取数据-记录值/逐个”获得的当前集成表中,取被选定字段名的所有数据,求其中最小值,并作为当前步字符。
4·2·6·步处理“数据组求平均值”:选定后,[参数]对话框36展示为列表框,供显示、选定当前集成表所引用历史数据记录表的所有字段名。功能:以最进一次执行步处理“从记录表取数据-记录值/逐个”获得的当前集成表中,取被选定字段名的所有数据,求其平均值,并作为当前步字符。
4·2·7·步处理“超监控标限倍数”:选定后,[参数]对话框36展示为列表框,供显示、选定被选定用户所有监控指标名,和用[>]、[<]、[>=]、[<=]四个单选钮显示、选定比对关系。功能:遵从选定比对关系,求当前步字符数值超过选定监控指标标限设定值的倍数,并取其作为当前步字符。
4·2·8·步处理“超监控标限标识字符”:选定后,[参数]对话框36展示为列表框,供显示、选定被选定用户所有监控指标名,和用[>]、[<]、[>=]、[<=]四个单选钮显示、选定比对关系。功能:遵从选定比对关系,求当前步字符数值超过选定监控指标标限设定值的倍数,如果不为0,则取选定监控指标配置的超标限标识符号作为当前步字符,否则取当前步字符为空(无标识)。
4·2·9·步处理“代入f(x)方程式计算”:选定后,[参数]对话框36展示为文本框,供显示、输入一条以x为变量的一元方程式。功能:将当前步字符数值代入变量x求数值解;如果存在有限个数值解,则取各数值解的字符——彼此用“,”分隔——作为当前步字符;否则取当前步字符为空。
4·2·10·步处理“格式化数字书写”:选定后,[参数]对话框36展示为文本框,供显示、输入用“,”分隔的整数位数和小数位数。功能:如果当前步字符数值的整数位数大于或等于指定位数,则右截取指定位数作为当前步字符整数,否则在其高位补0至等于指定整数位数作为当前步字符整数;如果当前步字符数值的小数位数大于或等于指定位数,则左截取指定位数作为当前步字符小数,否则在其低位补0至等于指定小数位数作为当前步字符小数。
4·2·11·步处理“10进制整数转16进制n字节含负数”:选定后,[参数]对话框36展示为文本框,供显示、输入1个整数。功能:将当前步字符的字符数值转换为具有[参数]对话框36中字符整数数值个字节的16进制数;如果当前步字符的字符数值为负数,则置该16进制数最高字节最高位为1,否则置为0。然后以该16进制数作为当前步字符。
4·2·12·步处理“从系统取日期时间”:选定后,[参数]对话框36无效,无操作。功能:取当前系统日期时间作为当前步字符。
4·2·13·步处理“格式化时标书写”:选定后,[参数]对话框36展示为[转换前格式]列表框,和[转换后格式]列表框,其中列表项包含计算机用各种日期时间格式范例,供选定。配置结果专用表达式:“转换前格式”|“转换后格式”。功能:将当前步字符作为转换前时标,转换为具有指定转换后格式的时标,时标所表达日期时间值不变,并作为当前步字符。
4·2·14·步处理“提取字符-起点,长度”:选定后,[参数]对话框36展示为文本框,供显示、输入用“,”分隔的两个整数。功能:从当前发送字符串中指定起点截取指定长度的字符,并作为当前步字符;如果条件不足则取发送字符串所有字符作为当前步字符。
4·2·15·步处理“求字符CRC校验码”:选定后,[参数]对话框36无效,无操作。功能:求当前步字符CRC校验码,并作为当前步字符。
4·2·16·步处理“求字符长度数值”:选定后,[参数]对话框36展示为文本框,供显示、输入关于所用码制的说明字符。功能:如果码制说明为“Hex”则以字节计算当前步字符的长度;如果码制说明为“Bit”则以位计算当前步字符的长度;其余均以字符计算当前步字符的长度。并以该长度计算数值作为当前步字符。
4·2·17·步处理“求字符XR校验码”:选定后,[参数]对话框36无效,无操作。功能:求当前步字符XR校验码,并作为当前步字符。
4·2·18·步处理“替换字符”:选定后,[参数]对话框36展示为[字符]文本框和[替换]文本框,供分别输入被替换字符和替换为字符。配置结果专用表达式:“被替换字符”<><><>“替换为字符”。功能:将当前步字符中相同于“被替换字符”的部分替换成为“替换为字符”,如果条件不足则保持不变。
4·2·19·步处理“保存到标准格式文本”:选定后,[参数]对话框36展示为文本框,供输入包含完整路径名和扩展名及字符编码制的文本名称。功能:将当前发送字符串,按照指定文本扩展名约定的标准文本格式及字符编码制,如果文本不存在则生成并存放到该文本;如果文本已经存在则合并到指定文本(必须特别注意如xml格式之类树形数据文本的正确合并)。
4·2·20·步处理“继续编写下一条发送字符串”:选定后,[参数]对话框36无效,无操作。功能:清空发送字符串,重新返回到第1步序开始执行。但遇到步处理“从记录表取数据-记录值/逐个”,则不执行数据查询命令保持当前集成表不变!按照排序字段的排序指针减本步处理循环执行次数定位记录项——如果超出当前集成表排序指针范围则终止本步处理的循环执行!取[参数]对话框36中被选定字段的数据作为当前步字符。
4·2·21·步处理“与前一步字符相同则中止”:选定后,[参数]对话框36无效,无操作。功能:如果当前步字符与前一步处理所得步字符相同则中止被选定通讯任务。
4·2·22·步处理“与前一步字符不同则中止”:选定后,[参数]对话框36无效,无操作。功能:如果当前步字符与前一步处理所得步字符不同则中止被选定通讯任务。
4·2·23·步处理“与固定字符串相同则中止”:选定后,[参数]对话框36展示为文本框,供显示、输入字符。功能:如果当前步字符与配置参数固定字符串相同则中止被选定通讯任务。
4·2·24·步处理“与固定字符串不同则中止”:选定后,[参数]对话框36展示为文本框,供显示、输入字符。功能:如果当前步字符与配置参数固定字符串不同则中止被选定通讯任务。
4·2·25·步处理“与固定字符串相同则转至第n步”:选定后,[参数]对话框36展示为“固定字符”文本框和“转至n步”文本框,供显示、输入对比用固定字符串和转至步序数字。功能:如果当前步字符与配置参数指定固定字符串相同,则从当前步序跳转至配置参数指定步序继续执行,否则继续执行下一步序。
4·2·26·步处理“与固定字符串不同则转至第n步”:选定后,[参数]对话框36展示为“固定字符”文本框和“转至n步”文本框,供显示、输入对比用固定字符串和转至步序数字。功能:如果当前步字符与配置参数指定固定字符串不同,则从当前步序跳转至配置参数指定步序继续执行,否则继续执行下一步序。
——本范例软件的上述通讯任务发送程式配置用各编程构件,被刷新显示的跟进顺序为:[步序]列表框33;[步处理]列表框34;[说明]文本框25、[参数]对话框36、(需要数据库操作时)[数据源]展示框37。其中在[数据源]展示框37内刷新显示跟进顺序为:[记录表]下拉列表框38;[and]、[or]单选钮39、40;[字段]列表框41;[<>]、[=]、[>]、[<]、[>=]、[<=]单选钮42、43、44、45、46、47、48,[指标]列表框49;[设定值]文本框50、[查询语句]文本框51。
4·3·点击[Add]按钮55,可将[发送应答虚拟分步填写方法]框32内各编程构件所选定、输入的结果,添加为被选定通讯任务发送程式的,最后步序的步处理配置;并刷新[步序]列表框33。
4·4·点击[Int]按钮56,可将[发送应答虚拟分步填写方法]框32内各编程构件所选定、输入的结果,插入为被选定通讯任务发送程式的,[步序]列表框33选定项之前一个步处理配置;并刷新[步序]列表框33。
4·5·点击[Save]按钮57,可将[发送应答虚拟分步填写方法]框32内各编程构件所选定、输入的结果,保存为被选定通讯任务发送程式的,当前[步序]列表框33选定项的步处理配置;并刷新[步序]列表框33。
4·6·点击[Delete]按钮58,可删除被选定通讯任务发送程式的,当前[步序]列表框33选定项的步处理配置;并刷新[步序]列表框33。
采用本发明提供的可编程字符通讯方法,其主干程序流程中,除了支持如上所述用编程构件添加、修改、取消通讯任务的人机对话界面,还必须支持自动执行所有定制通讯任务——满足运行成效。本范例软件设计的自动执行通讯任务程序流程描述如下:
5·自动执行定制通讯任务:
5·1·程序启动:从所有用户通讯任务配置记录中查询相关公共设置资料。按照包含的通讯通道及设置参数配置建立本机需用的所有连接、服务。为需要历史数据记录支持其通讯任务的用户适配数据源。初试化程序运行资源等等。
5·2·从所有用户通讯任务配置记录中查询全部在线用户,并建立在线用户序列;
5·3·循环:从在线用户序列序数最小项开始至序数最大项,依次递增确定一个被选定用户——如果递增超过序数最大项则返回5·2·;
5·4·从被选定用户通讯任务配置记录中查询其全部通讯任务,并建立被选定用户的通讯任务序列;
5·5·循环:从被选定用户的通讯任务序列序数最小项开始至序数最大项,依次递增确定一个被选定通讯任务——如果递增超过序数最大项则返回5·3·;
5·6·遵从被选定通讯任务的执行方式;
如果被选定通讯任务执行方式为接收应答:则调用5·7·执行被选定通讯任务接收程式;如果其中没有发生中止——即接收到满足要求的印压字符串,则调用5·8·执行被选定通讯任务发送程式,否则不执行被选定通讯任务发送程式。完成后结束被选定通讯任务返回5·5·。
如果被选定通讯任务执行方式为主动发送:则从被选定通讯任务配置记录中,查询被选定通讯任务发送程式的发送周期,与本机系统时钟日期时间参比计算当前定时周期。如果发送时间记录表明当前定时周期已经执行过被选定通讯任务,则结束被选定通讯任务返回5·5·。否则:调用5·8·执行被选定通讯任务发送程式;完成后结束被选定通讯任务返回5·5·。
如果被选定通讯任务执行方式为发送接收:则从被选定通讯任务配置记录中,查询被选定通讯任务发送程式的发送周期与接收程式的等待延时,与本机系统时钟日期时间参比计算当前定时周期。如果发送时间记录表明当前定时周期已经执行过被选定通讯任务,则结束被选定通讯任务返回5·5·。否则:先调用5·8·执行被选定通讯任务发送程式。然后,在按照等待延时计算的限定时间内,重复调用5·7·执行被选定通讯任务接收程式,到其中没有发生中止——即接收到满足要求的印压字符串并实现其中所有凹模段中凹处理专用表达式队列要求——为止。完成后结束被选定通讯任务返回5·5·。
否则,返回5·5·。
5·7·执行接收程式:
从被选定通讯任务配置记录中,查询被选定通讯任务接收程式配置。
从被选定通讯任务通讯通道,取当前接收到字符内容(并保证取后清空),联接到被选定通讯任务接收程式(等待处理的)接收字符串。如果被选定通讯任务通讯通道的连接(或服务)中断,则进行重建,并以发生中止返回调用方。
用被选定通讯任务接收程式的凸字符序列,进行接收字符文本完整性检查:取第一个凸字符在被选定通讯任务接收程式的接收字符串中查找相同字符,如果没有查找到则以发生中止返回调用方。其后,每一个凸字符必须从上一个凸字符查找到的相同字符之后开始查找,至最后一个凸字符;其中,只要任何一个凸字符没有查找到,则判别为被选定通讯任务接收程式的接收字符串不完整,并以发生中止返回调用方。完整性检查通过,则从指定接收字符串中截取符合完整性检查的部分的字符,作为被选定通讯任务接收程式印压字符串——即判别为接收到被选定通讯任务接收程式所需的完整字符文本;并且从被选定通讯任务接收程式的接收字符串中清除该印压字符串,以继续接收。
用被选定通讯任务接收程式的凸字符序列,在印压字符串中“印压”提取凹字符序列:在印压字符串开头截除与序数为1的凸字符相同的字符;其后,按照循环计数指针从2起计,每次循环加2,依次取序数等于计数指侦加1的凸字符,在被选定通讯任务接收程式的剩余印压字符串中查找与其相同字符的起点,截取该剩余印压字符串中该起点之前的字符作为被选定通讯任务接收程式的,序数等于计数指侦的凹模段的当前凹字符,并从该剩余印压字符串开头截除该起点之前的字符,以及该起点和该凸字符长度范围内的字符;依次循环至剩余印压字符串为空——也恰好到序数最大的凸字符。
对在被选定通讯任务接收程式的印压字符串中提取的凹字符序列,从序数最小项到序数最大项,用其序数对应的凹模段的凹处理专用表达式队列,顺序逐个执行其凹处理专用表达式队列规定的所有各项字符处理、应用、监控、校验等操作。如果其中任何一项操作结果要求中止被选定通讯任务,则以发生中止返回调用方;否则以没有发生中止返回调用方。
5·8·执行发送程式:
从被选定通讯任务配置记录中,查询被选定通讯任务发送程式的步处理序列配置。如果没有步处理序列,则判别被选定通讯任务没有发送程式,返回调用方;否则:
置空发送字符串及清除所有发送文本。依序逐步执行指定通讯任务发送程式的所有步处理;合成出发送字符串,及所需格式发送文本。其中,如果任何一项步处理结果要求中止被选定通讯任务,则以发生中止返回调用方;否则:
被选定通讯任务发送程式的所有步处理完成后,如果存在发送文本则用被选定通讯任务通讯通道,按照其连接或服务配置方式传送文本或文本内容;否则用被选定通讯任务通讯通道直接传送发送字符串。完成后以没有发生中止返回调用方。
如上所述仅为本发明的实施范例之一,尽管所述实例已经表示和描述了本发明的具体流程,但并不表示对本发明自身的限制,本领域的技术人员在不脱离本发明基本宗旨和原理的前提下,可在其形式上和细节上作出各种变化,而所附权利要求书亦覆盖了所有此类改变和修改。

Claims (8)

1.一种可编程字符通讯方法,其特征在于,包括如下步骤:
(1)通讯双方约定每一项通讯任务的通讯对方和执行方式;
(2)通讯双方根据上述约定的通讯对方和执行方式执行发送或接收顺序字符文本;
(3)通讯双方中任一方收到通讯对方发送的顺序字符文本字符串后,将该顺序字符文本字符串分割为若干个顺序间隔排队的不变部分和可变部分;
(4)根据预定义的解析方法,将上述分割后的顺序字符文本字符串解析为计算机可识别的字符指令。
2.根据权利要求1所述的可编程字符通讯方法,其特征在于,所述步骤(1)中的通讯对方通过连线端口,或网络地址,或连接设置文本的约定表达形式选定。
3.根据权利要求1所述的可编程字符通讯方法,其特征在于,所述步骤(1)中的执行方式约定为或主动报送,或接收应答,或发送接收。
4.根据权利要求1所述的可编程字符通讯方法,其特征在于,所述步骤(2)中的通讯任务执行方式约定为主动发送时,则只能向通讯对方发送一个顺序字符文本;通讯任务执行方式约定为接收应答时,则先接收一个顺序字符文本,如果处理产生了一个顺序字符文本,则发送给对方;通讯任务执行方式约定为发送接收时,先发送一个顺序字符文本,然后在指定的时间内等待接收一个顺序字符文本。
5.根据权利要求1所述的可编程字符通讯方法,其特征在于,所述步骤(3)中的顺序字符文本字符串的分割方式为:可变部分夹在两个不变部分之间;字符串的开头和结束确定为不变部分,且可以为空,当字符串仅有可变部分时则其开头与结束部分均为空,当字符串没有可变部分时则其开头与结束部分任意一个为空。
6.根据权利要求1所述的可编程字符通讯方法,其特征在于,所述步骤(4)中的解析方法具体通过以下步骤实现:
(a)将所有的不变部分作为排序化配置参数,按序逐个在接收到的顺序字符文本字符串中一一印对,以确认该字符串是否属于本次通讯任务的顺序字符文本,或判断是否传输成功;
(b)建立虚拟线形印模方法,从顺序字符文本字符串中获取可变部分的字符内容;
(c)建立虚拟顺序分步填写方法,生成通讯任务所需的发送字符串;
7.根据权利要求6所述的可编程字符通讯方法,其特征在于,所述步骤(b)中的虚拟线形印模方法是指用不变部分的排序化配置参数作为印模的各凸模段,在对字符串进行印压去除所有不变部分的字符后,从印模的凹模段取得同样排序化的各可变部分的字符内容;利用上述凹模段提供的字符内容,按照预先配置的文本字符处理关系实现相关操作需求。
8.根据权利要求6所述的可编程字符通讯方法,其特征在于,所述步骤(c)中的虚拟顺序分步填写方法是指从发送字符串开头的不变部分开始,渐增式按步填写发送用字符串的所有不变部分和可变部分;填写时,遵从预先编排的数据信息来源与处理的规程化操作配置以获得所需字符串。
CN2009100418609A 2009-08-14 2009-08-14 可编程字符通讯方法 Expired - Fee Related CN101635711B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100418609A CN101635711B (zh) 2009-08-14 2009-08-14 可编程字符通讯方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100418609A CN101635711B (zh) 2009-08-14 2009-08-14 可编程字符通讯方法

Publications (2)

Publication Number Publication Date
CN101635711A true CN101635711A (zh) 2010-01-27
CN101635711B CN101635711B (zh) 2012-06-06

Family

ID=41594772

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100418609A Expired - Fee Related CN101635711B (zh) 2009-08-14 2009-08-14 可编程字符通讯方法

Country Status (1)

Country Link
CN (1) CN101635711B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102916967A (zh) * 2012-10-29 2013-02-06 华为技术有限公司 协议解析的方法和装置
CN104269098A (zh) * 2014-10-13 2015-01-07 上海交通大学 增强网络实验连线临场感的系统
CN105162882A (zh) * 2015-09-25 2015-12-16 天脉聚源(北京)科技有限公司 控件间传输数据的方法和装置
CN115830199A (zh) * 2022-07-29 2023-03-21 深圳职业技术学院 基于xr技术的泛在实训校园构建方法、系统及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101150398A (zh) * 2007-10-26 2008-03-26 宇龙计算机通信科技(深圳)有限公司 一种更新通讯密钥的方法、系统及通讯端

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102916967A (zh) * 2012-10-29 2013-02-06 华为技术有限公司 协议解析的方法和装置
CN102916967B (zh) * 2012-10-29 2015-11-25 华为技术有限公司 协议解析的方法和装置
CN104269098A (zh) * 2014-10-13 2015-01-07 上海交通大学 增强网络实验连线临场感的系统
CN104269098B (zh) * 2014-10-13 2016-05-25 上海交通大学 增强网络实验连线临场感的系统
CN105162882A (zh) * 2015-09-25 2015-12-16 天脉聚源(北京)科技有限公司 控件间传输数据的方法和装置
CN115830199A (zh) * 2022-07-29 2023-03-21 深圳职业技术学院 基于xr技术的泛在实训校园构建方法、系统及存储介质
CN115830199B (zh) * 2022-07-29 2023-08-29 深圳职业技术学院 基于xr技术的泛在实训校园构建方法、系统及存储介质

Also Published As

Publication number Publication date
CN101635711B (zh) 2012-06-06

Similar Documents

Publication Publication Date Title
CN108667725A (zh) 一种基于多种接入及边缘计算的工业软网关以及实现方法
CN102117306B (zh) Etl数据处理过程的监控方法及其系统
US6871321B2 (en) System for managing networked information contents
CN110334274A (zh) 信息推送方法、装置、计算机设备和存储介质
CN106662854B (zh) 用于控制系统的装置的配置的方法和系统
CN106528129A (zh) 一种Web应用界面生成系统及方法
CN101834750B (zh) 一种通用业务监控方法
CN110866029B (zh) sql语句构建方法、装置、服务器及可读存储介质
CN111160658B (zh) 一种协同制造资源优配方法、系统和平台
CN112148343B (zh) 规则发布方法、装置及终端设备
CN101635711B (zh) 可编程字符通讯方法
CN112733017A (zh) 一种标签管理方法、装置、存储介质及电子装置
CN111125518A (zh) 家电信息推荐的系统及方法
CN110399612A (zh) 工业互联网中边缘层的语义转换方法及中间件
CN100470426C (zh) 使用动态目录提供设备信息的基金会现场总线服务器
CN114513410A (zh) 一种设备快速接入物联网平台的方法和系统
CN107247721A (zh) 可视化数据采集方法
CN112328667B (zh) 一种基于数据血缘的页岩气田地面工程数字化移交方法
CN110222032A (zh) 一种基于软件数据分析的通用事件模型
US7085759B2 (en) System and method for communicating data to a process
CN112559514A (zh) 一种信息处理方法及系统
CN110262973B (zh) 数据养成维护方法、装置、设备及计算机存储介质
CN108763127A (zh) 源数据与目标数据相互转换的Modbus适配器的实现方法
CN110019177A (zh) 规则存储的方法和装置
CN111522840A (zh) 标签的配置方法、装置、设备及计算机可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120606

Termination date: 20140814

EXPY Termination of patent right or utility model