Product Managers are responsible for a product roadmap according to corporate strategy.The Project Manager is the person who must ensure that the scope of a project is delivered against budget and time frames agreed. This requires the Project Manager to create plans, negotiate budgets, resources, and track progress.
Product Owner is responsible for ensuring their product backlog is aligned to the roadmap. PO role is much wider in its scope and comes with a lot more responsibility including researching market trends to fill gaps with a new product. A product owner is responsible for a particular product and works to grow it right from its inception stage to maturity with a vision.
Business Analyst fills the gap between PO and Development team and is a supporting role. In Scrum framework only Product Owner role is defined, rest two are kind of proxy roles. A business analyst would be responsible for a particular section of the product and would work towards its requirements or coming up with ideas to improve or innovate the process pertaining to its scope.