有多台设备,配置相同,功能相同。
假设5台设备。每台里面一个PLC(SMART/1200),配置功能一样。
在没有上层管理的情况下,选出2台作为管理。(1用1备)。
管理自己和其他4台的启停。当管理员出现异常,备管理员要站出来承担责任,管理自己其他设备的启停。
当这2个管理员都异常的情况,其他3台切换为本都模式自己管自己启停。
现在问题是:
当主管理员机组出现故障,或者整个PLC都损坏了,备管理员如何知道。
备管理员故障了,剩下的设备,如何知道,转为本地模式?
进一步问题:
选出的2台管理员不固定是谁,可根据需要切换。
协同设备个数不固定,也可能出现10台机组,5(6,7,8,9,10)参与协同工作,遵循以上规则。剩下的运行在本地模式。
2023 12/05 更新
目前一期项目5台设备,每台设备都有自己PLC和HMI(配置相同),每台设备都可以本地运行,
实时性要求不高。
将设备编号为1-5,当切换为协同工作模式时,指定1号为主管理员,2号为备管理员。
1号管理自己和2-5,根据需求和负载,决定这5台需要开启几台和几号。(其中也存在负荷小开2台,或者负荷大全开的情况,开几号根据总运行时间,运行时间短的优先投入;比方现在计算出需要开3台,结果3号运行一段时间产生了故障,则主管理员启动4号顶上)。管理员只负责机组的投入启动,暂不插手对方的内部运算。
1号管理员故障,或者掉线,2号作为备用管理员要站出来,承担管理的责任。
当1,2号两位管理员都异常,剩余3台转为本地模式,自行工作。
第一步用什么思路先实现这个功能。
第二步后面再考虑随意指定管理员,在激活协同模式之前,可以在HMI指定自己为主/副管理员,今天指定2号主3号副,下次3主4副,但是不能冲突,避免3号已经设置为主管理,4号又被设置成主管理。
另外也暂不考虑在线切换副管理员,比如指定2主3副,结果3自己先异常了,2号作为主让4号来承担副管理员。这个暂时也没提到。
项目背景:
最简单的做法应是在上层设一主一副PLC,他两管理这5台,弊端就是这2个PLC需要放到这5台机组的某一台里,且不能指定主辅管理了。
我司有软件部门是有成熟的单片机方案,通过CAN总线实现的。
据说CAN总线底层就有这种机制,不了解CAN,关于这方面也希望懂行的科普一下,不吝赐教。
之前这种多级协同,是在每台机组后面挂一个这种单片机模块实现的(此模块和PLC通信)。
现在用户不让外挂模块了,本体实现。