MPU6050 přestane číst hodnoty při spuštění motorů

Nedaří se vám s projektem a nenašli jste vhodné místo, kde se zeptat? Napište sem.
Pravidla fóra
Tohle subfórum je určeno pro konzultaci ucelených nápadů, popřípadě řešení komplexnějších projektů, které opravdu není možné rozdělit na menší části.
Většinu problémů jde rozdělit na menší a ptát se na ně v konkrétních subfórech.
Odpovědět
Queb
Příspěvky: 6
Registrován: 26 bře 2019, 21:20
Reputation: 0

MPU6050 přestane číst hodnoty při spuštění motorů

Příspěvek od Queb » 02 úno 2020, 21:48

Zdravím, pracuji na školním projektu, kde se robot, při detekci překážky, otáčí o 90°a 180° doleva nebo doprava. Problém je v tom, že při spuštění motorů gyroskop v náhodném časovém intervalu přestane číst úhel natočení (někdy to trvá 10s někdy taky 2s). Zpočátku sem se s tímto problémem setkával minimálně, ale nyní je to při každém spuštění. Proto prosím o radu, čím je to způsobeno a jak se tohoto problému zbavit.
Součástky:
  • Arduino Mega 2560
  • motor shield l293d
  • Gyro+akcelerometr MPU 6050
Zde je testovací kód, ve kterém gyroskop přestane fungovat během několika sekund od zapnutí motorů.

Kód: Vybrat vše

#include <AFMotor.h>
#include <MPU6050_tockn.h>
#include <Wire.h>

MPU6050 mpu6050(Wire);
AF_DCMotor motorL(3);
AF_DCMotor motorP(4);
long timer = 0; 
float UhelNatoceni;
void setup() {
  Wire.begin();
  Serial.begin(9600);
  mpu6050.begin();
  mpu6050.calcGyroOffsets(true); 
}
void loop(){ 
  if(millis() - timer > 50)
  {      
     UhelNatoceni = mpu6050.getAngleZ();
     Serial.println(UhelNatoceni);
     timer = millis();
     mpu6050.update();
  }
  motorL.setSpeed(80);
  motorP.setSpeed(80);
  motorL.run(FORWARD);
  motorP.run(FORWARD);   
}
Přílohy
zapojeni.png

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: MPU6050 přestane číst hodnoty při spuštění motorů

Příspěvek od pavel1tu » 02 úno 2020, 22:39

Jestliže každých 50ms děláš Serial.println(UhelNatoceni) na rychlosti 9600, tak to musí umřít
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 13 hostů