jamod ページの例では、WriteMultipleRegisters (fc16) 要求を受け入れて適切な応答を送信する TCP スレーブを作成しようとしています。コード:
//1. Prepare a process image
for (int i = 0; i < 200; i++)
spi.addRegister(new SimpleRegister(0));
ModbusCoupler.getReference().setProcessImage(spi);
ModbusCoupler.getReference().setMaster(false);
ModbusCoupler.getReference().setUnitID(254);
//3. create a listener with 3 threads in pool
if (Modbus.debug) System.out.println("Listening...");
listener = new ModbusTCPListener(1, addr);
listener.setPort(port);
listener.start();
このコードを使用すると、リクエストを取得できます (これらの 200 のレジスタに書き込みます) が、なぜ応答を送信しなかったのか疑問に思っています。