Look at volume of data in one SCADA scan. How many analogs and digitals should there be from a single battery module? Do a back of the napkin calculation.
V, I, temperature, inverter V, I this that, alarms, status etc. Say 20 points and avg. 12 bytes/point in packets, that's about 240 bytes of data.
Multiply by 16 battery modules per cabinet, 11 cabinets/MP row and 2 rows back-back, and the site has 40 of 150 MP's in the commissioning phase. I think 14,080 battery modules so far? Gees that's a lot.
My rough estimate is 3.2MB of data every poll of 281,600 points. If you are polling over serial at 9,600 that is an hour lol.
With my math, it will be almost 4X larger/slower when the site is finished, 1 million points...
For reliability you would not use a single network, there would be many. Large utility sites can have a high failure rate for RS-485 transceivers, one short from a ground-fault or lightning etc. and you lose comms. To limit the loss of visibility and control, there would be multiple networks.
DNP is an antique utility industry (substation) protocol from the days of dial-up. It's stuck around and I think it's a gross protocol as DNP3 due to the drama with standardization, that it's obfuscated and inefficient. IEC 61850 over Ethernet is the modern way to go. But this is the utility industry. MODBUS is bare-bones minimum and fine over TCP/IP.
How Neoen decided to go... you would never use a PLC or low-cost simple HMI system due to the volume of data. Serial is way too slow here.
Over a million points I estimate, which is the league of distributed control systems DCS. I don't know of any factory or plant with that many points to read and log and display on an HMI. It's never done on a single computer system, it would be broken up but this costs money.
I'd say they (Neoen) went too cheap and ended up with turtle bus. After the fire, they've speeded it up to a one hour scan time, seems terrible. You won't know there is a fire alarm coming in, faster to just look for smoke?