一种多CPU之间通讯的方法与流程

文档序号:15257571发布日期:2018-08-24 20:52阅读:3836来源:国知局

本发明涉及多cpu之间通讯技术领域,更具体地说,它涉及一种多cpu之间通讯的方法。



背景技术:

随着工厂智能化要求的程度越来越高,工厂运行过程中产生的生产数据越来越多,为了及时处理庞杂的生产数,需要工厂中多个数据处理设备之间进行数据交换。

现有技术中,需要在多个数据处理设备之间连接有专用的数据转接设备来进行数据的通信,避免数据处理设备之间由于通讯协议的不统一以及由于数据的错误率过高而无法通信。

然而在多个数据处理设备之间增加数据转接设备,会增加额外的硬件成本,使工厂智能化的硬件架构变得更加复杂。



技术实现要素:

本发明技术方案所解决的技术问题为在多个数据处理设备之间增加数据转接设备,会增加额外的硬件成本,使工厂智能化的硬件架构变得更加复杂。

为实现上述目的,本发明技术方案提供了一种多cpu之间通讯的方法,包括如下步骤:

s1:电信号连接多个cpu之间的网络通讯端口;

s2:检查硬件网络连接;

s3:确认通讯设置正确;

s4:实时监控通讯数据,若通讯数据实时变化则为通讯正常,若通讯数据没有实时变化则进入s5;

s5:检查通讯设置是否正确,若设置正确则跳转至s2,否则跳转至s3。

通过上述技术方案,在硬件网络连接、软件设置正确以后,cpu通过实时监控数据的变化来判断当前通讯是否正常,若通讯数据实时变化,则通讯正常,若通讯数据没有实时变化,则通讯失败,需要重复检查,直到通讯成功,通过cpu自身的通讯功能,无需额外硬件成本,设置本身硬件地址与合作伙伴的id,编写通讯程序实现通讯,节约硬件成本,简化硬件结构,同时还能降低工程师的调试任务量,使故障的排查工作简单化。

进一步的,步骤s3中还包括:

s31:所述cpu中设置通讯交换数据块;

s32:将所述通讯交换数据块发送至其它所述cpu;

s33:接收其它所述cpu的所述通讯交换数据块;

s34:比较所述cpu中设置的通讯交换数据块与其接收的通讯交换数据块;

s35:若比较结果为相同则多个所述cpu之间通讯设置正确,若比较结果不同则代表多个所述cpu之间通讯设置异常。

通过上述技术方案,通过比较不同cpu上的通讯交换数据块,从而判断出多个cpu之间通讯设置是否正确,使用设置好的通讯数据块能够降低确认设置正确程序的复杂程度与难度。

进一步的,步骤s4中还包括:

s41:随机一个所述cpu产生心跳数据,所述心跳数据沿多个所述cpu的通讯链路传输;

s42:多个所述cpu实时侦测所述心跳数据;

s43:若多个所述cpu均可以侦测到所述心跳数据,则通讯正常,若存在所述cpu没有侦测到所述心跳数据,则通讯失败。

通过上述技术方案,使用心跳数据参与通讯是否正常的判断,心跳数据能够判断cpu之间通讯的数据是否出错,即出现掉包,若出现掉包则通讯出现失败,需要重新连接,确保以后数据通讯的正确性。

进一步的,步骤s42还包括:

s421:所述cpu侦测到所述心跳数据后将所述心跳数据保存为目标数据;

s422:所述cpu继续侦测到所述心跳数据后将所述心跳数据保存为对比数据;

s423:对比所述目标数据与所述对比数据;

s424:若对比结果为相同,则代表通讯正常,若对比结果为不同则代表通讯失败。

通过上述技术方案,通过对比目标数据与对比数据在侦测心跳数据的同时检测心跳数据的正确与否,若心跳数据不正确,通讯的错误率会大大提高,因此需要重新连接,确保数据通讯的正确性。

进一步的,步骤s42还包括:s425:使用所述对比数据更新所述目标数据。

通过上述技术方案,更新的作用在于使心跳数据能够不停地自检,验证同一cpu上的心跳数据是否持续稳定地传输。

进一步的,步骤s43还包括:

s431:若通讯失败,多个所述cpu之间停止通讯,并同时发出报错信号。

通过上述技术方案,停止通讯能避免cpu接收到错误的数据而执行错误的动作,报错信号则能提示系统与员工通讯失败,使系统与员工能够做出纠正措施。

进一步的,多个cpu之间的网络通讯端口通过网络电缆实现电信号连接。

通过上述技术方案,cpu之间进行数据传输时会产生电磁干扰,使用网络电缆进行电信号连接能够避免数据受到电磁干扰,降低通讯的丢包率。

本发明技术方案的有益效果至少包括:先使用网络电缆实现网络连接的硬件连接,保证cpu通讯的连接基础,然后根据cpu设置通讯协议,设置通讯合作伙伴与通讯方式,即进行软件设置,软件设置正确以后,cpu通过实时监控数据的变化来判断当前通讯是否正常,若通讯数据实时变化,则通讯正常,若通讯数据没有实时变化,则通讯失败,需要重复检查,直到通讯成功,通过cpu自身的通讯功能,无需额外硬件成本,设置本身硬件地址与合作伙伴的id,编写通讯程序实现通讯,节约硬件成本,简化硬件结构,同时还能降低工程师的调试任务量,使故障的排查工作简单化。

附图说明

图1为本发明实施例的方法流程示意图;

图2为本发明实施例s3的方法流程示意图;

图3为本发明实施例s4的方法流程示意图;

图4为本发明实施例s42的方法流程示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

实施例

一种多cpu之间通讯的方法,基于多个含有cpu的生产设备,如图1所示,包括如下步骤:

步骤s1:电信号连接多个cpu之间的网络通讯端口。员工在多个cpu之间的网络通讯端口通过网络电缆实现电信号连接。cpu之间进行数据传输时会产生电磁干扰,使用网络电缆进行电信号连接能够避免数据受到电磁干扰,降低通讯的丢包率。

步骤s2:检查硬件网络连接。员工先观察cpu之间的连接正确性,然后检测相邻cpu之间是否有电信号传输,若检测不到电信号传输,则代表网络电缆损坏,需要更换新的网络电缆。

步骤s3:确认通讯设置正确。cpu内运行软件内的参数需要员工提前设置好,设置好后员工需要核对运行软件内的参数是否正确。

如图2所示,其中步骤s3还包括步骤s31、步骤s32、步骤s33、步骤s34以及步骤s35。

步骤s31:cpu中设置通讯交换数据块。每个cpu中设置的通讯交换数据块都相同,且按照设定的频率向外相邻cpu发送通讯交换数据块。

步骤s32:将通讯交换数据块发送至其它cpu。

步骤s33:接收其它cpu的通讯交换数据块。

步骤s34:比较cpu中设置的通讯交换数据块与其接收的通讯交换数据块。cpu使用内置的比较程序来比较内置的通讯交换数据块与接收的通讯交换数据块是否一致。

步骤s35:若比较结果为相同则多个cpu之间通讯设置正确,若比较结果不同则代表多个cpu之间通讯设置异常。通过比较cpu内置与接收的通讯交换数据块,从而判断出多个cpu之间通讯设置是否正确,使用设置好的通讯数据块能够降低确认设置正确程序的复杂程度与难度。

步骤s4:实时监控通讯数据,若通讯数据实时变化则为通讯正常,若通讯数据没有实时变化则进入s5。

如图3所示,其中步骤s4还包括步骤s41、步骤s42以及步骤s43。

步骤s41:随机一个cpu产生心跳数据,心跳数据沿多个cpu的通讯链路传输。不同的cpu产生的心跳数据是相同的,不过其产生的时间是不一定相同的,不同的时间可以提高cpu侦测心跳数据后确定通讯数据的正确率。

步骤s42:多个cpu实时侦测心跳数据。如图4所示,其中步骤s42还包括步骤s421、步骤s422、步骤s423、步骤s424和步骤s425。

步骤s421:cpu侦测到心跳数据后将心跳数据保存为目标数据。

步骤s422:cpu继续侦测到心跳数据后将心跳数据保存为对比数据。

步骤s423:对比目标数据与对比数据。

步骤s424:若对比结果为相同,则代表通讯正常,若对比结果为不同则代表通讯失败。

步骤s425:使用对比数据更新目标数据。更新的作用在于使心跳数据能够不停地自检,验证同一cpu上的心跳数据是否持续稳定地传输。

通过对比目标数据与对比数据在侦测心跳数据的同时检测心跳数据的正确与否,若心跳数据不正确,通讯的错误率会大大提高,因此需要重新连接,确保数据通讯的正确性。

回到图3,步骤s43:若多个cpu均可以侦测到心跳数据,则通讯正常,若存在cpu没有侦测到心跳数据,则通讯失败。其中步骤s43还包括步骤s431:若通讯失败,多个cpu之间停止通讯,并同时发出报错信号。停止通讯能避免cpu接收到错误的数据而执行错误的动作,报错信号则能提示系统与员工通讯失败,使系统与员工能够做出纠正措施。

步骤s5:检查通讯设置是否正确,若设置正确则跳转至s2,否则跳转至s3。

本发明技术方案通过先使用网络电缆实现网络连接的硬件连接,降低电磁干扰对通讯数据产生的影响,保证cpu通讯的硬件连接的稳定性,然后根据cpu设置通讯协议,设置通讯合作伙伴与通讯方式,即进行软件设置,软件设置正确以后,cpu通过实时监控数据的变化来判断当前通讯是否正常,cpu在通讯数据会放入心跳数据,使用心跳数据参与通讯是否正常的判断,心跳数据能够判断cpu之间通讯的数据是否出错,即出现掉包,若出现掉包则通讯出现失败,需要重新连接,确保以后数据通讯的正确性。若通讯数据正常且实时变化,则通讯正常,若通讯数据没有实时变化,则通讯失败,需要重复检查,直到通讯成功。通过cpu自身的通讯功能,无需额外硬件成本,设置本身硬件地址与合作伙伴的id,编写通讯程序实现通讯,节约硬件成本,简化硬件结构,同时还能降低工程师的调试任务量,使故障的排查工作简单化。

以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1