サイト内検索

検索

Shares

Table of Content

EthercatDevice_DmpDIQ.startBrokenWireTest()

[EthercatDevice_DmpDIQ_Generic]

説明

EtherCATスレーブデバイスの指定された入力ピンで断線検出テストを開始します。

派生クラス:

Class          Name	        VID	        PID       Inputs Outputs   MCU	DC	Wire Detection
EthercatDevice_QECR00DF0D	0x00000bc3	0x0086d300	16	 0	        O		O
EthercatDevice_QECR00D88D	0x00000bc3	0x0086d301	8	 8	        O		O
EthercatDevice_QECR00DC4D	0x00000bc3	0x0086d304	12	 4	        O		O
EthercatDevice_QECR00D4CD	0x00000bc3	0x0086d302	4	 12	        O		O
EthercatDevice_QECR11DF0D	0x00000bc3	0x0086d0d2	16	 0	        O		O

構文

uint16_t startBrokenWireTest(uint16_t bitMask, uint32_t timeout_ms = 1000);

媒介変数

  • [in] uint16_t bitmask
    この変数は、断線検出テストに含める入力ピンを指定する符号なし16ビット整数です。ビット・マスクの各ビットは、EtherCATスレーブデバイスの入力ピンに対応し、次のマッピングが行われます。
    1. ビット0はデジタル入力ピン0を示します。
    2. ビット1はデジタル入力ピン1を示します。
    3. 以下同様に、ビット15はデジタル入力ピン15を示します。

値が 1の場合、対応するピンは本テストに含まれることを示し、値が0の場合、除外されることを示します。
注: この変数には、EtherCATスレーブデバイスに存在しない入力チャネルに対して1に設定されたビットが含まれていないことを確認する必要があります。含まれていない場合、このテストは実行されません。

  • [in] uint32_t timeout_ms
    タイムアウト値で、ミリ秒単位。

戻り値

断線検出テストの結果を表す16ビットの符号なし整数を返します。返される値の各ビットは、テストに含まれる入力ピンに対応します。各ビットの解釈は次のとおりです:

  • 0: 対応するピンがテストに含まれていなかったか、壊れていることを検出しました。
  • 1: 対応するピンがテストに含まれており、接続されており断線していないと検出されました。

備考

この関数は、 EthercatMaster::start() が正常に実行された後で、 EthercatMaster::stop()の前に呼び出す必要があります。この関数はブロッキングされていないため、コールバック関数内で呼び出すことができます。

#include "Ethercat.h"

EthercatMaster master;
EthercatDevice_QECR00D88D slave;

void setup() {
  Serial.begin(115200);
  
  master.begin();
  slave.attach(0, master);
  master.start();

  Serial.print(slave.startBrokenWireTest(0xFF));
}

void loop() {
  // ...
}

Please see EthercatDevice_DmpDIQ_Generic Class for more QEC DIO slave instructions and API usage.

上部へスクロール