I have a light compact v4 robot and it is heavier on one side than the other. I use encoders on each side with pid for moving the base. When the robot stops, the lighter side slides a small distance (3-5 degrees off) while the wheels are not moving. I am looking for dense legal objects to add to the lighter side to act as a counterweight. Does anyone know if it is legal to use vex batteries as counterweights?
That is most definitely not legal.
You could bundle together a steel block of random parts of you have them. You could either use screws or zip ties to secure it. I saw a team doing that.
If the zip ties concern you or the inspectors, I would just use bent metal bars to act as a carriage-bowl over top of the mess of parts
adding on, last year we had a gear bar and we had a steel counterweight that was literally a bunch of steel plates screwed together to make a 5-pound counterweight. Then you can screw it on to your robot.
The best solution would be to move your battery to the lighter side if it isn’t already there. You can legally add the second battery only if you have power expander on your robot, even if it is not connected to any motors. If you don’t have one already I am sure some local teams that switched to V5 will be happy do give you that old part.
As previous posters have said there are multiple options to add weight. I find bundles of the high strength shafts to be the most compact solution, but I’ve seen teams adding anything from steel flats and angles, to regular shafts with dozens of shaft collars, all the way to loose screws and nuts wrapped in anti-slip mats.
Regardless of how you balance your robot you may want to check out this recent PID thread that has a PID code example. If you add integral component calculation to the robot heading correction loop it could be a perfect match for your unique design.