Ich hab jetzt einige der billigen aber recht funktionalen Codeschlösser
mit Wiegand-Codierung gekauft, das Programm am Arduino-Atmega
funktioniert recht gut, belegt aber die Interrupt-Pins 2 und 3.
Insgesamt möchte ich 4 Codeschlösser anschließen. Es ist fast
auszuschließen, dass 2 davon gleichzeitig bedient werden. Entsprechend
dem Wiegand-Protokoll kann man die sicher parallel alle an 2 und 3
anhängen.
Die Leitung ist hier immer auf 5V, nur beim Senden immer ganz kurz auf
Masse gezogen.
Nur wie weiß ich dann, welches Codeschloss betätigt wurde?
Ich hab jetzt an eine Matrix gedacht, wenn ich einen der Pins mit einer
Diode an einen anderen Prozessoreingang zusätzlich anhänge sollte das
klappen, aber gehts nicht auch anders?
Schloss 1-----Data 0 -------|<------PIN2 (Pullup-Widerstand gesetzt)
|
|-------------PIN22 (damit erkenn ich Schloss 1)
Schloss 1-----Data 1----------------PIN3
Schloss 2-----Data 0 -------|<------PIN2 (Pullup-Widerstand gesetzt)
|
|-------------PIN23 (damit erkenn ich Schloss 2)
Schloss 2-----Data 1----------------PIN3
Hoffe, das ist halbwegs verständlich
Gibts da andere Ideen, die auch ohne Dioden funktionieren?
Danke
Welche Datenrate hat der Code denn? Ein Link auf den Code wäre gut. Man könnte für alle 8 Leitungen die Pin-Change Interrupts benutzen oder sie im Timerinterrupt pollen.
Ja, super danke für die Antwort, PIN-Change Interrupts hatte ich heute auch gegoogelt, das Timing ist ein bisserl kritisch, weil mein Ardunio hat neben 4xWiegand auch noch als Modbus TCP/IP Gateway zu tun. Also denk ich Interrupts sind die beste Wahl. Das mit den PIN-Change Interrupts muss ich mir aber erst aus dem ATMEGA Datenblatt rauslesen, also wenn hier schon jemand mal ein Beispiel hat - wär perfekt. Datenrate ist 100 uS für einen Impuls, Wiegand Code ist hier z.B. detailliert beschrieben: https://docs.tibbo.com/taiko/ser_wiegand_mode Hier mein bereits funktionierender Codeteil:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
41 | |
42 | |
43 | |
44 | |
45 | |
46 | |
47 | |
48 | |
49 | |
50 | |
51 | |
52 | |
53 | |
54 | |
55 | |
56 | |
57 | |
58 | |
59 | |
60 | |
61 | |
So, nach dem das vorhin nur ein eher untaugliches Codefragment war, hier jetzt der fertige Code für den Arduino Atmega, damit sind 1, 2, 3 oder 4 Keypads abfragbar, leider hab ich nur eines (ohne RFID) da, die anderen sind noch per Post unterwegs.. Danke noch an Peter Dannegger für seinen Hinweis an den PIN Change Interrupt, den hatte ich zwar in einem anderen Projekt vor 2 Jahren schon irgendwo im Einsatz nur schon wieder vergessen.. jetzt erspar ich mir ein Diodenarray und die Anschlüsse sind einfach nebeneinander. Es sollte sogar möglich sein, alle 4 Keypads gleichzeitig zu bedienen, nur in dem seltenen Fall, dass 2 Impulse im gleichen uS-Bereich kommen, könnte eine Doppeltriggerung erfolgen.. aber die Wahrscheinlichkeit dafür geht gegen null. Also falls es jemand mal braucht, die ganze Sache kommt ohne delay und ohne weiterer Arduino-Library aus. Viel Spaß beim Testen und vielleicht findet jemand ja noch Optimierungspotential.
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
41 | |
42 | |
43 | |
44 | |
45 | |
46 | |
47 | |
48 | |
49 | |
50 | |
51 | |
52 | |
53 | |
54 | |
55 | |
56 | |
57 | |
58 | |
59 | |
60 | |
61 | |
62 | |
63 | |
64 | |
65 | |
66 | |
67 | |
68 | |
69 | |
70 | |
71 | |
72 | |
73 | |
74 | |
75 | |
76 | |
77 | |
78 | |
79 | |
80 | |
81 | |
82 | |
83 | |
84 | |
85 | |
86 | |
87 | |
88 | |
89 | |
90 | |
91 | |
92 | |
93 | |
94 | |
Gast
#6645651
Hallo zusammen, nach dem ich, "ahnungsloser Vielleicht- Arduino-Einsteiger" einige Stunden am PC nach Lösungen für Fingerprint an eqiva Motorschloss, sowohl über Raspi als auch über Arduino gesucht habe, viel "spanisch" verstanden habe, und kurz vor dem Aufgeben stehe, frage ich jetzt mal hier, wenn ich das darf(?), ob mir jemand sowas bauen kann: Ich möchte einen Fingerprint über das Wiegandsignal mit einem eqiva Motorschloss, dass sich nur über Bluetooth ansteuern lässt, verbinden. Hier sehe ich das Potenzial, dass ich nicht habe, hier gibt es, wenn ich das richtig interpretiere, Lösungen und Leute, die sowas schreiben können. Ich hätte gerne einen Arduino, oder auch Raspi, mit entsprechender Software fertig installiert, der eben das Wiegand-Protokoll auslesen kann, und an den eqiva per Bluetooth übermittelt. Oder eben auch Teillösungen. Wenn ich dazu weiß, an welche Pins ich die 4 Wiegand-Kabel anschließen muss, ich weiss mit Spannungsteiler, dürfte ich den Rest hinbekommen. Wenn jemand Interesse hat, mir sowas zusammenzubauen, bitte ich um ein Angebot. Ich weiß, dass ist hier so nicht üblich, sollte ich sowas hier gar nicht dürfen, bitte ich um Nachsicht, und Information, dann ziehe ich meine Anfrage selbstverständlich zurück. LG Reinhard
Reinhard Dopheide schrieb: > Ich möchte einen Fingerprint über das Wiegandsignal mit einem eqiva > Motorschloss, dass sich nur über Bluetooth ansteuern lässt, verbinden. Und was hat das mit dem Codeschloß zu tun? Zu neuen Fragen macht man nen eigenen Thread auf. Und verlinke mal all die ungekannten Geräte, denn keiner kann in Deinen Kopf schauen. Ich befürchte aber, daß es keine Doku zu deren Internas gibt, d.h. die sind nur mit den professionellen Komponenten verwendbar, für die sie gedacht sind.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.