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重新編輯 ] |
|
---|---|---|
本帖最近評分記錄:
|
flyfeky
bilibili 工控貴族
級別: 論壇先鋒
![]() |
支持你一下, 第三次X1 ON的時候, 如果時間在3秒之內, Y1一直ON 是這個意思嗎. ----------------------------- 這個程序我仔細看了一下, 每次按下X0, 都要被計數計時, 如果時間超過3秒, 這個計數被拋棄. 如果計數值大于等于3 Y0導通. 程序容量和按下的次數有關. 我不再發了. [ 此帖被flyfeky在2016-04-23 12:49重新編輯 ] |
|
---|---|---|
|
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重新編輯 ] |
|
---|---|---|
本帖最近評分記錄:
|
flyfeky
bilibili 工控貴族
級別: 論壇先鋒
![]() |
一會我測度下一步,貼上來, 完備的大約寫了100步. |
|
---|---|---|
|
flyfeky
bilibili 工控貴族
級別: 論壇先鋒
![]() |
連續的時間。 比如前3次都在3秒之內,Y0導通。 時間過了3秒,斷了。第四個X0來了后, 又在3秒之內了,Y0導通。 |
|
---|---|---|
|
flyfeky
bilibili 工控貴族
級別: 論壇先鋒
![]() |
傳上來看看. 樓主留言:搞個時間坐標,這樣是一種思路。但程序有點問題,你將X0換成M0,自己手動模擬測試下。 |
|
---|---|---|
|
flyfeky
bilibili 工控貴族
級別: 論壇先鋒
![]() |
[attachment=146918] [attachment=146919] |
|
---|---|---|
|
flyfeky
bilibili 工控貴族
級別: 論壇先鋒
![]() |
[attachment=146945] 樓主留言:這個和48L的思路是一樣的。對這個程序有一個使用限制,就是要求任意3秒時間段內,不能按X0超過3次,超過3次,就會出現判斷不準的問題。 |
|
---|---|---|
本帖最近評分記錄:
|
flyfeky
bilibili 工控貴族
級別: 論壇先鋒
![]() |
LZ 3個定時器任何時間最多容納3個接通, 多了就不行了. 10個8個的接通,這個程序簡單都好做. 我寫的那個100個的, 可惜取的系統時間精度有限. 按你的那個取系統100毫秒的, 你那個容納幾個接通, 我再想想還能寫出其它的嗎 [ 此帖被flyfeky在2016-04-25 19:40重新編輯 ] |
|
---|---|---|
|