Hallo zusammen,
hatte vor ein paar Wochen schon mal ein paar Fragen zu meinem Projekt…
Link zum Nachlesen:
/t/microstepping-mit-c-und-l6208/5291674
Es handelt sich um eine Schrittmotoransteuerung im Microstepping mit dem Motortreiber L6208. Anbei das Datenblatt, sowie das Application Note zum Baustein L6208:
http://www.st.com/stonline/products/l… (Datenblatt)
http://www.st.com/stonline/products/l… (Application Note)
Dazu benötigt man zwei um 90° zueinander verschobene Sinuswellen als VREF-Signale.
Um diese Signale zu erstellen benutze ich einen Controller, der mir ein PWM-Signal mit veränderlichem Puls-/Pausenverhältnis ausgibt und auf ein RC-Glied schickt. Den Code habe ich überprüft, der ist richtig.
Die Ausgabe sieht wie folgt aus:
http://img20.imageshack.us/i/img2646v.jpg/
Erklärung dazu:
Channel1: Sinus, der aus dem PWM- Signal des µC besteht und über ein R-C- Glied geht
Channel2: PWM- Signal zur Sinuserzeugung
Das R-C-Glied sieht so aus:
http://img239.imageshack.us/i/vref.jpg/
Mir wurde damals geraten, die Zeitkonstante zu vergrößern, was ich auch getan hab, indem ich den Kondensator vergrößert habe. Das Signal wurde schön zu einem Sinus verschliffen. Der Motor hat sich dann auch gedreht, allerdings waren die Kondensatoren im RC-Glied zu groß, sie haben zu viel Strom aus dem Controller gezogen…
Nun wollte ich den Widerstand vergrößern, allerdings funktioniert das nicht so, wie ich das gerne hätte…
Wenn ich den Widerstand R9 vergrößere wird das Signal nur zusätzlich gedämpft, also die Amplitude verringert, ebenfalls beim Widerstand R8.
Um das Signal zu glätten müsste ein weiterer Widerstand zwischen C6 und V_REF an L6208 eingebaut werden. Da ich aber ein Eval-Board verwende, kann ich dort keinen Widerstand einfügen!
Gibt es da noch eine andere Lösung, um mit einem Widerstand das Signal zu glätten? Einen Impedanzwandler,etc. möchte ich aus verschiedenen Gründen nicht einsetzen.
Vielen Dank für eure Hilfe!
Liebe Grüße,
Markus