Forum: Analoge Elektronik und Schaltungstechnik Universeller Digitaleingang


von Michael S. (msb)


Lesenswert?

Wie realisiere ich am besten einen differenziellen Digitaleingang
- Eingangsbereich +/- 24V
- Individuell einstellbare obere und untere Hystereseschwelle
- Max. 2MHz Digitalsignal am Eingang
- Logikausgang

Habe mir schon einen Wolf gegoogelt um etwas elegantes, z.B. ein 
fertiges IC zu finden.

Vielleicht habt Ihr ja eine Idee.

von Martin N. (kaktus2)


Lesenswert?

Man könnte vielleicht mit zwei analogen Eingängen arbeiten. Mit Dioden 
kann man dann die negative Halbwelle ja Gleichrichten und an Eingang B 
schicken und die positive Halbwelle an Eingang A .....

Mit einem Spannungsteiler kann man dann auch 24V an einen 5V Eingang 
betreiben. Über einen Poti kannst du dann die Spannung noch justieren.

Müsstest dann aber auch bedenken das über eine Diode ca 0,6V abfallen

von Martin N. (kaktus2)


Angehängte Dateien:

Lesenswert?

Hier, so würde ich das machen... habe ich eben gezeichnet in der 
Schnelle.
Alles andere fand ich zu kompliziert!

Würde man die 18kOhm gegen einen Poti tauschen könnte man die 
Amplitudenhöhe noch einstellen...

von Michael S. (msb)


Lesenswert?

Ja, den Spannungsteiler sehe ich auch.
Dioden sind eher problematisch.

Allerdings muss ich die Hysterese at runtime von einem Prozessor 
einstellen (hatte ich vergessen zu sagen)

Dachte bisher an einen NE521 (zwei Komparatoren und ein RS FF)
Plus ein 8-Fach I2C DAC (weil ich 4 Inputs auf einer Platine bediene), 
alternativ evtl DigiPots.

von Martin N. (kaktus2)


Lesenswert?

Also die Hystereseschwellen soll dein MCU einstellen können nicht du 
selber manuell richtig? Ich würde sonst auch DigiPots nehmen und über 
i2c ansteuern oder so...

von Michael S. (msb)


Angehängte Dateien:

Lesenswert?

Ja, eine MCU stellt das ein.

So ungefähr wie in angehängter Datei, aber mit DigiPots und +/- 
Versorgung könnte es aussehen.

Das ganze muss ich dann noch galvanisch trennen, denke an isolierenden 
DC/DC plus 4 Digitalausgänge und I2C jeweils über kapazitive 
Isolationskoppler.

von holger (Gast)


Lesenswert?

So einen Schwachsinn braucht doch kein Mensch.

von Purzel H. (hacky)


Lesenswert?

Hmmm, 2MHz an 24V ... wow. sportlich. Ich schliesse mich dem Vorredner 
an. Quatsch.

von Michael S. (msb)


Lesenswert?

Natürlich keine 24V mit 2MHz, aber z.B. RS485. Es geht um flexible 
Eingänge für einen Protokollanalysator, der auch Steuersignale erfassen 
können soll. Damit man nicht ein ganzes Fuder Probes braucht.

Was maßt Ihr euch eigentlich an das Quatsch zu nennen ohne zu wissen 
wofür es ist.

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

Wenn es nicht sonderlich genau oder linear sein muß, könnte ich mir 
einen Weg über eine Wandlung in Strom und dann über Optokoppler 
vorstellen. Ohne Hilfsspannungsübertragung über die galvanisch getrennte 
Strecke wäre der Eingang dann aber eher niederohmig.

von Falk B. (falk)


Lesenswert?

Solche Signale muss jeder Tasktopf bzw. Oszilloskop verarbeiten, also 
sollte man dort mal suchen. Kompensierte Spannungsteiler, ggf. 
Umschaltbar zwischen 5V/24V incl. Klemmung. Sollte bei max. 2 MHz nicht 
so wild sein.

von holger (Gast)


Lesenswert?

Da war doch was:

Beitrag "Programmierbare Universal Probe"

Wieso machst du einen zweiten Thread auf?

>- Galvanische Trennung (wahrscheinlich kapazitiv)

ROFL;)

von Digitalus (Gast)


Lesenswert?

Wenn es ein digitaler EIngang sein soll, ist der Pegel wohl egal und 
kann auch limitiert werden. Also reicht ein OP mit 
Eingangsoffsetverschiebung und Begrenzer-Z-Dioden auf den 3,3 V Pegel-

von Michael S. (msb)


Lesenswert?

Falk sieht das richtig, an einem Scope würde ja auch niemand 
verschiedene Tastköpfe für unterschiedliche Spannungen haben wollen. 
Leider brauch ich was differenzielles und muss das quasi im Tastkopf mit 
einstellbarer Hysterese in ein Digitalsignal wandeln.

@Holger: Ja mit dem Thread hast Du recht. Ich glaube ich hab den ersten 
zu kompliziert verfasst, deshalb ein zweiter Versuch.
Warum Du aber lachend auf dem Boden liegst ist mir nicht klar.

@Digitalus: Ja Dioden zur Absicheung wären wohl sinnvoll, aber so 
einfach wie Du es darstellst ist es leider nicht, weil die Hysterese 
einstellbar sein muss.

von Axel S. (a-za-z0-9)


Lesenswert?

Nach dem Lesen des Threads muß ich sagen: LOL!

Kein Mensch braucht das was du da vorhast. Wie in vielen anderen 
Situationen ist auch hier die perfekte Lösung nicht die, der man
nichts mehr hinzufügen kann, sondern die bei der man nichts mehr
weglassen kann.

Realistisch würde man für die Erfassung von Digital(!)signalen eine 
Schaltschwelle um 1.4V vorsehen, mit ein paar 100mV Hysterese.

Aus die Maus.

Damit paßt das dann automatisch von TTL über CMOS/3.3V bis hin zu 
RS-232. Optional einen Abschwächer davor und/oder einen Lastwiderstand 
(für Stromschnittstellen) und/oder eine Verschiebung der Schaltschwelle 
auf 0V.

Natürlich muß das überlastfest sein bis meinetwegen 230V. Und eine 
galvanische Trennung braucht man (wenn überhaupt) dann für den ganzen 
4er-Pack. Oder hast du schon mal ein Protokoll analysieren müssen für 
Signale die untereinander potentialgetrennt waren?

Programmierbare Schaltschwelle ist Schnickschnack und TL082(?) sind 
natürlich zu langsam. Richtige Komparatoren dürfen es schon sein.
Viel wichtiger wäre sauberes Timestamping. Also Minimum ein Latch
für die 4 Signale mit einem vom Gerät vorgegebenen Takt.


XL

von Michael S. (msb)


Lesenswert?

LOL, Schnickschnack, Quatsch, Schwachsinn
Was muss ich mir hier noch anhören.

Ich frage nach einer technischen Lösung für etwas was ich für sinnvoll 
und notwendig erachte. Jeder bessere Logikanalysator hat einstellbare 
Schwellen. Und meine Signale gehen in einen Logik, Protokoll und CPU 
Event Analysator, wo natürlich alle Ereignisse mit Timestamp versehen 
werden. Was ich hier bauen will ist eine universelle (!) Probe für 
dieses technisch anspruchsvolle Gerät. Eine Probe die sicherstellt, dass 
das Gerät Schnittstellen (CAN, RS485, RS232, LIN) genauso empfängt wie 
die entsprechenden Receiver es würden. Und dazu braucht man halt 
einstellbare Schwellen.
Was ich mir (ungern) vorstellen könnte ist Steuerspannungen von 24V 
auszuklammern.

Nochmal zur Sicherheit: Es ist KEINE Eingangsschaltung für ein Arduino 
Hobbyprojekt!

Zur galvanischen Trennung:
Ja die brauche ich. Und ja, die ist  für die ganze Probe. Momentane Idee 
ist:
- isolierter DC/DC für Hilfsspannung
- 4 Bit capacitive isolator für die Outputs
- I2C capacitive isolator für die Schwellwertübermittlung

von Reinhard Kern (Gast)


Lesenswert?

Michael S1. schrieb:
> Ich frage nach einer technischen Lösung für etwas was ich für sinnvoll
> und notwendig erachte. Jeder bessere Logikanalysator hat einstellbare
> Schwellen.

Ja, aber die Technologie kannst du dir schlicht nicht leisten - selbst 
wenn man sie kaufen könnte, aber meistens sind da Custom ICs drin. Und 
selbst dann ist i.d.R. zwar die Schwelle, aber nicht die Hysterese 
einstellbar.

Ich rede natürlich von erwachsenen Logic Analyzern und In Circuit 
Testern, etwa von HP/Agilent, Tektronix, Teradyne, nicht von 
Batslerversionen auf Parallelportbasis u.Ä. Mein Tektronix LA hat nicht 
umsonst soviel gekostet wie eine Eigentumswohnung.

Gruss Reinhard

von Lothar S. (loeti)


Lesenswert?

> Was ich hier bauen will ist eine universelle (!) Probe für dieses
> technisch anspruchsvolle Gerät.

Dann mußt Du aber 3 Zustände protokolieren nicht nur Hi/Lo.

> - 4 Bit capacitive isolator für die Outputs

Und was machst Du bei sehr langsamen Signalen die auf RS232 oder RS485 
durchaus vorkommen?

Sollen alle Eingänge dann die selben Logikpegel haben oder ist das auch 
individuell?
Wie viele Eingänge sollen's den überhaupt werden?

Grüße Löti

von Michael S. (msb)


Lesenswert?

@Reinhard:
> Ja, aber die Technologie kannst du dir schlicht nicht leisten - selbst
> wenn man sie kaufen könnte, aber meistens sind da Custom ICs drin.

bei meinen bescheidenen Frequenzen ist das so wild auch nicht. Könnte 
sogar noch auf 1 MHz (die 2 MHz sind mit reserve) runter gehen.

>Und selbst dann ist i.d.R. zwar die Schwelle, aber nicht
>die Hysterese einstellbar.

Müsste ich mich sehr täuschen wenn unser Agilent nicht die beiden 
Schwellen separat einstellen kann. Muss ich mal prüfen.

@Löti:

> Dann mußt Du aber 3 Zustände protokolieren nicht nur Hi/Lo.

Das wäre mir dann doch zu Aufwändig.
Mir geht es hauptsächlich darum die Signale so zu sehen wie ein zum 
jeweiligen standard gehöriger Empfänger.
Klar würde mir da ein im verbotenen Bereich floatendes Signal nicht 
direkt auffallen, aber am Protokollergebnis schon.


>Und was machst Du bei sehr langsamen Signalen die auf RS232 oder RS485
>durchaus vorkommen?

Mit meinem programmierbaren Schmitt Trigger ist das doch kein Problem.

>> Sollen alle Eingänge dann die selben Logikpegel haben oder ist das auch
individuell?

Das ist individuell.
Quasi: Ch1 for CAN, Ch2 for RS485, Ch3 for RS232, Ch4 for LIN

> Wie viele Eingänge sollen's den überhaupt werden?

4 Eingänge pro Probe  (maximal 8 Probes können am Auswertegerät 
angeschlossen werden)

von Lothar S. (loeti)


Lesenswert?

> Mit meinem programmierbaren Schmitt Trigger ist das doch kein Problem.

Ich meinte auf der Empfängerseite des Analysators... .

> Das wäre mir dann doch zu Aufwändig.

Der Aufwand ändert sich dadurch nicht, nur die Bauteile.

Grüße Löti

von Horst H. (horst_h44)


Lesenswert?

Hier gibts jede Menge Applikationen für 24V E/A: 
http://ichaus.biz/wp1_mikrocontroller , auch ein 24V E/A-Port mit 16 
digitalen Ein-/Ausgängen die gleichzeitig auch als Analogeingang 
verwendet werden können. Eine komplette Schaltung des iC-JX mit Layout 
ist hier beschrieben: 
http://www.raspberrypi.org/phpBB3/viewtopic.php?t=9556&sid=a98d84943f7db20dd53348135d463765 
.

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

Sag mal Horst, verschickst du auch Samples ;-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.