于偉業
級別: 正式會員
|
我現在用三菱FX3U編寫一段程序,我需要讓一個動作重復不定次數,次數是通過觸摸屏設定,我在屏幕上輸入多少,就讓這個動作進行多少次,我是需要用STL指令和時間指令結合進行嗎,希望各位大佬提供下思路,以及做法,還有就是想問一下STL指令的用法 |
---|---|
|
夢雨天涯
微信hui530527 &
級別: 網絡英雄
|
你是一個氣缸多次動作,還是很多個氣缸組合的就是ABCD氣缸一個動作?如果是一個氣缸動作,取前后限,到達前限就+1,然后回到原位,如果大于設定次數就停止動作,下次在動作就清零 |
|
---|---|---|
|
于偉業
級別: 正式會員
|
一個氣缸動作,讓這個動作重復多次,那我該用什么指令呢,謝謝您 |
---|---|
|
ymmfa
不想大江大河,不想浪起潮落,只愿一灣小湖,靜待歲月安好。
級別: 管理員
|
1, FOR NEXT 2, 步進 最后一個S用來判斷次數 |
|
---|---|---|
|
anlyl2014
大吉大利
級別: 網絡英雄
|
給你一個最原始的例子 D210就是在屏上設的次數 [ 此帖被anlyl2014在2023-08-09 18:30重新編輯 ] |
|
---|---|---|
|
于偉業
級別: 正式會員
|
圖片:
我嘗試了您的方法,但是存在一些問題,關鍵是我的次數寫不進去,還有就是關于啟動的問題,我的啟動也是觸摸屏上的按鍵,地址M202,如圖 |
---|---|
|
于偉業
級別: 正式會員
|
沒用過這樣的指令,希望再仔細解釋一下,謝謝 |
---|---|
|
sunzengli
級別: 論壇先鋒
|
IF M2 THEN OUT_T(M1,TC1,30);(*3s開啟Y1*) IF T1 =30 THEN M1 := 0; Y1 := 1; END_IF; OUT_T(Y1,TC2,30);(*3s關閉Y1*) IF T2 = 30 THEN M1 := 1; Y1 := 0; END_IF; END_IF; IF LDP( 1, M1 ) THEN number := number + 1; END_IF; IF number >= D100 THEN(*D100設置循環次數*) M2 := 0; M1 := 0; number := 0; T2 := 0; T1 := 0; END_IF; [ 此帖被sunzengli在2023-08-10 17:03重新編輯 ] |
---|---|
|
sunzengli
級別: 論壇先鋒
|
M1,M2 是啟動循環信號 感覺有些笨拙,暫時想不到更好的算法,請大家指正 [ 此帖被sunzengli在2023-08-10 16:52重新編輯 ] |
---|---|
|
anlyl2014
大吉大利
級別: 網絡英雄
|
[quote]引用第5樓于偉業于2023-08-10 10:10發表的 : 我嘗試了您的方法,但是存在一些問題,關鍵是我的次數寫不進去,還有就是關于啟動的問題,我的啟動也是觸摸屏上的按鍵,地址M202,如圖 連抄都抄錯!看看我的跟你的有什么不同? [attachment=283730] [ 此帖被anlyl2014在2023-08-10 18:39重新編輯 ] |
|
---|---|---|
|
anlyl2014
大吉大利
級別: 網絡英雄
|
用步進指令,例子,實際上,要實現這個功能方法多的是,記得10幾年前某論壇討論過; 氣缸動作STL.rar (159 K) 下载次数:86 |
|
---|---|---|
|