PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Steuerung mit PC über Lehrer/Schüler-Verbindung



A cappella
23.11.2008, 16:07
Hallo und viele Grüße erst mal!

Ich möchte einen Hubschrauber (diesem hier ähnlich http://www.mikrokopter.de/ucwiki/NachbauAnleitung ) per Laptop über Funk fernsteuern. Erst mal würden 4 Steuerkanäle (Vorwärts/Rückwärts, Seitwärts, Hoch/Runter, Gieren) völlig reichen.

Da ich bisher noch keine Erfahrung im Modellbau habe, wollte ich soweit möglich auf Bestehendes zurückgreifen. Folgendes habe ich mir gedacht:

1) PC über die Lehrer-Schüler-Verbindung an die Fernsteuerung (Royal Evo 9) anschließen ( https://www.ssl-id.de/www.modellbausteber.de/product_info.php?info=p437_Multiplex-USB-PC-Kabel-fuer-Sender------85148.html&XTCsid=e4396866c4a2ece3d7b88311923bfa7c )

2) Steuersignale an Fernsteuerung senden (so wie ich das bisher verstehe, reicht hier PWM ?! --> http://www.sprut.de/electronic/modell/allgemein/index.htm )

Ich weiß, dass sich hier im Forum schon einige damit beschäftigt haben. Wie seid ihr letzten Endes vorgegangen und hat das bei euch geklappt? Habt ihr bessere Ideen? (Bin für jede Hilfe dankbar)

Cairol
24.11.2008, 19:00
Erstmal "Willkommen im RN!"

Du legst gleich richtig los, was?
Bei einem Modell-Auto oder Schiff könnte ich jetzt aus dem Nähkästchen plaudern, aber bei einem Flieger oder Heli? :-k

Darf man ganz dezent nachfragen, wie du den Helikopter mit dem Notebook steuern möchtest?
Über die Tastatur?

Hast du schonmal einen Heli mit ner normalen RC-Anlage gesteuert?

Die Idee ist ja schon witzig, aber irgendwie kommt mir das ziemlich komplex vor, einen Heli so in der Luft zu halten.
Die Reaktionszeit ist dabei ziemlich hoch und man hat kein Gefühl bei der Steuerung.
Wenn der Heli nicht mit einer "Rundum-Sorglos-Stablisierungs- und Lageregelung" ausgestattet ist, kann ich mir nicht vorstellen das das halbwegs zuverlässig machbar ist - höchstens über einen Joystick am Laptop. Dann kann man aber auch gleich die normale RC-Anlage verwenden und hat weniger Störquellen....

Versteh mich bitte nicht falsch, ich will dir das bei Gott nicht madig machen!
Es interessiert mich nur, wie genau du dir das so vorstellst.

Gruß,

Cairol

A cappella
24.11.2008, 19:44
Hallo Cairol

dass das nicht leicht wird ist mir klar.

Geflogen hab ich den Heli schon mit der Fernbedienung, ne "Rundum-Sorglos-Stablisierungs- und Lageregelung" hat das Teil - man muss einfach die Steuerknüppel los lassen und er schwebt auf der Stelle.

Meine Motivation ist folgende:
Das Ganze ist ein Projekt für die Uni und der Hubschrauber soll von alleine ein Raster abfliegen (mit der Lehrer-Fernbedienung müsste ein Beobachter dann ja immer noch jederzeit eingreifen können). Die Navigation ist dabei nicht das Problem, sondern nur das Senden der Steuerbefehle.

Und von daher wollte ich "erst mal" damit anfangen, die vier Steuerbefehle manuell per Laptop zu senden.

Kritisch sind dabei aus meiner Sicht vor allem zwei Fragen:
1) lassen sich mit dem Interface-Kabel auch Daten vom PC an die Fernsteuerung senden? --> sollte eigentlich klappen, meine ich
2) ist pwm tatsächlich das richtige Sendeformat?

Und ansonsten muss ich halt mal ausprobieren (heißt ja nicht umsonst learning by doing ) O:)

Cairol
24.11.2008, 22:29
Mit der PWM hast du glaub ich was durcheinander gebarcht.
Der SENDER schickt PWM-Signale an den EPFÄNGER im Heli. Aber du willst ja "nur" statt die mechanischen Regler am Sender zu betätigen, die Steuerwerte über den PC an den Sender schicken. Da brauchst du keine PWM.

Die einzige Möglichkeit die mir da spontan einfällt (und hier im Forum schon mal vorgestellt wurde) ist, den RC-Sender umzubauen - und zwar die analogen Potis die die Position der Steuerknüppel erfassen mit digitalen Potis zu ersetzen. (Ich nehme mal an das die RC-Anlagen heute auch noch analoge Potis verwenden!? Hab mich lange nicht mehr damit beschäftigt.)
Dann kann man diese digitalen Potis z.B. über einen Mikrocontroller ansteuern (der wiederum vom PC gesteuert wird) und der Anlage so die gewünschten Steuersignale "unterjubeln".
Also: PC -> RS232 -> Mikrocontroller -> Digital-Poti -> RC-Sender-Controller
(Statt einem Mikrocontroller kann man auch spezielle IC's hernehmen oder eine diskrete Schaltung selbst aufbauen - je nach dem was man will und was einem besser gefällt.)

Das hätte außerdem den Vorteil, dass die Übersteuerung der "Lehrer-Schüler"-Funktion deiner RC-Anlage damit immer noch wie gewöhnlich funktioniert, da du ja mit den Digital-Potis im Prinzip nix an der Ansteuerung veränderst. Nur dass nicht dein Finger sondern der PC die Befehle gibt.)

Aber über das USB-Kabel direkt auf den Controller im Sender zuzugreifen und dort die Steuerwerte reinzuschreiben, wird kaum möglich sein, da du wohl weder über den Controller im Sender, noch über die Schaltung ausreichend Informationen hast oder beschaffen kannst.
Du weißt also schlicht und ergreifend nicht, wo und wie du die Werte einspeisen sollst.

Vielleicht kennt aber auch jemand hier im RN ne elegantere Lösung...

wkrug
25.11.2008, 09:13
Im Prinzip sollte A capella's Ansatz von der technischen Seite her schon funktionieren.
Eine Lehrer - Anlage erwartet üblicherweise Impulsketten von der Schüleranlage.
Diese Impulsketten bestehen aus 8 Impulsen ( = Kanälen ) mit einer Impulslänge von 1...2ms pro Kanal.
Nach jedem Impuls wird eine kurze "low" Phase eingefügt um den Anfang des nächsten Impulses detektieren zu können.
Nach dieser Impulskette wird eine "low" Phase von >4ms eingefügt, die zur Synchronisation zwischen Sender und Empfänger genutzt wird.
Die Impulslänge eines Kanals entspricht dem jeweiligen Servoausschlag, wobei eine Impulslänge von 1,5ms der Servomitte entspricht.

Das ist mal das grundsätzliche Schema.
Manche Fensteuerungen senden auch weniger oder mehr Impulse, bei anderen Typen ist die Servomitte nicht bei 1,5ms, sondern bei 1,52ms.
Wieder andere Sender benutzen einen erweiterten Impulsumfang, z.B. 0,8...2,2ms.

Hier mal ein Link:
http://home.arcor.de/claus.poltermann/ms8/graupner.html

Ein Problem ist die Stabilisierung des Fluggerätes, die im normalen Modellflugzeug durch die Technik ( Kreisel ) + Piloten erledigt wird.
Aber das scheint bei Deinem Modell schon gelöst.

Ein weiteres Problem, das ich sehe sind die Effekte die durch Luftströmungen entstehen.
Also was passiert, wenn der Wind das Modell seitlich "verbläst", oder ein Wirbel das Modell anhebt, absenkt ?
Ein Pilot kann das kompensieren, aber wie möchtest Du das mit einem PC ohne Rückmeldung vom Modell her lösen?

Die Erzeugung der Impulsketten würde ich einem kleinen Microcontroller überlassen, der seine Steuerbefehle per serieller Schnittstelle / USB vom PC her bekommt und an seinem Ausgang das entsprechende Impulsmuster zum Lehrer Sender schickt.

Bei USB könnte die Stromversorgung der Schaltung auch gleich vom PC aus erfolgen. Passende USB Treiberbausteine, wie den FT232RL sind ja in der Zwischenzeit problemlos erhältlich.

A cappella
25.11.2008, 18:05
Das heißt, ich muss folgendes tun:

1) genaues Sendeprotokoll für meine Fernbedienung rausfinden (werd gleich mal im Handbuch nachschauen; ich glaube sogar, dass die fernsteuerung hier direkt mehrere möglichkeiten bietet)

2) einen microcontroller programmieren, so dass er mir das gewünschte Steuersignal erzeugt (oder eine fertige Lösung finden)

3) den microcontroller mit dem umsetzer an die usb-schnittstelle des comps anschließen und (als seriellen Port?) ansprechen

Die Idee mit dem Interface-Kabel kann ich also vergessen, sondern muss da noch den microcontroller zwischen schalten?

so etwas müsste doch funtionieren: http://www.endurance-rc.com/pctx.html

radbruch
25.11.2008, 18:34
Hallo


Geflogen hab ich den Heli schon mit der Fernbedienung, ne "Rundum-Sorglos-Stablisierungs- und Lageregelung" hat das Teil - man muss einfach die Steuerknüppel los lassen und er schwebt auf der Stelle.
Wenn du die Fernbedienung schon hast und quasi nur die Steuerknüppel bewegen mußt: Bau dir einen Fernbedienungsbedienroboter!

Ein (abnehmbarer ;) Aufsatz für die Fernbedienung bewegt mit Servos die Steuerknüppel der Fernbedienung. Die Servos kannst du über ein günstiges Servoboard per serieller Schnittstelle oder USB vom PC aus ansteuern. Alternativ, technisch etwas komplizierter, wäre auch eine Ansteuerung der Servos direkt über die serielle oder parallele Schnittsstelle möglich.

(RN-Mikroservoboard: http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=67&products_id=118)

Gruß

mic

wkrug
26.11.2008, 05:44
so etwas müsste doch funtionieren: http://www.endurance-rc.com/pctx.html
Ich bin auch der Meinung, das dieser Adapter funktionieren sollte.
Die Soft wirst Du allerdings selber schreiben müssen, wenn ich das richtig gelesen habe.

A cappella
28.11.2008, 15:14
Ich werd das mal probieren. Wenn ich weitere Fragen hab/fertig bin meld ich mich noch mal.

Vielen Dank auf jeden Fall für die Antworten.

vohopri
16.12.2008, 08:49
Hallo acap,

Die Lehrer-schülerverbindung funktioniert üblicherweise mit PPM und nicht PWM. (Erst der Demultiplexer empfängerseitig im Modell generiert aus dem einen Mehrkanal PPM Signal die verschiedenen PWM Signale - eines pro Kanal).

Geh mit deiner Steuerung in den Schülermodus und messe mit Oszi das Signal. Da sieht man sofort, was Sache ist. Für Fernsteuersignale PPM und PWM reicht auch ein Softwareoszi. Also Soundkarte mit Schutzinterface anschliessen und die Kurven darstellen. Funktioniert hervorragend, kostet nichts und bringt dir DIE Information.

Umgekehrt funktioniert das auch: Mit der Soundkarte kannst du unmittelbar die erforderlichen PPM Signale erzeugen und ein Interface in die Schülerbuchse der Steuerung einspeisen. Die Steuerung befindet sich im Lehrermodus und dort kann notfalls manuell eingegriffen werden.

Das Erzeugen eines Mehrkanal PPM Signals per Soundkarte habe ich erprobt und das funktioniert in der Praxis gut. Zu überprüfen wird sein, ob für deine Ansprüche die Signallaufzeit ausreichend kurz ist.

Prinzipbedingt hat die PPM Steuerung eine Übertragungszeit bis 20ms. Soundkarte arbeitet rasch, da sie eine hohe Priorität im System besitzt, allerdings must du etwas puffern. Alle anderen Schnittstellen sind im Multitaskingsystem schlechter dran. Besser ist nur die serielle oder die parallele im ECHTZEITBETRIEB. Das aber bedeutet maschinennahe Programmierung und nichts anderes läuft nebenbei im üblichen Multitasking Verfahren.

grüsse,
vohopri