Forum: Mikrocontroller und Digitale Elektronik reset mit PIC oder AVR


von Michael Reck (Gast)


Lesenswert?

Hi,

Ich suche Ideen oder fertiges um einen reset für Rechner zu bauen.
Bisher löse ich das über Relaiskarten und Kabel zu jedem Rechner.
Ich suche nach einer Lösung die nicht mehr so aufwendig ist.
Ich dachte mir das es keine schwierigkeiten geben sollte mit einem
kleinem pic oder AVR ein reedrelais anzuziehen.

Das Problem: wie baue ich am sinnvollsten einen Bus der

- erweiterungsfähig ist
- sagen wir 1000 devices von einem Master ansprechen kann
- störunempfindlich ( differential Signal ..)
- einfach zu implementieren ist.

Da meine Assemblerkenntnisse nicht über das ein und ausschalten von
Ports hinausgehen wäre eine Einschätzung der realisierbarkeit in einer
Hochsprache nett.

Grüße
Michael

von Wirus! (Gast)


Lesenswert?

Moin,

Du solltest hier in Hardware und Software unterscheiden.

Hardware:
RS485 ist sicher eine gute Wahl (differential, daher störunempfindlich,
lange Kabellängen bis 1200, gut dokumentiert, günstig etc.)
Allerdings sind 1000 Geräte am Bus eher nicht möglich (128 mit
ensprechenden MAXIM-Treibern habe ich als Maximum gefunden, vieleicht
gibt es da noch welche die mehr Bausteine am Bus zulassen), daher
solltest Du überlegen, mehrere PCs über einen Baustein zu schalten ->
Relaiskarte mit ATMega8 o.ä. lauscht am Bus und schaltet 16 Relais/PCs


Das ergibt 127 x 16 PCs (der 128. ist für den Master) = 2032

Software:
Selbst ist der Mann! Eine Anlehung an den MODBUS wäre vorstellbar

Gruß, Wirus!

von Michael Reck (Gast)


Lesenswert?

Naja, ich denke das es möglich ist das ganze auf gruppen von 50 - 60
rechnern zu teilen. Allerdings soll 1 rechner 1 reset bekommen um das
ganze flexibel zu halten. Der Verkabelungsaufwand soll auf "2-3
Leitungen an einen Bus anschließen + vcc anschließen" gedrückt werden.
Dann noch addresse<->rechnerzuordnung und fertig.

Grmpfl, es muss doch so etwas wie webresetter.de auch in billig geben.
Den Tastaturport brauch ich ned.
Ob man das reverse herausbekommt was das teil macht. Bin ja schon kurz
davor sowas zu kaufen, zu zerlegen und mal die Signale auszuzwerten.

Die Software auf den Teilen dürfte nicht allzu schwer sein.
Einmal auf Bus lauschen und Addresse vergleichen und bei bedarf nen
port an/aus.

von Jens (Gast)


Lesenswert?

Powerline Modem und eine kleine Minischaltung in jeden PC einbauen?

von Rolf Magnus (Gast)


Lesenswert?

Wie wäre es, eine Kette aus den AVRs zu bilden, so daß immer nur zwei
über eine Schnittstelle miteinander verbunden sind. Das bedeutet zwar,
daß der Ausfall eines Controllers alle nachfolgenden auch
beeinträchtigt, aber andererseits kann bei einer Buslösung auch ein
Controller den ganzen Bus lahmlegen.
Alternativ könnte man auch eine Hierarchie bauen, also z.B. einen
Master-AVR mit 127 Reset-AVRs über einen Bus verbinden und dann mehrere
solcher Master-AVRs wieder über einen eigenen Bus miteinander koppeln
und mit der "Zentral-Einheit" verbinden.

von Wirus! (Gast)


Lesenswert?

> Naja, ich denke das es möglich ist das ganze auf gruppen von 50 - 60
rechnern zu teilen.

Anders wird es kaum gehen ... allerdings sind Gruppen von 16-24
warscheinlinch besser zu händeln (die Portanzahl im MCU macht auch den
Preis.

> Allerdings soll 1 rechner 1 reset bekommen um das ganze flexibel zu
halten.

Das versteht sich von selbst ....

> Der Verkabelungsaufwand soll auf "2-3 Leitungen an einen Bus
anschließen + vcc anschließen" gedrückt werden.

Sollte kein Problem sein - allerdings wäre ein GND-Anschluss auch
sinnvoll ....

> Dann noch addresse<->rechnerzuordnung und fertig.

> Grmpfl, es muss doch so etwas wie webresetter.de auch in billig
geben.
> Den Tastaturport brauch ich ned.
> Ob man das reverse herausbekommt was das teil macht. Bin ja schon
kurz
davor sowas zu kaufen, zu zerlegen und mal die Signale auszuzwerten.

Du willst was fertiges? Dafür gibt es Consultants, wenn Du es nicht
selber kannst ....

> Die Software auf den Teilen dürfte nicht allzu schwer sein.

Das dürfte ein Trugschluss sein. Die Hardware für Dein Projekt ist eher
trivial, bei der Software ist das schwer einzuschätzen


> Einmal auf Bus lauschen und Addresse vergleichen und bei bedarf nen
port an/aus.

Jo, denn mach mal ....

von Michael Reck (Gast)


Lesenswert?

Erstmal danke Wirus für dein Posting.
Ich denke aber du missverstehst mich hier ein wenig.
Ich will nix fertiges, aber was funktionierendes als vorlage ist
dennoch meistens hilfreich.
Das mit den ports verstehst du falsch, ich will 1 MCU pro Rechner als
receiver der fest mit dem Rechner "verheiratet" wird, eben wie es bei
webresetter gelöst wird. Das treibt zwar den Preis pro Rechner in die
Höhe aber das ganze bleibt veränderbar ohne neuzuordnungen.

Was die Software betrifft: Wo ist das ganze schwer einzuschätzen ?
Vergleiche empfangenes Frame (Adresse des Frames mit der eigenen)
Wenn die Addresse übereinstimmt setze port x. Meinetwegen mit Prüfsumme
über XOR abgesichert.

von Wirus! (Gast)


Lesenswert?

> Erstmal danke Wirus für dein Posting.
> Ich denke aber du missverstehst mich hier ein wenig.
> Ich will nix fertiges, aber was funktionierendes als vorlage ist
dennoch meistens hilfreich.

Wohl wahr ....

> Das mit den ports verstehst du falsch, ich will 1 MCU pro Rechner
> als receiver der fest mit dem Rechner "verheiratet" wird, eben wie

> es bei webresetter gelöst wird.

Leider kenne ich den Webresetter nicht

> Das treibt zwar den Preis pro Rechner in die
Höhe aber das ganze bleibt veränderbar ohne neuzuordnungen.

Stimmt. Wäre evtl. sogar als Einsteckkarte oder als Slotblech
realisierbar, das den Strom vom Rechner bezieht. Von aussen wäre dann
nur noch die Datenleitung anzuschließen

Was die Software betrifft: Wo ist das ganze schwer einzuschätzen ?
Vergleiche empfangenes Frame (Adresse des Frames mit der eigenen)
Wenn die Addresse übereinstimmt setze port x. Meinetwegen mit Prüfsumme
über XOR abgesichert.

Naja, der einzelne Rechnerslave ist sicher nicht schwer zu
programmieren, da Du aber bis 1000 Slaves haben willst, brauchst Du
einen Umsetzer zwischen den Slaves und Deiner Zentraleinheit, denn wie
bereits erwähnt, ist die Anzahl der Devices auf dem Bus begrenzt (siehe
http://www.maxim-ic.com/appnotes.cfm/appnote_number/367 , Table 3) auf
32/128/256 Geräte.

Sollte ich sowas machen müssen, würde ich für jeden PC ein kleines
Platinchen für jeden Rechner designen, das einen ATtinny2313
(Hardware-UART, ausreichend Pins für das DIP-Feld,günstig) einen
Transreceiver auf RS485, ein Reedrelais und ein Dipschalterfeld für die
Adresse enthält sowie die übliche und notwendigen externen
Beschaltungen.

Für jedes Segment (32-1/128-1/256-1) würde ich einen Umsetzer mit Je
einem ATmega 162 einsetzen (da 2 Hardware UARTs), der die Befehle
einfach durchschiebt.

Zur Software sei noch zu sagen, daß eine Rückmeldung evtl. ganz gut
wäre.

Ich hoffe, das hilft ein wenig.

Gruß

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.