91黄动漫 I 欧美 日韩 国产 成人 在线 I a级成人毛片 I 农村黄色片 I 男生捅女生的肌肌 I 精品99一区二区三区 I 妃光莉av I 日日夜夜操操 I 性中国古装videossex I 久久不卡av I 美女高潮动态图 I 极品美女开粉嫩精品 I 牛牛精品一区二区 I 91精品福利视频 I 成人刺激视频 I 91国内精品视频 I 中国一级特黄毛片大片 I 校长狠狠挺进校花体内小说 I 欧美激情黄色片 I 欧美久久久一区 I 爱豆国产剧免费观看大全剧苏畅 I 麻豆国产人妻欲求不满谁演的 I 亚洲一区二区在线免费观看视频 I 国产超碰av人人做人人爽 I 精品国产第一国产综合精品 I 久久免费看av I 欧美一区二区三区白人 I 国产精品夫妻激情 I 校花被肉干高h潮不断 I 欧美最猛黑人xxxx黑人表情 I 国产欧美日韩一区二区搜索 I 极品女神露脸呻吟啪啪 I 人人天天久久 I 亚洲动漫在线 I 日本91福利区 I 五月天 桃色 开心 I av在线免费观看国产 I 男人添女人的免费视频 I 夜夜穞天天穞狠狠穞

jony7788
級別: 工控俠客
精華主題: 0
發帖數量: 51 個
工控威望: 2005 點
下載積分: 4808 分
在線時間: 256(小時)
注冊時間: 2023-02-25
最后登錄: 2025-12-07
查看jony7788的 主題 / 回貼
樓主  發表于: 2024-12-22 20:41
圖片:
一圈360度,分為12個段點,每個段點30度,每個段點都有一個開關。
當開關打開的區間,步進電機以正常速度旋轉,并在段點停留0.5秒,沒有打開段點的區間,以快于正常速度進行旋轉,且不做停留。

以下例,1、2,5、6,9,10這幾個區間是正常速度,其它區間是快速通過。
償了下幾種方式,效果都不好,大多都是快速時跑過了頭,把正常區間都越過了。
PLC是三菱FX3U

希望老師們能指點下思路,感謝。

nightblueblu
道阻且長,窮且益堅。
級別: 論壇先鋒
精華主題: 0
發帖數量: 1050 個
工控威望: 1871 點
下載積分: 309 分
在線時間: 1165(小時)
注冊時間: 2017-02-09
最后登錄: 2025-10-14
查看nightblueblu的 主題 / 回貼
1樓  發表于: 2024-12-26 17:46
寫了一個,沒有測試,實現方式和15樓基本一致,上代碼
----------------------------------------------------------------------------分割線-------------------------------------------------------------
FUNCTION_BLOCK FB_啟動定位
(*一圈360度,分為12個段點,每個段點30度,每個段點都有一個開關,每個開關可以任意設置ON和OFF狀態。
  當開關打開的區間,步進電機以正常速度旋轉,并在段點停留0.5秒,
  沒有打開段點的區間,以快于正常速度進行旋轉,且不做停留*)
VAR_INPUT      
    Sen1  :BOOL;//位置狀態設置1
    Sen2  :BOOL;
    Sen3  :BOOL;
    Sen4  :BOOL;
    Sen5  :BOOL;
    Sen6  :BOOL;
    Sen7  :BOOL;
    Sen8  :BOOL;
    Sen9  :BOOL;
    Sen10:BOOL;
    Sen11:BOOL;
    Sen12:BOOL;//位置狀態設置12

    Start          :BOOL;//啟動
        Stop          :BOOL;//停止
    Auto          :BOOL;//手自,TRUE:自動;FALSE:手動
    Done         :BOOL;//定位完成信號
    Now_Ang  :REAL;//當前角度
    Tim            :REAL;//TRUE位停頓時間,單位:s
END_VAR
VAR_OUTPUT
    rRun_F    :REAL;//快速運行距離(FALSE段角度)
    bRun_F   :BOOL;//快速定位啟動(FALSE段)
    rRun_T    :REAL;//正常速度運行距離(TRUE段角度)
    bRun_T   :BOOL;//正常速定位啟動(TRUE段)        
END_VAR
VAR    
        Pto                  :BOOL;//定位啟動信號
    nums:INT        :=12;//位置個數
    Now_posi        :INT;//轉盤當前位置
    StatsAry          :ARRAY[1..12]OF BOOL;//各位置檢測傳感器狀態存儲數組
    rtri                   :BOOL;//位置計算觸發
    i,j                     :INT;//循環變量
    False_Gap      :INT;//距離下一個FALSE信號需要轉動的位置個數
    num                     :INT;//定位中的段記錄
    rstr,rsto,rdon    :R_TRIG;//啟動,停止,轉動一個角度的觸發沿
    rton                  :TON;//間隔定時
END_VAR
----------------------------------------------------------------------------分割線-------------------------------------------------------------
(*==============================參數初始化==============================*)
StatsAry[1]:=Sen1;StatsAry[2]:=Sen2;StatsAry[3]:=Sen3;StatsAry[4]:=Sen4;StatsAry[5]:=Sen5;StatsAry[6]:=Sen6;
StatsAry[7]:=Sen7;StatsAry[8]:=Sen8;StatsAry[9]:=Sen9;StatsAry[10]:=Sen10;StatsAry[11]:=Sen11;StatsAry[12]:=Sen12;

rRun_T:=(2*3.14159265)/nums;
Now_posi:=REAL_TO_INT((Now_Ang*nums)/(2*3.14159265))+1;
(*==============================觸發沿==============================*)
rstr(CLK:=Start);//啟動沿
rsto(CLK:=Stop);//停止沿
rdon(CLK:=Done);//定位完成沿
rton(IN:=num=2,PT:=REAL_TO_TIME(Tim*1000.0));//間隔定時

IF rsto.Q OR (rton.Q AND NOT Auto) THEN//停止或者在手動狀態下單次定位結束
    bRun_F:=FALSE;
    bRun_T:=FALSE;
    num:=0;
END_IF
IF rdon.Q THEN//對定位次數進行計數
    num:=num+1;
END_IF
(*==============================尋找下一次轉動的TRUE信號的位置==============================*)
IF rstr.Q OR (rton.Q AND Auto)THEN//啟動計算
    num:=0;
    rtri:=TRUE;
END_IF
IF rtri THEN
    IF Now_posi<>nums THEN//TRUE位置在當前位置前方
        FOR i:=Now_posi+1 TO nums BY 1 DO
            IF StatsAry THEN
                False_Gap:=i-Now_posi-1;//TRUE位置在當前位置前方
                rRun_F:=rRun_T*False_Gap;    
                Pto:=TRUE;
                rtri:=FALSE;
                EXIT;
            END_IF
        END_FOR
    END_IF
    IF Now_posi<>1 THEN//TRUE位置在當前位置后方
        FOR j:=1 TO Now_posi BY 1 DO
            IF StatsAry[j] THEN
                False_Gap:=nums-j+Now_posi-1;//TRUE位置在當前位置后方
                rRun_F:=rRun_T*False_Gap;
                Pto:=TRUE;
                rtri:=FALSE;
                EXIT;
            END_IF
        END_FOR
    END_IF
END_IF

(*==============================執行邏輯==============================*)
IF Pto THEN//啟動定位,或自動狀態下定時器達到計時
    bRun_T:=FALSE;
    bRun_F:=TRUE;
END_IF
IF num=1 THEN//完成FALSE段的定位,進行TRUE段定位
    bRun_F:=FALSE;
    bRun_T:=TRUE;
END_IF
本帖最近評分記錄:
  • 下載積分:+5(jony7788) 熱心助人!
  • Your happiness is everything.

    主站蜘蛛池模板: 久久亚洲人成综合网 | 3d动漫精品啪啪一区二区下载 | jizz在线免费观看 | 亚洲h色| 日本在线观看一区 | 色老妇| 2018狠狠干 | www.操操操.com | 成人av片免费看 | 超碰在线98 | 农村妇女精品一区二区 | 国产精品亚洲欧美大片在线观看 | 亚洲精品一卡2卡三卡4卡 | 东京热无码中文字幕av专区 | 一级特黄视频 | tube成熟少妇69| 日韩欧美手机在线 | 中文字幕99页 | 亚洲欧洲精品在线 | 亚洲另类春色校园小说 | 男女靠逼网站 | 久久精品欧美日韩 | 无码高潮爽到爆的喷水视频app | 丰腴饱满的极品熟妇 | 曰批全过程免费视频观看软件潮喷 | 国内最真实的xxxx人伦 | 98在线视频 | 西西人体大胆尺度写真 | youjizz麻豆 | 日韩乱码人妻无码中文视频 | 中文字幕乱码免费视频 | 高清一区二区三区 | 91偷偷鲁偷偷鲁综合网站 | 无码人妻精品一区二区三区蜜桃 | 亚洲九九热 | 欧美情爱视频 | www.豆花福利视频 | 强开小婷嫩苞又嫩又紧视频韩国 | 综合无码精品人妻一区二区三区 | 国产在线第一区二区三区 | 国产精品欧美一区二区三区不卡 | 性大毛片视频 | 九九99九九在线精品视频 | 久久亚洲精品中文字幕波多野结衣 | 国产精品国产三级国产剧情 | 久久婷婷国产综合 | 久久毛片网| 天堂av中文在线观看 | 亚洲成av人片在线观看无app | 日韩精品久久久久久免费 | 日韩深夜视频 | 国产高清在线精品一区免费 | 国产精品中文字幕av | 国产精品调教奴变态 | 一本综合丁香日日狠狠色 | 色久悠悠婷婷综合在线亚洲 | 一区二区三区四区在线视频 | 人妻少妇精品中文字幕av蜜桃 | 国产真人作爱免费视频道歉 | 欧美 日韩 精品 | 久久久久久av无码免费看大片 | 亚洲国产精品久久亚洲精品 | 婷婷色国产精品视频一区 | 草草影院在线观看视频 | 久久久久人妻精品一区蜜桃网站 | 精品国产午夜肉伦伦影院 | 欧美 亚洲 日韩 中文2019 | 伊人久久综合成人网 | 91丝袜视频 | 中文字幕在线观看av | 国产av午夜精品一区二区三 | 亚洲欧美日韩视频一区 | 美日韩一区 | 99精品电影一区二区免费看 | 99久久无码一区人妻a片潘金莲 | 日韩网站在线观看 | 在线不卡av | 午夜成人鲁丝片午夜精品 | 国产天天综合 | 亚洲国产一区二区a毛片日本 | 日本三级久久久 | 日本美女高潮视频 | 亚洲中文无码成人手机版 | 中国女人一级片 | 免费人成视频在线观看视频 | 日本人妖xxxx | 91精品国产综合婷婷香蕉 | 五月婷婷视频在线 | 极品美女在线观看免费直播 | 免费国产自线拍一欧美视频 | 人妻免费一区二区三区最新 | 影音先锋中文字幕第一页 | 不卡一区二区三区四区 | 免费无码午夜福利片69 | 欧美三根一起进三p | 国产目拍亚洲精品99久久精品 | 嫩草嫩草嫩草 | 国产内射性高湖 | 国产成人免费视频精品 |