bogegongkong
什么是生活,生活就是活著。
級別: 略有小成
|
題目很簡單:任意時間段內,輸入X1,3秒內ON三次,輸出Y1 ON。 注意是任意時間段內。 求最簡短的編程。 偶然在中國工控網看到的。覺得有點意思,轉發過來,看看我們工控家園兄弟的高招。 我也搞了一個,23步搞定,有討論的再發。 看來大家對這個題目還有點興趣。42L的兄弟也搞出來了。測試是OK的。 很多認為很簡單的,就是沒理解“任意時間段內”這個意思。自己將按X1時間分成3秒一段,3秒一段,按順序判斷,這肯定是不對的。 將我搞出的發上來,大家看下是否有問題。我測試是OK的。PLC 用FX3U。 [attachment=146921] [attachment=146922] [attachment=146923] [attachment=146924] uthman程序最簡短明了。很有啟發性。uthman是高手。大家可以看下他的程序。 [ 此帖被bogegongkong在2016-08-11 13:24重新編輯 ] |
|
---|---|---|
本帖最近評分記錄:
|
wzy139076378
年輕不是你玩的理由,而是你奮斗的資本。
級別: 網絡英雄
|
15步搞定。 |
|
---|---|---|
|
bogegongkong
什么是生活,生活就是活著。
級別: 略有小成
|
1L的兄弟,例如:1S,X1 ON;2.5S,X1,ON;3.5S,X1,ON;4.5S,X1,ON。這是,Y1是否能ON?要求Y1,ON的。2.5S至4.5S,是ON了3次的。注意任意時間內。 不好意思,我發現23步我的也沒法搞定。 |
|
---|---|---|
本帖最近評分記錄:
|
bogegongkong
什么是生活,生活就是活著。
級別: 略有小成
|
1L肯定不行的。 看似簡單,其實還真不那么簡單。 看來大家都很忙,都沒興趣。 |
|
---|---|---|
|
flyfeky
bilibili 工控貴族
級別: 論壇先鋒
|
支持你一下, 第三次X1 ON的時候, 如果時間在3秒之內, Y1一直ON 是這個意思嗎. ----------------------------- 這個程序我仔細看了一下, 每次按下X0, 都要被計數計時, 如果時間超過3秒, 這個計數被拋棄. 如果計數值大于等于3 Y0導通. 程序容量和按下的次數有關. 我不再發了. [ 此帖被flyfeky在2016-04-23 12:49重新編輯 ] |
|
---|---|---|
|
bogegongkong
什么是生活,生活就是活著。
級別: 略有小成
|
不是,是任意時間內,X1在3秒內ON了3次,就輸出Y1。 看似簡單,其實不是太簡單。 |
|
---|---|---|
|
bogegongkong
什么是生活,生活就是活著。
級別: 略有小成
|
應該是在3秒內X1 ON了3次,輸出Y1,但Y1不會一直ON。Y1是否ON取決于后面X1在3秒內有無3次輸入這個條件判斷。就像有一個3秒的時間計量尺子,一直在對后續的X1輸入做判斷。 |
|
---|---|---|
|
lvpretend
級別: 論壇先鋒
|
有實際案例的,煤礦絞車,有限時間內,3次信號為提升允許,2次信號為下降允許。在接受到提升/下降允許信號后有限時間內,必須收到速度手柄的方向信號,否則重新屏蔽允許信號。并且,如果收到的手柄方向信號與允許信號不一致,立即屏蔽允許信號。目的是防止誤操作。 |
---|---|
|
bogegongkong
什么是生活,生活就是活著。
級別: 略有小成
|
7L說的案例,和這個還是有點不同。 實際案例是按條件順序來,而這個X1輸入完全是隨機的。 |
|
---|---|---|
|
bogegongkong
什么是生活,生活就是活著。
級別: 略有小成
|
對于9L,我都不用看都知道肯定不行。好好看下題目。 想想你的程序能否實現如下的情況: 例如:1S,X1 ON;2.5S,X1,ON;3.5S,X1,ON;4.5S,X1,ON。這是,Y1是否能ON?要求Y1,ON的。2.5S至4.5S時間內,X1是ON了3次的。注意任意時間內。 |
|
---|---|---|
|
langui
級別: 論壇先鋒
|
確實是一個簡單又不簡單的程序,只要思路對了,想起來也比較簡單。也就是不管任何時候每按一次按鈕,在之后的3秒內只要檢測3個上升沿就行了。這里沒有第一次第二次第三次,只有按一次后是否有三個脈沖。 |
---|---|
|
flyfeky
bilibili 工控貴族
級別: 論壇先鋒
|
重新想了一下, 只寫個大致思路吧. X0導通的次數D1000加1, 把每次X0導通的系統時刻依次寫入D0V0開始的變址寄存器,每按一次V0+10。. 計算系統時間和記錄在D3Z0變址的差即為定時器值。 定時值到D1000減1,變址z0加10。 D1000大于等于3 Y0導通。 我寫的這個最多3秒按100次。 程序寫的太多, 不想貼了。 樓主有什么好的思路嗎。 [ 此帖被flyfeky在2016-04-23 15:26重新編輯 ] |
|
---|---|---|
本帖最近評分記錄:
|