I was very bad at volleying too, I still find it difficult, but I managed to improve a lot.
I don't actually serve and volley, rather I try approaching the net during the point, when my opponent is off-balance. I recently used this tactic against Nadal and I beat him in Wimbledon final. All previous matches against Nadal, my player got very tired. By using the net more regularly I was able to shorten the points and I could restore my energy.
If you want to SERVE and volley, I think you must have a very powerful serve (like Karlovic), or a serve with A LOT of precision and consistency, so your opponent will not be able to attack your serve. If you manage to make them return a slow ball, it is pretty easy to finish the point, assuming you have good volleying skills.
If you want to approach net during the point, I recommend doing that with extreme caution, only when your opponent is off-balance, or if you make a very good slice, because if he has the time to prepare, he will probably use a short angled acceleration shot which will be hard to counter. I noticed it also varies according to the opponent's style. A puncher, for example, will probably try to counterattack even when out of balance, so this could be dangerous. A defender like Nadal sometimes uses angled slices which are hard to reach when you are approaching. Anyway, just approach the net quickly, consciously, and do not glue yourself to the net. Stay a little behind, use a defensive volley first, preferably in his backhand, and then try to finish the point with a more strong volley. Only get very close to the net if you see he is running completely lost without possibility of lobbing you.
Hope it helps!