mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Relaismatrix


Autor: Clemens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich will ein Relais-Matrix-System bauen mit dem ich Signale routen kann. 
Es sind ca. 500 Relais, die mit uC angesteuert werden sollen. Kann mir 
jemand helfen, welcher serielle Bus hierfür geeignet ist und wie ich die 
Relais ansteuern kann.

Autor: Meiserl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo
Mach einfach eine Speicherausklammerung (AT90S8515 du benötigst nur 
64Byte)
Oder über Schieberegister.

Sag was wird das für ein Projekt?.
500 Relais ziehen ja auch eine Menge Strom!

Autor: Siegfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Überigens,
mit 4 Relais kann man auch einen 1 aus 16 Mux bauen.

Siegfried

Autor: Clemens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Projekt:Routing von Audiosognalen in einem Meßsystem

Von den Relais werden ca. max. 30 auf einmal durchgeschaltet.
Wie funktioniert das mit der Speicherausklammerung, hab ich noch nicht 
gemacht

Autor: Meiserl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du mußt einen Controller verwenden der externes RAM unterstützt.
Statt den Speicher stezt du einen Adressdekoder und Latches.
Read Write richtig belegen und du kannst dich schon austoben.
Ist like 8051er.
Es liegt dann der IO-Bereich in deinem Speicherbereich.
Im Programm schreibst einfach auf eine Speicherzelle einen Wert.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde einen langsamen SPI-Bus mit HC595-Schieberegistern verwenden.

Autor: Clemens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibt es auch eine Möglichkeit I2C zu nehmen mit den Porterweiterungen 
und dazu Schieberegister?

Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was du verwenden solltest hängt u.a. auch davon ab wie du die 500 Relais 
ansteuern willst bzw. wie die Verbaut sind.
Befinden die sich alle dicht-an-dicht auf einer riessen Platine (glaube 
ich kaum ;)). Oder dicht-an-dicht auf mehrere Platinen verteilt ? Oder 
in einem Schaltschrank einzeln auf Hutschienen oder wie ?

Die Wahl ob und falls ja welchen Bus du verwendest hängt vom 
konstruktiven Aufbau der Relaismatrix ab. Muss der µC noch andere 
Aufgaben erfüllen oder soll dem z.B. einfach per serieller Schnittstelle 
der Befehl "schalte Relais 145 ein" "schalte Relais 278 aus" usw. 
übermittelt werden.

Autor: Clemens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Relais sitzen zu 25 St. auf einer Karte, die auf eine Busplatine 
gesteckt werden. uC soll noch ein kleines Menue verwalten, in dem 
Schaltkonfigurationen der Relais aus ext. EPROM abgerufen werden 
können,das ganze auf LCD anzeigen.

Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du genug freie Leitungen hast, kannst du dann z.B. 5Bit(Adresse der 
Busplatine)+5Bit(Adresse des Relais auf der Busplatine)+1Bit(On oder 
Off)+1(Clock) also insg. 12 Leitungen als Bus verwenden. Damit könntest 
du pro CLOCK ein Relais schalten. Bräuchtest aber noch einiges an 
Logikschaltung auf den Busplatinen.

Wenn du aber sogar:
5Bit(Adresse der Platine)+25Bit(Zustände aller Relais der 
Platine)+1(Clock) also 31 Leitungen hättest, könntest du eine komplette 
Busplatine pro CLOCK schalten. Dann müsstest du nur auf der µC Platine 
z.B. mit I2C Porterweiterungen (um Ports zu sparen falls nötig) auf 
deine 31 Leitungen kommen und auf den Busplatinen brauchst du nur noch 
einfache latches und eben deine Relais. (naja und noch einen 5Bit 
comparator der deine Platinenadresse prüft :)).

Autor: Clemens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Vorschläge.
Hab noch nicht so viel mit uC gemacht.
Gibt es für diesen Vorschlag Beispiele (in Form von Schaltplänen). Wie 
trenne ich die Relaisnummer von der Kartenadresse?

Autor: Jonas Diemer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Lars: bin nicht sicher, ob ich da durchsteige, aber:

Wieso nicht einfach statt die 5bit "adresse der platine" auf den Puls 
(keine ahnung, wie man das nennt) der Latches legen?

dann kannste vom µc einfach an alle latches dasselbe signal legen, pulst 
aber nur den, für den es bestimmt war... also nochmal im klartext:

je 25leitungen vom µc zu den platinen, plus zu jeder platine noch ne 
extraleitung für den Puls des latches. willste dann auf platine1 was 
ändern, legste deine daten auf die 25 pins und pulst dann das 
entsprechende latch.

Wenns dir nicht auf schaltgeschwindigkeit, sondern auf ne einfache 
schaltung ankommt, kannste doch auch schieberegister auf den platinen 
einsetzen. dann brauchste nur 2 leitungen (1 daten, 1 puls) zu jeder 
platine zu legen. im extremfall könnten die datenleitungen aller 
platinen sogar auf denselben pin (wenn du dann nur den puls für die 
platine pulst, die die daten haben soll).

PS: Hoffentlich hab ich nicht kompletten bullshit gelabert, hab sowas 
nämlich noch nie gebaut.

Autor: Heiko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kannst du das genauer erklären, wie man so was aufsplittet um die Module 
und die einzelnen Relais adressiert.

Autor: Jonas Diemer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja, ich weiß das selber nicht 100%ig. aber es gibt sog. 
schieberegister die seriell angesteuert werden. da schiebst du über 1 
pin (+1 für den clock? ich kenn die dinger doch nicht!!! :-) ) die daten 
rein, dann pulst du auf nem anderen pin (oder?) und die daten stehen 
dann an den ausgängen (daran kommen dann die relais).

hab ich das so richtig verstanden/wiedergegeben?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.