Beiträge von charly_01

    Hi,


    erst mal danke für deine Antwort und das Angebot das du Betatesten würdest. Also den Piepser den ich jetzt benutzt habe würde ich mal behaupten das der schon laut genug währe aber es gibt wesentlich lautere die dann aber nicht mehr direkt am Kontroller angeschlossen werden können. Damit man einen beliebigen Piepser benutzen kann müsste man noch eine kleine Verstärkerschaltung mit einbauen können aber das ist nix wildes. Z.Z. wollte ich erst mal mit so wenig wie möglich schnick schnack an externen Bauteilen auskommen damit möglicht viele Leute die Schaltung ohne Probleme Nachbauen können.


    Also das mit der Blinkeranzeige ist eine knifligere Sache wie ich angenommen hatte. Das Problem bestaht darin, das ich nur 2 Timer im Prozessor habe. 1 Timer wird gebraucht für die Tachofunktion, da ich ja messen muss wie schnell sich das Rad dreht und den zweiten Timer benötige ich für die Drehzahlanzeige, damit muss ich die Zündimpulsabstände pro Zeiteinheit messen.


    Das Problem liegt jetzt darin zu erkennen, wann der Blinker mal wieder ausgeschaltet wurde, denn sonst würde, wenn einmal aktiviert die Anzeige ständig blinken anzeigen bis die Minute Blinkzeit abgelaufen ist oder die Bremse betätigt wurde da ja auch mit der Bremse der Blinkimpulszähler auf 0 gesetzt wird.


    Das Dreieck für die Blinkanzeige bekomme ich im Moment auch noch nicht hin, da ich dafür einen Benutzerdefinierten Zeichensatz erstellen muss, der dieses Zeichen beinhaltet. Damit muss ich mich auch erst noch beschäftigen. Könnte evtl. Später noch mit rein kommen doch ich habe immer noch das Timerproblem.


    Programmieren musst du auch nicht können um die Software in den Kontroller laden zu können, allerdings ist etwas Löterfahrung nicht schlecht wenn du die Steuerplatine aufbaust.


    Wegen deinem Vorschlag die Zeile 3 als Warnanzeige zu benutzen kann ich gern entsprechen. Werde ich mal in der nächsten Version so mit einbauen. Fand immer nur das die Anzeige dann etwas leer aussieht. Allerdings wenn noch Tacho und Drehzahlmesser mit drauf sind siehts auch wieder voller aus auf der Anzeige.


    PS.: Das Video hast du gesehen wie ich die Warnanzeige für den Blinker gemacht habe?


    M.f.G.


    Charly

    Hi,


    solche Displays habe ich auch, nur leider hat das Display keine Beleuchtung. Aber im Prinzip kannst du die nehmen.


    So habe jetzt weiter Geprogt.


    Es gehen jetzt:


    Blinkalarm
    Bremslichtabfrage
    Fernlichtabfrage
    Batt-Spannungsanzeige


    Ich habe aus techn. Gründen auf die Blinkeranzeige verzichtet. Es erfolgt ein Alarmsignal von ca. 3 sec sobald der Blinker länger als 1 min eingeschaltet ist. (auf dem Video Verkürzt) Danach geht das ganze von vorne los bzw. wenn die Bremse betätigt wird, fängt der Zähler auch wieder von vorn an. Das habe ich gemacht weil man an Ampeln oft die Bremse gezogen hält und dann soll es ja nicht zum Alarm kommen und es spart mir einen von den beiden Timern im Prozessor die ich später noch für den Tacho und Drehzahmesser benötige.


    Die Batt Spannungsanzeig wird alle 2 Sec aktualisiert, damit die Zahlen nicht anfangen zu flackern.


    Hier mal ein kleines Video davon


    http://home.arcor.de/charly_001/bilder/v02.avi



    Hat jemand Lust Beta-Tester zu spielen und das mal an seinem Moped anzubauen ??? Wenn ja dann Meldet euch bitte. Ich kann euch den Prozessor Programmiert zuschicken bzw. am besten währe es wenn jemand einen AVR Programmer hat dann könnte ich einfach nur immer die Aktuellste Software schicken die Ihr dann Flashen könnt. Das würde mir mehr Zeit zum Programmieren geben als wenn ich dann auch noch alles immer ans Moped Bauen muss. So einen Programmieradapter kann man sich auch selbst für ca. 2€ bauen.



    Für die Leute die es mal Interessiert wie es hinter den Kolissen aussieht.


    \'###############################################################################################################
    \'# Simson Multifunktionsanzeige V0.2
    \'#
    \'# Drehzahlmesser
    \'# Batt Spannung ok
    \'# Batt Ladestrom
    \'# Blinkerkontrolle ok
    \'# Bremslichtkontrolle ok
    \'# Fernlichtkontrolle ok
    \'# Tacho
    \'#
    \'# Spannungsteiler 10K an zu messende Spannung
    \'# 4,7K an GND
    \'# Mittelabgriff an PC0
    \'#
    \'# Piepser an PD0
    \'#
    \'# Eingänge:
    \'# Fernlich an BD5
    \'# Bremslicht an PB1
    \'# Blinker an PB0
    \'#
    \'###############################################################################################################


    $regfile = \"m8def.dat\" \' Prozessor Mega8
    $crystal = 8000000 \' 8MHz Quarz (interner Takt)


    \'###############################################################################################################
    \'# Portzuweisungen
    \'###############################################################################################################


    Config Adc = Single , Prescaler = Auto
    Config Portc.0 = Input \' ADC C0 auf Eingang schalten
    Start Adc \' ADC Einschalten



    Config Portb.0 = Input \' Eingang Blinker PB0
    Portb.0 = 1 \' Pullup aktivieren PB0
    Config Portb.1 = Input \' Eingang Bremslicht PB1
    Portb.1 = 1 \' Pullup aktivieren PB1
    Config Portb.5 = Input \' Eingang Fernlicht PB5
    Portb.5 = 1 \' Pullup aktivieren PB5
    Config Portd.0 = Output \' Port auf Ausgang setzen
    Portd.0 = 0 \' Port auf low setzen


    Dim Z As Word \' Zähler für Blinkzeit
    Z = 0 \' Zähler auf 0 setzen
    Dim X As Byte \' Zähler für Anzahl Ton-Signale wenn Blinkdauer erreicht
    X = 0 \' Zähler auf 0 Setzen
    Dim U As Word \'Spannung aus ADC
    Dim A As Single \' ADC
    Dim B As Byte \' For Next Zähler des Hauptprogramms (Aktualisierung des ADC für BATT Spannung



    Blinker Alias Pinb.0 \' Blinkerauswertung an Port PB0
    Bremse Alias Pinb.1 \' Bremslichtauswertung an Port PB1
    Fernl Alias Pinb.5 \' Fernlichtauswertung an Port PB5
    Led Alias Portd.0


    \'###############################################################################################################
    \'# LCD Grundeinstellungen
    \'###############################################################################################################
    \'# LCD 20 x 4 an Mega 8
    \'# RS = PB2
    \'# E = PB3
    \'# D4 = PC5
    \'# D5 = PC4
    \'# D6 = PC3
    \'# D7 = PC2
    \'###############################################################################################################


    Config Lcd = 20 * 4 \' LCD 20x4 mit HD 44780 Controller
    Config Lcdpin = Pin , E = Portb.3 , Rs = Portb.2 , Db7 = Portc.2 , Db6 = Portc.3 , Db5 = Portc.4 , Db4 = Portc.5


    Display On \' LCD Einschalten
    Cls \' LCD-Anzeige löschen
    Cursor Off \' Cursor ausschalten


    \'###############################################################################################################
    \'# Startanzeige
    \'###############################################################################################################
    Locate 1 , 7 \' Erste Zeile 7 Spalte
    Lcd \"Simson\" \' Text ausgeben
    Locate 2 , 3 \' Zweite Zeile 3 Spalte
    Lcd \"Multifunktions-\" \' Text ausgeben
    Locate 3 , 4 \' 3 Zeile 4 Spalte
    Lcd \"Anzeige V(0.2)\" \' Text ausgeben
    Locate 4 , 3 \'4 Zeile 3 Spalte
    Lcd \"(c) by Charly_01\" \' Text ausgeben
    Wait 1 \' 1 sec Warten


    Cls \' Anzeige löschen
    Locate 3 , 8 \' 3. Zeile 8 Spalte
    Lcd \"FL.aus\" \' Für Fernlicht Text ausgeben
    Locate 3 , 15 \' 3 Zeile 15 Spalte
    Lcd \"BL.aus\" \' Für Bremslicht Text ausgeben
    Locate 4 , 1 \' 4 Zeile 1 Spalte
    Lcd \"Bat. V\" \' Batt. Spannung Text ausgeben
    Locate 4 , 12 \' 4 Zeile 11 Spalte
    Lcd \"Lade.\" \' Ladestrom ausgeben


    \'###############################################################################################################
    \'# Hauptprogramm
    \'###############################################################################################################


    Do
    For B = 1 To 255
    \'###############################################################################################################
    \'# Abfrage Bremslicht
    \'###############################################################################################################


    If Bremse = 0 Then
    Z = 0
    Led = 0 \' wenn Bremse betätigt (gegen Masse) dann
    Locate 3 , 18 \' Zeile 3 Spalte 18
    Lcd \" an\" \' LCD \" an\" schreiben
    Else \' sonst
    Locate 3 , 18 \' wenn Bremse nicht betätigt
    Lcd \"aus\" \' \"aus\" schreiben
    End If \' ende schleife


    \'###############################################################################################################
    \'# Abfrage Fernlicht
    \'###############################################################################################################


    If Fernl = 0 Then \' wenn Fernlicht an (gegen Masse) dann
    Locate 3 , 11 \' Zeile 3 Spalte 11
    Lcd \" an\" \' LCD \" an\" schreiben
    Else \' sonst
    Locate 3 , 11 \' wenn Fernlicht aus
    Lcd \"aus\" \' \"aus\" schreiben
    End If \' Ende Schleife


    \'###############################################################################################################
    \'# Abfrage Blinker
    \'###############################################################################################################


    If Blinker = 0 Then \' wenn Blinksignal erkannt dann
    Z = Z + 1 \' Z + 1 Rechnen
    If Z > 300 Then
    For X = 1 To 7
    Cls
    Locate 2 , 3
    Lcd \"Blinker ALARM\"
    Led = 1
    Waitms 100
    Led = 0
    Cls
    Waitms 300
    Next X
    Locate 3 , 8 \' 3. Zeile 8 Spalte
    Lcd \"FL.aus\" \' Für Fernlicht Text ausgeben
    Locate 3 , 15 \' 3 Zeile 15 Spalte
    Lcd \"BL.aus\" \' Für Bremslicht Text ausgeben
    Locate 4 , 1 \' 4 Zeile 1 Spalte
    Lcd \"Bat. V\" \' Batt. Spannung Text ausgeben
    Locate 4 , 12 \' 4 Zeile 11 Spalte
    Lcd \"Lade.\" \' Ladestrom ausgeben
    Z = 0


    End If
    End If


    If B = 255 Then Gosub Spannung
    Next B


    Loop


    \'###############################################################################################################
    \'# Spannungsmessung
    \'###############################################################################################################


    Spannung:
    U = Getadc(0) \' ADC0 Auslesen und in U Speichern
    A = U / 63.3 \' ADC0 Wert in Spannung umrechnen
    A = A + 0.1 \' Rundugsfehler Komepnsieren
    Locate 4 , 5 \' LCD Spannungsanzeige Löschen
    Lcd \" \" \' LCD Spannungsanzeige Löschen
    Locate 4 , 5 \' LCD Spannungsanzeige schreiben
    Lcd Fusing(a , \"#.##\") \' Spannungswert auf 2 Nachstelle abschneiden


    Return \' Zurück zum Hauptprogramm




    End




    Wenn jemand BasicProgrammierung kann, könnte er mir bestimmt bei dem ein oder anderen Problem helfen.


    M.f.G.


    Charly

    Also ich habe eine S51 aber das Teil müsste eigentlich mit jedem Moped Funktionieren. Die Display gibts in unterschiedlichen größen. Das LCD hier auf den Fotos hat die größe von 10x6 cm (gesamte maße der PLatine) die Anzeigefläche ist 7,5 x 2,5 cm. Keine Ahnung ob das bei dir reinpassen würde. Es gibt aber auch deutlich kleinere bei Ebay die sind dann sogar schön blau / weiss die du auch benutzen kannst. Der Displaykontroller muss nur ein HD44780 bzw. ein Kompatibeler sein und 4x20 Zeichen haben. Auf mehr muss du nicht achten.


    M.f.G.


    Charly

    Hi,


    das es aufeinmal doch so viele Leute gibt die sich dafür Interessieren hätte ich nicht gedacht. Die Anregungen von euch nehme ich gern mit auf. Das Tachosignal wollte ich wie bei einem Herkömlichen Tacho über Readkontakt und Magneten abfragen. ABer soweit bin ich leider noch lange nicht. Also die Software braucht noch eine weile bis es sich lohnt alles mal ans Moped anzuschließen. Ich habe bisher nur was am Wochenende gemacht und ich muss ab heute wieder arbeiten.


    Ich kann noch nichtmal genau sagen ob ich alles wie geplant Programmiert bekomme. Das LCD ist in der Tat Temp. abhängig. Im sommer mache ich mir da keine Sorgen aber im Winter könnte es sehr Träge werden. Wenn dem so ich muss ich mir noch was Einfallen lassen. Ein Grafik LCD ist zwar schöner aber auch sehr viel Teuer und schwieriger zu Programmieren. Mir stehen nur 32 KB Speicher im Prozessor zu Verfügung und ich habe bis jetzt schon 12 % Belegt Allein für die Anzeigeroutinen und die Auswertung der Signale. Das Schwierige kommt noch wenn es an den Drehzahlmesser und Tacho geht. Sowie die Ladestromüberwachung die ist auch nicht ganz einfach.


    Gebt mir noch was Zeit.



    Gruß Charly

    So, hier mal zwei Bilder wie es auf der Anzeige aussehen kann. Noch sind änderungen kein Problem da es sozusagen nur draufgeschrieben ist und noch nicht alle Anzeigen eine Funktion haben. Aber so inetwa hatte ich mir das gedacht.




    Zeile1:
    Die ###### sind eine A**loge Drehzahlanzeige Je Balken = 1000 U/min


    Zeile2:
    Dann kommt die Geschwindigkeit mit aktuellem Tegeskilometerstand.


    Zeile3:
    Bk. = Blinker aus / re (rechts) li (links) evtl. wa (Warnblink)
    FL. = Fernlicht an/aus
    BL. = Bremslicht an/aus


    Zeile4:
    Batteriespannung und Ladestrom


    Wenn Ihr vorschläge für andere Abkürzungen oder Anordnung habt, lasst es mich wissen.



    M.f.G.


    Charly



    Also erst mal danke für die Infos zur Drehzahl, da lang ich mit meinen Nachforschungen und Vermutungen ja schon ganz gut. Ja Universell soll es schon sein also gehe ich jetzt von Drehzahlen zwischen 0-10000 aus. Das sollte den Löwenanteil an Motoren abdecken können. Bargrafanzeige eist prinzipiel möglich mit dem LCD aber die Auflösung ist nicht sehr hoch. Simpel zu Programmieren währe eine Auflösung von 20 Stellen. Das würde dann eine stelle je 500 U/min sein bei einer maxdrehzahl von 10000. Aufwendig würde auch noch eine Auflösung von 100 Stellen gehen was denn 100 U/min entspricht. Den Tacho als Bargraf finde ich persönlich \"doof\" da sind Zahlen aussagekräftiger. Den Tacho werde ich auch erst gaaaanz weit am schluss mach da ich ja auch werte wie gesamtkilometer und tageskilometer dauerhaft speichern muss was für Programmiertechnisch abolutes neuland ist. Da muss ich mich erst drin einarbeiten. Ich mache jetzt erst mal einen kleinen Shcritt nach dem anderen.


    Es ist auch denkbar das es verschiedene Softwareversionen gibt für unterscheidliche Drehzahlbereiche und Anzeigevarianten, so das man sich aussauchen kann wie es einem am besten gefällt. Aber das ist Zukunft. Sobald der Drehzahlmesser Programmiert ist, werde ich mich an die Elektronik machen und die ertsen Praxistests durchführen. Ich halte euch auf jedenfall auf dem laufenden wenns was neues gibt.



    M.f.G.


    Charly

    Hi,


    also ich wollte das so konzipieren, das es mt jeder Zündungsart Funktioniert, egal ob unterbrecher oder Elektronisch. Ich werde das Zündsignal direkt am Plus der Zündspule abgreifen, so das es eigentlich egal sein sollte ob Unterbrecher oder Elektronisch, hauptsache es gibt eine Zündspule die Positiv angesteuert wird. Auch die Versorgungsspannung bei 6V Anlagen sollte auseichen, da ich auf der Steuerplatine nur mit 5V Signalen arbeite. Evtl. muss nur eine geänderte Spannungsstabilisierung verwendet werden. Das kann man dann testen wenn es soweit ist. Auf jedenfall werden auch 6V Mopeds unterstützt werden. Vermutlich wird aber eine Batt Vorraussetzung sein das muss ich erst noch Ausmessen obs auch ohne gehen würde. Z.Z. bin ich noch mit der SOftware beschäftigt was auch die meiste arbeit sein wird, da es kaum Elektronische Bauelemente geben wird. Es werden nur Signale von Einzelnen Kabeln abgegriffen und über eine kleine Schutzschaltung auf 5V runtergeregelt und direkt an den Prozessor angelegt.


    Stand der Dinge ist z.Z. das ich alle Schaltsustände abfragen und auf dem LCD ausgeben kann. Das heist ich bekomme bisher eine Anzeige Fernlicht an, Bremslicht an, Blinker rechts/links an. Die Blinkerinnerung Funktioniert im groben auch schon, also es gibt ein Ton-Signal nach X-Blinkzyklen. Ich kämpfe gerade nur daran, das der Zähler wieder nach überschreiten einer Bestimmten Blinkpause zurückgesetzt wird. Weil im Momment gibts immer nach 30 Blinkzyklen einen Piepston was aber nicht sein soll. Wenn der Blinker mal Ausgeschaltet wurde, dann soll er wieder 30 Zyklen Zählen. Aber das bekomme ich schon irgendwie hin. An den Drehzahlmesser mache ich mich dran wenn diese Sachen richtig Funktionieren und ich rausbekommen habe mit Welchen Drehzahlen ich es zu tun habe. Es macht nämlich einen großen Unterschied ob etwas mit 10 u/min oder mit 10.000 u/min dreht. Da währe ich auf eure Hilfe angewiesen mir diese Zahlen zu geben. Die Drehzahlmesser die es bei eBay gibt gehen bis 10.000 ist das der richtige Bereich oder gehts in der Praxis nur bis 7.000 ?? Das wirkt sich auf die Genauigkeit aus wenn ich den bereich kennen würde.


    Auch bin ich noch unschlüssig wie ich die Drehzahl hochrechnen soll. Am leichtest ist es einfach zu Zählen wieviele Impulse sagen wir in 250 ms kommen das dann mal 4 dann haben wir U/s und das nochmal x 60 nehmen und schon haben wir U/min Aber das könnte in der Praxis ziemlich ungenau sein. Habe mir jetzt überlegt nur die Zeit zwischen 2 Impulsen zu messen und daraus die Drehzahl zu ermitteln. Aber solange ich nicht weiss was die max drehzahl ist kann ich noch nicht ausrechnen ob der Prozessor die Daten so schnell erfassen und berechnen kann denn ich schätze das ich dann Zeiten unter 1ms haben werde zwischen den Impulsen.


    Naja das sind sachen mit denen ich Kämpfen muss aber ich halte das Projekt nach wievor als machbar.


    M.f.G.


    Charly

    Zitat


    Original von Feuerstuhl:
    Ich wollte nur ma dein Alter wissen weil : es kann ja sein das sich hinter charly_01 ein 11 jähriger mit großen Plänen verbirgt! :biglaugh:




    Hatte ich ja schon geschrieben, das ich 32 Jahre alt bin. Habe mal 2 Bilder im vorigen Post mit angehangen damit es etwas glaubwürdiger ist das ich zumindest die Ausrüstung dazu habe diese Projekt zu verwirklichen. Ichbeschätige mich seitdem ich 15 bin mit Elektronik, habe also schon ein paar Jahre Erfahrung und kann in etwa einschätzen was machbar und was nicht ist. Darum habe ich ja auch am anfang geschrieben das ich keinen Momentanverbrauch oder Tankstand ermitteln kann weil das vieeeel zu afwändig an Bastelarbeit werden würde.



    Gruß Charly_01

    Zitat


    Original von RubberBone:
    coole Sache. wenns fertig ist, bauste mir auch eins :dance1:



    Wenn es mal fertig ist und auch in der Praxis Funktioniert, spricht nichts gegen eine kleinserie. wenn wirklich bedarf bestehen sollte. Im moment scheint aber nicht wirklich Interesse zu bestehen so das es wohl bei meinem Unikat bleiben wird. Leider ist mir gerade aufgefallen, das man wohl doch nicht mit 20€ hinkommt da das LCD schon mit run 20€ zu Buche schlägt. Hatte daran nicht geadcht weil ich noch welche hier liegen habe. Also wird es wohl erst ab ca. 30€ losgehen wenn man nicht noch ein paar sachen zu Hause hat die benötigt werden.


    Das ist Übrigens meine Testplatine auf der ich die Software entwickeln und Testen kann.




    Gruß Charly

    Also das die Funkübertragung die Zündung Stören kann, halte ich für ein gerücht aber die Zündung kann sehr wohl die Funksterecke zum Tacho stören, so das du garkeine oder falsche Werte erhälst. Ich habe mir weil ich einen Tageskilometerzähler haben wolle einen Schnurgebundenen Fahrradtacho angebaut, damit geht es seit ca. 3 Monaten Störungsfrei. Die Gabs im Aldi für 3,99€ und haben Top Funktionen, bin damit super zufrieden mit Hintergrundbeleuchtung.


    Gruß Charly_01

    Also ich bin 32 Jahre und an der Umsetzung sehe ich z.Z. keine Probleme, zumindest Hardwareseitig noch nicht. Was nachher die Software betrift kann ich noch nicht abschätzen. Ich habe mich für einen Microkontroller entschieden da bei diesen Ics fast keine zusätliche Hardware erforderlich ist. Man kommt also mit recht wenig Elektronik aus, so das ein Nachbau keine Probleme darstellen sollte sobald die Software fertig ist. Drehzahlmesser und Blinkererinnerung sind für mich am wichtigsten, die anderen sachen sind nur optional, damit sich der Controller nicht langweilt. ;.)


    M.f.G.


    Charly