Can't read inputRegister : Modbus RTU rs485

It's work!!!! Thank you for your help Appreciate. Library have to use 16bit address to indicate register

#include <ModbusMaster.h>
#include<SoftwareSerial.h>
#define TxEnable 2
// instantiate ModbusMaster object
ModbusMaster node;
SoftwareSerial mySerial(6,7); //Pin6 is RX,Pin7 is TX
void preTransmission()
{
  digitalWrite(TxEnable, 1);
}

void postTransmission()
{
  digitalWrite(TxEnable, 0);
  
}
float HexTofloat(uint32_t x){
  return (*(float*)&x);
  }
float ReadModbus(uint8_t SlaveID,uint16_t address,uint16_t qty){
  uint16_t result;
  uint16_t data[2];
  int32_t value = 0;
  float i =0;
  uint8_t  Test;
  Test = node.available();
  node.begin(SlaveID, mySerial);
  result = node.readInputRegisters(address, qty);
  //Serial.println(result);
  delay(50);
 if (result == node.ku8MBSuccess){
    for (uint8_t j = 0; j < 2; j++)
    {
      data[j] = node.getResponseBuffer(j);
   
    }
    value = data[0]; 
    value = value <<16;
    value = value + data[1];
    i = HexTofloat(value);    
    return i;
  } 
  else{
    Serial.println("Modbus failed");
    delay(500);
    return 0;
    }
}
void setup()
{
  // use Serial (port 0); initialize Modbus communication baud rate
  Serial.begin(19200);
  mySerial.begin(9600);
  pinMode(TxEnable,OUTPUT); 
  node.preTransmission(preTransmission);
  node.postTransmission(postTransmission);
}
void loop()
{
    
    float modbusData = ReadModbus(8,0x08,2); //SlaveID; Address register; data size
    Serial.print("Meter Value1: ");
    Serial.println(modbusData);
    delay(500);
    float modbusData2 = ReadModbus(1,0x08,2); //SlaveID; Address register; data size
    Serial.print("Meter Value2: ");
    Serial.println(modbusData2);
    delay(500);
}

This is my code i use. I hope this forum will be useful for someone who have trouble about modbus RTU . Thank you Pylon