INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Frequenz auf nächstkleinere aufrunden



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

10.07.2006, 15:34
Beitrag #1

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Frequenz auf nächstkleinere aufrunden
Hallo Leute, folgendes Problem:

habe eine Eingangsfrequenz (z.B. 5 Hz)
habe einen Frequenzteiler (z.B. 2 Hz)

5/2 = 2,5, passt aber nicht, soll ganzzahlig sein, so würde eine 1 für den Frequenzteiler als nächstkleinerer passen.

Wie kann ich es mathematisch(ohne For-Loop) berechnen ?

Grüsse

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.07.2006, 16:31
Beitrag #2

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Frequenz auf nächstkleinere aufrunden
Keine Ideen? Oder das Problem zu schlecht beschrieben? Bitte, brauche mathematische Hilfe, soll doch bestimmt ganz einfach gehen, nur komme ich nicht drauf.

Gruss

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.07.2006, 18:38 (Dieser Beitrag wurde zuletzt bearbeitet: 10.07.2006 18:39 von Lucki.)
Beitrag #3

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Frequenz auf nächstkleinere aufrunden
etwas schlecht beschrieben schon, denn was ist ein "Frequenzteiler von 2 Hz" (ein Frequenzteiler ist doch etwas was dividiert, also z.B durch 2)
Aber wenn Du 5 Hz und 2 Hz brauchst, dann muß Du natürlich von einer Mutterfrequenz ausgehen, die das kleinste gemeinschfaftliche Vielfache von 2 und 5 ist (oder ein Mehrfaches davon). Hier wäre das minimal 10 Hz: dividiert duch 2 ergibt 5 Hz, und dividiert duch 5 ergibt 2 Hz.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.07.2006, 09:17
Beitrag #4

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Frequenz auf nächstkleinere aufrunden
Also folgendes:

1)ich bekomme Daten mit einer bestimmten Frequenz (ist vor dem Starten des Programms einstellbar)
2)aus dem Config-File lese ich den Frequenzdivisor (Teiler) aus
3)die Ausgangsfrequenz soll der Eingangsfrequenz geteilt durch den Teiler sein

Der Teiler muss logischerweise ein Vielfaches der Eingangsfrequenz sein, sonst kann ich nicht teilen. Der Bediener macht aber natürlich keine Berechnung, sondern verlässt sich auf mein Programm.

So, was soll ich dann als Ausgangsfrequenz ausgeben, wenn meine Eingangsfrequenz durch den Teiler nicht ganzzahlig teilbar ist?
Deshalb gebe ich eine Warnung aus, dass der Teiler angepasst wurde und passe den Teiler so an, dass die Eingangsfrequenz durch diesen ganzzahlig teilbar ist.

Bsp.

Eingfrq = 10Hz
Teiler = 3

Was soll ich jetzt machen?

Aus der 3 mache ich eine 2, dann habe ich 5Hz Ausgangsfrequenz und bin glücklich.


Ich habe es schon mit einer While-Schleife realisiert:

der Teiler wird solange dekrementiert, bis ich keinen Rest bei der Division EinFrq/Teiler habe.
Die Lösung gefällt mir aber nicht, denn ich will keine While-Schleifen solcher Art haben, weil meine Applikation als Dienst arbeiten soll.

Deshalb will ich eine direkte mathematische Lösung finden, man hat ja genug math. VIs in LV.


Grüsse, Eugen

P.S. Danke Lucki, dass du zumindest mal etwas vorgeschlagen hast.

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.07.2006, 09:43
Beitrag #5

Kvasir Offline
LVF-Freak
****


Beiträge: 642
Registriert seit: May 2006

10
2004
DE_EN

0000
Oesterreich
Frequenz auf nächstkleinere aufrunden
Ich fürchte du wirst um deine While Schleife nicht drumherum kommen.

Das ganze läßt sich sicher realisieren durch eine Faktorzerlegung deiner Eingangsfrequenz und dann einer Annäherung.
Ich habe allerdings keine passende Mathfunktion dazu gefunden. Was ich gesehen habe ist eine ggT und eine kgV Funktion, mit denen man das sicher auch hinbiegen könnte.
Aber: Ich habe mir diese ggT Funktion angesehen und in der steckt auch eine While Schleife, wie du sie schon hast.

Ich glaube also, dass du um deine Schleife nicht herumkommst. Sad

A few weeks of developement and testing can save a WHOLE afternoon in the library!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.07.2006, 10:23
Beitrag #6

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Frequenz auf nächstkleinere aufrunden
Habe es wie auf dem Bild gemacht.
Wenn aber jemand doch eine Idee dazu hat, bitte melden.

Danke, Eugen

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.07.2006, 10:41
Beitrag #7

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Frequenz auf nächstkleinere aufrunden
Hier noch mal das Bild


Angehängte Datei(en) Thumbnail(s)
   

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.07.2006, 17:04
Beitrag #8

Oliver Listing Offline
LVF-Freak
****


Beiträge: 721
Registriert seit: Sep 2004

2012 und 2014 (Windows und Linux)
1998
EN

22844
Deutschland
Frequenz auf nächstkleinere aufrunden
Hi eugen,

pack in die Whileschleife noch eine kleine Wartezeit von z.B. 10ms rein. Dann bremst du nicht den Rechner aus, wenn dein Prog. mal ein Fehlermacht oder länger rechnet...

Ansonsten auch keine andere Idee zur Fragestellung.

Gruß
Oliver
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Gehe zu: