gasuser
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 56 個
工控威望: 123 點
下載積分: 4577 分
在線時間: 39(小時)
注冊時間: 2020-08-31
最后登錄: 2024-07-12
查看gasuser的 主題 / 回貼
樓主  發(fā)表于: 2020-12-23 00:38
各位前輩

這是小弟寫的永宏的一個程序

我大概敘述一下

我有五臺馬達(dá) 分別由五臺變頻器各別控制

但是我只用一組PID來做全部同頻率控制

我上傳的程式只有比較大小后(運(yùn)轉(zhuǎn)時間最少的四臺馬達(dá)動作)

目前小弟遇到的困難是當(dāng)我比較完啟動后假設(shè)當(dāng)我頻率降到20Hz就要先停止一臺馬達(dá)...由三臺運(yùn)轉(zhuǎn)若是頻率再次降到20Hz就要停止一臺馬達(dá)...由二臺運(yùn)轉(zhuǎn)若是頻率再次降到20Hz就要停止一臺馬達(dá)...由一臺運(yùn)轉(zhuǎn)而后在降到20Hz時就不能在停止最少必須保持一臺馬達(dá)動作

可以請前輩們幫忙協(xié)助指導(dǎo)一下 該如何來做 可以達(dá)到上面的動作功能呢???

謝謝

111.rar (3 K) 下载次数:29
本帖最近評分記錄:
  • 下載積分:+3(1992sd) 謝謝分享!
  • 我只是個新手 問題比較多 請各位前輩多多見諒
    小侯
    小侯
    級別: 工控俠客
    精華主題: 0
    發(fā)帖數(shù)量: 482 個
    工控威望: 2612 點
    下載積分: 8103 分
    在線時間: 507(小時)
    注冊時間: 2008-10-17
    最后登錄: 2024-12-09
    查看小侯的 主題 / 回貼
    1樓  發(fā)表于: 2020-12-23 11:12
    先將運(yùn)轉(zhuǎn)中馬達(dá)數(shù)量計算出來
    並做馬達(dá)運(yùn)轉(zhuǎn)時間計算
    我是以CALL方式去做判斷與停止
    當(dāng)停止條件達(dá)成去執(zhí)行一次呼叫
    呼叫記得要有間隔時間,不然會一下關(guān)到剩1臺

    呼叫後將數(shù)據(jù)排入固定暫存器
    當(dāng)然沒有運(yùn)轉(zhuǎn)的馬達(dá)時間填入0
    然後執(zhí)行最大值搜尋
    找出運(yùn)轉(zhuǎn)時間最長的馬達(dá)位置
    判斷出是哪顆馬達(dá)就讓他停止

    當(dāng)馬達(dá)運(yùn)行數(shù)量只剩一臺就不關(guān)閉馬達(dá)
    大致上是這樣

    由於我沒有在用永宏P(guān)LC,所以提供一個三菱Q系列的範(fàn)本
    裡面只有兩個比較特殊的指令一個是
    SUM 為ON狀態(tài)BIT判斷
    另一個是
    MAX
    為最大值判斷,當(dāng)最大值有負(fù)數(shù)個以最先被找到的最大值判斷為最大值所在位址並計算最大值個數(shù)

    你可以在永宏手冊內(nèi)找找有沒有適合的指令

    CLOSE_MOTOR.rar (163 K) 下载次数:37