Cannon barrel rotation

The problem is that you do not take into account the orientation of the base. Add the canon as a child of the base and use the node AddRelativeRotation or AddLocalRotation. Cant remember the name of the node right now.

HTH