Как синонимы, так и антонимы, всегда следует подбирать в зависимости от контекста. Так как в разных контекстах смысловые оттенки одного и того же слова могут быть различными. Поэтому и синонимы и антонимы могут иметь достаточно разные значения.
Что касается слова "сон", действительно, антонимов можно подобрать очень немного. Если рассматривать слово "сон" как физический процесс ночного отдыха, тогда антонимами кроме названных слов "бессоница", "бдение", "бодрствование", можно назвать сочетания "не сомкнуть глаз", "расстройство сна", "провести ночь на ногах".
Слово "сон" может иметь еще значение "мечта", "иллюзия", "греза" и т.п. В таком контексте, антонимами слова могут быть "повседневность", "обыденность", "приземленность", "серость", "реальность", "на практике", "по жизни", "наяву", "реалия", "по факту", "в быту", "на самом деле", "в действительности".
Если же по контексту значение слова "сон" имеет смысл "кошмар" или "страшный сон", тогда антонимов может быть гораздо больше. Так как слово "кошмар" часто употребляется для общего обозначения чего-то чрезвычайно неприятного. В таком случае любое слово обозначающее что-то приятное, безопасное и хорошее и является антонимом слова "кошмар". Например, "везение", "удача", "счастливый случай", "хорошее настроение", "благодать", "радость".