I totally agree with @Thomas Owens answer but I'm adding my own experience.
In typical Scrum project there is no PM. The PM role is divided into all participants of the project - PO, Scrum Master and team. When you scale a Scrum project or when you try to apply Scrum in corporate environment the additional person pretending like a PM can be handy.
Scaling agile is generally hard task and usually demands some plan driven additions to make the scaling successful. PM can be on the top of the whole project and coordinate it with help of teams' Scrum Masters and Product owner.
We even don't need to work on scaling - it is enough if you have to integrate your work with another team which doesn't use agile methodology. In such case a lot of additional coordination is needed. You usually cannot put the burden of coordinating non agile team on Scrum Master or Product Owner but you can use traditional PM coordinating both teams and cooperating with Scrum Master and Product Owner.
The whole separate story is corporate / enterprise environment and bureaucracy. If the company itself didn't move to agile mindset you will simply need PM and he will most probably be "adapter" between your agile world and company's bureaucracy.