# Codeschloss

**URL:** <https://oscat.discourse.group/t/codeschloss/674>\
**Category:** Bestehende Module / Existing Modules\
**Created:** [21. September 2009 um 20:41 UTC](https://oscat.discourse.group/t/codeschloss/674 "2009-09-21T20:41:28Z")\
**Posts on this page:** 18\
**Page:** 1

<div class="post-metadata">

**Author:** ![martin.k](https://avatars.discourse-cdn.com/v4/letter/m/3e96dc/32.png) [@martin.k](https://oscat.discourse.group/u/martin.k)\
**Post date:** [21. September 2009 um 20:41 UTC](https://oscat.discourse.group/t/codeschloss/674/1 "2009-09-21T20:41:28Z")

</div>

Hi,

ich habe in der Beschreibung zwei Module gefunden (Matrix und Pin\_code) wobei ich aber nicht verstehe ob ich diese für meinen Zweck verwenden kann und vor allem wie?

Codeschlösser mit einer Zehnertastertur kosten 40 Euro oder mehr. Mit Folientasterturen und für “draussen” sind sowieso nur wenig erhältlich.  
Ich denke an einen 4-Fachtaster (siehe [http://media.gira.de/pictures/thumb/26/00002326.jpg](http://media.gira.de/pictures/thumb/26/00002326.jpg))  
Damit kann ich doch auch einige “Codes” eingeben?  
Kann mir jemand auf die Sprünge helfen bzw. ein Beispiel geben?  
Oder ist hierfür ein neues Modul notwendig?  
Ich wäre wirklich sehr dankbar wenn es hier eine Lösung gibt.  
Sollten die Anzahl der möglichen “Codes” als zu gering eingestuft werden könnte man ja noch einen zweiten solchen Schalter unten drunter bauen…

Grüße  
Martin

---

<div class="post-metadata">

**Author:** ![hugo](https://yyz2.discourse-cdn.com/free1/user_avatar/oscat.discourse.group/hugo/32/133_2.png) [@hugo](https://oscat.discourse.group/u/hugo)\
**Post date:** [21. September 2009 um 21:04 UTC](https://oscat.discourse.group/t/codeschloss/674/2 "2009-09-21T21:04:31Z")

</div>

du bist genau richtig,  
benutze die module matrix, der scannt die tastatur und schalte danach zur auswertung der ziffernfolge das modul pin\_code.  
pin\_code liefert dir dann ein freigabesignal wenn der eingegebene code dem vom pin\_code abgeprüften entspricht

---

<div class="post-metadata">

**Author:** ![martin.k](https://avatars.discourse-cdn.com/v4/letter/m/3e96dc/32.png) [@martin.k](https://oscat.discourse.group/u/martin.k)\
**Post date:** [23. September 2009 um 06:59 UTC](https://oscat.discourse.group/t/codeschloss/674/3 "2009-09-23T06:59:43Z")

</div>

Bei vier Tastern brauche ich ja keinen Y-Ausgang. (Was ich auch besser finde, da sonst je Zyklus der Ausgang TRUE/FALSE umschaltet ☹

Wenn nun der Code zum Ã–ffnen der Tür sein soll 2-4-1-3:  
Was bekommt PIN\_CODE dann gesendet?  
Sind auch längere Codes (z.B. 241341) möglich?  
Es gibt leider keine Unterputzeinsätze mit 6 Tastern in IP44.  
Hat jemand das Matrix-Modul im Einsatz?  
Was für Tastenfelder nutzt Ihr? Brauche ein wetterfestes!

Grüße  
Martin

---

<div class="post-metadata">

**Author:** ![hugo](https://yyz2.discourse-cdn.com/free1/user_avatar/oscat.discourse.group/hugo/32/133_2.png) [@hugo](https://oscat.discourse.group/u/hugo)\
**Post date:** [23. September 2009 um 08:49 UTC](https://oscat.discourse.group/t/codeschloss/674/4 "2009-09-23T08:49:17Z")

</div>

ich habe es nur mit einer labortastatur hex (16 tasten) getestet  
die codelänge hat nichts mit der anzahl der tasten zu tun

---

<div class="post-metadata">

**Author:** ![good\_mike](https://avatars.discourse-cdn.com/v4/letter/g/71e660/32.png) [@good\_mike](https://oscat.discourse.group/u/good_mike)\
**Post date:** [23. September 2009 um 18:37 UTC](https://oscat.discourse.group/t/codeschloss/674/5 "2009-09-23T18:37:24Z")

</div>

Hallo, hat jemand in diesem Zusammenhang schon mal eine Zehnertastatur für drausen mit serieller Schnittstelle gesehen ?? Würde mich dafür sehr intressieren, haabe aber noch nichts brauchbares gefunden. Grüsse Michael

---

<div class="post-metadata">

**Author:** ![vicky](https://avatars.discourse-cdn.com/v4/letter/v/b19c9b/32.png) [@vicky](https://oscat.discourse.group/u/vicky)\
**Post date:** [28. September 2009 um 19:27 UTC](https://oscat.discourse.group/t/codeschloss/674/6 "2009-09-28T19:27:06Z")

</div>

Hallo,  
für mich als Laien nochmal kurz:  
Wenn ich z.B. einen 8-fach Taster(8 Eingänge - IX130.0-.7) habe, und damit einen Freigabecode generieren möchte.  
Wie kann ich den Matrix- Baustein verwenden(beschalten).  
Oder ist es für eine andere Art Anwendung gedacht?

---

<div class="post-metadata">

**Author:** ![martin.k](https://avatars.discourse-cdn.com/v4/letter/m/3e96dc/32.png) [@martin.k](https://oscat.discourse.group/u/martin.k)\
**Post date:** [28. September 2009 um 21:47 UTC](https://oscat.discourse.group/t/codeschloss/674/7 "2009-09-28T21:47:46Z")

</div>

Hi,

ich habe es schon vor ein paar Tage mal ausprobiert, leider ohne Erfolg. Irgendwas mache ich wohl falsch…  
Pincode ist ‘129’  
Config von Matrix ist : RELEASE= FALSE  
Ich kann klicken wie ich will das Licht wechselt nicht von grün auf ROT.  
Hilfe erbeten.  
Grüße

[gelöscht durch Administrator]

---

<div class="post-metadata">

**Author:** ![hugo](https://yyz2.discourse-cdn.com/free1/user_avatar/oscat.discourse.group/hugo/32/133_2.png) [@hugo](https://oscat.discourse.group/u/hugo)\
**Post date:** [29. September 2009 um 22:33 UTC](https://oscat.discourse.group/t/codeschloss/674/8 "2009-09-29T22:33:53Z")

</div>

der ausgang vom baustein matrix ist ein byte code der je einzeichen repräsentiert.

der baustein pincode wertet eine anzahl sequenzieller codes aus.  
die vorgabe im baustein ist ascii zeichen, eine 1 bedeutet also einen code von 49 oder hex 31.

ein code von 129 (ein zeichen) entspricht hex 81 und im string wäre das $81

wenn du nun z.b. einen 3 fachen tastendruck deiner taste s1 dekodioeren wiist musst du ‘$81$81$81’ angeben

---

<div class="post-metadata">

**Author:** ![hugo](https://yyz2.discourse-cdn.com/free1/user_avatar/oscat.discourse.group/hugo/32/133_2.png) [@hugo](https://oscat.discourse.group/u/hugo)\
**Post date:** [29. September 2009 um 22:36 UTC](https://oscat.discourse.group/t/codeschloss/674/9 "2009-09-29T22:36:04Z")

</div>

hier noch ein auszug aus der codesys hilfe zu string konstanten

codesys hilfe:  
Ein String ist eine beliebige Zeichenreihe. STRING-Konstanten werden mit einfachen Hochkommas vorn und hinten begrenzt. Es koÌˆnnen auch Leerzeichen und Umlaute eingegeben werden. Sie werden genauso wie alle anderen Zeichen behandelt.

In Zeichenfolgen wird die Kombination des Dollarzeichens ($) gefolgt von zwei hexadezimalen Ziffern als hexadezimale Darstellung des acht Bit Zeichencodes interpretiert.

---

<div class="post-metadata">

**Author:** ![martin.k](https://avatars.discourse-cdn.com/v4/letter/m/3e96dc/32.png) [@martin.k](https://oscat.discourse.group/u/martin.k)\
**Post date:** [30. September 2009 um 07:47 UTC](https://oscat.discourse.group/t/codeschloss/674/10 "2009-09-30T07:47:18Z")

</div>

Hi,  
jetzt bin ich einen große Schritt weiter. Vielen DANK !  
Anbei das überarbeitet Projekt sowie eine ausgebaute Variante mit 4 Tastern.  
Die Bedienung mit der Visu braucht “richtige” lange Tastendrücke. Mit einem Hardwaretaster wird es sich wohl noch verbessern.

Jetzt kann ich mit einem einfachen 4-fach Lichtschalter (Taster) mein Garagentor codieren 🙂

Grüße  
Martin

[gelöscht durch Administrator]

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/free1/uploads/oscat/original/1X/2efdfb9c592ff9a666c94dff124ee84fa863dae5.jpeg) [@system](https://oscat.discourse.group/u/system)\
**Post date:** [10. April 2010 um 10:29 UTC](https://oscat.discourse.group/t/codeschloss/674/11 "2010-04-10T10:29:45Z")

</div>

Servus,

habe mir mal das Beispielprojekt runtergeladen - danke erstmal dafür.

Das Beispielprojekt läuft, allerdings weiß ich nicht wo der Code “eingestellt” werden muss.  
Ich möchte ein Codeschloss mit einem 12er Tastenfeld realisieren.  
Das Tastenfeld hat für jede Ziffer einen Ausgang, die ich auf digitale Eingänge der Wago gelegt habe.

Kann mir bitte jemand auf die Sprünge helfen? Ich komme alleine nicht weiter. Habe schon alles auseinander gepflückt und editiert - ohne Erfolg.

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/free1/uploads/oscat/original/1X/2efdfb9c592ff9a666c94dff124ee84fa863dae5.jpeg) [@system](https://oscat.discourse.group/u/system)\
**Post date:** [12. April 2010 um 14:54 UTC](https://oscat.discourse.group/t/codeschloss/674/12 "2010-04-12T14:54:29Z")

</div>

keiner? Mehr Infos nötig?

---

<div class="post-metadata">

**Author:** ![good\_mike](https://avatars.discourse-cdn.com/v4/letter/g/71e660/32.png) [@good\_mike](https://oscat.discourse.group/u/good_mike)\
**Post date:** [13. April 2010 um 19:41 UTC](https://oscat.discourse.group/t/codeschloss/674/13 "2010-04-13T19:41:49Z")

</div>

Hallo,

ich habe mir jetzt auch mal ein Tastenfeld mit Matrix-Schaltung besorgt.  
Ich werde in den nächsten Tagen einige Versuche damit starten.

Was hast Du denn für eine Tastatur? So wie Du schreibst, ist Dein Tastenfeld ein “Common”-Typ. D.h. ein  
gemeinsammer Pol (+24V) und 12 geschaltet Kontakte.  
Warum benutzt Du dann den Matrix-Befehl?  
So wie ich das nämlich sehe, ist der Matrix-Befehl dafür gedacht, eine Tastatur zu bedienen, welche über Spalten(-Eingänge) und Zeilen(-Ausgänge).

Ich werde mich mal melden, wenn ich weitere Ergebnisse meiner Tests habe. 🙂

good\_mike

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/free1/uploads/oscat/original/1X/2efdfb9c592ff9a666c94dff124ee84fa863dae5.jpeg) [@system](https://oscat.discourse.group/u/system)\
**Post date:** [17. April 2010 um 15:48 UTC](https://oscat.discourse.group/t/codeschloss/674/14 "2010-04-17T15:48:22Z")

</div>

Hallo good\_mike,

sorry, wurde nicht über den Beitrag benachrichtigt.  
Meine Tastatur ist so wie du es geschrieben hast.  
Habe gedacht ich bräuchte den Matrix Befehl - falls nicht würde es das ja erleichtern.  
Würde mich freuen wenn du ein Ergebnis posten würdest. Ich bin nicht weitergekommen.

Schönes Wochenende!  
dtm

---

<div class="post-metadata">

**Author:** ![good\_mike](https://avatars.discourse-cdn.com/v4/letter/g/71e660/32.png) [@good\_mike](https://oscat.discourse.group/u/good_mike)\
**Post date:** [18. April 2010 um 18:29 UTC](https://oscat.discourse.group/t/codeschloss/674/15 "2010-04-18T18:29:51Z")

</div>

Hallo,

ich habe jetzt mein Tastenfeld (Matrix-Version) mit eine Testapplikation ausprobiert.

Funktioniert mit MATRIX und PIN\_CODE einwandfrei.

Also, wie bereits gesagt. Ich denke wenn man eine COMMON-Typ Tastenfeld hat, ist die Kombination der beiden genannte Befehle nicht sinnvoll.  
Ich glaube in diesem Fall würde ich mir die Logik selber “basteln”.

Grüße

good\_mike

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/free1/uploads/oscat/original/1X/2efdfb9c592ff9a666c94dff124ee84fa863dae5.jpeg) [@system](https://oscat.discourse.group/u/system)\
**Post date:** [19. April 2010 um 11:04 UTC](https://oscat.discourse.group/t/codeschloss/674/16 "2010-04-19T11:04:11Z")

</div>

Hallo good\_mike,

danke für die Info. FürÂ´s Selberbasteln fehlt mir leider der Ansatz und die mangelnde Kenntnis an ST/AWL.  
Wie würdest Du denn vorgehen?  
Ist “pin\_code” tatsächlich für meine Tastaturvariante nicht zu gebrauchen?

Grüße  
dtm

---

<div class="post-metadata">

**Author:** ![stm](https://yyz2.discourse-cdn.com/free1/user_avatar/oscat.discourse.group/stm/32/144_2.png) [@stm](https://oscat.discourse.group/u/stm)\
**Post date:** [3. Mai 2010 um 22:16 UTC](https://oscat.discourse.group/t/codeschloss/674/17 "2010-05-03T22:16:10Z")

</div>

Hallo dtm,

bin selbst Neuling und habe einige Zeit mit dem Theme Codeschloss verbracht; mit dem Beispiel im Thread (Rückführung der Spaltenausgänge Y1 des Matrixdecoders) ist der Groschen gefallen:

Ich hatte keine Matrixtastatur, sondern einzelne Taster und habe das obige Beispiel mit OR-Bläcken wie im Bild erweitert. Funktioniert tadellos. Bei Dir scheinen es auch Einzeltaster zu sein …  
Hoffe der Tip hilft.  
Gruß  
stm  
PS: in der VISU ist die Routine unbedienbar langsam, auf der realen Steuerung ist es OK

[gelöscht durch Administrator]

---

<div class="post-metadata">

**Author:** ![MacDeath](https://avatars.discourse-cdn.com/v4/letter/m/5f9b8f/32.png) [@MacDeath](https://oscat.discourse.group/u/MacDeath)\
**Post date:** [3. Dezember 2014 um 18:41 UTC](https://oscat.discourse.group/t/codeschloss/674/18 "2014-12-03T18:41:25Z")

</div>

Hallo Freunde,  
so habe mich auch mit dem Codeschloss auseinandergesetzt … ich bekomme es allerdings nicht hin.  
Umgebeung: Step7 CPU:317 mit ca. 9ms Zykluszeit

Mein Tastenfeld befindet sich in der Visu und der Baustein Matrix wurde beschaltet wie in Bild 1 zusehen.  
Er scheint auch zu Funtionieren: In Bild 4 habe ich mir meine persönliche Tabelle gemacht welches Byte Matrix bei welcher Ziffer ausgibt.  
In der VAT DB701.DBB4 in Bild 3 zeigt er mir 1000\_0010 für meine Ziffer 2… soweit so gut. Also Matrix scheint zu funktionieren.

Jetzt zum PIN CODE (Autor “Hugo”, vielleicht kannst du mir ja helfen):  
PIN CODE bekommt das DBB4 und den Freigabe Eingang “TastenEncoderTP” Bild 2. Die beiden benötigten FC21 LEN und FC229 CODE sind geladen.  
Im DB701 ist der PIN als STRING[8] angelegt und mit $81$82$81$82 eingetragen (Bild 3 gelb makiert). Solbald ich aus dem Feld wegklicke werden Symbole  
dargestellt. in der VAT sieht man DB701.DBD8 2#0000\_1000\_0000\_0000\_1000\_0001\_1000\_0010. Die ersten beiden Bytes scheinen wohl die besagten “Siemens Stringlängenbytes” zu seien, der Rest entspricht genau dem was Matrix mir beim Drücken von der Ziffer 1 oder 2 ausgibt.

Mein Problem:  
PINCODE gibt jedoch keine Freigabe !

Leider bin ich nicht firm im Umgang mit Strings und AWL…

Jemand eine Idee woran es liegen könnte???

[gelöscht durch Administrator]
