There may be several causes for it, which include excessive worry, stress, fear, anxiety, pain, grief, aging, mental disorders like depression, post-
traumatic stress disorder, and generalized anxiety
disorder. You should seek medical help (sleep specialist) in helping find out if there is any medical cause for excessive sleepiness.
In the mean time, your son should be careful while on work that could endanger him or others around him.