I2C und BLMC Controller

Gast #4041791
Lesenswert?
• ▲
▼
Hallo zusammen,

ich habe dieses Forum bereits gründlich durchsucht, wie z.B. diesen 
Thread Beitrag "I2C meldet status 0x38" , bin aber leider 
nicht fündig geworden.

Ich möchte meinen BLDC Controller (ATmega88) über TWI ein Datenbyte 
senden, mit dem die Drehzahl des Motors verändert werden kann. D.h. OCXA 
und OCXB ändern, um die PWM anzupassen. Dazu verwende ich ein Poti das 
mit einem weiteren ATmega88 (Master) verbunden ist und eben ein Byte 
(0...255) erzeugt. An dieser sein angemerkt das alles perfekt 
funktioniert, solange der Motor NICHT dreht. Sobald ich den Motor 
anstupse (derzeit ist noch keine Anlaufkommutierung implementiert) und 
die Kommutierung auf Basis des Analog Comparators einsetzt funktioniert 
die TWI/I2C Verbindung nicht mehr.

Weitere Informationen: - 100 Ohm in Serie zwischen SDA/SCL der beiden 
ATmega88, sowie 3,7kOhm Pullup-Widerstände.
- Basis ist der Controller im obigen Link dargestellt
- Master f_CLK = 20MHz
- Slave f_CLK = 12MHz
Falls noch weitere Daten benötigt werden stehe ich natürlich zu 
Verfügung.

Mich wundert es, dass alles gut funktioniert solange der Motor steht, 
aber wenn er läuft keine Daten mehr übertragen werden. Vielleicht kommen 
sich die Interrupts von TWI/I2C und Analog Komparator in die Quere.

Vielen Dank für eure Hilfe!
Gast #4042082
Lesenswert?
• ▲
▼
Zunächst einmal vielen Dank für die Antwort. Ich habe jetzt mal größere 
Kapazitäten zur Spannungsstabilisierung ausprobiert. Zusätzlich habe ich 
den Tiefpassfilter (zur Messung der BEMF) etwas angepasst. D.h. die 
Grenzfrequenz noch etwas weiter heruntergesetzt. Viel weiter sollte ich 
nicht gehen, da sonst die Phasenverschiebung zu groß wird. Es passiert 
immernoch das gleich wie oben beschrieben.

Anmerkung: Wenn ich nur den Motor ansteuere, also kein TWI nutze, läuft 
dieser einwandfrei!
Gast #4042804
Lesenswert?
• ▲
▼
Ich melde mich noch ein letztes mal zurück! Ich habe erneut den gesamten 
Aufbau optimiert in Hinsicht auf möglichst niedrige paratisäre 
Induktivitäten/Kapazitäten. Jetzt funktioniert alles! Diese Antwort ist 
für diejenigen gedacht die das selbe Problem haben.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.