Petrov is Sven-Goran Eriksson’s fourth signing since taking over as manager for the club.
The 28-year-old has passed a medical and will sign a three-year contract.
City chief Alistair Mackintosh said: “Having Sven as manager proved to be a major factor in the player’s decision.
“Unsurprisingly given the calibre of the player, there were a significant number of clubs competing for Martin’s signature, and I am absolutely delighted that he has come to Manchester City.”