国产一区二区三区毛片_亚洲乱码AV中文一区二区_亚洲精品无码专区在线播放_日韩欧美一二_咪咪av影院_欧久久av一区二区

ronkang
倍加?偩
級別: 略有小成
精華主題: 0
發帖數量: 147 個
工控威望: 348 點
下載積分: 914 分
在線時間: 190(小時)
注冊時間: 2008-06-24
最后登錄: 2025-05-10
查看ronkang的 主題 / 回貼
樓主  發表于: 2021-01-13 13:31
SR20帶7臺G120XA變頻器,走USS通訊,一個子程序中使用7個USS_CTRL指令讀寫變頻器。另一個子程序中使用7個USS_RPM_R指令輪訓讀取7臺變頻器電流,現在問題是:
1.兩個子程序都在主程序中調用時,USS_RPM_R沒有任何錯誤,但是USS_CTRL平均15秒就會報錯,錯誤代碼2。2這個代碼不知什么原因引起。
2.主程序中只調用USS_CTRL這個子程序時,7個USS_CTRL指令無任何錯誤。
請專家指點一下,USS_RPM_R是輪詢順序執行的,應該沒有問題,會不會是和USS_CTRL指令沖突了?問題到底出在哪里?有什么解決辦法,麻煩大家了
zhou1211
級別: 略有小成
精華主題: 1 篇
發帖數量: 206 個
工控威望: 363 點
下載積分: 1174 分
在線時間: 66(小時)
注冊時間: 2013-11-04
最后登錄: 2025-01-09
查看zhou1211的 主題 / 回貼
1樓  發表于: 2021-01-13 16:08
你這明顯要分時中斷
ronkang
倍加?偩
級別: 略有小成
精華主題: 0
發帖數量: 147 個
工控威望: 348 點
下載積分: 914 分
在線時間: 190(小時)
注冊時間: 2008-06-24
最后登錄: 2025-05-10
查看ronkang的 主題 / 回貼
2樓  發表于: 2021-01-13 19:08
樓上,分時中斷怎么理解?怎么中斷法?
ronkang
倍加福總線
級別: 略有小成
精華主題: 0
發帖數量: 147 個
工控威望: 348 點
下載積分: 914 分
在線時間: 190(小時)
注冊時間: 2008-06-24
最后登錄: 2025-05-10
查看ronkang的 主題 / 回貼
3樓  發表于: 2021-01-13 21:37





    
zhou1211
級別: 略有小成
精華主題: 1 篇
發帖數量: 206 個
工控威望: 363 點
下載積分: 1174 分
在線時間: 66(小時)
注冊時間: 2013-11-04
最后登錄: 2025-01-09
查看zhou1211的 主題 / 回貼
4樓  發表于: 2021-01-14 15:21
你一個循環周期很容易出現uss_ctrl 和Uss_RPM_R 時間間隔不夠,這樣就被掛起報錯
zhou1211
級別: 略有小成
精華主題: 1 篇
發帖數量: 206 個
工控威望: 363 點
下載積分: 1174 分
在線時間: 66(小時)
注冊時間: 2013-11-04
最后登錄: 2025-01-09
查看zhou1211的 主題 / 回貼
5樓  發表于: 2021-01-14 15:31
IF iAdrOfInsulation =0 THEN
    iAdrOfInsulation :=91;
END_IF
IF bSensorCorrectionHMI THEN
    eCommandNum := 5;
END_IF
IF bParamAlterHMI THEN
    eCommandNum := 7;
END_IF

CASE eCommandNum OF(*SystemTotalData :=1,SubcircuitAnodeToGlobeResistance,ProductParamRead,SubcircuitCathodeToGlobeResistance,SensorCorrection,AddrAlter,ParamAlter*)
SystemTotalData:
    wMBAdr := 16#0320;
    iLen    := 7;
    bReadEnable := TRUE;
    bWriteEnable :=FALSE;
SubcircuitAnodeToGlobeResistance:
    wMBAdr := 16#03E8;
    iLen    := iSubTotal;
    bReadEnable := TRUE;
    bWriteEnable :=FALSE;
ProductParamRead:
    wMBAdr := 16#0510;
    iLen    := 5;
    bReadEnable := TRUE;
    bWriteEnable :=FALSE;
SubcircuitCathodeToGlobeResistance:
    wMBAdr := 16#04B0;
    iLen    := iSubTotal;
    bReadEnable := TRUE;
    bWriteEnable :=FALSE;
SensorCorrection:
    wMBAdr := 16#680;
    wWriteDate    := 16#7;
    bReadEnable := FALSE;
    bWriteEnable :=TRUE;
AddrAlter:
    bReadEnable := FALSE;
    bWriteEnable :=TRUE;
    wMBAdr := 16#1218;
    IF iWantedAdr <>0 THEN
        wWriteDate    := UINT_TO_WORD(iWantedAdr);
    ELSE
        wWriteDate    := 16#5B;
    END_IF
ParamAlter:
    bReadEnable := FALSE;
    bWriteEnable :=TRUE;
    IF bSubcircuitCAlterHMI THEN
        wMBAdr := 16#71A;
        wWriteDate    := UINT_TO_WORD(iWantedSubcircuitAmount);
    END_IF
    IF bAlarmLimitSetHMI THEN
        wMBAdr := 16#71C;
        wWriteDate    := UINT_TO_WORD(iWantedResistanceLimit);
    END_IF
    IF bResistanceCheckRangeSetHMI THEN
        wMBAdr := 16#71E;
        wWriteDate    := UINT_TO_WORD(iWantedResistanceCheckRange);
    END_IF
END_CASE


IF NOT bAlter THEN
    CASE iState OF
    0:    fbMBCom.ReadRegs(Execute := FALSE);
        istate := istate +1;
    1:

        fbMBCom.ReadRegs(
        UnitID := UINT_TO_BYTE(iAdrOfInsulation), (* 站點地址 *)
        Quantity := iLEN,
        MBAddr := wMBAdr,
        CbLength := iLEN*2,
        pMemoryAddr:= ADR(wMemoryDate[1]),
        Execute := TRUE AND bReadEnable ,
        Timeout := t#5s,
        Busy => );
        IF NOT fbMBCom.BUSY THEN
            fbMBCom.ReadRegs(Execute := FALSE);
            IF fbMBCom.Error THEN
                iState :=0;
            ELSE
                istate := istate +1;
            END_IF
        END_IF
    2:
        CASE eCommandNum OF
            1:
                FOR i :=1 TO 7 DO
                    IF i=3 OR i=4 THEN
                    iSysTotalDate := WORD_TO_UINT(wMemoryDate AND 16#3FFF);
                    ELSE
                    iSysTotalDate := WORD_TO_UINT(wMemoryDate);
                    END_IF
                END_FOR
                iSubTotal := iSysTotalDate[2];
                IF wMemoryDate[3].14 THEN
                    bErrList[1] := TRUE;
                ELSE
                    bErrList[1] := FALSE;
                END_IF
                IF wMemoryDate[4].14 THEN
                    bErrList[2] := TRUE;
                ELSE
                    bErrList[2] := FALSE;
                END_IF
            2:
                FOR i :=1 TO 5 DO
                    iProductParam := WORD_TO_INT(wMemoryDate);
                END_FOR
            3:
                FOR i :=1 TO iSubTotal DO
                    iSubP_EarthR := WORD_TO_INT(wMemoryDate AND 16#3FFF);
                    IF wMemoryDate.15 THEN
                        bErrList[2+i] := TRUE;
                    ELSE
                        bErrList[2+i] := TRUE;
                    END_IF
                    IF wMemoryDate.14 THEN
                        bErrList[2+iSubTotal+i] := TRUE;
                    ELSE
                        bErrList[2+iSubTotal+i] := TRUE;
                    END_IF
                END_FOR
            4:
                FOR i :=1 TO iSubTotal DO
                    iSubN_EarthR := WORD_TO_INT(wMemoryDate AND 16#3FFF);
                    IF wMemoryDate.15 THEN
                        bErrList[2+2*iSubTotal+i] := TRUE;
                    ELSE
                        bErrList[2+2*iSubTotal+i] := TRUE;
                    END_IF
                    IF wMemoryDate.14 THEN
                        bErrList[2+3*iSubTotal+i] := TRUE;
                    ELSE
                        bErrList[2+3*iSubTotal+i] := TRUE;
                    END_IF
                END_FOR
        END_CASE
        FOR i := 1 TO 64 DO
            wMemoryDate := 0;
        END_FOR
        istate :=0;
        eCommandNum := eCommandNum +1;
        IF eCommandNum >4 THEN
            eCommandNum :=1;
        END_IF
        bAlter := bStopHmi;(*參數修改ON*)
    END_CASE
ELSE
    CASE istate OF
    0:    fbMBCom.WriteSingleRegister(Execute := FALSE);
        istate := istate +1;
    1:
        fbMBCom.WriteSingleRegister(
            UnitID := UINT_TO_BYTE(iAdrOfInsulation),
            Quantity := 1,
            MBAddr := wMBAdr,
            CbLength := SIZEOF(wWriteDate),
            pMemoryAddr:= ADR(wWriteDate),
            Execute := TRUE AND bWriteEnable,
            Timeout := t#5000ms,
            Busy => );
        IF NOT fbMBCom.BUSY THEN
            fbMBCom.WriteSingleRegister(Execute := FALSE);
            IF fbMBCom.Error THEN
                istate := 0;
            ELSE
                istate :=istate +1;
            END_IF
        END_IF
    2:
        CASE eCommandNum OF
            5:;
            6:
                IF iWantedAdr = BYTE_TO_UINT(fbMBCom.InData.D[4]) THEN
                    iAdrOfInsulation := iWantedAdr;
                END_IF
            7:;
        END_CASE
        bWriteEnable :=FALSE;
        eCommandNum :=1;
        iState :=0;
        bAlter := bStopHmi;(*參數修改OFF*)
    END_CASE
END_IF
zhou1211
級別: 略有小成
精華主題: 1 篇
發帖數量: 206 個
工控威望: 363 點
下載積分: 1174 分
在線時間: 66(小時)
注冊時間: 2013-11-04
最后登錄: 2025-01-09
查看zhou1211的 主題 / 回貼
6樓  發表于: 2021-01-14 15:35
通訊沒你想的那么簡單,對時間有要求,你的輪詢讀沒問題是每一步都分開了在做,并且,即使你的通訊對象只有一個,也會出現同樣的情況,你這存在2中通訊操作就必須在進行另一種的時候中斷一種,我的程序是用codesys寫的,2種模式切換,但不能同時進行,實際上切換過程時間很短,在確認發出和收到回信再切回去
ronkang
倍加福總線
級別: 略有小成
精華主題: 0
發帖數量: 147 個
工控威望: 348 點
下載積分: 914 分
在線時間: 190(小時)
注冊時間: 2008-06-24
最后登錄: 2025-05-10
查看ronkang的 主題 / 回貼
7樓  發表于: 2021-01-14 19:08
樓上兄弟,USS通訊沒你說的這么復雜吧。西門子手冊也沒你說的要中斷一個通訊才能啟用另一個通訊。只說了USS讀寫指令同一時刻只能使用一個。
zhou1211
級別: 略有小成
精華主題: 1 篇
發帖數量: 206 個
工控威望: 363 點
下載積分: 1174 分
在線時間: 66(小時)
注冊時間: 2013-11-04
最后登錄: 2025-01-09
查看zhou1211的 主題 / 回貼
8樓  發表于: 2021-01-15 08:30
引用
引用第7樓ronkang于2021-01-14 19:08發表的  :
樓上兄弟,USS通訊沒你說的這么復雜吧。西門子手冊也沒你說的要中斷一個通訊才能啟用另一個通訊。只說了USS讀寫指令同一時刻只能使用一個。

    你對通訊認識還不夠,因為你2個指令都是存在詢問幀,因此他就像modbus的控制字一樣,需要逐條發送,它又不能像CAN那樣打包發送,空閑接收。
你這種情況就算同時發送那也只是直接下條覆蓋上條,主要還是時間間隔不夠,例如:modbus幀間隔是3.5個字符,在一條發送完沒間隔完就直接下一條,那么2條會串在一塊形成合并幀;
這種幀99.99%的概率是不合法,無法被響應,因為校驗通不過。
    另外,你的設備越多數據量越大,你需要做的間隔就越長,波特率本身就是描述通訊速率的,可以計算得出你做程序該有的間隔。


PS: 上面的程序并不復雜,上面是modbus協議,也是讀和寫。codesys本身就是開放性的,你調用的是一整塊功能,它調用可以切入內部調用函數。即使像你那種調用也有時候會寫得很復雜,你沒用到而已。  比如: 你詢問一個設備,設備回的狀態可能使你不得不選擇N種參數,我上面的就是,讀寫在上面的case中其實只出現了2次,其他都是數據處理
zhou1211
級別: 略有小成
精華主題: 1 篇
發帖數量: 206 個
工控威望: 363 點
下載積分: 1174 分
在線時間: 66(小時)
注冊時間: 2013-11-04
最后登錄: 2025-01-09
查看zhou1211的 主題 / 回貼
9樓  發表于: 2021-01-15 08:44
我說的中斷是廣義上的中斷,和PLC外部中斷不是一個概念,但和定時中斷類似,就是你必須先知道與通訊的設備是否成功的完成了上一次,而不是只管發,到時收一堆報錯,這種情況當年初學plc就是這樣。
拿個最簡單的電池SOC can2.0標準協議  只讀報文來講,plc不需要寫數據幀,只管讀,對象的報文分成4種幀,權重50ms 100ms 200ms 1s  ,一是長度不一樣,二是重要程度不一樣,那么這四種必須在確定其中一種發送完了才能發另一種,否則極可能出現1s間隔的不重要報文永遠發不出去
ronkang
倍加?偩
級別: 略有小成
精華主題: 0
發帖數量: 147 個
工控威望: 348 點
下載積分: 914 分
在線時間: 190(小時)
注冊時間: 2008-06-24
最后登錄: 2025-05-10
查看ronkang的 主題 / 回貼
10樓  發表于: 2021-01-15 17:29
你說的不錯,一開始我也在糾結USS_CTRL和USS_RPM_R指令同時使用是否沖突?官方例子程序顯示不沖突,我才這樣用的。今天實際操作證明,官方的例子程序也是存在問題的,問題和我的一樣。也會報校驗錯誤,代碼2
ronkang
倍加?偩
級別: 略有小成
精華主題: 0
發帖數量: 147 個
工控威望: 348 點
下載積分: 914 分
在線時間: 190(小時)
注冊時間: 2008-06-24
最后登錄: 2025-05-10
查看ronkang的 主題 / 回貼
11樓  發表于: 2021-01-16 15:39
樓上兄弟,能提供一下具體解決辦法嗎?問題是發現了,不知怎解。400客服電話又打不進

主站蜘蛛池模板: 久久久久亚洲av无码专区蜜芽_91插插影院_av高清一区二区_一区二区a视频_国产精品亚洲LV粉色_麻豆av网_久久久99日产_a级毛片特级毛片 | 亚洲精品一页_欧美日韩精品在线一区_蜜桃视频久久_国产色女人_亚洲精品欧美_国产精选91_中文字幕乱偷无码AV先锋蜜桃_www.国产精彩视频 | 国产一二三四在线_18禁超污无遮挡无码免费游戏_精品美女久久久_久久九九99视频_成人av中文字幕_日韩一区二区福利_亚洲.国产.中文慕字在线_天堂中文资源库官网 | 中文字幕精品久久久久_无遮挡在线观看_在线免费观看的www视频_久草香蕉_九九九热精品免费视频观看_色欲av自慰一区二区三区_综合av第一页_国产一级毛片a午夜一级 | 91精品综合久久久久久_狠狠躁夜夜躁人人爽视频_婷婷五月综合激情_椎名由奈一区二区在线_18禁夜色福利院在线播放_国产黄色播放_guomoba国模吧大胆高清_国产自产 | 四虎黄色网_铠甲勇士第一部免费_亚洲色成人WWW永久在线观看_男女做爰猛烈吃奶啪啪喷水网站_久久精品午夜福利_91手机在线观看_成人日日夜夜_中国av在线播放 | 久久人人爽人人爽人人片av高清_国产九九九精品_视频一区二区三区在线_艹逼逼网站_新版天堂资源在线_日本精品视频一区二区三区_色婷婷xxx_四虎视频影院www1515 | 久久理论片_性色99_麻豆精品国产91久久久久久_久久伊人青青草_91短视频在线观看免费_天堂网WWW天堂在线_草比网站_www.中文字幕 | 久久精品亚洲一区二区三区_香蕉快播_蜜桃视频一区二区_一区二区不卡视频_成人在线无码_夫の目の前侵犯新婚人妻在线_无码avav无码中文字幕_国产精品一国产精品最新章节 | 少妇作爱视频在线观看视频_亚洲视频自拍_国产精品乱码在线_国产精品一区久久_国产成人免费高潮激情视频_午夜精品一区二区三区在线观看_婷婷丁香五月综合色_亚洲色中文字幕在线播放 | 91av视频在线免费观看_欧美黑人做爰爽爽爽_超碰自拍97_91视频第一页_亚色网站_99久久香蕉_无码人妻丰满熟妇区视频_人妻丝袜无码专区视频网站 | 国产成人AV网站网址_日本三极_日漫美女_中国三级在线_一级一毛片_黑人av_2019天天干夜夜操_国产免费作爱视频 国产精品天堂AVAV在线_国产成人无码一区二区在线观看_隔着超薄肉丝袜做AV在线_涩涩涩综合在线亚洲第一_精品系列无码一区二区三区_在线黄色影院_九一快播_久久精品国产亚洲AV麻豆不卡 | 国产精品久久一_国产乱码精品一区二区三区黄瓜的功能_亚洲一区二区三区色_国产成人综合精品三级_激情久爱免费视频在线_在线天堂中文最新版_久久草在线精品_免费观看黄网站 | 日批日韩在线观看_国产va免费精品观看精品老师_久久久久激情_性开放网交友网站_欧美一级做_亚洲VA欧美va国产va综合_欧美视频一_超碰人人超 | 91久久精品国产一区二区三区_一本大的之伊人_国产免费观看视频_一级片aaa_国产国在线线免费费_久久精品国产亚洲αv忘忧草_WWW国产精品内射熟女_2012中文字幕在线视频 | 少妇厨房愉情理9仑片视频_成人免费在线观看网址_国产成人无码精品一区不卡_久久看av_97超碰福利久久精品_美女一级黄色大片_国产欧美日韩一区二区三区四区_亚洲AV嫩草AV极品A片 | 东京干福利视频_成人教育av_91精品91久久久_在线观看亚洲精品_把女人弄爽特黄a大片_日韩毛片欧美一级a_免费人成又黄又爽的视频_欧美视频第五页 | 91播放_4hu在线_丹麦一级毛片_国产乱子伦免费视频观看_操操av_国产裸体裸拍免费观看_一级二级黄色大片_www.五月婷婷.com | 中日韩VA无码中文字幕_久久一本热_少妇熟女久久综合网色欲_国产剧情亚洲福利_老色鬼在线精品视频在线观看_456成人网_亚洲国产精品久久久久婷爱影_精品午夜影院 | 大雞巴亂倫有声小说_ZZIJZZIJ亚洲日本少妇_mm1313亚洲国产精品一区_97成人精品视频在线观看_在线视频毛片_国产精品精品自在线拍互動交流_黄色大片日本免费大片_久久久无码精品无码国产人妻丝瓜 | 福利一区在线视频_欧洲一级黄色片_国产高清精品综合在线网址_国产精品视频毛片_日本丰满老妇bbb_在线视频国产一区二区_亚洲不卡一_中文字幕日韩精品亚洲七区 | 品色堂永远免费_俄罗斯大荫蒂女人毛茸茸_国产精品一级在线_亚洲人精品午夜射精日韩_日日网站_成人福利视频网_日韩一区二区三区网站_濑亚美莉av番号大全 | 欧美精品粉嫩高潮一区二区_国产精成人品在线观看_久久精品国产精品亚洲38_俄罗斯极品xxxx_深夜视频在线播放_97超碰人_成人A片免费视频在线观看1_无码人妻丰满熟妇区毛片18 | 丁香婷婷六月综合交清_素人视频在线观看免费_亚洲精品国精品久久99热一_亚洲AV无码无在线观看_亚洲AV无码片一区二区三区_任你操免费视频_亚洲av日韩av天堂久久_色欲天天婬色婬香视频综合网 | 91视频综合_亚洲自拍偷拍区_偷国产乱人伦偷精品视频_91九色视频网_黄色片在线观看免费_日韩精品一区二区在线观看_亚洲一级精品毛片_成年动漫av网免费 | 人妻互换精品一区二区_一区二区亚洲精品国产_久久在线_一本色道久久综合狠狠躁的番外_av中文字幕网站_www.xxx久久_成本大片免费播放网站_妖精森林的救世主动漫在线观看 | 久久精品国产99久久无毒不卡_欧美色欧美亚洲另类七区_国产精品无码天堂av_欧美性色欧美性a片_亚洲日色_日韩A人毛片精品无人区乱码_久久免费毛片大全_国产综合一区二区三区视频一区 国产免费黄色片_久久午夜免费视频_麻豆影视在线免费观看_成人三级做爰av_久久精品中文闷骚内射_美女视频黄的免费_人妻无码一区二区三区_亚洲特黄毛片 | av色偷偷_欧美xyx_人人澡人人射_久久人妻天天AV_超碰777_亚洲欧美不卡视频在线播放_国产欧美在线一区二区_高潮娇喘抽搐喷水潮喷视频网站 | 国产精品国产精品国产专区不卡_欧美精品人人做人人爱视频_aa亚洲一区一区三区_一级黄色片在线播放_av中文精品无码在线不卡_在线中文日韩_日韩免费_久久久精品美女 | A天堂最新版在线中文_亚洲永久免费视频_精品一区二区三人妻视频_丁香五月网久久综合_网站一级片_男人用嘴添女人私密视频软件_久久不射国产精品_国产精品久久久久99 | 强行扒开双腿疯狂猛躁3p视频_久久成年网站_一区二区三区中文字幕_免费A片国产毛无码A片牛牛_巨胸喷奶水视频WWW免费网站_99热碰_麻豆视频网_一级黄色毛片免费观看 | 国产另类精品_a级高清免费毛片av播放_日韩午夜在线视频_538任你躁精品视频网免费_久草福利资源在线_福利一区福利二区_乡下农村一级毛片_99久热在线精品视频成人一区 | 开心色怡人综合网站_久久久久国产精品嫩草影院_狂野的爱在线观看_国产良家自拍_无套内射极品少妇chinese_欧美激情无码视频一二三_久久综合久中文字幕青草_性xxxx欧美 | 国产露脸饥渴孕妇在线播放_成人黄色片网站_麻豆99_国内另类在线_日韩无套_亚洲狠狠婷婷综合久久久久_亚洲精品16p_国产91高潮流白浆在线麻豆 | 亚洲视频一区二区_久久久精品在线观看_国内精品伊人久久久久7777_www.麻豆com_日本免费一区二区三曲_亚洲成在线_中文字幕第一区第二区_久久人妖 | 蜜臀网站_男女无遮挡在线观看_欧美一二三四成人免费视频_成年人网站黄_亚洲国产视频一区_白色欧美精品在线播放_亚洲级αV无码毛片久久精品_亚洲精品黄色片 | 一区二区三区成人在线视频_欧美日韩久久一区_a在线免费观看视频_五月天黄色av_久久久精品国产免大香伊_99精品久久久久久久婷婷_一级特黄录像免费播放中文_久久99精品久久久久久动态图 | 欧美大片a片免费看视频频_麻豆精品影院_国产精品手机视频一区二区_久久懂色精品99综一区合_久久综合干_国产在线视频不卡二_国产天堂久久综合_79av国产 | 国产69精品久久99不卡的观看体验_一区二区视频网_精久久久久久久_综合激情六月_操操操操操操操_麻豆播放器_久久99久久精品视频_亚洲中文字幕成人无码 | 久草视频中文_aiai久久_日韩精品一区二区三区免费_av网站一区二区_精品视频久久久久久久_亚州av网站大全_国产单亲乱视频_国产成人a区在线观看视频 | 伊人思思_亚洲精品无码久久_中文字幕成人在线视频_国产精品免费视频软件_在线观看91免费视频_婷婷激情综合色五月久久竹菊影视_手机看日韩片_日韩视频成人 |