This paper presents a formulation for distributed model predictive control (DMPC) of systems with coupled constraints. The approach divides the single large planning optimization into smaller sub-problems, each planning only for the controls of a particular subsystem. Relevant plan data is communication between sub-problems to ensure that all decision satisfy the coupled constraints. The new algorithm guarantees that all optimizations remain feasible, that the coupled constraints will be satisfied, and that each subsystem will converge to its target, despite the action of unknown but bounded disturbances. Simulation results are presented showing that the new algorithm offers significant reductions in computation time for only a small degradation in performance in comparison with centralized MPC.