PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Multicontroler-Maschine ? Vorteile - Nachteile?



Klingon77
03.11.2006, 22:14
hi,

Habe vor einigen Jahren mit der C-Control 1 herumgebastelt. Nun baue ich mir gerade eine Plattform mit 3 Rädern, 2 Motoren usw. auf um damit zu lernen.

Ich dachte nun, die Steuerung der einzelnen Komponenten nicht zentral von einem "Rechenknecht" erledigen zu lassen, sondern mehrere kleine (z.B: C-Control - weil ich damit schon etwas erfahrung hab,) zu "vernetzen".

Beispiel: Rasenmäher Robby

1 CC --> Antrieb und Akku Überwachung
2 CC --> Orientierung und Hindernisse (mit Rückmeldung an CC1; z.B: Hindernis vorne --> CC1 ruft Unterprogramm "Ausweichen Hindernis vorne" auf...)
3 CC --> Mähwerke (Lichtschrankengesteuert, damit sie sich auch nur einschalten, wenn es etwas zu mähen gibt. Ohne Rückmeldung an CC1, also vollkommen autonom. Die Lichtschranken sitzen 1 cm über der Schnittkante (man braucht ja nicht jeden mm abzumähen)
4 CC --> .... was man sonst noch braucht...

Die Rückmeldungen könnte man über einen zentralen 8Bit Bus (ggf auch zwei) machen,
d.H. CC Nr. 2 bekommt z.B: 4 Bit (also 32 Möglichkeiten dem CC1 was mitzuteilen.
CC Nr. 4 bekommt x Bit.
CC Nr. x bekommt x Bit.....

Vorteil:
1) Dezentrale Aufgabenbewältigung
2) Sehr übersichtlicher Aufbau und Fehlersuche
3) Komplettausfall des Systems sehr unwahrscheinlich
4) Einfacher Aufbau und einfache, übersichtliche Programmierung
5) Datentransfer, wenn denn überhaupt notwendig, nur in eine Richtung erforderlich
6) Autonome, "selbst entscheidende" Subsysteme (z.B: CC Nr. 2 - Mähwerk)
7) mal sehen, was noch kommt...
Was haltet Ihr von meinem Ansatz?

Gruß, Klingon77

scales
04.11.2006, 02:19
ich hab mir auch schon überlegt mehrere Controller zu benutzen,
weil es einfacher ist das Ganze modular aufzubauen und jeder Controller nur für ein Teilgebiet zuständig ist,
dann lassen sich alle Teile einfach auswechseln, neue Komponenten können einfach integriert werden...

aus Platz- und Geldmangel hab ich aber doch lieber einen Controller genommen,
ansonsten hätt ich bestimmt mehrere benutzt, halt ich für eine gute Idee

marvin42x
04.11.2006, 09:46
Das ist eine sehr spannende Lösung.
In den meisten Fällen reicht ja durchaus ein Controller.
Wie beim Rasenmäher mit mittlerer Intelligenz. Man sollte die Kleinen nun auch nicht unterschätzen. Da hängt viel an der Effizienz der Programmierung.

Für gehobene Ansprüche wird Multi –Controller ja schon Pflicht.
Wobei hier dann die Frage der Kommunikation zwischen den Controllern ins Blickfeld gerät.

Im Forum läuft dazu ein Projekt in dem ein Multi -Master –Controller I2C -Netzwerk mit fertigen Multicontroller-Netzwerk –Betriebssystemen erarbeitet wird.
Dass das ganze auch bis hin zur Internetfähigkeit reicht und eine frei konfigurierbare PC -Benutzeroberfläche beinhaltet sollte ja erstmal nicht stören.

Ich halte Multi –Controller für viel spannender als Single –Controller.
Zumal der Preis eines Controllers sich in moderaten Grenzen hält.
Multi ist cool.
Der Trend geht zum Zweitcontroller ;-)

Netter Gruß

Klingon77
04.11.2006, 12:01
hi Ihr beiden,

schön, daß mein Denkansatz Zustimmung findet (könnte ja auch in die falsche Richtung gedacht haben - so ala "ich seh den Wald vor Bäumen nicht".

Die Kommunikation könnte man recht einfach gestalten indem der Master einen Latch mit 8 Bit beschreibt und über Chip enabel vom 2. Bus einzelne Slaves anspricht.
Genauso schreiben die Slaves Ihre Meldungen in ein oder mehrere Latches, die vom Master abgefragt werden.

Habe noch nicht mit I2c gearbeitet. Ich habe aber schon gelesen, daß er wegen der "Datenschieberei" nicht der schnellste sein soll. Besonders dann, wenn man (so wie ich) ein eingefleischter "BASIC" ist und fast Null-Schein von Assembler hat.

Wie Marvin42x schon sagte, werden die Controller immer günstiger.
-----------------------------------------------------
den zweiten Teil hab ich rausgenommen, wurde gemault, weil mehrfachpost.

Sorry nochmal.

Gruß, Klingon77

marvin42x
04.11.2006, 12:26
Jetzt musst Du Dich entscheiden.
Wollen wir über Multi -Controller reden?
Oder wollen wir über Rasenmähermechanik reden?
Vom Thread Thema her wäre meine Vermutung: Multicontroller.
Nicht das das Schneidewerk uninteressant wäre.
Einer der großen Rasenmäher Threads hier im Forum würde sich über eine Neubelebung freuen. Du bist mit dem Thema nicht allein.
Und die Rasenmäher Gemeinde ist hier im Forum nicht klein.

I2C:
Richtig langsam ist das nicht und reicht für den Alltag allemal.
Vorteil ist, dass diese Fähigkeit von vielen Bauteilen unterstützt wird.
Eine Art Quasistandard. Also nicht gering achten.
I2C lässt sich über AVR Bascom Basic für den Single Master Betrieb ultra simpel programmieren.

Netter Gruß

Klingon77
04.11.2006, 16:51
Hi,
wollte den I2C nicht schlecht machen, sondern nur mal Praktiker fragen, ob sich die Geschwindigkeit in irgendeiner Weise auf das Projekt auswirken könnte.

Dann tun sich gleich wieder 2 Fragen auf...

1) Wie könnte ich den 2 oder mehrere Controler mit I2C verknüpfen? Habe halt bis Dato nur mit Parallel-Bus gearbeitet, weil mich die ganze Schieberei generft hat.

2) Kann ich auch mehr als 8 Geräte miteinander vernetzen? Oder ist dann Ende (Adressierung ?)

Wohlgemerkt: Bitte kein Assembler oder ähnliches. Brauche eine einfache Lösung über die Digitalports, so daß ich auch verstehe, was ich tue. Muß auch keine fertige Lösung sein. Ansatz reicht! (Prinzip oder ähnliches. Möchte ja auch gerne selber etwas denken...

------------------

Sorry für den Themenwechsel. Manchmal denke ich halt "quer". Ich werde die Frage mal in ein Rasenmäher-Thread setzen. Mal schauen, was die Jungs und Mädels meinen...

Gruß, Klingon

cinhcet
04.11.2006, 22:21
wo gibts denn den Teard mit dem " Im Forum läuft dazu ein Projekt in dem ein Multi -Master –Controller I2C -Netzwerk mit fertigen Multicontroller-Netzwerk –Betriebssystemen erarbeitet wird.
Dass das ganze auch bis hin zur Internetfähigkeit reicht und eine frei konfigurierbare PC -Benutzeroberfläche beinhaltet sollte ja erstmal nicht stören." find da nichts
und, wie sag man denn einen I2C befehl und wie wird er auf der anderen seite ausgewertet??

marvin42x
05.11.2006, 00:51
Hier der Thread:
Im Moment ist das Schwergewicht gerade am PC aber es geht auf der Microseite auch bald weiter.

https://www.roboternetz.de/phpBB2/viewtopic.php?t=16297&postdays=0&postorder=asc&start=594

Für das ansprechen des I2C Bus gibt es im Forum eine Rubrik wo es Beispielprogramme für die hier üblichen RN Boards gibt.
Insgesamt lege ich Dir auch den Wissensbereich ans Herz. Ein Prachtstück, mit wirklich viel Info.

Klingon77
05.11.2006, 09:02
Nochmal Dank für die Hilfe!

Gruß, Klingon77

Vitis
05.11.2006, 11:25
Für mich der einfachste und auch nicht gerade langsamste lowcost-Bus ist
der rs 485. Störunanfällig und recht flink auch auf größere Entfernungen.