[发明专利]一种收发独立线程的设置方法及装置在审
申请号: | 201410657557.2 | 申请日: | 2014-11-18 |
公开(公告)号: | CN104486188A | 公开(公告)日: | 2015-04-01 |
发明(设计)人: | 匡付华;蔡伟周;宋志刚;陈琼雁 | 申请(专利权)人: | 深圳达实智能股份有限公司 |
主分类号: | H04L12/403 | 分类号: | H04L12/403 |
代理公司: | 深圳市顺天达专利商标代理有限公司 44217 | 代理人: | 高占元 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 收发 独立 线程 设置 方法 装置 | ||
技术领域
本发明涉及楼宇自动控制网络数据通讯领域,尤其涉及一种收发独立线程的设置方法及装置。
背景技术
BACnet(Building Automation and Control Net-works)是一种专为楼宇自动控制网络制定的数据通信协议,以其先进的技术、完善的体系结构和开放的理念正式成为建筑智能化系统领域中的唯一ISO标准,使智能建筑的自动控制设备和系统能够实现信息的交换和共享,从而达到互连和互操作的目的,为智能建筑实现智能提供了基础。
虽然楼控系统对实时性要求不是很苛刻,但是目前BACnet的访问速度还是存在不完善的地方,例如,控制一台新风机的运转,发送开启命令后,现场新风机已经开始运转,但有时出现过了半分钟才能在上位看到它的状态,造成这种现场的原因是发送命令的报文是立即报文,而读取状态的报文是轮询报文,每条轮询报文从上位机发出轮询请求指令到BACnet设备返回状态信息需要150ms左右,每条报文最多包含七个变量,假定每个DDC(Direct Digital Control,直接数字控制)控制器包含4条报文,共有50个DDC,则完成一次轮询需要150*4*50=30000ms=30s。通过对抓取各个厂家的BACnet实时报文进行分析,现有技术的缺点是:轮询报文均采用发送轮询请求报文,然后一直等待DDC控制器返回响应状态报文,在返回状态报文后再发送下一条轮询请求报文。
发明内容
本发明要解决的技术问题在于,针对上述轮询报文均采用发送轮询请求报文,需等待DDC控制器返回响应状态报文,从而造成访问速度极为低下的问题,提供一种收发独立线程的设置方法及装置。
本发明解决其技术问题所采用的技术方案是:构造一种收发独立线程的设置方法,该方法在BACnet通讯中设置收发独立线程,包括步骤:
设置发送线程,以发送命令报文以及轮询请求报文,其中,所述轮询请求报文发送完毕后,延迟轮询延迟时间间隔后发送下一条轮询请求报文;
设置接收线程,以接收及解析DDC控制器的响应状态报文。
在本发明所述的设置方法中,在所述设置发送线程的步骤中,所述发送线程包括以下子步骤:
S100、开始发送所述命令报文以及轮询请求报文;
S101、统计所要发送的轮询请求报文的总数,依据所述总数设置轮询延迟时间间隔;
S102、检查是否存在命令报文待发送,若存在,则发送所述命令报文,若不存在,则转至步骤S103;
S103、判断所述轮询请求报文是否为最后一条轮询请求报文,若是,转至步骤S104,若否,转至步骤S105;
S104、发送第一条轮询请求报文,转至步骤S106;
S105、发送下一条轮询请求报文;
S106、延迟所述轮询延迟时间间隔;
S107、判断所述发送线程是否结束,若是,则结束所述发送线程,若否,则转至步骤S102。
在本发明所述的设置方法中,在所述设置接收线程的步骤中,所述接收线程包括以下子步骤:
S200、开始读取所述响应状态报文;
S201、检查接收队列中是否存在可抓取的数据,若存在,则转至步骤S202,若不存在,转至步骤S203;
S202、解析所述数据中的所述响应状态报文;
S203、延迟预设的接收时间间隔;
S204、判断所述接收线程是否结束,若是,则结束所述接收线程,若否,则转至步骤S201。
在本发明所述的设置方法中,所述步骤S202中还包括将解析后的数据传递至实时数据库。
另一方面,提供一种收发独立线程的设置装置,用于在BACnet通讯中设置收发独立线程,包括:
发送线程设置模块,用于设置发送线程,以发送命令报文以及轮询请求报文,其中,所述轮询请求报文发送完毕后,延迟轮询延迟时间间隔后发送下一条轮询请求报文;
接收线程设置模块,用于设置接收线程,以接收及解析DDC控制器的响应状态报文。
在本发明所述的设置装置中,所述设置装置还包括:
统计模块,用于统计所要发送的轮询请求报文的总数,依据所述总数设置轮询延迟时间间隔;
第一检查模块,用于检查是否存在命令报文待发送,若存在,则发送所述命令报文;
第一判断模块,用于判断所述轮询请求报文是否为最后一条轮询请求报文;
第一发送模块,用于发送第一条轮询请求报文;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳达实智能股份有限公司,未经深圳达实智能股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410657557.2/2.html,转载请声明来源钻瓜专利网。