这个话题是由另一贴子“如何实现物理输出Q点在屏上自定义?”引出。
全部Q点由用户自定义,必要性值得研究。
一般情况下,硬件组态后不会全部Q点正好都用上,往往会有一些Q点暂时没有用上,成为富裕Q点,这些富裕Q点可以成为备用Q点。
系统运行一段时间后,某个Q点有可能会损坏。
在不更换硬件的情况下,把损坏的Q点输重定向至备用Q点,同时把损坏Q点的外接线接到备用Q点上,维持系统继续运行。
基于这个想法,就有下面的实验程序:
1、子程序:

2、变量表:

3、调用:

4、程序附件:
ReDirQ.rar
5、重定向子程序的放置位置,宜在全部程序的最后。
若放在全部程序的开始位置,备用Q点输出慢半拍。
若放在程序的任意位置,可能会有慢半拍、数据完整性等问题。
如果严格杜绝“双线圈”的,则不会有数据完整性问题。
但是,放在程序最后,则没有任何问题。
6、局限性:
A、不能重定向特殊Q点,比如高速输出,这是硬件绑定的。
B、立即输出型Q点(使用立即输出指令),重定向会有延时,备用Q点按正常刷新输出。