「linux-gpib」というパッケージを使用してUSB-GPIBアダプタに接続しようとしています。エラーなしでドライバをインストールし、デバイスを接続しました。
PythonにはC APIのラッパーがあるので、その関数を使用してデバイスを開こうとしましたが、エラーが発生しました。
libgpib: ibBoardOpen failed to open device file /dev/gpib0
/ devを確認しましたが、デバイスが存在しないことがわかりました。 「usb_gpib」というファイルが存在します。したがって、私のデバイスが何らかの方法でシステムに登録されているようですが、正しい/ devファイルは生成されません。わかりませんが、 "usb_gpib"ファイルが私が探しているファイルである可能性があり、何らかの理由で名前が間違っています。開発ファイルの命名方法はどのように決定されますか?
いくつかの追加の検索の最後に/etc/udev/rules.d/ディレクトリを見つけました。
次の行を含むGPIB用の.rulesファイルがあります。
KERNEL=="gpib[0-9]*", ACTION=="add", MODE="660", GROUP=="plugdev"
生成されたデバイスが次のように言われているようです。しなければならないgpib0ですが、まだそうではありません。
要求どおりにデバイスを2回取り外して再接続すると、「udevadm monitor」が出力される内容は次のとおりです。
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
UDEV [32.214427] add /devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3 (usb)
ACTION=add
BUSNUM=001
DEVLINKS=/dev/usb_gpib
DEVNAME=/dev/bus/usb/001/004
DEVNUM=004
DEVPATH=/devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3
DEVTYPE=usb_device
ID_BUS=usb
ID_MODEL=702b
ID_MODEL_ENC=702b
ID_MODEL_FROM_DATABASE=GPIB-USB-B
ID_MODEL_ID=702b
ID_REVISION=0001
ID_SERIAL=3923_702b
ID_USB_INTERFACES=:ffffff:
ID_VENDOR=3923
ID_VENDOR_ENC=3923
ID_VENDOR_FROM_DATABASE=National Instruments Corp.
ID_VENDOR_ID=3923
MAJOR=189
MINOR=3
PRODUCT=3923/702b/1
SEQNUM=1077
SUBSYSTEM=usb
TYPE=255/255/255
USEC_INITIALIZED=941557
UDEV [32.228951] add /devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0 (usb)
ACTION=add
DEVPATH=/devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0
DEVTYPE=usb_interface
ID_MODEL_FROM_DATABASE=GPIB-USB-B
ID_USB_CLASS_FROM_DATABASE=Vendor Specific Class
ID_USB_PROTOCOL_FROM_DATABASE=Vendor Specific Protocol
ID_USB_SUBCLASS_FROM_DATABASE=Vendor Specific Subclass
ID_VENDOR_FROM_DATABASE=National Instruments Corp.
INTERFACE=255/255/255
MODALIAS=usb:v3923p702Bd0001dcFFdscFFdpFFicFFiscFFipFFin00
PRODUCT=3923/702b/1
SEQNUM=1078
SUBSYSTEM=usb
TYPE=255/255/255
USEC_INITIALIZED=2645
UDEV [32.347470] remove /devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0 (usb)
ACTION=remove
DEVPATH=/devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0
DEVTYPE=usb_interface
ID_MODEL_FROM_DATABASE=GPIB-USB-B
ID_USB_CLASS_FROM_DATABASE=Vendor Specific Class
ID_USB_PROTOCOL_FROM_DATABASE=Vendor Specific Protocol
ID_USB_SUBCLASS_FROM_DATABASE=Vendor Specific Subclass
ID_VENDOR_FROM_DATABASE=National Instruments Corp.
INTERFACE=255/255/255
MODALIAS=usb:v3923p702Bd0001dcFFdscFFdpFFicFFiscFFipFFin00
PRODUCT=3923/702b/1
SEQNUM=1079
SUBSYSTEM=usb
TYPE=255/255/255
USEC_INITIALIZED=2645
UDEV [32.361405] remove /devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3 (usb)
ACTION=remove
BUSNUM=001
DEVLINKS=/dev/usb_gpib
DEVNAME=/dev/bus/usb/001/004
DEVNUM=004
DEVPATH=/devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3
DEVTYPE=usb_device
ID_BUS=usb
ID_MODEL=702b
ID_MODEL_ENC=702b
ID_MODEL_FROM_DATABASE=GPIB-USB-B
ID_MODEL_ID=702b
ID_REVISION=0001
ID_SERIAL=3923_702b
ID_USB_INTERFACES=:ffffff:
ID_VENDOR=3923
ID_VENDOR_ENC=3923
ID_VENDOR_FROM_DATABASE=National Instruments Corp.
ID_VENDOR_ID=3923
MAJOR=189
MINOR=3
PRODUCT=3923/702b/1
SEQNUM=1080
SUBSYSTEM=usb
TYPE=255/255/255
USEC_INITIALIZED=941557
UDEV [34.314071] add /devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3 (usb)
ACTION=add
BUSNUM=001
DEVLINKS=/dev/usb_gpib
DEVNAME=/dev/bus/usb/001/005
DEVNUM=005
DEVPATH=/devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3
DEVTYPE=usb_device
ID_BUS=usb
ID_MODEL=702a
ID_MODEL_ENC=702a
ID_MODEL_ID=702a
ID_REVISION=0001
ID_SERIAL=3923_702a
ID_USB_INTERFACES=:ff0000:
ID_VENDOR=3923
ID_VENDOR_ENC=3923
ID_VENDOR_FROM_DATABASE=National Instruments Corp.
ID_VENDOR_ID=3923
MAJOR=189
MINOR=4
PRODUCT=3923/702a/1
SEQNUM=1081
SUBSYSTEM=usb
TYPE=0/0/0
USEC_INITIALIZED=1346
UDEV [34.368446] add /devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0 (usb)
ACTION=add
DEVPATH=/devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0
DEVTYPE=usb_interface
ID_VENDOR_FROM_DATABASE=National Instruments Corp.
INTERFACE=255/0/0
MODALIAS=usb:v3923p702Ad0001dc00dsc00dp00icFFisc00ip00in00
PRODUCT=3923/702a/1
SEQNUM=1082
SUBSYSTEM=usb
TYPE=0/0/0
USEC_INITIALIZED=2286
UDEV [39.006199] remove /devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0 (usb)
ACTION=remove
DEVPATH=/devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0
DEVTYPE=usb_interface
ID_VENDOR_FROM_DATABASE=National Instruments Corp.
INTERFACE=255/0/0
MODALIAS=usb:v3923p702Ad0001dc00dsc00dp00icFFisc00ip00in00
PRODUCT=3923/702a/1
SEQNUM=1083
SUBSYSTEM=usb
TYPE=0/0/0
USEC_INITIALIZED=2286
UDEV [39.013553] remove /devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3 (usb)
ACTION=remove
BUSNUM=001
DEVLINKS=/dev/usb_gpib
DEVNAME=/dev/bus/usb/001/005
DEVNUM=005
DEVPATH=/devices/soc0/amba@0/e0002000.usb/ci_hdrc.0/usb1/1-1/1-1.3
DEVTYPE=usb_device
ID_BUS=usb
ID_MODEL=702a
ID_MODEL_ENC=702a
ID_MODEL_ID=702a
ID_REVISION=0001
ID_SERIAL=3923_702a
ID_USB_INTERFACES=:ff0000:
ID_VENDOR=3923
ID_VENDOR_ENC=3923
ID_VENDOR_FROM_DATABASE=National Instruments Corp.
ID_VENDOR_ID=3923
MAJOR=189
MINOR=4
PRODUCT=3923/702a/1
SEQNUM=1084
SUBSYSTEM=usb
TYPE=0/0/0
USEC_INITIALIZED=1346