public ModbusResponse createResponse() {
ReadInputRegistersResponse response = null;
InputRegister[] inpregs = null;
//1. get process image
ProcessImage procimg = ModbusCoupler.getReference().getProcessImage();
//2. get input registers range
try {
inpregs = procimg.getInputRegisterRange(this.getReference(), this.getWordCount());
} catch (IllegalAddressException iaex) {
return createExceptionResponse(Modbus.ILLEGAL_ADDRESS_EXCEPTION);
}
response = new ReadInputRegistersResponse(inpregs);
//transfer header data