I’ve been working on a cannon and it has a pretty rudimentary movement system.
I just weld the cannon to the player and it follows him, for the wheels I use hinges.
Real cannons were moved by people pushing at the base of them. Thats the little stem part at the front of it. If you wanted this to be physics based then I would weld the player to the cannon and move the cannon with linear velocity and change orientation with a body gyro(yes they are “superseded” but these allow you to limit specific axis so your cannon can go up hills).
Body Gyro would make it so that when aligning it wouldn’t keep the cannon flat. You would do this by making maxforce on y axis 0. It won’t do anything other than that and you don’t really need it unless your game has hills.