PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RP6 über Funk und Tastatur echtzeit steuern



cmani2009
18.06.2009, 15:41
Hallo Zusammen

Wie schon im vorigen Thema beschrieben erweitere ich meinen RP6.
Einerseits mit einem Arm (Lynx6) der über Funk gesteuert wird, einer Funksteuerung des RP6, einem Display und einer Kamera.
Zu Lynx6 denke ich bin ich auf dem richtigen Weg, sonstige Hilfe bitte im vorigen Thema lesen und posten. Display anschliessen sollte machbar sein und Kamera brauche ich einfach ein eigenes Funkkamerasystem um die Bilder auf den PC zu übertragen.
Jedoch ist das mit der Funksteuerung des RP6 ziemlich schwierig für mich. Ich habe mal das RN-Funk angeschaut oder das RN-Mega128Funk, dort kann man aber nur über RN-Bootloader vorgefertigte Befehle an den RP6 schicken. Ich möchte den RP6 aber echtzeit über Funk steuern (Cursor oder Joystick). Kann mir da bitte jemand weiterhelfen.
Wie schliesse ich das RN-Funk am PC an?
RN-Funk oder RN-Mega128Funk?

PS: Ich bin Anfängerin!

Danke für jede Hilfe!

Gruss Claudia

Fabian E.
19.06.2009, 18:24
Hallo Claudia,

ich bin grade selber dabei mir soetwas zu bauen, allerdings brauche ich dafür noch etwas Geld.
Ich habe mir überlegt, dass man die RN-Funk-Module als Ersatz für das 10-polige Kabel zwischen USB-Interface und RP6 nimmt. Der sind die TX und RX Leitung drin. Und diese Leitungen sind ja grade das wichtige. Heißt so viel wie, dass man nur die RX und TX Ports der RNs mit USB und RP6 verbinden muss und schon hat man eine Verbindung.

Zum Steuern habe ich mir ein Programm geschrieben, welches Sensorwerte anzeigt und den RP6 steuern kann.

Fabi

cmani2009
19.06.2009, 23:48
Danke Fabi!
Cool hast du gleiches vor wie ich!

Ich denke ich werde um die Sache zu vereinfachen, das USB-Interface auf den RP6 montieren und ein Funkmodule, welches ein USB Kabel ersetzt benutzen. So ist es als wäre der RP6 am PC direkt angeschlossen, also sehr geringe Fehlerwahrscheinlichkeit.

Jedoch brauche ich unbedingt Hilfe, um den RP6 echtzeit zu steuern.
Kannst du mit deinem Programm direkt in den Bootloader eingreifen oder wie machst du das?
Geht das alles Echtzeit?
Steuerst du den RP6 mit den Cursor-Tasten?
Ich möchte den RP6 wie mit einer Fernsteuerung mit den Cursor-Tasten echtzeit steuern.
Ist dein Programm OpenSource?
Ist es in C?
Währe cool wenn ich das auch verwenden könnte, da ich nicht so viel Ahnung habe vom Progn.


Ich währe froh wenn du mich auf dem Laufenden halten könntest und entschuldige die vielen Fragen.
Auch über die RN-Funk, wenns klappt brauche ich auch die.
Auch sonstige Anleitungen sind erwünscht!
Ich bin für jede Hilfe dankbar!

Gruss Claudia

Fabian E.
20.06.2009, 13:57
Hast du denn mal nachgesehen wie weit so ein USB-Ersatz funkt? Und wie teuer das ist? Wen ich das mit RN-Funk machen würde käme ich so auf insgesamt 150€...

Zur Steuerung: Ich habe auf der M32 ein eigenes Prorgamm von mir laufen, das Befehle vom PC entgegen nimmt. auf dem RP6 läuft das Slave-Programm, das nimmt halt die Befehle von der M32 entgegen. Prinzipiell geht das auch ohne die M32, müsste man nur das Programm ein wenig umschreiben und anpassen. Das Programm auf dem PC ist zwar nicht OpenSource, aber auch nur weil noch keiner danach gefragt hat ;) Wenn du möchtest kannst du das gerne haben. Das ist allerdings in C# geschrieben. Gesteuert wird entweder über die Pfeiltasten oder einzelne Regelungen der Motorendrehzaheln. Das Programm zeigt auch massig Sensorwerte wie zB. die Geschwindigkeit, den Motorstrom, den PWM-Wert, die Lichtsensoren,.... an. ALso eigentlich sämtliche Werte die mir RP6 und M32 liefern lönnen.W
Was leider über das RN-Funk meiner MEinung nach nicht klappen würde, wäre eine Programmierung über Funk, da so weit ich weiß der RST Pin bei den Modulen fehlt.

Aber das wäre nicht soooo schlimm.

Liebe Grüße,

Fabi

cmani2009
20.06.2009, 14:48
Hallo Fabi

Ich habe mich mal nach den USB-Funk erkundigt.
Viel zu teuer! Ca. 300€ pro Stück, also 600€ für eine Strecke.
Ich werde die RN-Funk benutzen.
Meiner Meinung nach wie folgt:
RP6: Anschlüsse RX/TX/GND -> RN-Funk: Anschlüsse TTL RS232 -> RN-Funk -----> RN-Funk -> RN-Funk: Anschlüsse TTL RS232 -> RP6 USB Interface: Anschlüsse RX/TX/GND -> RP6 USB Interface -> PC
Sollte gehen oder?
TTL RS232 ist schon richtig oder? Nicht RS232 PC1 oder?
Ich werde auch ein M32 Board kaufen, somit könnte ich genau das gleiche Programm benutzen wie du.
Das man nicht über Funk Progn kann ist ja nicht so schlimm.
Ich wäre seeehr froh, wenn ich dein Programm benutzen könnte.
Wenn du mir auch noch helfen könntest mit dem M32, dass es mit deinem Programm funktioniert.
Cool wäre eine kurze Anleitung über den Aufbau und Verknüpfung deines RP6 und über die Benutzung des Programms, so könnte ich deinen RP6 klonen O:) .
Falls du nicht willst das ich dich kopiere verstehe ich das!
Aber ich bin nun mal Anfängerin und so geht es am Einfachsten, zumal wir das gleiche Ziel haben.

Wenn du Lust hast mir bei meinem zweiten Problem zu helfen, findest du es unter dem Titel: RP6 und Lynx6. Dort ist ein ähnliches Problem.

Danke für jede Hilfe!

Gruss Claudia

Fabian E.
20.06.2009, 15:04
Ja, sollte so gehen, du musst halt die 5V Anschlüsse nehmen, wie die genau heißen weiß ich jetzt grade nicht, steht aber ja in der Doku. Und halt jeweils die RX, TX Anschlüsse vertauschen, also immer Rx mit TX zusammen stecken. Welches BS hast du denn, bzw. welche .NET Version hast du bei dir installiert? Das bräuchtest du dann nämlich noch, ist sowas wie die Java-Runtime nur eben für C#.
Prinzipiell brauchst du keine Hilfe zum Aufbau oder so, nur auf den RP6 das Beispiel Slaveprogramm drauf, auf die M32 irgendein Programm, dass meine .c Dateien mitbenutzt und in der Hauptschleife nen Befehl aufruft. Zusaätzlich kann mein Programm noch acht Servis steuern, die ich für einen Arm verwnede.

Fabi

cmani2009
20.06.2009, 15:25
Gut dann wäre das Verbinden schon mal klar.

Ich benutze als BS Ubuntu 8.1O. Sollte das mit deinem Prog nicht gehen habe ich als 2.BS XP drauf. Welches .Net Framework weis ich gerade nicht. Mit Java-Runtime sollte gehen.
Wenn du gerade weist wo zu downloaden, wäre ich froh, für den Fall....

Das mit den Servis passt mir sehr gut in den Kram. Hast du diese am M32 angeschlossen?
Und das M32 hast du auch normal am RP6 angeschlossen?

Entschuldige noch mal der Nachfrage aber vom Progn habe ich wirklich keine Ahnung.
Das Slaveprogramm läuft auf dem RP6 und ist standardmitgeliefert, richtig?
Welches Programm benutz deine .c Dateien mit, hast du da ein Konkretes?
Dein Programm muss ich auch auf das M32 laden oder?
Ist dein Programm eigenständig auf dem M32 oder wird es integriert?
Hat dein Programm eine GUI oder wie funktioniert das auf PC Seite?

Wie du siehst brauche ich doch einige Hilfe, ich bitte da um Verständnis, aber wenn du keine Lust mehr hast verstehe ich das auch.

Danke!

Gruss Claudia

Fabian E.
20.06.2009, 16:28
Also, du wirst dann wohl XP nehmen müssen ;) Lad dir mal Das .NET-Framework 3.5 runter. Link: http://www.microsoft.com/NET/ und dann Install now.
Servos sind an der M32, ja, da sind ja genug freie Ports. Und ja, M32 auch ganz normal am RP6. Slave das mitgelieferte Besipiel Programm genau. Dazu kannst du dir auch mal die Beispiele zur M32 ansehen, da wird das auch gemacht. Da steuert dann die M32 den RP6. Genau das mache ich auch, nur mit einem anderen Programm auf der M32. Du kannst dir irgendein Programm schreiben was meine Dateien benutzt, im Extremfall eben eins was nur meine Methoden aufruft. Aber prinzipiell könntest du auch noch implementieren, dass der RP6 von manueller auf automatische Steuerung umgeschaltet werden kann oder so.
Auf dem PC ist es eine nette GUI, ja ;)

Fabi

cmani2009
20.06.2009, 21:14
Danke Fabi!

Langsam bekomme ich Licht im Dunkeln.

Framework werde ich runterladen und mir dann mal die RN-Funk bestellen.

Du schreibst: "Nur mit einem anderen Programm", mit welchem denn?
Ich möchte den RP6 auch vom M32 aus steuern.

Das mit dem "Du kannst dir irgendein Programm schreiben was meine Dateien benutz" ist ein Problem, da ich fast keine Ahnung vom Progn habe.
Wäre es möglich, dass du mir eine Art Kopie deines Inhalts auf dem M32 geben würdest, dann könnte ich das Ganze per Bootloader auf meinen M32 laden. Somit wäre dein Programm, sowie die Steuerung des RP6 vom M32 schon realisiert.
Sollte gehen oder?

Zusammenfassend:
- Ich verknüpfe den RP6 mit dem RN-Funk über TTL, auf PC Seite das RN-Funk mit dem USB-Interface und PC
- Ich verknüpfe das M32 mit dem RP6
- Ich lade auf den RP6 das Slaveprogramm
- Ich lade eine Kopie deines M32 (dein Programm und Steuerung des RP6) auf mein M32
- Ich schliesse meine Servos am M32 an
Jetzt kann ich den RP6 mit deinem Programm vom PC aus steuern und die Servos bedienen
Wäre toll wenn das so gehen würde!

Brauche ich für dein Programm das USB-Interface überhaupt oder bist du direkt mit RX/TX/GND über einen RS232 Stecker auf den PC?

PS: GUI = Super

Danke!

Gruss Claudia

Fabian E.
21.06.2009, 00:56
Prinzipiell kann ich dir auch einfach das Hex-File vom M32 Programm schicken, das hilft dir aber natürlich nicht das Ganze zu verstehen ;)
Ich schick dir einfach mal alles.
Trotzdem solltest du dich mit dem Code auseinandersetzen und ihn verstehen, ist auch eigentlich nicht sonderlich kompliziert.
Nur das Makefile müsstest du halt anpassen, oder die selbe Ordnerstruktur aufbauen die ich benutze. Ums zu testen kannst du aber auch einfach das Hex-File nehmen. ;)
Eine Funktion meines Programms würde allerdings wegfallen, nämlich der Resetbutton, der bräuchte halt den RST-Pin aber den gibts bei Funk ja leider nicht. Ein Reset könnte man zwar softwareseitig implementieren denke ich, aber das hilft nicht wenn das Programm auf der M32 abstürzen sollte ;)
Für das große Programm müsste ich dann noch ein paar Änderungen vornehmen, damit das klappt, dein Com-Anschluss heißt sicherlich anders als bei mir. Sollte aber eigentlich kein Problem sein.
Eigentlich brauchst du für mein Programm das Interface nicht, es machts aber einfacher, da ich bei mir keinen Com-Port mehr habe auf dem Mainboard ;)
Sag einfach Bescheid wenn du alle Teile hast, dann schick ich dir den Kram.

Fabi

cmani2009
22.06.2009, 10:47
Ja das wäre sehr nett.

Ich möchte mich unbedingt mit dem Code auseinandersetzen, jedoch ist das einiges einfacher und interessanter in der Praxis und anhand von Beispielen.

Wegen der Ordnerstruktur kannst du mir ja dann den Pfad schnell mitteilen, machts am einfachsten.

Ja RST brauche ich nach meinem wissen nicht und in denn seltenen Fällen wo doch, schliesse ich den RP6 direkt an.

Ich habe auch keinen RS232 mehr (leider), benutze aber ein RS232/USB Kabel, das von robotikhardware.de. Aber beim RP6 werde ich woll das USB-Interface benutzen.

Ich werde nun mal das ganze bestellen (kann eine Weile dauern) und dir dann Bescheid geben und wegen Com kann ich ja ausprobieren, sollte es nicht gehen, kriegen wir das schon hin.
Du hast ja meine E-Mail per PN erhalten, falls du noch Fotos von deinem RP6 hast oder so O:).
Dann bis dann und viel Dank nochmals!

Gruss Claudia

RobbyFan
17.03.2010, 16:14
hallo,
kannste die GUI zum Download reinstellen link.....
ich hab schon G verwendet aber nichts gefunden

Gruss Marcel

cmani2009
17.03.2010, 16:58
Kannst du dich bitte mit Fabian E. in Verbindung setzten.

Ich habe die Idee aus Zeitgründen leider nicht mehr weiter verfolgt.

Falls du die GUI von ihm erhälst, kannst du den Link ja hier posten.

Danke

Fabian E.
14.04.2010, 22:18
Die GUI mit dem passenden Programmen für RP6 und M32 gibts hier (https://www.roboternetz.de/phpBB2/viewtopic.php?t=53687) in einem eigenen Thread.

taldres97
31.05.2010, 14:55
hallo coole sache
heute habe ich ein thema geöffnet ob man den rp6 über einen joistick steuern kann (ich wusste nicht das jemand dieses thema schon angesprochen hat)und dann wollte ich jetzt mal frage kann man den rp6 über einen joistik steuern und mit nen zweiten joistik zwei servos und kannst du mir ein programm schreiben weil ich kann das noch nicht so

Mc Delta
31.05.2010, 15:02
Wie soll er dir ein Programm schreiben, wenn er keine Informationen hat. Was für einen Joystick verwndest du? Was willst du damit anfangen? Und wieso brauchst du (rein theoretisch) einen 2. Joystick der RP6 währe (denke ich) schon mit einem maßlos übervordert.

taldres97
31.05.2010, 15:53
der zweite dient für 2 servos

Otzigeck
04.06.2010, 13:40
Hallo zusammen, Hallo Fabian E.

wie einige bereits wissen werd ich für mein Abschlussprojekt einen RP6 mit Kamera ausstatten, welcher eine Routine abfährt und sich über Nunchuck bzw. anders steuern lassen soll.

Jetzt sind wir beim "anders" =)

Ich wollte im speziellen dich Fabian fragen welche Funkmodule du genau verbaut hat, damit ich den RP6 live vom PC aus steuern kann. Damit würdest du mir einen Teil der Arbeit abnehmen, die sowieso schon viel zu groß ist. =( Ich hoffe du kannst mir bei diesem teil des Projektes weiterhelfen.

Grüße Daniel

Fabian E.
04.06.2010, 15:28
Das ist ganz einfach. Wenn du die Funkmodule erst mal zusammengelötet hast, dann ist das Schlimmste schon geschafft ;)
Ich habe folgende Funkmodule und -platinen verwendet:
RN-FUNK (http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=76&products_id=67)
RT868F5 (http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=76&products_id=64)
Davon brauchst du jeweils 2. Also nicht ganz billig der Spaß ;)
Mit diesen Modulen kannst du einfach das Kabel zwischen RP6 und dem USB-Interface "ersetzen".
Jeweils ein Modul an ein Ende und fertig.

Otzigeck
04.06.2010, 16:27
Danke für die schnelle Antwort.
Löten ist kein Problem für mich \:D/ aber die Anschlussweise der RN Funkmodule ist mir noch nicht gaanz geläufig (sry dafür, hab ihn gerade erst bestellt und kommt erst nächste woche =( ).

Um das USB Interface mit den RP6 zu verbinden hab ich ein zehnpoliges Flachbandkabel. Richtig bis jetzt?

Wo schließe ich jetzt dies Funkmodule an damit ich das Flachbandkabel ersetzen kann?
GND vom USB Interface mit dem GND am PCRS232 GND Pin der Platine, TX vom Interface mit tx der PC RS232 Platine und das selbe mit RX?

Auf RP6 seite alles mit TTL RS232?

Das mit dem teuer ist bei mir relativ...Da es für mein Maturaprojekt ist wird es wohl wahrscheinlich die Schule bezahlen, aber es sind ja noch andere Komponenten anzuschaffen wie Funkkamera etc. \:D/ \:D/ \:D/ \:D/

Fabian E.
04.06.2010, 16:46
Also erst mal eins: RN-FUNK besitzt ja zwei UART-Schnittstellen. Bei der einen ist ein Pegelwandler auf PC-Niveau dabei.
Das kannst du NICHT gebrauchen.
Das USB-Interface hat nämlich die 5V-Pegel. Also suchst du dir aus deinem Flachbandkabel GND TX und RX und klemmst diese an den entsprechenden Anschluss auf der RN-FUNK.
Das steht aber alles inder Anleitung dazu.
Wichtig: TX mit RX und RX mit TX verbinden.

Otzigeck
05.06.2010, 09:28
ok ich werds dann mal versuchen sobald ich die Programmiersprache beherrsche.

Danke nochmals