Logikgatter statt Relais?

OP #2181137
Lesenswert?

Moin,

kurz Hintergrundinfos:
Wir entwickeln zurzeit einen Autopiloten für Modellboote. In den ersten 
Versionen möchten wir noch die Möglichkeit haben mit einer normalen 
RC-Fernbedienung einzugreifen. Also sollen die Signale vom RC-Empänger 
auf dem Boot vorgezogen werden. Wir haben uns überlegt, dass der 
Mikrocontroller das Kommando übernehmen kann, wenn er einen Pin auf 1 
setzt. Dann sollen nicht die Signale vom RC-Empfänger sondern, vom AVR 
genommen werden. Ist der Pin wieder auf 0, soll es wieder andersherum 
sein.

Unsere Idee:
Normale Relais sind zu groß, weil es dann doch schon so 6-7 Stück sein 
müssten. Deswegen haben wir uns überlegt, AND-Gatter mit jeweils 2 
Eingängen zu nehmen. An den einen kommt, die Leitung mit dem PWM Signal 
des AVRs/RC-Empfängers, und an den anderen die Leitung vom AVR, durch 
die mit 1 und 0 die Signal Quelle geregelt werden soll.

Vor die AND-Gatter vom RC-Empfänger kommen noch NOT-Gatter, der dann die 
Leitung vom AVR von 1 in 0, oder andersherum wandelt.

Durch diese Schaltung kommen die Signale bei AVR Pin = 0, vom 
RC-Empfänger und bei AVR Pin = 1 vom AVR.

Kann ich das so machen? Oder habt ihr andere Ideen?
Welche AND/NOT IC's würdet ihr empfehlen?
Die Spannungen sind überall 5V. Die PWM Signale vom AVR/RC-Empfänger 
sind auch 5V.

MfG
Philipp
Gast #2181147
Lesenswert?

Ich nehme an, es geht um ein Failsave? Sollte das so sein, würde ich bei 
einer PPM18/10 o. ä. -Fernsteuerung, das Signal mit einem Input-Capture 
im Controller überwachen. Sollte das Signal ungültig werden(Abreißen 
oder  2 bis 20 ms verlassen) oder einen bestimmten Wert einnehmen, 
übernimmt der Controller.
OP #2181169
Lesenswert?

Moin,

danke erstmal.

Failsafe soll es werden, aber nicht um die Fernbedinung abzusichern, 
sonder den Controller, sollte der sich z.B. aufhängen, oder irgendwo 
(z.B. while schleife) stecken bleiben, wegen Programmierfehlern, wird 
der mit Wachdog neu gestartet, und das Kommando der Fernbedienung 
übergeben.
Das ganze ist sozusagen, zum Debugging da. Da wo der Controller 
steckenbleibt, wird außerdem noch geloggt.

MfG
Philipp
OP #2262787
Lesenswert?

Moin,

auch wenn der Thread schon älter ist. Ich probiers erstmal mit 
Logikdattern, weil ich noch welche rumliegen habe und nicht schon wieder 
bestellen möchte.

Eine kurze Frage hätte ich da noch. Ich benutzte den 74HC08N und den 
74HC02N.
Muss ich für das PWM Signal einen Treiber dahinterschalten? Der max. 
Outputstrom für ein gatter ist bei ca. 70mA aber ich weiß nicht, wieviel 
das PWM Signal braucht?

MfG
Philipp
Gast #2263010
Lesenswert?

> auch wenn der Thread schon älter ist. Ich probiers erstmal mit
> Logikdattern,


Euer Ansatz ist blöd.

Ihr habt doch einen uC, der hat Millionen von Logikgattern.

Speist einfach das Signal der Fernbedienung in den uC.

Der entscheidet selbst, ob er SEINE Steuerimpulse oder die Steuerimpulse 
der Fernbedienung weiterleitet an die Servos und Fahrregler.

Und das geht einfach per Software: Wenn Fernsteuerimpulse ankommen, 
verwendet die, sonst fahrt nach Autopilot (der seinerseits eine Watchdog 
haben sollte um festzustellen, ob er nicht abgestürzt ist).

Damit ist auch das Umschalten ganz einfach, erfordert keinen extra Kanal 
und keinen extra Knopf an der Fernbedienung: Einfach den Sender 
ausschalten, wenn ihr die Kontrolle nicht haben wollt.
OP #2263017
Lesenswert?

MaWin schrieb:
>> auch wenn der Thread schon älter ist. Ich probiers erstmal mit
>> Logikdattern,
>
>
> Euer Ansatz ist blöd.
>
> Ihr habt doch einen uC, der hat Millionen von Logikgattern.
>
> Speist einfach das Signal der Fernbedienung in den uC.
>
> Der entscheidet selbst, ob er SEINE Steuerimpulse oder die Steuerimpulse
> der Fernbedienung weiterleitet an die Servos und Fahrregler.
>
> Und das geht einfach per Software: Wenn Fernsteuerimpulse ankommen,
> verwendet die, sonst fahrt nach Autopilot (der seinerseits eine Watchdog
> haben sollte um festzustellen, ob er nicht abgestürzt ist).
>
> Damit ist auch das Umschalten ganz einfach, erfordert keinen extra Kanal
> und keinen extra Knopf an der Fernbedienung: Einfach den Sender
> ausschalten, wenn ihr die Kontrolle nicht haben wollt.

Mir gehts aber genau darum, dass ich zum Fahren nicht auf den uC 
angewiesen bin. Sollte damit etwas sein (z.B. Wasserim Boot usw. oder 
irgentwas anderes)
kann ich das Boot nicht mehr zurück holen, auch nicht mit der normalen 
Fernbedienung. Ich möchte damit einfach erreichen, dass ich uC unabhänig 
mit der Fernbedienung fahren kann.

MfG
Philipp
Gast #2263025
Lesenswert?

> Mir gehts aber genau darum, dass ich zum Fahren nicht auf den uC
> angewiesen bin. Sollte damit etwas sein (z.B. Wasserim Boot usw. oder
> irgentwas anderes)
> kann ich das Boot nicht mehr zurück holen, auch nicht mit der normalen
> Fernbedienung. Ich möchte damit einfach erreichen, dass ich uC unabhänig
> mit der Fernbedienung fahren kann.

Wenn Wasser im Boot ist, gehen auch Empfänger, Servos etc. nicht mehr.

Und die Umschaltlogik, z.B. CD4053 für 3 Kanäle, könnte ja auch unter 
Wasser stehen oder der ersoffene uC seinen entscheidenden Ausgang 
"falschrum" halten.

Das ist also nur halb durchdacht.
Gast #2263037
Lesenswert?

Eigentlich ist doch eher ein "Manual Override" gewünscht. D.h. das 
Signal welches zwischen µC und Fernbedienung umschaltet sollte von der 
Fernbedienung kommen und nicht vom µC. Andersrum ist es irgendwie 
sinnlos. Auch der Watchdog ist nicht immer eine gute Lösung. z.B. wenn 
sich das Programm immer gleich am Anfang aufhängt, da hat man nicht viel 
Zeit, um mit der Fernbedienung auch nur irgendwas zu machen und bis der 
Watchdog zuschlägt dauert es dann wieder.
OP #2263049
Lesenswert?

Noah schrieb:
> Eigentlich ist doch eher ein "Manual Override" gewünscht. D.h. das
> Signal welches zwischen µC und Fernbedienung umschaltet sollte von der
> Fernbedienung kommen und nicht vom µC. Andersrum ist es irgendwie
> sinnlos. Auch der Watchdog ist nicht immer eine gute Lösung. z.B. wenn
> sich das Programm immer gleich am Anfang aufhängt, da hat man nicht viel
> Zeit, um mit der Fernbedienung auch nur irgendwas zu machen und bis der
> Watchdog zuschlägt dauert es dann wieder.

Ja, so wars gedacht.
Das Autopilot Programm ist realtiv komplex und ich hätte einfach nur 
gerne eine Absicherung, dass wenn irgentwas sein sollte, ich das Boot 
mit der Fernbedienung zurück holen kann. Ich möchte, besonders an 
kälteren Tagen nicht umbedingt im Mittellandkanal schwimmen gehen. 
Außerdem ist da auch noch die Berufsschifffahrt, und die halten nicht 
für so ein kleines Boot an.

MfG
Philipp
Gast #2263076
Lesenswert?

Moin,

zumindest bei den Atmegas steht im Status-Register der Auslöser vom 
letzten Reset.

Du könntest in deinem Programm ganz zu Anfang dieses Register auswerten. 
Wenn der Watchdog zugeschlagen hat geht der Controller in eine 
Endlosschleife.

Die Umschalt-Logik könntest du zusätzlich mit einem Taktsignal 
absichern: Wenn der Takt fehlt (= Controller hängt) wird auf die 
Fernbedienung geschaltet.

Selbst wenn der Controller sich in der 1. Zeile vom Programm aufhängt 
und den Pin auf +5V festhält wertet die Logik das nicht als 
Umschalt-Signal.
Den Takt solltest du dann natürlich nicht mit einem Timer erzeugen 
lassen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren