產(chǎn)品簡介 | 快速開始 | 通訊設(shè)置 | 內(nèi)部寄存器 |
將MODBUS RTU協(xié)議轉(zhuǎn)換為MODBUS TCP | 將任意協(xié)議轉(zhuǎn)換為MODBUS TCP | CAN通信 | 自由口編程范例 |
5.TG900P與其它設(shè)備通信
TG900P與從站通信支持MODBUS RTU協(xié)議、自由口編程和CAN。騰控提供固件庫TCNETLIB以支持上述通信。固件庫TCNETLIB包括Modbus、自由口編程、校驗和、CAN等指令。編程前需手動添加固件庫TCNETLIB。
TCMODBUS通訊包括建立連接指令TCMODBUS_RUN和讀寫指令TCMODBUS共2個指令。使用TCMODBUS指令通信編程時,首先打開TG900P的串口并設(shè)置通訊格式,然后發(fā)送讀寫命令。
自由口通訊包括打開串口PORT_OPEN、寫串口PORT_WRITE和讀串口PORT_READ共3個指令。自由口通信編程時,首先打開TG900P的串口,然后發(fā)送讀或?qū)懨睢?/p>
騰控提供了COMM_CRC、COMM_FCS、COMM_XOR三個指令分別用于生成CRC、FCS和XOR校驗。
CAN通信包括打開CAN口、寫CAN口和讀CAN口三個指令。先用CAN_Open指令打開TG900P的CAN口,如果需要向CAN總線網(wǎng)絡(luò)中的某個CAN設(shè)備發(fā)送數(shù)據(jù),用CAN_Write指令;如果需要接收CAN總線網(wǎng)絡(luò)中某個設(shè)備的數(shù)據(jù),就用CAN_Read指令。
5.1 將MODBUS RTU協(xié)議轉(zhuǎn)換為MODBUS TCP
TG900P的3個串口支持MODBUS RTU協(xié)議,通過騰控提供的MODBUS功能塊簡單編程,將支持MODBUS RTU協(xié)議的設(shè)備數(shù)據(jù)采集到TG900P中,最終通過MODBUS TCP被上位機獲取。
此例通過默認LD語言實現(xiàn)協(xié)議轉(zhuǎn)換。
(1)參考“快速開始”新建工程并設(shè)置工程的IP地址,找到“工程”中的“邏輯POU”,雙擊“main”,進入程序編輯界面。
。2)添加固件庫TCNETLIB
固件庫添加完成后,可在編程軟件右側(cè)的編程向?qū)е锌吹焦碳䦷煳募䦅A。
。3)插入功能塊
在右側(cè)編輯向?qū)CNETLIB組中找到TCMODBUS_RUN和TCMODBUS指令,依次拖拽到編程界面中,“確定”,建立功能塊。
雙擊功能塊的藍色管腳,設(shè)置各變量。
輸入引腳 | 數(shù)據(jù)類型 | 描述 |
EN | BOOL | 為TRUE時,打開并獨占此串口并建立Modbus連接;為FALSE時,關(guān)閉此串口 |
Port | BYTE | 要打開TG900P的串口號,可選值:1、2、3,分別對應(yīng)COM1、COM2、COM3口 |
Setting | STRING | 通訊參數(shù),要與從站的通訊格式一致,如‘19200,1,E,8‘是指19200 BPS,偶校驗、8位數(shù)據(jù)位、1位停止位 注:字符串要在英文狀態(tài)下輸入 |
輸出引腳 | 數(shù)據(jù)類型 | 描述 |
ENO | BOOL | 輸出使能 |
DONE | BOOL | 為 1 時表示通訊初始化完成,為 0 時表示未完成 |
Errmsg | WORD | 錯誤信息,0 表示無錯,1 表示出錯 |