PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Roboter mit Notebook



JohnMcClane
22.08.2004, 09:23
Da ich auf meinem Roboter recht viel Platz haben werde, habe ich mir überlegt, nicht den Umweg über einen anderen Prozessor zu wählen, sondern direkt den Rechner zu programmieren,
wie realisiert man jetzt genau die Ansteuerung von Motoren und noch viel wichtiger, wie liest man die Sensoren aus???
Gibt es da fertige Boards? Am liebsten wär mir natürlich USB, weil mein Laptop nichts anderes hat, aber man könnte ja noch mit nem adapter aus seriell umstellen...
Schießt los....

Xeus
22.08.2004, 10:10
Welche Sensoren willst du denn verwenden, was soll dein Roboter mal können?
Ich glaube, dass du für USB auf jedenfall noch eine I/O Platine bauen musst. Für die Sensoren auswertung wirst warscheinlich auch noch ein paar AD Wandler brauchen.
Warum machst du es nicht gleich mit einem Mikrocontroller, denn kannst ja dann auch über UART mit einem Laptop anschließen.
Wär warscheinlich die einfachste Lösung.

gruß

xeus

Xeus
22.08.2004, 10:12
Sorry wegen den ganzen Rechtschreibfehlern :cheesy:

22.08.2004, 10:24
Hat dein Laptop denn kein Parrallelport??
Der Par.Port ist doch er beste und einfachste...
mfg
Raphael

JohnMcClane
22.08.2004, 10:48
parallel wird auch kritisch, denn das is ein Tablett PC.
Und es is echt einfacher von man noch nen Mikrokontroller dazwischen schaltet??? Sowas wie C-Control II??? Die hat nämlich noch nen Freund von mir. Und dann könnte man aber trotzdem direkt die Auswertungen mit dem PC machen( sorry für die dumme Fragerei :-) )

Xeus
22.08.2004, 10:58
Ja, dazu brauchst du aber ein UART für die USB Schnittstelle.
Nein wart mal, eigendlich kannst du ein Ganz normales UART nehmen(Seriellerport) und dann über einen USB to Com an den USBport anstöpsln.
So einen Adapter gibts glaub ich beim Conrad.

JohnMcClane
22.08.2004, 12:11
UART??? nixraff

Xeus
22.08.2004, 14:42
Alle Mikrocontroller haben eine UART schnittstelle. Dies ist eine serielle Schnittstelle, sie dient dazu, mit dem Mikrocontroller über ein Terminalprogramm zu kommunizieren.

Xeus
22.08.2004, 14:44
Hab mir mal gedanken gemacht.

Willst du die Motoren nur ein und ausschalten, oder sollen sie auch in der geschwindigkeit steuerbar sein?

JohnMcClane
22.08.2004, 16:57
Geschwindigkeiten sollten möglichst auch sein, denn nur an oder aus is irgendwie nicht das was ich mir vorstelle...
Und welche Programmiersprache? C kann ich bisher

Xeus
23.08.2004, 19:35
OK mit Hilfe eines Digital/Analogwandlers und einem Operationsverstärker, drei Widerständen und einem Transistors ist möglich die Drehzahlen eines Gleichstrommoters zu steuern

mfg

xeus

recycle
23.08.2004, 20:49
Da ich auf meinem Roboter recht viel Platz haben werde, habe ich mir überlegt, nicht den Umweg über einen anderen Prozessor zu wählen, sondern direkt den Rechner zu programmieren,


Das geht sicherlich, aber ich glaube nicht, dass das irgendwelche Vorteile hat. Ich würde den Roboter mit einem Microcontroller aufbauen.

Wenn dessen Rechenleistung dann nicht ausreicht, kannst du den Microcontroller ja immer noch über einen Seriell->USB Adapter mit dem Notebook verbinden.
Dann kannst du den µC als Treiber für deine Hardware nehmen und das Notebook macht den Rest.

JohnMcClane
23.08.2004, 21:27
is glaube ich echt die beste Lösung...
Nur welchen soll ich nehmen??? Aber die Frage stell ich in nem anderen Beitrag

manu
25.08.2004, 13:39
Guck mal bei ELV: USB-Experimentier- und -Interface-Board
Art.-Nummer 68-545-04.Wie der Name schon sagt,geht es mit USB
Manu

toemchen
25.08.2004, 16:03
Also ich bin ja ein großer Freund der Idee "PC steuert Roboter". Da fühlt man sich beim Programmieren zuhause, man kann mit Speicherplatz herumaasen, man kann ganz einfach kleine Spielereien wie Sprach- oder zumindest Soundausgabe machen, auf dem Bildschirm kann jede Menge Debug-Information durchlaufen, während der Robbie läuft - bis hin zu einer graphischen Wegdarstellung usw.
Also nur Mut, laß den Laptop das Gehirn sein und such die einfachste Verbindung zu den Motoren. Das kann diese USB-Karte sein. Ich hab' sie mir gerade bei Conrad angeschaut, wird diesselbe sein wie bei ELV. Sie hat zwei Analog-Ausgänge (die als PWM funktionieren), damit bekommst Du die Geschwindigkeitsregelung der Motoren hin. Zwei digitale Ausgänge benutzt Du für die Richtungsumschaltung. Natürlich mußt Du noch die Leistungselektronik stricken, sieh Dich hierzu mal unter dem Stichwort "H-Brücke" im Forum um. Und ein paar digitale Eingänge hat die Karte auch noch, damit kann der Robbie mithilfe von Stoß-Tastern zumindest schon mal merken, wenn er anstößt und umdrehen.

Freiheitspirat
25.08.2004, 16:23
Ich habe die Platine, ganz nette Spielerei, ist aber wirklich nur zum Experimentieren.
Der PIC ist fest programmiert und es wird kein Sourcecode rausgegeben (habe ich schon verucht), keine Änderungs- / Erweiterungsmöglichkeit !
Dabei ist genau der programmierte PIC das Interessante.
Man kann nur die Funktionen einer LIB benutzen und damit die Ports steuern.
Als IO-Basis für einen Roboter würde ich das Board so nicht empfehlen.

26.08.2004, 12:35
H9i,
einfahcste Lösung:
Hol dir ein Notebook mit allen sinnvollen Schnittstellen wie LPT und seriell.
Solche notebooks kriegt man bei ebay für paar eruo..z.b. mit 50mhz oder so.
mfg

thille
26.08.2004, 19:35
H9i,
einfahcste Lösung:
Hol dir ein Notebook mit allen sinnvollen Schnittstellen wie LPT und seriell.
Solche notebooks kriegt man bei ebay für paar eruo..z.b. mit 50mhz oder so.
mfg

So ein uraltes Teil hab ich mir mal genau für diesen Zweck besorgt, und bin gar nicht so richtig begeistert: Die Schnittstellen an den ganz alten Notebooks sind nicht das Wahre, die Parallele Schnittstelle ist nur in einer Richtung betreibbar (PC->Drucker) und funktioniert demzufolge nicht als Eingang und um an die serielle Sensoren dranzuhängen, müssen die einfachsten Sachen ja irgendwie ein verständliches serielles Signal produzieren. Alle möglichen Erweiterungen: Fehlanzeige. Bloß gut, daß die Fehlinvestition nur etwa 10 Oiro gefressen hat.

Gruß

Torsten

recycle
26.08.2004, 22:33
Hol dir ein Notebook mit allen sinnvollen Schnittstellen wie LPT und seriell.
Solche notebooks kriegt man bei ebay für paar eruo..z.b. mit 50mhz oder so.


Und was hat er dann davon? Mit viel Bastelei kann er dann ein paar Ausgänge über LPT schalten.

Wenn er sich für die selben "paar Euro" einen AVR-Controller mit Grundschaltung kauft, hat er wesentlich mehr ein- und Ausgänge, ausserdem PWM-Ausgänge, A/D-Eingänge usw.

Wenn man einen Microcontrolller verwendet, schliesst das doch nicht aus, dass man trotzdem einen PC verwendet. Man kann ja einfach beides über die serielle Schnittstelle verbinden, den PC die Rechnerei machen lassen und der Microcontroller führt nur die Befehle aus die er vom PC bekommt.



Also ich bin ja ein großer Freund der Idee "PC steuert Roboter". Da fühlt man sich beim Programmieren zuhause,

Naja, ich bezweifle, dass ich meine gewohnte Arbeitsumgebung auf einem uralten Notebook für ein paar Euro von Ebay ans laufen bekomme.
Vielleicht bekommt man da DOS oder mit etwas Glück noch Win95 ans laufen, mit meiner gewohnten PC-Umgebung hätte das dann aber nicht viel zu tun.



man kann mit Speicherplatz herumaasen, man kann ganz einfach kleine Spielereien wie Sprach- oder zumindest Soundausgabe machen,

Dass das auch für eine uraltes Notebook von Ebay zutrifft bezweifle ich. Auf einem 50 MHz Notebook kann man sich mit DOS rumschlagen und da Grafik, Sound oder sogar Sprachausgabe dürfte eng werden.



auf dem Bildschirm kann jede Menge Debug-Information durchlaufen,

Stöpsel deinen Microcontroller an die serielle Schnittstelle deines PC, mach starte ein Terminalprogramm und alles was du auf dem µC mit "Print" ausgibst läuft munter über deinen Bildschirm.



Also nur Mut, laß den Laptop das Gehirn sein und such die einfachste Verbindung zu den Motoren.


Diese einfachste Verbindung ist meiner Meinung nach ein Microcontroller und die serielle Schnittstelle.
Wenn man das dann mit seinem PC Verbindet, kann man tatsächlich in der gewohnten Arbeitsumgebung programmieren, mit Resourcen aasen und hat genug Rechenleistung für Sprachausgabe, Sound und irgendwelchen grafischen Schnickschnack.

JohnMcClane
27.08.2004, 07:50
Vielen Dank für die Aussage, ich werds mit nem Mikrocontroller realisieren!

toemchen
27.08.2004, 11:07
Ich ging übrigens von dem beschriebenen Notebook aus, das mit lediglich einer USB-Schnittstelle einer der moderneren zu sein scheint. Da treffen viele der in Frage gestellten Aussagen doch wieder zu.

"Stöpsel deinen Microcontroller an die serielle Schnittstelle deines PC, mach starte ein Terminalprogramm und alles was du auf dem µC mit "Print" ausgibst läuft munter über deinen Bildschirm." Es sei denn, das Terminalprogramm ist falsch eingestellt, das Kabel nicht richtig, das Roboter-Betriebsprogramm auf dem Notebook blockiert alles usw.

"Wenn man das dann mit seinem PC Verbindet, kann man tatsächlich in der gewohnten Arbeitsumgebung programmieren, mit Resourcen aasen und hat genug Rechenleistung für Sprachausgabe, Sound und irgendwelchen grafischen Schnickschnack." Mit der Einschränkung, daß der Roboter dann mit einer Nabelschnur herumläuft. Man möchte aber gerne eine eigenständige Einheit.

JohnMcClane
27.08.2004, 11:18
Daher wird das ganze auch mit nem Tablett PC arbeiten. und dann nehm ich halt nen Wandler, der mir die USB Schnittstelle entweder in Parallel oder Seriell umwandelt...