PeakCANプラグインの使用

PeakCAN プラグインは、PEAK-SystemCAN アダプターで動作するための低レベル API をカプセル化します。

このプラグインには、PCANデバイスドライバと、WindowsではPCAN-Basicライブラリバージョン4.4.0以上(pcanbasic.dll)、Linuxでは4.0.0以上(libpcanbasic.so)が必要です。macOSではUV SoftwareのPCBUSBライブラリが必要で、バージョンは0.9以上です。

注意: Qt バージョン 5.14 から 6.4 は PCBUSB ライブラリバージョン 0.8.1 にしか対応していませんが、Qt バージョン 6.5 以降は PCBUSB バージョン 0.9 以降が必要です。

注意: QCanBusDeviceInfo::alias() はWindowsとPCAN-Basic 4.4.0以降でのみサポートされています。

CAN バスデバイスの作成

最初に、QCanBus が目的のプラグインを提供しているかどうかを確認する必要があります:

if (QCanBus::instance()->plugins().contains(QStringLiteral("peakcan"))) {
    // plugin available
}

peakcanはプラグイン名です。

次に、特定のインターフェースへの接続を確立する:

QStringerrorString;QCanBusDevice*デバイス =QCanBus::instance()->createDevice(    QStringLiteral("peakcan")QStringLiteral("usb0"), &errorString);if(!device) {// エラー処理はここで行うqDebug << errorString;
}else{ device->connectDevice(); }

ここで、usb0はアクティブな CAN インターフェース名です。PeakCAN プラグインは、usb0からusb15までの 16 個の USB インターフェイスと、pci0からpci15 までの 16 個の PCI インターフェイスをサポートしています。availableDevices() メソッドは、現在使用可能なデバイスのリストを返します。

注: 現在、このプラグインでサポートされているのは、USB および PCI アダプターのみです。

注意 :macOSでは、現在このプラグインがサポートしているのはUSBアダプターのみです。

デバイスは、CANフレームの書き込みと読み出しが可能になりました:

QCanBusFrame frame;
frame.setFrameId(8);
QByteArray payload("A36E");
frame.setPayload(payload);
device->writeFrame(frame);

読み込みは、readFrame() メソッドを使用して行うことができます。framesReceived() シグナルは、少なくとも1つの新しいフレームが読み出し可能になったときに出力されます:

QCanBusFrame frame = device->readFrame();

PeakCAN では、setConfigurationParameter() で制御できる以下の設定をサポートしています:

設定パラメータキー説明
QCanBusDevice::CanFdKeyこの構成オプションは、CAN FD フレームを送信または受信するかどうかを決定します。デフォルトでは、このオプションは無効になっています。このオプションを有効にするには、CAN FD互換のハードウェアが必要です。
QCanBusDevice::BitRateKeyCAN バス接続のビットレートを決定します。以下のビットレートに対応しています:5000, 10000, 20000, 33000, 47000, 50000, 83000, 95000, 100000, 125000, 250000, 500000, 800000, 1000000.QCanBusDevice::CanFdKey オプションを有効にすると、ビットレートは125000、250000、500000、1000000に制限される。このコンフィギュレーション・パラメーターは、QCanBusDevice が接続されていないときにのみ調整できることに注意。
QCanBusDevice::DataBitRateKeyCAN FDバス接続のデータ・ビット・レートを決定します。このオプションを設定するには、QCanBusDevice::CanFdKey オプションを有効にする必要があります。設定可能なデータビットレートは、2000000、4000000、8000000、または10000000です。この設定パラメータは、QCanBusDevice が接続されていない場合にのみ調整できることに注意してください。

PeakCAN は以下の追加機能をサポートしています:

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.