You could use a code for the numerical solution of multipoint boundary value problems. For example the Fortran code BNDSCO of Hans Joachim Oberle (http://www.math.uni-hamburg.de/home/oberle/software.html)
How to "translate" Pontryagin's Maximum Principle into multipoint boundary value problems is for example discussed in the book of Grass et al. "Optimal Control of Nonlinear Processes: With Applications in Drugs, Corruption, and Terror". Don't be irritated by the title. The book is actually about the theory of optimal control.
If you have more than one system of differential equations, you combine or concatenate that extra system with the first system to form a 'larger' system of differential equations.
Matlab has off the shelf code using the package Simulink if you can get your hands on it. I've not used it before, but I think it is simple and my control colleagues use it often.