一种通信方法及上位机的制作方法

文档序号:10511313阅读:298来源:国知局
一种通信方法及上位机的制作方法
【专利摘要】本发明提供了一种通信方法及上位机,其中,所述通信方法应用于上位机中,包括:S0:预先设置特征信息表,利用所述特征信息表存储与当前上位机相连的至少两个PLC分别对应的特征信息,其中,所述特征信息包括:当前PLC的标识信息、通信参数及指令信息;以及,设置参数解析模块;S1:接收携带目标标识信息的连接指令;S2:利用所述参数解析模块根据所述目标标识信息查询所述特征信息表,确定对应所述目标标识信息的目标通信参数和目标指令信息,根据所述目标通信参数和所述目标指令信息读取对应所述目标标识信息的目标PLC中存储的业务数据。通过本发明的技术方案,可提高工作效率。
【专利说明】
_种通信方法及上位机
技术领域
[0001 ]本发明涉及信息通信技术领域,特别涉及一种通信方法及上位机。
【背景技术】
[0002] PLC(Programmable Logic Controller,可编程逻辑控制器)设备是一种用于直接 控制生产设备运行状态及工艺流程的设备。
[0003] 目前,PLC设备的类型众多,不同类型的PLC设备分别用于控制不同类型的生产设 备,相应的,由于不同类型的PLC设备分别对应的通信参数、指令信息等并不相同,使得控制 中心需要通过不同的上位机控制不同类型的PLC设备,需要在每一个上位机中分别开发对 应的程序代码以实现连通当前上位机和对应的PLC,进而使得当前上位机能够从对应连接 的PLC中读取业务数据。
[0004] 可见,上述技术方案中,需要在不同的上位机中分别开发不同的程序代码,工作效 率较低。

【发明内容】

[0005] 本发明实施例提供了一种通信方法及上位机,可提高工作效率。
[0006] 第一方面,本发明实施例提供了一种通信方法,应用于上位机中,包括:
[0007] S0:预先设置特征信息表,利用所述特征信息表存储与当前上位机相连的至少两 个PLC分别对应的特征信息,其中,所述特征信息包括:当前PLC的标识信息、通信参数及指 令信息;以及,设置参数解析模块;
[0008] S1:接收携带目标标识信息的连接指令;
[0009] S2:利用所述参数解析模块根据所述目标标识信息查询所述特征信息表,确定对 应所述目标标识信息的目标通信参数和目标指令信息,根据所述目标通信参数和所述目标 指令信息读取对应所述目标标识信息的目标PLC中存储的业务数据。
[001 0]进一步的,所述设置参数解析模块,包括:
[0011] 调用Windows API以构建参数解析模块。
[0012] 进一步的,所述根据所述目标通信参数和所述目标指令信息读取对应所述目标标 识信息的目标PLC中存储的业务数据,包括:
[0013] 根据所述目标标识信息,向目标PLC发送携带目标通信参数的连接请求,以使目标 PLC在接收到携带目标通信参数的连接请求后,打开对应的数据端口;
[0014] 向目标PLC发送携带目标指令信息的数据读取请求,接收目标PLC根据携带目标指 令信息的数据读取请求通过打开的数据端口发送的业务数据。
[0015] 进一步的,所述接收目标PLC根据携带目标指令信息的数据读取请求通过打开的 数据端口发送的业务数据之后,进一步包括:
[0016] 根据所述目标通信参数解析所述业务数据以形成目标业务参数;
[0017] 将所述目标业务参数存储至外部存储装置。
[0018] 进一步的,所述将所述目标业务参数存储至外部存储装置之后,进一步包括:
[0019] 向目标PLC发送断开业务请求指令,以使目标PLC在接收到所述断开业务请求指令 后关闭对应的数据端口。
[0020] 第二方面,本发明实施例提供了一种上位机,包括:
[0021 ]设置模块,用于预先设置特征信息表;以及,设置参数解析模块;
[0022] 特征信息表,用于存储与当前上位机相连的至少两个PLC分别对应的特征信息,其 中,所述特征信息包括:当前PLC的标识信息、通信参数及指令信息;
[0023] 指令接收模块,用于接收携带目标标识信息的连接指令;
[0024] 参数解析模块,用于根据所述目标标识信息查询所述特征信息表,确定对应所述 目标标识信息的目标通信参数和目标指令信息,根据所述目标通信参数和所述目标指令信 息读取对应所述目标标识信息的目标PLC中存储的业务数据。
[0025]进一步的,
[0026]所述设置模块,用于调用Windows API以构建参数解析模块。
[0027]进一步的,所述参数解析模块,包括:
[0028]连接处理子单元,用于根据所述目标标识信息,向目标PLC发送携带目标通信参数 的连接请求,以使目标PLC在接收到携带目标通信参数的连接请求后,打开对应的数据端 P;
[0029] 数据读取子单元,用于向目标PLC发送携带目标指令信息的数据读取请求,接收目 标PLC根据携带目标指令信息的数据读取请求通过打开的数据端口发送的业务数据。
[0030] 进一步的,所述参数解析模块,还包括:
[0031 ]参数解析子单元,用于根据所述目标通信参数解析所述业务数据以形成目标业务 参数;
[0032]存储处理子单元,用于将所述目标业务参数存储至外部存储装置。
[0033]进一步的,所述参数解析模块,进一步包括:
[0034]断开处理子单元,用于向目标PLC发送断开业务请求指令,以使目标PLC在接收到 所述断开业务请求指令后关闭对应的数据端口。
[0035] 本发明实施例提供了一种通信方法及上位机,通过在上位机中设置特征信息表, 利用特征信息表存储与当前上位机相连的至少两个PLC分别对应的标识信息、通信参数及 指令信息,以及,设置参数解析模块,即可通过参数解析模块根据上位机接收的连接指令中 携带的目标标识信息查询特征信息表,以确定目标标识信息对应的目标通信参数和目标指 令信息,进而根据目标通信参数和目标指令信息读取目标标识信息对应的目标PLC中存储 的业务数据;可见,通过本发明的技术方案,在上位机中设置特征信息表和参数解析模块, 可实现通过上位机根据实际业务需求选择连通与当前上位机相连的任一 PLC,不必在上位 机中针对不同类型的PLC开发不同的程序代码,可提高工作效率。
【附图说明】
[0036] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据 这些附图获得其他的附图。
[0037] 图1是本发明一实施例提供的一种通信方法的流程图;
[0038] 图2是本发明一实施例提供的另一种通信方法的流程图;
[0039] 图3是本发明一实施例提供的一种上位机的结构示意图;
[0040] 图4是本发明一实施例提供的另一种上位机的结构示意图。
【具体实施方式】
[0041] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员 在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。 [0042 ]如图1所示,本发明实施例提供了 一种通信方法,包括:
[0043] S0:预先设置特征信息表,利用所述特征信息表存储与当前上位机相连的至少两 个PLC分别对应的特征信息,其中,所述特征信息包括:当前PLC的标识信息、通信参数及指 令信息;以及,设置参数解析模块;
[0044] S1:接收携带目标标识信息的连接指令;
[0045] S2:利用所述参数解析模块根据所述目标标识信息查询所述特征信息表,确定对 应所述目标标识信息的目标通信参数和目标指令信息,根据所述目标通信参数和所述目标 指令信息读取对应所述目标标识信息的目标PLC中存储的业务数据。
[0046] 本发明上述实施例中,通过在上位机中设置特征信息表,利用特征信息表存储与 当前上位机相连的至少两个PLC分别对应的标识信息、通信参数及指令信息,以及,设置参 数解析模块,即可通过参数解析模块根据上位机接收的连接指令中携带的目标标识信息查 询特征信息表,以确定目标标识信息对应的目标通信参数和目标指令信息,进而根据目标 通信参数和目标指令信息读取目标标识信息对应的目标PLC中存储的业务数据;可见,通过 本发明的技术方案,在上位机中设置特征信息表和参数解析模块,可实现通过上位机根据 实际业务需求选择连通与当前上位机相连的任一 PLC,不必在上位机中针对不同类型的PLC 开发不同的程序代码,可提高工作效率。
[0047]进一步的,由于Windows应用程序接口包含了数千个可以直接调用的服务函数,为 了进一步提高工作效率,本发明一个优选实施例中,所述设置参数解析模块,包括:
[0048] 调用Windows API以构建参数解析模块。
[0049] 进一步的,由于上位机同时连接多个PLC,PLC中与上位机进行数据传输的数据端 口应处于关闭状态,只有在接收到携带当前PLC对应的通信参数的连接请求时,才打开对应 的数据端口,以实现连通上位机和当前PLC,进而实现上位机与当前PLC之间的通信;相应 的,本发明一个优选实施例中,所述根据所述目标通信参数和所述目标指令信息读取对应 所述目标标识信息的目标PLC中存储的业务数据,包括:
[0050] 根据所述目标标识信息,向目标PLC发送携带目标通信参数的连接请求,以使目标 PLC在接收到携带目标通信参数的连接请求后,打开对应的数据端口;
[0051] 向目标PLC发送携带目标指令信息的数据读取请求,接收目标PLC根据携带目标指 令信息的数据读取请求通过打开的数据端口发送的业务数据。
[0052] 进一步的,由于上位机与PLC之间进行通信时,传输的业务数据通常为十六进制的 业务数据,且不同类型的PLC发送的十六进制业务数据中偏移量并不相同,因此,本发明一 个优选实施例中,所述接收目标PLC根据携带目标指令信息的数据读取请求通过打开的数 据端口发送的业务数据之后,进一步包括:
[0053] 根据所述目标通信参数解析所述业务数据以形成目标业务参数;
[0054]将所述目标业务参数存储至外部存储装置。
[0055]进一步的,由于上位机连接多个PLC,在上位机不需要从相应PLC中读取业务数据 时,应确保该PLC中与上位机进行通信的数据端口处于关闭状态,因此,本发明一个优选实 施例中,所述将所述目标业务参数存储至外部存储装置之后,进一步包括:
[0056]向目标PLC发送断开业务请求指令,以使目标PLC在接收到所述断开业务请求指令 后关闭对应的数据端口。
[0057]如图2所示,本发明实施例提供了一种通信方法,以通过用户与上位机进行相应的 人机交互,使得上位机从对应连接的PLC中读取业务数据为例,可以包括如下步骤:
[0058] 步骤201,将上位机与多个PLC进行连接。
[0059]步骤202,在上位机中设置特征信息表,利用特征信息表存储多个PLC分别对应的 特征信息。
[0060] 需要说明的是,特征信息可以包括当前PLC的标识信息、通信参数及指令信息,还 可以包括当前PLC所属的部门信息以及工作中心等其他信息。
[0061] 本发明一实施例中,用户可通过与上位机进行人机交互以对特征信息表中存储的 每一个PLC分别对应的特征系信息进行可视化编辑,这些特征信息可以由PLC厂商提供。 [0062] 步骤203,调用WindowsAPI构建参数解析模块。
[0063] 这里,通过调用WindowsAPI中的服务函数进行串行通信程序的二次开发以构建具 备相应功能的参数解析t旲块,可进一步提尚工作效率。
[0064]步骤204,上位机接收携带目标标识信息的连接请求。
[0065] 这里,可以是用户通过与上位机进行人机交互,进行相应的可视化操作,触发相应 的连接请求,以指示参数解析模块连通连接请求中携带的目标标识信息对应的目标PLC。 [0066]步骤205,参数解析模块根据目标标识信息查询特征信息表,以确定目标标识信息 对应的目标通信参数和目标指令信息。
[0067]步骤206,参数解析模块根据目标标识信息向目标PLC发送携带目标通信参数的连 接请求。
[0068]举例来说,目标通信参数可以包括:9600,7,1,E,其中,9600是波特率,7是数据位, E是偶fe验,1是停止位。
[0069]步骤207,目标PLC根据携带目标通信参数的连接请求打开对应的数据端口。
[0070]需要说明的是,目标PLC打开对应上位机的数据端口时,需要依次执行初始化数据 端口、设置数据端口和打开数据端口,具体可以通过如下代码实现:
[0072]
[0073] 步骤208,参数解析模块向目标PLC发送携带目标指令信息的数据读取请求。
[0074]步骤209,目标PLC根据携带目标指令信息的数据读取请求,通过打开的数据端口 将当前PLC中存储的业务数据发送至上位机中的参数解析模块。
[0075]步骤210,参数解析模块根据目标通信参数解析业务数据以形成目标业务参数。 [0076]本发明实施例中,由于不同类型的PLC向上位机传输数据时,通常都是传输十六进 制的业务数据,但不同类型的PLC传输的十六进制数据的偏移量可能并不相同,因此,需要 采用对应当前PLC的通信参数解析当前PLC发送的十六进制数据以形成目标业务参数。
[0077] 步骤211,参数解析模块将目标业务参数存储至外部存储装置。
[0078] 这里,外部存储装置可以是安装在上位机中的其他应用程序。
[0079]步骤212,参数解析模块向目标PLC发送断开指令,使得目标PLC断开对应的数据端 □ 〇
[0080]这里,在数据读取任务完成后,由于上位机与多台PLC之间是可选择的连接,因此, 在上位机不需要从当前PLC中读取业务数据时,则应断开上位机与当前PLC之间的连通,具 体地,只需要关闭当前PLC中用于向上位机中的参数解析模块传输业务数据的数据端口即 可。
[0081 ]如图3所示,本发明实施例提供了一种上位机,包括:
[0082]设置模块101,用于预先设置特征信息表102;以及,设置参数解析模块13;
[0083]特征信息表102,用于存储与当前上位机相连的至少两个PLC分别对应的特征信 息,其中,所述特征信息包括:当前PLC的标识信息、通信参数及指令信息;
[0084]指令接收模块104,用于接收携带目标标识信息的连接指令;
[0085] 参数解析模块103,用于根据所述目标标识信息查询所述特征信息表102,确定对 应所述目标标识信息的目标通信参数和目标指令信息,根据所述目标通信参数和所述目标 指令信息读取对应所述目标标识信息的目标PLC中存储的业务数据。
[0086] 进一步的,为了进一步提高工作效率,本发明一个优选实施例中,所述设置模块 101,用于调用Windows API以构建参数解析模块103。
[0087] 进一步的,如图4所示,本发明一个优选实施例中,所述参数解析模块103,包括: [0088]连接处理子单元1031,用于根据所述目标标识信息,向目标PLC发送携带目标通信 参数的连接请求,以使目标PLC在接收到携带目标通信参数的连接请求后,打开对应的数据 端口;
[0089]数据读取子单元1032,用于向目标PLC发送携带目标指令信息的数据读取请求,接 收目标PLC根据携带目标指令信息的数据读取请求通过打开的数据端口发送的业务数据。
[0090]进一步的,由于上位机与PLC之间进行通信时,传输的业务数据通常为十六进制的 业务数据,且不同类型的PLC发送那个的十六进制数据中偏移量并不相同,因此,如图4所 示,本发明一个优选实施例中,所述参数解析模块103,还包括:
[0091 ]参数解析子单元1033,用于根据所述目标通信参数解析所述业务数据以形成目标 业务参数;
[0092]存储处理子单元1034,用于将所述目标业务参数存储至外部存储装置。
[0093] 进一步的,由于上位机连接了多个PLC,在上位机不需要从相应PLC中读取业务数 据时,应确保该PLC中连接上位机的数据端口处于断开状态,因此,如图4所示,本发明一个 优选实施例中,所述参数解析模块103,进一步包括:
[0094]断开处理子单元1035,用于向目标PLC发送断开业务请求指令,以使目标PLC在接 收到所述断开业务请求指令后关闭对应的数据端口。
[0095]上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施 例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
[0096]本发明各个实施例至少具有如下有益效果:
[0097] 1、通过在上位机中设置特征信息表,利用特征信息表存储与当前上位机相连的至 少两个PLC分别对应的标识信息、通信参数及指令信息,以及,设置参数解析模块,即可通过 参数解析模块根据上位机接收的连接指令中携带的目标标识信息查询特征信息表,以确定 目标标识信息对应的目标通信参数和目标指令信息,进而根据目标通信参数和目标指令信 息读取目标标识信息对应的目标PLC中存储的业务数据;可见,通过本发明的技术方案,在 上位机中设置特征信息表和参数解析模块,可实现通过上位机根据实际业务需求选择连通 与当前上位机相连的任一 PLC,不必在上位机中针对不同类型的PLC开发不同的程序代码, 可提高工作效率。
[0098]需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体 或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在 任何这种实际的关系或者顺序。而且,术语"包括"、"包含"或者其任何其他变体意在涵盖非 排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素, 而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固 有的要素。在没有更多限制的情况下,由语句"包括一个〃....."限定的要素,并不排 除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
[0099]本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过 程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序 在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光 盘等各种可以存储程序代码的介质中。
[0100]最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技 术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、 等同替换、改进等,均包含在本发明的保护范围内。
【主权项】
1. 一种通信方法,其特征在于,应用于上位机中,包括: 预先设置特征信息表,利用所述特征信息表存储与当前上位机相连的至少两个PLC分 别对应的特征信息,其中,所述特征信息包括:当前PLC的标识信息、通信参数及指令信息; 以及,设置参数解析模块; 接收携带目标标识信息的连接指令; 利用所述参数解析模块根据所述目标标识信息查询所述特征信息表,确定对应所述目 标标识信息的目标通信参数和目标指令信息,根据所述目标通信参数和所述目标指令信息 读取对应所述目标标识信息的目标PLC中存储的业务数据。2. 根据权利要求1所述的通信方法,其特征在于,所述设置参数解析模块,包括: 调用Windows API以构建参数解析模块。3. 根据权利要求1所述的通信方法,其特征在于,所述根据所述目标通信参数和所述目 标指令信息读取对应所述目标标识信息的目标PLC中存储的业务数据,包括: 根据所述目标标识信息,向目标PLC发送携带目标通信参数的连接请求,以使目标PLC 在接收到携带目标通信参数的连接请求后,打开对应的数据端口; 向目标PLC发送携带目标指令信息的数据读取请求,接收目标PLC根据携带目标指令信 息的数据读取请求通过打开的数据端口发送的业务数据。4. 根据权利要求3所述的通信方法,其特征在于,所述接收目标PLC根据携带目标指令 信息的数据读取请求通过打开的数据端口发送的业务数据之后,进一步包括: 根据所述目标通信参数解析所述业务数据以形成目标业务参数; 将所述目标业务参数存储至外部存储装置。5. 根据权利要求4所述的通信方法,其特征在于,所述将所述目标业务参数存储至外部 存储装置之后,进一步包括: 向目标PLC发送断开业务请求指令,以使目标PLC在接收到所述断开业务请求指令后关 闭对应的数据端口。6. -种上位机,其特征在于,包括: 设置模块,用于预先设置特征信息表;以及,设置参数解析模块; 特征信息表,用于存储与当前上位机相连的至少两个PLC分别对应的特征信息,其中, 所述特征信息包括:当前PLC的标识信息、通信参数及指令信息; 指令接收模块,用于接收携带目标标识信息的连接指令; 参数解析模块,用于根据所述目标标识信息查询所述特征信息表,确定对应所述目标 标识信息的目标通信参数和目标指令信息,根据所述目标通信参数和所述目标指令信息读 取对应所述目标标识信息的目标PLC中存储的业务数据。7. 根据权利要求6所述的上位机,其特征在于, 所述设置模块,用于调用Windows API以构建参数解析模块。8. 根据权利要求7所述的上位机,其特征在于,所述参数解析模块,包括: 连接处理子单元,用于根据所述目标标识信息,向目标PLC发送携带目标通信参数的连 接请求,以使目标PLC在接收到携带目标通信参数的连接请求后,打开对应的数据端口; 数据读取子单元,用于向目标PLC发送携带目标指令信息的数据读取请求,接收目标 PLC根据携带目标指令信息的数据读取请求通过打开的数据端口发送的业务数据。9. 根据权利要求8所述的上位机,其特征在于,所述参数解析模块,还包括: 参数解析子单元,用于根据所述目标通信参数解析所述业务数据以形成目标业务参 数; 存储处理子单元,用于将所述目标业务参数存储至外部存储装置。10. 根据权利要求9所述的上位机,其特征在于,所述参数解析模块,进一步包括: 断开处理子单元,用于向目标PLC发送断开业务请求指令,以使目标PLC在接收到所述 断开业务请求指令后关闭对应的数据端口。
【文档编号】G05B19/05GK105867295SQ201610392337
【公开日】2016年8月17日
【申请日】2016年6月3日
【发明人】李保鹏, 蔺际兴, 郑帅广, 张东场
【申请人】浪潮通用软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1