PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Sehr schneller Linienverfolgungsroboter (Ideensammlung)



GoZu
26.07.2009, 02:01
Hi Leute,

ich möchte einen Roboter zur Linienverfolgung bauen. Dieser sollte natürlich ziemlich schnell sein... (später möchte ich ihn auch erweitern, sodass ich ihn über Funk steuern kann, aber dazu mache ich mir später Gedanken)

Ich möchte den Roboter mit Omniwheels bauen, allerdings drängt sich hier schon die erste Frage auf: Es wird ja vorgeschlagen immer 3 Omniwheels zu benützen, aber wäre es nicht auch machbar mit 6 Omniwheels? Bei der Variante mit 3 sind diese um 120° verdreht, sodass z.b. beim gerade aus fahren, nur mit 2 Motoren gefahren werden kann und diese auch nicht 100%tig ausgenützt werden (weil sie ja nicht gerade zur Fahrrichtung ausgerichtet sind). Bei der Variante mit 6 Omniwheels würden diese ja um 60° verschoben sein und dadurch könnte doch der Roboter viel schneller fahren, da sich das Gewicht auf 6 Räder verteilt, anstatt auf 3. Allerdings erhöht sich auch das Gewicht durch 3 zusätzliche Motoren sowie den Akkus...
Was haltet ihr davon?

Jetzt gehts weiter zu den Motoren:
Der Roboter soll ja ziemlich schnell werden, deshalb würde ich einmal von Getriebemotoren ausgehen. (bitte korregiert mich, ich habe noch nie auf dem Gebiet etwas gemacht und habe nur das Wissen, vom RN-Wiki. Dort steht ja, dass Schrittmotoren nicht ganz so schnell sind...) Oder sind Schrittmotoren hier doch besser wegen der Ansteuerung, weil sie genauer sind?
Ich habe da auch ein paar kleine Verständnisprobleme, und zwar:
Wenn ich z.b. diese 2 Motoren hier habe:

http://shop.conrad.at/ce/de/product/222375/GETRIEBEMOTOR810145-15V385ERMOTOR/SHOP_AREA_19781

http://shop.conrad.at/ce/de/product/222362/GETRIEBEMOTOR6145-15V540ERMOTOR/SHOP_AREA_19781

Mit welchem bin ich dann schneller unterwegs? Die Untersetzung gibt doch an, durch welchen Faktor ich die Drehzahl dividieren muss oder? Wenn ich dieses Motor-Berechnungs-Programm von dieser Seite benütze, kommt bei mir aber immer raus, dass ich nur 1 km/h oder so fahren kann und das wäre doch extrem langsam oder?
Außerdem erhalte ich dann das "Erforderliches Drehmoment des Motors" aber was soll ich damit bitte? Der Motor hat doch schon ein Drehmoment vorgegeben oder?
Bitte helft mir da einmal ein bisschen, ich blick da nicht ganz durch...


Als nächstes wären die Sensoren dran:
Ich möchte direkt den Vorteil der Omniwheels ausnutzen und deshalb nur an einer Seite Sensoren anbringen. Wenn eine Kurve kommt, so soll der Roboter gleich in die richtige Richtung weiter fahren und sich während der Fahrt sich so im Kreis drehen, dass wieder die Sensoren vorne sind.
Als Sensoren möchte ich einen 9fachen Liniensensor von http://krause-robotik.dyndns.eu/Shop/ benutzen.


Wegen der Motoransteuerung benötige ich ja einen Treiberchip. Würde soetwas bei mir funktionieren?
http://www.roboter-teile.de/Shop/themes/kategorie/detail.php?artikelid=41&source=2


Für die Programmieren werde ich einen atmega32 benutzen mit 16 oder 20 MHz.

Die letzte Frage wäre jetzt noch, welche Stromversorgung ich wähle:
Ich würde jetzt einmal diese hier nehmen (kenne mich damit aber relativ wenig aus):
Akkupack 9,6 V 2300 mAh

Zwei von diesen Akkupacks in Serie schalten, damit ich 15 V für die Motoren habe. Allerdings reichen da 2 solche Akkupacks aus für 3 (bzw. 6 Motoren?) und wie schwer ist so ein Akkupack (auf der Seite habe ich nichts gefunden) Gibt es eine alternative bessere Spannungsversorgung, welche vielleicht nicht ganz so schwer ist??


Ich weiß, es sind relativ viele Fragen hier, aber ich bitte euch trotzdem, mir ein wenig unter die Arme zu greifen. Über nützliche Tipps freue ich mich natürlich immer. Schließlich sind diese ganzen Bauteile nicht gerade billig und als Schüler besonders... Deshalb möchte ich gleich von anfang an das Richtige einkaufen.

Danke schonmal.

matthiasm
26.07.2009, 08:10
Also. Elektromotoren drehen locker 30.000 U/min. Wenn Deine OmniWheels nun eine Durchmesser von 5cm haben, dann kannst Du den Umfang des Rades brechnen, das mit der Umdreheung multiplizieren und dann auf km/h umrechnen. Wenn Du einen Getriebemotor benutzt, dann dividierst du das Ergebnis halt durch die Untersetzung.

Schrittmotoren sind wesentlich langsamer.

Die Berechnung des Drehmomentes soll dir sagen, welche Motorengrösse du wählen musst. Nicht umgekehrt.

Aber zum wesentlichen: schnell heisst leicht. Du willst ja sehr schnell die Richtung ändern und das geht bei einem schweren Roboter nicht. Omniwheels sind aber schwer. Daher: 3 Omniwheels.

Die Akkufrage ist kompliziert, wenn man ins Detail geht. Wichtig ist, ob die den Strom in dem Moment liefern können, in dem du ihn brauchst. Und natürlich wie weit du fahren willst. Daraus ergibt sich die benötigte Chemie , die Grösse, und damit das Gewicht.

Aber am einfachsten holst Du Dir einen Racing Pack aus dem Modellbauladn. Die sind vorkonfektioniert und gibt es als NiCd oder NiMH.

Welche MCU du nutzt und mit welcher frequenz ist erstmal egal.

Was ich nicht verstehe sind "Sensoren vorne". Ich denke, der Vorteil Deines Bot ist es, in jede Richtung zu fahren, also garkein "vorne" zu haben. Entweder brauchst Du also einen runden Sensor in der Mitte, oder wesentlich besser, einen Ring von Sensoren um den Roboter herum.

radbruch
26.07.2009, 08:22
"Ein Tisch mit drei Beinen wackelt nicht"

Bei vier Rädern müsste der Boden total eben sein (oder die Räder müssten einzeln gefedert sein).

Gruß

mic

Besserwessi
26.07.2009, 10:02
Die Geschwindigkeit, besonders in Kurven wird nihct nur von den Motoren, sondern auch wesentlich von der Reibung der Räder bestimmt. Wenn man keinen übergroßen Akku für eine lange Fahrstrecke bzw. lange Laufzeit hat, ist es nicht schwer die Motoren so stark zu haben, dass die Räder rutschen/durchdrehen können.

Gerade von der Haftung sind die meisten Omniweels nicht gerade gut. Da wäre ein Robot mit 2 Rädern so wie der Asuro vermutlich besser.

GoZu
26.07.2009, 12:01
OK danke schon mal.

Da ich unbedingt diese Omniwheels austesten will, steht schon mal fest, dass ich 3 von diesen benötige. (Das Programmierproblem von diesen Omniwheels reizt mich ein wenig ;) )

Danke für die Erklärung mit der Motorberechnung. Ich habe mir da jetzt einige Berechnungen gemacht und diese mit dem Online-Tool überprüft. Mein Ergebnis ist jetzt:

Raddurchmesser: 6 cm (Soft Omniwheels)
Gewicht: 5 kg (habe es bis 8 raufgetestet, bis dorthin sollte es funktionieren)
Motorgeschwindigkeit: 15 800 U/min
Untersetzung: 6

Dadurch erhalte ich eine Geschwindigkiet von 30 km/h.
Erforderliches Drehmoment des Motors (mit Getriebe): 0.9Nm - 1,44 Nm (abhängig vom Gewicht 5-8 kg)

Also habe ich folgenden Motor gewählt:
http://shop.conrad.at/ce/de/product/222362/GETRIEBEMOTOR6145-15V540ERMOTOR/SHOP_AREA_19781

Diesen betreibe ich mit 12 V. Mit 1,54 Nm sollte dieser ausreichen.

Habe ich den Motor jetzt richtig gewählt oder ist das überdimensioniert? Ich habe nämlich keine Ahnung, wie schwer der Roboter werden wird.
Die Gewichte würde ich ca. so schätzen:
Räder: keine Ahnung. 0,5 kg??
Motoren: 234 g * 3 = 0,7 kg
Akkus: 210g * x ??

Als Akku hätte ich diese gewählt:
http://www.accushop.at/product_info.php?products_id=7924&XTCsid=17990fbb501f7a2e6d89159a7c510a23

Die Frage ist jetzt nur, wieviele ich von diesen benötige.
Diese Akkus haben 2100 mAh.
So eine Fahrt dauert ca. 10 Minuten also rechne ich ersteinmal auf 10 minuten um. Um von 60 Minuten auf 10 zu kommen, also mal 6 rechnen.
Ergibt: 12600 mA in 10 min.
Das ganze dividiert durch 1000, damit ich Ampere bekomme: 12,6 A.
Mein Motor zieht 0,6 A, d.h. es würde eigentlich ein einziges solcher Akkupack ausreichen, da ich damit locker alle 3 Motoren für 10 Minuten versorgen kann??
Geht die Rechnung so auf?
Außerdem hätte dann der Motor nur 1-3 kg, würden dann noch meine anfänglichen dimensionieren passen?


So und noch zum Thema Sensoren:
Ja im Prinzip gibt es bei diesem Roboter kein vorne und hinten. Allerdings würden viele Liniensensoren auch viel Geld kosten.
Da aber aufgrund der Omniwheels sich der Roboter beim "vorwärtsfahren" sich auch drehen kann, kann ich ja ein "vorne" festlegen und dort Sensoren anbringen. Wenn jetzt die Linie nach rechts verläuft, so erkennen die vorderen Sensoren noch kurz dieses abweichen und der Roboter fährt mithilfe der Omniwheels sofort nach rechts. Jetzt schauen aber die Sensoren noch immer nach vorne (bzw. nach links von der Fahrtrichtung). Deshalb würde sich der Roboter automatisch während dem rechtsfahren auch um 90° nach rechts drehen, sodass die Sensoren wieder vorne wären.
Das ganze wäre natürlich etwas komplizierter zu Programmieren, allerdings wäre so der Roboter billiger und schneller (weniger Platz für Akkus für Sensoren und weniger Gewicht für Sensoren).

Ich weiß, ich habe hier wieder viele Fragen, aber helft mir trotzdem bitte =) Wird bestimmt ein interessantes Projekt.

radbruch
26.07.2009, 12:47
Da aber aufgrund der Omniwheels sich der Roboter beim "vorwärtsfahren" sich auch drehen kann, kann ich ja ein "vorne" festlegen und dort Sensoren anbringen.
Damit würdest du den Vorteil der Omniwheels vernichten! Eben dieses Drehen in die Fahrtrichtung kannst du damit einsparen, weil der Antrieb in alle Richtungen funktioniert. Deshalb sollte der Sensor ebenfalls omnidirektional sein, als z.B. kreisförmig angebrachte Lichtsensoren mit zentraler Beleuchtung oder eine Kamera.

Besserwessi
26.07.2009, 13:05
Man wird in der Regel auch nur 2 Motoren mit voller Last laufen lassen, der 3 te wird dann eher langsam laufen. Alle drei Motoren gleichzeitig volle Leistung wäre nur zum schnellen Drehen auf der Stelle, also eher was Theoretischen oder sehr kurzzeitig.
Die Motoren werden etwas mehr als 0,6 A brauchen. Die 0,6 A sind mehr im Leerlauf. Bei Last sind als Beispiel gut 2 A angegeben. Das könnte gerade so noch gehen wenn die Akkus gut sind. Wenn man sicher gehen will, sollte man die Akkus eine Nummer größer einplanen, oder wenigstens als Option vorsehen.

An dem Gewicht sieht man, das der Robot doch einiges leichter wird als ursprünglich geplant. Damit hat man schon die Grenze erreicht, dass die Räder durchdrehen können. So wie es aussieht sind die Drehmomentwerte oben etwa die Grenze wo sehr gute Räder zu rutschen anfangen. Man hat also noch einiges an Reserve für ggf. schwächere Motoren oder einen stärkeren Akku, ggf. auch etwas mehr als 12 V.

Bei den Sensoren kommt es auf die Type an. die CNY70 sind nicht besonders teuer. Da kann man sicher ein paar mehr nehmen. Es muß ja nicht ganz rum sein, aber etwa ein Viertelkreis wäre schon nicht schlecht, damit man nicht so viel drehen muß. Selbst bei normalen Bots mit einem Definierten vorne werden schon mal 8 Sensoren genommen.

Wenn es wirklich schnell werden soll, sollte man an den Sensoren nicht unbedingt sparen. Außerdem hat da ein kleiner Bot Vorteile, denn das drehen kann schneller gehen.

Netzman
26.07.2009, 13:41
Mit genau so einem Bot haben wir bei der RobotChallenge 08 in Wien mitgemacht. Leider ist er nur auf einem Bild zu sehen:
http://www.robotchallenge.org/fotos/2008/fotos/photobook//126/
Man kann aber gut den von uns "Stargate" getauften Sensorring erkennen, bestehend aus 8x8 mit Schieberegistern auslesbaren CNY70-ähnlichen Sensoren.
Vom Konzept und der Mechanik war der Bot top, wir sind leider nur an den 2 Tagen, die wir zum Programmieren hatten, gescheitert :)
der 2.e Platz wars trotzdem.
Auch mit 3 Motoren kann so ein Bot ziemlich schnell sein, wenn wir von 0 auf 100% Motorleistung gegangen sind, hat er 3m lange Beschleunigungstreifen hinterlassen.

mfg

GoZu
26.07.2009, 13:52
Sehr schön, genau sowas will ich auch bauen und auch für die Robochallenge =)
Allerdings verstehe ich nicht ganz, wie ihr diese Sensoren auslest? Also wenn da 64 Sensoren drauf sind, würde man doch 64 Pins auf dem µC benötigen?

Und wie schaut es eig. mit dem Gehäuse aus? Kann man da so ein rundes Gehäuse irgendwo bestellen oder muss man soetwas selbst anfertigen? Wenn ja, aus welchem Stoff? (Plexiglas soll ja sehr brüchig sein, habe ich hier bei älteren Projekten gelesen)

Netzman
26.07.2009, 14:06
Wie gesagt, mit 8 seriellen Schieberegistern, die jeweils 8 Sensoren bedienen, am µC brauchst du dann nur 2 Pins dafür.
Wir haben das Chassis selbst aus 2mm Alu gefräst.
Alu kann man aber auch leicht mit Säge, Feile und Bohrer bearbeiten.

mfg

GoZu
26.07.2009, 16:31
Also ich habe hier einmal eine vorläufige Bauteile Liste. Wer schön, wenn jemand kurz drüber schauen könnte und mir sagen könnte, ob irgendetwas grobes hier fehlt...

3 x Omniwheels 60 mm Durchmesser Soft 63,00 €
http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=72&products_id=104

3 x Getriebemotor 6:1 12 V 66,00 €
http://shop.conrad.at/ce/de/product/222362/GETRIEBEMOTOR6145-15V540ERMOTOR/SHOP_AREA_19781

70 x CNY 70 Liniensensor 122,50 €
http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=71&products_id=106

4 x Racing-Pack 12,0V NiMH-Akku 2100mAh 112,00 €
http://www.accushop.at/product_info.php?products_id=7924&XTCsid=17990fbb501f7a2e6d89159a7c510a23

3 x Schieberegister C-MOS IC 4014 DIP 3,00 €
http://shop.conrad.at/ce/de/product/172707/C-MOSIC4014DIP/SHOP_AREA_17313#download-dokumente


Wegen der Motoransteuerung weiß ich noch nicht so genau. Da wollte ich nocheinmal euren Rat einholen. Hätte 3 mögliche Varianten:

2 x diesen Treiber IC:
http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=65&products_id=197

Probleme wäre aber, dass 1 Treiber ungenützt bleiben würde und das ganze sehr teuer wäre. Positiv wäre, dass ich nur Geschwindigkeit über I2C einstellen müsste, Rest macht der IC.
Preis: 120 €

3 x dieser Treiber IC:
http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=65&products_id=90

Immer noch etwas teuer und die Ansteuerung müsste ich selbst machen.
Preis 90 €


Oder 3 x dieser IC:
http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=79_81&products_id=167

Das wäre eindeutig die aller günstigste Methode, aber was hat diese für Nachteile gegenüber den anderen?

Komme ich überhaupt mit meinen Ports mit einem ATmega32 aus??
Und brauche ich ein RN-Controll auch noch? (Verstehe nicht ganz, was das ist oO Ist das soetwas wie das STK500/STK600 nur halt speziell für Roboter? Ich besitze nämlich ein STK600)

Zu den Akkus hätte ich noch eine Frage. Ich hätte jetzt 4 Stück mit 12V und 2100 mAh gekauft. Ich hätte jeweils 2 in serie geschalten und hätte somit 2x24V gehabt. Über einen Spannungsregler hätte ich dann 1x24V auf 15V geregelt und damit 2 Motoren angesteuert und die anderen 24V auch mit einem Spannungsregler auf 15 V (3ter Motor) und auf 5V für den µC. Würde das so funktionieren und wäre das Effizent? (also 2 Packs in Serie schalten...) Und vielleicht noch eine etwas blöde Frage, aber wie lade ich solche Akku Packs wieder auf? Einfach mit einem Netzgerät mit 12V versorgen?? Oder brauche ich dazu ein Ladegerät? (und ist dieses bei der Lieferung dabei??)

Besserwessi
26.07.2009, 16:57
Das RN Controll ist ein Board mit dem Mega32, einem kleinen Motortreiber, RS232 und noch ein bischen mehr. Man kann das nutzen muß es aber nicht. Die Motortreiber sind ohnehin etwas klein udn RS232 brauchts wohl nicht.

Spannungsregler für die Motoren macht wenig sinn. Da sollte man schon gleich passende Akkus nehmen. Mit den Tribern per PWM hat man ja da auch etwas Luft. Die Motoren oben sollten für Akkus von etwa 10-24 V passen. Bei hoher Spannung vielleicht noch eine kleine Induktivität vor den Motor. Ich hätte hier aber eher einen Akkusatz mit etwa 14.4 V genommen, und dann ggf. die etwas größere Form für hohen Strom.

Man kann bei NiMH Akkus ein normales Netzgerät zum Laden nehmen, wenn man weiss was man tut und weiss wann man abschalten muß. Sonst besser ein extra Ladegerät kaufen. Alternativ kann man auch einzelnen Akkuzellen nehmen und dann 10-12 in einen Halter. Da sind die Ladegeräte oft günstiger.

GoZu
26.07.2009, 17:10
Ok, aber die 14,4 V Akkus kosten gleich mehr als doppelt so viel, nämlich einer 70 €.
Die hätten dann 14,4 V und 3800 mAh. Reicht mir dann ein einziger solcher Akku oder benötige ich mehr?

Und wie schauts jetzt eigentlich mit den Treibern aus? Ich versteh nicht ganz, was der unterschied zwischen variante 2 und 3 ist. (ok bei 2 sind alle beschaltungen schon getan und man benötigt nur 2 Leitungen wegen I2C, aber ist das der einzige Unterschied?) Motoren möchte ich über PWM betreiben.

Und so ein Ladegerät für solche Akkus kostet 100 € aufwerts.... Wäre das laden über NG sehr schwer?

Besserwessi
26.07.2009, 18:01
Das Laden übers Netzgerät ist auch nicht so kompliziert. Solange man langsam (16 Studen) laden will, ist es relativ einfach, denn dann ist das Abschalten nicht so kritisch. Nur schnell laden in 1 Stude oder so geht kaum ohne DMM und Kurve Aufzeichnen. Ein echtes Ladegerät ist vor allem zuverlässiger und der Akku kann länger halten.


Wenn man ohnehin nur 10 min laufzeit einplant sollte auch ein Akkupack mit 1-2 Ah schon reichen. Es sollte nur wenigsten 5-10 A gut liefern können. Dann reicht auch 1 Akku. Es könnte auch kleine Akkus geben, die den Strom leifern können. Das die Ladegeräte so teuer sind, weiss ich, deshalb der Vorschlag ggf. auch Einzelzellen auszuweichen.

Es gäbe als Alternative auch noch sich einen Akkuschrauber zu kaufen und die Akkus zu nehmen. Da hat man in der Regel 2 Hochstromfähige (wenn man nicht die ganz billigen nimmt) Akkupacks und ein passendes Ladegerät, oft auch für 1 Stunde, wenn man ein besseres Gerät nimmt.
Nur passende Kontakte für die Akkupacks muß man wohl selber basteln.

Bei den Treibern ist das eine halt eine feritge Platien, das andere nur ein IC. Das IC ist für das Treiben von 2 Motoren gerade etwas knapp, und auch im Parallelbetreib der beiden Hälften immer noch schwächer als die fertige Platine.

Besserwessi
26.07.2009, 18:04
Das Laden übers Netzgerät ist auch nicht so kompliziert. Solange man langsam (16 Studen) laden will, ist es relativ einfach, denn dann ist das Abschalten nicht so kritisch. Nur schnell laden in 1 Stude oder so geht kaum ohne DMM und Kurve Aufzeichnen. Ein echtes Ladegerät ist vor allem zuverlässiger und der Akku kann länger halten.


Wenn man ohnehin nur 10 min laufzeit einplant sollte auch ein Akkupack mit 1-2 Ah schon reichen. Es sollte nur wenigsten 5-10 A gut liefern können. Dann reicht auch 1 Akku. Es könnte auch kleine Akkus geben, die den Strom leifern können. Das die Ladegeräte so teuer sind, weiss ich, deshalb der Vorschlag ggf. auch Einzelzellen auszuweichen.

Es gäbe als Alternative auch noch sich einen Akkuschrauber zu kaufen und die Akkus zu nehmen. Da hat man in der Regel 2 Hochstromfähige (wenn man nicht die ganz billigen nimmt) Akkupacks und ein passendes Ladegerät, oft auch für 1 Stunde, wenn man ein besseres Gerät nimmt.
Nur passende Kontakte für die Akkupacks muß man wohl selber basteln.

Bei den Treibern ist das eine halt eine feritge Platien, das andere nur ein IC. Das IC ist für das Treiben von 2 Motoren gerade etwas knapp, und auch im Parallelbetreib der beiden Hälften immer noch schwächer als die fertige Platine.

Edit: bei den Akkupacks gibt es günstige oft für 7,2 V. 2 davon in Reihe sollten reichen.

GoZu
26.07.2009, 18:41
Ok danke schonmal. Also ich habe mich jetzt entschieden, 2 mal diesen Akku zu bestellen:
http://www.accushop.at/product_info.php?products_id=5964&XTCsid=17990fbb501f7a2e6d89159a7c510a23

Und als Ladegerät dieses (da es nur 40 € kostet)
http://www.accushop.at/product_info.php?products_id=40&XTCsid=17990fbb501f7a2e6d89159a7c510a23

Trotzdem habe ich noch meine Fragen zum Treiber:
Bei dem IC steht, dass er 2,8A Motoern betreiben kann. Meine benötigen doch nur 2 A oder? (meinte zumindest hier jemand...)
Und wie genau steuere ich dann meinen Motor damit an? Ich habe ein Enable für Motor A und für Motor B. Also über diese Pins schalte ich die Motoren ein. Über welche Leitungen übertrage ich das PWM-Signal? Über IN1a IN2a IN1b IN2b???

Und beim fertigen Module, benötige ich ja einen PORT für das PWM Signal (warum hier aufeinmal 8 Pins und beim IC nur 2 PINS pro Motor?) sowie 2 Pins für Drehrichtung und Bremsung. Das wären aber bei 3 Motoren 3 PORTS sowie 6 Pins. Hat ein ATmega32 überhaupt 3 PWM PORTS? Kann ich das dann überhaupt so einfach betreiben? Oder könnte man diese PORTS multiplexen (oder würde das zu stören führen,weil die Signale müssen ja andauernt anliegen... Ich kann mir das gerade nur etwas schwer vorstellen)
Das fertige board könnte 4A Dauerstrom liefern, aber benötige ich überhaupt so viel?

Im Prinzip ist doch die Ansteuerung usw. komplett gleich, nur funktioniert die fertige Platine nur mit mehr Strom. Aber ist sie nur deshalb so viel teurer? Kann ich mit dem IC auch eine Motorbremsung machen und die Motoren in umgekehrter Richtung betreiben?

Besserwessi
26.07.2009, 20:17
Die 2,8 A sind der Spitzenstrom. Im Dauerbetrieb kann man nicht so viel Strom ziehen, besonders ohne extra Kühlung. Die Treiber haben einen Widerstand von etwa 0,4 Ohm für die FETs. Bei einem Strom von 2 A sind das schon 0,8 V oder 1,6 W. Der Strom geht ja über 2 FETs und dann noch Schaltverluste dazu. Das mach also schon bei 2 A rund 3.2 W an Wärme für einen Motor. Bei 2,8 A hätte man etwa den doppelten Verlust. Das wird einfach zu viel Verlustleistung. Als realisteische Grenze für den Dauerbetrieb würde ich eher 1,5 A ansetzen.
Bei PWM Beterib mit nicht voller Drehzahl kann man einen Teil des Stromes am IC vorbeileiten, indem man extra Shottkydioden als Freilaufdioden nimmt. Die Hitzeentwicklung bleibt aber trotzdem ein Problem. Es ist nicht so das es nicht gehen kann mit dem Treiber 2 der Motoren zusteuern, aber es ist halt wirklich an der Grenze: Man muß gut Kühlen und hat ein erhöhtes Ausfallrisiko.

Die Motoren habe gut 2 A bei bestem Wrkungsgrad. Bei der eher leichten Last wäre der Strom vermutlich sogar oft niedrieger. Allerdings kann der Strom bein Anlaufen auch über 2,8 A gehen, wenn man schnell von Stillstand auf 100% Spannung geht.

Der Mega32 hat 4 PWM Kanäle. Das ist also nicht das Problem. Man braucht pro Motor wenigstens 2 Leitungen: 1 mal das PWM Signal und eine für die Richtung. Man bracht noch etwas externe Logic dazu wenn man die vollen Möglichkeiten nutzen will.

Eine extra Multiplexen, um hier noch pins zu sparen ist nicht angebracht. Obwohl notfalls eine Porterweiterung für die 3 IO Pins möglich wäre. Der Mega 32 hat eigentlich genutz Pins.

Das IC kann auch eine Motorbremse und natürlich auch die Richtingsumkehr. Mit 2 IO Pins hat man eher das Problem das man beim Anhalten eher die Motorbremse hat, als den Freilauf. Man kann das aber in Software abfangen und die Motoren langsam auslaufen lassen, halt so als wäre es ein freies Auslaufen.

Das Fertige Board ist recht groß. Mit 2 A Dauerstrom und etwa 4 A als Spitzenstrom sollte man auskommen. Der Preis bei Elektronik teilen hängt auch immer von der Stückzahl ab, nicht nur von der Leistungsfähigkeit. Wenn da eine wirklich große Nachfrage wäre würde man die auch für unter 5 EUR kriegen.

ähM_Key
26.07.2009, 22:23
Wenn du Omni-Wheels gern verwenden willst, ok, aber ich bin mir nicht sicher, ob du damit sehr schnell werden wirst.
Die digitale Auswertung der Linie wird ev. keine guten Regelalgorithmen zulassen.
Hier mal ein Beispiel, was mit einem differentiellen Antrieb möglich ist:
http://www.youtube.com/watch?v=zEGVZL1A6Mw
(Zwar kein Linienverfolger, aber so ähnlich ;) )

Besserwessi
27.07.2009, 16:43
Die Motoren sind für so einen kleinen Bot reichlich überdimensioniert. Die übersetzung könnte etwas größer, denn ein geschwindigkeit von 10 m/s wird man zum Linieverfolgen kaum gebrauchen können. Mit dem kleineren Motor wird dann auch das Treiberproblem einfacher. Dann ist eher die Frage, ob der L293 ausreicht.

GoZu
27.07.2009, 21:20
Was genau meinst du mit überdimensioniert?

Heißt das, dass die Reifen durchdrehen werden, wenn ich mit maximaler Geschwindigkeit fahre oder das ich niemals auf der Strecke die maximale Geschwindigkeit erreichen kann??

Ich hatte nämlich schon vor, die ganze Strecke mit maximaler Geschwindigkeit zu durchfahren, weil das ja aufgrund der Omniwheels möglich wäre. Die Frage ist halt nur, ob es den Roboter aus der Kurve schleudern würde, wenn plötzlich eine scharfe Kurve auftritt....
Da der Roboter aber ein geringes Gewicht hat, sollte das doch nicht passieren...

Also zurück zum Thema: Würde der Roboter mit diesen Motoren funktionieren und wäre es nur ein preislicher Vorteil, die Motoren niedriger zu dimensionieren? Außerdem habe ich irgendwo gelesen, dass Motoren mit größerer Untersetzung weniger Toleranz aufweißen udn diese deshalb genauer sind? Ist dann diese Genauigkeit überhaupt für mich wichtig? (da ich ja andauernt die Linie einlese und vergleiche, müssen ja 90° nicht unbedingt 90° bei mir sein)

edit: Der Roboter mit dem differentiellen Antrieb schaut auch sehr schön aus, aber diesen Roboter mit Omniwheels will ich zuerst bauen. Bis zum Wettbewerb ist es eh noch lange und ich habe viel Zeit, also werde ich unter Umständen beide Roboter bauen =) Diesen hier aber zuerst.

petermetertr
17.08.2009, 23:47
Für mehr Bodenhaftung könnte der Roboter sich mit einer Luftschraube und einer Schürze die die ausenkanten abdichtet am Boden festsaugen.

Besserwessi
18.08.2009, 16:46
Die Omniweels sind hinsichtlich der Bodenhaftung nicht gut. Die meisten haben keine wirklich weiche Gummimischung.
Außerdem können die Omniweels Ja nur Kraft ein eine Richtng übertragen. In der Querrichtung ist das wegrollen ja gewollt. Damit geht schon prinzipbedingt ein Teil der Haftung verloren. Das Haftungsproblem hat fast nichts mit dem Gewicht zu tun, denn die nötigen Kräfteund die Haftreibungskraft sind proportional zum Gewicht.

Bei Kurven hat man 2 Probleme: zum einen die Zentirfugalbeschleunigung in der Kruve. Da kann man nicht viel machen, außer Räder mit guter Haftung. Das andere ist das Trägheitsmoment am Anfang und Ende der Kurve. Also wenn man die Drehgeschwindigkeit des Bots zu ändern. Da hilft es wenn die Masse weitgehend im Zentrum des Bots ist, und die Räder dafür weiter ausßen. Theoretisch könnte an da auch mit Kreiselkräften was tricksen. Mit den Omniweels könnte man sich diese 2 ten Teil sparen, denn der Bot muß sich ja gar nicht dehen.

Mit der Präzision hat man beim Linienverfolgen wohl keinen Probleme. Man hat aber ein Problem wenn die Motoren zu stark sind, denn dann dehen die Räder durch wenn man nicht per software für ein vorsichtigs Anfahren/Bremsen sorgt. Einfacher wird es wenn die Motoren so schwach sind, dass es gerade nicht reicht die Räder zum Durchdehen zu bringen. Ein bischen Abgleich ist dabei durch einen Serienwiderstand möglich.

Die Motoren sind in beiden Größen überdemsnsioniert. Das Drehmoment ist reichlich hoch, sodass die Räder leicht durchdehen werden, wenn man nicht ganz Vorsichtig fährt. Die Geschwindigkeit ist auch zu hoch. Die Typischen geraden Strecken die man erwarten kann sind einfach zu kurz um auch nur annähernd die volle Geschwindigkeit zu erreichen, dafür wäre ein Gerade von 5 - 10 m (bei den Omniweels eher 20 m) nötig.
Mit den Motoren würde man vermutlich kaum über 20% der maximalen Geschwindigkeit hinauskommen und hätte damit einen eher unruhigen Lauf der Motoren, was wieder ein Durchdehen der Räder fördern würde.

Die Idee mit dem Ansaugen ist gut, denn die Grenze durch die Reibung ist durchaus erreichbar. Das könnte dann ein Bot werden, der auch an der Decke fahren kann.

Da_Vinci13
18.08.2009, 17:28
Hi,
Ich kann dir auch nur raten ohne Omniwheels zu bauen. Denn 70 x CNY70 zu verbauen dauert ganz schön und geht auch ziemlich ins Portmone...
Schau mal der 3pi bot kann mir nur 5 Fototransistoren einer Linie folgen in einem super schnellen Tempo!:
http://www.youtube.com/watch?gl=DE&hl=de&v=TxxYvlARPqk

Ausser natürlich dir kommts nicht so aufs Geld an und du willst es unbedingt mit den Omniwheels versuchen!

Liebe Grüsse!

Besserwessi
18.08.2009, 18:06
Wie man in dem Video sieht / hört, ist 1 m/s schon ganz gut.
Ich würde auch von den Omniweels abraten, wegen der Probleme mit der geringeren Haftung (etwa halbe Geschwindigkeit).

Ich habe mal die CNY70 Ausprobiert: zumindestens die Version die ich habe ist kaum zum Linienfolgen geeignet, denn der Messbereich ist kaum so breit wie der Sensor. Richtig gut über vielleicht 1 mm.
Da kreigt man schon fast Lücken. Lieber einzelne LEDs und Fototransistoren (Fotodioden ?). Passende Fototransistoren wüßte ich jetzt noch nicht. Dabei können dann z.B. 3 Sender und 4 Detektoren schon 6 CNY70 ersetzen, denn man kann jeden Sender mit 2 Detektoren nutzen.

Eckhard
19.08.2009, 13:50
Hallo,


das hier könnte interressant sein um einen schnellen Linienfolger zu bauen.

http://robotroom.com/Jet.html

Eckhard