Tesco raises £2.5 million for Barnardo's