When should I use can? When should I use could?
What is right under what context?
Since your name seems Indian, I’ll also mention a common Indian-English idiosyncrasy that may clear up matters for you. There is a tendency in Indian speech to use “could” for “can”, and “would” for “will”. This is wrong (or, to avoid being prescriptive, certainly at variance with other varieties of English, and non-standard even in India). Properly, “could” (subjunctive) is used to express possibility, things that may or may not happen, may or may not be done, etc. (to ask polite questions, for instance) — or in the past tense. If you’re using it in the same sense as “can” (for a straightforward expression of ability), you’re probably using it incorrectly.
We could go (if we like / but we won’t / etc.), but
We can go (= We are capable of going / It is possible for us to go)
They could see us from the tower (if they were not blind / yesterday), but
They can see us from the tower (=they are capable of seeing us, now)
Wrong: The speaker would be coming tomorrow.
Correct: The speaker will be coming tomorrow. (The progressive is fairly common in IE, but even more natural to just say “The speaker will come tomorrow.”)