花澤神寂
級別: 正式會員
![]() |
找了好幾天也沒找到相關答案,請問在不使用 QJ71MT91 這個模塊的前提下,三菱Q系列PLC自帶的內置以太網如何做modbus TCP通信的通信,兩個Q系列的怎么寫主站從站程序,參數如何設定?最好給程序讓大家一起學習學習 高手在人間,求大神們的解答,好人一生平安 |
---|---|
|
yzdz66
級別: 探索解密
![]() |
wHeadHolding:=0;(*寫入字首地址*) WritePoints:=10;(*寫入多少個字*) wSedDateSet[0]:=20;(*寫入多少個字節*) wReHeadHolding:=10;(*讀取字首地址*) ReadPoints:=10; wReDataSet[0]:=20; wECPRTCLDateSet[2]:=1; (*指定第1個執行的協議的協議編號 ; *) wECPRTCLDateSet[3]:=2; (*指定第2個執行的協議的協議編號 ; *) (*----------------------數據發送部分--------------------------*) (*端口打開*) SP_SOCOPEN(bOpenStatus AND NOT bOpenStatusOld AND NOT SD1282.1 AND(*打開完成信號*) NOT SD1284.1 AND(*打開請求信號*) SD1288.A , (*存儲內置以太網端口的連接狀態 1:與集線器或對象設備連接中*) U0, k2,wSocOpenSet , bSocOpenComplete); IF bSocOpenComplete[0] THEN bOpenNormalComplete:=NOT bSocOpenComplete[1]; bOpenAbnormaComplete:=bSocOpenComplete[1]; ELSIF bCloseStatus THEN bOpenNormalComplete:=FALSE; bOpenAbnormaComplete:=FALSE; END_IF; (*執行協議發送*) SP_ECPRTCL(bSedStart AND SD1282.1 , U0 , K2 , K2 , wECPRTCLDateSet,bECPRTCLComplete ); (*執行 SP_ECPRTCL 命令*) IF bSedStart THEN IF bECPRTCLComplete[0] THEN bSedStart :=FALSE; END_IF; ELSE IF SD1282.1 THEN bSedStart :=TRUE; END_IF; END_IF; (*關閉端口*) SP_SOCCLOSE(bCloseStatus AND NOT bCloseStatusOLD ,"U0", k2,wSocCloseSet,bSocCloseComplete ); IF wECPRTCLDateSet[1]<>0 THEN wErrorCode:=wECPRTCLDateSet[1]; ELSE wErrorCode:=0; END_IF; bSedStatusOld:=bSedStatus ; SM413OLD:=SM413; bOpenStatusOld:=bOpenStatus; bCloseStatusOLD:=bCloseStatus; |
---|---|
|