WRO Elementary 2015. Field Run. Part 2
Showing the same run, but from a different angle. This allows you to see more of the way we sensors work and how exactly the robot positions itself.
- #192
- 27 Dec 2015
Showing the same run, but from a different angle. This allows you to see more of the way we sensors work and how exactly the robot positions itself.
This video tutorial is about understanding the "magic". In this video tutorial, we would conduct an experiment and will look at how exactly does the integral part of the PID algorithm compensate for the error that the LEGO Mindstorms EV3 robot makes.
All worked as expected, up until know because the robot got lost. This happens when we turn right and the line does not continue to the right. Now the robot must somehow understand that it is "lost" and escape.
After several questions about the use of the LEGO Mindstorms NXT Light Sensor with the EV3 software, we have decided to go through this problem in this video tutorial and pay special attention to the Raw Sensor Value Block.
Sometimes when we are working with sensors it is important that the time between two consecutive samples is the same. This will make each sample equally important and independent of how much time it took to take it. In this video tutorial, we would use the EV3-G timer block to make a "WaitForTick" program where the time between each sample of the EV3 Gyro takes exactly 0.02 seconds.
We discuss the state of "Lost" and the different ways we could escape this state. We also build the next step of our State machine programming pattern where the next state is determined by the previous state.
In this tutorial, we would implement a program that finds the minimum and maximum value detected by the sensor and stores this two values in an array.
The final video from the course. The robot escapes the state where it is lost. This happens if it can not continue in any direction.
Many times we just upload blocks and leave it up to you to use it. In this tutorial, I would like to show you how to use the implemented blocks. How to import them into the EV3-G software. How to see them in the palette. How to drag and drop them to build a working program.
The challenge for this video is to program a menu that is controlled from the LEGO Mindstorms EV3 brick screen.
After we take each sample, we perform calculations and these calculations could take different time. It is important to know how much time does it take to perform the calculations. In this video tutorial, we would data log the time and plot the data.
The robot works on the field and decodes the different colours that represent the rows and the columns.
After we have introduced a menu in the previous video, this video focuses on storing the values in an array. It presents a basic use of arrays.
"Array initialization" is the first step in every program that involves Arrays. This applies to most programming languages and for EV3-G it is a must.
In this tutorial, we would show you how to initialize the array and how to extract this logic in a new block
We would continue from the previous program where we used variables and we would change this to arrays.
In the course section for Advance Sensor Calibration we previously showed you how to find the minimum and maximum value for a single LEGO Mindstorms Color Sensor and to store this value in an array. The program was implemented with the EV3-G software. In this tutorial we are going to find the Min and Max for all the four sensors and to store all the 8 values in an array.
Following the Advance Light/Color sensors calibration for a minimum value for a single sensor tutorial, in this one, we continue with finding the maximum value detected by a sensor and storing this value in an array.
There is no block for programming the Ultrasonic Sensor in the retail version of the LEGO Mindstorms EV3 software. In this video tutorial we will show you how you can download & import such blocks in order to use the sensor.
Implement the program for array initialization.
Follow the video tutorials for initializing arrays and implement the program.
One of the smartest things you could do in any software program is to extract logic in small reusable, simple, understandable units. In EV3-G these are called Blocks and we are going to extract the logic for finding a minimum and maximum for each of the sensors in a new block.