CC-Link IE Field ドライバ — 技術リファレンス(実装ロードマップ)
PlantPulse Edge の CC-Link IE Field ドライバは現在 stub (placeholder) 段階です。 正式な read/write 動作が可能になるまでは、MELSEC (MC Protocol / SLMP) カードによる回避策をご利用ください。
ソース: plantpulse.driver.protocol.cclink.*
| クラス | 責務 |
|---|---|
CCLinkIEFieldDriver | AbstractStubDriver ベースの placeholder — connect 時に warn ログ、read/write はいずれも空/false |
なぜ stub なのか
PlantPulse Edge は Apache PLC4X 0.13.1 のドライバを lib としてバンドルしています(BACnet/KNXnet/CANopen/ADS/AB-ETH など12個)。PLC4X 0.13.1 のドライバマトリクスには CC-Link IE Field がまだ含まれていません。
確認方法:
ls plantpulse-edge-driver/lib/ | grep plc4j-driver
# plc4j-driver-ab-eth, ads, bacnet, c-bus, can, canopen, eip, firmata,
# iec-60870, knxnetip, modbus, opcua, open-protocol, plc4x, profinet-ng,
# s7, simulated ← cc-link-ie 없음
正式実装の経路
| 経路 | 利点 | 欠点 |
|---|---|---|
PLC4X 0.14+ の cc-link-ie driver | 既存の wrapper パターン(PLC4jProtocolDriver 継承)そのまま — コード変更は最小限 | PLC4X のリリース日程に依存 |
| xingshuangs/iot-communication (Java, MIT) | CC-Link を一部サポート — すぐに使えるライブラリ | 独自 wrapper の作成が必要(BaseProtocolDriver を直接継承) |
| GX Works3 SLMP ゲートウェイ | Mitsubishi 公式ゲートウェイ — 安定性を保証 | 追加H/W(RJ71EN71 など)が必要。MELSEC カード で SLMP を使用すればよい |
PlantPulse Edge 側の作業:
// 정식 구현 시 (PLC4X 0.14+ 가정)
public class CCLinkIEFieldDriver extends PLC4jProtocolDriver implements ProtocolDriver {
@Override public String getProtocol() { return "cc-link-ie"; }
}
ビルド:
./gradlew clean build
登録フォームのオプション(予定)
| key | 説明 | デフォルト値 |
|---|---|---|
device-id | スレーブ station number (1~120) | (必須) |
network-no | ネットワーク番号 (1~239) | 1 |
request-timeout | read/write タイムアウト (ms) | 2000 |
アドレス表記(予定)
| デバイス | 意味 | 表記 |
|---|---|---|
RX#### | Remote Input bit | RX0010 |
RY#### | Remote Output bit | RY0020 |
RWr#### | Remote Word in (16-bit) | RWr0100 |
RWw#### | Remote Word out (16-bit) | RWw0100 |
SB#### | Link Special Bit | SB0001 |
SW#### | Link Special Word | SW0001 |
LB#### | Link Bit | LB0010 |
LW#### | Link Word | LW0010 |
現在の動作 (stub)
| メソッド | 動作 |
|---|---|
connect() | [CC-Link IE Field] 드라이버는 아직 정식 구현 전입니다 ... warn ログ — isConnected() は false のまま |
read() | 空文字列 ("") を返す |
write() | false を返す |
isWriteSupported() | false |
ゲートウェイの運用には影響ありません — 登録しても disconnected 状態で表示され、データは入ってきません。
推奨される回避策: MELSEC SLMP カード
iQ-R / iQ-F の RJ71EN71(Ethernet モジュール)または内蔵 Ethernet ポートは SLMP / MC Protocol をサポートします — これは MELSEC カードで正式に動作します。
CC-Link IE Field スレーブのデータを PLC 側デバイス(D#### 領域)へマッピングしておけば、ゲートウェイは PLC の D を読むだけで済みます。