“通讯网”一看到别人贴一个没有用M的程序出来,就大惊小怪,哇呀!程序的输入点都是X,输出是Y ! 不行不行,这是“毛病”!任何一个有经验的都不会这么写,他们会用M!
其实,程序有没有“毛病”,判断的标准应该有两个:其一、在不指出程序要去实现什么“功能”的前提下,判断程序有没有“毛病”,是根据PLC的编程语法这个标准来作出判断的。譬如当一个程序被相应的编程软件上的《程序检查功能》扫描检查有无“错误”时,软件就是根据“编程语法”来判断的。程序中没有违背“编程语法”规矩的地方,软件检查的结果就会显示程序“无错”,即没有“毛病”。其二、在知道程序的“目标功能”的前提下,我们是以程序是否能够正确无误的实现“目标功能”来作判断标准的。程序能够正确无误的实现预定的“目标功能”,则该程序是没有错误的,即没有“毛病”,否则就是有“错误”(毛病)。
第109楼中,上面那个写了85步的程序的编程思路就是某些人说的“用M点来规划程序状态”,也就是一种把着眼点放在最低层面,挨个的把题目所要求挑选出的“ 1、2、5、6、8、9、10、11、12、13、14、15 ”这12个数据分别规划为“ M1、M2、M5、M6、M8、M9、M10、M11、M12、M13、M14、M15 ”,再对这12个M点的状态施行“或运算”,把“或运算”的结果用来控制“输出位Y000”的“ON/OFF”状态。
同样是实现上面一个程序的指定“目标功能”,我们把着眼点放在“整体”这样的高层次,高屋建瓴的概括出:当这12个数据分别出现时“K1X00”半字节状态的“特征”。并利用这些“特征”来写出非常简练的程序:
“LD X0 OR X3 OUT Y0 ”。
即使我们把着眼点同样是放在“低层面”,写出实现这个指定的“目标功能”的程序也不一定非得采用M来写程序不可!我们完全可以不用M也能写出实现这个指定的“目标功能”的程序!请大家明白:这样的结果比用M的那个程序节省24步!(原来需85步,不用M只需61步)同时这样的结果一点儿都不违背三菱编程语法的“规矩”不存在有“语法毛病”的说法!而且在实现指定的“目标功能”上,一点儿都不比那个用M写出来的程序差!既然这也完全能够正确无误的实现指定的“目标功能”,那就证明在这样的标准下,不用M的程序也不存在“功能毛病”!!
同样是把着眼点放在低层面,但完全不用M的程序如下图所示: