您現在的位置是:首頁 > 網路遊戲首頁網路遊戲
三菱Q系列PLC,用Modbus通訊方式控制FX5UPLC執行
- 2023-01-30
三菱plc輸入電壓是多少伏
目標要求:
三菱序列通訊模組QJ71C24N跟FX5U PLC進行Modbus通訊,讀FX5U的輸入點,寫入FX5U輸出點訊號,寫入資料到FX5U,讀FX5U裡的資料。
一,硬體配置:
1,主站PLC配置:
基板:Q35B。
電源:Q61P。
CPU:Q06H。
輸入:QX40。
輸出:QY41P。
序列通訊模組:
QJ71C24N。
2,從站PLC:FX5U-32M。
3,RS485通訊接線:
SDA一一一一一一一→SDA
| |
RDA RDA
| |
□←終端電阻110→ □
| |
SDB一一一一一一一→SDB
| |
RDB RDB
SG←一一接遮蔽層一→ SG
二,QPLC軟體設定:
1,IO設定:
導航→工程→引數→PLC引數→I/O分配設定→模組新增→模組型別:輸入模組:QX40→輸出模組:QY41P→序列通訊/調變解調器介面模組→模組型號QJ71C24N→設定結束 。佔32點,0030~001F。
2,通訊格式設定:
導航→工程→智慧功能模組→0030:QJ71C24N→開關設定:
選擇通道2(CH2),從下往上設定,先設定通訊協議→再設定波特率9600bps→設定更改允許→RUN中寫入允許→和校驗程式碼無→停止位1→偶數校驗→校驗位有→資料位8→動作設定獨立→確定。
導航→工程→智慧功能模組→0030:QJ71C24N→各種控制指定:
通訊控制指定用→CH2,1:位元組單位。
通訊控制指定用→CH2,1:響應返回禁止(半雙工)。
3,建立協議:
工具→通訊協議支援功能→序列通訊模組:
MODBUS常用功能碼:
01,讀線圈狀態(位)。
02,讀輸入狀態(位)。
03,讀一或多個保持暫存器(字)。
04,讀一或多個暫存器(字)。
05,強置單線圈(位)。
06,把字寫入保持暫存器。
08,回送診斷校驗報告從站。
15,強置多線圈。
16,預置多個連續保持暫存器。
分別建立2、3、15、6,四個協議:
新建→協議號新增→型別:通訊協議庫→製造商:Schneider Electric→型號:MODBUS→協議名(功能碼):02讀輸入狀態→確定。
刪除ERR接收:右擊協議號→更改為可編輯協議→是→右擊ERR資料包名→刪除→是。
新增協議:點選新增→型別:通訊協議庫→製造商:Schneider Electric→型號:MODBUS→協議名(功能碼):03讀一或多個保持暫存器(字)→確定。
同樣也要刪除ERR接收:右擊協議號→更改為可編輯協議→是→右擊ERR資料包名→刪除→是。
新增協議:點選新增→型別:通訊協議庫→製造商:Schneider Electric→型號:MODBUS→協議名(功能碼):15強置多線圈→確定。
同樣也要刪除ERR接收:右擊協議號→更改為可編輯協議→是→右擊ERR資料包名→刪除→是。
新增協議:點選新增→型別:通訊協議庫→製造商:Schneider Electric→型號:MODBUS→協議名(功能碼):06把字寫入保持暫存器→確定。
同樣也要刪除ERR接收:右擊協議號→更改為可編輯協議→是→右擊ERR資料包名→刪除→是。
變數設定:
右擊協議號1→軟元件批次設定:設定協議號範圍指定:1-4→起始軟元件號:如D0。→是→確定。
點選工具欄紅色箭頭圖示把協議寫入模組。
變數配置元素名解釋:
“02RD讀資料”的傳送包變數:
Slave Address:從站地址。D0
Function Code:功能程式碼。02
Starting Address:開始地址。D1
Quantity of Inputs:輸入點數量D2
Error Check:錯誤檢查。
“02RD讀資料”的接收包變數:
Slave Address:從站地址。D3
Function Code:功能程式碼。02
Byte Count:位元組長度。
Input Status:輸入狀態值。D4,D5~129
Error Check:錯誤檢查。
D5。0~D5。F。→返回狀態,16個輸入點。
“03RD讀資料”的傳送包變數:
Slave Address:從站地址。D130
Function Code:功能程式碼。03
Starting Address:開始地址。D131
Quantity of Registers:暫存器數D132
Error Check:錯誤檢查。
“03RD讀資料”的接收包變數:
Slave Address:從站地址。D133
Function Code:功能程式碼。03
Byte Count:位元組長度。
Register Value:暫存器數值。D134,D135~259←讀的數量
Error Check:錯誤檢查。
“15,WR寫資料”的傳送包變數:
Slave Address:從站地址。D260
Function Code:功能程式碼。0F
Starting Address:開始地址。D261
Quantity of Outputs:輸出點數D262
Byte Count:位元組長度。1位元組單位。
Outputs Value:輸出點數值。D263長度(位元組數),D264(資料值如HFFFF)~D388
Error Check:錯誤檢查。
“15,WR寫資料”的接收包變數:
Slave Address:從站地址。D389
Function Code:功能程式碼。0F
Starting Address:開始地址。D390
Quantity of Outputs:輸出數值。D391
Error Check:錯誤檢查。
“06WR寫資料”的傳送包變數:
Slave Address:從站地址。D392
Function Code:功能程式碼。06
Register Address:暫存器地址。D393
Register Value:暫存器數值。D394
Error Check:錯誤檢查。
“06WR寫資料”的接收包變數:
Slave Address:從站地址。D395
Function Code:功能程式碼。06
Register Address:暫存器地址。D396
Register Value:暫存器數值。D397
Error Check:錯誤檢查。
FX5UPLC設定:
開啟GX Works3軟體,新建FX5UCPC工程。
導航→引數→FX5UCPC→模組引數→485串列埠:
基本設定:
設定專案:
協議格式:MODBUS_RTU通訊。
奇偶校驗:偶數。
停止位:1bit。
波特率:9600bps。
固有設定:
設定專案:
本站號:1。
MODBUS軟元件分配:
設定專案:
詳細設定:
線圈Y0,起始地址0,分配點數1024。
輸入X0,起始地址0,分配點數1024。
輸入暫存器,起始地址0,分配點數0。
保持暫存器D0,起始地址0,分配點數8000。
起始地址值為0。
程式編寫:
指令解釋:
G。CPRTCL Un n1 n2 (S)(D)。
GP。CPRTCL Un n1 n2 (S)(D)加沿。
Un:模組的起始輸入輸出訊號,如U03。
n1:通道選擇1:CH1,2:CH2。
n2:協議的連續執行數(1~8)。
S:儲存控制資料的軟元件起始編號。
S+0:執行結果,0正常,0以外錯誤碼。
S+1:執行協議數結果,1~8。
S+2~9:執行協議編號指定。
S+10~17:校驗一致接收資料包編號。
D:執行完成時置為1的位軟元件偏號。
線路跟蹤:
點選工具欄“序列通訊模組的線路跟蹤圖示”→選擇模組→選擇通道→開始跟蹤。