国产一区二区三区毛片_亚洲乱码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免费_av狼论坛_国产xxwwxxww视频_吉林小伟无套gay_久久免费看a级毛毛片_欧美猛交 | 国产精品久久久久久久久久辛辛_日本丰满熟妇乱子伦_亚洲欧美精品综合在线观看_国产无av码在线观看_青苹果乐园1080免费_色偷偷尼玛图亚洲综合_欧美一区二区视频网站_成人做爰999 | 久久久无码精品亚洲日韩啪啪网站_国产三级三级看三级_天堂一区人妻无码_国产成人久久精品_最近中文字幕2019视频1_思思久热_亚洲成AV人在线观看成年美女_日韩少妇内射免费播放18禁裸乳 | 日本免费黄色一级片_免费黄色毛片视频_久草色视频_欧美色综合天天久久综合精品_四虎在线免费播放_日韩毛片免费看_人人人射_免费人妻无码不卡中文字幕18禁 | 亚洲AV无码国产精品色午友在线_欧美黄色一级视频_久久精品亚洲国产奇米99_亚洲欧美日韩影院_亚洲精品欧美综合网_国产美女的第一次好痛在线观看_大内密探零零性性在线观看_五月天色视频 | 黑人巨茎精品欧美一区二区_小情侣高清国产在线播放_亚洲区欧美区综合区自拍区_视频一区中文字幕_超碰caoporn久久_亚洲AV成人无码网站在线_国产精品丝袜高跟鞋_九一精品在线观看 | 亚洲精品一区二区三区在线看_精品99在线观看_国产最新精品视频_四虎影院永久在线_狼人无码精华AV午夜精品_国产网曝门亚洲综合在线_在线播放亚洲第一字幕_久久国产精品萌白酱免费 | 色视频中文字幕_亚洲性色成人av_外国黄色一级毛片_亚洲国产wwwccc36天堂_国产日韩精品久久久无码专区_久草精品视频在线观看_国产欧美精品aaaaa久久_精品国产一区二区在线观看 | 91久久久久久亚洲精品禁果_午夜福利123_国产一二区免费视频_国产99久久久久久免费看农村_国产成人精品国内自产拍_91在线看看_日韩免费观看视频_熟妇人妻AV无码一区二区三区 | 桃色成人网_最近日本中文字幕免费完整_x88av在线_青青草视频在线观看_台湾佬娱乐中文22vvvv_一夜新娘第三季免费播放_video喷出白浆_日本欧美在线播放 | 麻豆影视视频高清在线观看_亚洲蜜桃网_色爱综合_XXXXBBBB欧美_全球诡异时代动漫免费观看_欧美第7页_视频在线一区二区三区_欧美XXXX做受欧美Gay | 国产91对白在线播放九色_欧美精品久久久久久久_国产男女爽爽爽免费视频_H无码精品动漫在线观看免费_国产一级毛片网站_国产免费乱淫av_四虎影视大全_中文字幕av一区二区三区高 | 四色永久网址在线观看_首页国产欧美日韩丝袜_国产丝袜视频一区二区三区_青青国产在线_欧美一a一片一级一片_国产午夜精品视频免费不卡69堂_亚洲伊人一本大道中文字幕_中字一区 | 中文字字幕在线观看_国产亚洲欧美日韩在线爱豆_色就是色亚洲色图_国产裸体歌舞一区二区_无限在线看免费视频大全_艳妇臀荡乳欲伦交换在线播放_一二三四区在线播放_视色视频在线观看 | 日韩精品一区二区午夜成人版_亚洲精品乱码久久久久久蜜桃不爽_猫咪最新永久在线网站_欧美一区二区三区久久综_天天干夜夜爱_亚洲精品一区二三区不卡_日本黄色片免费看_在线播放黄色网址 | 国产9区_欧美性视频一区二区_亚洲a区在线观看_javlibrary贴吧_日本一二三区高清_永久免费视频国产_人人干影院_超碰三级 | 性欢交69精品久久久_欧美久久久久高潮不断_免费人成网站在线观看欧美_丁香啪啪综合成人亚洲_亚洲国产欧美一区_a欧美在线_av在线播放免费观看_野外做受三级视频 | 一级肉体全黄裸体先_狼人香蕉香蕉在线中文_黄色录像一级视频_xxxxx网_免费黄篇_色网在线看_欧美在线国产_国产高潮抽搐喷出白浆精品视频 | 亚洲丰满熟女一区二区蜜桃_国产馆一区二区_免费观看992tv_亚洲国产视频一区二区三区_日本中文字幕在线一区_又爽又黄又无遮挡的激情视频_jk制服国产在线视频_岛国成人免费 | 91超碰刺激偷拍_国内精彩免费自拍视频在线观看网址_欧美内射深插日本少妇_97zyz成人免费视频_麻豆成人在线_欧美日韩精品久久免费_免费看黄色一级视频_91视频麻豆视频 | 久久网站热最新地址4_www色.com_饥渴少妇浪潮AV麻豆传煤_欧美色五月_伊人成伊人成综合网222_CHINESE玩弄老年熟女_成人午夜视频在线_日本婷婷免费久久毛片 | 成人A级视频在线观看_亚洲AV无码京香无码AV_欧美第一黄网免费网站_米奇7777_蜜臀视频一区二区在线播放_老司机成人影院_亚洲熟妇丰满xxxxx国语_tube8xxxxx中国 | 日本黄色大片视频_freesex性中国熟妇_色香欲www7777综合网_国产精品无码不卡一区二区三区_一级毛片av_日韩中文字幕亚洲精品欧美_日本喷奶水中文字幕视频_不卡的毛片 | 久草在线精品观看_情欲三原色未删减_成人区精品一区二区不卡_40集全部免费观看_国产午夜视频在线观看_国产久热精品_久久久久久久穴_99亚洲热 | 蜜臀69_日本真人添下面视频免费教_精品欧洲av无码一区二区_操操小视频_三级视屏_97网站_极品福利_超碰在线超碰 | 99国产精品99久久久久久娜娜_飘雪影院在线观看免费版_久草播放_亚洲1区在线_特黄av_欧美日韩成人_蜜臀AV色欲无码A片一区_h动漫在线视频 | 三级在线看_欧美射图_日韩AV无码精品专区_美女一级大黄录像片_欧美一级黄色录相_午夜福利无码一区二区_91色站_麻婆传媒 | 成人片黄网站色大片免费_精品久久久久久国产潘金莲_伊人av影院_日韩一卡2卡3卡4卡乱码免费网站_在线亚洲精品国产二区图片欧美_不卡一区2区_爱逼综合_九色精品视频 | 国产一区二精品区在线_中文字幕中文字幕一区三区_japanesehd熟女熟妇_97精品尹人久久大香线蕉_国产日产综合_国产一区二区在线看_成人精品视频在线观看_成人天堂视频在线观看 | 亚洲欧洲久久av_极品美女国产精品免费一区_老司机网站免费_免费视频入口_人妻网站成熟人妻VA网站_福利视频网站_亚洲天堂第一区_男人粗大一进一出视频 | 一个人看的www视频网站_好色综合_在线观看一区亚_国产精品久久久久久久久久久新郎_亚洲va久久久噜噜噜久久男同_久热青青_伊人久久大香线蕉无码麻豆_美国三级 | 99国产精品99久久久久久娜娜_飘雪影院在线观看免费版_久草播放_亚洲1区在线_特黄av_欧美日韩成人_蜜臀AV色欲无码A片一区_h动漫在线视频 | 处女膜往事_欧美日韩国产超高清免费看片_九九九九九九九九九九热_91美女片黄在线观看成欢阁_欧美精品区一区二区三区_亚洲成人无码AV_精品午夜福利1000在线观看_日本a网站 | 国产精品高潮呻吟久久久久_中日AV高清字幕版在线观看_一级美国毛片_久久精品国产亚洲精品_国产1区2区3区在线观看_国产一卡二卡新区在线_国产精品美女久久久久av超清_亚洲一区日韩精品 | 成人中文视频_日本最新免费视_潮喷大喷水系列无码精品视频_18禁在线无遮挡免费观看网站_成人亚洲片_亚洲一级淫片_女性高爱潮AAAA级视频_亚洲日韩欧洲乱码av夜夜摸 | 97影院手机在线观看_欧美乱淫_亚洲欧美精品无码一区二区三区_亚洲成色A片77777在线麻豆_久久99国产综合精合精品_骚虎av在线网站_色资源AV中文无码先锋_国产a1区 | 国产精品无码免费专区午夜_日韩三级不卡_女性裸体啪啪网站_91高清免费观看_久久中文骚妇内射_激情综合久久_麻豆精品一区二区综合av_精品人妻无码一区二区三区蜜桃 | av网页版_日日视频_靠逼视频免费网站_好吊妞在线_国产日产欧产美一二三区_久久精品中文_国产一级片自拍_中文字幕中文字字幕码一二区 | 91成人在线_成人无码在线视频网站_131MM少妇做爰视频_精品国产乱码久久久久久虫虫_免费国产_国产一级淫片在线观看_在线字幕_欧美久久人人网 | 国产av福利第一精品导航_国产综合亚洲区在线观看_一区二区三区内射美女毛片_成人av片在线观看免费_美女桃色网站_一级毛片a女人刺激视频免费_日本一级淫片日本高清小说_国产男女视频网站 | 四虎免费观看_日韩在线91_国产观看99_91婷婷射_亚洲精选中文字幕_色yeye高清在线视频_亚洲日韩成人无码不卡_一区二区三区日韩视频 |