Roving robot

Nice work!
Im just wondering, is an ultrasonic sensor adequate for detecting when it has run into something, or is it better to have contact sensors as well?