One of the easiest ways to improve the accuracy of LEGO Education SPIKE Prime robots is to use acceleration and deceleration when moving. This also applies to LEGO Mindstorms EV3 and LEGO Mindstorms Robot Inventor and generally to most robots that we know of. This tutorial demonstrates how acceleration and deceleration could be used and what improvement in accuracy and consistency you could expect. This is quite useful for FIRST LEGO League and other robotics competitions.
- 23 Jun 2022
- LEGO MINDSTORMS, LEGO Education SPIKE Prime
- Scratch, LEGO Education SPIKE App Word Blocks, Programming, Acceleration
The reason why acceleration is so useful is because it prevents or at least it reduces the slip on the field. This means that the wheels will not slip. When the wheels slip we already don't not where the robot is. There is a caveat here - the wheels always slip and the only reliable way to know where we are on the field is with the use of sensors. If we are not using sensors we truly don't know where the robot is. But acceleration and deceleration could help us improve the accuracy. Check out the video to see a live demonstration.
How to use this tutorial?
Download the program from the lesson, build the robot and experiment. Try to reach the same mission model as we do here in the video. Try to reach another mission model. Try to do it 10 times and see how the consistency of the robot has improved.
In this video tutorial we use LEGO Education SPIKE Prime and our robot is designed and is programmed to move from the base to a specific location, near a mission model. And what we want to demonstrate here is how we can improve the accuracy of the robot by using the blocks for acceleration.
When we are moving with the robot on the field, what we need to do is try to stay consistent with the behavior of the robot. And in previous tutorials you saw how difficult it is to get to a specific location on the field and with this tutorial we are trying to demonstrate how accurate the robot will behave if we have blocks for acceleration. With the first drive this is where we arrived. We haven't used any sensors in this tutorial. No, that's not the goal. The goal is to see if we use acceleration would this make the world more consistent without any sensors? Just moving forward, moving forward, turning and it's two. It's an interesting tool to try to achieve some of the initial programs, especially for rookie teams, before they get started with the sensors. Second run, you saw that the road did not arrive exactly as last time, but it's close enough, it's not that bad. We use this phone from the Replay competition so that we can demonstrate and measure where the robot arrived the last time and we can show you in the story where it is right now. And there was about one inch of a difference, like 2-3 cm difference. Let's try it one more time. And what we'll do after that is to enter into the program and see how the Scratch program for this robot looks like. We've developed a Scratch program for the LEGO Education Spike Prime that uses the block for acceleration. What you see with the third try is that the robot is not that consistent. It is always a good idea to use sensors when using any robot and it's practically impossible to get to a high score in the competition without using any sensors. And this is what we hope you get from this tutorial. Yes, you can move with the robot, you can improve the accuracy a little bit with acceleration and we'll see in a minute in the program, but it's difficult to get it working every time.
This here is the program, the Scratch program that we've developed and on the right you can see the video tutorial. So let's look at the programs, the blocks that are in this program. First, when the program starts, we set the movement motors to A and B because A and B are the two motors that we use for moving with the robot and we set the speed to 50%, not very fast, not very slow. The goal is to have consistent behavior, set movement acceleration to slow and that's the new thing here. We would like to accelerate with the robot, but we would like to accelerate slow and because we accelerate the wheels, they will not slip on the map. And as we accelerate slow, we have the different blocks for moving with the robot. We have a move for 30 CM, move for 4.5, move for 30. And that's basically the program. Yes. Let's see how it behaves. We start the program and now we'll try to reach this mission model. Move. We now turn. We now move. We will turn and we move 1234567 blocks. I hope the program is clear. The goal again is to demonstrate that with slow acceleration you can get a better consistency of the robot, a more reliable robot. In some of the next few programs, we will focus on the sensors. For now, download this program on your robot and try to reach the mission model. Try to modify the program for your robot and for the mission model that you need. Try to compare how consistent the robot is when it has slow acceleration and when it has fast acceleration. See you in the next tutorial.