Answers.Body: <p>So it appears there is nothing wrong with the structure of your robot, you just aren't confirming that the robot is turning its wheels the proper distance.  I am not sure how to do that with the drag-and-drop EV3 software, but my recommendation is to have some sort of feedback loop that reads the rotation of the motors from their tachometers.  If you can, make sure that the move block is combined with the other wheels move block and not separate so that the firmware can't think that it should start the moves at separate times.</p>
  
  <p>There are firmware replacements out there that do this feedback loop automatically, if that would be a preferred option.  This allows them to rotate exactly 90 degrees or move <code>x</code> centimeters.</p>
  
  <p>You mention that you use the gyro, the last time I used that it seemed to be very hard to calibrate.  If the reading from it drifts over time even though the robot is sitting perfectly still, that could be part of your problem during rotates as well (and perhaps traveling if you use it to drive straight).</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-03-02T14:29:58.423Z
Answers.LastActivityDate: 2016-03-02T14:29:58.423Z
Answers.UserDisplayName: Gliderman
Answers.Body: <p>I know that gyros can be unpredictable. I'd recommend displaying the output of the gyro to the screen, and watching it. Is it drifting even when the robot isn't turning? That may be why. The only fix I've found is to hold the robot steady, then unplug the gyro and plug it back in, all while the robot is being held still. Then, check if the gyroscope is drifting. If it is, repeat from step one.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-08-02T00:41:01.773Z
Answers.LastActivityDate: 2023-08-02T00:41:01.773Z
Answers.UserDisplayName: Jme
Body: <p>I have the EV3 education kit.  </p>
  
  <p>When I create a program and upload it to the brick and run it, the first time it runs very well and the robot goes in a straight line, then makes a 90 degree turn. But when I run it again it does not move the same way: it does not go in a straight line and turns 95 degrees or 86 degrees.  </p>
  
  <p>Can anybody help me find why?</p>
  
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2016-02-19T22:31:48.047Z
Comments.Text: Are you sure the battery is charged?  Are you confirming that the motors rotate the proper distance?  What is the method of travel (walking, steering, etc.)?  What firmware are you running on the EV3?
Comments.UserDisplayName: Gliderman
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2016-02-20T04:50:37.820Z
Comments.Text: the battery is charged and i use move tank block (the robot has two rear wheels Responsible for moving the robot ) and i use 1.09 home edition firmeware
Comments.UserDisplayName: islam
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2016-02-23T03:11:56.523Z
Comments.Text: Do you tell the wheels to rotate a certain distance, or just "forward" until something happens? Same with the turning, do you tell it degrees, or just x time, etc.? What happens if you turn it off, and then back on and run, will it run straight for the first run? What surface is the robot on? Is your robot's weight distributed evenly? I will mention that there are firmware replacements out there that give you non-drag-and-drop programming, but much more accuracy when it comes to traveling and rotating as they can use the tachometers built into the motors (and do things like auto-pilot).
Comments.UserDisplayName: Gliderman
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2016-02-24T03:56:26.850Z
Comments.Text: I tell the wheels to go forward until it see a color or a distance by ultrasonic sensor and turn until the gyro sensor read an angle but the problem is when the wheels start to rotate there is one wheel start rotate earlier than the other wheel so the robot doesn't move well I try to replace the motors and the cables but there is no change.the robot weight distributed evenly.
Comments.UserDisplayName: islam
Tags: <ev3><education>
Title: EV3 education brick doesn't work as is should
UserDisplayName: islam
ThreadText: # EV3 education brick doesn't work as is should
  
  (Asked by: username_0 on 2016-02-19)
  
  I have the EV3 education kit.
  
  When I create a program and upload it to the brick and run it, the first time it runs very well and the robot goes in a straight line, then makes a 90 degree turn. But when I run it again it does not move the same way: it does not go in a straight line and turns 95 degrees or 86 degrees.
  
  Can anybody help me find why?
  
  **Tags:** ev3, education
  
  > **Comments:**
  > **username_1**: Are you sure the battery is charged?  Are you confirming that the motors rotate the proper distance?  What is the method of travel (walking, steering, etc.)?  What firmware are you running on the EV3?  
  > **username_0**: the battery is charged and i use move tank block (the robot has two rear wheels Responsible for moving the robot ) and i use 1.09 home edition firmeware  
  > **username_1**: Do you tell the wheels to rotate a certain distance, or just "forward" until something happens? Same with the turning, do you tell it degrees, or just x time, etc.? What happens if you turn it off, and then back on and run, will it run straight for the first run? What surface is the robot on? Is your robot's weight distributed evenly? I will mention that there are firmware replacements out there that give you non-drag-and-drop programming, but much more accuracy when it comes to traveling and rotating as they can use the tachometers built into the motors (and do things like auto-pilot).  
  > **username_0**: I tell the wheels to go forward until it see a color or a distance by ultrasonic sensor and turn until the gyro sensor read an angle but the problem is when the wheels start to rotate there is one wheel start rotate earlier than the other wheel so the robot doesn't move well I try to replace the motors and the cables but there is no change.the robot weight distributed evenly.  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_1 on 2016-03-02. Score: 1
  
  So it appears there is nothing wrong with the structure of your robot, you just aren't confirming that the robot is turning its wheels the proper distance. I am not sure how to do that with the drag-and-drop EV3 software, but my recommendation is to have some sort of feedback loop that reads the rotation of the motors from their tachometers. If you can, make sure that the move block is combined with the other wheels move block and not separate so that the firmware can't think that it should start the moves at separate times.
  
  There are firmware replacements out there that do this feedback loop automatically, if that would be a preferred option. This allows them to rotate exactly 90 degrees or move `x` centimeters.
  
  You mention that you use the gyro, the last time I used that it seemed to be very hard to calibrate. If the reading from it drifts over time even though the robot is sitting perfectly still, that could be part of your problem during rotates as well (and perhaps traveling if you use it to drive straight).
  
  
  ---
  
  ### Answer by username_2 on 2023-08-02. Score: 0
  
  I know that gyros can be unpredictable. I'd recommend displaying the output of the gyro to the screen, and watching it. Is it drifting even when the robot isn't turning? That may be why. The only fix I've found is to hold the robot steady, then unplug the gyro and plug it back in, all while the robot is being held still. Then, check if the gyroscope is drifting. If it is, repeat from step one.
  
  
  ---
  
  