kann man nicht einfach die Auf-oder Entladezeiten von Kondensatoren auswerten. Also eine I/f - Wandlung vornehmen.
robotronix
Im ersten Versuch solltest Du nur die reinen Werte des AD-Wandlers in einem Array speichern und am Ende auf dem PC in einem Diagramm ausgeben, damit Du abschätzen kannst wieviele Messungen Du wirklich benötigst.
Bei konstanten Zeitintervallen reicht es, die Werte einfach zu addieren. Ansonsten wie recycle schon vorschlägt, mit dem Zeitintervall (Timerticks) multiplizieren und aufaddieren.
Den korrekten Wert kannst Du dann 1- oder 2-mal pro Sekunde ausgeben, bzw wenn Du die Werte in ein Array schreibst, kann dann der PC den richtigen Wert berechnen.
kann man nicht einfach die Auf-oder Entladezeiten von Kondensatoren auswerten. Also eine I/f - Wandlung vornehmen.
robotronix
Wie kann das genau aussehen?
Schön dass meine Frage doch auf etwas Interesse gestoßen ist.
Mein Hauptproblem liegt nicht in der Mathematik oder Elektrotechnik, sondern in der Umsetzung in Bascom.
SprinterSB:
Wenn ich es richtig verstanden habe, würdest du alle 31,25ms (im Timer denke ich) eine Messung starten und die Werte 32-mal addieren. Die Summe dann durch 32 teilen. Dann alles mit 3600 multiplizieren und ich erhalte Ah. Im nächsten Schritt jede Sekunde Ah auf Summe_Ah aufaddieren. Dann wieder von vorne.
Nur was meinst du mit: „Die Multiplikation mit dt ist dann eine Division durch 32, was durch einen 5-fachen Rechts-Shift zu erledigen ist“
Was ist ein 5-facher Rechts-Shift?
fzehner:
Es wäre schön, wenn ich die Daten auch auf meinem PC auswerten könnte. Leider fehlen mir leider die nötigen Programmierkenntnisse um ein Programm zu schreiben, dass mir z.B. eine Leistungskurve in Abhängigkeit von der Zeit darstellt. Solltest du da ein paar Tipps haben, wäre ich dir sehr dankbar. Als nächster Schritt wäre dass ein nützliches Feature.
Gruß
tooltime
Jepp. Nur, daß ich duch 3600 teilen würde, um von As auf Ah zu kommenZitat von tooltime
Divisionen sind teuer, sowohl was Rechenzeit angeht als auch Speicherbedarf. Teilen durch 2 ist einfach zu realisieren, indem man die zu teilende Zahl um 1 nach rechts schiebt (shiftet) -- voarusgesetzt, die Zahl ist in der richtigen Darstellung dafür. Das entspricht dem Teilen im Zehnersystem durch 10, indem man einfach das Komma eine Stelle nach links schiebt. Durch 7 teilen ist dagagen komplizierten.Zitat von tooltime
Wenn du 5 mal durch 2 teilst hast du eine Division durch 32 -- obgleich 5 mal 2 gleich 10 ist *staun*.
Disclaimer: none. Sue me.
2^5 # 2*5 !Zitat von SprinterSB
Sprache ist halt etwas ungenau, oder zumindest mehrdeutig.
ciao .. bernd
Alles klarDivisionen sind teuer, sowohl was Rechenzeit angeht als auch Speicherbedarf. Teilen durch 2 ist einfach zu realisieren, indem man die zu teilende Zahl um 1 nach rechts schiebt (shiftet) -- voarusgesetzt, die Zahl ist in der richtigen Darstellung dafür. Das entspricht dem Teilen im Zehnersystem durch 10, indem man einfach das Komma eine Stelle nach links schiebt. Durch 7 teilen ist dagagen komplizierten.
Wenn du 5 mal durch 2 teilst hast du eine Division durch 32 -- obgleich 5 mal 2 gleich 10 ist *staun*.![]()
Könntest du evtl. ein kleines Bascom-Beispiel beifügen?
Dieser Rechenschritt würde mich wirklich interessieren. Vielleicht verstehe ich es ja, wenn ich es vor mir sehe.
Danke
Ach ja, ich war das eben.
Lesezeichen