Forum: Mikrocontroller und Digitale Elektronik Stepper Driver DM556 killt I2C Verbindung bei Inbetriebnahme


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Yue B. (yuebeifong)


Lesenswert?

Hallo,

ich habe ein Problem:
Ich baue gerade eine 2DOF Motionplattform und will ein MPU6050 über I2C 
einbauen, um die Orientierung der Plattform zu kontrollieren.

Als Motoren nutze ich 2x Nema 23 mit DM556 als Treiber.
Die Schematic ist wie im Video und geht auf einen Arduino Mega.
https://youtu.be/iY_4YOlpqyI?t=958

Problem ist folgendes:
jedes mal wenn ich die Stepper Treiber mit Strom versorge 24V 5A,
wird die I2C Verbindung zum MPU6050 unterbrochen und der Controller 
hängt sich auf.

Der Sensor ist an der Plattform befästigt und mit ca. 40cm langen 24AWG 
Kabeln mit dem Arduino verbunden. Wenn ich kürze dünnere Jumper benutze 
funktioniert alles wunderbar.

Wie kann ich das Problem beheben? Und warum killt der Treiber überhaupt 
meine I2C Verbindung, hat da jemand eine Idee?

Was ich bereits versucht habe:
- 24 AWG Kabel wechseln, neu Löten
- Kondensator an den Sensor 100uF
- Kondensator an die Spannugnsausgang des Arduino
- MPU6050 mit einem zweiten Arduino mit strom versorgen und den anderen 
mit GND verbinden
- Einen zweiten Arduino der die Pulse sendet, verbunden mit dem anderen 
über digital pins, signale werden weiter gegeben, verbunden über GND

Sobald der Stromkreis irgendwie verbunden ist, wird meine I2C verbindung 
in irgendeiner Form beeinträchtigt, sodass das MPU6050 hängen bleibt.

Mit Mosfets würde es natürlich gehen, aber irgendwas sagt mir, dass es 
einfacher gehen muss, schleißlich ist doch der Sinn eines Treibers die 
Stromkreise zu seperieren.

Mir gehen die Ideen aus, hoffe irgendjemand kann mir helfen.

von Dunno.. (Gast)


Lesenswert?

Deine Motorsteuerung stört. Wie lang sind die Kabel auf denen die 
Leistung zwischen Treiber und Motor läuft?

Wie groß sind deine pull-ups an i2c und welche Spannung ist da drauf?

Probier Mal geschirmte Leitungen zu nutzen, mit Schirm einseitig auf und 
gelegt.

von Dunno.. (Gast)


Lesenswert?

Dunno.. schrieb:
> Probier Mal geschirmte Leitungen zu nutzen, mit Schirm einseitig auf und
> gelegt.

Schirm auf gnd, sollte das heißen.

von Yue B. (yuebeifong)


Angehängte Dateien:

Lesenswert?

Dunno.. schrieb:
> Deine Motorsteuerung stört. Wie lang sind die Kabel auf denen die
> Leistung zwischen Treiber und Motor läuft?

Diese Kabel sind ca. 40cm lang und sind fest am Motor montiert.

> Wie groß sind deine pull-ups an i2c und welche Spannung ist da drauf?

Die im Arduino Mega sind laut Internet:
"On the Arduino Mega 2560 board are pullup resistors of 10k for SDA and 
SCL. The internal pullup resistors of the ATmega2560 chip are about 
50k."
10k(?)

> Probier Mal geschirmte Leitungen zu nutzen, mit Schirm einseitig auf gnd
> gelegt.

Ich bin mir nicht sicher was eine geschirmte Leitung ist. Was bedeutet 
dies?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.