Tell us about yourself!
Sorry to criticise, but the LM358 input common-mode range does not extend to the positive rail. It falls short by a volt or so, 1.7V in the worst case. High-side current sensing (as you are doing) requires a RRI, or RRIO op-amp (rail-to-rail input needed). - there are other approaches, like "potting down the rail and the sense resistor connection" so it lies within the input CMR common-mode range. But this approach is hard to tolerance.
Don't get caught with one of these in the UK - the mandatory minimum jail term is five years. http://www.bbc.co.uk/news/uk-scotland-edinburgh-east-fife-40045163Man caught with stun gun disguised as torch jailed for five years