2016-01-27 83 views
0

我正在嘗試在Digi模塊中實現Modbus RTU主站連接9210設備。爲此我使用libmodbus庫。如何在Digi模塊中實現Modbus RTU主站連接我9210

什麼是設備名稱,我必須在NetO中給與我的本地計算機連接。

我現在用的

ctx = modbus_new_rtu("COM3", 19200, 'N', 8, 1); 
modbus_set_slave(ctx, SERVER_ID); 

/* TCP */ 
// ctx = modbus_new_tcp("10.0.0.66", 502); 

modbus_set_debug(ctx, TRUE); 

if (modbus_connect(ctx) == -1) { 
    fprintf(stderr, "Connection failed: %s\n", 
       modbus_strerror(errno)); 
    modbus_free(ctx); 
    return -1; 
} 

但其一直說連接失敗。我也嘗試過「/ dev/USB0」和「/ dev/ttyS0」。我在本地計算機上安裝了Modbus從站,以便使用Module客戶端進行測試。

+0

嘗試使用另一個tty,如'ttyS3',如果已安裝。當然不能使用發佈的代碼「COM3」'USB0'。 – LPs

回答

0

我修復了我的錯誤。 Digi模塊中有一個API問題,同時打開默認端口「/ com/0」。

也必須稍微改變libmodbus庫才能使用Digi,因爲它使用的是設備不支持的標誌。