The control problem for the serpentine motion of a planar snake under the assumption of a trajectory characterized by its curvature and heading is examined in this article. The time varying curvature and heading attributes of the trajectory result in a sinusoidal reference signal for the joint angles. An inner loop PD-controller is used for trajectory tracking by compensating the effects of the snake's dynamics, while an outer loop first-order controller is used for the formation of the reference joint angles by tracking the desired heading and velocity. Simulation studies on spiral curves are included to investigate the efficiency of the controller.