機能
通信するスレーブデバイスと接続するCOMポートを指定し、ボーレート、パリティ等を設定し、Modbus/RTUとして初期化を行います。
書式
ctx = modbus_new_rtu( device , baud , parity , data_bit , stop_bit )
引数
device [ C: char * ] [ Python:ctypes.c_char_p ]
Modbusスレーブと通信するシリアルポート(COMポート)を指定して下さい。
baud [ C: int ] [ Python: ctypes.c_long ]
ボーレートを指定して下さい。
parity [ C: char ] [ Python: ctypes.c_char ]
パリティを以下で指定下さい。
定義 |
意味 |
N |
パリティ無し |
E |
偶数パリティ |
O |
奇数パリティ |
data_bit [ C: int ] [ Python: ctypes.c_int ]
データビットを5-8で指定下さい。
stop_bit [ C: int ] [ Python: ctypes.c_int ]
ストップビットを1-2で指定下さい。
戻り値
ctx [ C: modbus_t * ] [ Python: ctypes.POINTER(modbus_t) ]
成功時はmodbus_t構造体のポインタアドレスが入ります。
失敗時にはNULLが入ります。errnoには下記のエラーが格納されます。
定義 |
意味 |
EINVAL |
引数が不正です。 |
ENOMEM |
メモリ不足です。 |
説明
通信するスレーブデバイスと接続するCOMポートを指定し、ボーレート、パリティ等を設定し、Modbus/RTUとして初期化を行います。
使用例
COM1ポート、ボーレート 115200bps、パリティ無し、データビット8、ストップビット1を指定する例です。
C |
modbus_t *ctx; ctx = modbus_new_rtu("/dev/ttyUSB0", 115200, 'N',
8, 1); |
Python |
ctx = ctypes.POINTER(modbus_t) ctx = modbus_tcp.modbus_new_rtu("/dev/ttyUSB0", 115200,
'N', 8, 1) |