Windows operating system has built-in feature called "wake timers" which allows to wake your computer at schedule. Windows Update will wake your computer to install updates at night, any other software may add wake timer for its own purposes. You need to disable wake timers to prevent your computer from waking at unpredictable times.
The instructions below are shown for Windows 7.
Open Power Options in Control Panel (Click Start, type Power Options and press Enter):
In the Power Options Window choose your current power plan and click Change plan settings:
In the Edit Plan settings window click on Change advanced power settings:
In the Power Options dialog scroll to Sleep branch and expand it, then expand Allow wake timers branch and change both values to Disable:
Click OK to save changes and close the window.
From now software or operating systems itself shouldn't wake your PC.
Please note that you have to repeat steps described above for each power plan you are using. Also your PC may be wakened by devices like mouse, network adapters or USB devices. by Use BackToSleep for reliable protection even if you have disabled wake timers.