In multi-hop sensor networks, information obtained by the monitoring nodes need to be routed to the sinks. If we assume that the transmitter power level can be adjusted to use the minimum energy required to reach the intended next hop receiver, the energy consumption rate per unit information transmission depends on the choice of the next hop node. In a power-aware routing approach, most proposed algorithms aim at minimizing the total energy consumption or maximizing network lifetime. In this paper, we propose a new routing algorithm with two goals: minimizing the total energy consumption and ensuring fairness of energy consumption between nodes. We formulate this as a nonlinear programming problem and use a sub-gradient algorithm to solve the problem. We also evaluate the proposed algorithm via simulations at the end of this paper.