Frank-Walter Steinmeier will visit Windsor Castle in December for the first state visit by a German president in 27 years.