PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Neustes Asuro Greifarm Projekt (5 Servos) Es funktioniert!



Thund3r
02.01.2010, 02:39
Hallo

Nach Stundenlangem tüfteln ist es mir endlich geglückt einen funktionsfähigen (5 Servo) Gelenkgreifarm zu bauen den der Asuro steuern kann. Die Servo Impulse werden über die Back(2),Front und StatusLed's (2) gesendet. So kann der Asuro 5 Servos unabhängig voneinander steuern.
Hier ein Video meines ersten Greifarmversuchs (2Servos aktiv 3 inaktiv):

http://www.youtube.com/watch?v=YbAFSTNCmac

Nun alle 5 Servos (grobmotorisch aber es wird :D)

http://www.youtube.com/watch?v=vXGEm33U-yc

Nun funktioniert er wie gewollt!

http://www.youtube.com/watch?v=yaCXaw_Lf14

Hier ein paar Fotos meiner Konstruktion:

http://img300.imageshack.us/i/dscf4019.jpg/
http://img690.imageshack.us/i/dscf4021d.jpg/
http://img442.imageshack.us/i/dscf4023.jpg/
http://img709.imageshack.us/i/dscf4020.jpg/

Bitte um Kommentare und konstruktive Kritik
Gruß Thund3r

Virus
02.01.2010, 09:36
hi Thund3r,

wieder mein hinweis, du wackelst zu viel mit der kamera!
so wies aussieht, sieht der greifarm gut aus,
kannst du noch ein paar gute fotos machen?

Der greifarm kommt aber nicht auf den asuro oder?
der sieht deutlich zu groß dafür aus.


bin gespannt auf weiteres!

Thund3r
02.01.2010, 10:13
Hallo

Danke ;)
Ja meine geniale Kameraführung :D
Fotos folgen!
Ich weiß noch nicht ich denke ich werde den Arm seperat montieren heute werde ich mich wieder ransetzen.

Gruß Thund3r

erik_wolfram
02.01.2010, 10:22
Das sieht gut aus!
Aus Neugier:
Was für einen Code verwendest du für die Servos, konnte bis jetzt keinen brauchbaren (ausgereiften) finden und bin immer noch am Suchen!

Wäre es vlt. möglich den Code mal zu posten?

MFG erik_wolfram

Thund3r
02.01.2010, 10:29
Hallo

Ja gerne also für einen Takt in eine Richtung benutz ich :

BackLED(ON,OFF);
Sleep(80);
BackLED(OFF,OFF);
Sleep(255);Sleep(255);Sleep(255);Sleep(255);Sleep( 255);Sleep(255);
BackLED(ON,OFF);
Sleep(80);
BackLED(OFF,OFF);
Sleep(255);Sleep(255);Sleep(255);Sleep(255);Sleep( 255);Sleep(255);

und für eine Bewegung in die andere Richtung :

BackLED(ON,OFF);
Sleep(15);
BackLED(OFF,OFF);
Sleep(255);Sleep(255);Sleep(255);Sleep(255);Sleep( 255);Sleep(255);
BackLED(ON,OFF);
Sleep(15);
BackLED(OFF,OFF);
Sleep(255);Sleep(255);Sleep(255);Sleep(255);Sleep( 255);Sleep(255);

(Ja etwas komisch entstand durch ausprobieren :D )
Der Code muss dann in eine for Schleife o.ä. gepackt werden da er sich dann nur ein kleines bisschen bewegt wenn man den Code einmal ausführt.

Gruß Thund3r

radbruch
02.01.2010, 10:57
Hallo

Das erinnert mich sehr an meinen ersten Kontakt mit Servos:
https://www.roboternetz.de/phpBB2/viewtopic.php?t=29902

Und nach über zwei Jahren bin ich wieder bei Sleep() angekommen:
https://www.roboternetz.de/phpBB2/viewtopic.php?p=466128#466128

Leider ist auf dem Video echt nicht viel zu erkennen:(

Gruß

mic

erik_wolfram
02.01.2010, 11:49
danke - Prima so klappts
(wenn man nicht die ganze Zeit mit StatusLED(green); versucht CON2 anzusteuern...)

habe die Steuerleitung einfach über einen 1k Widerstand an CON2 angelötet!

mein Code:

int i, j;

while(1)
{

for (i=0; i<100; i++) //2 sek Ansteuerung
{
StatusLED(RED);
Sleep(72); //1 ms - Links
StatusLED(OFF);
for (j=0; j<6; j++) Sleep(240); //20 ms warten
}

for (i=0; i<100; i++) //2 sek Ansteuerung
{
StatusLED(RED);
Sleep(144); //2 ms - Rechts
StatusLED(OFF);
for (j=0; j<6; j++) Sleep(240); //20 ms warten
}

}

Thund3r
02.01.2010, 19:21
Hallo

So mein erstes Videomit allen 5 Servos ist fertig. Noch sehr grobmotorisch aber esfunktioniert :D (s.o.)

Gruß Thund3r

Virus
03.01.2010, 11:31
find ich gut!
er bewegt sich irgendwie genial, ich weis auch nicht aber sieht geil aus, finde ich.

wann kommen Fotos?

Thund3r
03.01.2010, 13:13
Hallo

Vielen Dank ;)

Fotos sind nun hinzugefügt (s.o.)

Gruß Thund3r

Thund3r
03.01.2010, 21:55
Hallo

Es funktioniert nun perfekt :D (s.o.)

Gruß Thund3r

josua
04.02.2010, 13:52
hallo thund3r,
echt cool dein greifarm aber es ist schade auf alle leds zu verzichten. es wäre mal eine idee deinen greifarm über die atmega32 erweiterungsplatine von e-robotix anzusteuern (port B oder schieberegister). dann könnte man den greifarm parallel zu allem anderen benutzen.

gruß josua

Thund3r
04.02.2010, 14:10
Hallo

Danke ;)

Yo das wäre auch machbar müsste man mal probieren. Allerdings verzichtet man ja nicht direkt auf die LEDs sie werden nur zusätzlich zweckentfremdet. Schaltet man die Servos ab kann man die LEDs normal benutzen.

Gruß Thund3r

josua
04.02.2010, 14:54
hallo zusammen,

vielleicht könnte man den greifarm auch kleiner/ leichter machen und auf den asuro draufmontieren, sodass dieser z.b. einen gegenstand über ultraschall findet, mit dem greifarm hochhebt, über die liniensensoren einen markierten bereich sucht und dort den gegenstand ablegt.
dürfte schwer werden aber wäre meiner meinung ein klasse projekt, das sich durch viele ideen und gute zusammenarbeit bestimmt realisieren liese.
was halten die anderen von dieser idee??

gruß josua

Thund3r
04.02.2010, 15:07
Hallo

Eine gute Idee.
Hatte ich schon realisiert gehabt also das montieren. Das Gewicht trägt der Asuro sogar überraschend gut nur das Problem besteht in der Stromversorgung und der feinen, genauen Ansteuerung. Ich denke das ein 2 Gelenk Greifarm für den Asuro am besten wäre. (Heben/senken und greifen)
Mittlerweile hab ich den Arm auf meinen RP6 montiert und der kann gut damit umgehen!

https://www.roboternetz.de/phpBB2/viewtopic.php?t=52298

Ich würde dir aber bei dem Projekt sehr gerne zur Seite stehen und wenn ich wieder Servos finde kann ich einen Asuro Arm bauen und dann auch deinen Vorschlag mitumsetzen. Ultraschall ist auch nicht zwingend notwendig die IR-Abstandsmodifikation (https://www.roboternetz.de/phpBB2/viewtopic.php?t=11114) ist billiger und tuts genauso gut!

Dein Vorschlag klingt auch nach einer feinen Wettbewerbsidee ;)


Gruß Thund3r

josua
04.02.2010, 19:49
hallo thund3r,
danke für die schnelle antwort und dass du meine idee gut findest. ich bin deiner meinung, was den 2gelenkgreifarm betrifft und ob man es mit ir oder us macht, ist im grunde egal. ich würde gerne ein solches projekt machen, würde den aufbau wahrscheinlich gut hinbekommen aber bei der programmierung bräuchte ich wohl viel unterstützung ;) . falls es funktioniert und fertig ausgereift ist wäre auch die wettbewerbsidee nicht schlecht :) . ich fände es cool

gruß josua

Thund3r
04.02.2010, 20:34
Hallo

Ich steh dir gerne in aller Hinsicht als Hilfe zu Seite!
Wenn du Fragen zur Konstruktion des Arms hast, Programmierfragen oder sonst was nur her damit ;)

Gruß Thund3r

josua
05.02.2010, 11:57
hallo,
danke für dein angebot aber ich muss wahrscheinlich noch etwas mit dem projekt warten, weil ich vieles erst noch kaufen und zusammenbauen muss. ich kann erst nach den faschingsferien (also in 3 wochen) richtig anfangen (hab auch noch keinen isp programmer, hol mir dann aber den von ullihome http://shop.ullihome.de/catalog/product_info.php/cPath/25_30/products_id/67

gruß josua

Thund3r
05.02.2010, 12:41
Hallo

Kein Problem ;)
Informier mich einfach wenn du loslegen willst.
Bei Fragen stehe ich dir weiterhin gerne zu Verfügung

Gruß Thund3r

Thomas$
05.02.2010, 16:22
ist das mit heiskleber verbunden wurden?

Thund3r
05.02.2010, 16:23
Hallo

Ja der gute alte Heißkleber :D

Gruß Thund3r

josua
06.02.2010, 11:55
heißkleber hält imma gut!!!!!!!!!!!!!!!!!!!
:) ;) :) ;)

josua

radbruch
06.02.2010, 12:24
Hallo

Ich bin ja auch bekennender Heißkleber (http://www.googlefight.com/index.php?lang=en_GB&word1=heiskleber&word2=hei%DFkleber)-Fan. Kostengünstig, einfach, schnell und sauber. Und man kann ihn von vielen Oberflächen wieder rückstandslos entfernen:
http://radbruch.roboterbastler.de/monoleg/kippler/kippler5_klein.jpg (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=326809#326809)

http://radbruch.roboterbastler.de/asuro/walker/walker-teilebild_klein.jpg (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=404418#404418) http://radbruch.roboterbastler.de/rp6/pics/tapeloader_zerlegt_klein.jpg (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=363833#363833)

Gruß

mic

fegi97
03.07.2010, 09:32
Hallo

Nach Stundenlangem tüfteln ist es mir endlich geglückt einen funktionsfähigen (5 Servo) Gelenkgreifarm zu bauen den der Asuro steuern kann. Die Servo Impulse werden über die Back(2),Front und StatusLed's (2) gesendet. So kann der Asuro 5 Servos unabhängig voneinander steuern.
Hier ein Video meines ersten Greifarmversuchs (2Servos aktiv 3 inaktiv):

http://www.youtube.com/watch?v=YbAFSTNCmac

Nun alle 5 Servos (grobmotorisch aber es wird :D)

http://www.youtube.com/watch?v=vXGEm33U-yc

Nun funktioniert er wie gewollt!

http://www.youtube.com/watch?v=yaCXaw_Lf14

Hier ein paar Fotos meiner Konstruktion:

http://img300.imageshack.us/i/dscf4019.jpg/
http://img690.imageshack.us/i/dscf4021d.jpg/
http://img442.imageshack.us/i/dscf4023.jpg/
http://img709.imageshack.us/i/dscf4020.jpg/

Bitte um Kommentare und konstruktive Kritik
Gruß Thund3r


jo hallo ich bin fegi97 ich bin gerade dabei den asuro zu bauen und ich würde ihm gerne auch ein Roboterarm verpassen soweit habe ich Thund3r
metode den arm zu bauen verstanden aber was soll das heißen
Die Servo Impulse werden über die Back(2),Front und StatusLed's (2) gesendet. So kann der Asuro 5 Servos unabhängig voneinander steuern.
es wäre nett wenn mir das jemand erklären würde =D>

Thund3r
03.07.2010, 10:51
Hallo

Jeder der 5 Servos die für den Bau des Arms verwendet wurden müssen ja ein Steuersignal bekommen. Dieses Steuersignal beziehen sie durch jeweils eine der LEDs. Über die wird das PWM Signal gesendet.
Nach einigen Experimenten kann man Sagen das sich zum Ansteuern am besten die FrontLED, die StatusLED (2 mal), eine BackLED und die IR Schnittstelle um die Servos mit dem Asuro unabhngig steuern zu können.

Gruß Thund3r

fegi97
03.07.2010, 12:16
ich muss sagen ihr habt tolle ideen die auch funktionieren ich kann mir sehr viel von euch abkucken
ach ja und der roboter arm ist echt cool habe mir das video auf you tube angesehen falls ich doch fragen hab darf ich ja fragen https://www.roboternetz.de/phpBB2/images/smiles/eusa_clap.gif

Thund3r
03.07.2010, 12:28
Hallo

Vielen Dank für das Lob )

Selbstverständlich! Wenn du noch irgendwelche Fragen hast stehn dir hier alle gern zur Verfügung !

Gruß Thund3r

fegi97
03.07.2010, 12:29
ich hab soweit verstanden aber ich bin in gewisser hinsicht einsteiger in diesem tehma deswegen hätte ich noch ein paar fragen wie mussich ich die servos mit den leds verbinden [verlöten] und kann der roboter wirklich aleine über die leds den arm steuern und wie muss ich den roboter arm an den roboter instalieren das dieser gegenstände aufheben und wo anders ablegen kann ?

ich würde mich freuen wenn ihr mir solche sachen beibringt das ich später
auchmal eigene roboter oder änliches konstruieren kann
Danke
=D> :-k

fegi97
03.07.2010, 12:35
cooles video

http://www.youtube.com/watch?v=6E_e8AHvhNg

fegi97
03.07.2010, 17:26
ich finde das thema roboter sehr interresant

fegi97
03.07.2010, 17:32
ich hab soweit verstanden aber ich bin in gewisser hinsicht einsteiger in diesem tehma deswegen hätte ich noch ein paar fragen wie mussich ich die servos mit den leds verbinden [verlöten] und kann der roboter wirklich aleine über die leds den arm steuern und wie muss ich den roboter arm an den roboter instalieren das dieser gegenstände aufheben und wo anders ablegen kann ?

ich würde mich freuen wenn ihr mir solche sachen beibringt das ich später
auchmal eigene roboter oder änliches konstruieren kann
Danke
Brauche einen leichten plan
danke vielmals :-k :mrgreen:

Manf
03.07.2010, 18:05
Hallo fegi97, schön von Dir zu hören. Sicher kannst Du fragen stellen, am besten sind solche, die man sinnvoll beantworten kann.

Die Bemerkung mit dem "Deutschland gewinnt" im Thementhread "Neustes Asuro Greifarm Projekt" passt nicht wirklich und es geht auch nicht darum Dir etwas beizubringen, sondern eher Dir Hinweise zu geben wie Du etwas lernen kannst. Wie man die anderen Teilnehmer dazu gewinnt, einem gute Hinweise zu geben, das ist gerade so wie im Leben, man erzählt über sich und sein Vorhaben und andere finden es interessant und diskuiteren mit.

In diesem Sinn auf gute Zusammenarbeit.

Thund3r
04.07.2010, 03:00
Hallo

@fegi97 https://www.roboternetz.de/phpBB2/viewforum.php?f=44

Gruß Thund3r

sneiser
04.05.2011, 10:52
Hallo Leute!

Zuerst einmal großes Lob an euch! Es ist sehr interessant und lehrreich was hier so gepostet wird.

Ich bin nun auch mal in die "Servofalle" getappt. Hab mir vor kurzem einen Asuro-Bausatz bestellt und bisher nur mal ein wenig rumgetüftelt.

Nun möchte ich gerne, so wie ihr es hier auch getan habt, einen kleinen Servo ansteuern können.....genauer gesagt als Stiftheber arbeiten lassen.

Der Stift soll quasi waagerecht über dem Asuro am Servo befestigt sein und der Servo soll beim Ausführen des Programms eine Drehung von 90° ausführen, so dass der Stift senkrecht in der rundlichen Mulde zwischen den Kollisions-Tastern steht und den Asuro ein wenig anhebt. Danach soll er z.B. einen Kreis fahren (malen).

Nach dem Kreis soll der Stift wieder zurück (90°) zum Ausgangspunkt fahren.

Meine Frage nun : Für diese Servoaktion reicht doch das PWM-Signal EINER LED?! Kann ich dann ohne weiteres auf den von euch hier eingestellten Quellcode zurückgreifen und damit experimentieren? Da ich auf diesem Gebiet ein absoluer Neuling bin hab ich nur ein klein wenig Angst, mir irgendwas zu zerstören.

Achso......ja.....der Servo ist ein ZEBRA ZS-F100.

Würde mich sehr freuen, wenn mir da jemand helfen könnte!

Vielen Dank im Voraus!

Gruß

sneiser

radbruch
04.05.2011, 18:08
Hallo

Das Servo sollte schon ausreichen. Wenn du nur eine Led benötigst würde ich dafür die rote Statusled verwenden. Das würde keine andere Funktion behindern. Einzige Einschränkung wäre der vorsichtige Umgang mit StatusLED(), weil diese Funktion ein Servosignal an der roten StatusLED verändern würde. Die Ansteuerung wäre dafür sehr einfach:


#include "asuro.h"

char statusledgreen;
int i, p;

int main(void)
{
Init();
for(i=0; i<1000; i++) Sleep(72); // Pause eine Sekunde bei 72kHz-Library

// In asuro.h werden die Farben der StatusLED so definiert:

// #define GREEN 1
// #define RED 2
// #define YELLOW 3

// Zusätzlich wird noch dies definiert:

// #define OFF 0
// #define ON 1


// Da wir zum Setzen der grünen LED die Funktion StatusLED() nicht verwenden dürfen
// merken wir uns ihren Status in der Variablen statusledgreen und schalten sie aus
statusledgreen = OFF;

while (1)
{
for(i=0; i<50; i++) // Impuls 50 mal senden (1 Sekunde!)
{
StatusLED(RED+statusledgreen); // Implus high ausgeben
Sleep(54); // -45° 0,75ms
StatusLED(statusledgreen); // Implus low ausgeben
p=72*20-54; // Impulspause
while(p > 255)
{
Sleep(255);
p=p-255;
}
Sleep(p);
}
if(statusledgreen == ON) statusledgreen=OFF; // grüne StatusLED umschalten
else statusledgreen=ON;

for(i=0; i<50; i++)
{
StatusLED(RED+statusledgreen);
Sleep(72); // Mitte 1ms
StatusLED(statusledgreen);
p=72*20-72;
while(p > 255)
{
Sleep(255);
p-=255;
}
Sleep(p);
}
if(statusledgreen) statusledgreen=0;
else statusledgreen=1;

for(i=0; i<50; i++)
{
StatusLED(RED+statusledgreen);
Sleep(90); // +45° 0,125ms
StatusLED(statusledgreen);
p=72*20-90;
while(p > 255)
{
Sleep(255);
p-=255;
}
Sleep(p);
}
if(statusledgreen) statusledgreen=0;
else statusledgreen=1;

for(i=0; i<50; i++)
{
StatusLED(RED+statusledgreen);
Sleep(72);
StatusLED(statusledgreen);
p=72*20-72;
while(p > 255)
{
Sleep(255);
p-=255;
}
Sleep(p);
}
// if(statusledgreen) statusledgreen=0;
// else statusledgreen=1;

}
return(0);
}ungetestet

Gruß

mic