Mechanics and Design of Cam Mechanisms