WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Winkelregelung für Schrittmotor

 

witthei
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 09.04.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.04.2008, 11:05     Titel: Winkelregelung für Schrittmotor
  Antworten mit Zitat      
Hallo zusammen,

für ein Studienprojekt muss ich folgenden Block mit Matlab/Simulink realisieren:

Eingang: Absolutwinkel
Ausgang: Eine bestimmte Zahl von Rechteckimpulsen bis dieser Winkel erreicht ist

Am Ausgang hängt eine BNC-2110 Karte von National Instruments. Diese ist mit einem Schrittmotor verbunden. Pro Rechteckimpuls dreht sich der Motor um einen bestimmten Winkel. Mit einem zweiten Eingang kann man auch die Drehrichtung vorgeben.

Ich hab schon vieles ausprobiert. Komme aber einfach nicht weiter. Könnt ihr mir helfen?

Viele Grüße,
Witthei
Private Nachricht senden Benutzer-Profile anzeigen


jack
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 71
Anmeldedatum: 28.12.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.04.2008, 13:25     Titel:
  Antworten mit Zitat      
Hi,

was hast du probiert und was funktioniert daran nicht?

Gruß
Jack
Private Nachricht senden Benutzer-Profile anzeigen
 
witthei
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 09.04.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.04.2008, 16:05     Titel:
  Antworten mit Zitat      
Hi,

anbei habe ich einen Screenshot von meinem aktuellen Aufbau.

Der Sollwinkel wird in eine Anzahl von Steps umgerechnet. Also angenommen ich benötige für einen bestimmten Winkel 100 Steps soll 100 mal eine Rechteckflanke ausgegeben werden. Im Rückführzweig wollte ich daher die Anzahl der ausgegebenen Rechteckflanken hochzählen lassen, bis der gewünschte Wert erreicht ist. Am +- Glied hätte ich dann 100-100=0. Darauf hin wird das Rechtecksignal mit 0 multipliziert und der Motor stoppt an der gewünschten Position.

Mein Problem daran war der Rückführzweig. Wie kann ich dort die Flanken hochzählen? Wie kann ich mit 0 initialisieren?

Viele Grüße,
witthei

stepper.GIF
 Beschreibung:

Download
 Dateiname:  stepper.GIF
 Dateigröße:  8.03 KB
 Heruntergeladen:  1433 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
jack
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 71
Anmeldedatum: 28.12.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.04.2008, 16:24     Titel:
  Antworten mit Zitat      
hi, konnte nur ganz kurz gucken... also erstelle mal ein subsystem mit einem trigger-block (rising). ein- und ausgang diese neuen getriggerten subsystems verbindest du mit einem memory block.
meld dich einfach nochmal... wie gesagt, konnte nur ganz kurz raufschauen.
Private Nachricht senden Benutzer-Profile anzeigen
 
witthei
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 09.04.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.04.2008, 13:02     Titel:
  Antworten mit Zitat      
Danke für die Hilfe. Die Regelung funktioniert inzwischen in der Simulation einwandfrei.

Wenn ich jetzt die Regelung kompilieren will um sie im Realtime Workshop auszuführen, erhalte ich folgenden Fehler:

Zitat:
Algebraic loops are not supported in generated code. Use the 'ashow' command in the Simulink Debugger to see the algebraic loops.


So wie ich das verstanden habe, sind grundsätzlich keine Algebraic Loops im Realtime Workshop möglich. Aber ohne Algebraic Loop kein Rückführzweig und ohne Rückführzweig keine Regelung. Wie soll das denn funktionieren?

Viele Grüße, witthei
Private Nachricht senden Benutzer-Profile anzeigen
 
jack
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 71
Anmeldedatum: 28.12.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.04.2008, 13:12     Titel:
  Antworten mit Zitat      
wenn dein modell nicht zu umfangreich ist, kann ich heute abend kurz drüber schauen... du bist aber nicht der erste mit diesem problem. schau dich bißchen bei mathworks um *G
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.