一、海為PLC——實(shí)現(xiàn)8路搶答器" title="搶答器">搶答器" title="競(jìng)賽搶答器" title="競(jìng)賽搶答器">競(jìng)賽搶答器">競(jìng)賽搶答器:
?
我們?cè)陔娨暽辖?jīng)??吹礁鞣N知識(shí)或智力競(jìng)賽的節(jié)目,,在競(jìng)賽過程中選手們需要進(jìn)行搶答各種問題,用PLC實(shí)現(xiàn)“搶答器”的功能具有價(jià)格便宜/設(shè)置靈活等優(yōu)勢(shì),。
?
完全用程序判斷各個(gè)選手按鍵搶答的先后,,從實(shí)現(xiàn)上沒有什么問題,但由于PLC是循環(huán)掃描運(yùn)行,,它會(huì)一次性讀入X0-X7的所有輸入狀態(tài),,然后再執(zhí)行程序,,最后將結(jié)果輸出。如果在一個(gè)掃描周期有一個(gè)以上選手同時(shí)按鍵搶答即有多個(gè)X輸入為ON,,這時(shí)必然是依靠人為的程序去評(píng)判先后順序,,這會(huì)產(chǎn)生本質(zhì)上的不公平,。
?
如何避免這種情況的發(fā)生,最好的方法是使用“開關(guān)量" title="開關(guān)量">開關(guān)量輸入上升沿" title="上升沿">上升沿捕捉”功能,,以硬件中斷產(chǎn)生的先后來判斷選手按鍵的先后,。
?
海為PLC具有X0-X7輸入“上升沿捕捉”和“下降沿捕捉”功能,,提供多達(dá)68個(gè)中斷功能,很好滿足這種需求,。
?
假如對(duì)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的中斷捕捉功能。如下圖:
?
? ? 二,、主程序——實(shí)現(xiàn)中斷綁定" title="綁定">綁定和自動(dòng)復(fù)位: ? 三,、8個(gè)中斷子程序——實(shí)現(xiàn)搶答鎖定和輸出: