qinshengyue
是我,別開槍!
級別: VIP會員
精華主題: 0
發(fā)帖數(shù)量: 808 個
工控威望: 1216 點
下載積分: 31304 分
在線時間: 1234(小時)
注冊時間: 2009-04-09
最后登錄: 2023-05-23
查看qinshengyue的 主題 / 回貼
樓主  發(fā)表于: 2009-06-22 07:56
原帖:
求燈的流程控制程序

在FX2N上的Y0-Y23上接有20個信號燈,X1上接有一個開關(guān),控制要求如下:
在程序初始化后
當(dāng)X1為ON時信號燈依次點亮至全亮(從1#開始至20#時間間隙為2S),
當(dāng)X1為OFF時,信號燈依次由全亮至全滅.(從1#開始至20#時間間隙為2S),
在燈的點亮過程中(也就是X1為ON,時)轉(zhuǎn)入在燈的滅過程中(也就是X1為OFF時)信號燈也同樣按程序工作,
說明一下:例當(dāng)X1為ON時,燈依次點亮至10#燈(時間間隙為2S);這時將X1設(shè)為OFF,燈依次從1#滅至5#(時間間隙為2S);這時將X1設(shè)為ON燈依次從11#亮至20#再至5#(時間間隙為2S);不知我說清沒有.
總之在X1的信號變換后,,燈亮滅遵循先亮先滅的原則,每個燈的點亮的時間平衡并循環(huán).


為了讓控制要求更明確,在此我做一點補充:三菱論壇的那位朋友的原帖中對控制要求舉了一個例子,如上紅字部分所示,更明確的講就是X1可以在循環(huán)過程的任意時刻ON,也可在循環(huán)過程的任意時刻OFF,比方說初始上電,X1若為ON,燈開始從第1#燈亮起,此后每隔2s依次點亮其他的燈,若亮到第m#燈后,且在第(m+1)#燈還未亮?xí)r,X1為OFF,此時啟動滅燈程序,從第最先亮的第1#燈開始滅,然后依次每間隔2s滅一只,若滅到第n#燈,且在第(n+1)#燈還未滅時,x1又轉(zhuǎn)為ON,再次啟動亮燈程序,從哪里開始亮呢?從第(m+1)#燈開始亮,然后繼續(xù),當(dāng)X1又為OFF時,再次啟動滅燈程序,從哪里開始滅呢?從第(n+1)#燈開始滅。。。。。還有一點要注意,就是x1在狀態(tài)發(fā)生變化后,總是立即點亮或熄滅一只燈,然后才遵循每隔2s的次序
可以想象在一張圓桌上均勻地設(shè)置20只燈,受一開關(guān)X1任意控制,每當(dāng)x1為ON時,開始從上一輪亮燈斷點處啟動亮燈程序,在x1沒有OFF之前,系統(tǒng)有一種點亮所有燈的企圖;每當(dāng)x1為OFF時,從上一輪滅燈斷點處開始啟動滅燈程序,在x1沒有ON之前,系統(tǒng)有一種熄滅所有燈的企圖。而且系統(tǒng)可以力求讓每只燈點亮或熄滅在時間上保持一個大致的平衡,不至于經(jīng)常只亮哪幾只。
以上為本人的編程思路,歡迎大家觀看!
同時請網(wǎng)站管理YMMFA和論壇斑竹sjm213以及求助帖的那位朋友指正!
程序在下,有點稍長,不過指令簡單易懂。
[ 此帖被qinshengyue在2009-06-24 07:37重新編輯 ]
附件: 燈循環(huán)控制程序(調(diào)試圓滿成功).rar (11 K) 下載次數(shù):236
網(wǎng)站提示: 請不要用迅雷下載附件,容易出錯
本帖最近評分記錄:
  • 下載積分:+5(sjm213) 支持原創(chuàng),加分獎勵
    sjm213
    有小知識,無大學(xué)問。
    級別: 論壇版主

    精華主題: 7 篇
    發(fā)帖數(shù)量: 5196 個
    工控威望: 7419 點
    下載積分: 158680 分
    在線時間: 3155(小時)
    注冊時間: 2007-11-21
    最后登錄: 2024-11-15
    查看sjm213的 主題 / 回貼
    1樓  發(fā)表于: 2009-06-22 09:28
    引用
    還有一點要注意,就是x1在狀態(tài)發(fā)生變化后,總是立即點亮或熄滅一只燈,然后才遵循每隔2s的次序


    還有一點要注意,就是在Y23這個燈點亮后,若之前Y0為OFF則其立即點亮,然后才遵循每隔2S的次序。

    這些都是可以根據(jù)控制思路來改動的,例如將Y0的條件改為與其他Y一致;并將Y導(dǎo)通條件中的X1上升沿去掉。

    原帖地址:
    http://24x7lending.com/read-gktid-39416.html
    qinshengyue
    是我,別開槍!
    級別: VIP會員
    精華主題: 0
    發(fā)帖數(shù)量: 808 個
    工控威望: 1216 點
    下載積分: 31304 分
    在線時間: 1234(小時)
    注冊時間: 2009-04-09
    最后登錄: 2023-05-23
    查看qinshengyue的 主題 / 回貼
    2樓  發(fā)表于: 2009-06-22 10:36
    哦,版主是這樣的,我后來為什么要加這樣的控制呢?
    因為原求助帖中那位朋友說:X1是若實際接的溫控儀的接點,Y0-Y23是接的20個接觸器,每個接觸器控制一路加熱器當(dāng)溫度低于60度的時候升溫,高于100度時降溫,用20路加熱器控制,要求加熱器先投先切,且要求加熱器的使用次數(shù)基本一致。
    我想若是這樣的話,那就必須考慮人身和設(shè)備安全性了,因為是加熱,一旦超溫,x1斷開,此時必須立即切除符合條件的那一臺,保證溫度不再繼續(xù)升高,然后依時間次序切除。同樣溫度降至下限時,我們必須要立即投入。
    不知道我說的對不對?
    [ 此帖被qinshengyue在2009-06-22 11:48重新編輯 ]
    xinhaichehan
    級別: 家園?
    精華主題: 0
    發(fā)帖數(shù)量: 275 個
    工控威望: 731 點
    下載積分: 3612 分
    在線時間: 355(小時)
    注冊時間: 2008-11-26
    最后登錄: 2024-09-19
    查看xinhaichehan的 主題 / 回貼
    3樓  發(fā)表于: 2009-06-22 11:08
    看看,學(xué)習(xí)學(xué)習(xí)!
    sjm213
    有小知識,無大學(xué)問。
    級別: 論壇版主

    精華主題: 7 篇
    發(fā)帖數(shù)量: 5196 個
    工控威望: 7419 點
    下載積分: 158680 分
    在線時間: 3155(小時)
    注冊時間: 2007-11-21
    最后登錄: 2024-11-15
    查看sjm213的 主題 / 回貼
    4樓  發(fā)表于: 2009-06-22 13:24
    2樓:
    其實無關(guān)對錯,因為這只是對不同的控制思路做出的控制程序。
    按照您的想法您的程序完全符合要求。
    而且就算是實際應(yīng)用中需要按照我所說的思路來做的話,程序也只是小做改動而已。
    hanqin
    級別: 論壇先鋒
    精華主題: 0
    發(fā)帖數(shù)量: 1237 個
    工控威望: 1226 點
    下載積分: 2922 分
    在線時間: 925(小時)
    注冊時間: 2009-01-09
    最后登錄: 2023-10-27
    查看hanqin的 主題 / 回貼
    5樓  發(fā)表于: 2009-06-22 13:51
    樓主的思維很敏捷!佩服!
    樓主留言:
    對于此控制要求,三菱工控論壇有別我更為簡單的程序?qū)崿F(xiàn)方法,地址如下
    http://24x7lending.com/read-gktid-39416.html
    jamspider
    級別: 論壇先鋒
    精華主題: 0
    發(fā)帖數(shù)量: 1027 個
    工控威望: 1284 點
    下載積分: 12232 分
    在線時間: 102(小時)
    注冊時間: 2007-09-21
    最后登錄: 2024-10-24
    查看jamspider的 主題 / 回貼
    6樓  發(fā)表于: 2009-06-22 20:31
    樓主的思維很敏捷!佩服!
    gandongx
    級別: 略有小成
    精華主題: 0
    發(fā)帖數(shù)量: 35 個
    工控威望: 203 點
    下載積分: 565 分
    在線時間: 12(小時)
    注冊時間: 2009-03-01
    最后登錄: 2013-09-09
    查看gandongx的 主題 / 回貼
    7樓  發(fā)表于: 2009-07-19 01:31
    樓主的指令是相當(dāng)簡單,但是Y023和Y0好像是同時動作的吧,也就是同時ON,也同時OFF。