Bools in UDTs are stored as bytes.
In your program just use it as it is. UvalvoleDigitali[0].bConsensoAuto is all you need.
UDT bools are not Modbus friendly. I just put filler in my UDTs between each writeable bool and set the %MW to either 1 or 0. The read-only bools can be addressed by bits 0 and 8 within the %MW.
If you are not accessing this UDT from an external Modbus client there is no need to assign an address to it.
Actually I only need 3 integer for modbus client, I thought to be faster to assign directly the address at the UDT array but in this case a lot of %MW are used without any real need.
I've bypass it and created dedicated tag for modbus and then write the udt tag with it inside the logic.
Anyway thanks for your precious support