【技术实现步骤摘要】
PLC远程模块间的数据交互方法及系统
本专利技术涉及PLC数据通信
,更具体地说,它涉及一种PLC远程模块间的数据交互方法及系统。
技术介绍
现有技术中,各个PLC子模块通常通过数据总线与CPU进行数据以及控制上的连接,各PLC子模块之间的数据通信通常也是基于数据总线以及CPU的控制来完成的。CPU周期性的循环扫描并采集各个PLC子模块上传的数据,上述采集的数据经CPU内置的数据处理程序处理后再下发给到对应的PLC子模块,以此实现数据在不同PLC子模块之间的传递。当一个PLC子模块的数据传输任务结束后,再按既定顺序开始下一个PLC子模块的数据传输任务,以此循环。上述PLC子模块之间的数据交互方法,在实际应用当中也存在着许多弊端,例如,一个CPU对应连接有20个PLC子模块,基于PLC的轮询机制,按照每个PLC子模块数据传输任务耗时50ms计算,当一个PLC子模块数据上传之后,需要再等待20*50ms之后才能完成下一次数据的传输,显然,上述数据传输的实时性较差。并且,由于CPU在不断的轮询各个PLC子模块 ...
【技术保护点】
1.一种PLC远程模块间的数据交互方法,其特征在于,包括:/n建立各PLC子模块(2)与CPU(1)之间的通信连接;/n根据各PLC子模块(2)之间的数据订阅关系,在CPU(1)中配置数据订阅表;/n根据CPU(1)需要以及所述各PLC子模块(2)之间的数据订阅关系,在各PLC子模块(2)中配置相应的数据收集配置表;/n基于所述数据收集配置表,各PLC子模块(2)采集数据并上传至CPU(1);/n基于所述数据订阅表,CPU(1)采集由各PLC子模块(2)上传的被订阅数据,并基于所述数据订阅表将上述被订阅数据推送至订阅PLC子模块(2)。/n
【技术特征摘要】
1.一种PLC远程模块间的数据交互方法,其特征在于,包括:
建立各PLC子模块(2)与CPU(1)之间的通信连接;
根据各PLC子模块(2)之间的数据订阅关系,在CPU(1)中配置数据订阅表;
根据CPU(1)需要以及所述各PLC子模块(2)之间的数据订阅关系,在各PLC子模块(2)中配置相应的数据收集配置表;
基于所述数据收集配置表,各PLC子模块(2)采集数据并上传至CPU(1);
基于所述数据订阅表,CPU(1)采集由各PLC子模块(2)上传的被订阅数据,并基于所述数据订阅表将上述被订阅数据推送至订阅PLC子模块(2)。
2.根据权利要求1所述的方法,其特征在于,基于所述数据收集配置表,各PLC子模块(2)采集数据并上传至CPU(1),包括设置数据上传的触发条件并检测上述触发条件的触发状态,包括:
检测到PLC子模块(2)中被订阅数据发生变化;和/或
检测到PLC子模块(2)中被订阅数据落入到设定的数据范围;和/或
检测到系统时间达到设定时间;和/或
检测到PLC子模块(2)中的某项或多项数据被设定为始终上传。
3.根据权利要求2所述的方法,其特征在于,基于所述数据订阅表将上述被订阅数据推送至订阅PLC子模块(2)后,检测被订阅数据推送状态,包括:采集上述订阅PLC子模块(2)的反馈信息,并基于上述反馈信息判定是否再次或进一步推送上述被订阅数据至该订阅PLC子模块(2)。
4.根据权利要求3所述的方法,其特征在于,
为PLC子模块(2)上传的被订阅数据分配至少两级优先级;
若推送数据为第一优先级,则通过上述反馈信息确定所述订阅PLC子模块(2)是否接收到所述数据,若未能接收,则继续推送上述数据直至确定上述数据被所述订阅PLC子模块(2)接收;
若推送数据为第二优先级,则所述被订阅数据自CPU(1)推送出后不再检测推送状态。
5.根据权利要求1所述的方法,其特征在于,当被订阅PLC子模块(2)对应多个订阅PLC子模块(2)时,为多个所述订阅PLC子模块(2)分配获取CPU(1)所推送被订阅数据的优先级,并将上述优先级信息存储至所述数据订阅表中;
基于所述数据订阅表将上述被订阅数据推送至订阅PLC子模块(2)时,根据所述优先级顺序逐一推送上述被订阅数据至各订阅PLC子模块(2)。
6.根据权利要求1所述的方法,其特征...
【专利技术属性】
技术研发人员:徐如,郭从建,林春惠,郑晓生,
申请(专利权)人:上海海得控制系统股份有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。