-         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 14 von 14

Thema: Takt- Richtungssignale erzeugen

  1. #11
    Erfahrener Benutzer Roboter Genie Avatar von malthy
    Registriert seit
    19.04.2004
    Ort
    Oldenburg
    Beiträge
    1.379
    Anzeige

    Matlab auf einem Raspberry Pi? Halte ich für ausgeschlossen. Lasse mich aber gerne eines Besseren belehren.

  2. #12
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    26.11.2004
    Beiträge
    451
    Auch möglich, so gut kenne ich mich mit matlab nicht aus. Hab mal ein bischen google bemüht und scheint wohl nur ein I/O device zu sein. Aber auch etwas interesantes gefunden, das es evtl möglich wäre, c-code auf matlab zu erzeugen und diesen dann auf dem Pi auszuführen. Aber wie gesagt, kenne mich damit nicht gut genug aus.

  3. #13
    Neuer Benutzer Öfters hier
    Registriert seit
    19.10.2013
    Beiträge
    5
    Vielen Dank erstmal für die zahlreichen Antworten und Vorschläge. Die von mir vorgeschlagene Steuerung unterstützt natürlich nur 50kHz - das hatte ich bei meiner Antwort nicht beachtet. Da es sich jedoch nicht um eine zentnerschwere CNC Fräse handelt halte ich es nicht für ganz ausgeschlossen, dass die Schrittmotoren auch mit sehr hohen Frequenzen bewegt werden können. Der Vergleich mit dem zweiarmigen Delta-Roboter trifft es schon ziemlich gut. Der Aktionsradius wird sich allerdings auf wenige mm^2 beschränken und zwecks ruhigerem Lauf hatte ich an Mikrostepping (1/16 Schritte) gedacht. Bei einer Auflösung der Aktuaren von beispielsweise 0.005mm im Vollschritt komme ich also auf 3200 Schritte/mm im 1/16-Schritt. Bei 50kHz könnte ich somit eine Geschwindigkeit von ca. 16mm/sek fahren. Das halte ich bei sehr kleinen bewegten Massen und den dadurch geringen Beschleunigungs- und Trägheitskräften für machbar. Allerdings habe ich da keinerlei Erfahrungswerte auf die ich zurückgreifen kann - berichtigt mich also gern, falls das aus irgendwelchen Gründen eher nicht im Bereich des Möglichen liegen sollte.
    Viel wichtiger war mir jedoch die Eigentliche Frage, wie ich die Signale für die Motoren erzeugen kann. Hier scheint mir tatsächlich die beste Lösung der Vorschlag mit dem Mikrocontroller zur Berechnung der inversen Kinematik zu sein. Ich habe mir den Arduino jetzt mal ein bisschen genauer angeschaut. Da gibt es ja durchaus Varianten, welche entsprechend hohe Taktraten haben. Ausserdem scheint es recht einfach zu sein Displays, externe Schalter, evtl. sogar zusätzlichen Speicher sowie eine PC-unabhängige Stromversorgung zwecks stand-alone Betrieb anzuschliessen. Im Internet finden sich dazu reihenweise Tutorials und Beispielcode - es sollte also eigentlich kein Problem sein, sich da einzuarbeiten.
    Ich danke euch für die schnelle Hilfe!
    Piattu

  4. #14
    Neuer Benutzer Öfters hier
    Registriert seit
    23.08.2013
    Beiträge
    8
    Zitat Zitat von piattu Beitrag anzeigen
    Der Aktionsradius wird sich allerdings auf wenige mm^2 beschränken und zwecks ruhigerem Lauf hatte ich an Mikrostepping (1/16 Schritte) gedacht. Bei einer Auflösung der Aktuaren von beispielsweise 0.005mm im Vollschritt komme ich also auf 3200 Schritte/mm im 1/16-Schritt. Bei 50kHz könnte ich somit eine Geschwindigkeit von ca. 16mm/sek fahren. Das halte ich bei sehr kleinen bewegten Massen und den dadurch geringen Beschleunigungs- und Trägheitskräften für machbar. Allerdings habe ich da keinerlei Erfahrungswerte auf die ich zurückgreifen kann - berichtigt mich also gern, falls das aus irgendwelchen Gründen eher nicht im Bereich des Möglichen liegen sollte.
    Das ist absolut machbar, abgesehen davon kannst du immernoch auf 1/8 umschalten und hast dann die doppelte Verfahrensgeschwindigkeit oder sparst Speicher.

    Zitat Zitat von piattu Beitrag anzeigen
    Viel wichtiger war mir jedoch die Eigentliche Frage, wie ich die Signale für die Motoren erzeugen kann. Hier scheint mir tatsächlich die beste Lösung der Vorschlag mit dem Mikrocontroller zur Berechnung der inversen Kinematik zu sein. Ich habe mir den Arduino jetzt mal ein bisschen genauer angeschaut. Da gibt es ja durchaus Varianten, welche entsprechend hohe Taktraten haben. Ausserdem scheint es recht einfach zu sein Displays, externe Schalter, evtl. sogar zusätzlichen Speicher sowie eine PC-unabhängige Stromversorgung zwecks stand-alone Betrieb anzuschliessen. Im Internet finden sich dazu reihenweise Tutorials und Beispielcode - es sollte also eigentlich kein Problem sein, sich da einzuarbeiten.
    Ich danke euch für die schnelle Hilfe!
    Piattu
    Ich würde es übrigens so umsetzen:

    Pro gewünschter Bewegung würde ich ein Array mit n Zellen erstellen, wobei n die Anzahl der maximal möglichen Step signale darstellt, also zb bei 3s wäre das Array 3s*50000Hz=150000.
    in jede Zelle kommt ein byte, du hast also 8 bit frei für die 6 Dir/step Signale. Von matlab lässt du dir berechnen wann welche Achse sich in welche Richtung bewegen soll und dass im 1/50kHz=0,02ms Takt
    Jetzt programmierst du auf deinem Atmega/arduino einen Timer der alle 0,02ms aufgerufen wird, dir dein Byte an einen Port ausgibt und die lauf variable vom Array um 1 erhöht. Dass wars dann eigentlich schon
    Längere Bewegungsabläufe musst du dann natürlich auf eine SD-karte auslagern oder du besorgst dir einen µC mit genügend großem Flash-speicher

    MfG Urs

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. Antworten: 15
    Letzter Beitrag: 30.04.2013, 15:42
  2. Takt dür den Schrittmotor erzeugen
    Von sahra im Forum Assembler-Programmierung
    Antworten: 9
    Letzter Beitrag: 19.10.2010, 15:17
  3. CLK Takt höher als Datenbus Takt (SDRAM)
    Von saoirse im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 25.08.2007, 17:12
  4. 455kHz - Takt erzeugen
    Von sigo im Forum AVR Hardwarethemen
    Antworten: 7
    Letzter Beitrag: 11.03.2006, 10:28
  5. 1Herz takt erzeugen..Atmega16 evt. DCF77?
    Von tms2002 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 7
    Letzter Beitrag: 08.03.2006, 11:25

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •