The thing is when working at home, you need to have a balance, of work, play, and relaxation. Most people seem to think that you need to sit there for 8 to 12 hours just coding or web designing or doing graphics work. This leads to mental exhaustion and burn out. If you tend to go at it this hard you end up not wanting to actually do what you love doing.
You need to have a balance of you finish a section of your project you take a break, listen to music, and then go back to work. If you have a graphics project to do, work on it, get it done, then take a break then come back at it.
Back in the day there was a study about learning saying that those courses where you have a 3 hour long class you end up learning less than if you had taken 30 minute breaks during that time. One hour classes with a break in the middle were optimal.
Now there are companies that are changing the cubical style of thinking and encouraging breaks and going on social media to distract from the stresses of programming and what not. Some are going as far as having mid day nurf gun fights and having fun at work.. (shocking idea I know)
Get up from the computer when you take a break.. don't grab your phone, tablet, or even a book.. got a pet go play with it, since you are at home.. go find something fun to do.
Mental simulation outside of working at home is something that many people tend to forget.