- Labornetzteil AliExpress         
Ergebnis 1 bis 6 von 6

Thema: Schrittmotorsteuerung - kann mir jemand einen Code schreiben? (Bezahlung)

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    31.03.2014
    Beiträge
    182

    Schrittmotorsteuerung - kann mir jemand einen Code schreiben? (Bezahlung)

    Anzeige

    E-Bike
    Hallo, mangels eigener Fähigkeit...

    Kann mir von Euch jemand einen Code schreiben für eine auf meinen Bedarf zugeschnittene Schrittmotorsteuerung? Bezahlung nach Vereinbarung. Für Arduino (wenn möglich UNO Atmega 328 - ggf. mit Porterweiterung MUX). Drehgeber/Encoder, 2 Richtungstasten, eine Taste für "Turbo", eine Taste für "Langsam". 4 (oder wenn möglich sogar 6) Positionstasten ("Recall"), eine "Store"-Taste zum speichern einer zuvor angefahrenen Position. Wichtig ist, dass die gespeicherten 4 (oder eben 6) Positionen nach Stromtrennung oder Reset korrekt erhalten bleiben (Eprom). Ein Display (i2c, 1602) zur Anzeige der Positionen.

    (Wollte das hier eigentlich unter "Stellenanzeigen" eintragen, aber ich habe nicht entdecken können, wie/wo ich das machen kann. Deswegen hier im Forum reingesetzt.)

    Andi

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    31.03.2014
    Beiträge
    182
    Ich entnehme den ausbleibenden Antworten, dass das möglicherweise garnicht so einfach ist...(?) Falls jemand unter Euch dazu Hinweise oder Vorschläge hat, würde ich mich freuen, wenn Ihr mir damit weiterhelfen könntet. Ich schätze, das mit dem Speichern ist der Knackpunkt. Ich habe bisher dazu 2 Möglichkeiten gefunden: entweder nach einem Stromausfall eine Referenzfahrt machen, oder einen (teuren) Schrittmotor mit aufgesetztem Absolutwert-Encoder verwenden. Aber hierfür fehlen mir einfach die Kenntnisse...

    Andi

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    910
    Naja,
    12 Tasten als 4x3 Matrix, I2C-Bus zum Display und zwei Ausgänge für Takt und Richtung klingen nicht sooo kompliziert.
    Wobei:
    - wie wird die Speicherstelle (1..6) der Store-Taste angewählt?
    - Wozu ist der Drehgeber/Encoder?
    - Warum nicht einfach den Controller bei "Stromaus" batteriegepuffert in den Sleep schicken?
    - Müssen nicht solche Parameter, wie "Turbo" und "Langsam" über das Display und die Tasten einstellbar sein?
    - Gibt's dann u. U. auch noch Beschleunigungsrampen mit Parametern?

    Es kommt maßgeblich auf's Beiwerk an, wie lange es dauert und was Du letztendlich dafür bezahlen musst.
    Und es kommt natürlich auch darauf an, wie weit Deine Hardware ist und wie stabil sie läuft, damit Missverständnisse oder zeitlicher Verzug gar nicht erst auftreten können.

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    31.03.2014
    Beiträge
    182
    Danke für Deine Antwort. Der Code selbst ist nicht das große Problem. Ich habe einen Code, der funktioniert. Das Problem ist die Speicheroption bzw. der Erhalt dieser gespeicherten Positionen nach Neustart oder Reset. Diese Daten gehen verloren bzw. verschieben sich. Die Batteriepufferung ist eine gute Idee. Da muss ich mal suchen, wie sowas gemacht wird, denn einfach eine Batterie parallel zum Netzteil anklemmen ist ja eher nicht zu empfehlen Da wird sich in den unendlichen Weiten sicher ein Schaltplan finden.

    Danke
    Andi

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    910
    Wenn es nur um den Datenerhalt geht, reicht wahrscheinlich auch ein Goldcap, der Dir nach dem Abschalten der Versorgungsspannung die Gelegenheit gibt, die Werte ins EEPROM zu schreiben.

    Beim Reset geht das aber auch nur, wenn Du den eigentlichen Reset-Button auf einen freien Portpin umlegst, der auf Knopfdruck die Werte speichert und anschließend einen Softreset ausführt.

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.670
    Ich hänge mich einfach mal mit rein, weil es gerade schon spät ist und mein Tagwerk eigentlich vollbracht. Wenn ich mich so an meine Steuerung mit Schrittmotor Nema17 und Atmega328P-PU erinnere, ist da nichts mit Eprom. Die Schrittmotorsteuerung an sich ist ja nicht so schwer. Auf einem Atmega328 kann man eben nichts speichern und auch nicht, wenn man da einen Reset ausführt. Also gespeichert werden muss, nachdem die letzte Aktion erfolgte und bevor Spannungsversorgung ausfällt oder Reset erfolgt. Wenn es unbedingt gespeichert werden muss, fielen mir eine SD-Karte ein und ein ESP8266 wegen dem Flash, das ist gut, verbraucht aber mehr als ein Atmega328.

    SD-Karte am UNO:

    VCC: An den 5V-Pin des Arduino.GND: An den GND-Pin des Arduino.
    CS (Chip Select): Normalerweise Pin 10, aber Sie können ihn im Code anpassen.
    MOSI (Master Out Slave In): Pin 11 am Arduino Uno.
    MISO (Master In Slave Out): Pin 12 am Arduino Uno.
    SCK (Serial Clock): Pin 13 am Arduino Uno.

    Ich denke, das würde ich in Erwägung ziehen. Oder auch das Folgende, frisch aus den Zutaten meiner Backstube:

    W25Q80RVSNJM:FLASH - NOR (SLC) Speicher IC 8Mbit SPI

    Kurze Befragung des Orakels: es sagt das funktioniert (ohne Gewähr).

    Die Pins des Arduino Uno, die du dafür benötigst, sind:


    D10 (SS - Slave Select)
    D11 (MOSI - Master Out, Slave In)
    D12 (MISO - Master In, Slave Out)
    D13 (SCK - Serial Clock)

    So weit mir gesagt wurde ist das Teil ganz beliebt, als kleiner Speicher und sehr robust. - Und ..... günstig.

    Damit wäre das Problem, so glaube ich, gelöst.
    Geändert von Moppi (Heute um 22:52 Uhr)
    Mit freundlichem Gruß
    Moppi

Ähnliche Themen

  1. PHP Code: Buch, Frameworks um in Zukunft saubereren Code zu schreiben
    Von Thor_ im Forum PC-, Pocket PC, Tablet PC, Smartphone oder Notebook
    Antworten: 1
    Letzter Beitrag: 21.11.2014, 17:25
  2. RP6 Code schreiben
    Von RAW im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 6
    Letzter Beitrag: 04.08.2010, 14:40
  3. Kann mir bitte jemand diesen Code erklären?
    Von meddie im Forum Controller- und Roboterboards von Conrad.de
    Antworten: 5
    Letzter Beitrag: 11.08.2006, 10:40
  4. Kann mir jemand den folgenden Code erklären?
    Von FiTus im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 23.06.2006, 07:18
  5. Kann mir jemand einen PIC 16F84 programmieren
    Von Mischel im Forum PIC Controller
    Antworten: 7
    Letzter Beitrag: 03.01.2005, 19:50

Berechtigungen

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

LiFePO4 Speicher Test