For battery-powered mobile robots to operate for long periods of time, it is critical to optimize their motion so as to minimize energy consumption. The driving motors are a major source of power consumption. In this paper, we study the problem of finding velocity profiles for car-like robots so as to minimize the energy consumed while traveling along a given path. We start with an established model for energy consumption of DC motors. We present closed form solutions for the unconstrained case and for the case where there is a bound on maximum velocity. We also study a general problem where the robot's path is composed of segments (e.g. circular arcs and line segments). We are given a velocity bound for each segment. For this problem, we present a dynamic programming solution which uses the solution for the single-constraint case as a subroutine. In addition, we present a calibration method to find model parameters. Finally, we present results from experiments conducted on a custom-built robot.