PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Roboter über PC steuern



jens84
29.06.2004, 19:47
Moin,
kann mir einer sagen wie ich ein Roboter über einen PC steuern kann?
Und am besten noch die Hardware und Software die ich dafür benötige.

NumberFive
29.06.2004, 23:21
Sorry das es dich jetzt erwischt. Aber kann nicht jemand mal einen Artikel
zu diesem thema schreiben ?

Das ist glaube ich der 30 Thread zu diesem Thema.
leider kann ich diesen Artikel nicht selbst nicht schreiben da den hinterher
nur ein ein geschränkter Nutzerkreis lesen könnte.

Der PC hat immer das problem mit der daten erfassung spricht es müssen immer Sensoren abgefragt werden und motoren gesteuern. Dafür ist ein PC nicht gebaut. Karten die in einen PC eingebaut werde und das leisten können was man braucht sind für Ottonormal nicht zu bezahlen.

Ergo mußt du die daten mit was anderem erfassen und die motoren mit was anderem steuern hier zu bittet sich ein MircoControler an. den muß man zwar auch programmieren aber wenn man ein PC als hirn hat ist das prg nicht so aufwendig da der Controler nur mittler sein muß. Einer standart PC software die den PC zu robotercontroller mach gibt es meines wissen nocht. Johannes, marten und ich versuchen die zur Zeit zu entwicklen und suche immer noch leute die dabei mit machen. wie das genau Funktionren soll wird in einem anderen Thread hier im Forum diskutiert. Unsere fortschritte sind gut aber fertig ist da noch nichts.

Da in meine Projekt auch ein avr vorkommt werde ich woll auch ein bsp. Prg für avr mit veröffendichen aber das dauert noch. Ein großese allgeimes problem gibt es noch was bis heute auch nocht nicht ohne große kosten gelöst ist. Das ist die Mobile spannungsversorgungen des PC's im roboter wenn es ein standart Board sein soll. Die erste version unseres Programmes wird es wohl für windows geben und später ein version für java die sollte dann auch unter linux tut. Aber ganz klar ohne Programmieren wenn auch nur in kleinen Teilen wird es nicht gehen.

Ein roboter ist kein winword installieren und gut. Es sei den du kaufst dir den Hund von Sony. Aber das ist ja nicht sin dieses Forums.

Ich hoffe es ist für dich nicht nur gemerker sondern es sind auch genug infomationen für dich dir die dir weiter helfen

Gruß

30.06.2004, 12:23
Ganz so kompliziert ist es nicht:

Auch mit dem PC kann man steuern und messen, ohne Karten einzuschieben! Die serielle Schnittstelle kann z.B. von Excel aus mit Visual Basic angesteuert werden.
Um genügend viele Ein-/ Ausgänge zu haben, kann man mit 8-Bit Expandern arbeiten.

Wie so etwas geht, kann man in dem meiner Meinung nach guten Buch von B.Kainka, Elektronik am PC, ISBN 3-89576-113-3, Elektor-Verlag nachlesen (CD-ROM mit Quelltext + EXE-Dateien inklusive.

Wie man Excel + Visual BAsic + Messen unter einen Hut bringt, zeigt das Buch von H.J.Berndt/B.Kainka, Messen,Steuern und Regeln mit WORD und EXCEL, ISBN3-7723-4094-6, Franzis-Verlag, CD-ROM inklusive

Speziell im 1.Buch erhält man viele praktische Schaltungen + Programme, mit denen man AD- Wandlungen, Steuerungen usw. bauen kann.
Übrigens ist dort auch viel von RC5 Sendern und -empfängern die Rede!
Das könnte nützlich sein für viele User, weil diese Fragen immer wieder kommen.

Wer das Prinzip begriffen hat, kann dann (ziemlich) leicht mit einem AVR + Bascom seine Programme umsetzen!

Gönnt Euch mal ein oder zwei gute Bücher, es lohnt sich!!!

Gruß, Harald.

RCO
30.06.2004, 17:49
Also ich hab bestimmt schon 3 Threads nur zu diesem bzw. ähnlichen Themen ins Netz gestellt un bin jetzt schlauer.

Ich mache Alles mit Delphi, wenn es dich interessiert, sag bescheit.
steuer damit sowohl serielle als auch parallele Schnittstelle an, am anderen Ende sitzt C-control bzw. ne Realiskrate über den Druckerport.

NumberFive
30.06.2004, 18:57
Hallo

das man mit dem Parallel und der Serialen alleine eine Robotersteuerung bauen kann. halt ich für nicht möglich. wenn da noch ein CControl ist gaht es muß ja nicht avr sein. das habe ich ja nicht behautet. Aber wie mann zwei Sensoren auslieset un gleich zeitig noch motoren steuert ohne karten in oder an den PC zu machen das soll bitte jemand mal beschreiben. es sein den natürlich das man motoren nur ein und ausschaltet und die sensoren taster sind. da geht mit serial oder parallel keine frage. bleibt aber immer nocht das problem der stromversorgung des PC's und der software auf dem PC den die muß man programmieren
so oder so. Komplex oder einfach egal aber man muß sie schreiben.

RCO:
wie verhinders du das bei einschlaten des recner der roboter komische sachen macht ? reset auf der lpt und der serialen schnittstelle ?
wie machst du die strom versorgung ?

Gruß

RCO
30.06.2004, 19:18
Sorry, bin davon ausgegangen, dass der Roboter über den PC gesteuert werden soll. ICh bin nicht davon ausgegangen, dass der PC im Roboter integriert sein soll.

Das Problem mit den "komischen Sachen machen beim Einschalten" habe ich auch, will es mit nem Zeitrelais lösen, dass das Einschalten der REaliskarte verzögert, bis die Ausgänge Sinnhaft gesetzt sind.

Über die Stromversorgung gibts hier noch inrgendwo nen Thread, find ich aber Grade ncicht, hieß 230 Volt-Akku oder so, glaube ich.

C-control soll ja auch nur Steuerbefehle des PC unsetzen, dazu kann man die Serielle Schnittstelle gut nutzen, außerdem noch gut zurücksenden.

Gruß

MrNiemand
30.06.2004, 19:21
so hab mal ein kurzes Tut geschrieben, das auch in Zukunft erweitert werden soll: http://www.youwon.de/bot/tut1.htm

Bitte fleißig Meinungen dazu posten, und auch wer genauere Fragen hat nicht zurückschrecken, erweitere es gerne!!!!

Albanac
30.06.2004, 20:54
Tatssächlich gibt es viele Umspannungsbords die 12V in alle von ATX Boards benötigten Spannungen Konvertieren (12, 5, 3.3 und -5 Volt soweit ich weis.

Die Stromversorgung ist denke ich ein eher kleines Problem

Die Steuerung der Motoren/auslesen der Sensoren ist über ein normales RNBFRA bzw RN Control über RS232 meines wissens nicht sehr kompliziert

der AVR sendet dann eben immer die aktuellen Sensordaten bzw bekommt vom Computer daten wie er die Motoren ansteuern soll

zwar gibts immer ne leichte verzögerung aber wenns unbedingt sein muss kann man sich ja auach zum bleistift eine zweite serielle schnittstelle über PCI oder usb dazuholen
die verzögerung ist aber meines erachtens vernachlässigbar

Epia Boards gibts schon ab ca 15 Watt die billigeren brauchen so ca. 20-30 (mit Flashkarte auf IDE Platte) leider nicht ganz billig
Board (je nach ausführung, prozessor): 90-150 €
Ram kommt meistens nochmal extra
Netzteil für 12V:
http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&category=38857&item=3488548708&rd=1
ca. 50€

(da ist erstmal sparen angesagt :-()

irgendwo hab ich so ne seite gefunden wo man den strombedarf eines bestimmten boards berechnen kann
link kommt später noch

:edit Preise und Links aktualisiert

01.07.2004, 08:56
Noch einmal : PC zur Steuerung eines Roboters - Klappt doch!

Was braucht man an EIn-/Ausgabebits?
2 Motoren vor/zurück = 4 Bits aus
z.B. 1 Servo = 1 Bit aus
z.B. 1 Magnet = 1 Bit aus

Digitalsensoren (Schalter, Lichtschranke ..): Je 1 Bit ein
ADC-Wandler, z.B. TLC549 2 Bits aus, 1 Bit ein

Macht zusammen 8 Bits aus, ...?... Bits ein.

Was haben wir im PC?
Serielle Schnittstelle: 3 Bits aus, 4 Bits ein

Reicht nicht, also erweitern:

1.Möglichkeit:
Parallele Schnittstelle dazunehmen: 8 Bits aus, 3 Bits ein: Reicht!!!

2. Möglichkeit:
Mit zwei Schieberegistern 4021 und 4094 serielle Schnittstelle erweitern auf 8x aus und 8x ein, zusätzlich damit TLC 549 arbeiten lassen.
Konkrete Schaltung + Visual Basic Programm findet man bei Kainka, Elektronik am PC (s.o), Platine ggf. bei Elektor, aber die Schaltung ist leicht selbst zu basteln!

Wer das erfolgreich bewältigt hat, bekommt Appetit auf mehr und wird -schon damit es ohne Kabelsalat geht- auf MC umsteigen, so wie ich!

Wer lieber Delphi oder Programmiersprache xyz nehemn will, tut das gerne!

Aber noch einmal: Es geht mit dem PC, wenn man nicht gerade den Non-Plus-Ultra Roboter haben will.

Im übrigen bin ich nach der Startfrage davon ausgegangen, dass hier ein Einsteiger nachfragt. Dieser fährt mit seinem vertrauten PC zu Beginn sicher gut, zumal alles vorhanden ist (Z.B. ist Visual Basic fix und fertig installiert vorhanden, wenn man Excel auf dem PC hat). Die Treiber für Motoren, Sensoren etc muss man in jedem Fall gesondert haben.

Also, nichts für ungut, manchmal gehen Dinge auch anders als ein eingefleischter AVR-Nutzer sich (noch) vorstellen kann.

Mit freundlichem Gruß, Harald.

Rodney
01.07.2004, 13:28
Dass Visual Basic bei Exel bei ist, ist nich ganz richtig:
Es handelt sich um VBA, ein VB-Abklatsch (Makrosprache)

Ist jedenfalls bei meiner Version so. (Office 2002)

Aber holt euch am besten, am Anfang ein ordentliches C Buch und packt damit die ganze Sache an. Ist zuerst schwerer, aber wenn mans einmal kann hat man viele Vorteile, da man ziemlich hardwarenah programmieren kann.

-MFG, Rodney

Albanac
01.07.2004, 14:34
Also, nichts für ungut, manchmal gehen Dinge auch anders als ein eingefleischter AVR-Nutzer sich (noch) vorstellen kann.

Ich würde sagen für den Anfänger ist ein bischen Basic (edit: auch hier ist natürlich schon C verwendbar) auf dem RN Control / RNBFRA einfacher als selbst Motortreiber o.ä. zu bauen.

VBA in Excel ist als Scriptsprache (Word hat ja auch VBA) da. Wenn man wirklich programmieren will, kommt man um C oder Delphi (zieh ich persönlich vor) nicht drumrum.

01.07.2004, 18:37
Kurzer Nachklapp zu Visual Basic und VBA: Die wesentlichen Eigenschaften stimmen überein und ich habe bisher bis auf kleine Ausnahmen alle VB-Progs in VBA/ Excel übertragen können.

Andere Sprachen sind natürlich prima, aber wenn man anfängt oder BASIC schon kann, hat man schnelle Erfolge und mit denen wächst bekanntlich die Lust auf mehr, oder?

Harald

Rodney
01.07.2004, 19:45
Kurzer Nachklapp zu Visual Basic und VBA: Die wesentlichen Eigenschaften stimmen überein und ich habe bisher bis auf kleine Ausnahmen alle VB-Progs in VBA/ Excel übertragen können.

Andere Sprachen sind natürlich prima, aber wenn man anfängt oder BASIC schon kann, hat man schnelle Erfolge und mit denen wächst bekanntlich die Lust auf mehr, oder?

HaraldAber warum etwas lernen, was man eh irgendwann aufgibt? ( in absehbarer Zeit)

Ich habe selber so angefangen und bereue es ziemlich, ich würde sicherlich jetzt sauberer proggen wenn ich nicht mit Qbasic->VB->C eingesteigen wäre sondern direkt mit C.

recycle
01.07.2004, 20:05
1.Möglichkeit:
Parallele Schnittstelle dazunehmen: 8 Bits aus, 3 Bits ein: Reicht!!!

2. Möglichkeit:
Mit zwei Schieberegistern 4021 und 4094 serielle Schnittstelle erweitern auf 8x aus und 8x ein, zusätzlich damit TLC 549 arbeiten lassen.
Konkrete Schaltung + Visual Basic Programm findet man bei Kainka, Elektronik am PC (s.o), Platine ggf. bei Elektor, aber die Schaltung ist leicht selbst zu basteln!
...
...
Aber noch einmal: Es geht mit dem PC, wenn man nicht gerade den Non-Plus-Ultra Roboter haben will.

Im übrigen bin ich nach der Startfrage davon ausgegangen, dass hier ein Einsteiger nachfragt.


Es geht sicherlich auch ohne Microcontroller. Allerdings gehen die Probleme bei Möglichkeit 1 schon damit los, dass man noch irgenwas hinter den Parallelport schalten sollte (z.B. Optokoppler) um sich nicht bei jedem kleinen Missgeschick den Parallelport, bzw. das Mainboard zu zerschiessen.
Bei Möglichlkeit 2 geht es gleich mit Schieberegistern usw. los.

D.h. auch wenn man ohne µC über den PC steuern will, gehts gleich mit der Elektronik los und ich glaube nichtmals, dass die wesentlich unkomplizierter ist als z.B. eine AVR-Grundschaltung mit Max232 die man an die serielle Schnittstelle anklemmt. Eine AVR-Grundschaltung mit Max232 ist ja relativ schnell zusammengelötet und kostet nicht die Welt.

Damit hat man dann beide Möglichkeiten. Entweder man bleibt gleich beim Microcontroller, oder man schickt dem über die serielle Schnittstelle Befehle und der Microcontroller schaltet dann dementsprechend die I/Os ein- und aus. Die paar Zeilen Bascom Basic die man für die 2. Variante braucht, kann man sich relativ schnell in der Bascom-Hilfe zusammensuchen.

Ich glaube, dass viele Einsteiger nach der Möglichkeit über den PC zu steuern fragen, weil sie meinen, dass sei für den Anfang erst mal einfacher und unkomplizierter, und nicht weil sie wirklich unbedingt über den PC steuern wollen.

Ich finde es gut, dass du auch die Möglichkeiten wie es ohne µC geht mal beschreibst, würde aber trotzdem jedem Anfänger empfehlen sich die Lösung mit µC wenigstens vorher mal anzusehen.

NumberFive
01.07.2004, 22:16
Hallo,

schön das ich das mit meinem Beitrag was erreichen konnte. das mit den schiebe register geht bestimmt aber mal anz erhlich wie hoch willst du den daten transfer treiben das du schnell genung bleibst und vor allem das deine CPU nicht zu hundert 100% mit dem schreiben und lesen des IO beschäfitigt ist.

zweite Sachen die RN-Control kann man mittler weile auch aufgebaut kaufen oder man nimmt ein ander uController es gibt genung die fertig sind. dann ein paar sensoren dran und der roboter fährt.

Aber das mit uController oder selbst gebautest IO ist eigndlich auch egal.
Das Probelm was weiterhin bleibt ist das man muß programmieren oder
Kenn jeman ein software die man installiert und der Robi läuft ?

Die würde ich zwar gerne schreiben den das hätte bestimmt erfolg aber geben tut sie noch nicht. Mal sehen vielleicht gibt es sie ja bald *g*

Gruß

Albanac
02.07.2004, 12:34
Die würde ich zwar gerne schreiben den das hätte bestimmt erfolg aber geben tut sie noch nicht. Mal sehen vielleicht gibt es sie ja bald *g*

Das Problem ist das jeder Robi anders ist und nen anderen Zweck hat. Ohne die RN Boards gäbs nichtmal ne Normierte Ansteuerung.

Die eierlegende Wollmilchsau oder universallösung aller Software probleme wirds deshalb nie geben - aber macht das nicht gerade den Reiz daran aus?

MrNiemand
03.07.2004, 09:37
hm freilich geht es ohne jede art von uC aber: schieberegister sind nicht wirklich billiger als z.b. ein 90s2313! und was macht ihr wenn der pc mal probleme hat, der uC kann wenigstens schllimmeres vermeiden und grundfunktionen weiterlaufen lassen schieberegister können das ohne pc nicht mehr!

NumberFive
03.07.2004, 10:03
Die eierlegende Wollmilchsau oder universallösung aller Software probleme wirds deshalb nie geben - aber macht das nicht gerade den Reiz daran aus?


Das kann man auch zwei deutig verstehen. macht es den reis aus die Software zu bauen oder den reiz aus des roboters aus ?

MrNiemand du hast recht das bei schieberegistery das das größte problem ist. ich für mein person würde es auch nie so machen.
Aber das ist geschmaks sache. werde immer zwei rechner in ein robi
machen.

Gruß