首页 / 专利库 / 电脑零配件 / 系统总线 / 一种网络通信方法、装置和存储介质

一种网络通信方法、装置和存储介质

阅读:996发布:2020-05-11

专利汇可以提供一种网络通信方法、装置和存储介质专利检索,专利查询,专利分析的服务。并且本 发明 提出了一种网络通信方法、装置和存储介质,用以减少通信网络中数据包的数量,提高数据传输效率。网络通信方法应用于视频 监控系统 中,包括主设备和从设备,包括:主设备向从设备发送数据包,其中包括起始字符、数据长度、数据内容、求和校验和结束字符,用于传输0~255个字节的数据;主设备接收从设备发送的响应数据包,其中包括错误响应数据包和正确响应数据包,响应数据包为从设备根据数据包的解码结果发送的,如果从设备解码成功,则向主设备发送正确响应数据包,其中携带有正确响应码;如果从设备解码失败,且根据数据包中携带的 地址码 确认数据包为主设备发送给自身的数据包,则向主设备发送错误响应数据包,其中携带有错误响应码。,下面是一种网络通信方法、装置和存储介质专利的具体信息内容。

1.一种网络通信方法,其特征在于,所述网络通信方法应用于视频监控系统中,所述视频监控系统包括主设备和从设备;
所述方法,包括:
所述主设备向所述从设备发送数据包,所述数据包包括起始字符、数据长度、数据内容、求和校验和结束字符,所述数据包用于传输0~255个字节的数据;
所述主设备接收所述从设备发送的响应数据包,所述响应数据包包括错误响应数据包和正确响应数据包,其中,所述响应数据包为所述从设备根据所述数据包的解码结果发送的,如果所述从设备解码成功,则向所述主设备发送正确响应数据包,所述正确响应数据包中携带有正确响应码;如果所述从设备解码失败,且根据所述数据包中携带的地址码确认所述数据包为所述主设备发送给自身的数据包,则向所述主设备发送错误响应数据包,所述错误响应数据包中携带有错误响应码。
2.根据权利要求1所述的方法,其特征在于,所述主设备和所述从设备之间在物理层采用以下任一方式连接:点对点连接方式、总线连接方式、星形连接方式和混合连接方式,所述混合连接方式包括总线连接方式和星形连接方式的混合。
3.根据权利要求1所述的方法,所述主设备和所述从设备之间采用寻址方式进行通信。
4.根据权利要求1所述的方法,所述数据包的起始字符为设定字符。
5.根据权利要求4所述的方法,其特征在于,所述起始字符包括0xC00xC0。
6.根据权利要求5所述的方法,其特征在于,如果所述数据内容、数据长度或者求和校验中包含有0xC0或者0xCA或者0xCF,则在所述数据内容之前插入转义字符。
7.根据权利要求6所述的方法,其特征在于,所述转义字符包括0xCA。
8.一种网络通信装置,其特征在于,所述网络通信装置应用于视频监控系统中,所述视频监控系统包括主设备和从设备,所述网络通信装置设置于所述主设备中,所述装置,包括:
发送单元,用于向所述从设备发送数据包,所述数据包包括起始字符、数据长度、数据内容、求和校验和结束字符,所述数据包用于传输0~255个字节的数据;
接收单元,用于接收所述从设备发送的响应数据包,所述响应数据包包括错误响应数据包和正确响应数据包,其中,所述响应数据包为所述从设备根据所述数据包的解码结果发送的,如果所述从设备解码成功,则向所述主设备发送正确响应数据包,所述正确响应数据包中携带有正确响应码;如果所述从设备解码失败,且根据所述数据包中携带的地址码确认所述数据包为所述主设备发送给自身的数据包,则向所述主设备发送错误响应数据包,所述错误响应数据包中携带有错误响应码。
9.一种网络设备,其特征在于,所述网络设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的方法的步骤。
10.一种计算机存储介质,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的方法的步骤。

说明书全文

一种网络通信方法、装置和存储介质

技术领域

[0001] 本发明涉及网络通信技术领域,尤其涉及一种网络通信方法、装置和存储介质。

背景技术

[0002] 网络视频监控就是通过有线、无线IP(Internet Protocol,因特网协议)网络、电网络把视频信息以数字化的形式来进行传输。只要是网络可以到达的地方就可以实现视频监控和记录,并且这种监控还可以与很多其它类型的系统进行结合。
[0003] 目前,常用的视频监控协议有Pelco-D,Pelco-P等协议,但普遍协议长度固定且较短,可表达的内容有限,导致在进行数据传输时,增加了网络中的数据包数量,降低了数据传输效率。

发明内容

[0004] 本发明实施例提供一种网络通信方法、装置和存储介质,用以减少通信网络中数据包的数量,提高数据传输效率。
[0005] 第一方面,提供一种网络通信方法,所述网络通信方法应用于视频监控系统中,所述视频监控系统包括主设备和从设备;
[0006] 所述方法,包括:
[0007] 所述主设备向所述从设备发送数据包,所述数据包包括起始字符、数据长度、数据内容、求和校验和结束字符,所述数据包用于传输0~255个字节的数据;
[0008] 所述主设备接收所述从设备发送的响应数据包,所述响应数据包包括错误响应数据包和正确响应数据包,其中,所述响应数据包为所述从设备根据所述数据包的解码结果发送的,如果所述从设备解码成功,则向所述主设备发送正确响应数据包,所述正确响应数据包中携带有正确响应码;如果所述从设备解码失败,且根据所述数据包中携带的地址码确认所述数据包为所述主设备发送给自身的数据包,则向所述主设备发送错误响应数据包,所述错误响应数据包中携带有错误响应码。
[0009] 其中,所述主设备和所述从设备之间在物理层采用以下任一方式连接:点对点连接方式、总线连接方式、星形连接方式和混合连接方式,所述混合连接方式包括总线连接方式和星形连接方式的混合。
[0010] 在一种实施方式中,所述主设备和所述从设备之间采用寻址方式进行通信。
[0011] 在一种实施方式中,所述数据包的起始字符为设定字符。
[0012] 在一种实施方式中,所述起始字符包括0xC00xC0。
[0013] 在一种实施方式中,如果所述数据内容中包含有0xC0或者0xCA或者0xCF,则在所述数据内容之前插入转义字符。
[0014] 在一种实施方式中,所述转义字符包括0xCA。
[0015] 第二方面,提供一种网络通信装置,所述网络通信装置应用于视频监控系统中,所述视频监控系统包括主设备和从设备,所述网络通信装置设置于所述主设备中,所述装置,包括:
[0016] 发送单元,用于向所述从设备发送数据包,所述数据包包括起始字符、数据长度、数据内容、求和校验和结束字符,所述数据包用于传输0~255个字节的数据;
[0017] 接收单元,用于接收所述从设备发送的响应数据包,所述响应数据包包括错误响应数据包和正确响应数据包,其中,所述响应数据包为所述从设备根据所述数据包的解码结果发送的,如果所述从设备解码成功,则向所述主设备发送正确响应数据包,所述正确响应数据包中携带有正确响应码;如果所述从设备解码失败,且根据所述数据包中携带的地址码确认所述数据包为所述主设备发送给自身的数据包,则向所述主设备发送错误响应数据包,所述错误响应数据包中携带有错误响应码。
[0018] 第三方面,提供一种终端设备,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述任一网络通信方法所述的步骤。
[0019] 第四方面,提供一种计算机存储介质,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一网络通信方法所述的步骤。
[0020] 采用上述技术方案,本发明至少具有下列优点:
[0021] 本发明所述的网络通信方法、装置和存储介质中,每个网络层的数据包可以根据实际需求传输0~255个字节的数据,从而能够实现更多的指令和更丰富的数据内容。对于主设备和从设备之间交互的数据包,从设备需要进行响应,从而提高了数据传输的可靠性。附图说明
[0022] 图1为本发明实施例的设备之间点对点连接方式示意图;
[0023] 图2为本发明实施例的设备之间总线连接方式示意图;
[0024] 图3为本发明实施例的设备之间星形连接方式示意图;
[0025] 图4a为本发明实施例的物理层的第一种接口电路示意图;
[0026] 图4b为本发明实施例的物理层的第二种接口电路示意图;
[0027] 图5为本发明实施例的串行接口时序示意图;
[0028] 图6为本发明实施例的网络通信方法的实施流程示意图;
[0029] 图7为本发明实施例的网络通信装置的结构示意图。

具体实施方式

[0030] 为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明进行详细说明如后。
[0031] 需要说明的是,本发明实施例中的说明书权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。
[0032] 在本文中提及的“多个或者若干个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0033] 本发明实施例提供的网络通信方法可以应用于视频监控系统中,视频监控系统包括主设备和从设备,具体实施时,主设备可以为显控计算机,从设备可以为图像传感器和转台等。需要说明的是,本发明实施例提供的网络通信方法,除了视频监控系统经常涉及的图像传感器(红外热像仪与可见光摄像机等)和转台外,还可以扩展到视频跟踪器、激光测距机、雷达、照明设备等,可以根据具体应用进行任意扩展。
[0034] 为了更好的理解本发明实施例,以下对本发明实施例涉及的网络层次进行介绍,该网络结构包括物理层、数据链路层、网络层和应用层等。
[0035] 本发明实施例中,物理层系统拓扑包括点对点连接、总线连接、星形连接、混合连接等。其中,点对点连接一般指两台设备(含计算机)之间的通信,如图1所示,常见的RS-232C、RS422、RS485都可以使用这种通信方式。总线连接一般是将所有设备(含计算机)串接成链状,有明确的两个终端,如图2所示,为了避免线缆分叉,一般推荐将中间设备设计成虚框所示的形式,即一进一出两个接口,必要时中间设备的第二个接口可以方便地进行终端匹配,并且鼓励一进一出的两根线缆可以直接对接或者通过简易手段即可实现对接。常见的RS422、RS485都可以使用这种通信方式,一般情况下RS-232C禁止使用这种方式。RS422使用这种连接方式时,必须指定一台终端设备为主设备,其收发端与其它从设备相反,线缆定义按照从设备命名。RS485使用这种连接方式时,可以指定任意一台设备(推荐指定终端设备)为主设备。星形连接一般是将所有设备(含计算机)的通信线缆集中在一点或一处进行连接,如图3所示,常见的RS422、RS485都可以使用这种通信方式,一般情况下RS-232C禁止使用这种方式。RS422使用这种连接方式时,必须指定一台设备为主设备,其收发端与其它从设备相反,线缆定义按照从设备命名。RS485使用这种连接方式时,可以指定任意一台设备为主设备。混合连接一般是总线连接和星形连接的混合,常见的RS422、RS485都可以使用这种通信方式,一般情况下RS-232C禁止使用这种方式。RS422使用这种连接方式时,必须指定一台设备为主设备,其收发端与其它从设备相反,线缆定义按照从设备命名。RS485使用这种连接方式时,可以指定任意一台设备为主设备。
[0036] 如图4a和图4b所示,其为物理层的接口电路示意图,其中,图4a为非隔离方式,图4b为隔离方式。根据本发明实施例,接口电路中收发都有1kΩ的匹配电阻,所以终端个数最多为8个,如果增加终端个数需保证所有匹配电阻的并联值大于等于120Ω。另外,本发明实施例中,处理器端的发送引脚上拉为高电平,发送使能下拉为禁止状态。
[0037] 具体实施时,图4a和图4b所示的接口电路用于总线连接时,仅在终端设备的接收端(A、B引脚)保留匹配电阻,并将电阻值调整为120Ω,其它位置(包含所有主从设备)的匹配电阻全部取消。点对点连接可按照只有两个终端设备通信处理。当图4a和图4b所示的接口电路用于RS485时,A连接Y,B连接Z,匹配电阻保留1个,接收使能改为受控,推荐将接收使能与地线断开后直接连接至发送使能,实现收发互斥、默认接收,避免接收自己发送的数据。
[0038] 在数据链路层,串行接口的时序应满足图5所示的通用要求,具体实施时,虚线部分可以没有,其中:
[0039] MAK(Mark):空闲状态,可以没有。
[0040] STA(Start):起始位,1个数据位宽度。
[0041] D0~D7:数据位最低位至最高位。
[0042] CHK(Check):校验位,1个数据位宽度,可以为无校验、奇校验或偶校验。
[0043] STP(Stop):停止位,1个~2个数据位宽度。
[0044] 波特率可以在以下波特率中选取:1200bps、2400bps、4800bps、9600bps、19200bps、38400bps、57600bps、115200bps、230400bps、460800bps。较佳地,可以选用:
19200bps(优先)、9600bps、115200bps、460800bps。
[0045] 对于校验方式,本发明实施例中,可以无校验位,即无CHK。对于数据位位数,可以统一规定为8位。对于停止位宽度,可以统一规定为1位。
[0046] 在网络层,各种数据类型的长度具体定义如下:
[0047] a)char——长度一个字节,一般指ASCII字符,也用于表示单字节整数;
[0048] b)int——长度两个字节,用于表示双字节整数;
[0049] c)long——长度四个字节,用于表示四字节整数;
[0050] d)signed——修饰符,有符号数据,此为默认情况可以不写;
[0051] e)unsigned——修饰符,无符号数据;
[0052] f)void——长度一个字节,表示数据无明确类型(类型另行规定),可用于占位。
[0053] 具体实施时,可以规定多字节数据在传输时高位字节在前、低位字节在后,即先传送高位字节。
[0054] 本发明实施例中,还定义了数据包的基本格式,任何设备的接收与发送都必须遵守。如表1所示,其为数据包基本格式的一种示意:
[0055] 表1
[0056]
[0057] 其中,求和校验指的是对数据内容进行求和并取低8位(不含转义字符),转义字符为0xCA,数据长度、数据内容和求和校验中的数据如包含0xC0或者0xCA或者0xCF则前插0xCA。根据本发明实施例中,命令数据与响应数据都位于数据内容之中。具体实施时,起始字符具有最高优先级。一般情况下,结束字符之后20微妙内应该禁止发送使能,字符的时间间隔一般应小于等于20毫秒。
[0058] 如表2所示,其为命令数据格式示意,用于主设备向从设备发送命令。
[0059] 表2
[0060]目标设备代码 命令代码 一定长度的附加数据
unsigned char unsigned char void[]
[0061] 较佳地,命令代码可以保留0xFF不要使用。
[0062] 如表3所示,其定义了响应数据格式,用于从设备向主设备反馈数据。
[0063] 表3
[0064]自身设备代码 响应代码 一定长度的附加数据
unsigned char unsigned char void[]
[0065] 其中,设备应该在20微秒后(RS485时)、200毫秒内给出响应,响应代码推荐使用命令代码,利于指令配对,保留的0xFF用于错误代码。
[0066] 本发明实施例中,主设备和从设备之间应当遵循以下通信方法和原则:
[0067] 从设备绝对不能且绝对不会主动发送数据,从设备的发送端平时以高阻态形式接入串口网络,当收到属于自己的命令后在没有特殊约定时,都应该向主设备发送响应;
[0068] 当主设备向从设备发送命令时,如无特殊约定从设备应在200毫秒内发出响应,从设备解码发生错误后,如果地址码已经接收并与自身匹配,则应该向主设备发送错误响应码;
[0069] 当主设备收到错误响应码或者200毫秒内没有收到响应码或者响应码解码发生错误后,建议重新发送命令,当重发次数超过3次时,判定从设备出现故障,并以适当方式通知用户;
[0070] 如无特殊约定数据包中字符的时间间隔一般应小于等于20毫秒,否则视为超时错误。
[0071] 在应用层,应用层用于规定设备的地址码、命令码及附加数据、响应码及附加数据。如果网络层解码正确,在没有特殊约定时,建议将应用层数据过短判别为非法数据,而应用层数据过长判别为正常,截取有定义的部分进行操作即可,方便在调试与检测时附加其它额外数据或临时数据。
[0072] 制定应用层接口规范时需注意耗时过长的指令必须分解,确保200毫秒内完成响应的可行性,比如测距功能不能在200毫秒之内完成就必须分解为启动测距功能和读取距离功能。
[0073] 如表4-表10所示,其为某视频监控系统的具体应用层示例。
[0074] 表4设备代码
[0075] 设备名称 设备代码 设备名称 设备代码红外热像仪 0x01 可见光摄像机 0x02
转台控制器 0x03 视频跟踪器 0x04
激光测距机 0x05    
[0076] 表5
[0077]
[0078] 表6
[0079]
[0080]
[0081] 表7
[0082]
[0083] 表8
[0084]
[0085]
[0086] 表9
[0087]
[0088] 表10
[0089]
[0090]
[0091] 基于上述定义的网络结构,如图6所示,其为本发明实施例提供的网络通信方法的实施流程示意图,可以包括以下步骤:
[0092] S61、主设备向所述从设备发送数据包。
[0093] 其中,所述数据包包括起始字符、数据长度、数据内容、求和校验和结束字符,所述数据包用于传输0~255个字节的数据。
[0094] S62、主设备接收所述从设备发送的响应数据包,所述响应数据包包括错误响应数据包和正确响应数据包。
[0095] 其中,所述响应数据包为所述从设备根据所述数据包的解码结果发送的,如果所述从设备解码成功,则向所述主设备发送正确响应数据包,所述正确响应数据包中携带有正确响应码;如果所述从设备解码失败,且根据所述数据包中携带的地址码确认所述数据包为所述主设备发送给自身的数据包,则向所述主设备发送错误响应数据包,所述错误响应数据包中携带有错误响应码。
[0096] 其中,所述主设备和所述从设备之间在物理层采用以下任一方式连接:点对点连接方式、总线连接方式、星形连接方式和混合连接方式,所述混合连接方式包括总线连接方式和星形连接方式的混合。
[0097] 在一种实施方式中,所述主设备和所述从设备之间采用寻址方式进行通信。
[0098] 在一种实施方式中,所述数据包的起始字符为设定字符。
[0099] 在一种实施方式中,所述起始字符包括0xC00xC0。
[0100] 在一种实施方式中,如果所述数据内容中包含有0xC0或者0xCA或者0xCF,则在所述数据内容之前插入转义字符。
[0101] 在一种实施方式中,所述转义字符包括0xCA。
[0102] 基于相同的技术构思,本发明实施例还提供了一种网络通信装置,所述网络通信装置应用于视频监控系统中,所述视频监控系统包括主设备和从设备,所述网络通信装置设置于所述主设备中。如图7所示,其为本发明实施例提供的网络通信装置的结构示意图,包括:
[0103] 发送单元71,用于向所述从设备发送数据包,所述数据包包括起始字符、数据长度、数据内容、求和校验和结束字符,所述数据包包括用于传输0~255个字节的数据;
[0104] 接收单元72,用于接收所述从设备发送的响应数据包,所述响应数据包包括错误响应数据包和正确响应数据包,其中,所述响应数据包为所述从设备根据所述数据包的解码结果发送的,如果所述从设备解码成功,则向所述主设备发送正确响应数据包,所述正确响应数据包中携带有正确响应码;如果所述从设备解码失败,且根据所述数据包中携带的地址码确认所述数据包为所述主设备发送给自身的数据包,则向所述主设备发送错误响应数据包,所述错误响应数据包中携带有错误响应码。
[0105] 基于相同的技术构思,本发明实施例还提供了一种终端设备,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述任一网络通信方法所述的步骤。
[0106] 基于相同的技术构思,本发明实施例还提供了一种计算机存储介质,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一网络通信方法所述的步骤。
[0107] 本发明实施例提供的网络通信方法中,每个网络层的数据可以根据实际需求传输0~255个字节的数据,从而有利于实现更多的指令和更丰富的数据内容。本发明所描述的通信方法中,每个网络层的数据包的起始字符为0xC00xC0,若数据中包含0xC0(或0xCA或
0xCF)则前插0xCA,因此数据内容中不会包含0xC00xC0,只要见到0xC00xC0就可以判断此为数据包的起始字符,解码可靠,防止误判。另外,标准的终端匹配电阻的阻值和连接方式只适用于总线连接方式,本发明所涉及的终端匹配电阻的阻值和连接方式不仅适用于总线连接方式,还适用于星形连接和混合连接方式,可接受最多8个终端设备。而且,本发明实施例提供的网络通信方法中,发送使能连接下拉电阻使发送使能无效,发送信号连接上拉电阻使发送信号处于空闲状态,可有效防止设备在上电初始化期间向总线乱发数据。
[0108] 本发明实施例提供的网络通信方法、装置和存储介质,物理层系统拓扑支持使用星形连接或混合连接(而不仅仅是点对点连接或总线连接),接口电路使用具体实施方式中的接口电路示意图,该电路收发都有1kΩ的匹配电阻,另外处理器端的发送引脚上拉为高电平,发送使能下拉为禁止状态。网络层数据包包括起始字符(0xC00xC0)、数据长度、数据内容、校验、结束字符(0xCF),数据长度、数据内容或校验中的数据如包含关键字(0xC0或0xCA或0xCF)则前插转义字符(0xCA),校验指的是对数据内容进行求和并取低8位(不含转义字符)。网络中指定一台设备为主设备(一般是显控计算机),网络中的其他设备为从设备(如系统中的图像传感器、转台等),主设备与众多从设备的通信采用寻址的方式(每个设备具有唯一的地址码)。
[0109] 根据本发明实施例提供的网络通信方法、装置和存储介质,可根据需求调整数据包长度,从而使表达内容更丰富。本发明所描述的通信方法解码可靠,避免误判。本发明所涉及的终端匹配电阻的阻值和连接方式不仅适用于总线连接方式,还适用于星形连接和混合连接方式,可接受最多8个终端设备,另外本发明可有效防止设备在上电初始化期间向总线乱发数据。
[0110] 通过具体实施方式的说明,应当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本发明加以限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈