堅士人
心動就要行動
級別: 家園?
精華主題: 0
發(fā)帖數(shù)量: 454 個
工控威望: 561 點
下載積分: 18491 分
在線時間: 367(小時)
注冊時間: 2009-10-08
最后登錄: 2024-07-27
查看堅士人的 主題 / 回貼
樓主  發(fā)表于: 2011-12-24 16:05
現(xiàn)有10個搶答器,最先按按鈕的搶答器前燈亮。而且要知道10個搶答器的搶答先后順序。這程序怎么寫?????
zs0240202118
級別: *
精華主題: * 篇
發(fā)帖數(shù)量: * 個
工控威望: * 點
下載積分: * 分
在線時間: (小時)
注冊時間: *
最后登錄: *
查看zs0240202118的 主題 / 回貼
1樓  發(fā)表于: 2011-12-24 21:59
看看利用互鎖能否實現(xiàn)
堅士人
心動就要行動
級別: 家園?
精華主題: 0
發(fā)帖數(shù)量: 454 個
工控威望: 561 點
下載積分: 18491 分
在線時間: 367(小時)
注冊時間: 2009-10-08
最后登錄: 2024-07-27
查看堅士人的 主題 / 回貼
2樓  發(fā)表于: 2011-12-24 23:23
互鎖是能解決只一燈亮問題,但第2按下的,第3的,第4,5.。。。。搶答先后順序還是沒法。。
newchp
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 248 個
工控威望: 354 點
下載積分: 1036 分
在線時間: 84(小時)
注冊時間: 2008-10-29
最后登錄: 2024-06-28
查看newchp的 主題 / 回貼
3樓  發(fā)表于: 2011-12-25 19:38
用腳本語言可以實現(xiàn),遵守先進(jìn)先出原則就可以
newchp
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 248 個
工控威望: 354 點
下載積分: 1036 分
在線時間: 84(小時)
注冊時間: 2008-10-29
最后登錄: 2024-06-28
查看newchp的 主題 / 回貼
4樓  發(fā)表于: 2011-12-25 19:40
(* 呼叫編號暫存******************************************************************************)
hj[0]:=a11_hj; hj[1]:=a12_hj; hj[2]:=a13_hj; hj[3]:=a14_hj; hj[4]:=a15_hj;  hj[5]:=a16_hj;
hj[6]:=b11_hj; hj[7]:=b12_hj; hj[8]:=b13_hj; hj[9]:=b14_hj; hj[10]:=b15_hj; hj[11]:=b16_hj;
(*送料滿斗后,清料標(biāo)志     ******************************************************************)
qingliao[0]:=a11_qingliao_finished;qingliao[1]:=a12_qingliao_finished;qingliao[2]:=a13_qingliao_finished;
qingliao[3]:=a14_qingliao_finished;qingliao[4]:=a15_qingliao_finished;qingliao[5]:=a16_qingliao_finished;
qingliao[6]:=b11_qingliao_finished;qingliao[7]:=b12_qingliao_finished;qingliao[8]:=b13_qingliao_finished;
qingliao[9]:=b14_qingliao_finished;qingliao[10]:=b15_qingliao_finished;qingliao[11]:=b16_qingliao_finished;
qingliao[12]:=c11_qingliao_finished;qingliao[13]:=c12_qingliao_finished;qingliao[14]:=c13_qingliao_finished;
qingliao[15]:=c14_qingliao_finished;qingliao[16]:=c15_qingliao_finished;qingliao[17]:=a16_qingliao_finished;
(*移位處理***********************************************************************************)
(*addr[0]存儲的是最先響應(yīng)的料斗編號**********************************************************)
for k:=0 to 18 by 1 do
    if addr[k]=0 and addr[k+1]<>0 then
        addr[k]:=addr[k+1];
        addr[k+1]:=0;
    end_if;
end_for;
(********************************************************************************************)
(*先呼叫,先響應(yīng)。12個呼叫存儲滿后,禁止再儲存呼叫號碼。*************************************)
for i:=0 to 18 by 1 do
    if j=0 then
        if hj=true then
            if addr[0]=0 then
                addr[0]:=i+1;
                j:=1;
            elsif addr[1]=0 then
                addr[1]:=i+1;
                j:=1;
            elsif addr[2]=0 then
                addr[2]:=i+1;
                j:=1;
            elsif addr[3]=0 then
                addr[3]:=i+1;
                j:=1;
            elsif addr[4]=0 then
                addr[4]:=i+1;
                j:=1;
            elsif addr[5]=0 then
                addr[5]:=i+1;
                j:=1;
            elsif addr[6]=0 then
                addr[6]:=i+1;
                j:=1;
            elsif addr[7]=0 then
                addr[7]:=i+1;
                j:=1;
            elsif addr[8]=0 then
                addr[8]:=i+1;
                j:=1;
            elsif addr[9]=0 then
                addr[9]:=i+1;
                j:=1;
            elsif addr[10]=0 then
                addr[10]:=i+1;
                j:=1;
            elsif addr[11]=0 then
                addr[11]:=i+1;
                j:=1;
            elsif addr[12]=0 then
                addr[12]:=i+1;
                j:=1;
            elsif addr[13]=0 then
                addr[13]:=i+1;
                j:=1;
            elsif addr[14]=0 then
                addr[14]:=i+1;
                j:=1;
            elsif addr[15]=0 then
                addr[15]:=i+1;
                j:=1;
            elsif addr[16]=0 then
                addr[16]:=i+1;
                j:=1;
            elsif addr[17]=0 then
                addr[17]:=i+1;
                j:=1;
            end_if;
        end_if;
    end_if;
    (*呼叫的清除************************************************************************************)
    (*外部呼叫結(jié)束:即外部下位電眼處已經(jīng)有粉料,同時延時時間到達(dá)************************************)
        if not hj and qingliao=true then
            if addr[0]=i+1 then
                addr[0]:=0;
                j:=0;
            elsif addr[1]=i+1 then
                addr[1]:=0;
                j:=0;
            elsif addr[2]=i+1 then
                addr[2]:=0;
                j:=0;
            elsif addr[3]=i+1 then
                addr[3]:=0;
                j:=0;
            elsif addr[4]=i+1 then
                addr[4]:=0;
                j:=0;
            elsif addr[5]=i+1 then
                addr[5]:=0;
                j:=0;
            elsif addr[6]=i+1 then
                addr[6]:=0;
                j:=0;
            elsif addr[7]=i+1 then
                addr[7]:=0;
                j:=0;
            elsif addr[8]=i+1 then
                addr[8]:=0;
                j:=0;
            elsif addr[9]=i+1 then
                addr[9]:=0;
                j:=0;
            elsif addr[10]=i+1 then
                addr[10]:=0;
                j:=0;
            elsif addr[11]=i+1 then
                addr[11]:=0;
                j:=0;
            end_if;
        end_if;
end_for;
(*呼叫的影應(yīng)****************************************************************************************)
case addr[0] of
    1:   a11_yd:=true;  
    2:   a12_yd:=true;
    3:   a13_yd:=true;    
    4:   a14_yd:=true;
    5:   a15_yd:=true;  
    6:   a16_yd:=true;  
    7:   b11_yd:=true;
    8:   b12_yd:=true;
    9:   b13_yd:=true;
   10:   b14_yd:=true;
   11:   b15_yd:=true;
   12:   b16_yd:=true;
   13:   c11_yd:=true;
   14:   c12_yd:=true;
   15:   c13_yd:=true;
   16:   c14_yd:=true;
   17:   c15_yd:=true;
   18:   c16_yd:=true;
    else
         a11_yd:=false; a12_yd:=false; a13_yd:=false; a14_yd:=false; a15_yd:=false; a16_yd:=false;
         b11_yd:=false; b12_yd:=false; b13_yd:=false; b14_yd:=false; b15_yd:=false; b16_yd:=false;
         c11_yd:=false; c12_yd:=false; c13_yd:=false; c14_yd:=false; c15_yd:=false; c16_yd:=false;end_case;
addrr0:=addr[0];
堅士人
心動就要行動
級別: 家園常客
精華主題: 0
發(fā)帖數(shù)量: 454 個
工控威望: 561 點
下載積分: 18491 分
在線時間: 367(小時)
注冊時間: 2009-10-08
最后登錄: 2024-07-27
查看堅士人的 主題 / 回貼
5樓  發(fā)表于: 2011-12-25 23:00
謝謝3樓,腳本語言不太懂,能否用梯形圖等等。
wananjushi
萬安居士
級別: 網(wǎng)絡(luò)英雄
精華主題: 0
發(fā)帖數(shù)量: 859 個
工控威望: 5759 點
下載積分: 11561 分
在線時間: 216(小時)
注冊時間: 2011-12-24
最后登錄: 2018-07-22
查看wananjushi的 主題 / 回貼
6樓  發(fā)表于: 2012-01-30 08:10
用梯形圖即可
wananjushi
hongming
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 157 個
工控威望: 270 點
下載積分: 951 分
在線時間: 42(小時)
注冊時間: 2010-11-10
最后登錄: 2024-07-20
查看hongming的 主題 / 回貼
7樓  發(fā)表于: 2012-02-04 18:46
可是試試用位置偏移的方式來存儲數(shù)據(jù)