USB-PC104シリーズ リレー出力ユニット Pythonサンプルプログラム

ヘルプファイルにPythonのサンプルコードは記載しておりません。また、ソフトウェアパックにもPythonのサンプルプログラムは含まれておりませんので、Pythonで使用される場合は以下を参考にしてください。

サンプルプログラム

import sys
import ctypes

# エラーコード(戻り値)
YDU_RESULT_SUCCESS = 0          # 正常終了

# YduOpen
YDU_OPEN_NORMAL = 0             # 通常オープン
YDU_OPEN_OUT_NOT_INIT = 0x01    # 出力初期化しない

# DLL
ydu = ctypes.windll.Ydu

# IDが0に設定されているRLY-24A-Uをオープンします
id = ctypes.c_ushort(0)
result = ydu.YduOpen(id, b'RLY-24A-U', YDU_OPEN_NORMAL)
if result != YDU_RESULT_SUCCESS:
    print('オープンできません')
    sys.exit()

# RY4の出力
output_data = ctypes.c_ubyte(1)
result = ydu.YduRlyOutput(id, ctypes.byref(output_data), 3, 1)

# RY1-10の出力
output_data = (ctypes.c_ubyte * 10)(1, 0, 1, 0, 1, 1, 0, 0, 1, 1)
result = ydu.YduRlyOutput(id, ctypes.byref(output_data), 0, 10)

# RY5の出力状態
output_status = ctypes.c_ubyte()
output_no = ctypes.c_ushort(4)
result = ydu.YduRlyOutputStatus(id, ctypes.byref(output_status), output_no, 1)
if result == YDU_RESULT_SUCCESS:
    print('RY{}: {}'.format(output_no.value + 1, output_status.value))

# RY1-10の出力状態
output_status = (ctypes.c_ubyte * 10)()
result = ydu.YduRlyOutputStatus(id, ctypes.byref(output_status), 0, 10)
if result == YDU_RESULT_SUCCESS:
    for i, d in enumerate(output_status):
        print('RY{}: {}'.format(i + 1, d))

# クローズ
result = ydu.YduClose(id)

デジタル入出力のサンプルプログラム

関連情報

製品情報
ヘルプファイル(ソフトウェア説明書)