用PLC如何設計一個四路搶答器,程式如何寫?
以omron plc為例,首先是列io表,
然後開始寫搶答程式,用四個keep指令,因為復位優先,所以如果有一個搶到了,其他按鈕訊號無效。
最後是控制對應的提示燈亮的程式。
搶答器在知識競賽是常見的,也都離不開搶答器。題目說的設計個四路搶答器,如何寫程式。
四路搶答器的程式如下圖所示
程式分析過程;當四組答題人員的其中一個按下搶答按鈕,它對應的輔助繼電器就接通。假如按SB1時,R1接通,則Y0 Y2 Y3導通,蜂鳴器發出聲音,數碼顯示器顯示“1”。按SB2而R2接通,則Y0 Y1 Y2 Y3 Y5 Y7導通,蜂鳴器發出聲音,數碼顯示器顯示“2”。按SB3而R3接通,則Y0 Y1 Y2 Y3 Y4 Y7導通,蜂鳴器發出聲音,數碼顯示器顯示“3”。按SB4而R4接通,則Y0 Y2 Y3 Y6 Y7導通,數碼顯示器顯示“4”。
上述的R1~R4是輔助繼電器,它們之間關係是互鎖,只要其中一個接通,其餘的三個則斷開。只有透過復位按鈕SB5才能解鎖,使蜂鳴器及數碼顯示器都復位。復位同時,輔助繼電器R5接通,定時器T0就會計時,期間指示燈會一直亮著。回答超時則T0動作,使Y8線圈失電,指示燈熄滅。
IF 搶答開始 THEN
CASE 搶答暫存器 of
1:
1號回答輸出:=TRUE;//搶答暫存器bit0為x0,bit1為x1,如此類推。
搶答開始:=FALSE;
2:
2號回答輸出:=TRUE;
搶答開始:=FALSE;
4:
3號回答輸出:=TRUE;
搶答開始:=FALSE;
8:
4號回答輸出:=TRUE;
搶答開始:=FALSE;
else
無人回答:=TRUE;
end_case;
end_if;
IF 停止作答 then
搶答開始:=FALSE;
end_if;
我是氣球哥希望能幫到你。