Have a look at this tool: SEBE (included in the UMEP toolkit, which has recently been added to the QGIS official plugin repository). As described in the official site, SEBE (Solar Energy on Building Envelopes):
... can be used to calculate pixel wise potential solar energy using ground and building digital surface models (DSM). SEBE is also able to estimate irradiance on building walls. Optionally, vegetation DSMs could also be used. The methodology that is used to generate irradiance is presented in Lindberg et al. (2015).