基于海為PLC的8路競賽搶答器系統(tǒng)
一、海為PLC——實現(xiàn)8路競賽搶答器:
完全用程序判斷各個選手按鍵搶答的先后,從實現(xiàn)上沒有什么問題,但由于PLC是循環(huán)掃描運行,它會一次性讀入X0-X7的所有輸入狀態(tài),然后再執(zhí)行程序,最后將結果輸出。如果在一個掃描周期有一個以上選手同時按鍵搶答即有多個X輸入為ON,這時必然是依靠人為的程序去評判先后順序,這會產(chǎn)生本質(zhì)上的不公平。如何避免這種情況的發(fā)生,最好的方法是使用“開關量輸入上升沿捕捉”功能,以硬件中斷產(chǎn)生的先后來判斷選手按鍵的先后。
完全用程序判斷各個選手按鍵搶答的先后,從實現(xiàn)上沒有什么問題,但由于PLC是循環(huán)掃描運行,它會一次性讀入X0-X7的所有輸入狀態(tài),然后再執(zhí)行程序,最后將結果輸出。如果在一個掃描周期有一個以上選手同時按鍵搶答即有多個X輸入為ON,這時必然是依靠人為的程序去評判先后順序,這會產(chǎn)生本質(zhì)上的不公平。如何避免這種情況的發(fā)生,最好的方法是使用“開關量輸入上升沿捕捉”功能,以硬件中斷產(chǎn)生的先后來判斷選手按鍵的先后。
假如對X輸入和Y輸出定義如下:
X0:選手1搶答按鍵
X1:選手2搶答按鍵
X2:選手3搶答按鍵
X3:選手4搶答按鍵
X4:選手5搶答按鍵
X5:選手6搶答按鍵
X6:選手7搶答按鍵
X7:選手8搶答按鍵
Y0:選手1搶答成功
Y1:選手2搶答成功
Y2:選手3搶答成功
Y3:選手4搶答成功
Y4:選手5搶答成功
Y5:選手6搶答成功
Y6:選手7搶答成功
Y7:選手8搶答成功
在“PLC硬件配置”窗口選擇X0-X7的“上升沿捕捉”,打開X0-X7的中斷捕捉功能。如下圖:
二、主程序——實現(xiàn)中斷綁定和自動復位:
評論