I have had a few in my time, always enjoyable. train your mind to do regular "reality checks" meaning, every hour or so, take a quick look around and make sure your not dreaming, checking time, usually does it. something to with time in dreams, im to stoned to remember exactly.
just because you know your awake dont stop doing the checks, it conditions your mind to do it reguarly, meaning you do it in dreams, thats how i do it.
once you realise your dreaming, thats when the dream becomes lucid and you can control it.