We have an automatic catch function using the same matixbot ultrasound rangefinder (may be a different model, but certainly the same brand and packaging). One of our students got it running on an ardunio - the threshold "catch" distance is set with a potentiometer, and the cRIO is sent a boolean digital signal (basically, "Catch" or "Don't Catch").
LEDs hooked into the arduino let us see where the catch threshold is, so we can make tweaks by powering on, messing with the potentiometer and waving a ball around in the pit. No Arduino code changes, no cRIO code changes.
The issue we've found with the autocatch is the timing very much depends on the speed of the ball - a lobbed ball from the human player needs to trigger the catch late (short range) so it doesn't snap shut before the ball is contained, but a shot with a lot of velocity (over the truss) needs to trigger earlier so the catch is in motion when the ball gets deeper into our robot. We're messing around trying to find a sweet spot, but we might have to tune for one and operate the other manually. We could add a second digital out for a second threshold, as well - have a "catch" and a "human load" threshold distance.
Our
robot release video has some demos of this - I think many (most?) of these were automatic catches.