My teacher is suggesting a mechanical stop in the form of standoff on the bottom of the lift but I think that would create a lot of friction if it hit the ground and you tried to go forward. Do you guys use some sort of stop at the pivot points, a variable for the motors, sliding thingys like skis or something?
Try using a limit switch on the downward side of the lift. You can program the lift to stop going downward when the sensor is triggered, preventing it from hitting the ground. The limit switch’s arm is bendable, which also allows you to bend the arm to help trigger the switch at the desired height.
There’s something else I wanted to suggest, but I’m on my phone and away from my laptop, so I’ll edit this when I get back.
EDIT: If your mobile goal lift is of the rack-and-pinion kind, this is something I did for Starstruck to prevent my high hang lift from going too high and exiting the robot. I took a rack gear and a 6-32 screw (the kind the motors use), and put the screw in one of the “nuts” from the opposite side. To do this, I drilled through the rack above the nut to gain access to the other side. Here’s a picture of what I mean:
When this hits the pinion gear, the rack will stop moving, and this won’t damage anything, even the pinion gear itself. If one of the nuts is at the right height for the mobile goal, you can use this trick.
I would definitely recommend a mechanical stop as well as a programed stop. A mechanical stop will usually be a more precise stop but a programmed stop will prevent any damage to components. The way that we made a physical stop is by using a standoff attached to the back c-channel, which will act like a hammer and hit the front bar where you want to stop. Our programmed stop is simply a potentiometer value.