Beiträge von Knisterbein

    Zitat

    Ich möchte registrieren wie oft eine Person durch einen Bereich geht.

    Wie oft sich etwas in einem Bereich innerhalb eines Zeitfensters bewegt. Ob es eine Person, eine Katze oder mehere waren wirst du nicht heraus finden.


    Der Zähler (counter) wird mit 1 initialisiert, weshalb die "Bewegung" immer grösser oder gleich 2 sein wird. Du wirst wohl die Verweilzeit des Objektes im Bereich einschränken müssen respektive eine minimale Zeit, in der sich Veränderungen des Radarmelders als 1 Bewegung gezählt wird. Mit delay() erschwerst du dir die Aufgabe. Benutze millis() um bei der ersten Detektion die Zeit zu starten. Dann prüfst du weiter bis entweder dein Zeitfenster abgelaufen ist UND keine Bewegungsänderung mehr festgestellt wurde. Die Lösung dahinter ist ähnlich dem Entprellen einer Taste, nur dass die Zeiten länger sein werden.


    für millis() schau mal hier.


    die Funktion void counter1() würde ich besser als checkSensor() oder so was in der Art benennen damit der Bezeichner weniger in Konflikt mit der Variablen kommt. Die Funktion dürfte einen bool zurückgeben, der immer dann auf 1 ist, wenn sich der Zähler verändert hat.


    vielleicht sowas in der Art (ich muss weg und daher fehlt mir die Zeit alles vorzukauen) aber vielleicht hilft es dir im Ansatz

    Vielen Dank Kai


    super, da liegt ja mehrheitlich die fertige Lösung auf dem Tisch. Dein Video habe ich lediglich im Schnellflug durchgespult und al ich dann sah, dass der LT3080 ins Spiel kam, erinnerte ich mich an diesen Artikel von Ashok Bindra über die Entwicklungsgeschichte vom LM309 (ja 1969) bis zum LT3080.

    Nun, in diesem Forum wurde bisher kaum über ältere Elektronikteile gewettert, zum Glück nicht, sind doch alle diese verstaubten Halbleiter von Gestern die Vorfahren der heutigen Technik.


    viel Spass beim Lesen

    Pius

    was passiert wenn du anstelle des 10uF einen 1nF reinhängst? 10uF ist einfach mal sehr viel, die der OP zu entladen hat. Das Aufladen übernimmt ja grösstenteils der 240 Ohm R am Ausgang. Nun wäre es vielleicht auch an der Zeit die Diode D2 aus dem Post #42 einzusetzen.


    Wenn ich mir den Strom (rot) so ansehe, dann muss dies aus aus den Überresten der PWM entstammen, sofern die Pulseverhältnisse gleich geblieben sind. Würde der Ausgang des OP konstant sein, dann müsste der Strom gegen 0 absinken. Vielleicht brächte der Salen Key Low Pass doch Vorteile (auch ohne Verstärkung). Aber eben, das wäre viel zum Ausprobieren und mit 5V von der PWM kann man sich keine 10V oder noch mehr erwarten.

    schönen Abend

    Kai

    Vielen Dank Kai


    ja, Du hast mich richtig verstanden und zum Glück siehst Du michnicht wie ich meinen Kopf kratze und etwas verwirrt in die Gegend schaue.

    Das zweite Bild wäre mein Vorschlag gewesen. Nun könnte es doch sein, dass wir das C6 auch wieder mit etwas entladen sollten ... aber sicher wäre ich mir da nicht. Der C6 wird ja über den R5 aufgeladen und via ADJ (50-100uA) und den OP mit Ausgang über den 1.8k entladen.


    Dies wäre dann der Moment für mich, auf die alte Längsregelung zurück zu greiffen.

    Sorry ich muss passen

    Nun Kai es ist immer alles richtig, bis es nicht mehr funktioniert ...

    pasted-from-clipboard.png


    Die Auswirkungen des 10uF am ADJ sind logisch. Je konstanter der IADJ ist umso konstanter wird der Ausgang sein. Da der IADJ gem. Datenblatt zwischen 50 und 100μA liegt, darf (meine Schätzung) der R grösser sein (1-5k). Aber wie gesagt, dieser R soll in erster Linie den Ausgang des OP vor Überlast schützen.
    Auch sagt das DB, das die Diode D2 im Falle eines Cadj nötig ist und wenn C0 noch da ist, sollte die D1 auch benutzt werden.


    Im National Semiconductor Linear Application Buch 1994 findest Du viele Hinweise. Mein gedrucktes Exemplar ist mittlerweile auseinander gefallen, wei ich es so oft auf dem Tisch neben dem Lötkolben benutzte.

    Andererseits, Du hast ja simuliert, brauchst es ja auch gar nicht, ausser dass du den Horizont erweitern willst. Mir ist das Ziel von Nicole nicht klar. Für eine regelbare Spannungsquelle (für Experimente) benutze ich noch immer Labor Netzteile. Wenn ich dann mal eine spezielle Lösung suche, dann suche ich eben danach, aber die eierlegende Lösung habe ich leider noch nicht gefunden.


    Vielleicht gibt es hier im Forum noch andere Mitleser, die wesentlich mehr dazu beitragen könnten?

    Danke Kai


    was ich eben erst jetzt sehe sind die 10uF, die am Ausgang des OP hängen. Diese 10uF sind heftig für den OP Ausgang. Ein R in Serie (Begrenzung des Ausgangstromes) würde ich da vorsehen. Der Strom in ADJ ist klein. Ich würde mal schätzen dass der Rippel von 2uV (wie im 1. Bild) so wesentlich kliener werden müsste.


    Ich denke, die Schaltung würde in real ziemlich genau das bringen was man sieht (ob der OP es lange macht, weiss ich aber nicht). Die Belastung für wird vorallem bei häufigen Änderungen stärker.

    Super Kai


    versuch es nun mal mit einem C parallel zum R4. Weil damit wäre die Beschaltung ähnlich einem Salem Key Filter.


    pasted-from-clipboard.png

    Salen Key Low Pass


    je besser die Filterung um so kleiner wird die Geschwindigkeit die Spannung zu setzen. Aber dies ist dir sicher klar.

    Die interne Referenz liegt ja bekanntlich bei 1.25V (meinte ich gelesen zu haben). Demnach wäre dies in deiner Beschaltung die kleinste einstellbare Spannung. Möchte man bis auf 0V runter regeln, dann müsste man den OP an der - Versorgung mit einer negativen Spannung betreiben, weil damit die Ausgangsspannung des OP negative Werte erreichen kann.


    schönen Sonntag

    Pius

    Nun, kreativer Spannungteiler würde ich deinen aus Post 13 Entwurf nennen. Zur Erinnerung:


    pasted-from-clipboard.png


    Bei deinem Entwurf besteht der Spannungteiler aus 3 Widerständen. Der ADJ Eingang erwartet einen Strom (ja Strom) der intern in eine Spannung (an einem R) umgesetzt wird.



    pasted-from-clipboard.png


    Im Video, das Kai im Post 14 (glaube ich) gezeigt hat, wird der Spannungteiler richtig angeschlossen. Hier besteht der Teiler aus dem R1 und dem eingestellten Widerstand des RV1.



    nur kurz zum Tiefpass:


    über einen R wird ein Kondensator aufgeladen. Das pulsierende Eingangssignal muss in der Frequenz so schnell sein, dass der Strom über den R nicht ausreicht, das C jeweils vollständig au zu laden. Wird das C durch einen zu hohen Strom doch aufgeladen, kann ich

    den R vergrössern (und verkleinere damit den fliessenden Strom) oder

    ich kann das C vergrössern, dass der Strom nicht mehr reicht um das C in einer Periode aufzuladen oder

    ich erhöhe die Frequenz.

    Ich habe 1. den R auf 1 kOhm verkleinert damit der Strom ansteigt und gleichzeitig die Frequenz um den Faktor 20 erhöht. Damit erreichte ich mein Ziel.

    Ist das C zu klein, dann wird der Referenzstrom am ADJ auch wellig sein, das heisst die Spannung variiert bei jedem Impuls nach + und wenn der Puls auf 0 geht, nach -. Demnach versucht die Ausgansspannung diesem Wechsel zu folgen und wird nicht mehr stabil sein, was man sich beim Regler ja eigentlich erhofft. Übrigens, die Ausgansspannung sollte um 1.2v V von der Spannung am ADJ Pin abweichen.

    Zu den Grundlagen des Tiefpasses gibt es echt genug Geschriebenes im Netz.

    Stell Dir mal vor, wie gross der Strom aus der PWM resultieren könnte, wenn bei 5V 10k in Serie geschaltet ist. Auf der Gegenseite ist die Referenzspannung mit 240 Ohm auf den Ausgang verbunden. Vom PWM Signal kommt da kaum mehr etwas an den ADJ Pin (auf jeden Fall gut gefiltert).

    Eingansspannung ist 16.0V




    Tastung@240 Ohm
    @470 Ohm
    1%6.81V4.13V
    20%10.24V6.04v
    40%8.00v
    50%11.95V8.99v
    60%10.01v
    80%14.38V12.03v
    90%14.46V13.06v
    99%14.6V13.97v



    Nimm anstelle des 10k einen 1k Widerstand und die f der PWM lag bei mir bei 20 kHz. Mit 5V Auslenkung (0-5V)

    mit dem 240 Ohm R auf den Ausgang komme ich auf folgende Ausgangsspannungen (ich habe keine Last angeschlossen):


    (10% bedeutet dass der PWM Ausgang für 10% der Zeit auf 5V liegt und die restlichen 90% auf 0)

    DasDatenblatt des LM317 gibt Auskunft:

    Man beachte, wie der einstellbare Widerstand mit R1 verdrahtet ist! Die Spannung über R1 ist die Referenzspannung und irgendwo im Datenblatt steht dann auch der max. Strom im Iadj.


    8.1 Overview


    In operation, the LM317-N develops a nominal 1.25-V reference voltage, VREF, between the output and adjustment terminal. The reference voltage is impressed across program resistor R1 and, because the voltage is constant, a constant current I1 then flows through the output set resistor R2, giving an output voltage calculated by Equation 1: (1) Figure 15. Setting the VOUT Voltage Because the 100-μA current from the adjustment terminal represents an error term, the LM317-N was designed to minimize IADJ and make it very constant with line and load changes. To do this, all quiescent operating current is returned to the output establishing a minimum load current requirement. If there is insufficient load on the output, the output will rise ...


    pasted-from-clipboard.png





    Man kann natürlich mit einem Dig. Poti die Spannung einstellen aber wenn R1 die Vref abfällt dann kann ich an dieser Stelle die Sollspannung anlegen. Mit einer PWM mit Tiefpass z.B.

    klar, mit einem D/A geht es garantiert. Alternativ mit einem Digi Pot (Nicole's Vorschlag) , ein Demux der geschaltete Widerstände bedient oder aber ein PWM Signal mit anschliessendem Tiefpass würden funktionieren.

    schöne Ostern

    Hallo KaiR


    ich interpretierte, dass Nicole einen LDO Regler benutzen will und im Augenblick bin ich nicht von einem Schaltregler ausgegangen:

    Zitat

    Ich wollte einen LDO nutzen, da ich geglaubt habe das dieser am wenigsten Verlustleistung im Gegensatz zu einem normalen Regler habe


    Nicole

    ein LDO ist ein linearer Regler und diese haben nur eine kleinere Verlustleistung, wenn die Differenzspannung (In->Out) sehr klein bleibt.

    Die Verlustleistung rechnet sich auch hier P = Uin-Uout / I (wie bei einem ganz normalen Regler).

    Wird ein LDO mit grössererer In->Out Spannung benutzt, dann steigt die Verlustleistung auch an. Da Du unterschiedliche Ausgagsspannungen anstrebst, ist ein LDO ungeignet, da diese kleinere Verlustleistungen aushalten, zumindets muss ich dies annehmen. Eigene Erfahrungen mit einem diskret aufgebautem LDO (für grosse I 30+) waren Schwierigkeiten mit der Schwingneigung.

    pasted-from-clipboard.png

    Ein LM340 scheint mir da besser geeignet


    Danke Daniel, der LM317 ist noch einfacher.

    Hoi Nicole


    zeig uns das Schema, weil ich Schaltungen in Worten eher schlecht verstehe.
    Abgesehen davon, wieso einen LDO? Der ist dazu geeignet eine Versorgung mit kleiner Spannungsdifferenz zwischen Eingang und Ausgang stabil zu erreichen.

    Ein Spannungsregler, egal LDO oder nicht, benötigt eine Referenz die stabil ist und die ist meist intern verbaut und der Ausgang des Reglers wird mit der internen Referenz verglichen und nachgeregelt, bis die Differenz Null ist. Du weisst von welchem Regler du sprichst, schau dort ins Datenblatt.


    Gruss

    Pius

    Danke Nische


    ja, uralt und funktioniert immer noch. Aus dem Grund, dass eine Glimmlampe nach dem Erreichen der Zündspannung schlagartig niederohmiger wird, benutzte man die Glimmlampe auch als Überspanungsschutz.

    Vielleicht ist noch ichtig zu erwähnen, dass Widerstände auch eine maximale Spannung vorgeben, die nicht überschritten werden sollte. Deine Beschaltung trägt dem Umstand Rechnung, dass immer 2 Widerstände in Serie geschaltet sind und so teilt sich die Betriebsspannung gemäss URI an den beiden WIderständen auf. Also, wenn man nur einen R benutzt, kann man den Spannungwert an 2 Seriewiderständen verteilen.

    Keine Sorge, ich will mich nicht in die Diskussion einmischen, vor allem nicht wenn die KI sagt dass es so oder nicht so ist.


    Aber wie Kai es bereits angedeutet hat, ist ein EEPROM weniger geeignet, schnell ändernde Datenwerte abzulegen, da die Schreibzyklen limitiert sind.

    Zur Speicherung eignet sich das RAM ... und wenn man dann weiss, dass die HW eher selten aus/eingeschaltet wird, dann buffert man die Versorgung des Controllers und detektiert das Ausbleiben der Versorgungsspannung, um mit der Energie des Buffers noch schnell das EEPROM zu beschreiben. So aus meinem Sichtwinkel heraus, würde ich behaupten, dass es kaum einen Unterschied macht, ob ich ein internes oder ein externes EEPROM benutze, sofern die Betriebsspannung lange genug aktiv bleibt. Bei einem externen EEPROM wird logischerweise ein bisschen mehr Energie benötigt.


    Wird der Controller (Tiny88) dann 10x täglich eingeschaltet dann ergeben sich für das EEPROM eine Lebenszeit von

    100000 /10 / 365 Tg = um die 27 Jahre.


    Ein Schema der Beschaltung, ein paar Angaben über die Grösse des Achszählers (ist verm. einer) und wenn der Controller noch andere Aufgaben erfüllt wären mehr Informationen hilfreich. Damit der Controller früh genug weiss, dass die Betriebsspannung ausgefallen ist, benötigt man sicher ein zusätzliches Eingans Pin zur Detektion.


    Da ich, versprochen, keine KI bin, muss ich auf mögliche Fehler in meinem Denken hinweisen.

    Danke KaiR


    ausführlich wie immer beantwortet. Ich hätte eine sehr ähnliche Argumentation geliefert. Ich kenne einen Unterstufenlehrer, der mit seinen Kindern (5.-6. Klasse) die Schüler mit den Blöcken für die Programmierung motiviert, was anscheinend funktioniert. Kindern muss man als erstes beibringen, dass programmieren das Anreihen von einzelnen Befehlen bedeutet. Die Blöcke scheinen tatsächlich auf den ersten Blick einfach zu verstehen, sind dann aber schnell am Ende, wenn es sich um komplexere Vorgänge handelt. Nun, die Kinder schafften es aber, ein Programm für das Aufzeichnen physiaklischer Werte, die beim Flug eines Wetterballons erfasst wurden, zu realisieren. Ziel erreicht und das eine oder andere Kind für die SW begeistert.

    Danach geht's dann mit if, loop weiter.

    Im Datenblatt wird die mögliche Korrektur der Abweichung des internen Oszillators erwähnt (ab Seite 86). Ich habe ein ähnliches Problem mit einem Tiny der Serie 2. Die Baudrate ist oft nicht sehr genau. Dazu gibts auch eine Möglichkeit um die Temperatur Einflüsse zu verringern. Aber, in meinem Fall ist der mögliche Temperatur Bereich zu gross. Deshalb benutze ich mittlerweile einen ext. 16MHz Oszillator.

    guten Rutsch allerseits

    Pius