- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 10 von 22

Thema: Pan & Tilt Videoschiene. Mein erstes Projekt. Wie fange ich an?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Benutzer Stammmitglied
    Registriert seit
    26.12.2013
    Beiträge
    38

    Pan & Tilt Videoschiene. Mein erstes Projekt. Wie fange ich an?

    Moin,
    wie beginne ich am besten ein Programm?
    Ich habe viel vor. Wenn ich fertig bin, sollen es eigentlich 3 Programme werden, zwischen denen ich wählen kann.
    -> komplett Manuell
    -> komplett Automatisch
    -> nur ein Teil Automatisch
    Dann möchte ich div. Parameter über Potis regeln.
    -> Schritttempo der Schrittmotoren
    -> Wartezeit zwischen gewissen Aktionen
    Am liebsten noch mit Codierschalter, so dass ich z.B. vorgeben kann, der Motor soll 10x 20 Schritte machen,

    Ein ähnliches Projekt habe ich letzten Winter mit nur einem Motor gemacht, das ganze nur in TTL Technik, mit Transystoren und NE555 Timer. Das das ist zu groß, zu ungenau und schwer zu erweitern.

    Ist sowas überhaupt möglich?
    Wo könnte ich Programmschnipsel finden, die ich verwenden kann? Bin hier noch nicht wirklich fündig geworden

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    66
    Beiträge
    2.435
    Hallo,

    Zuerst solltest du dir ein Pflichtenheft zurecht legen, also wie die Bedienung sein soll und wie das Teil reagieren muss.
    Zudem wie das ganze aufgebaut wird, damit man auch weiss wie viel und was für Ein/Ausgänge man benötigt.

    Dann brauchst du auch noch die passende Hardware, den Schrittmotor kannst du nicht direkt am µC anschliessen, da brauchst du noch Hardware dazu.
    Da stellt sich zunächst due Frage ob du die Hardware- und dann auch die Software-Treiber selbst erstellen willst oder etwas fertiges nehmen willst.

    Wenn du z.B. einen der Arduinos nimmst, hast du schon mal einen fertigen Computer. Dazu gibt's dann Shields, also zusätzliche Platinen, welche verschiedene Interfaces enthalten.

    Nun gibt's aber unterschiedliche Modelle bei den Arduinos und nicht alle Shields passen zu jedem Modell. Hinzu kommt noch, dass sich nicht alle Shields miteinander kombinieren lassen und auch nicht immer mehrere identische Shields gleichzeitig betrieben werden können.

    Du musst also zuerst die Hardware zusammenstellen, was du brauchst hast du im Pflichtenheft festgehalten.
    Zu den Shields gibt es dann auch passende Bibliotheken und dazu wiederum passende Code-Beispiele.

    Zusätzlich musst du dich noch für eine Programmiersprache entscheiden und diese evtl. erst mal erlernen.
    Dies beeinflusst allerdings wiederum die Auswahl der Shields, die Bibliotheken müssen auch für deine Programmiersprache vorhanden sein.

    Wenn du das alles zusammen hast, kannst du erst mit dem Programmieren anfangen.

    Laut Theorie gibt es zwei Techniken, wie man ein Programm erstellt:
    Top Down oder Bottom Up

    Bei Top Down fängt man mit der abstrahierten Programm-Logik an, z.B. der Bedienerführung und verfeinert dann die ganzen Prozeduren bis man direkt die Hardware ansteuert.
    Bei Bottom Up fängt man bei der Hardware an und fasst dann die einzelnen einfachen Funktionen zu komplexeren immer Aktionen zusammen.

    Praktisch wird aber meistens Middle Out oder Outside In angewendet.

    Bei Outside In schreibt man zuerst ein paar einfache Hardware-Funktionen und eine Bedienoberfläche um diese zu testen. Also z.B. die Funktion um den Schrittmotor einen Schritt nach rechts zu drehen und verknüpft diese mit einer Taste, welche bei jedem Tastendruck die Funktion einmal aufruft. Dann baust du das aus, dass z.B. bei jedem Tastendruck 20 Schritte gemacht werden. Als nächstes liest du dann die Schrittzahl von deinen Codierschalter ein.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    26.12.2013
    Beiträge
    38
    Danke für deinen tollen Bereicht/Anleitung.
    Ich hätte vielleicht erwähnen sollen, das ich schon Hardware habe.

    Roboternetz RNFRA-Board mit Mega32 Bausatz
    RN-Stepp297 Schrittmotoransteuerung

    Programieren wollte ich mit BASECOM, erst mal die gratis Variante, wenn alles klappen sollte, die Pro Version. 2Kb Code ist nicht so riesig viel.

    Dann werde ich mir jetzt erst mal eine grobe Übersicht aufschreiben, und die ganzen Ports ect von dem Board raus suchen.

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    26.12.2013
    Beiträge
    38
    Irgendwie fehlt mir der Faden.
    Ich möchte nun mit dem ersten Schritt beginnen.
    Mir fehlen aber Programmschnipsel und Beispiele, wie ich das machen kann.

    Ich möchte auf dem Roboternetz RNFRA-Board mit Mega32 die beiden Schrittmotoren, Analog über einen Joystick "2 Achsen über 10kOhm Poti" in der Geschwindigkeit und Richtung steuern.
    Wenn ich jetzt davon ausgehe, das das Joypad in Mittelstellung ca. 2,5 Volt hat, möchte ich gern das als Nullpunkt haben.
    Nun rechne ich die Werte A/D um.

    Volt=Bit
    0=0
    0,5=113
    1,0=226
    1,5=339
    2,5=452
    3,0=565
    3,5=678
    4,0=791
    4,5=904
    5,0=1017

    Ich möchte also zwischen ca. Bit 340-560 Null Impulse auf den Schrittmotor
    Rechtslauf:
    Bit=Impulse/Sek
    1=1000
    2=998
    3=996
    ..
    339=1
    340-560= Stop
    Linkslauf
    561=1
    ....
    1023=1000

    Ich hoffe das ist verständlich. Wie kann ich das umsetzten?
    Ich habe jetzt schon über 10h das Forum hier durchsucht, aber nichts in der Art gefunden.

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Geistesblitz
    Registriert seit
    16.03.2011
    Ort
    Dresden
    Alter
    37
    Beiträge
    1.937
    Da würde ich mit einer if-Verzweigung rangehen.
    Kannst sie ja mit elseif aufteilen, dann die Bereiche ADC-Wert<340, ADC-Wert>560 und alles andere (also der Bereich dazwischen)
    Die Umwandlung von ADC-Wert in Pulsfrequenz in eine Formel verpacken und in den Teilen, wo der Motor laufen soll, jeweils ein anderes Richtungs-Bit setzen. Die Formeln kannst dir selber aufstellen, wahrscheinlich soll die Frequenz von 1 linear ansteigen, je weiter der ADC-Wert vom Mittelbereich abweicht. Also wirds dann irgendwas sein in der Form Pulsfrequenz=1018-3*ADC_Wert (würde in diesem Fall an den beiden Enden die Frequenzen 1018 und 1 ergeben). Im anderen Bereich dann sowas wie Pulsfrequenz=1018-3*(1023-ADC-Wert) oder so. Wie gesgt, ist eher als Skizze zu verstehen und müsste noch überprüft werden. Wär wahrscheinlich sinnvoll, den mittleren Bereich symmetrisch zu machen, so wie es jetzt ist hast du auf einer seite 23 Werte mehr als auf der anderen (so ein ADC-Wert kann Werte bis 1023 annehmen, eben volle 10 Bit). Um die Formeln in Bascom zu realisieren musst du wahrscheinlich ein paar Hilfsvariablen einführen, da du immer nur eine Rechenoperation pro Zeile ausführen kannst. Würde dann so aussehen:
    Code:
    Dim ADC_Wert as Integer
    Dim Pulsfrequenz as Integer
    Dim Temp as Integer
    
    Temp = 3*ADC_Wert
    Pulsfrequenz = 1018-Temp
    Ist jetzt auch nur ein Codeschnipsel als Beispiel, hoffe es hilft dir.
    AI - Artificial Idiocy

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    26.12.2013
    Beiträge
    38
    Danke. Ja den Grundgedanken habe ich verstanden, die Werte die ich erhalten mit if und elseif .. zu filtern.
    Mir fehlt gerade der komplette Einstieg in das Ganze.
    Wie frage ich die Eingänge ab? Ich nutze die Eingänge 1/2 und sind nach Standard 7E/7F gejumpert.
    Ich sollte vielleicht erst mal anfangen, einfach nur einen Taster zu nehmen, der bei "1" den Motor mit Takt xy laufen lässt und mit "0" wieder stoppt.
    Mir fehlen irgendwie Quellcodes die ich zum verstehen und begreifen an das RNFRA-Board anwenden kann.

Ähnliche Themen

  1. Pan Tilt Head
    Von SmokeT im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 8
    Letzter Beitrag: 23.05.2014, 23:30
  2. Verkaufe Pan & Tilt - Kopf mit Servos
    Von kellerkind im Forum Kaufen, Verkaufen, Tauschen, Suchen
    Antworten: 1
    Letzter Beitrag: 14.11.2013, 19:04
  3. Verkaufe Räumung:US-Sensor, IR-Sensor,Displays,MTreiber,Servorboard, Pan&Tilt Köpfe
    Von kellerkind im Forum Kaufen, Verkaufen, Tauschen, Suchen
    Antworten: 3
    Letzter Beitrag: 18.06.2012, 18:42
  4. Projekt - wie fange ich am besten an :)
    Von Tobias Vonau im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 8
    Letzter Beitrag: 05.03.2012, 18:55
  5. Wie erstelle ich mein erstes Programm?
    Von Fabian1992 im Forum Asuro
    Antworten: 2
    Letzter Beitrag: 08.03.2009, 16:35

Berechtigungen

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

Labornetzteil AliExpress