问题的描述:
1.按下起动按钮x0,电机每隔1s起动一台。
2.当按下停止按钮x1后,电机就停在运作那个位置了。
问:一共有几个电机?停在那个位置,是指电机全部停止运行,还是指未起动的电机暂不起动了?
另外,当电机较大时,隔1s起动一台,时间间隔仍显小;如果仅是练习,可将电机改为指示灯。
3.再按x0,电机又按1s顺序起动了。
4.当起动到最后一个电机时候,按停止按钮x1,电机按1s顺序返回。
问:是先开的先停,还是后开的先停?称返回,虽可理解成后开的先停,但仍以准确描述为宜。
5.按下停止按钮x1后,再按下复位按钮x2,又可以由这个位置依次返回。
已经按下X1,电机正在顺序返回,而按下X2,是仍然继续依次停止呢,还是又依次起动?按说,按下复位后应当停止。
如果是中途按下了X1(第2条),按下复位按钮则如何?
建议:先明确编程要求。
关于程序:对于停止按钮,程序中似把它作为了复位的条件;但一般情况下,停止按钮是可以单独停止设备运行或相应动作的,否则就不能叫“停止”。
或者,程序中,实现的是“问题的描述”中的第5点,但第4点呢?第4点和第5点,是否有相抵触之处呢?(看程序后,才理解第5点所表达的意思。)
工作一个循环后,再接通X20似无效。
另外,停止按钮优先(如果X21是停止按钮信号的话),但程序中在X20、X22接通时,X21信号将无效;虽之前在X20、M0回路中,串了X21的常闭点,感觉上仍有点不舒服。
当然,作者对这个程序,还是动了脑筋、花了功夫的,值得肯定;而且,对于一个学生,能有这种理解,已经相当不错。
如果我有理解错误的地方,可指出。