They all have DIFFERENT meanings, which are depended on subject/noun..
แรง also has several meanings.
1) harsh, mean
Ex: เธอพูดแรง = you speak harsh.
คนนี้แรง = this person is mean.
2) high
Ex: พลังแรง = High power
***usually means "High" when you refer to power or electricity.
กำลัง can mean doing and power
1) doing
Ex: คุณกำลังทำอะไร = What are you doing?
2)power
Ex: กำลังแรง = High Power.
พลัง means "power"
Hope this help :)