Forum: Mikrocontroller und Digitale Elektronik 3,3 und 5V Problem beim Pi4


von Heikooo (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

Zuerst mal, ich bin leider nicht sonderlich bewandert bei dem ganzen 
Thema, deswegen seht es mir bitte nach wenn euch die Frage "dumm" vor 
kommt. Ich weiss leider auch weder wie ich das Googlen soll, noch nach 
welchen Begriffen ich hier im Forum suchen müsste um das passende Thema 
zu finden.
Sollte es eine fertige Antwort in einem anderen Thread geben würde ich 
mich sehr freuen wenn ihr mir das mitteilen würdet.


Zu meiner Frage:

Ich habe ein Gerät was auf 4 Adern jeweils 5V Eingangsspannung bekommt. 
Auf weiteren 16 Adern liegen dauerhaft 5V Ausgangsspannung an. Ergibt 
zusammen so ein 20 Pin Flachbandkabel.
Es kann nun während dem Betrieb dazu kommen, dass auf ein paar der 16 
Ausgangs-Adern kurzzeitig (wirklich kurz) die Spannung gewollt abfällt; 
auf etwas unter 1V.
Zusätzlich habe ich einen Pi4 und möchte diese "abfallende Spannung" mit 
bekommen.

Mein Problem: Soweit ich weiss verträgt der Pi4 nur 3,3V an den GPIOs. 
Ich würde gerne etwas zwischen dieses 20 Pin Kabel (wovon ich ja nur 16 
brauche weil ich die 5V Eingangsspannung ja auch anders liefern kann) 
und den Pi bauen, was mir:
- Wenn dauerhaft 5V auf den Adern läuft 0V geliefert wird
- und wenn die Spannung auf sagen wir mal unter 2V fällt diese spezielle 
Ader dann genau 3,3V an den GPIO schickt.

Also als Beispiel:
Das Gerät ist ganz normal in Betrieb und auf Eingang 1-16 liegen 
dauerhaft 5V. Dann soll auf allen 16 Ausgängen 0V sein. Dann trifft 
plötzlich der Zustand ein, dass auf Ader 4,7 & 12 die Spannung abfällt. 
Dann möchte ich auf den Ausgängen 4,7 & 12 nahezu zur gleichen Zeit 3,3V 
haben. Alle anderen der 16 Ausgänge aber weiterhin auf 0V.

Wie ich das dann am Pi abfange bzw. das Lesende der GPIOs gehört nicht 
zur Frage ;)

Ich hab eine Skizze dazu gelegt. Man sehe mir bitte die Qualität nach, 
ist nur irgendwie zur Veranschaulichung da. Die Anschlüsse unten an den 
GPIOs sind natürlich falsch. Mir ist bewusst, dass dort nicht jeder Pin 
so der Reihe nach belegt werden kann. Das ist nur der EInfachheit halber 
auf die ersten gelegt.


Ich bedanke mich im voraus bei allen die versuchen zu helfen :)

von M. K. (Gast)


Lesenswert?


von samuel (Gast)


Lesenswert?

Wie kurz ist wirklich kurz? Kannst du das mal messen?
Und muss der Raspi messen können, wie lang der Impuls ist, oder nur ob 
er da war?

Simple Lösung (langsam):
NPN-BJT Transitor:
5V Eingang mit Vorwiderstand an Basis. Collector mit Widerstand an 3,3V. 
Emitter an GND. Collector direkt an Input vom Raspi.

Grobe Werte:
Basis-Widertstand 10k-100k
Collectorwiderstand 1k

von Thomas (kosmos)


Lesenswert?

mit 2 8fach Optokopplern 16fach habe ich noch keine gesehen gibts 
vielleicht aber auch.

Wenn deine 5 V anliegen leuchtet die Diode (Widerstandswert eben darauf 
auslegen). Auf der Transistorseite hast du einen Widerstand auf der High 
Side und greifst da drunter die Spannung ab, da der Transistor wegen der 
Diode durchsteuert zieht er die Spannung runter, wenn die Diode nicht 
leichtet hast du nach dem Widerstand deine angelegt Spannung z.B. 3,3 V

von Heikooo (Gast)


Lesenswert?

samuel schrieb:
> Wie kurz ist wirklich kurz? Kannst du das mal messen?

Sehr kurz, wie lange kann ich leider nicht messer, ich weiss nur das es 
kurz ist

> Und muss der Raspi messen können, wie lang der Impuls ist, oder nur ob
> er da war?

Zum Glück muss er nur messen ob er da war.
Aber: Auf allen 3 Adern wo dann die Spannung abfällt gleichzeitig.

> Simple Lösung (langsam):
> NPN-BJT Transitor:
> 5V Eingang mit Vorwiderstand an Basis. Collector mit Widerstand an 3,3V.
> Emitter an GND. Collector direkt an Input vom Raspi.
>
> Grobe Werte:
> Basis-Widertstand 10k-100k
> Collectorwiderstand 1k

Ich versteh leider nicht im Ansatz wie das gemeint ist :D Wie gesagt, 
ich bin da wirklich neu auf dem Gebiet. Bin halt eigentlich 
Programmierer und deswegen brauch ich auch ab dem Punkt wo auf den Adern 
die 3,3V anliegen zum Glück keine Hilfe mehr, aber wenns drum geht das 
so hinzubekommen...

Wenn ich das richtig verstehe was du da schreibst muss ich das pro Ader 
machen oder?

von Heikooo (Gast)


Lesenswert?

Thomas O. schrieb:
> mit 2 8fach Optokopplern 16fach habe ich noch keine gesehen gibts
> vielleicht aber auch.
>
> Wenn deine 5 V anliegen leuchtet die Diode (Widerstandswert eben darauf
> auslegen). Auf der Transistorseite hast du einen Widerstand auf der High
> Side und greifst da drunter die Spannung ab, da der Transistor wegen der
> Diode durchsteuert zieht er die Spannung runter, wenn die Diode nicht
> leichtet hast du nach dem Widerstand deine angelegt Spannung z.B. 3,3 V

Auch in dem Fall fährt im Grunde nen Zug durch meinen Kopf ;) Und ich 
hab nur mal eben geguckt, kann das sein das die Dinger über 200€ kosten? 
oO

von Thomas (kosmos)


Lesenswert?

kostet vielleicht 1€

auf die schnelle habe ich nur einen 4fachen gefunden Sharp PC847
https://www.alldatasheet.com/datasheet-pdf/pdf/43374/SHARP/PC847.html

auf Seite 4 unten links ist die Testschaltung die du verwenden kannst 
das siehst du auch wie der Pegelwechsel ist.

von Sascha W. (sascha-w)


Lesenswert?

@Heikooo,

das einfachste für die Anwendung nennt sich Spannungsteiler. Mit 2 
Widerständen pro Signalleitung sorgt der dafür das aus den 5V 3.3V 
werden.
Das zwischenschalten eines Transistors oder gar eines Optokopplers der 
für Galvanische Trennung sorgt, erhöht nur die Sicherheit für deinen PI 
ist aber rein funktional nicht erforderlich.
Wenn du uns mehr mehr über das angeschlossene Gerät verrätst kann auch 
besser darauf eingegangen werden.
Beim durchzählen deiner Leitungen solltest du die Masse (GND) nicht 
vergessen!

Sascha

von Heikooo (Gast)


Lesenswert?

Sascha W. schrieb:
> @Heikooo,
>
> das einfachste für die Anwendung nennt sich Spannungsteiler. Mit 2
> Widerständen pro Signalleitung sorgt der dafür das aus den 5V 3.3V
> werden.
> Das zwischenschalten eines Transistors oder gar eines Optokopplers der
> für Galvanische Trennung sorgt, erhöht nur die Sicherheit für deinen PI
> ist aber rein funktional nicht erforderlich.
> Wenn du uns mehr mehr über das angeschlossene Gerät verrätst kann auch
> besser darauf eingegangen werden.
> Beim durchzählen deiner Leitungen solltest du die Masse (GND) nicht
> vergessen!
>
> Sascha

Hallo Sascha,

so wie ich dich verstehe bringt das zwar die 5V auf 3,3V aber ich möchte 
ja wenn 5V an kommt auf allen Ausgängen 0V und wenn die Spannung von 5V 
auf unter 2V oder vllt auch 1V abfällt (das müsste ich dann testen 
welche Grenze da Sinnvoll ist) dann die 3,3V bis zum Pi durchreichen. 
GLeichzeitig auf den Adern auf denen die Spannung von 5V absinkt. Da 
reicht ein kurzer Moment damit ich im Pi per Dauerschleife auf alle 
genutzten Inputs lausche und mir die raus picke welche dann kurzzeitig 
Spannung bekommen.

Bei dem Gerät handelt es sich um eine Matrix eines Löwer HB8 Dartgeräts. 
Die Spannung an den Adern fällt ab, wenn der Pfeil die Scheibe trifft, 
die dahinterliegende Matrix durch das Segment auf das der Pfeil trifft 
"auslöst" und dann kommt es halt zu einer Abweichung der Spannung von 5V 
auf knapp unter 1V, geht dann aber sofort auch wieder rauf. Die 
verschiedenen Adern die dann unter 5V fallen ergeben in Kombination dann 
die getroffene Zahl. Ganz simpel gesagt: Ader 4,8&12 ist dann eine 
Doppel 13. Aber Ader 3,9&15 wäre eine Single 7. (Anders bekommt man ja 
bei 16 Adern keine Kombinationen raus um auf über 60 verschiedene 
Segmente der Dartscheibe zu kommen)

von Stefan F. (Gast)


Lesenswert?

Heikooo schrieb:
> Ich versteh leider nicht im Ansatz wie das gemeint ist

Dann lass Dir von einem Elektroniker etwas bauen, oder benutze einen 
fertigen Messadapter mit USB und ausreichend vielen analogen Eingängen.

Wie wäre es zum Beispiel mit einem handelsüblichen Arduino Nano Board 
und meiner Firmware: http://stefanfrings.de/serial_io/index.html . Nimm 
zwei davon, um auf 16 analoge Eingänge zu kommen. Da kannst du direkt 
mit den 5V ran gehen.

Auf jeden Fall sind klare eindeutige Angaben nötig. Du musst festlegen, 
bei welcher Spannung nun die Schaltschwelle sein soll und wie viel 
Abweichung davon toleriert werden kann. Du musst festlegen, was 
"schnell" und "kurz" bedeutet. Du musst in Erfahrung bringen, wie hoch 
diese Leitungen belastetet werden können, ohne dass der Zusätzliche 
Aufbau stört. Brauchst du eine Potentialtrennung?

Alle analogen Eingänge gleichzeitig zu erfassen macht die Sache sehr 
teuer, denn dafür bräuchtest du 16 Analog-zu-digital Konverter mit 
synchronisierungs-Funktion. Aber fast gleichzeitig ist wiederum kein 
Problem. Entscheide dich. Mit meiner Firmware kannst du ungefähr einen 
Eingang pro Millisekunde abfragen. Wenn du die Firmware umschreibst, 
könnte es wesentlich schneller gehen.

von Heikooo (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Heikooo schrieb:
>> Ich versteh leider nicht im Ansatz wie das gemeint ist
>
> Dann lass Dir von einem Elektroniker etwas bauen, oder benutze einen
> fertigen Messadapter mit USB und ausreichend vielen analogen Eingängen.
>
> Wie wäre es zum Beispiel mit einem handelsüblichen Arduino Nano Board
> und meiner Firmware: http://stefanfrings.de/serial_io/index.html . Nimm
> zwei davon, um auf 16 analoge Eingänge zu kommen. Da kannst du direkt
> mit den 5V ran gehen.
>
> Auf jeden Fall sind klare eindeutige Angaben nötig. Du musst festlegen,
> bei welcher Spannung nun die Schaltschwelle sein soll und wie viel
> Abweichung davon toleriert werden kann. Du musst festlegen, was
> "schnell" und "kurz" bedeutet. Du musst in Erfahrung bringen, wie hoch
> diese Leitungen belastetet werden können, ohne dass der Zusätzliche
> Aufbau stört. Brauchst du eine Potentialtrennung?
>
> Alle analogen Eingänge gleichzeitig zu erfassen macht die Sache sehr
> teuer, denn dafür bräuchtest du 16 Analog-zu-digital Konverter mit
> synchronisierungs-Funktion. Aber fast gleichzeitig ist wiederum kein
> Problem. Entscheide dich. Mit meiner Firmware kannst du ungefähr einen
> Eingang pro Millisekunde abfragen. Wenn du die Firmware umschreibst,
> könnte es wesentlich schneller gehen.

Ich verstehe das jetzt so, korrigier mich bitte wenn ich falsch liege.
Ich kann ein Arduino Nano Board so betreiben, dass ich alle 16 Adern an 
dieses anschließe (bzw. halt an 2), mit deiner Firmware und ein wenig 
mehr Code so abgreife, dass ich auf den GPIOs vom Arduino dann mit 3,3V 
raus gehe auf den Pi? Ich brauch den Pi halt weil die Software die ich 
schreiben will Bildschirme braucht (der Pi hat ja die 2 HDMI Ausgänge).

Und ich würde mir da sehr gerne was bauen lassen, ich kenne nur 
niemanden der das kann. Zumindest wüsste ich das nicht und ich wollte 
das Projekt ja auch auf eine gewisse Art und Weise selbst machen. Für 
mich ist das eine Herausforderung und ich find eure Hilfe super. Ich bin 
nur einfach so neu auf dem Gebiet das ich das etwas erklärt haben muss 
wie für ein Kleinkind. Ist ja keine Schande Unwissenheit einzugestehen 
;)

von Stefan F. (Gast)


Lesenswert?

Heikooo schrieb:
> Ich verstehe das jetzt so, korrigier mich bitte wenn ich falsch liege.
> Ich kann ein Arduino Nano Board so betreiben, dass ich alle 16 Adern an
> dieses anschließe

Du brauchst zwei Arduino Nano Boards, weil jedes nur 8 analoge Eingänge 
hat.

> mit deiner Firmware und ein wenig mehr Code so abgreife, dass ich
> auf den GPIOs vom Arduino dann mit 3,3V raus gehe auf den Pi?

Die Verbindung zum Raspberry Pi geht über USB.

> Und ich würde mir da sehr gerne was bauen lassen,
> kenne nur niemanden der das kann.

Das würde ich gerne für dich machen, aber ich brauche viel mehr Infos 
von Dir alleine schon um einen Kostenvoranschlag zu machen. Ist Dir denn 
bewusst, dass "machen lassen" sehr viel mehr kostet, als die Bauteile? 
Wir reden hier von mindestens 100€ für den Arbeitsaufwand bei 20€ pro 
Hobby-Stunde.

Wenn du hier voran kommen willst solltest du mit der Geheimniskrämerei 
aufhören und ganz konkret beschreiben, worum es geht.

Beitrag #6327115 wurde von einem Moderator gelöscht.
Beitrag #6327182 wurde von einem Moderator gelöscht.
von mIstA (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Du brauchst zwei Arduino Nano Boards, weil jedes nur 8 analoge Eingänge
> hat.

Heikooo schrieb:
> Es kann nun während dem Betrieb dazu kommen, dass auf ein paar der 16
> Ausgangs-Adern kurzzeitig (wirklich kurz) die Spannung gewollt abfällt;
> auf etwas unter 1V.

Ich kann hier nicht erkennen, daß er wirklich analoge Eingänge braucht. 
Im Normalzustand sind alle Leitungen vom Dart-Board auf 5V (also High) 
und wenn ein Pfeil aufschlägt werden einige auf <1V (also Low) gezogen. 
Also sollte ein Arduino auch ausreichen.

von Stefan F. (Gast)


Lesenswert?

mIstA schrieb:
> Ich kann hier nicht erkennen, daß er wirklich analoge Eingänge braucht.
> Im Normalzustand sind alle Leitungen vom Dart-Board auf 5V (also High)
> und wenn ein Pfeil aufschlägt werden einige auf <1V (also Low) gezogen.
> Also sollte ein Arduino auch ausreichen.

Er hat 2V als gewünschte Schwelle geschrieben.

> und wenn die Spannung auf sagen wir mal unter 2V fällt...

Offenbar weiss er selbst nicht ganz genau, was er braucht. Ich habe 
zweimal darauf hingewiesen, dass wir mehr Infos brauchen, aber da kommt 
nichts mehr.

Wenn jemand nicht imstande ist, die Rahmenbedingungen klar zu 
definieren, muss man flexibel entwickeln. Bei analogen Eingängen hat man 
die Möglichkeit, die Schaltschwellen nachträglich zu ändern.

Ich will ihm jedenfalls bei der mageren Informationslage kein Gerät mit 
festen Schaltschwellen bauen. Wenn es nicht funktioniert, laufe ich 
sonst meinem Geld hinterher.

Wenn ich mit Sicherheit wüsste, dass die Schaltschwellen im Bereich 
zwischen 1V und 2V schwanken dürften, dann würde ich die 5V toleranten 
digitalen Eingänge eines Blue-Pill Boardes verwenden und per USB 
anbinden. Dann braucht man nämlich nur ein Board. Aber nichts genaues 
weiß man nicht.

Aber Leute, die mit Details nicht herausrücken wollen, tun mir nicht 
Leid, wenn sie deswegen ein paar Euro mehr ausgeben müssen. Selbst 
Schuld.

von Heikooo (Gast)


Angehängte Dateien:

Lesenswert?

Stefan ⛄ F. schrieb:
> mIstA schrieb:
>> Ich kann hier nicht erkennen, daß er wirklich analoge Eingänge braucht.
>> Im Normalzustand sind alle Leitungen vom Dart-Board auf 5V (also High)
>> und wenn ein Pfeil aufschlägt werden einige auf <1V (also Low) gezogen.
>> Also sollte ein Arduino auch ausreichen.
>
> Er hat 2V als gewünschte Schwelle geschrieben.
>
>> und wenn die Spannung auf sagen wir mal unter 2V fällt...
>
> Offenbar weiss er selbst nicht ganz genau, was er braucht. Ich habe
> zweimal darauf hingewiesen, dass wir mehr Infos brauchen, aber da kommt
> nichts mehr.
>
> Wenn jemand nicht imstande ist, die Rahmenbedingungen klar zu
> definieren, muss man flexibel entwickeln. Bei analogen Eingängen hat man
> die Möglichkeit, die Schaltschwellen nachträglich zu ändern.
>
> Ich will ihm jedenfalls bei der mageren Informationslage kein Gerät mit
> festen Schaltschwellen bauen. Wenn es nicht funktioniert, laufe ich
> sonst meinem Geld hinterher.
>
> Wenn ich mit Sicherheit wüsste, dass die Schaltschwellen im Bereich
> zwischen 1V und 2V schwanken dürften, dann würde ich die 5V toleranten
> digitalen Eingänge eines Blue-Pill Boardes verwenden und per USB
> anbinden. Dann braucht man nämlich nur ein Board. Aber nichts genaues
> weiß man nicht.
>
> Aber Leute, die mit Details nicht herausrücken wollen, tun mir nicht
> Leid, wenn sie deswegen ein paar Euro mehr ausgeben müssen. Selbst
> Schuld.

Mir geht es nicht darum, mit Details hinterm Berg zu halten. Ich weiss 
nur einfach nicht genau was ihr braucht. Und ob die Schwelle bei 1V oder 
2V sein muss weiss  ich einfach leider nicht. Ich hab ein Voltmeter dran 
gehalten und geguckt was passiert wenn man die Matrix "schließt" dabei 
hab ich einfach nur gesehen das die 5V auf der passenden Ader auf weiter 
unter 2V gefallen ist. Ob das jetzt aber bei jedem Pfeil passiert, weiss 
ich leider auch nicht bzw. ob es auch mal nur 3V sein könnten. Ich weiss 
leider nicht wie ich das messen kann um da spezifischer zu werden.


Aber okay ich versuche es so genau wie es nur geht.

Ich habe eine HB8 Dart-Matrix, die Scheibe dadrüber und einen Pi4.
Mein Ziel ist, dass man den Automaten (der derzeit noch um das ganze rum 
gebaut ist) nicht mehr braucht. Ich kann diese billigen 7-Segment 
Anzeigen nicht mehr sehen :D Ich hab mich für den Pi4 entschieden wegen 
den HDMI-Eingängen weil ich ähnlich zum Radikal-Dart einen Bildschirm 
oberhalb der Scheibe haben möchte. Dieser soll den Spielstand anzeigen. 
Und unterhalb der Scheibe ein kleiner Touch-Screen, zum Einstellen.

Was ich bisher raus gefunden habe:
Es gehen von den 20 Pins im Kabel 4 als "Eingang" auf die Matrix. Mit 5V 
Dauerspannung. Auf den 16 Adern die wieder raus gehen, liegen dauerhaft 
5V an und wenn man ein Segment auf der Scheibe trifft werden ein paar 
wenige dieser Adern auf unter 2V (das ist wirklich grob, ich weiss 
leider nicht wie ich das ganz genau messen kann). Die derzeitige Platine 
in den Automaten bekommt also anhand der abfallenden Adern mit welches 
Segment getrofft wurde.

Wenn der Pi4 ne schlechte Idee war nehme ich auch gerne etwas anderes. 
Ich brauch aber wie gesagt die Anschlüsse für die Bildschirme. Auf dem 
Pi4 könnte ich auch direkt die Software ablegen die ich dann schreiben 
werde um das ganze Ding zu betreiben.

Ich hab das Bild von der Matrix mal angehangen. Man sieht unten das 
Kabel. Die 2 Adern ganz links und die 2 Adern ganz rechts sind die 
Eingänge mit 5V und die weiteren 16 in der Mitte sind die Ausgänge.

von c-hater (Gast)


Lesenswert?

Heikooo schrieb:

> Mir geht es nicht darum, mit Details hinterm Berg zu halten. Ich weiss
> nur einfach nicht genau was ihr braucht.
[...]
> Ich habe eine HB8 Dart-Matrix

DAS wäre die wesentlich Information gewesen. Das sagt nämlich, dass 
statische Pegel relativ irrelevant sind. Man muss der Matrixabfrage 
folgen.

Und das kannst du mit einem Raspi generell vergessen (nicht hinreichend 
echtzeitfähig) und mit einer Lösung basierend auf dem Arduino-Framework 
ebenfalls. Aus exakt dem gleichen Grund.

Alles, was vom Arduino verwendbar wäre, ist die Hardware.

> Mein Ziel ist, dass man den Automaten (der derzeit noch um das ganze rum
> gebaut ist) nicht mehr braucht.

Das ist dann schon wieder etwas ganz anderes. Wenn du nur den Sensor 
selber verwenden willst, dann geht das direkt mit dem RasPi und auch mit 
einem Arduino-Programm. Und es spielt dann auch keinerlei 
Level-Problematik mehr irgendeine Rolle, weil den bestimmst ja dann im 
vollen Umfang du selber.

Du musst einfach nur lernen, wie dieser Sensor eigentlich 
funktioniert...

Sprich: der begrenzende Faktor ist nur deine eigene Unwissenheit, nicht 
irgendwelche Pegelprobleme...

von Heikooo (Gast)


Lesenswert?

c-hater schrieb:
> Heikooo schrieb:
>
>> Mir geht es nicht darum, mit Details hinterm Berg zu halten. Ich weiss
>> nur einfach nicht genau was ihr braucht.
> [...]
>> Ich habe eine HB8 Dart-Matrix
>
> DAS wäre die wesentlich Information gewesen. Das sagt nämlich, dass
> statische Pegel relativ irrelevant sind. Man muss der Matrixabfrage
> folgen.

Naja das ich hab ich gestern schon gegen 14 Uhr geschrieben.

>
> Und das kannst du mit einem Raspi generell vergessen (nicht hinreichend
> echtzeitfähig) und mit einer Lösung basierend auf dem Arduino-Framework
> ebenfalls. Aus exakt dem gleichen Grund.
>
> Alles, was vom Arduino verwendbar wäre, ist die Hardware.
>
>> Mein Ziel ist, dass man den Automaten (der derzeit noch um das ganze rum
>> gebaut ist) nicht mehr braucht.
>
> Das ist dann schon wieder etwas ganz anderes. Wenn du nur den Sensor
> selber verwenden willst, dann geht das direkt mit dem RasPi und auch mit
> einem Arduino-Programm. Und es spielt dann auch keinerlei
> Level-Problematik mehr irgendeine Rolle, weil den bestimmst ja dann im
> vollen Umfang du selber.

Ich will ja die Scheibe und die Matrix weiter nutzen, aber die derzeit 
verbaute Platine nicht mehr.

>
> Du musst einfach nur lernen, wie dieser Sensor eigentlich
> funktioniert...
>
> Sprich: der begrenzende Faktor ist nur deine eigene Unwissenheit, nicht
> irgendwelche Pegelprobleme...

Aufgrund meiner Unwissenheit frage ich ja hier. Ich hatte die Hoffnung, 
das mir jemand helfen kann zu entscheiden was ich brauche und wie ich 
das brauche. Ich muss nur an Punkt kommen das ich in der SOftware (die 
dann noch aussteht) mit bekomme auf welcher Ader ein Signal kommt (bzw. 
so wie die Matrix gebaut ist) eher nicht kommt. Damit ich weiss welches 
Segment auf der Scheibe getroffen wurde. Ab dann ist es nur noch 
einfaches Programmieren.

von Wolfgang (Gast)


Lesenswert?

Heikooo schrieb:
> Sehr kurz, wie lange kann ich leider nicht messer, ich weiss nur das es
> kurz ist

Du solltest eine grobe Vorstellung entwickeln, ob das einige Nano-, 
Mikro- oder Millisekunden sind. Für die Schaltungs- und 
Softwareauslegung bedeutet so ein Faktor von einer Million schon einen 
Unterschied, auch wenn es dir "sehr kurz" vor kommt.

von ok (Gast)


Lesenswert?

Heikooo schrieb:
> Ich will ja die Scheibe und die Matrix weiter nutzen, aber die derzeit
> verbaute Platine nicht mehr.

Sondern? Ich würde vermuten, dass es einfacher ist die bestehende 
Platine zu missbrauchen um Signale zu erhalten, die weiterverarbeitet 
werden können.

Wenn es also "nur" um eine größere Anzeige geht, würde ich eher 
sämtliche Spannungen der bestehenden Anzeigen (7-Seg und LEDs 
vermutlich?) einlesen und meine Software damit füttern.

von Heikooo (Gast)


Lesenswert?

Hilft eventuell das hier: 
https://www.darts1.de/ausruestung/dartautomat-schaltbilder.php

Da sind die offiziellen Schaltzeichnungen die derzeit in einem normal 
funktioniernden Automaten verbaut sind. Ich kann da leider null 
Informationen raus ziehen, aber mal ganz prakmatisch gesehen, müssten ja 
die Hersteller auch irgendwie mit dem Thema umgehen oder?

von ok (Gast)


Lesenswert?

Heikooo schrieb:
> Und unterhalb der Scheibe ein kleiner Touch-Screen, zum Einstellen.

Und genauso kannst du Software-Buttons nutzen, um über den Pi die 
Hardware Buttons auszulösen. Im Zweifel über Relais.

von Heikooo (Gast)


Lesenswert?

ok schrieb:
> Heikooo schrieb:
>> Ich will ja die Scheibe und die Matrix weiter nutzen, aber die derzeit
>> verbaute Platine nicht mehr.
>
> Sondern? Ich würde vermuten, dass es einfacher ist die bestehende
> Platine zu missbrauchen um Signale zu erhalten, die weiterverarbeitet
> werden können.
>
> Wenn es also "nur" um eine größere Anzeige geht, würde ich eher
> sämtliche Spannungen der bestehenden Anzeigen (7-Seg und LEDs
> vermutlich?) einlesen und meine Software damit füttern.

Ist hauptsächlich eine Preisfrage. Scheibe und Matrix bekomm ich recht 
günstig. Die Platine nur dann, wenn ich einen ganzen Automaten dazu 
kaufe. Die Platine ist leider kein Austauschprodukt. (So ein Automate 
liegt bei knapp 1.500, also da bin ich mit Scheibe und Matrix bei unter 
200€ deutlich günstiger unterwegs)

von Heikooo (Gast)


Lesenswert?

Wolfgang schrieb:
> Heikooo schrieb:
>> Sehr kurz, wie lange kann ich leider nicht messer, ich weiss nur das es
>> kurz ist
>
> Du solltest eine grobe Vorstellung entwickeln, ob das einige Nano-,
> Mikro- oder Millisekunden sind. Für die Schaltungs- und
> Softwareauslegung bedeutet so ein Faktor von einer Million schon einen
> Unterschied, auch wenn es dir "sehr kurz" vor kommt.

Wie kann ich das denn messen? Ich würde ja mal drauf tippen, dass wenn 
ich auf dem Voltmeter erkennen konnte das es unter ca. 2V fällt es nicht 
im Bereich von Nano-Sekunden war, oder? Nur so ein Gefühl. Wenn ihr 
einen Tipp habt, wie ich das genau messen kann, versuche ich das gerne.

von Stefan F. (Gast)


Lesenswert?

Heikooo schrieb:
> Und ob die Schwelle bei 1V oder
> 2V sein muss weiss ich einfach leider nicht.

Das musst du klären. Wenn du es schon nicht weis, wie soll ich Dir dann 
ein gerät mit einer bestimmten Schaltschwelle bauen? Wenn es mit einer 
frei geratenen Schaltschwelle nicht klappt, übernimmt dann die Schuld?

Die Info, dass es sich um eine Taten-Matrix handelt, ist so elementar, 
dass damit alle vorherigen Vorschläge und Gedankengänge komplett für die 
Tonne sind.

Wenn du die vorhandene Schaltung beibehalten würdest, müsste jemand das 
Abfragemuster der Matrix analysieren und dann die neue Elektronik so 
entwerfen, dass sie diese Abfragen in genau dem gleichen Tempo mit 
liest. Jetzt ist auch klar, dass Abfragen im Millisekunden Intervall um 
Welten zu langsam sein werden.

Du willst aber die gesamte Elektronik ersetzen, was wiederum die Frage 
nach den Spannungspegeln unsinnig macht. Denn die wird deine neue 
Elektronik selbst vorgeben. Dir sollte klar sein, dass die 
Neuentwicklung eines solchen Gerätes viele hundert bis einige tausend 
Euro kosten wird, wenn du es nicht selbst machst.

Ich würde zunächst mal alle Zeilen (Eingänge) der Matrix gleichzeitig 
ansteuern und die Spalten-Ausgänge an Interrupt-fähige Eingänge des 
Mikrocontrollers anschließen. Wenn dann ein Taster betätigt wird, kehrt 
der Mikrocontroller die Signalrichtung um. Die erkannte Spalte der 
Matrix wird dann zum Eingang und der Mikrocontroller guckt nach, in 
welcher Zeile der Strom raus kommt. Dann weiß er, welche Taste das war.

Das würde ich mit einem AVR oder STM32 Board umsetzten, das per USB mit 
dem Computer kommuniziert, der das am Ende (wie auch immer) darstellen 
soll.

>  Ab dann ist es nur noch einfaches Programmieren.

Wenn du meinst. Dann brauche ich das ja nicht weiter ausführen.

von HildeK (Gast)


Lesenswert?

Heikooo schrieb:
> Wie kann ich das denn messen? Ich würde ja mal drauf tippen, dass wenn
> ich auf dem Voltmeter erkennen konnte das es unter ca. 2V fällt es nicht
> im Bereich von Nano-Sekunden war, oder? Nur so ein Gefühl. Wenn ihr
> einen Tipp habt, wie ich das genau messen kann, versuche ich das gerne.

Mit einem Multimeter kann man das nicht sinnvoll messen. Das richtige 
Messgerät heißt hier Oszilloskop.
Aber du hast schon recht: wenn irgend ein Ausschlag am Voltmeter zu 
sehen ist (Voltmeter welcher Art hast du? Analog, Digital?), dann sind 
es eher mehrere Millisekunden, also für Elektronikverhältnisse eher 
langsam.
Vielleicht nennst du mal deinen Wohnort und es findet sich jemand in der 
Nähe mit den entsprechenden Messmitteln ...

Heikooo schrieb:
> Ich habe ein Gerät was auf 4 Adern jeweils 5V Eingangsspannung bekommt.
> Auf weiteren 16 Adern liegen dauerhaft 5V Ausgangsspannung an. Ergibt
> zusammen so ein 20 Pin Flachbandkabel.
> Es kann nun während dem Betrieb dazu kommen, dass auf ein paar der 16
> Ausgangs-Adern kurzzeitig (wirklich kurz) die Spannung gewollt abfällt;
> auf etwas unter 1V.

So ganz klar ist nicht, was deine Matrix macht. Ich verstehe das mal so:
- es gibt hinter den Feldern irgendwie geartete Kontakte, die kurz mal 
geschlossen werden, wenn ein Pfeil trifft.
- Diese Kontakte werden in Form einer Matrix ausgewertet.
- Dazu werden 5V Signal an die Matrix sequentiell gebracht und dann über 
dem oder den geschlossenen Kontakten diese 5V wieder zurückgemeldet.

Wenn dem einigermaßen so ist, ist jetzt die Frage, was für Kontakte sind 
das. Rein mechanische oder irgend ein anderes Sensorelement?
Sind es mechanische Kontakte wäre es nämlich egal, ob du die Matrix mit 
5V ansteuerst oder mit 3.3V.
Man weiß einfach zu wenig über das Gerät und dein Link gibt dazu auch 
nicht viel her.

von Heikooo (Gast)


Lesenswert?

HildeK schrieb:
> Heikooo schrieb:
> Wie kann ich das denn messen? Ich würde ja mal drauf tippen, dass wenn
> ich auf dem Voltmeter erkennen konnte das es unter ca. 2V fällt es nicht
> im Bereich von Nano-Sekunden war, oder? Nur so ein Gefühl. Wenn ihr
> einen Tipp habt, wie ich das genau messen kann, versuche ich das gerne.
>
> Mit einem Multimeter kann man das nicht sinnvoll messen. Das richtige
> Messgerät heißt hier Oszilloskop. Aber du hast schon recht: wenn irgend
> ein Ausschlag am Voltmeter zu sehen ist (Voltmeter welcher Art hast du?
> Analog, Digital?), dann sind es eher mehrere Millisekunden, also für
> Elektronikverhältnisse eher langsam.
> Vielleicht nennst du mal deinen Wohnort und es findet sich jemand in der
> Nähe mit den entsprechenden Messmitteln ...

Köln, Porz um genauer zu sein.

>
> Heikooo schrieb:
> Ich habe ein Gerät was auf 4 Adern jeweils 5V Eingangsspannung bekommt.
> Auf weiteren 16 Adern liegen dauerhaft 5V Ausgangsspannung an. Ergibt
> zusammen so ein 20 Pin Flachbandkabel.
> Es kann nun während dem Betrieb dazu kommen, dass auf ein paar der 16
> Ausgangs-Adern kurzzeitig (wirklich kurz) die Spannung gewollt abfällt;
> auf etwas unter 1V.
>
> So ganz klar ist nicht, was deine Matrix macht. Ich verstehe das mal so:
> - es gibt hinter den Feldern irgendwie geartete Kontakte, die kurz mal
> geschlossen werden, wenn ein Pfeil trifft. - Diese Kontakte werden in
> Form einer Matrix ausgewertet. - Dazu werden 5V Signal an die Matrix
> sequentiell gebracht und dann über  dem oder den geschlossenen Kontakten
> diese 5V wieder zurückgemeldet.
> Wenn dem einigermaßen so ist, ist jetzt die Frage, was für Kontakte sind
> das. Rein mechanische oder irgend ein anderes Sensorelement? Sind es
> mechanische Kontakte wäre es nämlich egal, ob du die Matrix mit 5V
> ansteuerst oder mit 3.3V. Man weiß einfach zu wenig über das Gerät und
> dein Link gibt dazu auch nicht viel her.

Vllt ist auch der Begriff Matrix hier irreführend. Das Ding heisst 
einfach so beim Hersteller. Vllt versteht ihr ja was anderes unter 
Matrix.

Soweit ich das sehen kann sind da so kleine Plättchen die durch den 
Druck auf ein Segment auf der Matrix dann 'geschlossen' werden. Vom 
Gefühl her würde ich sagen die haben einen Widerstand und deswegen geht 
die Spannung runter.

von Stefan F. (Gast)


Lesenswert?

Das wird schon eine Tastenmatrix sein. Mach mal einen Taschenrechner 
oder eine Fernbedienung auf, die sehen von innen genau so aus. Es wäre 
aber wichtig, zu wissen, ob da wirklich nur Tasten drauf sind, oder noch 
andere Bauteile.

von HildeK (Gast)


Lesenswert?

Heikooo schrieb:
> Köln, Porz um genauer zu sein.

Leider zu weit weg für mich :-).
Vielleicht ist einer der anderen Forenteilnehmer (mit Oszilloskop) in 
deiner Nähe zu Hause und ist hilfsbereit.
Mit einem Spannungsmesser kann man höchstens sagen, dass da etwas war, 
aber nicht wie viel.

Heikooo schrieb:
> Soweit ich das sehen kann sind da so kleine Plättchen die durch den
> Druck auf ein Segment auf der Matrix dann 'geschlossen' werden. Vom
> Gefühl her würde ich sagen die haben einen Widerstand und deswegen geht
> die Spannung runter.

Es wäre schon wichtig zu wissen, ob es Kontakte sind (auch mit ein paar 
hundert Ohm Übergangswiderstand) oder noch etwas ganz anderes - z.B. ein 
Piezo (vermutlich nicht).
Auch ich vermute, dass es schon eine Matrix ist. So eine Dartscheibe hat 
ja 82 zu unterscheidende Trefferfelder und die kann man nur über eine 
Matrix mit weniger als 82 Leitungen auswerten. Allerdings: mit 16*4 
komme ich nur auf 64 unterscheidbare Felder ... Sind es nicht vielleicht 
14 Eingänge * 6 Ausgänge?
Dabei schaltet der Prozessor nacheinander die Zeilenleitungen kurz auf 
HIGH (oder LOW) und misst an welcher der Spaltenleitungen etwas ankommt. 
Deshalb sind die Impulse sehr kurz, sie hätten aber den vollen Hub. Wenn 
da keine weitere Elektronik verbaut ist, dann geht das ohne Änderung 
auch mit 3.3V-Signalen.

von c-hater (Gast)


Lesenswert?

HildeK schrieb:

> Auch ich vermute, dass es schon eine Matrix ist. So eine Dartscheibe hat
> ja 82 zu unterscheidende Trefferfelder

Nein, es sind 62 (oder mit Fehlwurfbereich 63) Felder. Die beiden 
Teilfelder jeder Einfach-Zahl können als ein Feld behandelt werden und 
werden es bei den einfachen elektronischen Darts in der Regel auch.

von HildeK (Gast)


Lesenswert?

c-hater schrieb:
> Nein, es sind 62 (oder mit Fehlwurfbereich 63) Felder.

Ja, da hast du wohl recht. So tief bin ich im Dart spielen nicht drin 
...
Dann passt das ja perfekt mit den 16*4 Leitungen.

von Heikooo (Gast)


Lesenswert?

HildeK schrieb:

> Es wäre schon wichtig zu wissen, ob es Kontakte sind (auch mit ein paar
> hundert Ohm Übergangswiderstand) oder noch etwas ganz anderes - z.B. ein
> Piezo (vermutlich nicht).

Doch einen Piezo Sensor gibt es auch noch, aber ich hab das bisher immer 
so verstanden das der nur für den 'Daneben-Geworfen' Bereich zuständig 
ist weil hinter den Elementen die keine Punkte geben (der Kreis aussen 
um die Scheibe) nicht mit Matrix dahinter versehen ist.

Wenn ich heute nach der Arbeit zu Hause bin schicke ich Mal ein Bild 
rein, was die Matrix sehr nah zeigt. Vllt hilft euch das.

von HildeK (Gast)


Lesenswert?

Heikooo schrieb:
> Doch einen Piezo Sensor gibt es auch noch,

Ja, den habe ich in deinem Link gesehen, aber nur einen. Und der wird 
wahrscheinlich extra ausgewertet; nicht über die Matrix.

Heikooo schrieb:
> schicke ich Mal ein Bild rein, was die Matrix sehr nah zeigt.
Hoffentlich.
Interessant wäre auch zu sehen, wie und was der Pfeil bedient.
Könnte es sein, dass der dauerhaft Kontakt gibt, wenn er steckt? Mit der 
Matrixauslesung würden ja trotzdem nur Pulse ankommen.
Vielleicht kannst du auch mal mit dem Ohmmeter messen, was zwischen 
einer der vier Adern und einer der 16 Adern feststellbar ist. Du musst 
halt suchen, welches Paar gerade zu dem Feld passt.

von Heikooo (Gast)


Lesenswert?

HildeK schrieb:
> Heikooo schrieb:
> Doch einen Piezo Sensor gibt es auch noch,
>
> Ja, den habe ich in deinem Link gesehen, aber nur einen. Und der wird
> wahrscheinlich extra ausgewertet; nicht über die Matrix.

Nein der geht alleine direkt auf die Platine.

>
> Heikooo schrieb:
> schicke ich Mal ein Bild rein, was die Matrix sehr nah zeigt.
>
> Hoffentlich. Interessant wäre auch zu sehen, wie und was der Pfeil
> bedient.
> Könnte es sein, dass der dauerhaft Kontakt gibt, wenn er steckt? Mit der
> Matrixauslesung würden ja trotzdem nur Pulse ankommen.
> Vielleicht kannst du auch mal mit dem Ohmmeter messen, was zwischen
> einer der vier Adern und einer der 16 Adern feststellbar ist. Du musst
> halt suchen, welches Paar gerade zu dem Feld passt.

Genau das habe ich ja gemacht und habe festgestellt, das wenn kein Pfeil 
landet die 5v die rein gehen auf der passenden ader wieder raus gehen. 
Trifft der Pfeil geht es kurzzeitig stark nach unten. Von dem was ich 
auf dem Voltmeter sehen konnte ging es von 5v auf knapp unter 1v und 
direkt wieder rauf.
Dauerhaften Kontakt nicht, das passiert nur kurzzeitig beim Auftreffen 
vom Pfeil.

von HildeK (Gast)


Angehängte Dateien:

Lesenswert?

Heikooo schrieb:
> Von dem was ich
> auf dem Voltmeter sehen konnte ging es von 5v auf knapp unter 1v und
> direkt wieder rauf.

Ich schrieb vom Widerstand messen, nicht von der Spannung. Das hatte ich 
dir gestern schon erklärt, warum man mit dem Voltmeter hier nichts 
zuverlässiges messen kann. Dazu muss die Matrix aber von der Ansteuerung 
getrennt werden.
Dass die Spannung nur kurz runtergeht, liegt an der Matrixansteuerung.

Wahrscheinlich sieht die Matrix so aus, wie im Bild angedeutet. Es 
kommen zeitlich versetzte Pulse vom Controller auf die Leitungen S1...S4 
und an den Leitungen R1 ... R16 kann man welche abnehmen, wenn der 
entsprechende Taster gedrückt ist - oder der Pfeil steckt. Der 
Controller weiß, welche Spalte er ansteuert und sieht an den Reihen, die 
dann das Signal auch haben, welche Taste gedrückt war bzw. wo der Pfeil 
steckt. Daran siehst du auch, dass ein (langsames) Voltmeter keine 
zuverlässige Aussage machen kann und selbst wenn es schnell wäre, dein 
Auge könnte es nicht erfassen. Es integriert einfach in der Anzeige und 
deshalb kommt irgendwas kleineres als die 5V heraus. (Die 
Reihenleitungen sind sicherlich noch mit einem Pullup auf 5V versehen, 
den habe ich vergessen einzuzeichnen).

Unklar ist lediglich, ob der Pfeil, wenn er steckt, dauerhaft den 
Kontakt schließt (anzunehmen) oder eben nur kurz. Im zweiten Fall stelle 
ich mir eine Auswertung schwieriger vor, weil die Pulse an den Spalten 
dann sehr schnell kommen müssen um zuverlässig den nur kurzen Kontakt 
des Pfeils zu erkennen.

Wahrscheinlich, es sind nur Vermutungen - weil ich nicht mehr weiß über 
das Teil. Man müsste es zumindest in Händen halten und noch besser: 
messen mit dem Oszi.

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.