Question: Holding Register can do everything?

I have a question which might be very simple to Modbus professionals:

Holding register (AO) is read/write. So, why do we even need input register (AI), discreate coil (DO) and contact (DI) ?

I imagine that 16 bit AI data can be stored in holding register as well and use code 3 to read. It seems input register is not quite needed.

Further more, DI and DO can be store in holding register as single bit. It just seems like holding register can do everything.

I must be wrong, please correct me and help me understand Modbus better.
 
Historically, Modbus communications only appeared with Modicon PLC's,
which is where the input registers came in for analogue devices.
Discrete coils and contacts were for ladder logic; but being numerical
machines, holding registers were very useful.

This is also where the terminology came from.
 
Historically, Modbus communications only appeared with Modicon PLC's,
which is where the input registers came in for analogue devices.
Discrete coils and contacts were for ladder logic; but being numerical
machines, holding registers were very useful.

This is also where the terminology came from.
Thanks. Speaking of function, can someone actually put all types of data including AI, AO, DI, DO, into holding registers? To me, holding register seems to be primary choice as long as space is available.
 
I worked with an industrial gateway for wireless ’smart’ field transmitters. The status bits for the DI’s and DO’s and diagnostic status flags each had a standard 16 bit Modbus register for their single bit.

Some vendors ’dual’ map input registers as read-only holding registers.

All depends on the implementation.
 
Top