Forum: Mikrocontroller und Digitale Elektronik Wie Frequenz verlangsamen?


von Philipp G. (geiserp01)


Lesenswert?

Moin *.*

Ich benötige wieder mal euren geschätzten Rat. Folgende Aufgabenstellung 
liegt hier zutage:

Die Frequenz eines Signal soll mittels einem Poti gedrosselt werden 
können, und das in einem Bereich von 20-100%.

Beim Signal handelt es sich um einen Rechteck, +5V, 50/50duty, Frequenz 
variabel zwischen 20-600 Hz. Also schon mal keine Gigahertz.

Beispiel:

Wenn am Eingang 100Hz anliegen, und Potistellung auf 90% ist, sollen 
dabei 90Hz rauskommen.

Ich tu' mich grad schwer mit der Programmierung des Ganzen. Ich habe mir 
folgendes überlegt:

iVal, ein Integer welcher synchronisiert zur Potistellung dezimal einen 
Wert zwischen 20-100 aufweist.

Dann zählen bis 1000ms vergangen sind, dann Counter zurücksetzen. Das 
ist der Sekunden Intervall.

In jedem Intervall zählen iFiN - das ist die Eingangsfrequenz.

Dann iFiIn / 100 * iValue - das ist die Ausgangsfrequenz.

Was besseres kommt mir zu später Stund grad nicht in den Sinn. Völlig 
dilettantisch, jemand eine bessere Idee?

Gruss, Philipp

: Gesperrt durch Moderator
von Uhrmacher (Gast)


Lesenswert?

Bevor man sich hier Lösungen überlegt, sollte - wie so oft -
hier die Antwort auf die Frage kommen was denn der tiefere
Sinn des Ganzen sein soll. Ich sehe nämlich keinen.

von Max D. (max_d)


Lesenswert?

Bei so kleinen Frequenzen kannst du mit einem µC leicht die Zeit 
zwischen den Flanken messen. Dann hast du eine Variable in deinem µC die 
die letzte gemessene Zeit enthält. Zur erzeugung deines Ausgangssignals 
hast du einen Timer-Interrupt in dem der Ausgang getoggelt wird und der 
neue Timerinterrupt mit der gemessenen Flankenzeit * Faktor geladen 
wird.

€dit: Falls auch der Fall "kein Signal" abgedeckt werden muss, so muss 
noch ein timeout in die Software rein, sonst läuft der AUsgang einfach 
weiter. (bei 20-600Hz ist aber erstmal per Definition kein Ausbleiben 
vorgesehen)

: Bearbeitet durch User
von Philipp G. (geiserp01)


Lesenswert?

Uhrmacher schrieb:
> hier die Antwort auf die Frage kommen was denn der tiefere
> Sinn des Ganzen sein soll. Ich sehe nämlich keinen.

warum?

max. Danke. Wie meinst du das mit dem Interupt programmatisch?

von Max D. (max_d)


Lesenswert?

Du hast einen Timer. Der hat eine ISR. In der ISR lädst du als nächstes 
Intervall deines Timer (entweder als Compare-Match oder sogar einfach 
als Timer-Wert) deinen nächsten Zeitabschnitt. Je nach µC-Modell (ist ja 
noch geheim) kann die Hardware direkt einen Pin togglen, oder du musst 
das in der ISR "manuell" mit erledigen.

von m.n. (Gast)


Lesenswert?

Wenn es Dir gelingt, den festen Faktor durch einen variablen Faktor 
(Eingabe per Poti) zu ersetzen, findest Du hier einen passenden 
Frequenz/Frequenz-Umsetzer: 
http://mino-elektronik.de/Generator/takte_impulse.htm#bsp4

von Günter Lenz (Gast)


Lesenswert?

Die Frequenz des Quellsignals kannst du nicht ändern.
Du kannst höchstens die Frequenz des Quellsignals messen,
und das Poti messen und abhängig von diesen Daten eine
neue Frequenz durch Software erzeugen.

von Philipp G. (geiserp01)


Lesenswert?

Die Frequenz des Quellsignals will ich ja gar nicht ändern, sondern nur 
anpassen und verlangsamt ausgeben.

Nein - uC ist kein Geheimnis. Atmel 328 auf einem Nano oder einfach was 
sonst noch so zuhause rumliegt.

@Günther/max: Schau' ich mir an, danke


Günter Lenz schrieb:
> Die Frequenz des Quellsignals kannst du nicht ändern.
> Du kannst höchstens die Frequenz des Quellsignals messen,
> und das Poti messen und abhängig von diesen Daten eine
> neue Frequenz durch Software erzeugen.

hab ich mich dermaßen unklar ausgedrückt?

: Bearbeitet durch User
von Schlucker (Gast)


Lesenswert?

So schwierig ist das nicht. Bei 10% laesst du einfach 
https://www.mikrocontroller.net/forum/mikrocontroller-elektronik9 von 10 
Pulsen weg.

von Philipp G. (geiserp01)


Lesenswert?

50/50 muss aber bleiben

von Christian M. (Gast)


Lesenswert?


von Marek N. (Gast)


Lesenswert?

Frequency-Voltage-Converter -> Poti -> Voltage-Frequency-Converter

von Philipp G. (geiserp01)


Lesenswert?

Marek N. schrieb:
> Frequency-Voltage-Converter -> Poti -> Voltage-Frequency-Converter

hab ich mir auch überlegt. evtl. einfacher als uC

von Achtung Achtung Achtung (Gast)


Lesenswert?

>
> hab ich mich dermaßen unklar ausgedrückt?

Nix kapiert? Also was willst Du genau? Beschreibe das bitte mal viel 
deutlicher und genauer.

von Philipp G. (geiserp01)


Lesenswert?

Philipp G. schrieb:
> Wenn am Eingang 100Hz anliegen, und Potistellung auf 90% ist, sollen
> dabei 90Hz rauskommen

bitte

von Audiomann (Gast)


Lesenswert?

Das Ganze soll also ein Tonhöhenshifting werden. Das geht nur durch 
Messung des Pulsverhältnisses des Eingangssignals und Neuerzeugung.

Ich komme aber nicht umhin darauf hinzuweisen, dass der Betreff:

>Wie Frequenz verlangsamen?
Schon völlig falsch formuliert ist. Freuquenzen können nicht verlangsamt 
werden. Hier hapert es also nicht nur an physikalischem Wissen.

von Stefan F. (Gast)


Lesenswert?

> Die Frequenz des Quellsignals will ich ja gar nicht ändern,
> sondern nur anpassen und verlangsamt ausgeben.

Dann erkläre mal bitte, wo für dich der Unterschied zwischen "ändern" 
und "anpassen" ist. Für mein Sprachverständnis ist das nämlich das 
Gleiche und für mein technisches Verständnis geht das nicht (Günter Lenz 
schrieb es bereits).

von Tom (Gast)


Lesenswert?

Audiomann schrieb:
> Das Ganze soll also ein Tonhöhenshifting werden.
Ja.

> Das geht nur durch
> Messung des Pulsverhältnisses des Eingangssignals und Neuerzeugung.
Nö. Mit einer Samplerate Conversion (ohne die Samplerate tatsächlich zu 
ändern) sollte das auch gehen. Dann sogar nicht nur für 
Rechtecksignale...

von Baku M. (baku)


Lesenswert?

Moin!
Ich werfe noch eine Lösung ins Rennen:
Mit einer einstellbaren PLL das Signal erst um Faktor n 
hochmultiplizieren, dann mit einem einstellbarem Teiler um den Faktor m 
wieder herunterteilen. Das ganze liesse sich wahlweise in TTL oder mit 
einem FPGA aufbauen. Die Faktoren n und m könnte ein Prozessor nach 
A/D-Wandlung anhand der Potistellung ausrechnen.
So liesse sich auch die Forderung nach 50% Duty-cycle erfüllen.
Der Prozessorkern liesse sich auch noch auf dem FPGA unterbringen.
OK, ist ein wenig aufwändig...

Aber solange der TO nicht mit dem Zweck des ganzen rausrückt, ist das 
Nachdenken über eine Lösung müssig.
Am Ende geht es darum, einen 4 Zylinder Drehzahlmesser an einen 6 
Zylinder Motor anzupassen...

Schönen Sonntag,
Baku

von Schnauze (Gast)


Lesenswert?

Ach was, typisches uC.net rumgeheule.

Er will ein Rechtecksignal erzeugen, dessen Frequenz von der Frequenz 
eines anderen Rechtecksignals abhängt. Beide Signale haben einen Duty 
Cycle von 1:1.

Sind doch genug Anforderungen, echt.

Das Forum ist über die Jahre echt zum kotzen geworden.

Hier, ich nehm euch noch den Rest der Arbeit hab:

Troll.
Heute ist nicht Freitag.

von Sparfuchs (Gast)


Lesenswert?

Uhrmacher schrieb:
> Bevor man sich hier Lösungen überlegt, sollte - wie so oft -
> hier die Antwort auf die Frage kommen was denn der tiefere
> Sinn des Ganzen sein soll. Ich sehe nämlich keinen.

Ich kann da schon einen Sinn sehen, allerdings einen etwas unlauteren:

Das Tachosignal (Pegel, Tastverhältnis, Frequenzbereich würden dazu 
passen) eines Autos soll in seiner Frequenz vermindert werden, um die 
"Alterung" des Autos zu verlangsamen.

Das spart durch höheren Wiederverkaufswert bzw. Leasingrückkaufwert 
bares Geld.

Nur warum der Teilerfaktor variabel sein soll, leuchtet mir nicht so 
recht ein. Ein ganzzahliger Faktor (z.B. 2) vereinfacht das anschließend 
erforderliche Umrechnen der (natürlich ebenfalls zu niedrigen) 
Geschwindigkeitsanzeige des Tachos. Ersparnis von Blitzzetteln...

Eine ganzzahlige Teilung wäre technisch viel einfacher zu realisieren.

Vielleicht ist der Zweck aber auch, das Tachosignal zu korrigieren, 
nachdem es durch eine geänderte Reifengröße verfälscht wurde. Das würde 
den ungeradzahligen Teilerfaktor erklären.

von Stefan F. (Gast)


Lesenswert?

> Er will ein Rechtecksignal erzeugen, dessen Frequenz von der
> Frequenz eines anderen Rechtecksignals abhängt. Beide Signale
> haben einen Duty Cycle von 1:1.

Wenn das so ist, helfe ich gerne. Doch lasse ich mir lieber vom TO 
erklären, was er meint.

von C. A. Rotwang (Gast)


Lesenswert?

Philipp G. schrieb:
> Philipp G. schrieb:
>> Wenn am Eingang 100Hz anliegen, und Potistellung auf 90% ist, sollen
>> dabei 90Hz rauskommen
>
> bitte

Dazu brauchts du keine periodisches Eingangssignal. Deine 
Aufgabenstellung ist blödsinnig weil sie einen Generator beschreibt der 
ohne Eingangsfrequenz auskommt in der aufgabenstellung aber beharrt wird 
das die 50 Hz ein zu transformierendes Eingangssignal ist.

Sinnvoll formuliert wäre die Aufgabenstellung:
(Re-)Generierung eines Rechtecksignals:
Die Schaltung soll ein Rechtecksignal mit 50% Duty und einen Pegel von 
xV und yV generieren. Die Frequenz des auszugebenden Signals ergibt sich 
aus:
-der (zu messenden) Frequenz eines einlaufenden Rechteck-Signals
-eines Skalierungsfaktors 0 bis 1.0.

Der Skalierungsfaktor wird über ein Potentiometer eingegeben.

von Stefan F. (Gast)


Lesenswert?

> Vielleicht ist der Zweck aber auch, das Tachosignal zu korrigieren

Noch so eine wilde Vermutung. Wartet doch mal ab, bis der TO sich zu den 
Rückfragen äußert!

von m.n. (Gast)


Lesenswert?

Sparfuchs schrieb:
> Eine ganzzahlige Teilung wäre technisch viel einfacher zu realisieren.

Hälst Du die Verwendung eines µC für technisch schwierig?
Glaubst Du, ein µC hätte Probleme nicht ganzzahlige Teilungsverhältnisse 
zu errechnen?
Dann sollte man besser das Problem der Lösung anpassen und nicht 
umgekehrt ;-)

von Ralph B. (rberres)


Lesenswert?

Audiomann schrieb:
> Das Ganze soll also ein Tonhöhenshifting werden.

Gab es in der Tonstudiobranche mal unter dem Begriff Harmonizer. Ist es 
das was du willst?

Ralph Berres

von C. A. Rotwang (Gast)


Lesenswert?

Schnauze schrieb:
> Ach was, typisches uC.net rumgeheule.
>
> Er will ein Rechtecksignal erzeugen, dessen Frequenz von der Frequenz
> eines anderen Rechtecksignals abhängt. Beide Signale haben einen Duty
> Cycle von 1:1.

Nein will er nicht, er will ein Signal "drosseln", nicht generieren
"Die Frequenz eines Signal soll mittels einem Poti gedrosselt werden
können, und das in einem Bereich von 20-100%."

Wahrscheinlich ist ihm nicht klar das zwischen Drosseln und 
Neu-Generieren Welten liegen. "Frequenz Drosseln" impliziert im 
elektronischen Sinne eine Mischstufe 
https://de.wikipedia.org/wiki/Mischer_(Elektronik), der TE hat aber 
möglicherweise unter "Drossel" in der Elektrotechnik nur den Hinweis 
gefunden: "Elektrotechnik: ein passives, induktives elektrisches Bauteil 
zur Energiespeicherung oder Störungsdämpfung" und versteht nur noch 
Bahnhof.

Das passiert halt, wenn man plabbert wie einem der Schnabel verwachsen 
ist und Nachfragen partout als Majestitätsbeleidung fehldeutet.

von Schnauze (Gast)


Lesenswert?

Eben, sag ich doch, uc.net rumgeheule.

von Achtung Achtung Achtung (Gast)


Lesenswert?

Rdopplerefekt

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Ralph B. schrieb:
> Gab es in der Tonstudiobranche mal unter dem Begriff Harmonizer. Ist es
> das was du willst?

Dazu passt "Rechteck mit 50% Tastverhältnis" irgendwie gar nicht.

von Uhrmacher (Gast)


Lesenswert?

Hier gibt es wieder die wildesten Spekulationen wie was
gemacht werden soll, wobei keiner wirklich weiss was der
TO überhaupt genau will. Allenfalls kommt per Salmi-
taktik das eine oder andere zusätzliche Informations-
Bröckchen ans Tageslicht.

Uhrmacher schrieb:
> Bevor man sich hier Lösungen überlegt, sollte - wie so oft -
> hier die Antwort auf die Frage kommen was denn der tiefere
> Sinn des Ganzen sein soll. Ich sehe nämlich keinen.

Philipp G. schrieb:
> warum?

von John (Gast)


Lesenswert?

Schnauze schrieb:
> Beide Signale haben einen Duty Cycle von 1:1.

Das ist Gleichspannung.

von John (Gast)


Lesenswert?


von Uhrmacher (Gast)


Lesenswert?

John schrieb:
> Ich vernute mal so etwas:
> http://www.ebiketunen.com/methoden-des-e-bike-tunen.html#frequenz

Das würde die Zugeköpftheit des TO erklären.

Und die Community hier kann sich schon mal darauf einstellen
dass sie mit ihren heissen Tips vermutlich illegale Machen-
schaften des TO unterstützt (unterstützen würde).

von georg (Gast)


Lesenswert?

C. A. Rotwang schrieb:
> Wahrscheinlich ist ihm nicht klar das zwischen Drosseln und
> Neu-Generieren Welten liegen

Natürlich kann man die Eingangsfrequenz nicht ändern (das würde ja 
wiederum die Ausgangsfrequenz ändern usw. usw.). Die einzige Möglichkeit 
die mir zur Forderung des TO einfällt wäre, sich mit der entsprechenden 
Geschwindigkeit von der Quelle zu entfernen. Die lässt sich ja leicht 
berechnen. Ein starkes Gravitationsfeld ginge vielleicht auch.

Georg

von C. A. Rotwang (Gast)


Lesenswert?

Uhrmacher schrieb:
> John schrieb:
>> Ich vernute mal so etwas:
>> http://www.ebiketunen.com/methoden-des-e-bike-tunen.html#frequenz

> Und die Community hier kann sich schon mal darauf einstellen
> dass sie mit ihren heissen Tips vermutlich illegale Machen-
> schaften des TO unterstützt (unterstützen würde).

Illegalität ist nur ein Aspekt des Problems, und aus Sicht eines Hackers 
der sich aus Neugier und Wissensdrank mit Reverse Engineering 
beschäftigt das geringste.

Problematisch ist eher der Schaden an Leib und Leben den Benutzer einer 
solchen Begrenzungs-Abschaltung ausgesetzt sind.

Da sollte man auch dahinwirken, das die Ebike-Hersteller 
Manipulationssichere Sperren einbauen und der TÜV etc bei der 
Zulassungserteilung darauf achtet.

von Schnauze (Gast)


Lesenswert?

Eben, uc.net Geheule. Während die einen noch jammern die Spezifikation 
sei unklar, kommen die anderen schon mit erhobenem Zeigefinger, weil, 
Ebikes frisieren ist ja illegal.

von Rolf M. (rmagnus)


Lesenswert?

Philipp G. schrieb:
> Marek N. schrieb:
>> Frequency-Voltage-Converter -> Poti -> Voltage-Frequency-Converter
>
> hab ich mir auch überlegt. evtl. einfacher als uC

Das hängt letztendlich davon ab, wie gut du dich mit µC-Programmierung 
auskennst und ob du ggf. bei einer Variante Teile bestellen musst, bei 
der anderen nicht. Ich würde mit einem µC per Input Capture die Frequenz 
ermiteln und dann mit dem ADC-Wert entsprechend skalieren, dann per 
Timer ein Signal erzeugen.

Uhrmacher schrieb:
> Ich sehe nämlich keinen.

Dass du nicht in der Lage bist, einen Sinn darin zu erkennen, bedeutet 
nicht, dass es keinen gibt.

Schnauze schrieb:
> Sind doch genug Anforderungen, echt.

Ja. Ich bin auch erstaunt, wie viele hier offenbar nicht in der Lage 
sind, so eine simple Aufgabenstellung zu erfassen oder der Meinung sind, 
der TE müsse ihnen erst seine Lebensgeschichte erzählen, damit sie ihm 
sagen können, wie man eine Rechteckspannung erzeugt.
Es stimmt zwar, dass viele Fragesteller essenzielle Infos nicht oder nur 
nach mehrfacher Nachfrage rausrücken, aber hier sind alle nötigen Infos 
vorhanden, um die Frage zu beantworten.
Ich stelle mir gerade solche Leute in der Schule oder dem Studium vor. 
"Aufgabe kann nicht gelöst werden, da unklar ist, wozu die Lösung dieser 
quadratischen Gleichung benötigt wird".

Stefan U. schrieb:
>> Er will ein Rechtecksignal erzeugen, dessen Frequenz von der
>> Frequenz eines anderen Rechtecksignals abhängt. Beide Signale
>> haben einen Duty Cycle von 1:1.
>
> Wenn das so ist, helfe ich gerne. Doch lasse ich mir lieber vom TO
> erklären, was er meint.

Das hat er, wenn auch nicht immer mit der korrekten Begriffswahl, 
durchaus in verständlicher Weise getan.

C. A. Rotwang schrieb:
> Dazu brauchts du keine periodisches Eingangssignal. Deine
> Aufgabenstellung ist blödsinnig weil sie einen Generator beschreibt der
> ohne Eingangsfrequenz auskommt

Aha, und wie erzeugst du ein Signal mit 90% der Frequenz eines nicht 
existierenden Eingangssignals?

> in der aufgabenstellung aber beharrt wird das die 50 Hz ein zu
> transformierendes Eingangssignal ist.

Wo hast du denn das gefunden? Ich lese in der Aufgabenstellung:

Philipp G. schrieb:
> Beim Signal handelt es sich um einen Rechteck, +5V, 50/50duty, Frequenz
> variabel zwischen 20-600 Hz.

Oder hast du dich auf das Beispiel bezogen, in dem eine Frequenz 
natürlich vorgegeben war?

Philipp G. schrieb:
> Beispiel:
>
> Wenn am Eingang 100Hz anliegen, und Potistellung auf 90% ist, sollen
> dabei 90Hz rauskommen.

Aber um auch mal so pedantisch zu sein:

C. A. Rotwang schrieb:
> -eines Skalierungsfaktors 0 bis 1.0.

Eins Punkt null? Soll das eine Versionsnummer sein? Außerdem war die 
Untergrenze bei 20%. Meintest du vielleicht:

-eines Skalierungsfaktors 0,2 bis 1,0

Es wird in deiner Aufgabenformulierung auch nirgends erwähnt, wie sich 
nun die Zielfrequenz aus dem Skalierungsfaktor und der eingehenden 
Frequenz ergibt. Also Aufgabenstellung unvollständig.

: Bearbeitet durch User
von C. A. Rotwang (Gast)


Lesenswert?

Rolf M. schrieb:

> Aber um auch mal so pedantisch zu sein:
>
> C. A. Rotwang schrieb:
>> -eines Skalierungsfaktors 0 bis 1.0.
>
> Eins Punkt null? Soll das eine Versionsnummer sein? Außerdem war die
> Untergrenze bei 20%. Meintest du vielleicht:
>
> -eines Skalierungsfaktors 0,2 bis 1,0
>
> Es wird in deiner Aufgabenformulierung auch nirgends erwähnt, wie sich
> nun die Zielfrequenz aus dem Skalierungsfaktor und der eingehenden
> Frequenz ergibt. Also Aufgabenstellung unvollständig.

Ja das liegt nun mal in der Natur des Kaffeesatzlesen. Und es ist auch 
nicht die Aufgabe des Forums dem TE seine Wünsche aus der Nase zu 
ziehen. Das zu realisierende Prinzip sollt aber klar geworden sein. Und 
das es mit den vom TE benutzten irreführenden Beschreibung als 
Frequenzänderung nichts gemein hat.


>> in der aufgabenstellung aber beharrt wird das die 50 Hz ein zu
>> transformierendes Eingangssignal ist.

>Wo hast du denn das gefunden? Ich lese in der Aufgabenstellung:
... genau wie ich es sage, der TE beharrt verbal auf einer 
Signaltransformation, jedenfalls steht das so auch so im TE-Titel.


Ich schätzt der Begriff Drosselung ist ein Freudscher Versprecher des 
TE, der hat wohl tatsächlich eine Umgehung einer Leistungsdrosselung im 
Sinn indem er Sensorwerte manipuliert , resp. gefälschte Sensorwerte 
genriert.

von Philipp G. (geiserp01)


Lesenswert?

Audiomann schrieb:
> Das Ganze soll also ein Tonhöhenshifting werden. Das geht nur durch
> Messung des Pulsverhältnisses des Eingangssignals und Neuerzeugung.

Tonhöhenshifting bei nem Rechteck Signal mit 50/50 Verhältnis ja? WTF. 
Und dann noch 20 Hz was für ne bescheidene Sonate soll das denn werden.

Ok, läuft klassisch ab. Wo fangmer an:

Schnauze schrieb:
> Ach was, typisches uC.net rumgeheule.
>
> Er will ein Rechtecksignal erzeugen, dessen Frequenz von der Frequenz
> eines anderen Rechtecksignals abhängt. Beide Signale haben einen Duty
> Cycle von 1:1.
>
> Sind doch genug Anforderungen, echt.
>
> Das Forum ist über die Jahre echt zum kotzen geworden.
>
> Hier, ich nehm euch noch den Rest der Arbeit hab:
>
> Troll.
> Heute ist nicht Freitag.

DANKE. Was anderes habe ich nicht beschrieben. Der Threadtitel ist 
strategisch gewählt denn so gewinnt man hier die größte Audienz. Und - 
mit Verlaub - das klappt ganz gut.

OK - lassmer das.

Vom Phaseshifting zur Anwendung, werter Uhrenmacher.

Kumpel hat sich in seinen s14 ein Diff von der Automaten Version 
eingebaut. Das neue Ausgleichsgetriebe der automatischen Pferdekutsche 
aka kfz ist leider kürzer übersetzt.

Jetzt zeigt der Tacho zuviel an. Hab das früher mal
mit einer PLL gemacht. Jetzt dachte ich halt mit nem 328er wäre der Job 
schnell gemacht.

Also: RECHTECK, +5V DC, 50/50, 20-600Hz. 20% der Ausgangsfrequenz müssen 
angepasst ausgegeben werden.

Danke noch für die Unterstellung was Unlauteres tun zu wollen.

: Bearbeitet durch User
von Hunsbuckel (Gast)


Lesenswert?

Philipp G. schrieb:

> DANKE. Was anderes habe ich nicht beschrieben. Der Threadtitel ist
> strategisch gewählt denn so gewinnt man hier die größte Audienz.

Aber auch für Strategen gibt es nur hohe und niedrige Frequenzen und 
ganz sicher keine ‚schnellen‘ oder ‚langsamen‘

von c-hater (Gast)


Lesenswert?

C. A. Rotwang schrieb:

> Sinnvoll formuliert wäre die Aufgabenstellung:
> (Re-)Generierung eines Rechtecksignals:
> Die Schaltung soll ein Rechtecksignal mit 50% Duty und einen Pegel von
> xV und yV generieren. Die Frequenz des auszugebenden Signals ergibt sich
> aus:
> -der (zu messenden) Frequenz eines einlaufenden Rechteck-Signals
> -eines Skalierungsfaktors 0 bis 1.0.
>
> Der Skalierungsfaktor wird über ein Potentiometer eingegeben.

Ja, so ungefähr würde das ein erwachsener und gebildeter Mensch 
formulieren können. Tja, der TO gehört aber ganz offensichtlich nicht zu 
dieser Gruppe...

Allerdings: die von dir skizzierte Aufgabenstellung (die ja gleichzeitig 
mindestens die halbe Lösung ist) läßt das Rauschen außer Acht, sowohl 
das der Frequenzmessung (hier wohl eher als Periodendauermessung 
ausgeführt) als auch das der AD-Wandlung der Poti-Einstellung. Zwar 
könnte man trotz des Rauschens sicherstellen, dass das 50% duty der 
generierten Frequenz jederzeit gewahrt bleibt, aber Glitches der 
erzeugten Frequenz sind ohne Gegenmaßnahmen absolut vorprogrammiert.

D.h: irgendwo wird hier wohl noch ein Tiefpass einzufügen sein, um 
diesen Effekt zu verringern, der aber leider gleichzeitig unvermeidlich 
die Antwortzeit reduziert, mit der die Ausgangsfrequenz Änderungen der 
Eingangsfrequenz oder des Poti-Stellwerts folgen kann.

Um diesen Tiefpass zu bemessen, wären aber wieder Angaben des TO 
erforderlich, die dieser weder machen kann noch will. Weil er schlicht 
zu ungebildet ist, um auch nur das Problem erkennen zu können...

Ich vemute mal, dass es sich letztlich um eine Variante der illegalen 
"Leistungssteigerung" handelt. E-Bike oder Mofa, irgendwas in der 
Richtung. Und: falls ich mit meiner Vermutung richtig liege, wird die 
"Lösung" zwar tatsächlich das vom TO gestellte Problem lösen, aber 
trotzdem nicht im Sinne des TO funktionieren. Und das finde ich 
irgendwie auch gut so...

von C. A. Rotwang (Gast)


Lesenswert?

Philipp G. schrieb:

> DANKE. Was anderes habe ich nicht beschrieben. Der Threadtitel ist
> strategisch gewählt denn so gewinnt man hier die größte Audienz.

Ja mai, willste größte Aufmerksamkeit oder besten Rat? Wer Threadttitel 
bewußt in Richtung Aufmerksamkeit trimmt, darf sich über den Vorwurf 
"Troll" nicht beschweren.

Ich halte den Trend im Forum zu bewusst reisserisch formulierten 
Threadtitel für bedenklich.

> Danke noch für die Unterstellung was Unlauteres tun zu wollen.

Naja weniger unlauter als "potentiell lebensgefährlich". Und IMHO sollte 
man tatsächlich dankbar sein, wenn auch die Risiken einer Lösung genannt 
und betrachtet werden. Bspw. unbedachte Softwarezustände bspw 
WDT-Interrupt führen zu "unplausiblen" Sensorsignalen, die das System zu 
einer Notabschaltung mit unerwünschten Folgen bringt.

> Kumpel hat sich in seinen s14 ein Diff von der Automaten Version
> eingebaut.
> Jetzt zeigt der Tacho zuviel an.

Das ist ja auch völlig korrekt so. Was ein Tacho keinesfalls machen darf 
ist, zuwenig anzuzeigen. 
http://www.sueddeutsche.de/auto/verkehr-jeder-tacho-zeigt-die-geschwindigkeit-zu-hoch-an-1.3675876
Und mit der skizzierten Lösung ist genau das möglich. Man sollte 
mindestens von der Poti-eingabe Abstand nehmen und den Korrekturfaktor 
"hart einprogrammiern". Dan hat man die Fehlerquelle "unbemerkt 
verstelltes Poti" schon mal eliminiert.

--
Es wäre m.e. besser gewesen, du hättest gleich im ersten Post 
klargestellt, das du die PLL-Lösung kennst dich aber bewußt dagegen 
entschieden hast. Da weiss der potentielle Antworter welcher fachlicher 
Background zu erwarten ist und muss in seiner Antwort nicht gleich beim 
Urschlein angangen.

von Uhrmacher (Gast)


Lesenswert?

c-hater schrieb:
> Ja, so ungefähr würde das ein erwachsener und gebildeter Mensch
> formulieren können. Tja, der TO gehört aber ganz offensichtlich nicht zu
> dieser Gruppe...

.... weshalb auch ich dazu tendiere ihn der Menschen aus der
Szene der ebike-Fahrzeug-Tuner zuzurechnen.

Philipp G. schrieb:
> Kumpel hat sich in seinen s14 ein Diff von der Automaten Version
> eingebaut. Das neue Ausgleichsgetriebe der automatischen Pferdekutsche
> aka kfz ist leider kürzer übersetzt.

Philipp G. schrieb:
> Hab das früher mal
> mit einer PLL gemacht. Jetzt dachte ich halt mit nem 328er wäre der Job
> schnell gemacht.

Wer schon eine PLL realisiert hat braucht hier nicht so "dumme"
Probleme/Fragen ins Forum stellen.

von C. A. Rotwang (Gast)


Lesenswert?

c-hater schrieb:
> C. A. Rotwang schrieb:
>
>> Sinnvoll formuliert wäre die Aufgabenstellung:

> Allerdings: die von dir skizzierte Aufgabenstellung (die ja gleichzeitig
> mindestens die halbe Lösung ist) läßt das Rauschen außer Acht, sowohl
> das der Frequenzmessung (hier wohl eher als Periodendauermessung
> ausgeführt) als auch das der AD-Wandlung der Poti-Einstellung. Zwar
> könnte man trotz des Rauschens sicherstellen, dass das 50% duty der
> generierten Frequenz jederzeit gewahrt bleibt, aber Glitches der
> erzeugten Frequenz sind ohne Gegenmaßnahmen absolut vorprogrammiert.

Ja das stimmt, "meine" Formulierung der vermuteten Aufgabenstellung ist 
unvollständig und fehlerhaft. Ist aber IMHO dennoch völlig akzeptabel da 
es ja nicht die Aufgabe eine Hobbyistenforums ist, irgendwelchen 
Anfragern die komplette Entwicklungsarbeit (kostenfrei) abzunehmen. 
Hilfe zur Selbsthilfe bedeutet IMHO Denkanstöße zu geben, aber nicht die 
gesamte Denkarbeit abzunehmen.

von Jens P. (picler)


Lesenswert?

Philipp G. schrieb:
> Kumpel hat sich in seinen s14 ein Diff von der Automaten Version
> eingebaut.

Was ist ein "s14" und was ein "Diff von der Automaten Version"?

> Jetzt zeigt der Tacho zuviel an.
> Danke noch für die Unterstellung was Unlauteres tun zu wollen.

Wenn es sich um ein Straßenfahrzeug handelt, führen sämtliche 
Veränderungen am Tacho zum Verlust der Betriebserlaubnis. Wenn du nicht 
gerade VW bist, ist dies schon illegal.

> Also: RECHTECK, 50/50, 20-600Hz. 20% der Ausgangsfrequenz müssen
> angepasst ausgegeben werden.

Kannst du dich mal etwas klarer ausdrücken? Soll die variable 
Eingangsfrequenz um 20% reduziert werden? Wenn ja, warum dann das Poti?

Die Lösung ist recht simpel... Du misst aller x ms die Impulsbreite der 
positiven Flanke (oder alternativ von steigender Flanke bis zur nächsten 
steigenden Flanke)und errechnest daraus die Eingangsfrequenz. Diesen 
Wert reduzierst du um den gewünschten Betrag und erzeugst ein 
entsprechendes Ausgangssignal. Das geht bei 600Hz mit Timer oder in 
Software noch ganz gut. Du musst allerdings beachten, dass das 
Abfrageintervall vom Eingang nicht zu groß ist, da wird die Reaktion 
träge. Außerdem musst du das Ausgangssignal irgendwie synchronisieren. 
Sonst hast du unter Umständen Sprünge im Ausgangssignal.

von Achtung Achtung Achtung (Gast)


Lesenswert?

@te


Male er erst einmal ein Diagramm, erläutere was genau und warum du was 
machen möchtest. Dann erkläre mal warum du das so und nicht anders 
machen willst. Ausführliche Beschreibungen und Begründungen sind hier 
erforderlich!

von m.n. (Gast)


Lesenswert?

Achtung Achtung Achtung schrieb:
> Ausführliche Beschreibungen und Begründungen sind hier
> erforderlich!

Wozu?
Hier wird ja vielleicht ein Müll gelabert!
Auch ohne weitere Nachfrage habe ich ganz oben ein fertiges Programm 
gezeigt, wobei lediglich noch der Potiwert abgefragt werden muß.
Bliebe nur noch zu klären, ob das Poti nach links oder rechts gedreht 
werden soll.

von Achtung Achtung Achtung (Gast)


Lesenswert?

m.n. schrieb:
>
> Wozu?
> Hier wird ja vielleicht ein Müll gelabert!

Dem stimme ich hier vollumfänglich zu.

von Philipp G. (geiserp01)


Lesenswert?

c-hater schrieb:
> Ja, so ungefähr würde das ein erwachsener und gebildeter Mensch
> formulieren können. Tja, der TO gehört aber ganz offensichtlich nicht zu
> dieser Gruppe...

Wenn Du Dir mal die Mühe machen würdest, mein Profil anzuschauen, fällt 
Dir evtl. auf, dass ich hier nicht ganz neu bin. Im 'Wandlerdings 
gesucht' Thread habe ich dem TO nützliche Infos gegeben, noch während 
die gesamte uC Gast Meute über hin hergefallen sind.

Achtung Achtung Achtung schrieb:
> Male er erst einmal ein Diagramm, erläutere was genau und warum du was
> machen möchtest. Dann erkläre mal warum du das so und nicht anders
> machen willst. Ausführliche Beschreibungen und Begründungen sind hier
> erforderlich!

Wozu? Ok, kann ich Dir sagen:
Sicherung flink 200mA, Transil, C, Spule 47uH, C, Diode in Reihe, C + 
Kerko, LM2936, C, Arduino nano. Fertig. Und jetzt bitte nicht KFZ 
Eingangsbeschaltung diskutieren, das hatten wir gefühlte 4000 mal. Ja, 
Spannungsfestigkeit 40V, Transil nach oder vor Sicherung, Linear- vs 
Schaltregler. Done that.

Uhrmacher schrieb:
> Und die Community hier kann sich schon mal darauf einstellen
> dass sie mit ihren heissen Tips vermutlich illegale Machen-
> schaften des TO unterstützt (unterstützen würde).

Siehst Du. Genau DAS ist der Grund weswegen ich den konkreten 
Anwendungsfall versuche zu umschreiben. Dann kommt EWG, E-Prüfzeichen, 
TUEV.

Jens P. schrieb:
> Wenn es sich um ein Straßenfahrzeug handelt, führen sämtliche
> Veränderungen am Tacho zum Verlust der Betriebserlaubnis. Wenn du nicht
> gerade VW bist, ist dies schon illegal.

Echt? Danke.

Jens P. schrieb:
> Was ist ein "s14"

Ein Auto.

Jens P. schrieb:
> Was ist ein "s14"
und was ein "Diff von der Automaten Version"?

Ein Differential. Ein Ausgleichsgetriebe, welches bei einem 
heckgetriebenem Fahrzeug an der Hinterachse in der Mitte der Achse 
sitzt. Da das Automatik Getriebe gegenüber dem handgeschaltenem Getriebe 
nur 4 Gänge hat, ist das Differntial kürzer übersetzt.

C. A. Rotwang schrieb:
> Das ist ja auch völlig korrekt so. Was ein Tacho keinesfalls machen darf
> ist, zuwenig anzuzeigen.
> 
http://www.sueddeutsche.de/auto/verkehr-jeder-tacho-zeigt-die-geschwindigkeit-zu-hoch-an-1.3675876

10% Zuviel sind zulässig. Mehr nicht.

Jens P. schrieb:
> Kannst du dich mal etwas klarer ausdrücken? Soll die variable
> Eingangsfrequenz um 20% reduziert werden? Wenn ja, warum dann das Poti?

Nun, das ist einfach erklärt. Da der Kumpel nicht genau weiss, wieviel 
die Abweichung genau beträgt bau' ich diesem einfach einen Trimmer oder 
Poti ein, dann kann er selber mit GPS+5 abgleichen.

C. A. Rotwang schrieb:
> Naja weniger unlauter als "potentiell lebensgefährlich". Und IMHO sollte
> man tatsächlich dankbar sein, wenn auch die Risiken einer Lösung genannt
> und betrachtet werden. Bspw. unbedachte Softwarezustände bspw
> WDT-Interrupt führen zu "unplausiblen" Sensorsignalen, die das System zu
> einer Notabschaltung mit unerwünschten Folgen bringt.

Der Ausgang ist open collector roll eyes smiley hier. Im Gegensatz zu 
Dir weiss ich genau, was passiert wenn das Geschwindigkeitsignal fehlt.

Jens P. schrieb:
> Die Lösung ist recht simpel... Du misst aller x ms die Impulsbreite der
> positiven Flanke (oder alternativ von steigender Flanke bis zur nächsten
> steigenden Flanke)und errechnest daraus die Eingangsfrequenz. Diesen
> Wert reduzierst du um den gewünschten Betrag und erzeugst ein
> entsprechendes Ausgangssignal. Das geht bei 600Hz mit Timer oder in
> Software noch ganz gut. Du musst allerdings beachten, dass das
> Abfrageintervall vom Eingang nicht zu groß ist, da wird die Reaktion
> träge. Außerdem musst du das Ausgangssignal irgendwie synchronisieren.
> Sonst hast du unter Umständen Sprünge im Ausgangssignal.

Danke. Ich wollte eigentlich hier nur über das Coding diskutieren. Sonst 
nix. Grund dafür, grad eben weil ich das früher nur analog gemacht habe, 
aber noch nie mit einem uC.

Also, mein nächster Post ist ein dummy code.

: Bearbeitet durch User
von Achtung Achtung Achtung (Gast)


Lesenswert?

bla,bla,bla, dem Laberkopp übertriffst Du um astronomische Meilen.
>
> Danke. Ich wollte eigentlich hier nur über das Coding diskutieren. Sonst
> nix. Grund dafür, grad eben weil ich das früher nur analog gemacht habe,
> aber noch nie mit einem uC.
>
> Also, mein nächster Post ist ein dummy code.



Das hast Du aber nicht gefragt. Also Glaskugeln haben wir nicht. Selber 
schuld.

von Peter D. (peda)


Lesenswert?

Max D. schrieb:
> Bei so kleinen Frequenzen kannst du mit einem µC leicht die Zeit
> zwischen den Flanken messen.

Ich würde dazu den ATtiny24 nehmen. Die Messung macht man mit dem 
Input-Capture und die Ausgabe mit dem Output-Compare. Somit hat man 
keinen zusätzlichen Jitter durch die Codeausführungszeit. Die 16 Bit 
Auflösung sollten ausreichen, die Umrechnung macht man dann 32-bittig.
Den ADC setzt man initial in den free-runnning Mode, d.h. liest dann nur 
das ADC-Register aus.

von Philipp G. (geiserp01)


Lesenswert?

Achtung Achtung Achtung schrieb:
> bla,bla,bla, dem Laberkopp übertriffst Du um astronomische Meilen.

ach? Nun nicht ausführlich genug, weil bei dem gibt es nix zu holen?

Vorher wolltest du ein Diagramm, nun da ich das gepostet hab bin ich der 
Labberkopp.

von C. A. Rotwang (Gast)


Lesenswert?

Philipp G. schrieb:

> Nun, das ist einfach erklärt. Da der Kumpel nicht genau weiss, wieviel
> die Abweichung genau beträgt bau' ich diesem einfach einen Trimmer oder
> Poti ein, dann kann er selber mit GPS+5 abgleichen.

Dann bau ihm noch ein Knöpfchen dazu das er den Kalibrierwert ins EEprom 
schiebt und anschliessend die Fehlerquelle Poti entfernen kann.
Wobei es nicht sonderlich glaubhaft klingt, das der Wechsel eines 
Standardgetriebes zu einem nicht bekannten Tachofehler führen soll - 
drehen sich die Räder wegen dem anderen Differential schneller pro 
Kilometer?

> C. A. Rotwang schrieb:
>> Naja weniger unlauter als "potentiell lebensgefährlich". Und IMHO sollte
>> man tatsächlich dankbar sein, wenn auch die Risiken einer Lösung genannt
>> und betrachtet werden. Bspw. unbedachte Softwarezustände bspw
>> WDT-Interrupt führen zu "unplausiblen" Sensorsignalen, die das System zu
>> einer Notabschaltung mit unerwünschten Folgen bringt.
>
> Der Ausgang ist open collector roll eyes smiley hier. Im Gegensatz zu
> Dir weiss ich genau, was passiert wenn das Geschwindigkeitsignal fehlt.

Fehlendes Geschwindigkeitssignal ist einer von ca. 1 Mio Fällen die in 
der Risikoanalyse zu bedenken sind. Naja leicht übertrieben :-) Aber mit 
der PLL wären es deutlich weniger kritische Szenarien, da keine 
Programmierfehler betrachtet werden müßen.

Beitrag #5339032 wurde vom Autor gelöscht.
von Philipp G. (geiserp01)


Lesenswert?

C. A. Rotwang schrieb:
> Wobei es nicht sonderlich glaubhaft klingt, das der Wechsel eines
> Standardgetriebes zu einem nicht bekannten Tachofehler führen soll -
> drehen sich die Räder

Nicht das Primär Getriebe wurde gewechselt, sondern das Differential 
Getriebe.

: Bearbeitet durch User
von Philipp G. (geiserp01)


Lesenswert?

So, hier mein Vorschlag. Bin im Urlaub, kann es nicht ausprobieren:
1
unsigned int iFreq   = 0; //frequency in Hz
2
unsigned int iPinOut = 8;
3
unsigned int iPinIn = 9;
4
unsigned int iPinTrim = 7;
5
unsigned long lTick = 0;
6
int iPotVal = 0; // a value between 50 and 100
7
int iPulseWidth = 0;
8
       
9
void setup(){
10
   pinMode(iPinOut, OUTPUT);
11
   pinMode(iPinIn, INPUT);
12
   pinMode(iPinTrim, INPUT);
13
}
14
15
void loop()
16
{
17
18
int val = analogRead(0); // read voltage according poti pos
19
iPinTrim = map(val, 0, 1023, 50, 100); // calc value
20
21
if (digitalRead(iPinIn) == HIGH)
22
{
23
    iPulseWidth = (millis - lTick);  // calc pulse width
24
}
25
else
26
{
27
    iPulseWidth = 0;
28
    lTick = millis;
29
}
30
31
if (iPulseWidth > 50) // we are too low
32
{
33
    iFreq = (10 / iPulseWidth * iPinTrim); // calc output freq
34
    tone(iPinOut, iFreq); //set current frequency @50 50 duty, square wave guys 
35
}
36
//else
37
//todo, cut output
38
}

: Bearbeitet durch User
Beitrag #5340212 wurde vom Autor gelöscht.
von Stefan F. (Gast)


Lesenswert?

Ich glaube nicht, dass das so klappt, denn iPulseWidth wird während der 
High-Phase des Impulses hochgezählt. Mit diesem ständig veränderten Wert 
wird dann auch ein ständig verändertes Ausgangssignal erzeugt.

Ich erwarte am Ausgang eine Frequenz, dessen Frequenz sich in Form von 
Säge-Zähnen verändert.

Außerdem fehlt noch jegliche Fehlerbehandlung. Was machst du z.B. wenn 
mal ein einzelner Impuls ausfällt? Oder wenn das Signal plötzlich 
"springt"? ich würde mich nicht darauf verlassen, dass das Signal vom 
Tacho-Sensor top-sauber wie im Lehrbuch ist.

von Philipp G. (geiserp01)


Lesenswert?

guter Punkt, ich muss das maximum wissen. werde ich korrigieren.

von Philipp G. (geiserp01)


Lesenswert?

1
unsigned int iFreq   = 0; //frequency in Hz
2
unsigned int iPinOut = 8;
3
unsigned int iPinIn = 9;
4
unsigned int iPinTrim = 7;
5
unsigned long lTick = 0;
6
int iPotVal = 0; // a value between 50 and 100
7
int iPulseWidth = 0;
8
int iTmpPWidth = 0;
9
       
10
void setup(){
11
   pinMode(iPinOut, OUTPUT);
12
   pinMode(iPinIn, INPUT);
13
   pinMode(iPinTrim, INPUT);
14
}
15
16
void loop()
17
{
18
19
int val = analogRead(0); // read voltage according poti pos
20
iPinTrim = map(val, 0, 1023, 50, 100); // calc value
21
22
if (digitalRead(iPinIn) == HIGH)
23
{
24
    iTmpPWidth= (millis - lTick);  // calc pulse width
25
}
26
else
27
{
28
    iPulseWidth = 0;
29
    lTick = millis;
30
    iPulseWidth = iTmpPWidth;
31
}
32
33
if (iPulseWidth < 50) // we are too low
34
{
35
    iFreq = (10 / iPulseWidth * iPinTrim); // calc output freq
36
    tone(iPinOut, iFreq); //set current frequency @50 50 duty, square wave guys 
37
}
38
//else
39
//todo, cut output
40
}

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Das könnte schon eher klappen.

von Philipp G. (geiserp01)


Lesenswert?

Noch was, wenn jetzt hier wirklich jemand im Forum nach e bike tuning 
sucht findet er hier nen funktionieren quell code. Evtl. möchten die 
Angesprochenen den Missstand editieren.

von Ulf P. (bastler2004)


Lesenswert?

Sparfuchs schrieb:
> Das Tachosignal (Pegel, Tastverhältnis, Frequenzbereich würden dazu
> passen) eines Autos soll in seiner Frequenz vermindert werden, um die
> "Alterung" des Autos zu verlangsamen.

Könnte sein. Auch die Sache mit dem E-Bike ist möglich.
Bei mir ist es anders herum:
Ich habe im Motorrad vorne ein kleineres Ritzel 16->15 Zähne, damit das 
kleine Fahrzeug bisschen mehr Zug hat. Die Vmax ist für mich nicht 
wichtig.
Aber nun zeigt der Tacho 1/16-tel zu viel an. Sehr gut fürs Punktekonto.
Wenn er wieder richtig anzeigen würde wäre mir aber lieber. Also müsste 
die Eingangsfrequenz gemessen und erhöht wieder ausgegeben werden. Der 
Faktor ist fix,  1:1,16. Dazu brauche ich kein Poti.

Gruß Franziska

von Philipp G. (geiserp01)


Lesenswert?

Franziska N. schrieb:
> Könnte sein. Auch die Sache mit dem E-Bike ist möglich.

Was könnte sein, Was ist möglich? Ich besitze kein E-Bike.

Die Sache ist längst durch und funktioniert mit dem neuen Differential. 
Abgleich mit GPS zeigt 5Km/h zuviel an.

Mach' einen neuen Thread auf, dieser ist gut zwei Monate alt.

aber zum vierhundertsten:

http://www.eatsleepboost.lt/tech-info/nissan-tech-info/nissan-r200-diff-ratios/


Nissan R200 diff ratios + drivetrain info


Nissan R200 diff ratios:
S14 – KA24DE – USDM – manual/auto – 4.083
 S14 – SR20DET – EDM – manual – R200V – 3.692
 S14 – SR20DET – EDM – auto – R200V – 3.916
 S14 – SR20DET – ADM – manual – 3.692
 S14 – SR20DE – JDM – manual – 4.083
 S14 – SR20DET – JDM – manual – _4.083_
 S14 – SR20DET – JDM – auto – _3.916_

: Bearbeitet durch User
Beitrag #5403405 wurde von einem Moderator gelöscht.
Beitrag #5403410 wurde von einem Moderator gelöscht.
Beitrag #5403446 wurde von einem Moderator gelöscht.
Beitrag #5403527 wurde von einem Moderator gelöscht.
Beitrag #5403568 wurde von einem Moderator gelöscht.
Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.