PeakCANプラグインの使用方法
PeakCANプラグインは、PEAK-SystemのCANアダプタを操作するための低レベルAPIをカプセル化しています。
このプラグインを使用するには、Windows では PCAN デバイスドライバーおよび 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はプラグイン名です。
次に、特定のインターフェースへの接続を確立することができます:
QString errorString;
QCanBusDevice*device =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() メソッドを使用して行うことができます。読み取り可能な新しいフレームが少なくとも1つある場合、framesReceived() シグナルが発信されます:
QCanBusFrame frame = device->readFrame();PeakCANは、setConfigurationParameter()を通じて制御可能な以下の設定をサポートしています:
| 設定パラメータのキー | 説明 |
|---|---|
| QCanBusDevice::CanFdKey | この設定オプションは、CAN FDフレームの送受信を許可するかどうかを決定します。デフォルトでは、このオプションは無効になっています。このオプションを有効にするには、CAN FD対応のハードウェアが必要です。 |
| QCanBusDevice::BitRateKey | CANバス接続のビットレートを決定します。 以下のビットレートがサポートされています:5000、10000、20000、33000、47000、50000、83000、95000、100000、 125000、250000、500000、800000、1000000。 「QCanBusDevice::CanFdKey 」オプションが有効になっている場合、ビットレートは125000、250000、500000、または1000000に制限されます。この設定パラメータは、QCanBusDevice が接続されていない間のみ調整できることに注意してください。 |
| QCanBusDevice::DataBitRateKey | CAN FDバス接続のデータビットレートを決定します。このオプションを設定するには、「QCanBusDevice::CanFdKey 」オプションを有効にする必要があります。設定可能なデータビットレートは、2000000、4000000、8000000、または10000000です。 この設定パラメータは、QCanBusDevice が接続されていない間のみ調整できることに注意してください。 |
PeakCANは、以下の追加機能をサポートしています:
- QCanBusDevice::resetController()
- QCanBusDevice::busStatus()
- QCanBusDeviceInfo::alias() (Windows および PCAN-Basic 4.4.0 以降のみ): PCAN_DEVICE_ID を返します。この値は、PCAN-View を使用して、0~255 または 0~4294967295(デバイスによって異なります)の範囲内でユーザー定義値に設定できます。 デフォルト値は 255 または 4294967295 です。
© 2026 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.