CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-CODESYS璧勬簮涓嬭浇鍖-閰峰痉缃 - CoDeSys杞欢鏁欑▼涓嬭浇,CoDeSys宸ユ帶璧勮闂ㄦ埛
HSC6490-cn涓浗鍒堕狅紝涓浗鑺瘇
鏌ョ湅: 1290|鍥炲: 0

CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗

[澶嶅埗閾炬帴]
  • TA鐨勬瘡鏃ュ績鎯
    寮蹇
    2017-11-20 22:07
  • 绛惧埌澶╂暟: 2 澶

    [LV.1]鍒濇潵涔嶅埌

    鍙戣〃浜 2023-4-12 22:45:41 | 鏄剧ず鍏ㄩ儴妤煎眰 |闃呰妯″紡

    浠婂ぉ缁х画鎴戜滑鐨勫皬鐧芥暀绋嬶紝鑰侀笩灏变笉瑕佸湪杩欐氮璐规椂闂翠簡

    鍓嶉潰涓鏈熸垜浠浜嗗浣曞疄鐜癐O妯″潡鐨勬坊鍔犲拰鎺у埗銆傝繖涓鏈熸垜浠互鍚堜俊鐨勬帶鍒跺櫒鍜岀宸濈殑鎬荤嚎浼烘湇椹卞姩涓轰緥锛屼富瑕佺粰澶у婕旂ず涓涓嬪浣曠粰鎺у埗鍣ㄦ坊鍔燛therCAT鎬荤嚎鎺ュ彛鐨勪己鏈嶄粠绔欒澶囷紝浠ュ強濡備綍浣胯兘鍜屾帶鍒朵己鏈嶇數鏈鸿繍鍔ㄣ

    涓銆佹荤嚎浼烘湇璁惧瀹夎鍙婃坊鍔

    娴佺▼璺熷墠闈㈢殑鏁欑▼涓鏍凤紝棣栧厛瑕佹壘鍒拌澶囨弿杩版枃浠讹紝鐒跺悗瀹夎骞舵坊鍔犲埌宸ョ▼涓

    1.璁惧鏂囦欢涓嬭浇鍙婂畨瑁

    鐢变簬鎵嬪ご鍙湁绂惧窛鐨刋3E鎬荤嚎浼烘湇锛屼笅闈㈠氨浠ュ畠涓轰緥鏉ヨ繘琛岃瑙c傜宸濈殑璧勬枡涓嬭浇鍦板潃涓猴細https://www.hcfa.cn/service/other.html

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-1.png

    X绯诲垪浼烘湇鐨勮澶囨弿杩版枃浠朵笅杞藉湴鍧锛

    https://www.hcfa.cn/ajax/download.aspx?id=4212&name=59714E0AFAFDE0D61A576AFD16F8A497

    璇ユ枃浠惰В鍘嬪悗鍙互寰楀埌涓涓猉ML鏂囦欢锛岄渶瑕佸湪CODESYS缂栫▼鐜鐨勮彍鍗曟爮鈥滃伐鍏访犺澶囧瓨鍌ㄥ簱鈥濅腑瀹夎璇ユ弿杩版枃浠躲

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-2.png

    瀹夎瀹屾垚鍚庡湪鈥滆澶囧瓨鍌ㄥ簱鈥濅笅鏂圭殑鈥滅幇鍦烘荤嚎脿Ethercat脿浠庣珯脿HCFA Co.,Ltd-X3E-DRIVER鈥濅笅闈㈣兘澶熺湅瀵瑰簲鐨勮澶団淗CFA X3E Servo Driver鈥濄

    娉ㄦ剰锛屽湪浣跨敤澶ч儴鍒嗙殑绗笁鏂规荤嚎浼烘湇椹卞姩鏃讹紝閫氬父閮介渶瑕佹寜鐓т互涓婃楠や笅杞藉搴旂殑璁惧鏂囦欢骞跺畨瑁呭搴旇澶囷紝鎵浠ラ渶瑕佺‘璁よ澶囨枃浠惰窡鎺у埗鍣ㄥ湪鍨嬪彿鏄惁鏄搴旂殑锛屽惁鍒欏嵆浣垮畨瑁呬簡鍚庨潰涔熸湁鏃犳硶姝e父杩炴帴鍜屾帶鍒朵己鏈嶃

    2.浼烘湇璁惧娣诲姞

    鎴戜滑浠嶇劧浣跨敤鍓嶉潰鍒涘缓鐨勨渢estCTH0鈥濆伐绋嬶紝娣诲姞鎬荤嚎浼烘湇璁惧棣栧厛闇瑕佹坊鍔燛therCAT涓荤珯锛屽湪璁惧閲岄潰鐨勫伐绋嬪悕鈥渢estCTH0鈥濅笂鐐瑰彸閿紝涓鸿宸ョ▼娣诲姞鈥淓therCAT Master SoftMotion鈥濄

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-3.png

    鐒跺悗鍦ㄨ澶囨爲涓殑鈥淓therCAT Master SoftMotion鈥濅笂鐐瑰彸閿坊鍔犺澶囷紝鍦ㄦ墦寮鐨勭獥鍙d腑閫夋嫨鍒氭墠瀹夎鐨勮澶団滅幇鍦烘荤嚎脿Ethercat脿浠庣珯脿HCFA X3E Servo Driver鈥濄

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-4.png

    浼烘湇娣诲姞瀹屾垚鍚庡涓嬪浘鎵绀猴細

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-5.png

    鎸夌収浠ヤ笂鏂瑰紡锛屽彲浠ヤ緷娆℃坊鍔犲涓己鏈嶃傝娉ㄦ剰杩欓噷浼烘湇鍦ㄨ澶囨爲涓嬬殑椤哄簭锛屽嵆浠h〃浼烘湇鐨勫疄闄呰繛鎺ラ『搴忥紝鍥犳浼烘湇鐨勬帓鍒楅『搴忓拰鍨嬪彿闇瑕佸疄闄呬己鏈嶇殑杩炵嚎涓涓瀵瑰簲銆傚彟澶栵紝璁惧鏍戜笅浼烘湇鐨勪釜鏁板拰瀹為檯杩炴帴鐨勪釜鏁颁篃蹇呴』瑕佷竴鏍枫俤

    浜屻佷己鏈嶆帶鍒剁紪绋

    涓嬮潰鎴戜滑鐢ㄨ繖涓帶鍒跺櫒鏉ュ仛涓涓畝鍗曠殑浼烘湇鐢垫満姝e弽杞▼搴忥紝缁欏ぇ瀹舵紨绀轰竴涓嬪浣曚娇鑳戒己鏈嶅苟鎺у埗鐢垫満杩愬姩銆

    涓庣涓鏈熺被浼硷紝棣栧厛闇瑕侀氳繃鍦ㄢ淎pplication鈥濅笂鐐瑰彸閿夋嫨鈥滄坊鍔犲璞♀濇坊鍔犲繀瑕佺殑妯″潡锛屽嵆浠诲姟閰嶇疆鍜孭OU锛孭OU鐨勫悕瀛椾粛鐒剁敤main锛岀被鍨嬭繕鏄夋嫨绋嬪簭銆傜劧鍚庡湪鈥滀换鍔¢厤缃燛therCAT_Task鈥濅腑娣诲姞瀵筸ain绋嬪簭鐨勮皟鐢紝杩欓噷闂撮殧闇瑕佹牴鎹己鏈嶆敮鎸佺殑鍛ㄦ湡淇敼涓4ms锛屾坊鍔犲悗濡備笅鍥炬墍绀猴細

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-6.png

    杩欓噷闇瑕佹敞鎰忕殑鏄紝鍦ㄦ坊鍔犳荤嚎璁惧鈥淓therCAT_Master_SoftMotion鈥濇椂锛屼細鍦ㄤ换鍔¢厤缃腑鑷姩娣诲姞鈥淓therCAT_Task鈥濅换鍔★紝璇ヤ换鍔$敤浜嶦therCAT涓荤珯涓庝己鏈嶄粠绔欓氫俊銆備换鍔′紭鍏堢骇閫氬父涓1锛岀被鍨嬩负寰幆锛屽畾鏃跺懆鏈4ms銆傝繖閲岄渶瑕佹敞鎰忎互涓嬪嚑鐐癸細

    锛1锛夊鏋滆繕鏈夊叾瀹冧换鍔★紝寤鸿浠诲姟浼樺厛绾ц浣庝簬鎬荤嚎浠诲姟浼樺厛绾э紝鍗充紭鍏堢骇>1锛

    锛2锛夆淓therCAT_Task鈥濅换鍔′腑涓嶈鎵ц鑰楁椂杈冮暱鐨勭▼搴忥紝濡傛枃浠惰鍐欙紝浠ュ厤鎬荤嚎閫氫俊瓒呮椂瀵艰嚧鎶ラ敊銆

    锛3锛夆淓therCAT_Task鈥濅换鍔$殑瀹氭椂鍛ㄦ湡蹇呴』鏄荤嚎浼烘湇鏀寔鐨勩傚ぇ閮ㄥ垎鎬荤嚎浼烘湇鏀寔鐨勯氫俊鍛ㄦ湡涓猴細1ms銆2ms銆4ms銆8ms銆備娇鐢ㄤ笉鏀寔鐨勫懆鏈熸荤嚎閫氫俊浼氭姤閿欍

    1.浼烘湇閫氫俊缁撴瀯瀹氫箟

    棣栧厛闇瑕佸畾涔変竴涓敤浜庡拰浼烘湇閫氫俊鐨勬暟鎹粨鏋勩傚湪鈥淎pplication鈥濅笂鐐瑰彸閿紝閫夋嫨鈥滄坊鍔犲璞∶燚UT鈥濄

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-7.png

    鍦ㄦ墦寮鐨勨滄坊鍔燚UT鈥濋〉闈腑锛屽皢鍚嶇О鏀逛负鈥淢otorAxis鈥濓紝绫诲瀷閫夆滅粨鏋勨溿

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-8.png

    缁撴瀯涓畾涔夌殑鏁版嵁鍏跺疄鏄潵鑷荤嚎浼烘湇鐨勬帴鍙e畾涔夛紝鍙屽嚮鎵撳紑鍓嶉潰娣诲姞鐨勬荤嚎浼烘湇璁惧鈥淗CFA_X3E_Servo_Driver鈥濓紝閫夋嫨鈥滆繃绋嬫暟鎹濆嵆鍙湅鍒般

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-9.png

    鍏朵腑鎺у埗浼烘湇闇瑕佺敤鍒扮殑鍙橀噺濡備笅琛ㄦ墍绀恒

    寰俊鍥剧墖_20230419113213.png

    MotorAxis缁撴瀯瀹氫箟濡備笅锛

    TYPE MotorAxis :

    STRUCT

           Controlword         : UINT;           //鎺у埗瀛

           Mode                   : SINT;           //妯″紡

           targetPosition       : DINT;           //鐩爣浣嶇疆 pulse

           Errorcode             : UINT;           //閿欒鐮

           Statusword           : UINT;           //鐘舵佸瓧

           ActPosition           : DINT;           //瀹為檯浣嶇疆

           Digitalinputs         : UDINT;        //鏁板瓧杈撳叆

           //鍐呴儴浣跨敤鍙橀噺

           iState                   : INT;             //鍐呴儴鐘舵佸垏鎹

    END_STRUCT

    END_TYPE

    2.浼烘湇浣胯兘娴佺▼

    杩欏潡娑夊強鍒癊therCAT鎬荤嚎浼烘湇鐨勫惎鍔ㄦ祦绋嬶紝鏁翠釜娴佺▼涓昏鍒嗕负涓ら儴鍒嗭紝绗竴閮ㄥ垎鏄娴嬫墍鏈夎繛鎺ョ殑浼烘湇鏄惁杩涘叆鍙搷浣滅姸鎬侊紙OP鐘舵侊級锛岀浜岄儴鍒嗘槸瀵硅繘琛屼己鏈嶄娇鑳藉鐞嗕互淇濊瘉鍚庣画绋嬪簭鑳藉姝e父鎺у埗鐢垫満杩愬姩銆

    浠庣珯鐘舵佹娴嬭繃绋嬪彲浠ョ畝鍗曠矖鏆寸殑鐩存帴鐢ㄥ欢鏃舵潵鏇夸唬锛屽嵆绋嬪簭鍚姩鍚庡欢鏃朵竴娈垫椂闂达紝绛夋墍鏈変粠绔欏垵濮嬪寲瀹屾垚杩涘叆OP鐘舵佸悗鍐嶅紑濮嬭繘鍏ヤ娇鑳芥祦绋嬨傝繖閲岄渶瑕佹敞鎰忕殑闂鏄紝杩炴帴鐨勪粠绔欒秺澶氾紝绛夊緟浠庣珯瀹屾垚鍒濆鍖栫殑寤舵椂鏃堕棿瓒婇暱锛岃鏈嬪弸浠牴鎹嚜宸辫繛鎺ョ殑浠庣珯鏁伴噺璋冩暣寤舵椂鏃堕棿銆

    瀵逛簬鏂板缓宸ョ▼锛岃浣跨敤瀹氭椂鍣═ON闇瑕佷负宸ョ▼娣诲姞鐩稿簲鐨凜ODESYS搴擄紝璇ュ姛鑳戒綅浜庡簱Standard涓傚湪璁惧鏍戜腑鍙屽嚮鈥滃簱绠$悊鍣ㄢ濓紝鍦ㄦ墦寮鐨勯〉闈腑鐐瑰嚮宸︿笂瑙掔殑鈥滄坊鍔犲簱鈥濓紝鎵惧埌涓嬮潰绾㈡涓殑Standard搴撳苟鍔犲叆銆傚綋浣犱笉鐭ラ亾鎵鐢ㄥ嚱鏁板叿浣撳湪鍝釜搴撲腑鐨勬椂鍊欙紝鍙互鍦ㄢ滄坊鍔犲簱鈥濇墦寮鐨勯〉闈腑鐩存帴杈撳叆鍑芥暟鎴栧姛鑳藉潡鍚嶏紝濡傛灉鍚嶅瓧娌¢敊鐨勮瘽鍖呭惈璇ュ嚱鏁扮殑搴撳ぇ姒傜巼鏄帓鍦ㄧ涓浣嶇殑锛岀洿鎺ラ夋嫨鍔犲叆鍗冲彲銆傚鏋滆繖鏍锋壘涓嶅埌锛岃繕鍙互鍒癈ODESYS鐨勫湪绾垮府鍔╀腑鍘绘悳绱€

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-10.png

    鐢变簬鏁翠釜浣胯兘杩囩▼瀵规柊鎵嬫潵璇存瘮杈冨鏉傦紝杩欓噷鍏堟彁渚涗竴涓娇鑳戒唬鐮佺粰澶у浣跨敤锛屽叿浣撶殑娴佺▼鍦ㄤ互鍚庣殑鏂囩珷涓細璇︾粏鐨勪粙缁嶃備娇鑳芥祦绋嬬殑浠g爜濡備笅锛

    FOR i := 0 TO AxisNum-1 DO

           IF bSetServOn THEN //浣胯兘

                  IF (UINT_TO_DWORD(g_Axis.Statusword) AND 16#000F) = 16#0008 THEN

                         g_Axis.targetPosition := g_Axis.ActPosition;

                  ELSIF ((UINT_TO_DWORD(g_Axis.Statusword) AND 16#004F) = 16#0040) THEN

                         g_Axis.targetPosition := g_Axis.ActPosition;

                         curPos := g_Axis.ActPosition; //璁板綍鍒濆浣嶇疆

                         g_Axis.iState := 1; //Switch on disabled

                  ELSIF (UINT_TO_DWORD(g_Axis.Statusword) AND 16#002F) = 16#0021 THEN

                         g_Axis.iState := 2; //Ready to Switch on

                  ELSIF (UINT_TO_DWORD(g_Axis.Statusword) AND 16#002F) = 16#0023 THEN

                         g_Axis.iState := 3; //Switch on

                  ELSIF (UINT_TO_DWORD(g_Axis.Statusword) AND 16#003F) = 16#0037 THEN

                         g_Axis.iState := 4; //Servo on

                  END_IF

                  CASE g_Axis.iState OF

                         0: g_Axis.Controlword := 128; //reset

                         1: g_Axis.Controlword := 6;      //涓婄數

                         2: g_Axis.Controlword := 7;

                         3: g_Axis.Controlword := 15;

                         4: bRegulatorState := TRUE;

                  END_CASE

           ELSE //鎺変娇鑳

                  CASE g_Axis.iState OF

                         3,4:

                                g_Axis.Controlword := 7;

                                g_Axis.iState := 5;

                         5:

                                g_Axis.Controlword := 6;

                                g_Axis.iState := 6;

                         6:

                                IF (UINT_TO_DWORD(g_Axis.Statusword) AND 16#0023) = 16#0023 THEN

                                       g_Axis.Controlword := 4;

                                       g_Axis.iState := 7;

                                END_IF

                         7:

                                bRegulatorState := FALSE;

                                g_Axis.iState := 0;

                                //bSetServOn:=FALSE;

                                bServOndone:=FALSE;

                  END_CASE

           END_IF

    END_FOR

    3.浼烘湇杩愬姩鎺у埗

    褰撲己鏈嶈繘鍏ヤ娇鑳界姸鎬佸悗锛屽浼烘湇鐨勬帶鍒朵富瑕佹槸缁欐瘡涓己鏈嶅懆鏈熸у彂閫佺洰鏍囦綅缃紝骞舵娴嬩己鏈嶆槸鍚﹀瓨鍦ㄩ敊璇傜敱浜庨噰鐢ㄧ殑鏄粷瀵瑰间己鏈嶏紝鍥犳涓嶉渶瑕佹墽琛屽洖闆躲備笅闈㈢殑绋嬪簭瀹炵幇浜嗕己鏈嶆鍙嶈浆鐨勮繃绋

    绋嬪簭濡備笅锛

    PROGRAM main

    VAR

           i                    : INT;

           delay             : TON;

           bSetServOn   : BOOL   :=FALSE; //寮濮嬩娇鑳芥爣蹇

           bServOndone : BOOL;                       //鎵鏈変己鏈嶄娇鑳藉畬鎴愭爣蹇

           AxisNum       : INT:=2;

           g_Axis           : ARRAY [0..1] OF MotorAxis; //瀹炶酱瀹氫箟

           HMI_bServon : BOOL:=FALSE;    //浣胯兘

           HMI_uiErrID   : INT:=0;               //鎶ラ敊鏍囧織

           bRegulatorState :ARRAY[0..1] OF BOOL:=[2(FALSE)];      //浣胯兘鎴愬姛

           curPos           : ARRAY[0..1] OF DINT; //璧风偣浣嶇疆

           cmdPos         : INT:=150; //鍛戒护浣嶇疆

           cnt                : DINT:=0;

    END_VAR

    //浠ヤ笅涓虹▼搴忛儴鍒

    //姝e弽杞祴璇

    IF bServOndone THEN

           FOR i:=0 TO AxisNum-1 DO

                  IF bRegulatorState THEN

                         IF    g_Axis.targetPosition-curPos>500000 THEN

                                cmdPos:=-100;

                         ELSIF g_Axis.targetPosition-curPos<-500000 THEN

                                cmdPos:=100;

                         END_IF

                         g_Axis.targetPosition:=g_Axis.targetPosition+cmdPos;

                  END_IF

           END_FOR

           cnt:=cnt+1;

           IF (cnt MOD 49999)=0 THEN

                  HMI_bServon:=NOT HMI_bServon;

           END_IF

    END_IF

    //浼烘湇閿欒妫娴

    IF g_Axis[0].Errorcode<>0 OR g_Axis[0].Errorcode<>0 THEN

           HMI_uiErrID := 1;

    END_IF

    浜屻佹荤嚎浼烘湇閰嶇疆

    浼烘湇鎺у埗绋嬪簭瀹炵幇鍚庯紝闇瑕佸皢鎺у埗绋嬪簭涓殑鍙橀噺涓庝己鏈嶇殑鎺у埗淇″彿瀵瑰簲璧锋潵锛岃繖涓繃绋嬮氬父绉颁负鏄犲皠锛屾案鍥轰繚璇佹瘡涓懆鏈熷彂閫佺粰浼烘湇鐨勭洰鏍囦綅缃兘澶熶紶閫掔粰浼烘湇骞朵粠浼烘湇璇诲彇鐘舵佸拰鏁版嵁銆傛槧灏勭殑鏂瑰紡鍜屽墠闈O妯″潡鐨勬槧灏勭被浼笺

    鍙屽嚮璁惧鏍戜腑鐨勪己鏈嶆ā鍧椻淗CFA_X3E_Servo_Driver鈥濓紝鍦ㄦ墦寮鐨勭獥鍙d腑閫夋嫨鈥淓therCATI/O鏄犲皠鈥濓紝鐒跺悗鍦ㄥ彸杈圭獥鍙d腑閫夋嫨鈥淐otrol Word鈥濆搴旂殑鍙橀噺锛屽弻鍑讳笅鍥炬き鍦嗙孩妗嗕腑鐨勭┖鐧藉锛屽湪鍏跺彸杈逛細鍑虹幇鈥溾︹濄

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-11.png

    鐐瑰嚮杩欎釜鐪佺暐鍙蜂細寮瑰嚭涓嬪浘绐楀彛銆傚湪璇ョ獥鍙d腑閫夋嫨鈥淎pplication脿main脿g_Axis鈥濓紝鍗冲墠闈㈠湪main绋嬪簭涓畾涔夌殑浠h〃浼烘湇鎺ュ彛鐨勫彉閲忋

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-12.png

    瀹屾垚鍚庤繕闇瑕佸湪g_Axis鍚庨潰澧炲姞鈥淸0]鈥濓紝琛ㄧず鏁扮粍鐨勭0涓粨鏋勫搴旇澶囨爲涓殑绗竴涓己鏈嶃傚叾浣欑殑鍙橀噺鎸夌収鍚屾牱鐨勬柟寮忎竴涓瀵瑰簲锛屽畬鎴愬悗濡備笅鍥炬墍绀猴細

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-13.png

    鍚屾牱鐨勬柟寮忓畬鎴愮浜屼釜浼烘湇鐨勬帴鍙e彉閲忕殑鏄犲皠锛岀浜屼釜浼烘湇瀵瑰簲鐨勬帴鍙e彉閲忔槸g_Axis[1]銆

    杩欐牱灏卞畬鎴愪簡main绋嬪簭涓殑浼烘湇鎺ュ彛鍙橀噺g_Axis涓庝己鏈嶉┍鍔ㄧ殑瀵瑰簲銆傚悗缁湪绋嬪簭涓g_Axis鐨勬搷浣滀細鐢辨荤嚎浠诲姟鈥淓therCAT_Task鈥濆懆鏈熸х殑灏嗘洿鏂板埌浼烘湇骞朵粠浼烘湇璇诲彇鐩稿簲鐨勭姸鎬侊紝鐩墠涓荤珯涓庝己鏈嶇殑閫氫俊鍛ㄦ湡涓4ms銆

    涓夈佽繍琛屾祴璇

    浠婂ぉ鍐欏埌杩欓噷绐佺劧鍙戠幇鎵嬪ご灞呯劧娌℃湁鍚堜俊鐨勬帶鍒跺櫒浜嗭紝鍙湁涓涓宸濈殑Q0锛岃繖鏄釜浠涔堟儏鍐碉紵闅鹃亾瑕佹妸鍓嶉潰鐨勫浘鍜屾枃绔犻兘閲嶆柊鏉ヤ竴閬嶏紙浣滆呬竴鍓弧鑴戣闂彿鐨勫偦鐩革級锛熸兂鎯宠繕鏄畻浜嗗惂銆傝瀹炶瘽锛岃繍琛屾祴璇曞叾瀹炰篃娌℃湁浠涔堜笢瑗垮彲鐪嬬殑锛屽氨鏄2涓數鏈烘潵鍥炵殑杞瑍~~~

    涓轰簡璇佹槑杩欎釜绋嬪簭鏄兘鐢ㄧ殑锛屼笅闈㈢敤绂惧窛鐨凲0鎺у埗鍣ㄦ潵璺戜竴涓嬶紝椤轰究濉竴涓嬪墠闈㈡病鏈夊叿浣撳啓鎬庝箞杩炴帴鎺у埗鍣ㄧ殑鍧戙

    1.杩炴帴鎺у埗鍣

    绂惧窛鐨凲0鎺у埗鍣ㄧ殑IP鍦板潃涓192.168.88.100锛屽洜姝よ繛鎺ユ帶鍒跺櫒鐨勪笂浣嶆満IP蹇呴』鍦ㄥ悓涓缃戞鍐咃紝杩欓噷璁剧疆涓192.168.88.101銆傜劧鍚庡湪宸ョ▼鏄澶囨爲涓弻鍑烩淗CQ0_1200_D鈥濓紝鍦ㄦ墦寮鐨勬帶鍒跺櫒璁惧椤甸潰涓紝閫夋嫨鈥滈氳璁剧疆脿鎵弿缃戠粶鈥濓紝鍦ㄤ箣鍚庡脊鍑虹殑绐楀彛涓紝鐐瑰彸杈圭殑鈥滄壂鎻忕綉缁溾濇寜閽紝鍙璁剧疆鍜岃繛鎺ユ纭紝灏变細鍦℅ateway涓嬮潰鏄剧ず褰撳墠杩炴帴鐨勬帶鍒跺櫒銆

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-14.png

    閫夋嫨璇ユ帶鍒跺櫒鍚庯紝鍥炲埌璁惧椤甸潰鑳藉鐪嬪埌璁惧鍥剧墖涓婁細鍑虹幇缁胯壊鍦嗙偣锛岃〃鏄庢帶鍒跺櫒宸茬粡杩炴帴鎴愬姛銆

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-15.png

    鍦ㄨ繛鎺ョ宸濈殑EtherCAT鎬荤嚎浼烘湇杩囩▼涓紝杩樻湁涓涓渶瑕侀厤缃殑鍐呭锛岃繖灏辨槸鎸囧畾鈥淓therCAT_Master_SoftMotion鈥濅娇鐢ㄥ摢涓綉缁滐紝鍗虫寚瀹歁AC鍦板潃锛屽涓嬪浘鎵绀恒傞渶瑕侀夋嫨鍏朵腑鍚嶄负鈥渆cat1鈥濈殑杩欎釜MAC鍦板潃銆

    CODESYS寮鍙戞暀绋4-鎬荤嚎浼烘湇鎺у埗-16.png

    涔熷彲浠ュ湪璇ラ厤缃〉鐩存帴閫夋嫨鈥滄寜鍚嶇О閫夋嫨缃戠粶鈥濓紝缃戠粶鍚嶇О濉渆cat1鈥濄傝繖閮ㄥ垎姣忎釜鍏徃鐨勬帶鍒跺櫒鍙兘鏈夋墍鍖哄埆锛岄渶瑕佹牴鎹搧鐗屾潵鍋氱浉搴旂殑璁剧疆銆

    2.杩愯绋嬪簭

    棣栧厛鎸塅11缂栬瘧绋嬪簭锛屽湪纭娌℃湁閿欒鐨勬儏鍐典笅鐧诲綍鎺у埗鍣紙鑿滃崟鏍忊滃湪绾棵犵櫥褰曞埌鈥濓級锛屽苟涓嬭浇绋嬪簭銆傜紪绋嬬幆澧冧細鎻愮ず鏄惁涓嬭浇鏈鏂颁唬鐮侊紝褰撶劧鏄夋嫨鏄紝涓嶇劧鎴戜滑瑕佸共鍟婏紵绋嬪簭涓嬭浇瀹屾垚鍚庯紝鎺у埗鍣ㄩ粯璁ゆ槸鍋滄杩愯鐨勭姸鎬併傜劧鍚庢寜F5鍚姩绋嬪簭銆傜敱浜庢病鏈夊閮ㄨ緭鍏ヤ俊鍙凤紝杩欓噷鍙互鐩存帴浣跨敤寮哄埗鏂瑰紡灏咹MI_bServon缃负TRUE锛岃绋嬪簭鑳藉寮濮嬭繍琛屻

    杩愯娴嬭瘯鎰熻濂藉儚娌′粈涔堝彲鍐欑殑锛屽洜涓虹▼搴忕殑鍔熻兘寮鍙戝拰娴嬭瘯瀹為檯涓婂氨鏄竴涓弽澶嶇殑杩唬杩囩▼锛岄渶瑕佸ぇ瀹惰嚜宸遍氳繃鍙嶅瀹炶返鏉ヤ粩缁嗕綋浼殈~~銆

    褰撲綘鎶婅繖涓繃绋嬮噸澶2^10娆′互鍚庯紝灏辫兘娣卞埢浣撲細涓轰粈涔堢▼搴忓憳琚О涓虹爜鍐溾︹o^銆

    鍥涖佺粨璁

    鎬荤嚎浼烘湇鐨勪娇鐢ㄧ浉瀵逛簬IO鏉ヨ锛屼笉绠℃槸閰嶇疆杩樻槸鎺у埗閮借鏇村姞澶嶆潅涓浜涖備笉杩囦竴姝ヤ竴姝ュ鍒扮幇鍦紝鏈夋病鏈夊彂鐜板緢澶氭楠ゅ叾瀹為兘鏄被浼肩殑銆傚彧瑕佸闇瑕佺粡甯镐娇鐢ㄧ殑鍔熻兘鏈変簡鍩烘湰鐨勬蹇碉紝鐢ㄨ捣鏉ュ氨鎰熻娌¢偅涔堥毦浜嗐傚疄闄呬笂锛孋ODESYS寮鍙戠幆澧冪殑澶ч儴鍒嗗姛鑳藉浜庢垜浠潵璇撮兘鏄共鎵伴」锛屽垰寮濮嬬殑鏃跺欎笉瑕佺瀹冨氨濂戒簡^-^銆傛伃鍠滃悇浣嶅張绂绘垚涓虹爜鍐滆繎浜嗕竴姝ワ紝缁х画鍔犳补~~~
    鈥斺斺斺斺斺斺斺斺斺斺斺斺斺斺斺
    鐗堟潈澹版槑锛氭湰鏂囦负CSDN鍗氫富銆--鑾悕--銆嶇殑鍘熷垱鏂囩珷锛岄伒寰狢C 4.0 BY-SA鐗堟潈鍗忚锛岃浆杞借闄勪笂鍘熸枃鍑哄閾炬帴鍙婃湰澹版槑銆
    鍘熸枃閾炬帴锛歨ttps://blog.csdn.net/halps/article/details/128357000
    +10
    涓嶈禐涓涓紵
    鎵撹祻榧撳姳涓涓嬶紒
    鍥炲

    浣跨敤閬撳叿 涓炬姤

    鎮ㄩ渶瑕佺櫥褰曞悗鎵嶅彲浠ュ洖甯 鐧诲綍 | 绔嬪嵆娉ㄥ唽 鏂版氮寰崥鐧婚檰

    鏈増绉垎瑙勫垯

    椤堕儴qrcode搴曢儴
    鍏虫敞閰峰痉缃戣闃呭彿锛岃幏鍙栨洿澶氳祫璁紒

    QQ|灏忛粦灞|鎵嬫満鐗|Archiver|閰峰痉璁哄潧 ( 鑻廔CP澶16065247鍙-1 )|缃戠珯鍦板浘

    GMT+8, 2024-11-23 20:48 , Processed in 0.160050 second(s), 59 queries .

    閰峰痉缃

    © 2001-2013 Hicodesys. 鎶鏈敮鎸 by 閰峰痉缃

    蹇熷洖澶 杩斿洖椤堕儴 杩斿洖鍒楄〃