-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Um x weiterzählen und wieder bei 0 Beginnen? Ich steh völlig an, bitte um Hilfe.

  1. #1
    Unregistriert
    Gast

    Frage Um x weiterzählen und wieder bei 0 Beginnen? Ich steh völlig an, bitte um Hilfe.

    Anzeige

    Ich möchte gerne eine LED Lampe die beim erneuten einschalten immer die Farbe wechselt gezielt ansteuern können. Wenn diese Lampe also auf weiß steht, möchte ich ihr durch rasches ein und aus schalten sagen können "schalte auf blau".

    Beispiel:

    0=weiß
    1=rot
    2=grün
    3=blau

    steht diese Lampe nun also gerade auf weiß und ich möchte blau ist das sehr einfach.

    Istwert=0
    Sollwert=3

    Sollwert - Istwert = 3
    3 Schritte weiterschalten und ich habe blau.

    Wie gehe ich jedoch vor wenn ich nun von z.B. grün auf rot schalten möchte? Hier kann ich diese Rechnung leider nicht anwenden.

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.183
    Wie sagst du das die Lampe blau sein soll?
    Machst du das mit PC, µC, oder sonst irgendwie?
    Grüsse Hubert
    ____________

    Meine Projekte findet ihr auf schorsch.at

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    49
    Beiträge
    2.437
    Egal ob Hardare oder Software, das ist ein Zähler mit einem Überlauf der einenen Reset des Zählers verursacht (ihn zurück auf null setzt).
    Kommt wirklich jeder Puls einzeln, ist das kein Problem.
    In Software: Ist der Input ein zeitdiskreter Impuls, eine Zählschleife die bei jedem Signal um eins inkrementiert und einen Vergleich bei größer 3 hat.
    In Software: Ist der Input eine Zahl, dann muß der aktuelle Zählerstand genommen werden und der Input aufaddiert werden.
    Hiervon wird solange, rekursiv 4 subtrahiert, bis das Ergebniss kleiner 4 ist. Das Ergebniss wird dann zum neuen Zählerstand.
    In Hardware: Bei einzelnen Impulsen ein CD 4017 mit dem fünften Ausgang (0 bis 3 gleich 4) auf dem Reseteingang und der Eingangsimpuls am Takteingang.
    In Hardware: Bei einer Zahl als Input wird es etwas schwieriger, da es auf die Kodierung der Eingangszahl ankommt (Binär, BCD).

    Bei einer Softwarelösung, wäre noch interessant welche Plattform (Microcontroller / Board) und welche Programmiersprache / Programmierumgebung genutzt wird. Da nur so konkrete Tips gegeben werden können die sich auf dem Zielsystem dann auch so implementieren lassen.
    Geändert von i_make_it (06.02.2016 um 11:04 Uhr)

  4. #4
    Unregistriert
    Gast
    Das ganze wird mit einem Atmel und einem Relais später realisiert. Es handelt sich um ein Pool Licht, dass durch kurzes ausschalten immer die Farbe wechselt. Wie ich die Hardware hin bekomme ist für mich kein Problem, jedoch scheitere ich derzeit noch daran, wenn ich z.B. 3 Schritte weiter zählen möchte und dabei wieder über 0 weiter muss. Also ein Überlauf. Ich habe keine Möglichkeit die Lampe zu resetten um immer von 0 wegzählen zu können (dann wäre das ganze einfach). Sie "merkt" sich den letzten Zustand immer. Stoße da leider an meine Grenzen Wenn mir hier jemand mit einer kleinen "Formel" weiterhelfen kann, wäre ich sehr dankbar.

  5. #5
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.183
    Welche Programmiersprache verwendest du denn?
    In eine Formel gießen kann ich das nicht.
    Grüsse Hubert
    ____________

    Meine Projekte findet ihr auf schorsch.at

  6. #6
    Unregistriert
    Gast
    ich programmiere in bascom.

  7. #7
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.183
    Mit Bascom tu ich mir schwer, mit C könnte ich dir helfen.
    Es wird sich hier aber sich jemand finden.
    Grüsse Hubert
    ____________

    Meine Projekte findet ihr auf schorsch.at

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    15.09.2012
    Beiträge
    63
    if Zähler=4 then Zähler=0 hilft dir nicht?

    Oder meinst du das der µC nicht weiß welche Farbe beim Einschalten leuchtet? Weil die Lampe die Farbe speichert, aber der µC immer bei 0 beginnt. Dann solltest du beim µC ausschalten den aktuellen Farbwert ins EE-Prom schreiben, und beim Programmstart wieder einlesen.

  9. #9
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.04.2015
    Beiträge
    196
    (Soll+Feldgröße-Ist) Modulo Feldgröße.

    Wenn Bascom reines Basic ist, sollte der Modulo als MOD geschrieben werden, wahrscheinlich also:

    Distanz = (Soll+4-Ist) MOD 4

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    49
    Beiträge
    2.437
    Zitat Zitat von Unregistriert Beitrag anzeigen
    Das ganze wird mit einem Atmel und einem Relais später realisiert.
    Zitat Zitat von Unregistriert Beitrag anzeigen
    ich programmiere in bascom.
    Ich kann zwar auch klein Bascom, aber Google hilft ja bekanntlich.
    Mal sehen was man da rausbekommt.


    Zitat Zitat von Unregistriert Beitrag anzeigen
    Ich möchte gerne eine LED Lampe die beim erneuten einschalten immer die Farbe wechselt gezielt ansteuern können.
    Also muß der Amtel das Einschalten mitbekommen.
    "Beim Enschalten", heist schon mal "steigende Flanke".
    Also einen Interrupt mit Rising.
    http://staff.ltam.lu/feljc/electroni...Tutorial_2.pdf

    Damit bekommt Bascom dann schon mal mit das es einen Einschaltvorgang gibt.

    Zitat Zitat von Unregistriert Beitrag anzeigen
    Wenn diese Lampe also auf weiß steht, möchte ich ihr durch rasches ein und aus schalten sagen können "schalte auf blau".
    Dafür braucht es dann den Ausgang der entsprechend getoggelt wird.
    Und deine Tabelle, damit Bascom weis um wieviel Schritte es schalten muß.

    Zitat Zitat von Unregistriert Beitrag anzeigen
    0=weiß
    1=rot
    2=grün
    3=blau
    Zitat Zitat von Unregistriert Beitrag anzeigen
    Wie gehe ich jedoch vor wenn ich nun von z.B. grün auf rot schalten möchte? Hier kann ich diese Rechnung leider nicht anwenden.
    Da hatte ich ja schon geschrieben, das es ein Zähler mit Überlauf ist und wie die Rechnung funktioniert.

    Jetzt muß sich der Amtel aber noch mit der Lampe synchonisieren um die Lampe in die richtige Farbe schalten zu können.
    Und ggf. will man ja auch überwachen ob die Lampe nun an ist und in welcher Farbe.

    Zum reinen Synchonisieren, reicht ein einzelner Fotosensor (LDR) und ein passender Farbfilter (Man kennt ja noch die 3D-Brillen mit einer roten und einer grünen Folie).
    Zum bestimmen der aktuellen Farbe braucht es drei Sensoren mit den entsprechenden Filtern.

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. I2C - wie beginnen???
    Von spaceduck im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 05.12.2008, 18:42
  2. Mit was beginnen?
    Von Penecho im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 4
    Letzter Beitrag: 29.10.2007, 17:55
  3. Wie mit Microcontrollern beginnen?
    Von hitn_cry im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 4
    Letzter Beitrag: 30.07.2006, 13:46
  4. ich bin völlig neu und bitte um hilfe !!!
    Von cybernet2001 im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 12
    Letzter Beitrag: 01.05.2005, 01:59
  5. Bitte um Hilfe
    Von Xeus im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 2
    Letzter Beitrag: 30.12.2004, 17:08

Benutzer, die dieses Thema gelesen haben: 0

Derzeit gibt es keine Benutzer zum Anzeigen.

Berechtigungen

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