You can try three person teams (I’ve never tried it with robotics). It would probably work, though.
I’d probably make three teams as follows:
- Senior with 2 freshman/sophomores
- Junior with 2 freshman/sophomores
- Junior with 2 freshman/sophomores
That splits up your experience to help the younger/less experienced ones. You may need to work closer with the teams that have the juniors since they are active in other sub-teams.
I’d give each sub-team a mechanism (subsystem with commands). If the more experienced one can write the subsystem and the harder commands – at least initially – the others can come up to speed on the easier commands.
Assuming you make your code publicly available before kick-off (if it isn’t already), you can re-use things such as drivetrain (assuming it is the same as last year).
Since you will be learning/training during the season, I’d recommend not biting off complex things (at least initially). Focus on getting the basic robot up and running and then add to it. If you have the resources (money/materials and people), I’d recommend getting a chassis bot up (hopefully matching the comp bot chassis as possible) and running for the software team to test on (make sure drive works, get auton paths working, etc.). No matter what the game is if your drive isn’t robust, your mechanisms won’t matter. So make this rock solid and this is something that can be worked on early on. In fact if you are bringing drive code from a previous year, this is something that you might be able to get your experienced programmer to set up and then have younger ones test it out as well as start mapping your drive paths for auton. If you don’t have code that you are leveraging, I would definitely have your senior involved in this one.
You can even put it on blocks and test your mechanisms (e.g. assume this motor is the intake motor and make sure it runs). The other thing you can do is set up the simulator on your computers and run that way to test before you have a robot. The key is once you get the robot, being reasonably confident your code will run, so you don’t spend a lot of time debugging/fixing simple problems – you’ll have enough big ones to solve.
If you will be using CAN devices, I’d have your team get familiar with the Phoenix Tuner if you use CTRE motor controllers or the REV Hardware Client if you use REV motor controllers (our team, in fact, has the electrical sub-team run this to make sure the wiring is correct before turning it over to software.). You can use these to make sure the motors are going the correct direction and even start playing around with closed loop control constants (I’d definitely get all of you mechanisms working in open loop before getting them working in closed loop as you can start to see how fast something needs to move if it is going to be in velocity control or what position it needs to be at if it is in position control by moving it manually).
Yes, it is a good thing to be in Michigan with the density of teams. We are up the road in Lake Orion. While we run C++, we do have Java knowledge, so if there are things we can help you with let me know.