I took a course called Robotics Practicum, where we spent the semester developing and deploying labs for the freshman introductory programming course. We used the Zumo32U4 bots from Polulu, which use the same microcontroller as Arduino boards. They are very easy to get started with, making them ideal for this kind of situation.
The first lab focused more on introducing the idea of moving the robot and collecting sensor data, as well as making decisions based on what the sensor readings are. The second lab challenged the students to modify a basic code outline to create an ultimate sumo fighting bot.
During the course, I had much hands on experience both in developing the content and with running the lab sessions. It was a real eye-opener when we were in the first lab session this semester to see how our expectations for the lab deviated greatly from what the students actually ended up being able to do in the time given. We had to completely re-do the first lab after the first session was such a disaster, but the experience showed me how flexible you have to be in order to be a successful educator. I really enjoyed working with the students, particularly when they had those moments of realization where they finally understood the robot and it was behaving as desired.
Here is a link to the basic robots fighting each other. The goal is to push the opponent out of the ring! https://photos.app.goo.gl/Sk5cy4M8ivGx9if6A