In 95% of the time, if you are the first to enter in the hand, never, never ever limp. Build an open raise range for each position and follow it.
In
freerolls or in micro tournaments, you can limp
sometimes if at least one player has limped before you, but you should
not do this frequently.
Limp behind if: (1) you believe that some player after you will not raise; (2) if you have some hand with potential to flop good, like some suited connector; (3) if you are getting a good price to see the flop, which happens a lot when you are in small blind.
However, you should know that limping is a
passive play, and you should not do this often.
There is only one case that I think you can open limp
sometimes: in a blind vs. blind, when you are in SB, in two situations:
(1) If your opponent does not tend to raise you and you don't feel comfortable with raising with a poor hand, you can try to see a flop for a small price and try to steal the pot leading with a bet if the board is dry;
(2) if your opponent tends to raise your limp, sometimes you can limp with a good/premium hand and try to induce a raise from him.
I believe that there is some room for limping, but you need to do it wisely! And in general, the most wise decision is not to limp.