No, claiming per diem is not mandatory. The IRS allows these per diems as an alternative to actual meals & incidental expenses paid, thus freeing you from having to keep receipts to substantiate those costs. However, if you prefer to keep receipts for meals & incidentals -- and then use those "actual" amounts on your tax returns -- you certainly can.
Here's a link to an excellent article on this topic: http://www.mcmcpa.com/trucking-per-diems-drivers-beware