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