一种CAN通信系统及其数据处理方法、风机与流程

摘要: 本发明涉及控制器局域网通信,尤其涉及一种can通信系统及其数据处理方法、风机。背景技术:1、在风力发电技术领域,风机中的can通信单元通过can总线与变桨单元等...
一种CAN通信系统及其数据处理方法、风机与流程

本发明涉及控制器局域网通信,尤其涉及一种can通信系统及其数据处理方法、风机。

背景技术:

1、在风力发电技术领域,风机中的can通信单元通过can总线与变桨单元等从站设备进行数据交换。

2、现有can通信单元基于单片机开发,并采用前后台方式实现数据的收发,前台中断负责快速接收数据,后台主循环则不断轮询发送邮箱状态,一旦检测到待发送的数据包便通过发送邮箱发出。由于can通信单元中的发送邮箱数量很少,在高负荷通信场景下发送邮箱会迅速被占满。此时主循环仍持续轮询发送邮箱状态,导致数据包无法及时写入,进而造成部分数据包发送失败,严重影响通信的实时性与可靠性。因此,存在待改进之处。

技术实现思路

1、本发明提供一种can通信系统及其数据处理方法、风机,以解决can通信单元中的发送邮箱数量很少,存在高负荷通信场景下造成部分数据包发送失败的技术问题。

2、本发明提出一种can通信系统,应用于风机中,所述风机包括多个从站设备,所述can通信系统包括:

3、can通信单元,通过can总线与多个从站设备连接,用于接收各个从站设备的运行状态数据,并将各个所述运行状态数据分别与所述can通信单元的通信状态数据进行组合,形成对应上报数据;

4、处理单元,用于对所述上报数据中的通信状态数据进行判断,并在确认通信状态数据正常时,根据所述运行状态数据和预设的控制目标数据生成控制参数数据;

5、其中,所述can通信单元还用于将控制参数数据形成数据包,并检测其内部的发送邮箱状态:

6、当存在空闲的发送邮箱时,将数据包通过空闲的发送邮箱发送给从站设备;

7、否则,持续检测发送邮箱状态,并将检测次数与预设的阈值次数进行比较,基于比较结果执行预设的发送异常处理。

8、在本发明的一个实施例中,所述can通信单元还用于当不存在空闲的发送邮箱,且所述检测次数达到预设暂停次数或者暂停次数的倍数时,暂停检测发送邮箱状态,并在达到预设的暂停时长后,继续检测发送邮箱状态,对数据包执行等待发送处理。

9、在本发明的一个实施例中,所述can通信单元还用于将所述检测次数与预设的阈值次数进行比较:

10、当所述检测次数大于等于阈值次数时,丢弃数据包并记录发送失败信息;

11、否则,继续检测发送邮箱状态,对数据包执行等待发送处理。

12、在本发明的一个实施例中,所述阈值次数为40000~50000次,所述暂停次数为10000次,暂停时长为1ms~2ms。

13、在本发明的一个实施例中,所述can通信单元包括至少两个can通信接口,每个所述can通信接口分别连接至少一个所述从站设备。

14、在本发明的一个实施例中,所述can通信单元还用于将每个can通信接口接收到的从站设备的运行状态数据,分别填入对应的can接收消息队列;

15、所述can通信单元还用于从各can接收消息队列中按序取出运行状态数据,并将取出的各个所述运行状态数据分别与所述can通信单元的通信状态数据进行组合,形成上报数据。

16、在本发明的一个实施例中,所述can通信单元还用于在接收到控制参数数据后确认对应的从站设备,将控制参数数据存入该从站设备对应的can发送消息队列中,以及从can发送消息队列中按序取出控制参数数据封装成数据包。

17、本发明还提出一种can通信系统的数据处理方法,应用于风机中,所述风机包括多个从站设备,所述数据处理方法包括:

18、通过can通信单元接收从站设备的运行状态数据,并将所述运行状态数据与can通信单元的通信状态数据进行组合,形成上报数据;

19、通过处理单元对所述上报数据中的通信状态数据进行判断,并在确认通信状态数据正常时,根据所述运行状态数据和预设的控制目标数据生成控制参数数据;

20、通过can通信单元将控制参数数据形成数据包,并检测can通信单元内部的发送邮箱状态:

21、当存在空闲的发送邮箱时,将数据包通过空闲的发送邮箱发送给从站设备;

22、否则,持续检测发送邮箱状态,并将检测次数与预设的阈值次数进行比较,基于比较结果执行预设的发送异常处理。

23、本发明还提出一种风机,包括如上述任一所述的can通信系统与多个从站设备。

24、在本发明的一个实施例中,所述从站设备至少包括变桨单元。

25、本发明的有益效果:本发明提出的一种can通信系统及其数据处理方法、风机,首先,通过can通信单元接收各个从站设备的运行状态数据,并将各个运行状态数据分别与can通信单元的通信状态数据进行组合,形成对应上报数据。其次,通过处理单元,对上报数据中的通信状态数据进行判断,并在确认通信状态数据正常时,根据运行状态数据和预设的控制目标数据生成控制参数数据。然后,can通信单元还用于将控制参数数据形成数据包,并检测其内部的发送邮箱状态:当存在空闲的发送邮箱时,将数据包通过空闲的发送邮箱发送给从站设备;否则,持续检测发送邮箱状态,并将检测次数与预设的阈值次数进行比较,基于比较结果执行预设的发送异常处理。由此可见,在高负荷can通信时,可实现大量数据高效可靠发送。

1.一种can通信系统,其特征在于,应用于风机中,所述风机包括多个从站设备,所述can通信系统包括:

2.根据权利要求1所述的can通信系统,其特征在于,所述can通信单元还用于当不存在空闲的发送邮箱,且所述检测次数达到预设暂停次数或者暂停次数的倍数时,暂停检测发送邮箱状态,并在达到预设的暂停时长后,继续检测发送邮箱状态,对数据包执行等待发送处理。

3.根据权利要求2所述的can通信系统,其特征在于,所述can通信单元还用于将所述检测次数与预设的阈值次数进行比较:

4.根据权利要求3所述的can通信系统,其特征在于,所述阈值次数为40000~50000次,所述暂停次数为10000次,暂停时长为1ms~2ms。

5.根据权利要求1所述的can通信系统,其特征在于,所述can通信单元包括至少两个can通信接口,每个所述can通信接口分别连接至少一个所述从站设备。

6.根据权利要求5所述的can通信系统,其特征在于,所述can通信单元还用于将每个can通信接口接收到的从站设备的运行状态数据,分别填入对应的can接收消息队列;

7.根据权利要求5所述的can通信系统,其特征在于,所述can通信单元还用于在接收到控制参数数据后确认对应的从站设备,将控制参数数据存入该从站设备对应的can发送消息队列中,以及从can发送消息队列中按序取出控制参数数据封装成数据包。

8.一种can通信系统的数据处理方法,其特征在于,应用于风机中,所述风机包括多个从站设备,所述数据处理方法包括:

9.一种风机,其特征在于,包括如权利要求1至7任一所述的can通信系统与多个从站设备。

10.根据权利要求9所述的风机,其特征在于,所述从站设备至少包括变桨单元。