Ultrasonic problems with the red and blue balls?
The ultrasonic cannot detect the color of objects. It's just to detect the distance between the sensor and an object in it's line of sight.

To find objects in the surrounding area of your robot you have to look all around. This is simply done by rotating your robot or your sensor. When you measure a distance in a certain range (best results between aprox. 10-50cm) you can stop rotating and you have your direction. Then you start to move and check for better results every 10cm or something like that again if you are still facing the right way.

Stoping exactly in contact won't be possible unless you can say I am Xcm away and now can move exactly Xcm in this direction since the ultrasonic sensor cannot measure distances below a certain level (around 5-10cm depending on the size/shape/material of your object).