Everything you need to know about Smart Grids - Architecture, communication framework design and digital technologies