Welcome! Log In Create A New Profile

Advanced

Autosampler zu Repstrap umbauen

Posted by Thias 
Re: Autosampler zu Repstrap umbauen
January 03, 2011 03:39PM
Hast du denn nicht mal versucht raus zu bekommen ob die Orginalsoftware keinen g-Code versteht ? Vielleicht kann man die irgendwie misbrauchen ? Mit Skeinforge kann man da einiges trixen. Indem man Befehle umbenennt im g-code.


Mfg
Wolfgang
Aller Anfang war schwer - Wolfstrap Reprap-fab.org Meine Meinung

Erfahrungen kann man leider schlecht weiter geben, die muss man selber machen.
Re: Autosampler zu Repstrap umbauen
January 04, 2011 08:25AM
Nein, die Originalsoftware verwendet ein seltsames Format, das auch Rückantwort vom Autosampler erwartet...

Ich habe es jetzt doch tatsächlich geschafft, die Motoren zu gleichmässigem Drehen zu überreden. Dabei ist mir aber folgendes Aufgefallen: Die Achsen des Autosamplers haben unterschiedliche Gewindesteigungen. Ander ausgedrückt, die X-Achse braucht pro mm mehr Umdrehnungen als zB die Z-Achse. Kann man das mit der RepRap-Software rauskalibrieren/kompensieren?
Re: Autosampler zu Repstrap umbauen
January 04, 2011 08:34AM
Ja, die achse kann man einzeln angeben...

Auzug aus der Firmware:

#define X_STEPS_PER_MM 7.962575
#define X_STEPS_PER_INCH (X_STEPS_PER_MM*INCHES_TO_MM) // *RO
#define INVERT_X_DIR 1

#define Y_STEPS_PER_MM 7.962575
#define Y_STEPS_PER_INCH (Y_STEPS_PER_MM*INCHES_TO_MM) // *RO
#define INVERT_Y_DIR 1

#define Z_STEPS_PER_MM 595.28423
#define Z_STEPS_PER_INCH (Z_STEPS_PER_MM*INCHES_TO_MM) // *RO
#define INVERT_Z_DIR 0


Mfg
Wolfgang
Aller Anfang war schwer - Wolfstrap Reprap-fab.org Meine Meinung

Erfahrungen kann man leider schlecht weiter geben, die muss man selber machen.
Re: Autosampler zu Repstrap umbauen
January 04, 2011 02:33PM
So, ich habs Hardwareseitig fertig mit den Motorcontrollern. Alle 3 sind verdrahtet. Mit meiner eigenen Software fahren die Motoren schnell und ohne Schritte zu verschlucken. 100 Schritte pro 360°. eye popping smiley smiling smiley

Jetzt muss ich "nur" noch der RapRap-Software beibringen, wie die Dinger angesteuert werden. Na, das kann ja heiter werden *fG*

Ich muss die überhaupt erst mal finden...

Gruss
Matthias (der sich jetzt mal hinsetzt und "genüsslich" mit ner Tasse Kaffee ein wenig im Soucecode stöbert)

Edith meint: Ne, du Vogel! Wie wärs, wenn du dich noch um die Endanschläge kümmern würdest?


Edit2: Mir ist noch ne Frage eingefallen. Ich hab ja nen Arduino Mega als "Mainboard". Welche Softwareversion ist da für mich die richtige? Die da?

Edited 3 time(s). Last edit at 01/04/2011 02:43PM by Thias.
Re: Autosampler zu Repstrap umbauen
January 04, 2011 03:41PM
Die da, da ist alles drinn:
[sourceforge.net]


Mfg
Wolfgang
Aller Anfang war schwer - Wolfstrap Reprap-fab.org Meine Meinung

Erfahrungen kann man leider schlecht weiter geben, die muss man selber machen.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 03:34AM
Danke für den Link, Wolfgang. Den kannte ich zwar schon, aber von dir gepostet wurde mir dann klar, dass er für den Arduino Mega geeignet ist.

Kleines Update:
Ich habe mir also den Quellcode angeschaut (naja, überflogen trifft es eigentlich besser), bis mir die Augen zugefallen sind.
Bisher habe ich verstanden, dass es bei den Popolu so zu sein scheint, dass es 2 Pins für das Auslösen eines Step gibt, einen Direction und einen Step. Step auf high macht einen Step, Direction gibt vor in welche Richtung.
Ich habe in der Datei cartesian_dda.h die Funktionen gefunden, die den Step für die jehweilige Achse auslösen. An der Stelle könnte ich meine Step-Routine einsetzen. Soweit, so gut.

Die Richtungsänderungsfunktion hab ich noch nicht gefunden. Da müsste ja der Direction-Pin umgeschaltet werden. An der Stelle müsste ich stattdessen meine Datenpins vertauschen. Denn bei meiner Controllerlogik dreht der Motor in die andere Richtung, wenn ich die zwei Steuerleitungen vertausche, und nicht, wenn ich die Step-Impuse andersrum abspule...
Also muss ich noch die Richtungsumkehrfunktion finden....

Gruss
Matthias

Edit:
Habs gefunden.
//set our direction pins as well
   
  byte d = 1;
  	
#if INVERT_X_DIR == 1
  if(x_direction)
    d = 0;
#else
  if(!x_direction)
    d = 0;	
#endif
  digitalWrite(X_DIR_PIN, d);
Das ist wohl der Teil, den ich ersetzen muss. Diese auskommentierten Zeilen, die hab ich noch nicht so ganz gerafft. Kommen die ins Spiel, wenn ich bei in der Configurationsdatei was ändere? Wie / Wovon werden die dann auskommentiert?

Edited 2 time(s). Last edit at 01/05/2011 03:55AM by Thias.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 04:11AM
Da wendest du dich besser an den Markus (Traumpflug) das ist dem sein Fach winking smiley


Mfg
Wolfgang
Aller Anfang war schwer - Wolfstrap Reprap-fab.org Meine Meinung

Erfahrungen kann man leider schlecht weiter geben, die muss man selber machen.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 04:25AM
//set our direction pins as well
   
  byte d = 1;
  	
#if INVERT_X_DIR == 1
  if(x_direction)
    d = 0;
#else
  if(!x_direction)
    d = 0;	
#endif
  digitalWrite(X_DIR_PIN, d);

Im C nennt mann das "pre-processor directives".

Wenn im Configuration.h INVERT_X_DIR = 1 steht denn wird im code
  if(x_direction)
    d = 0;

am sonsten:
  if(!x_direction)
    d = 0;

Die C code stimmt schon wie er geschrieben ist!


Bob Morrison
Wörth am Rhein, Germany
"Luke, use the source!"
BLOG - PHOTOS - Thingiverse
Re: Autosampler zu Repstrap umbauen
January 05, 2011 05:09AM
Re: Autosampler zu Repstrap umbauen
January 05, 2011 05:19AM
Bob ist so ein stilles Wasser, in dem steckt mehr als man erwartet winking smiley


Mfg
Wolfgang
Aller Anfang war schwer - Wolfstrap Reprap-fab.org Meine Meinung

Erfahrungen kann man leider schlecht weiter geben, die muss man selber machen.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 05:49AM
edit: Doppelpost gelöscht, blöde Spam-Fehlermeldung...

Edited 1 time(s). Last edit at 01/05/2011 05:52AM by Thias.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 05:50AM
Danke für die Aufklärung. Mein "C" ist schon ziemlich eingerostet winking smiley
Dass der Code so richtig ist, ist mir schon klar. Nur eben nicht für meinen Controller. Deswegen werde ich das umschreiben müssen. Ich muss statt "digitalWrite(X_DIR_PIN, d);" prüfen, ob d 0 oder 1 ist und entsprechend meine Steruerpins tauschen oder nicht.

OT: Warum bekomme ich immer anzezeigt, ich würde spamen, wenn ich antworte? Nach Neuanmeldung gehts dann...
Re: Autosampler zu Repstrap umbauen
January 05, 2011 05:52AM
Weis ich doch nicht. Bei mir passiert es auch hin und wieder.
Ausloggen/Einloggen behebt das Problem (wie du geschrieben hast).


Bob Morrison
Wörth am Rhein, Germany
"Luke, use the source!"
BLOG - PHOTOS - Thingiverse
Re: Autosampler zu Repstrap umbauen
January 05, 2011 05:54AM
Thias Wrote:
-------------------------------------------------------
> OT: Warum bekomme ich immer anzezeigt, ich würde
> spamen, wenn ich antworte? Nach Neuanmeldung gehts
> dann...

immer wieder was neues... so eine Meldung hab ich noch nie bekommen ?? Mal mit einem anderen Browser versucht ?


Mfg
Wolfgang
Aller Anfang war schwer - Wolfstrap Reprap-fab.org Meine Meinung

Erfahrungen kann man leider schlecht weiter geben, die muss man selber machen.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 06:41AM
Quote
Wolfgang
Mal mit einem anderen Browser versucht ?

eye popping smiley Es gibt andere browsern als FireFox?


Bob Morrison
Wörth am Rhein, Germany
"Luke, use the source!"
BLOG - PHOTOS - Thingiverse
Re: Autosampler zu Repstrap umbauen
January 05, 2011 07:03AM
BTT:
Wie schon geschrieben, habe ich 2 Steuerleitungen zu jedem meinem Controller.
Dir1 und Dir2. Dann habe ich noch Break (bei HIGH wird der Motor gebremst) Dieser wird "hier" als X_ENABLE_PIN bezeichnet.
So schaut der Code aus, mit dem ich die Controller erfolgreich ansteuern konnte:
Der Motor macht so eine Drehung um 360° und gleich anschliessend um -360°
int sensorPin = A0;
int sensorValue = 0;
int stepsPerRev = 100;

void setup() {                
  // initialize the digital pin as an output.
  // Pin 13 has an LED connected on most Arduino boards:
  pinMode(8, OUTPUT);  
  pinMode(9, OUTPUT);
  
}

void loop() {
  // delay (war für Potisteuerung vorbereitet)
  sensorValue = 1; 

  // mach i Schritte nach rechts
  for (int i=0;iEdited 3 time(s). Last edit at 01/05/2011 07:09AM by Thias.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 07:17AM
if(d==1){
#define X_STEP_PIN (byte)8
#define X_DIR_PIN (byte)9
}
else{
#define X_STEP_PIN (byte)9
#define X_DIR_PIN (byte)8
}
So was geht nicht!

Du muss denn sowas ähnliches machen:
byte x_step_pin;
byte x_dir_pin;

#define X_STEP_PIN x_step_pin
#define X_DIR_PIN x_dir_pin

if(d==1){
  X_STEP_PIN = 8;
  X_DIR_PIN = 9;
}
else{
  X_STEP_PIN = 9;
  X_DIR_PIN = 8;
}
Pre-processer wird ausgefuhrt VOR kompilieren.
Mann kann wahrend laufzeit kein pre-processor befehle ausfuhren.


Bob Morrison
Wörth am Rhein, Germany
"Luke, use the source!"
BLOG - PHOTOS - Thingiverse
Re: Autosampler zu Repstrap umbauen
January 05, 2011 07:28AM
Danke für die Aufklärung, Bob. Sieht auch viel richtiger aus, so *fG*

Ich werde leider erst heute abend dazu kommen, an der Hardware zumzubasteln. Dann mache ich noch die Verkabelung der Endstops. Anschliessend kann ich probieren, ob die angedachten Modifikationen so funktoinieren. Bin schon sehr gespannt.

Gruss
Matthias
Re: Autosampler zu Repstrap umbauen
January 05, 2011 07:43AM
rhmorrison Wrote:
-------------------------------------------------------
> > Mal mit einem anderen Browser versucht ?
>
>
> eye popping smiley Es gibt andere browsern als FireFox?


klar, Opera winking smiley


Mfg
Wolfgang
Aller Anfang war schwer - Wolfstrap Reprap-fab.org Meine Meinung

Erfahrungen kann man leider schlecht weiter geben, die muss man selber machen.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 07:55AM
Ich verwende grundsätzlich Opera. Wenns Probleme gibt, weil zB ebay mal wieder was "verbessert" hat, dann FF.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 07:56AM
Dann versehe ich deine Spam-Meldung nicht. Ich hab so was nicht.


Mfg
Wolfgang
Aller Anfang war schwer - Wolfstrap Reprap-fab.org Meine Meinung

Erfahrungen kann man leider schlecht weiter geben, die muss man selber machen.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 02:06PM
Schwitz! Jetzt habe ich alle Strippen für die Endanschläge angelötet und mit Steckern versehen. Ebenso die Enable-Kontakte. Anders die Hardware, die die Achsen ansteuert, ist erstmal fertig drinking smiley
(falls ich nicht wieder was vergessen hab...)

Jetzt gehts an die Firmware. Wo ist der Kaffee?


Edit erster Versuch: Ich habe nur die Pins angepasst und habe versucht, den Code zu compilieren. Mit folgendem Ergebnis:
In file included from FiveD_GCode_Interpreter.cpp:8:
/hostcom.h: In member function 'void hostcom::putInit()':
hostcom.h:96: error: 'Serial' was not declared in this scope
/hostcom.h: In member function 'void hostcom::put(char*)':
hostcom.h:97: error: 'Serial' was not declared in this scope
/hostcom.h: In member function 'void hostcom::put(const float&)':
hostcom.h:98: error: 'Serial' was not declared in this scope
/hostcom.h: In member function 'void hostcom::put(const long int&)':
hostcom.h:99: error: 'Serial' was not declared in this scope
/hostcom.h: In member function 'void hostcom::put(int)':
hostcom.h:100: error: 'Serial' was not declared in this scope
/hostcom.h: In member function 'void hostcom::putEnd()':
hostcom.h:101: error: 'Serial' was not declared in this scope
/hostcom.h: In member function 'byte hostcom::gotData()':
hostcom.h:102: error: 'Serial' was not declared in this scope
/hostcom.h: In member function 'char hostcom::get()':
hostcom.h:103: error: 'Serial' was not declared in this scope
FiveD_GCode_Interpreter.cpp: In member function 'void PIDcontrol::pidCalculation(int)':
pid:120: error: 'bedtemptable' was not declared in this scope
pid:122: error: 'temptable' was not declared in this scope
Seltsam. An der Datei hab ich gar nichts geändert?

Edited 2 time(s). Last edit at 01/05/2011 02:44PM by Thias.
Re: Autosampler zu Repstrap umbauen
January 05, 2011 03:31PM
Ich bekomme diese Fehlermeldung auch, wenn ich den Code frisch entpacke und ohne Änderungen checke...
Ich verwende Arduino Version 22 unter Win7 64bit. Java JDK ist die neueste Version, aber das sollte ja nichts damit zu tun haben?


Edit:
Nach einigem gefummel hab ich jetzt nochmal von vorn angefangen. Hab mir die Arduino Version 18 runtergeladen, meine pins.h nochmal neu geändert und siehe da, der Compiler meckert nicht mehr.

Edited 1 time(s). Last edit at 01/05/2011 06:15PM by Thias.
Re: Autosampler zu Repstrap umbauen
January 06, 2011 06:31AM
Oh, wie ich es liebe!
Ich habe nur komische 64-bit-Betriebsystem-Probleme. Zumindest denke ich, dass es so ist.

Wenn ich meine FW auf den Arduino flashe, was inzwischen funktioiniert, kann ich die reprap-Software (die 64bit version) zwar starten, wenn ich aber den debug-Modus aktiviere, bekomme ich Fehlermeldungen statt des Textes, der kommen sollte (laut "Testing the Mainboard"

Das Ärgerliche: Am XP-Laptop meiner Frau läuft es anstandslos. angry smiley

edit:
Die Fehlermeldung lautet :
C:\Reprap>java -cp ".\reprap.jar;.\RXTXcomm.jar;.\j3dcore.jar;.\j3d-org-java3d-a
ll.jar;.\j3dutils.jar;.\swing-layout-1.0.3.jar;.\vecmath.jar;." -Xmx1024M org/re
prap/Main
WARNING:  RXTX Version mismatch
        Jar version = RXTX-2.2pre1
        native lib Version = RXTX-2.2pre2
comms: G-code: N0 T0 *26 dequeued and sent [0,000s/-1294313658845ms]
comms: GCodeWriter.waitForOK() dud response: rs 0 Serial Error: checksum mismatc
h.  Remote (26) not equal to local (42), line received: 0000000N0 T0 *26 [0,069s
/69ms]

Edited 1 time(s). Last edit at 01/06/2011 06:37AM by Thias.
Re: Autosampler zu Repstrap umbauen
January 06, 2011 06:45AM
die Schnittstelle läuft nicht richtig. Der wartet auf ein OK, und da kommt was anderes.


Mfg
Wolfgang
Aller Anfang war schwer - Wolfstrap Reprap-fab.org Meine Meinung

Erfahrungen kann man leider schlecht weiter geben, die muss man selber machen.
Re: Autosampler zu Repstrap umbauen
January 06, 2011 10:41AM
Noch eine Hardware-Frage. Ich hab ja quasi 2 Netzteile. Eins "füttert" die Motoren und eins den Arduino. Jetzt muss ich ja die Endstops an den Arduino anschliessen. Die Enstops sind Mikroschalter, die bei drücken trennen. Den einen Pin der Microschalter hab ich am Arduino an einen der Digitaleingänge, den anderen muss ich mit +5V beschalten. Ist es da egal, ob die 5V vom Arduino-Board oder vom Netzteil der Motoren kommen? Vermutlich schon, oder? Weil ich das "aus Versehen" so gemacht habe und mich dann wunderte, dass der Arduino mit ansprang, wenn ich das Motornetzteil angschaltet hab.
Und wärend ich das schreibe denke ich mir: Warum machst du den Arduino eigentlich nicht einfach mit an das Netzteil dran, wenn es schon 5V liefert? Bisher verwende ich ein separates Steckernetzteil für den Arduino.
Tja, manchmal muss man nur über das Problem reden, dann löst es sich von allen. Danke an alle "Zuhörer", ihr habt mir sehr geholfen *fG*
Und wenn ich jetzt schon so viel getippt hab, muss ichs auch posten. Nicht, dass am Ende der deutsche Forumteil sein "DEV" wieder verliert, mangels Beiträge smiling smiley
Re: Autosampler zu Repstrap umbauen
January 06, 2011 12:05PM
Falls es jemanden hilft: Ich hatte auch probleme mit dem Flashen von dem Arduino Mega 2560. Hab dann mal die ältere Version 20 versucht. Hat super geklappt....
Re: Autosampler zu Repstrap umbauen
January 06, 2011 04:03PM
Wie kann ich denn, wenn ich das Teil dann irgendwann angeschlossen bekomme, die einzelnen Komponenten durchtesten? Also Quasi manuell die Motoren bewegen und Schalterstellungen anschauen?
Re: Autosampler zu Repstrap umbauen
January 06, 2011 04:39PM
[objects.reprap.org]


Mfg
Wolfgang
Aller Anfang war schwer - Wolfstrap Reprap-fab.org Meine Meinung

Erfahrungen kann man leider schlecht weiter geben, die muss man selber machen.
Re: Autosampler zu Repstrap umbauen
January 06, 2011 04:49PM
*mir an den Kopf klatsch*
Danke. Manchmal sollte man die Seiten auch runterscrollen, die man schon offen hat cool smiley
Sorry, you do not have permission to post/reply in this forum.