Eben über die eingebaute Scan-Linse. Aber die ist eben für Infrarot berechnet.
:
Bearbeitet durch User
Karl Otto schrieb: > Eben über die eingebaute F-Theta Linse. Aber die ist eben für Infrarot > berechnet. Da ich mich damit nicht wirklich auskenne, frag ich mal ganz dumm: die Brennweite ändert sich mit der Lichtfarbe, soweit klar. Könnte die Wirkung der F-Theta Linse auch bei UV erhalten bleiben, nur der Abstand zur Zielebene oder zum Laser ändert sich? MfG Klaus
Kommt drauf an wie genau die Linse funktioniert. Kann sein, muss nicht. Da aber die meisten Projekte die ich gesehen habe die Linse entfernen, ist dem offenbar nicht so. Um meinem Argument nochmal Substanz zu geben. Hier gibt es Leute, die haben beides probiert: http://pcbwriter.github.io/photos.html So sieht es mit Polygonspiegel aus (man achte auf die Schrift): http://pcbwriter.github.io/img/demo_thorin_full.jpg Und so mit nem einfachen Laser in der CNC: http://pcbwriter.github.io/img/dan_strother_spartan_6_full.jpg Und genau deshalb stellt sich mir die Frage, ob der Aufwand mit dem Polygonspiegel das Ergebnis wert ist... Aber das ist sicher eine individuelle Entscheidung.
Hallo Otto, Das BGA Board sieht schon sehr fein aus! Da gebe ich dir Recht. Das wird mit dem Polygonspiegel wahrscheinlich nicht ralisierbar sein. Wie erzeugst du denn den G-Code für deine Platinen? Da müsste ja was in 3D rauskommen, wenn du die Breite noch mit der Z-Achse verstellst. Gibt es da Problem mit der Beleuchtungsstärke? Wenn der Punkt größer ist verteilt sich die Energie ja auf eine größers Fläche. Oder fährst du da unterschiedlich schnell? Gruß, Jens
Praktisch gesehen mache ich da noch gar nicht so viel. Im Moment baue ich erstmal den laser, den Treiber und die Halterungen und rechne das Ganze ein Bisschen durch. Aber Deine Fragen: >Wie erzeugst du denn den G-Code für deine Platinen? Da müsste ja was in >3D rauskommen, wenn du die Breite noch mit der Z-Achse verstellst. Ich will das entweder über 2 Anschlagpunkte realisieren, so dass der Laser in der 1 mm oder 0.1 mm Stellung ist. Oder aber über die Werkzeuglänge. >Gibt es da Problem mit der Beleuchtungsstärke? Wenn der Punkt größer ist >verteilt sich die Energie ja auf eine größers Fläche. >Oder fährst du da unterschiedlich schnell? Genau. Die Verfahrgeschwindigkeit ergibt sich aus der Punktfläche. Im Moment habe ich noch ein wenig das Problem, dass ich den G-Code nicht vernünftig splitten kann, so dass man das Grobe mit dem einen Punkt un das Feine mit dem anderen macht.
Karl Otto schrieb: > Kommt drauf an wie genau die Linse funktioniert Schade, hab gedacht ich könnte gerade das von dir lernen ;) MfG Klaus
Das hängt von der Linse ab. Für eine ideale dünne Linse würde es gehen, für eine dicke komplexe nicht. Da es bei den Dingern aber diverse Konstruktionen gibt, oftmals sogar mehrlinsig, die jeweils andere Eigenschaften haben, kann man das so nicht sagen. Das ist ja gerade das Problem bei diesen Konstruktionen, dass jede Druckereinheit anders ist. Allerdings würden mich sehr Aufösungstests interessieren. Viel mehr als Best-Case Bilder habe ich nicht gefunden. Auch beim Labor nicht. Das würde mich wirklich interessieren, WIE gut es mit dem Polygonspiegel denn geht.
Niels Janson schrieb: > Außerdem > muss der Abstand von Linse zu Platine ja auch noch weit unter 0,5 mm > liegen Ist das so korrekt? Zwischen Linse und PCB ist ja auch noch die Glasplatte mit schätzungsweise 2 - 3 mm. Karl Otto schrieb: > Ich habe > selbst damit experimentiert Das ist ja interessant. Mit welchem Ergebnis? Karl Otto schrieb: > D.h. bei einer Platinenbreite von 10 cm hat man am Rand eine > Strahllänge von 6 cm plus 1,8 cm! Wie soll das vom Fokus her gehen? Durch die in der Belichtungseinheit eingebaute Optik. Das funktioniert sehr gut - ich arbeite aktuell mit einer Breite von ca. 16 cm. Karl Otto schrieb: > Es wäre sehr nett, wenn Dieter mal Bilder einstellen könnte, wie 10 mil > Leiterbahnen mit 10 mil Abständen am Rand der Platine (10 cm breit), wie > auf halber Breite und wie sie in der Mitte aussehen. Habe ich schon. Und nicht nur ich. Wenn Du auf Fritz Richters Beitrag vom 23.10.2013 schaust siehst Du dort ein Layout mit dem Footprint eines kleinen quadratischen Chip. Es handelt sich um einen IC-HG von IC-Haus. Die Pads für den Anschluss sind ca. 0,30 mm breit, der Abstand dazwischen beträgt ca. 0,2 mm. Also etwas mehr und etwas weniger wie 10 mil. Auch Fritz arbeitet mit der Original-Optik. Ich habe ein ähnliches Layout (seitenverkehrt und ohne Masseflächen) im Beitrag vom 29.11.2013 gepostet. Mein Anschlag ist rechts (in Fahrrichtung) also nicht mittig etc. Du spielst wahrscheinlich auf die Verzerrungskorrektur von "tixiv" an. Die brauche ich nicht, da z.B. bei dem 1/4-cm-Test-Raster keine Verzerrungen auftreten. Ich kann gerne mal ein beliebiges Layout im Europakartenformat belichten und entwickeln (Ätzen geht aktuell nicht). Kannst auch gerne zu mir kommen und das vor Ort begutachten ... Karl Otto schrieb: > Wie macht Ihr das eigentlich mit dem Zoll? Kommen die bei Euch durch? Bisher vollkommen ohne Stress für mich. Bei größeren Teilen aus China habe ich bisher 2 mal Zoll gezahlt - aber alles ist durchgekommen. Karl Otto schrieb: > Um meinem Argument nochmal Substanz zu geben. Hier gibt es Leute, die > haben beides probiert: Sieht schon merkwürdig aus. Bei der ersten Platine sieht die Schrift in der Tat kurios aus - die Leiterbahnen sind aber O.K. Die 2. Platine kann ich nicht deuten. Die ist schon mal nicht geätzt - oder? Sieht aus wie ein Druck / Plot auf die Kupferseite. Beschrieben ist da auch nichts - falls ich es nicht übersehen habe. Karl Otto schrieb: > Ich will das entweder über 2 Anschlagpunkte realisieren, so dass der > Laser in der 1 mm oder 0.1 mm Stellung ist. Ist das dann nicht vollkommen egal? Du musst in jedem Fall die benötigte Energie auf eine definierte Fläche bekommen. Ob Du nun schnell mit einem kleinen Punkt oder entsprechend langsam mit einem großen Punkt drüber gehst - die erforderliche Zeit dürfte nahezu gleich sein. Zusätzlich handelst Du Dir mit den verschiedenen Durchmessern noch interessante Steuerungs-Probleme ein, die vermutlich einiges an know-how erfordern. Da bin ich gespannt. So - reicht erstmal :-)
Um vielleicht etwas Licht ins Dunkel zu bringen bzgl. der F-Theta Linse: Hier ist die Grundlegende Funktion dargestellt (Edit: Unter "F-Theta-Tutorial"): http://www.thorlabs.de/newgrouppage9.cfm?objectgroup_id=6430 Im Vergleich zu einer "einfachen" sphärischen Linse, beschreibt der Fokus bei Scan- und F-Theta-Linsen keine Kreisform, sondern wird immer auf einer Ebene abgebildet. In den Belichtungseinheiten ist wahrscheinlich eine relativ einfache Scanlinse bzw. Linsenkombination verbaut. Das Problem das Karl Otto anspricht ist, dass keiner weis wie stark dieser ebene Verlauf des Fokuspunktes für Wellenlängen um 400nm abweicht. Thorlabs gibt für seine Scanlinsen die Größe des Fokuspunktes bei unterschiedlichen Winkeln und Wellenlängen an. Eine solche Angabe wird man aber für die Linsen aus den Belichtungseinheiten nicht finden. Deshalb hilft nur ausprobieren, ob die Größe des Fokuspunktes sich für diese Anwendung nicht zu stark ändert.
:
Bearbeitet durch User
Dieter Frohnapfel schrieb: > Niels Janson schrieb: >> Außerdem >> muss der Abstand von Linse zu Platine ja auch noch weit unter 0,5 mm >> liegen > > Ist das so korrekt? Zwischen Linse und PCB ist ja auch noch die > Glasplatte mit schätzungsweise 2 - 3 mm. Die Frage kam mir auch schon in den Sinn, eine Antwort konnte ich selbst noch nicht finden :/ Hier aber mal die Quelle meiner Information: http://www.bluray-disc.de/faq/was-ist-der-unterschied-zwischen-blu-ray-und-der-dvd Abstand Linse zu Oberfläche: Blu Ray DVD 0.1 mm 1.0 mm Abstand Oberfläche zu Coverlayer: 0.1 mm 0.6 mm Auch wenn innerhalb des "Blu Ray Disk Körbers" der Laser noch stark in seiner Fokussierung beeinflusst wird, wüsste ich nicht, wie man die Einheit aus einem Blu Ray Laufwerk davon überzeugen will, solch eine große Brennweite zu realisieren. @Karl Otto Zwar muss ich anerkennen, das deine Herangehensweise an das Thema die wahrscheinlich durchdachteste und fundierteste ist, dennoch wundere ich mich über deinen Ansatz mit den Unterschiedlichen Abständen. Das sehe ich so wie Dieter, mit größerem Abstand verringert sich die Energie pro Fläche und du musst wieder langsamer fahren. @Dieter Danke für den Link, das Lasermodul sieht ja sogar fast so aus, wie bei den Kollegen drüben im LaserFreak Forum, wo unser Thema scheinbar auch ab und an aufgegriffen wird: http://www.laserfreak.net/forum/viewtopic.php?f=43&t=50342&p=217700#p217700 Soviel mal wieder von mir, ich plage mich erstmal weiter mit der Software rum und Interrupts, die sich vollkommen in die Quere kommen ~.~ Beste Grüße Niels
:
Bearbeitet durch User
Ich kann eine Gerber Datei mit usaf1951 Charts zusammenstellen. Welche Auflösung denkt ihr dass sicher machbar ist? Welches Format wurdet ihr dann belichten? Im Anhang die Auflösungen beim normalen USAF chart. Ich wurde vorschlagen sowas auszubelichten und schauen in welchen Bereichen welche horizontale verticale und diagonale Auflösungen erreicht werden können. Es wurde mich sehr interessieren.
Niels Janson schrieb: > Die Frage kam mir auch schon in den Sinn, eine Antwort konnte ich selbst > noch nicht finden :/ Da hätte ich mal die Projekt-Seite besser lesen sollen - die sagen das der Fokus-Abstand 1,6 mm (scheinbar maximal) ist und die Glasplatte entsprechend dünn sein muss ... The laser beam should be pointing up so we could support the PCB on a glass. The glass should be very thin as the focal distance of the pickup is only 1.6mm. Das ist schon sehr wenig ... obwohl es bei einer xy-Lösung eigentlich egal sein sollte wie nah des Laser an der Platine ist. Vorteil ist wahrscheinlich, dass kein großer "Halo" um den Laserpunkt herum ist. Mit Glasplatte würde ich auch nicht arbeiten - aber 1,6 mm "Flughöhe" sind sicher machbar. Bei dem Laserfreak-Link sieht man auch die Nachteile der "Umriß-Laserbelichtung" mit einem umgebauten Plotter. Die Weggeschwindigkeiten hat man nicht unbedingt im Griff - dadurch ergeben sich leider unterschiedliche Belichtungen - ja nach Strecke und Richtung (habe hier einen Roland DXY-1100 mit dem ich das probieren wollte - habe aber nch div. Erfahrungsberichten davon abgesehen). Bei einer xy-Lösung mit eigener Ansteuerung hat man das sicher besser im Griff. Ich weiß aber nicht, welche Methode mit xy grundsätzlich besser ist: Umriss-Lasern oder Zeilenweise Lasern? Chris S. schrieb: > Ich kann eine Gerber Datei mit usaf1951 Charts zusammenstellen. Das (usaf1951) musste ich Dummi erstmal googlen :-) Warum Gerber-Format? Ein schönes, hochaufgelöstes PDF (mit Platinenbegrenzungslinien) wäre z.B. mir persönlich lieber.
Dieter Frohnapfel schrieb: >> Niels Janson schrieb: >> Die Frage kam mir auch schon in den Sinn, eine Antwort konnte ich selbst >> noch nicht finden :/ > > Da hätte ich mal die Projekt-Seite besser lesen sollen - die sagen das > der Fokus-Abstand 1,6 mm (scheinbar maximal) ist und die Glasplatte > entsprechend dünn sein muss ... Die Stelle hatte ich noch gar nicht gefunden, ist aber interessant. Kommt evtl daher, dass das BR Modul vielleicht auch für mehrlagige Disks gemacht sein könnte, da muss der Laser ja "tiefer" rein. Grundlegend sollte eine xy-Umrissmethode die schnellste sein. Da wir bisher ja auch die Motorsteuerung selbst aufgebaut haben, sollte es nicht so das Problem dar stellen auf den horizontalen bzw vertikalen Wegen die Geschwindigkeit passend zu reduzieren, oder vielleicht sogar die Laserleistung zu erhöhen? Sowas kommt allerdings für mich aktuell noch nicht in Betracht, durch die Übersetzungen der Motoren habe ich bei jedem Richtungswechsel enormes Spiel. Auf der x-Achse nur einen Schritt, auf der y-Achse allerdings Werte im zweistelligen Bereich :/ Grüße gen Abend Niels PS.: >Das (usaf1951) musste ich Dummi erstmal googlen :-) Warum Gerber-Format? >Ein schönes, hochaufgelöstes PDF (mit Platinenbegrenzungslinien) wäre >z.B. mir persönlich lieber. Hab ich auf der englischen Wikipedia gefunden, zwar fehlt die Umrandung, aber die sollte leicht einzufügen sein: http://www.takinami.com/yoshihiko/photo/lens_test/USAF.pdf
:
Bearbeitet durch User
Ich hatte sei es die PS wie auch PDF in diesem topic schon gepostet. Such einfach nach 1951.pdf . Auch PDF ist kein Problem. Generell ist es aber problematisch ein PDF in erforderlicher Auflösung als Eingangsdaten zu verwenden. Hängt von der SW ab. Wie ist das Platinenmaß ?
ach noch ein hinwis zu dem HD DVD pcb belichter. Die Glasplatte wurde noch mit einer folie beschichtet um den divusen anteil um den laser spot los zu werden.
Jens schrieb: > Die Geschwindigkeit, Beschleunigung beim Bremsen und Anfahren kann ich > per Softwareparameter einstellen. Sagma kannst du mir eigentlich mal den Software Schnipsel davon zukommen lassen? Als ich gerade mal das Spiel bestimmt habe, das ich beim Richtungswechsel habe, habe ich auch mal ein wenig mit den Zeiten herumgespielt und siehe da: Dank des Interruptbetriebes kommt mein Schlitten jetzt auf die Geschwindigkeit von relativ genau 1 ms / Halbschritt :D Und mit ein wening Anfahrhilfe (Anschieben) geht da sogar noch mehr, und das bei leppischen 5 V. Ach übrigens: Ich bastele gerade zumindest vorerst ein Frontend mit Matlab. Das sieht soweit auch ganz gut aus, den Bitstrom für eine Platine kann ich inzwischen komplett erzeugen, inkl. des Richtungswechsels und ein paar leeren extra Schritten, um bei mir das Spiel auszugleichen. Jetzt muss ich "nur" noch die Kommunikation fertig machen und dann... ja.. dann muss ich mir wohl ein Lasermodul und den passenden Treiber dazu kaufen >.<
Hallo Niels, Ich muss mal sehen wo ich die Software hin geräumt habe. Der Sourcecode war eine AppNote von Atmel. Die habe ich nur auf meinen Controller portiert und habe das Mikrostepping eingefügt. Das brauchst du ja nicht, bzw. das kann dein Treiber gar nicht. Sonst ist der Code schon offen. Was willst du den für einen Treiber nehmen? Hast du da schon was rausgesucht. Der Treiber aus dem Labor funktioniert wirklich sehr gut. Ich habe noch keinen gefunden der schneller einschwingt! Gruß, Jens
Karl Otto schrieb: > Frontend in Matlab? Das klingt gut! Kannst Du das hier teilen? Klar kann ich das teilen^^ Allerdings ist der Code noch sehr unordentlich, geträu dem Motto geschrieben: "Cool, es funktioniert (irgendwie)" Die relevantesten Zeilen sind die folgenden:
1 | spiel = 12; %Spiel in Schritten, die beim Richtungswechsel verloren gehen |
2 | IMG = imread(dir); %Layout einladen |
3 | IMG = imcomplement(IMG); %Layot Invertieren |
4 | [y, x] = find(IMG); %x- und y-Koordinaten aller Punkte ermitteln |
5 | x_min = min(x); %Kleinste x-Stelle finden |
6 | x_max = max(x); %... |
7 | y_min = min(y); |
8 | y_max = max(y); |
9 | IMG2 = IMG(y_min:y_max, x_min:x_max); %Neues Layout mit kleinstmöglichen Maßen erstellen |
10 | [y_range, x_range] = size(IMG2); %Größe des neuen Layouts ermitteln |
11 | for i = 1:2:x_range-1 %Jede zweite Zeile umdrehen |
12 | IMG2(:,i) = IMG2(end:-1:1,i); |
13 | end |
14 | IMG = (ones(y_range + spiel, x_range)==1); %neues leeres Bild erstellen, das um das Spiel größer ist |
15 | IMG(1:y_range,1:x_range) = IMG2; %Layout in neues Bild einfügen |
16 | imshow(IMG); %Bild darstellen |
17 | [y_range, x_range] = size(IMG); %Größe des neuen Bildes berechnen |
18 | stream = IMG(1,:); %erste Zeile des Bildes in Stream einfügen |
19 | for i = 2:y_range %Restliche Zeilen in Stream einfügen |
20 | stream = horzcat(stream, IMG(i,:)); |
21 | end |
Oben im Bild sieht man auch, was aus dem Layout gemacht wird. In dem Array "stream" ist am Ende die komplette Pixelabfolge gespeichert, als ob sie im zickzack vom Originalbild gescannt wäre. Allerdings mit einem Puffer, der im Bild als weißer Balken unten zu sehen ist, um die Schritte, die beim Richtungswechsel verlorgen gehen, zu puffern. Wenn ich es geschafft habe, den stream dann auch an den Controller zu senden, mache ich das ganze dann auch ein wenig schöner. Als Input sollten übrigens alle monochromen Bilder fungieren können, ich habe mir zu testzwecken eine TIF Datei mit Target erstellt, die mit 600 dpi auflöst. @Jens Dann mache ich mich doch mal auf die Suche nach dieser Appnote. Ohne Mikrostepping sollte das dann ja auch noch ein wenig einfacher sein. Und nein, einen Treiber habe ich mir noch nicht raus gesucht. Bei der guten Werbung, die du für den aus dem Labor machst, habe ich aber wohl kaum eine andere Wahl ;) Beste Grüße Niels
:
Bearbeitet durch User
Ich kann die AppNote auch hier posten. Aber die habe ich nur Zu Hause. Würde bis heute Abend dauern. Ich habe da auch zu den Schrittmotoren noch mehr gesammelt. Vielleicht ist da noch anderes Zeugs interresant für die Allgemeinheit. Gruß, Jens
Hallo Niels, ich habe nachgeschaut: AVR446: Linear speed control of stepper Motor Da gibt es bei Atmel auch das AVR446.zip und da sind die ganze Sourcen drin. Bei mir finde ich die Sachen leider nicht auf die Schnelle. Über Google findest du das recht leicht. Gruß und schönen Abend, Jens
Die AppNote ist ja wirklich mal beachtlich, sehr interessant. Da ist ja absolut alles mit dabei, was man so braucht, sogar eine Help Ausgabe über rs232, wenn man nicht weiter weiß Oo mal gucken, ob ich den mega8 nochmal zu ein wenig Arbeit überzeugen kann, das will ich doch mal in Gänze live sehen. Beste Grüße Niels
Ja, das einzige was mich gestört hat war die Ausgabe. Alles was da auf der Konsole ausgegeben wird kompiliert der in den RAM. Da ist dann schnell Ende. Man müsste die ganzen printf()-Sachen ins Flash legen, da sich die Teile nicht ändern. Das war mir aber zu viel Aufwand und das brauchte ich auch nicht, also habe ich das alles rausgeschmissen. Gruß, Jens
Joa, jetzt nachdem ich nochmal drüber geguckt habe, dachte ich mit auch, dass ich das lieber alles raus lasse. Den Rest umzuschreiben war schon umständlich genug, auch wenn es aktuell noch nicht laufen will <.< Naja, ich hab ja Zeit Grüße Niels
Hallo Niels, das mit dem Umschreiben habe ich auch probiert - und irgendwann wieder fallen lassen. Mir hat das http://hwml.com/LeibRamp.pdf geholfen. Habe ich im Excel nachvollzogen und dann programmiert. Mein Coding ist halt sehr speziell auf meine Bedürfnisse angepasst - kannst es aber gerne haben. Gruß Dieter
Dieter Frohnapfel schrieb: > das mit dem Umschreiben habe ich auch probiert - und irgendwann wieder > fallen lassen. > > Habe ich im Excel nachvollzogen und dann programmiert. Mein Coding ist > halt sehr speziell auf meine Bedürfnisse angepasst - kannst es aber > gerne haben. Danke dir, das hilft bei dem theoretischen Hintergrund schonmal gut weiter. Den Code würde ich natürlich gerne mal sehen ;) Dennoch wurmt es mich ein wenig, dass ich die AppNote noch nicht zum laufen gebracht habe. Es passiert einfach nichts, außer, dass der erste Schritt ausgegeben wird, wahrscheinlich also ein Timer/Interruptproblem :/ Beste Grüße Niels
Wo ist das Problem? Wenn ich mich recht erinnere macht Atmel das in der AppNote mit dem IAR Compiler. Da sind einige Sachen anders. Aber sonst sollte alles laufen. Gruß
Niels Janson schrieb: > Den Code würde ich natürlich gerne mal sehen ;) O.K. - auf die Gefahr hin, dass ich hier verrissen werde ... Habe das (glaube ich hatte ich schon umgeschrieben) App-Coding auch mit beigefügt. Hat auch bei mir nicht richtig funktioniert - deshalb die andere Lösung.
Jens schrieb: > Wo ist das Problem? Gute Frage, scheinbar wird die Main Routine in Dauerschleife aufgerufen, sieht so aus, als ob der Controller sich die ganze Zeit resettet. Zumindest flackert mein LCD Display massiv, obwohl es nur einmal vor der Dauerschleife aufgerufen wird. > Da sind einige Sachen anders. Aber sonst sollte alles laufen. Die, so dachte ich zumindst, habe ich auch alle angepasst. Wie gesagt, ich begebe mich nachher nochmal auf die Suche. Beste Grüße Niels
Niels Janson schrieb: > (end:-1:1,i) Danke für den Code, sehr interessant. Das obige lässt sich übrigens eleganter mit dem Befehl fliplr lösen. Gibt auch flipud.
Hallo Niels, das hatte ich auch. Das liegt an der Ausgabe über UART. Die ist Interrupt gesteuert und die machen das mit einem anderen Vector. In den originalen Codes war wenn ich mich recht erinnere der RX-Vektor verwendet. Der ist aber zustandsgesteuert. Das heist, solange dein Senderegister leer ist wird der solange gefeuert bis du was rein schreibst. Wenn du da den UDRE Interrupt nimmst, der wird nur einmal gefeuert. Ich würde die Uart erst pollen und dann nach und nach umstellen. Ich habe meinen Code auch gefunden. Ich kann dir Teile daraus posten. Alles kann ich erst posten wenn ich den aufgeräumt habe. Gruß, Jens
Karl Otto schrieb: > Das obige lässt sich übrigens eleganter mit dem Befehl fliplr lösen. > Gibt auch flipud. Stimmt ja, ich erinnere mich dumpf... Ist leider inzwischen zwei Jahre her, dass ich mich erstnhaft mit MatLab auseinander gesetzt habe. Das Frontend wird wohl mein "Wiedereinstiegsprojekt" ;) Wie gut kennst du dich denn in Matlab aus? Ich tue mich noch ein wenig schwer damit, mir ein vernünftiges Übertragunsprotokoll zusammen zu schustern, denn Matlab will immer noch einen Terminator haben und senden, und das ist bei einem beliebigen Bitstrom immer so ne Sache.. Jens schrieb: > Wo ist das Problem? Inzwischen weiß ich zumindest, dass der Controller sich neu startet, sobald die folgende Zeile aufgerufen wird:
1 | TCCR1B |= ((0<<CS12)|(1<<CS11)|(1<<CS10)); |
Damit kann ich das wo beantworten: Z.135 ;) Jetzt kommt die Frage nach dem warum..
:
Bearbeitet durch User
Mist, jetzt ist das ein Doppelpost <.< Jens schrieb: > das hatte ich auch. Das liegt an der Ausgabe über UART. Kann leider nicht sein. Ich hatte auch eine ähnliche Vermutung, denn bei meinen anderen Varianten haben sich der UART Interrupt und der Timer Interrupt für den Motor ziemlich gezofft. Um dieses Problem aus der Welt zu schaffen, habe ich aber temporär alles, was irgendwie mit dem UART zu tun hat aus dem Code geschmissen, keine uart.h wird mehr included und sogar die uart.c ist aus dem Makefile raus. Erst danach habe ich den Fehler überhaupt genauer lokasisieren können, siehe meinen vorherigen Post. Verwirrte Grüße Niels
In dieser Zeile wird der Timer gestartet. Hast du da vorher einen Interrupt freigeschalten und nicht abgefangen? Klingt so. Kannst du den gesamten Code posten?
Hat sich erledigt, hab's in den Griff bekommen. Ich hatte in der speed_cntr.c vergessen die interrput.h einzubinden, dann ist es auch kein Wunder, dass er aus dem ISR nichts richtiges macht und (wie richtig von dir vermutet) der Interrupt nicht abgefangen wird. In groben Zügen funktioniert das ganze jetzt auch wunderbar, wenn auch noch mit kleinen Einschränkungen: Sauber läuft's nur, wenn ich in die -Richtung fahre, auf dem Rückweg ist es extrem langsam, bzw. beschleunigt in komischen Intervallen ganz plötzlich. Ab und an startet er sich dann auch neu. Ich vermute mal, dass der Compiler noch nicht passend darauf eingestellt ist, und deswegen irgendwelche Berechnungen zu lange dauern. Die abgefahrene Strecke ist nämlich immer korrekt. (Es sei denn es gibt einen Neustart) Wenn die Beschleunigung zu hoch ist, zickt er auch manchmal rum... muss ich später mal sehen, was man da machen kann. Grüße Niels
Hallo Niels, wenn Du Zeilenweise belichtest brauchst Du doch eigentlich gar keine Berechnung einer Rampe im laufenden Betrieb. Du rechnest 1 mal eine kombinierte Beschleunigungs-/Brems-Rampe aus und hinterlegst die. Mit dieser Rampe beschleunigst und bremst Du immer - ab Erreichen der Zielgeschwindigkeit belichtest Du jeweils. Damit hast Du feste Rampen auf beiden Seiten und auch definierte Bereiche ohne Belichtung (Ränder). Wenn Du im "Konturen-Modus" belichten willst sieht das natürlich anders aus ... Gruß Dieter
Hallo Niels, da kann ich dir vielleicht auch weiterhelfen. Du musst in dem Projekt deine Quarzfrequenz richtig angeben und möglichst hoch wählen, damit er eine hohe Auflösung schafft. In der Speed_control.h sehen die defines so aus: // Timer/Counter 1 running on 16MHz / 64 = 250000kHz (4uS). (T1-FREQ 250000) #define T1_FREQ 250000 //! Number of (full)steps per round on stepper motor in use. #define FSPR 720 #define SPR FSPR // Maths constants. To simplify maths when calculating in speed_cntr_Move(). #define ALPHA (2*3.14159/SPR) // 2*pi/spr #define A_T_x100 ((long)(ALPHA*T1_FREQ*100)) // (ALPHA / T1_FREQ)*100 #define T1_FREQ_148 ((int)((T1_FREQ*0.676)/100)) // divided by 100 and scaled by 0.676 #define A_SQ (long long )(ALPHA*2*10000000000LL) // ALPHA*2*10000000000 #define A_x20000 (int)(ALPHA*20000) // ALPHA*20000 // Speed ramp states #define STOP 0 #define ACCEL 1 #define DECEL 2 #define RUN 3 So ist es bei mir und ich lasse den Controler mit 16MHz laufen. Der Wert T1_FREQ soll möglichst hoch gewählt werden für eine gute Auflösung. FSPR sollte bei dir 200 (Vollschritte) sein. Mit diesen Werten kannst du ein bisschen spielen dann siehst du schon ob das richtig läuft. Bei dem Fehler den du beschreibst würde ich einen Variablenüberlauf vermuten. Ich glaube das Problem hatte ich auch und das lag an den Defines. Meine siehst du ja oben. So läuft es bei mir recht sauber wie man auch schon im Video gesehen hat. Gruß, Jens
Hallo Jungs, Ist ja schön das es hier ein bischen weiter geht.Es wurden ja interessante Projekte aufgezeigt. Bei mir war auch einwenig Sendepause.Jetzt habe ich eine Linse, wie sie Niels aufgezeigt hat bekommen. Ist zwar noch super aber verwertbar. Ich konnte,Dank Dieter´s Erweiterung meiner Software auf 60 Kalibrierpunkte, eine Platine 170 X 130 machen. Vorher ging nur Euroformat. Bei einer Geschwindigkeit von 260 ms bin ich da ganz zufrieden. Natürlich solche filigranen Sachen wie sie Karl Otto aufgezeigt hat werde ich wohl nicht machen.Jetzt kann ich endlich mit meiner CNC-Fräse auch bohren und es paßt. Mit Folie vom Drucker ging auch aber CNC-Bohren ging nicht bei der Größe, da gab´s doch Abweichungen. @Dieter Es wäre noch interessant ob der Lasertreiber mit dem IC-Haus-CHip bei mir mit dem OriginalExposer vom Labor auch angesteuert werden kann.Vieleicht ist der Originaltreiber zu langsam. Z.B. bei einer Platine für den IC-Haus-CHip werden die Bahnen quer zur Drehrichtung des Laser´s dünner als die anderen. Übrigens seit dem Umbau auf die Quarzsteurung läuft mein Spiegel störungsfrei. Na dann noch frohes Schaffen Gruß Klaus
Klaus B. schrieb: > Es wäre noch interessant ob der Lasertreiber mit dem IC-Haus-CHip bei > mir mit dem OriginalExposer vom Labor auch angesteuert werden > kann Hallo Klaus, schön mal wieder von Dir "zu hören". Ich gehe davon aus, das dem Lasertreiber die Ansteuerung egal ist :-) Die Platinen (nach meiner Vorgabe :-)) habe ich jetzt - aber ohne Stencil wird das nichts. Soviel Baldrian kann ich gar nicht zu mir nehmen, wie ich brauchen würde um die Paste auf die elend kleinen Pads zu bekommen. Habe jetzt einiges an Paste verkleckert und komme auf meinen ursprünglichen Plan zurück, Stencils selbst zu erstellen (die ca. 40 € für gekaufte sind mir - noch :-) - zuviel). Ich hatte mir vor einiger Zeit schon das negativ beschichtete Messingblech von Bungard besorgt und jetzt mal erste Test's gemacht. Belichtung mit Schutzfolie (soll man drauflassen, falls es - durch Hitze - zu Verklebungen kommt) ist für die Füsse, da reicht die Auflösung nicht mehr aus ("die maximale Linienauflösung verringert sich von 100 µm auf 150 µm"). Ohne Folie ist das Belichtungsergebnis (mit dem Laser :-)) ganz ordentlich. Leider ist das Blech - wie befürchtet - viel zu dick (habe halt derzeit nichts anderes bekommen). Werde mir jetzt beschichtetes Neusilber-Blech besorgen und mal einen Ätz-Test wagen. Gruß Dieter
Dieter Frohnapfel schrieb: > Die Platinen (nach meiner Vorgabe :-)) habe ich jetzt - aber ohne > Stencil wird das nichts. Soviel Baldrian kann ich gar nicht zu mir > nehmen, wie ich brauchen würde um die Paste auf die elend kleinen Pads > zu bekommen. Habe jetzt einiges an Paste verkleckert und komme auf > meinen ursprünglichen Plan zurück, Stencils selbst zu erstellen (die ca. > 40 € für gekaufte sind mir - noch :-) - zuviel). Hallo Dieter, naja wenn Du mein Layout verwendet hättest, könnte ich Dir dazu auch die passenden lasergeschnittenen VA Stencils zur Verfügung stellen. Aber vielleicht nützen die Dir ja auch so etwas, zumindest für den IC-Haus Chip. Übrigens ist bei mir die zweite, mechanisch stark verbesserte Version des Belichters kurz vor der Vollendung. Die Elektronik habe ich im wesentlichen so gelassen, weil die nach wie vor perfekt funktioniert. Mechanisch war das mit dem alten Scanner aber ziemlich wacklig und ungenau, jetzt habe ich das nochmal neu gebaut, mit richtigen Präzisionsführungen und solidem Metall Gehäuse. Viele Grüße
Fritz Richter schrieb: > naja wenn Du mein Layout verwendet hättest, könnte ich Dir dazu auch die > passenden lasergeschnittenen VA Stencils zur Verfügung stellen. Hallo Fritz, vielen Dank für das Angebot - aber ich wollte das ja ohne LVDS und mit ein paar Anpassungen (z.B. 5V Referenz und etwas anderer Kondensator-Bestückung) auch mal selbst entwickeln. Hat sehr lange gedauert :-( und ich weiß auch noch nicht, ob alles funktionieren wird. Ist auch lange nicht so professionell wie Deine Version geworden ... bin halt ein Eagle-Anfänger. Einen QFN..Stencil habe ich mir schon besorgt - aber der alleine hilft mir leider nicht so fürchterlich viel weiter. Bleibt immer noch der oder das Digital-Poti, mit dem ich so meine Probleme habe. Außerdem wollte ich das mit den selbstgeätzen Stencils sowieso mal ausprobieren :-) Mit der Mechanik bin ich aktuell eigentlich recht zufrieden - was aber einen 2. Wurf (wenn die Elektronik mal so ist, wie ich es mir vorstelle) nicht ausschliesst ... . Gehäuse habe ich ja eigentlich gar keines - nur die Scanner-Plattform mit meinem "Präzisions-Tisch" (was ich als Grob-Motoriker so darunter verstehe ...). Gruß Dieter
Klaus B. schrieb: > Vieleicht ist der Originaltreiber zu langsam. Z.B. bei einer > Platine für den IC-Haus-CHip werden die Bahnen quer zur Drehrichtung des > Laser´s dünner als die anderen. Hallo Klaus, darauf hatte ich gar nicht geantwortet. Ja, das ist auch meine "Befürchtung" bzw. Beobachtung dazu. Mit meinem Billig-Oszi sehen die Flanken der Impulse auch nicht besonders steil aus. Ich verwende den Original-Treiber aktuell leicht/mittelschwer angepasst (mit Eigenkreation zur Strombegrenzung). Hinzu kommt ja noch die Begrenzung der möglichen Schaltzeiten durch die zu durchlaufende Interrupt-Routine ... Mit dem IC-Haus-Treiberchip erhoffe ich mir deutlich steilere Flanken ... (lt. Datenblatt dürfte das kein Problem sein und ein besseres Ergebnis - was durch den vorbereiteten Einsatz der DMA-Routinen mit dem ATXMEGA hoffentlich noch unterstützt wird. Gruß Dieter
Hallo Dieter, das Digitalpoti ist auf meiner Platine und somit dem Stencil ja auch drauf, allerdings ist das auch noch von Hand noch ganz gut zu löten. LVDS benutze ich in der aktuellen Version auch nicht mehr, Fast-TTL funktioniert für diesen Zweck genauso gut. Ich war mir diesbezüglich damals nur nicht ganz sicher. Die LVDS Treiber habe ich jetzt einfach weggelassen und die Leiterzüge mit kurzen Drahtstückchen überbrückt. Damit habe ich jetzt mit 4 parallelen IC-Haus Kanälen max. 2000mA Strom für die Laserdiode zur Verfügung. Viele Grüße
Fritz Richter schrieb: > allerdings ist das auch noch von Hand noch ganz gut zu löten Hallo Fritz, ja das habe ich auf Videos schon gesehen (mit vieeell Flux). Vielleicht bekäme ich das auch hin - aber ich will ja "reflowen" ... Funktioniert so eigentlich ganz ordentlich - nur so Mini-Pads hatte ich noch nicht. Auch ich nutze Fast-TTL - aber nur 2 Kanäle (1 x "Grundhelligkeit" und 1 x Belichtung). Da ich die LD mit max. 400 mA (in Summe) betreiben möchte wird das ausreichen. Ich habe die Beschaltung lt. Datenblatt für Fast-TTL übernommen und bin sehr gespannt, ob alles funktionieren wird. Gruß Dieter
Jens schrieb: > Bei dem Fehler den du beschreibst würde ich einen Variablenüberlauf > vermuten. Abermals präzise Vermutung. Der new_step_delay hat zwischenzeitlich den uint16 gesprengt, das war die Fehlerursache Nr. 1. Deswegen sollte sich die T1_FREQ auch ein wenig an dieser Variable orientieren oder anders herum. Ich bin jetzt erstmal auf eine T1_FREQ von 43200 gegangen, da kann ich mir zumindest sicher sein, dass die Werte dadrin mit uint16 abgedeckt sind. Fehlerursache 2 ist übrigens eine mangelnde Energieversorgung... Wenn ich der Hardware vom Motortreiber die Masse abziehe, bekommt sie trotzdem durch die IO Ports vom Controller ein wenig, und ich höre ganz leise eine perfekte Rampe surren. Wenn ich den Motor aber mit aller zur Verfügung stehender Energie Versorge bricht nach kurzer Zeit alles zusammen, der Controller resettet sich oder verfällt in einen Slow-Motion Modus.. Das bringt mich nun zu der unumgänglichen Frage: Wie versorgt Ihr denn eure UV-Laserdrucker mit Energie? Da der Motor bei mir schon zu viel ist, brauche ich dann gar nicht erst daran zu denken, einen Laser mit zu betreiben ;) Fritz Richter schrieb: > Übrigens ist bei mir die zweite, mechanisch stark verbesserte Version > des Belichters kurz vor der Vollendung. [...] jetzt habe ich das nochmal > neu gebaut, mit richtigen Präzisionsführungen und solidem Metall Gehäuse. Oha, da bin ich mal gespannt drauf, gibt's schon Fotos? Und welche auflösung schaffst du damit rechnerisch? Grundlegen sollte alleine auf Grund der Mechanik viel zu machen sein ( Schrittmotor mit 200 Schritten im Vollschrittbetrieb, kombiniert mit 16-fach Microstepping = 3200 Schritte/ Umdrehung. Das auf eine Spindel mit 1,5 mm Steigung pro Umdrehung = 0,46875 um Schrittweite => ~54.000 dpi! wie gesagt, pure Theorie und ein wenig Spinnerei ;) )
:
Bearbeitet durch User
Hallo an alle, ich mische mich mal wieder ein! Ich versuche mal zu allem meinen Senf zu geben. :-) @Dieter: Du willst ja deine eigenen Stencils machen. Hast du das schon mal gesehen. https://www.youtube.com/watch?v=JWUJtmgh55M Der verwendet eine alte Getränkedose für das Blech. Zum probieren gibt es nichts billigeres würde ich sagen. Den Fotolack gibt es ja auch in Spraydosen. So kannst du deinen Belichter für die Stencils verwenden. @Fritz: Welche Bandbreite für den Lasertreiber braucht ihr denn? Ist das wirklich nur mit dem IC von IC-Haus realisierbar oder kann man das nicht auch noch selber hin bekommen? Wie sehen da eure Erfahrungen aus? @Niels: Schön das ich dir weiterhelfen konnte! Bist du dir sicher, dass dein Controller in einen Slow-mode wechselt? Wenn der sich resettet, dann sollte er die Init deines Systems nochmal durchlaufen und das müsstest du merken. Bau mal ein Delay von 1s an den Anfang deines Programms ein. Immer wenn er sich dann resettet, dann sollte alles für 1s stehen bleiben. Ein Slow-mode wenn du ihn nicht implementiert hast, wie soll das gehen? Das will mir noch nicht in den Kopf! Bei den #defines in der Speed_cntr musste ich die Werte anders casten, damit da keine Variable überläuft. Poste doch mal deinen Code, dann schau ich gerne mal drüber. Die Spannungsversorgung ist bei mir streng getrennt. Ich versorge alles über ein altes Notebook-Netzteil. Von da leite ich mir dann die 12V für den Laser und die 5V für den Controller ab. Jede Spannung ist mit reichlich Kondensatoren voneinander getrennt. Da nehme ich gerne mehr als vielleicht nötig. Funktioniert bisher aber immer problemlos. Wenn du schreibst, dass du Probleme hast, wenn du die Masse von deinem Treiber abziehst, dann hört sich das bei mir eher nach einer Masseschleife an, wenn dann alles zusammen bricht. Gibt es bei dir auf der Versorgung auch kein Klingeln? Du könntest auch ein Foto von deinem Aufbau posten, dann schau ich gerne drüber. Vielleicht lässt sich das in den Griff bekommen, wenn man die Masse sauber verlegt. Grüße, Jens P.S.: Hallo Klaus, schön von dir auch wieder zu hören!
Jens schrieb: > Du willst ja deine eigenen Stencils machen. Hast du das schon mal > gesehen. > Youtube-Video "DIY home-made SMT metal stencil - the definitive > tutorial" Hallo Jens, kenne ich - der/die arbeiten mit Toner-Transfer. Billig ja - machbar? Versuche mal, ein Getränkedosenblech mit (geschätzt) 60-100 µm Stärke gerade hinzulegen (so das es auch plan liegen bleibt), so dass es belichtet werden kann. Bei Erfolg bitte melden :-) Außerdem habe ich keine 2-seitige "Beschichtung"/Ätzung gesehen. Ich glaube nicht alles, was ich im Internet so sehe ... Ich werde das Neusilber-Blech nutzen und die Erfahrungen berichten. Gruß Dieter
Jens schrieb: > @Niels: > Schön das ich dir weiterhelfen konnte! Bist du dir sicher, dass dein > Controller in einen Slow-mode wechselt? Wenn der sich resettet, dann > sollte er die Init deines Systems nochmal durchlaufen und das müsstest > du merken. Bau mal ein Delay von 1s an den Anfang deines Programms ein. > Immer wenn er sich dann resettet, dann sollte alles für 1s stehen > bleiben. Ich habe ein LCD Display, dass Anfangs für 1 s "Init" anzeigt > Ein Slow-mode wenn du ihn nicht implementiert hast, wie soll das gehen? > Das will mir noch nicht in den Kopf! danach zeigt das Display den Status des Motors an. "running" und danach immer drei Punkte, die sich wieder und wieder aufbauen. Ist der Motor durch gelaufen, wird kurz "OK" angezeigt. Somit kann ich genau erkennen, was gerade so passiert. Wie gesagt, er startet sich inzwischen nur noch selten neu, aber nach spätestens einer Fahrt hin und zurück, wird der Motor enorm langsam, ich kann die einzelnen Schritte hören und auch die "..." Animation auf dem Display wird sichtbar langsamer. > Bei den #defines in der Speed_cntr musste ich die Werte anders casten, > damit da keine Variable überläuft. Inzwischen läuft nichts mehr über, ich habe mir zwischenzeitlich alle berechneten Zahlen über den UART ausgeben lassen, alles soweit in Ordnung, seit dem ich die T1_FREQ angepasst habe. > Poste doch mal deinen Code, dann > schau ich gerne mal drüber. Komme ich gern morgen drauf zurück, danke für das Angebot > Die Spannungsversorgung ist bei mir streng getrennt. Ich versorge alles > über ein altes Notebook-Netzteil. Von da leite ich mir dann die 12V für > den Laser und die 5V für den Controller ab. Jede Spannung ist mit > reichlich Kondensatoren voneinander getrennt. Da nehme ich gerne mehr > als vielleicht nötig. Funktioniert bisher aber immer problemlos. Eigentlich eine angenhem simple Lösung. Ich gucke morgen mal, ob ich auch noch ein altes Netzteil rumfliegen habe, Kondensatoren sollten auch noch reichlich vorhanden sein. Betreibst du den Motor eigentlich auch mit nur 12 Volt? Bei meinem Scanner z.B. waren +15 und -15 Volt Versorgungen mit dabei, ich nehme stark an, dass die für den Motor gedacht waren, also effektiv 30 V. Auch der Drucker hatte bis zu 42 V zur Verfügung. Soll heißen, dass dein Aufbau mit mehr Spannung, evtl. noch um einiges schneller sein könnte. > Wenn du schreibst, dass du Probleme hast, wenn du die Masse von deinem > Treiber abziehst, dann hört sich das bei mir eher nach einer > Masseschleife an, wenn dann alles zusammen bricht. Das hast du wohl falschrum verstanden. Wenn der Treiber keine Masse hat, also im Grunde kaum Versorung, dann läuft auf dem Display alles so ab, wie gewollt. Keine Resets, keine Verlangsamung der Geschwindigkeit. Gebe ich dem Treiber aber Masse, ist es nur eine kurze Frage der Zeit, bis die Fehler wieder auftauchen. Bei jedem langsamen Motorschritt wird das Display übrigens auch sichtbar dunkler. > Gibt es bei dir auf > der Versorgung auch kein Klingeln? Du könntest auch ein Foto von deinem > Aufbau posten, dann schau ich gerne drüber. Vielleicht lässt sich das in > den Griff bekommen, wenn man die Masse sauber verlegt. Da wird wahrscheinlich der Hase im Pfeffer liegen ;) Der Aufbau besteht aus dem ATMEL STK 500, und Lochrasterplatinen, die über Stiftleisten und einzelne Kabel zusammen gesteckt sind. Ich weiß ich weiß, in vielerlei Hinsicht schrecklich, aber bisher hat das immer wunderbar ausgereicht^^ Wie gesagt, bisher, somit ist wohl der Zeitpunkt gekommen, das alles ein wenig zu optimieren. Wie gesagt, ich mache morgen nochmal ein paar Fotos und vielleicht auch Videos und poste mal die Codes. Ich bin aber zuversichtlich, dass das alles nur eine Frage der Versorgung ist, somit also ein relativ einfach zu überwindenes Hindernis. Beste Grüße Niels
Hallo Niels, mein Drucker hatte original eine Spannung von 42V für die Motoren. Ich betreibe sie direkt vom Netzteil mit 19V. Wenn ich bei mir die Spannung erhöhe wird das aber auch nicht mehr viel schneller, da die Ansteuerung mit dem Mikrostepping ziemlich ausgereizt ist. Wenn bei dir das Display schon dunkler wird ist das schon ein deutliches Zeichen, dass die Versorgung nicht passt. Aber wenn dein Motor dann langsamer wird, dann müsstest du auch Schritte verlieren. Das heisst deine Rampen sind nicht mehr komplett und die Verfahrwege sind unterschiedlich lange. Ist das so? Aber egal, versuche eine stabile und kräftige Versorgung aufzubauen und dann testest du erst weiter. Sonst sind da zu viele Unbekannte. Grüße, Jens
Tatarata... Alles läuft wunderbar. Einfach für den Motortreiber ein seperates 12 V 1,5 A Netzteil nehmen und schon funktioniert's. Was ich aber wirklich stark merke, ist wie das Drehmoment bei hoher Geschwindigkeit sinkt. Weil sich, seitdem ich den Schitten inkl. Schiene ausgebaut habe, an der Gleitschmiere schon dsa ein oder andere Dreckpartikelchen abgesetzt hat, bleibt der Schlitten doch tatsächlich an solchen hängen. Aber das ist wahrhaft nur eine Prototypenkrankheit. Obwohl so ein l297, der den Strom über die Sense Eingänge misst und regelt ja schon was schönes wäre... Sowas kommt aber erst, wenn das Gerät funktioniert und ich dann eine vernünftige Platine für all sowas herstellen kann. Anbei nochmal Bilder und ein Video im bisher maximalen Betrieb. Und ja, obwohl das so aussieht funktioniert es ;) Beste Grüße Niels
Hallo Jung´s, Habe angenommen ihr hattet das 2.Video auch alle gesehen. Das ist schon eine beeindruckende Geschwindigkeit oder ? Habe übrigens für EAGLE "PCB-GCODE" gefunden zur Ausgabe Bohrdaten und Fräsen in GCODE. Falls das jemand braucht. Gruß Klaus
:
Bearbeitet durch User
Dieter Frohnapfel schrieb: > Hi zusammen, > > das hier ist auch interessant: > > Youtube-Video "PCB Laserprinter Version 2" > > Gruß > Dieter Klasse maschine, kommt mir nur etwas klobig vor, für so eine Aufgabe, mit einem Leichtbau sollte da noch mehr geschwindigkeit drin sein, ohne qualitätsverlust.
> Youtube-Video "PCB Laserprinter Version 2"
Ich habe nochmal über das Video nachgedacht und verstehe es immer noch
nicht so ganz.
Im Video bzw. den Kommentaren dazu ist die Rede von 60 – 100 mW Leistung
der Laserdiode. Ferner wird eine G2-Linse eingesetzt, die ca. 30 %
Leistungssteigerung bzw. bessere „Leistungs-Ausbeute“ erreichen soll.
Gehen wir mal von insgesamt 150 mW Laser-Leistung aus.
Der Laser-Punkt wird auf ca. 130 µm (oder waren es 150 µm? Egal, gehen
wir von 130 µm aus) fokussiert. Da die Linse nicht korrigiert wird wohl
ein elliptischer/länglicher Fokus-Punkt vorliegen – der Einfachheit
halber nehmen wir eine quadratische Fläche von 130 * 130 µm an. Die
belichtete Fläche der Platine im Video ist geschätzt ca. 5 * 5 cm groß.
Das bedeutet, pro Linie werden ca. (aufgerundet) 400 Punkte belichtet.
Eine Linie wird in ca. (geschätzt) 0,5 Sekunden „abgefahren“. Das
bedeutet, jeder Punkt wird ca. 1,25 ms lang mit 150 mW belichtet.
Bungard schreibt, dass zur korrekten Belichtung 50mJ/cm² über 90
Sekunden erforderlich sind. D.h. wenn ich nur 1 Sekunde belichten will
muss ich 4500 mJ für eine Sekunde auf einen cm² bringen. Belichte ich
nur 1,25 mS sind das schon 3.600.000 mJ/cm². Teile ich das durch die
belichteten ca. (aufgerundet) 6000 Punkte/cm² komme ich auf
erforderliche 600 mJ
einzubringende Energie auf einen Punkt für 1,25 mS. Dem stehen 150 mW
gegenüber ...
Wo liegt mein Denkfehler? Und falls da keiner ist – warum wird die
Platine nicht nur scheinbar korrekt belichtet sondern sogar noch das
Foto-Resist weggekokelt?
Gruß
Dieter
So ganz verstehe ich das ganz auch nicht, aber ich habe immerhin eine Vermutung: Das Resist wird ja offensichtlich nicht belichtet, sondern verbrannt, also braucht man sich wahrscheinlich auch gar nicht mit langweiligen Belichtungszeiten zu befassen. Ist ja egal, ob das Verbrannte kurz vorher richtig belichtet war, ist ja sowieso weg. Eine Pizza ist bei 100 facher Temperatur nach einem Hundertstel der Zeit auch nicht gut durch, sondern wahrscheinlich schwarz bis staubig ;) Ob man, wenn man auf so eine art vorgeht wohl gleich ganz andere Materialien als das normale Resist nutzen kann? Und wie viel Energie pro Fläche bräuchte man wohl, wenn man einfach direkt das Kupfer weg brennen möchte?
>Bungard schreibt, dass zur korrekten Belichtung 50mJ/cm² über 90 >Sekunden erforderlich sind. Was schon mal eine sehr seltsame Angabe ist, denn die Joule sind ja Watt mal Sekunde. Bungard spezifiziert also mW*s², eine sehr eigenartige Angabe. Entweder meinen sie 50 mW/cm² mal 90 s = 4500 mJ/cm² oder aber die 90 s sind eine sinnfreie Angabe.
Niels Janson schrieb: > Das Resist wird ja offensichtlich nicht belichtet, sondern > verbrannt Genau das kommt mir dabei "komisch" vor - ich kann mir einfach nicht vorstellen, dass die "gelieferte" Energiemenge in 1,25 mS dafür ausreicht (wenn es rechnerisch nicht mal zur Belichtung reicht). Um Kupfer wegzubrennen benötigt man ganz andere Energiemengen - auch davon gibt es ein Video (aber nicht mit einem Halbleiter-Laser). Schwarze Farbe habe ich auch schon "wegbrennen sehen" - aber bei deutlich langsameren "Fahrgeschwindigkeiten".
Von Kupfer wegbrennen redet da doch keiner. Ich denke das Resist wird nur richtig gut durchbelichtet.Verbrennen tut da nix, oder seht ihr Rauch? ps: mS = Millisiemens ms = Millisekunde
:
Bearbeitet durch User
Karl Otto schrieb: > Was schon mal eine sehr seltsame Angabe ist, denn die Joule sind ja Watt > mal Sekunde. Bungard spezifiziert also mW*s², eine sehr eigenartige > Angabe. Entweder meinen sie 50 mW/cm² mal 90 s = 4500 mJ/cm² oder aber > die 90 s sind eine sinnfreie Angabe. Ich gehe davon aus, dass die Angabe sich auf "normale" Röhrenbelichter bezieht, die halt nur relativ wenig Energie auf den cm² bringen - und deshalb 90 Sekunden benötigen. Daher habe auch ich erstmal auf 4500 mJ/cm² umgerechnet. Die weiteren Berechnungen habe ich der Einfachheit halber ähnlich (sinnfrei) wie Bungard durchgeführt, weil mir nichts besseres eingefallen ist um die benötigte Energiemenge umzurechnen. Ich gehe von einer Umrechnung Joule in Wattsekunde 1:1 für Laserleistung aus - weiß aber nicht, ob das auch korrekt ist (bei der Erwärmung von Wasser etc. sieht das Verhältnis anders aus). Ob sich durch "richtig gut durchbelichtet" die Lackschicht so verändert wie im Video zu sehen kann ich mir nicht vorstellen - werde aber aus Spaß mal ein Probestück 15 Minuten auf den Röhrenbelichter legen (mit etwas Abstand, damit der Lack nicht an die Scheibe anbackt :-)). Parallel werde ich mal mit einer Laserdiode mit optimalem Fokus (Löcher-in-Papier-Brenn-Modus) bei 125 mA (ca. 150 mW ohne G2-Linse) experimentieren und beschichtete Platinenstücke drunter durchziehen (in div. Geschwindigkeiten). Werde berichten ...
Karl Otto schrieb: > mS = Millisiemens > ms = Millisekunde Ich bin ein bekennender Einheiten-Legastheniker :-)
Hallo, Könte mal jemand die refferenzen zu den Belichtungsstären des Basistaterials posten? Ich hab bei meinen überlegungen von 1.5mJ/cm² ausgegangen. Was ich von Seite 2 aus unterem PDF habe. http://www.octamex.de/shop/download/bungard-fotobeschichtetes_basismaterial.pdf Kann das sein das du Joule und Watt durcheinander würfelst? 4500mJ/cm² sind doch 4500mW/s/cm² in Worten 4500mW je Sekunde und je quadrat Zentimenter. Bei einem Laser mit 150mW brauchst du dann ohne berücksichtigung von Verlusten 30Sekunden für einen cm² Für 25cm² dann 12,5 Minuten
Ehrlich gesagt halte ich es für wahrscheinlicher, dass es 50 mJ/cm² sind, und nicht 4500. irgend ein paar dutzend mJ/cm² sind das, was man normalerweise bei Photolacken so draufbraten muss. 4,5 Ws pro cm² ist EXTREM. Das würde in nem Röhrenbelichter ewig dauern. Gerade bei Bungard gefunden: "Die Belichtungszeit beträgt weniger als90 Sekunden, bezogen auf unser Be- lichtungsgerät HELLAS. Dies ent-sprichtrechnerisch einem Licht-energiebedarf von etwa 50mJ/cm*.DerResistist mehrfach belichtbar"
:
Bearbeitet durch User
Jaaa, ich sitze hier schon mit hochroten Ohren und frage mich, wo ich die Information her habe ... Interessanterweise liefert das PDF aus dem Link unterschiedliche Informationen: Auf dem 2. Blatt werden 1,5 mJ/cm² angegeben - auf Blatt 5 sind es 50 mJ/cm². Ich muss mal in mich gehen und Unterlagen sichten, ob ich die Angabe auf Blatt 5 einfach nur in den falschen Hals bekommen/fehlinterpretiert habe (wahrscheinlich ... :-)) oder ob ich das von woanders übernommen habe. Das mit Joule und Watt (habe geschrieben, dass ich mir da nicht sicher bin) verstehe ich wie geschrieben 1 J/s = 1 W/s (wenn nicht gerade der Energieaufwand für das Aufheizen von Wasser etc. umgerechnet wird). Sorry für die von mir gestiftete Verwirrung ...
Da ich meine roten Ohren loswerden wollte habe ich erstmal den angekündigten Test durchgeführt. 1. Belichtung mit UV-Röhren - 22 Min. statt 2 Min 15 Sek. Leichter "Farb"unterschied zwischen belichteten und unbelichteten Stellen (so wie immer ...) 2. Belichtung mit ca. 150 mW Leistung im optimalen Fokus (nach Gefühl ... Kokelentfernung) Das hätte ich nicht erwartet - auch bei schneller Bewegung - ähnlich der Geschwindigkeit im Video wird die Oberfläche ganz hell - die Struktur des Resists verändert sich. Mit dem Stereo-Mikroskop betrachtet ist die "Spur" des Lasers undurchsichtig - es scheinen winzige Bläschen enthalten zu sein. Bei langsamerer Fahrgeschwindigkeit werden die Spuren schwarz - der Lack ist verkokelt. Die Spurbreite schätze ich lt. meinem "Calibration Ruler" auf kleiner 50 µm (deutlich weniger wie die Hälfte eines 1/10 mm-breiten Striches). Verzeiht die Bildgröße - aber man soll es auch erkennen können ... Meinen eklatanten Fehlleistungen im Hinblick auf das Lesen von Produktdatenblättern gehe ich morgen oder übermorgen nach ... erstmal etwas Gras drüber wachsen lassen :-) Dieter Frohnapfel schrieb: > 1 J/s = 1 W/s Das muss ich noch korrigieren - es muss (in diesem Zusammenhang) lauten: 1 J = 1 W/s
Jens schrieb: > Auch nicht ganz! > > 1 J = 1 W * s Gut, das das geklärt ist! Jetzt ist mir wohler ...
Hallo an alle, ich habe mir wieder ein paar Gedanken gemacht zu meinem Aufbau. Ich will ja immer einen etwas anderen Weg gehen, damit man auch sehen kann ob das besser oder schlechter ist. Aber am Ende soll es doch trotzdem funktionieren. Ich hatte vor einen Tintenstrahldrucker umzubauen und so viel wie möglich davon zu verwenden. Mit dem Schlitten, der den Druckkopf getragen hat bin ich mir sicher, dass ich da keine Probleme habe. Es geht um den Vorschub. Im Drucker ist eine Walze die das Papier durch zieht. Jetzt weiß ich nicht genau wie das mit dem Basismaterial ist. Die Walze ist etwas rau und ich bin mir nicht sicher ob da die Lackschicht kaputt geht. Was meint ihr was da besser ist? Die Walze oder wie bei allen anderen, wo die Platine im Gerätebett liegt und der Laser bewegt wird? Grüße, Jens
N'Abend Jens, wenn die Platine bewegt wird, hat das natürlich den Vorteil, dass X- und Y-Achse mechanisch voneinander getrennt sind. Ich habe mir übrigens auch mal meine Druckerreste angesehen, und denke nicht, dass der Lack durch so eine Rolle beschädigt werden würde. Fraglich ist nur, ob, wenn die Platine nur aufliegt, der "Anpressdruck" ausreicht, damit kein Schlupf auftritt. Ist aber alles eine Frage des mechanischen Aufbaus deines Druckers, hast du evtl. Fotos parat? ;) Wie sieht eigentlich die Ansteuerung davon aus? Auch wieder ein normaler Schrittmotor, den du dann mittels Microstepping ansteuerst? Abendliche Grüße Niels Janson
Dieter Frohnapfel schrieb: > Interessanterweise liefert das PDF aus dem Link unterschiedliche > Informationen: > > Auf dem 2. Blatt werden 1,5 mJ/cm² angegeben - auf Blatt 5 sind es 50 > mJ/cm². > > Ich muss mal in mich gehen und Unterlagen sichten, ob ich die Angabe auf > Blatt 5 einfach nur in den falschen Hals bekommen/fehlinterpretiert habe > (wahrscheinlich ... :-)) oder ob ich das von woanders übernommen habe. Hi, die Informationen aus dem alten Datenblatt von Bungard sind beide falsch. Die richtige Energiemenge liegt irgendwo bei 500..1500mJ/cm². Das Dynamask z.B. ist vom Hersteller mit 250-500mJ/cm² spezifiziert. Die Bungard-Platinen benötigen auf meinen Belichtungsgerät mit gleicher Vorlage ca. Faktor 3 länger (45s Dynamask Belichtungszeit, 140s Bungard Fotoplatinen), also können die 50mJ/cm² nicht stimmen und ich würde eher mit deutlich über 500mJ/cm² kalkulieren. Marian
Das hätte mich jetzt auch gewundert. Mit den 50 mJ je cm^2 und 150 mW wären das 1/3 s je cm ^2. Das wären dan nur 54 Sekunden für eine komplette Euro Platine. Jenauere Werte hat ja leider keiner.
Wer weiß was stimmt. Beim Tentingresist steht wieder was von 50-90: http://www.octamex.de/shop/datasheet/a17e376737cdf42731532446480321c3.pdf
In den patenten und Hersteller datasheets von laminatresist ist steht immer 250 oder 300 MJ/cm bei 90 grad.
Nicht wirklich. Ist pre sowie post Sensibilisierung. Die Angaben sind auf eine bestimmten Lampen Typ spezifiziert und beinhalten alle Spektren. Hingegen die 50mj sind auf den UV Bereich spezifiziert den eine si diode misst. EV auch noch durch die marketing Abteilung nach unten korrigiert. Klarheit verschafft nur ein stufengraukeil. Bei einem laser wurde ich die Leistung in 5% stufen einstellen. 0-105%. Und mehrere Teststreifen mit unterschiedlicher Maximalleistung machen. Wenn 10-12 passt, dann einfach die Leistung verdoppeln.
chris schrieb: > 0-105%< Ah ja - mal abgesehen davon, dass ich beim Rest des Postings das Gefühl habe, nicht mehr nüchtern zu sein - über 100% geht nur in "Sozialistischen Staaten" :-) Kurz: Es ist wurscht, was irgendwo schriftlich verbreitet wurde, Belichtungsreihen bringen die Wahrheit. Damit kann ich leben - mit den 4.500 wie auch immer Joule aber nicht ... . Wahrscheinlich (schäm !) habe ich unaufmerksam gelesen ... und falsch interpretiert -> rote Ohren²
Dann verstehst du einen laserbelichter nicht. Bei neuer Laserdiode stellt man die Leistung auf 75-80%. Alle x Stunden serviceinterwall stellt man die Leistung nach. So hat man eine konstante Geschwindigkeit über der ganzen Lebensdauer der Laserdiode. Die Intensität der Belichtung wird durch die Bewegungsgeschwindigkeit sowie eventuell über den Fokus (z axis) definiert. Bei einem graukeil ist es wichtig eine ungerade Anzahl von stufen zu haben zumendest bei solchen mit niedrigen Anzahl von Steps. Wenn man jetzt 21 stufen haben will ist es einfacher die verfahrensgeschwindigkeit mit 1.05 zu multiplizieren als andauert krumme Werte zu haben. 105% von 100 Stunden Kilometern ist noch unmöglich sondern einfach 105 km/h. Ich hoffe dies hat deinem Gehirn wieder auf die Sprünge geholfen.
chris schrieb: > Dann verstehst du einen laserbelichter nicht. > Bei neuer Laserdiode stellt man die Leistung auf 75-80%. > Alle x Stunden serviceinterwall stellt man die Leistung nach. > So hat man eine konstante Geschwindigkeit über der ganzen Lebensdauer > der Laserdiode. > Die Intensität der Belichtung wird durch die Bewegungsgeschwindigkeit > sowie eventuell über den Fokus (z axis) definiert. > Bei einem graukeil ist es wichtig eine ungerade Anzahl von stufen zu > haben zumendest bei solchen mit niedrigen Anzahl von Steps. > Wenn man jetzt 21 stufen haben will ist es einfacher die > verfahrensgeschwindigkeit mit 1.05 zu multiplizieren als andauert krumme > Werte zu haben. > 105% von 100 Stunden Kilometern ist noch unmöglich sondern einfach 105 > km/h. > Ich hoffe dies hat deinem Gehirn wieder auf die Sprünge geholfen. Möglicherweise verstehe ich wirklich keinen Laser-Belichter :-( das stimmt mich traurig ... Scheinbar haben wir aber eine unterschiedliche Vorstellung von 100%. Für mich sind 100% das Maximum - mehr geht nicht! Du gehst darüber hinaus - O.K. - das ist aber leider außerhalb meiner geistigen Reichweite ... und ich bin dann wohl der falsche Ansprechpartner.
Dieter Frohnapfel schrieb: > sind 100% das Maximum Wenn Du ab nächstem Jahr das dreifache verdienst, dann hat sich Dein Einkommen um 200% auf 300% erhöht. Prozent heisst pro Hundert, also einfach ein Faktor mal Hundert = Prozent. Nur VON etwas gibt es nicht mehr als 100%. Also 105% eines Apfels essen geht nicht, mehr als 100% Wirkungsgrad geht nur bei Esoterikspinnern etc. Aber im Prinzip gibts keinen Grund, wieso 100% das Maximum sein soll. Tunst Du Dein Auto, hat es hinterher eben 120% der ursprünglichen Leistung etc.
Jens schrieb: > Ich hatte vor einen Tintenstrahldrucker umzubauen und so viel wie > möglich davon zu verwenden. Hallo Jens, ich habe genau die gleiche Idee gehabt wie du. Ich habe einen defekten Brother MFC-5860 dafür genommen. Deine Sorge, dass die Rolle den Lack beschädigt kann ich dir nehmen. Sie ist zwar etwas rau, habe aber noch keine Beschädigung feststellen können. Das Hauptproblem war, dass der Spalt zu schmal war und die Platine gar nicht eingezogen wurde. Musste deswegen das Gegenstück zur Rolle ca. 1,3mm abfräsen. Ich stehe Momentan noch vor dem Problem, dass die Auflösung des Encoderstreifens mir für feine Strukturen zu gering erscheint. Ich habe auf 1mm ca. 6 Striche. Aber um das weiter zu testen muss ich erstmal meine Software erweitern. Geplant habe ich Bitmaps direkt einzulesen und entsprechend die Diode an bzw. auszuschalten. Wenn das dann funktionieren sollte kommen evtl. Gerber Dateien.
Hallo Kevin, die Auflösung des Encoderstreifens ist nicht ausschlaggebend. Du musst nur zwischen zwie strichen immer wieder einen Timer triggern. Der Zählwert des Timers ist dann deine Auflösung. Voraussetzung ist aber, das du mit konstanter Geschwindigkeit fährst. Aber da kannst du auch die Striche zum messen der Geschwindigkeit nehemn. Im Prinzio implementierst du einen "Wegbeobachter". Grüße, Jens
Mit welcher Leistung arbeitet ihr bei der diode? Meine Frage ziehlt darauf ob es sich lohnt einen richtigen lasertreiber einzusetzen oder ob auch ein einfacher festspannungsmodulator genügt welcher zwischen 39 und 100ma umschaltet und ob eventuell die 60 oder 200mw doch einen signifikanten unterschied ausmachen.
Kevin S. schrieb: > Ich stehe Momentan noch vor dem Problem, dass die Auflösung des > Encoderstreifens mir für feine Strukturen zu gering erscheint. Ich habe > auf 1mm ca. 6 Striche. Aber um das weiter zu testen muss ich erstmal > meine Software erweitern. Morgen, wie Jens schon schrieb, sollte es ausreichen, wenn du den Schlitten mit konstanter Geschwindigkeit fahren lässt und mit dem Encoderstreifen lediglich diese nochmal sicher bestätigst, bzw. regelst. Wenn du den Streifen aber auch dazu benutzen willst, eine evtl. Beschleunigungsrampe zu regeln, kommt es drauf an, wie du den Sensor dazu ausließt, bzw. was dadrin verbaut ist. Das Signal, dass dieser ausgibt, sollte ja im besten Fall ein Sinus sein. Somit wäre die Auflösung ledidglich durch die Hardware (Trägheit des Sensors, ADC Auflösung, Prozessorgeschwindigkeit) und die Softwäre (Geschwindigkeit des Codes, Genauigkeit des Sinus) beschränkt. Und wenn das alles noch nicht ausreicht, kann man die Encoderstreifen auch einfach nachkaufen, oder, was ich mir auch schon überlegt habe, in einem guten Print Shop selbst auf Folie Drucken lassen. Morgendliche Grüße Niels
Hallo Niels, soviel Aufwand brauchst du gar nicht. 6 Striche/mm sind ja schon 150dpi. Wenn du da jeden Strich in vier Unterstriche teilst (in Software) bist du schon bei 600dpi. Das reicht dicke! Grüße, Jens
Morgen zusammen, der Schlitten sollte in der Tat eine konstante Geschwindigkeit haben. Zumindest während des Belichten muss sie konstant sein, ansonsten bekomme ich ungleichmäßige Ergebnisse, denn ich regel die Leistung der Diode nicht. Nach bzw. vor jeder Linie habe ich eine Rampe, die sollte aber nicht stören, weil ich während der Rampe keine gute Auflösung brauche. Ich werde also mal probieren den Vorschlag von Jens umzusetzen. Das sollte für den Controller kein Problem sein. Niels Janson schrieb: > Das Signal, dass dieser > ausgibt, sollte ja im besten Fall ein Sinus sein. Somit wäre die > Auflösung ledidglich durch die Hardware (Trägheit des Sensors, ADC > Auflösung, Prozessorgeschwindigkeit) und die Softwäre (Geschwindigkeit > des Codes, Genauigkeit des Sinus) beschränkt. Also mein Sensor gibt ein Rechteck aus. Es ist ja eigentlich nur eine Lichtschranke, die von den Strichen unterbrochen wird. Wo soll da der Sinus herkommen, oder habe ich da etwas falsch verstanden? Gruß Kevin
Kevin S. schrieb: > Also mein Sensor gibt ein Rechteck aus. Es ist ja eigentlich nur eine > Lichtschranke, die von den Strichen unterbrochen wird. Wo soll da der > Sinus herkommen, oder habe ich da etwas falsch verstanden? Wie gesagt, kommt auf dem Aufbau an ;) Es gibt, wenn ich mich recht entsinne auch Aufbauten, bei denen das Licht von mehreren "Lücken" auf den Sensor fällt, oder, bei einem System wie dem deinen, man schon einen "halbe Lücke" mit dem Sensor festellen kann. Eigentlich müsste das dann aber ein solches Signal erzeugen: _ _ \_/ \_/ \_/ \_/ \_ .... Wenn man allerdings zwei solcher Signale um 180 ° versetzt hätte, könnte man dann aber schon wieder... Naja, wie Jens schon sagte, soviel Aufwand brauchen wir hier ja gar nicht. PS.: Hier nochmal der Wikipedia Artikel zu dem Thema: http://de.wikipedia.org/wiki/Inkrementalgeber#Signalauswertung Beste Grüße Niels
Niels ich danke dir! Der Sensor hat ja zwei Ausgänge und gibt zwei verschobene Signale aus. Ich habe kein Datenblatt von Sensor und habe mir die Signale auch nie beide gleichzeitig auf dem Oszi angeschaut. Deswegen ist mir dieser Umstand gar nicht aufgefallen *Kopf gegen Wand schlag*. Wenn ich bei beiden Signalen auf steigende und fallende Flanken triggere hätte ich pro Strich bereits 4 Interrupts. Damit wäre die Auflösung doch bereits recht brauchbar? und ich hätte mir den "Aufwand" mit dem Timer gespart. chris schrieb: > Mit welcher Leistung arbeitet ihr bei der diode? > Meine Frage ziehlt darauf ob es sich lohnt einen richtigen lasertreiber > einzusetzen oder ob auch ein einfacher festspannungsmodulator genügt > welcher zwischen 39 und 100ma umschaltet und ob eventuell die 60 oder > 200mw doch einen signifikanten unterschied ausmachen. Ich habe eine PHR-805T. Mit einer Acryllinse hat die eine Leistung von ca. 100mW (optische Leistung). Ich habe auch einfach nur eine Konstantstromquelle die auf ca. 120mA eingestellt ist und schalte sie entsprechend an bzw. aus. Gruß Kevin
Kevin S. schrieb: > Wenn ich bei beiden Signalen auf steigende und fallende Flanken triggere > hätte ich pro Strich bereits 4 Interrupts Da wäre ich mir nicht ganz so sicher.. Wenn sich beide Signale perfekt abwechseln, sollte beim einen die Flanke steigen und gleichzeitig beim anderen Fallen. Das ist abermals eine Frage des Aufbaus.. kannst du beide Signale auf dem Oszi ausgeben und davon evtl. mal ein Foto machen? Vielleicht funktioniert deine Überlegung nämlich auch. Möglichkeit 1: klappt nicht: _ _ _ _ _ Sig1: |_| |_| |_| |_| |_| |_| |_| |_ ... _ _ _ _ _ _ Sig2: | |_| |_| |_| |_| |_| |_| |_| ... Möglichkeit 2: klappt: _ _ _ Sig1: __| |___| |___| |___| |___| |_ ... _ _ _ Sig2: |___| |___| |___| |___| |___| ... Möglichkeit 3: klappt auch: __ ___ ___ __ Sig1: _| |___| |___| |___| | ... __ ___ ___ _ Sig2: ___| |___| |___| |___| ... Wenn ich mir das so ansehe, stehen deine Chancen 2:3, dass es klappt ;) Beste Grüße Niels Weil das irgendwie kommisch formatiert wird, im Anhang nochmal die Signale als Bild
:
Bearbeitet durch User
Es ist in der Tat Möglichkeit 3. Im Anhang noch ein Bild davon. Ich hoffe man kann etwas erkennen, dass andere Oszi stand grade nicht in Reichweite und für das habe ich leider kein Datenkabel :-(
Hätte mich auch gewundert. Der Druckschriften muss zwischen links und rechtslauf unterscheiden können. Daher zwei rechtem Signale die um 180 grad versetzt sind.
Kevin S. schrieb: > Ich > hoffe man kann etwas erkennen Tip Top, kann man klar und deutlich erkennen :D Stellt sich jetzt nur noch die Frage, was für einen Motor du hast. Selbst wenn es ein DC Motor ist, kannst du ja einen Regler dafür realisieren. Motortreiber an PWM, Sensoren an den Controller, auf fallende und steigende Flanke Interrupts setzen und dann ist es nur noch eine Sache der Software. Bestenfalls hat jemand im Forum sowas schon realisiert, oder du guckst mal in den Appnotes von Atmel, da gibt es auf jeden fall einiges zu Motorren und auch eine Note über PID Regler. Ich plage mich derweil weiter mit der Appnote 350 über Xmodem rum, und versuche das mit Matlab in Einklang zu bringen. Beste Grüße Niels
>Wieso machst du es in mathlab und nicht in c?
Welche Role spielt das? Solange es tut was es soll kann er es auch in
brainf%ck programmieren.
Karl Otto schrieb: > Welche Role spielt das? Solange es tut was es soll kann er es auch in > brainf%ck programmieren. Danke, denke ich. Tatsächlich will ich irgendwann einmal irgendwas in brainfu%k basteln, einfach nur so^^ chris schrieb: > Wieso machst du es in mathlab und nicht in c? Das hat mehrere Gründe... Das in normalem c umzustezten wäre glaube ich Masochismus. C++ oder C# kämen da schon eher in Betracht, über Ruby hatte ich auch schonmal nachgedacht. Außerdem ist Matlab in vielerlei Hinsicht einfach sehr komfortabel. Für das GUI gibt es selbst eine GUI, mit nur einer Zeile Code kann ich ein Bild als Matrix einladen und mit zwei Zeilen habe ich für den gesamten Datenstrom CRC Werte berechnet und an die entsprechenden Pakete angehangen. Abgesehen davon bin ich mit dem Übertagungsprotokoll in Matlab soweit fertig, bei jeder anderen Sprache müsste ich nochmal von vorne anfangen ;) Zumindest kann ich die Daten über virtuelle Ports problemlos an TeraTerm senden, ergo muss ich nochmal über den Controller drüber gucken. Mal so nebenbei: Wie plant ihr Anderen denn bisher die Datenübertagung zu realisieren? Darf man sich auf Umsetzungen freuen, die nicht auf einem bald 50 Jahre alten Protokoll basieren? ;) Beste Grüße Niels
Hallo Niels, warum 50 Jahre alt? Ich glaube du verwechselst die Schnitstelle mit dem Protokoll. Nur weil RS232 verwendet wird heißt das noch nicht dass du ein Protokoll hast. Das musst du nach wie vor selber machen. Das ist eine Ebene über der Hardwareschnittstelle. Aber da gibt es hier auch schon einige Sachen die du verwenden kannst. Im Übrigen finde ich die RS232 sehr schön, da sie mit wenig Aufwand eigentlich immer funktioniert. Das ist bei USB usw. längst nicht so! Zum Protokoll: Ich verwende eine eigenes Protokoll das Blöcke von 255 Bytes mit CRC, Adresse und Funktion versendet. Das habe ich schon getestet und geht sehr gut. Zugleich lässt es sich extrem schlank einbinden! Aber um die Frage vorweg zu nehmen. Das werde ich hier in der Form nicht veröffentlichen. Gruß, Jens
Jens schrieb: > warum 50 Jahre alt? Ich glaube du verwechselst die Schnitstelle mit dem > Protokoll. Nur weil RS232 verwendet wird heißt das noch nicht dass du > ein Protokoll hast. Das musst du nach wie vor selber machen. Das ist > eine Ebene über der Hardwareschnittstelle. Mit den 50 Jahren meinte ich Xmodem. Wurde 1977 entwickelt, hat also knapp 40 Jahre auf dem Buckel (40 Jahre, nicht 50... bitter -.- ) ;) Zugestanden, die CRC Prüfung wurde erst Anfang der 80er eingsetzt. > Im Übrigen finde ich die RS232 sehr schön, da sie mit wenig Aufwand > eigentlich immer funktioniert. Das ist bei USB usw. längst nicht so! Da muss ich dir voll und ganz zustimmen, der Auwand ist wirklich gering. Und mit CRC Prüfung oder ähnlichem auch relativ robust gegen Fehler. > Zum Protokoll: > Ich verwende eine eigenes Protokoll das Blöcke von 255 Bytes mit CRC, > Adresse und Funktion versendet. Das habe ich schon getestet und geht > sehr gut. Zugleich lässt es sich extrem schlank einbinden! Wieviel Platz nimmt es denn auf dem Controller ein? Dann hätte ich mal eine Benchmark für die Umsetzung von der Appnote. > Aber um die Frage vorweg zu nehmen. Das werde ich hier in der Form nicht > veröffentlichen. Von mir brauchst du die Frage nicht zu erwarten, wie gesagt, bei mir läuft's auch (fast). Grüße Niels
:
Bearbeitet durch User
Niels Janson schrieb: > Wie plant ihr Anderen denn bisher die Datenübertagung > zu realisieren? Hallo, als Schnittstelle verwende ich USB ("echtes" USB-Device, keine virtuelle COM-Schnittstelle). Ich sende einfach Steuerbefehle für den Schlitten und den Vorschub (jeweils Geschwindigkeit + Strecke + Richtung). Die Rampen erzeugt der Controller automatisch. Dann frage ich permanent die noch zurückzulegende Strecke ab, wenn diese 0 ist wird der nächste Befehl gesendet. Die Daten für die Diode (An oder Aus) werden in einen Ringpuffer geschrieben, beim Abfragen der Strecke wird auch gleich der Schreib- und Lesepointer mit abgefragt und damit kann ich dann die freien Bytes ausrechnen und schreibe wieder entsprechend neue Daten in den Puffer. Gruß Kevin
Kevin S. schrieb: > als Schnittstelle verwende ich USB ("echtes" USB-Device, keine virtuelle > COM-Schnittstelle) Ich bin bekennender RS232-Schnittstellenbenutzer. Warum auch anders? Funktioniert stabil und zuverlässig und ist wunderbar kompatibel mit den Mikroprozessoren. Wenn ich höhere (ganz hohe) Anforderungen an die Geschwindigkeit habe (Transfer-Geschwindigkeit zwischen PC und Mikrocontroller) dann werde ich mich nach einer anderen Lösung umschauen. Lustig (und habe ich gesehen) ist z.B. SPI via Grafikkartenanschluss. "Richtiges" USB - was sind die Vorteile (bei der Kommunikation mit Mikrocontrollern)?
Hallo Dieter, ich muss zugeben, sonderlich viele Argumente für USB habe ich auch nicht. Die wesentlichen sind, dass nahezu jeder Rechner eine USB Schnittstelle hat und die Schaltung 5V vom Rechner zur Verfügung hat. Außerdem kann man viele unterschiedliche USB Geräte anschließen, notfalls über Hubs. Bei RS232 ist ohne Erweiterungskarte oder USB-RS232 Wandler die Anzahl sehr begrenzt. Ich habe bei meinen früheren Projekten auch auf RS232 gesetzt, weil es sehr einfach zu benutzen ist und gut funktioniert. Hatte anfangs auch etwas bedenken, dass USB viel komplizierter sei. Aber dank dem Framework von Microchip, ist sowohl die Programmierung auf dem Rechner als auch auf dem Controller meiner Meinung nach nicht viel komplizierter oder aufwendiger, als es bei RS232 der Fall war. Gruß Kevin
Hallo, ich habe noch ein anderes Problem über das ich gestern gestoßen bin. Die Drucker die man schon sieht bei YouTube oder so sind alles so ähnlich wie eine CNC aufgebaut. Also der Schlitten wird über Riemen in den zwei Achsen bewegt. Da dachte ich mir das ist gar nicht so schlecht, da könnte man von den 3D Druckern profitieren. Da gibt es die Motoren, Steuerungen und auch die Riemen und Gleitlager alles schon bei ebay günstig zu kaufen. Die Riemen haben eine Teilung von 2mm. Nach genauerer Untersuchung wohle eher 2,035mm (0,08"). Die Motoren haben standartmäßig 1,8° Schrittwinkel, also 200 Schritte pro Umdrehung bei Vollschrittbetrieb. Wenn ich nun eine Riemenscheibe auf den Motor mache, dann wird der Durchmessen durch die Teilung bestimmt (es gibt ja nur ganze Zähne). Wie komme ich nun auf die 600dpi wenn ich nicht eine komplizierte Schritttabelle implementieren will? Das will mir noch nicht in den Kopf. Oder stehe ich da auf der Leitung? Bei mir geht das rechnerisch nie richtig auf. Wie habt ihr das gelöst? Grüße, Jens
Hallo Jens, mach dir damit nicht zuviele Gedanken. Am Ende hast du eine gewählte Zeilenlänge und die Zeit, die benötigt wird um die Zeile abzufahren. Das ergibt die Geschwindigkeit. Zusätzlich weißt du wieviele Pixel pro Zeile du brauchst, das ergibt den Pixeltakt. Und den stellst du am SPI ein.
Moin, wenn der Motor Halbschritte macht, hast du bereits 400 Schritte pro Umdrehung. Als Riemen z.B. ein GT2 (2mm Teilung) und eine Scheibe mit 20 Zähnen. Ergibt 0,1mm pro Schritt oder ca. 250dpi. Das reicht für den 3D Drucker eigentlich schon aus. Um die Auflösung zu erhöhen, entweder Mikroschritte verwenden oder zwischen den Schritten einen Timer laufen lassen (um deinen Vorschlag von oben wieder aufzugreifen ;-)). Das ist in diesem Fall noch einfacher als bei meinem Aufbau, weil man selbst die Geschwindigkeit vorgibt und damit nicht messen muss. Gruß Kevin
Beim scanner gibt es eine reduzierung mittels zahnrad. Da funktioniert auch nur eine kostante geschwindigkeit.
Mahlzeit, also ich kann jetzt nicht für Jens sprechen, aber ich muss sagen, dass die bisherigen Lösungsvorschläge für mich irgendwie unzureichend wären... Man verschänkt doch so ziemlich das, was den Schrittmotor so vorteilhaft macht, die Sicherheit immer genau zu wissen, wo er ist, ohne die Postion zu überprüfen oder Zwischenschritte zu berechnen. Aber auch wenn man mit solchen Zwischenschritten vorgeht, sollte sich doch zumindest ein kleinstes gemeinsames Vielfaches der Layoutauflösung bilden. Oder man lässt sich das Layout gleich in passender Auflösung exportieren, das wäre noch die präziseste Option, die mir darauf einfiele. Allerdings muss ich auch zugestehen, dass ich sonst auch keine wesentlich bessere Idee hätte. Bei mir wird dieses Problem eben von den Getrieben gelöst, dafür habe ich natürlich Unmgengen Spiel beim Richtungswechsel. Übrigens zu meinem Status: Mein Frontend in Matlab funktioniert schonmal soweit, effektiv komme ich mit dem Xmodem Protokoll auf ~9 kB/s, was mehr als ausreichend sein sollte. (Damit bin ich übrigens genauso schnell wie mit TeraTerm) Jetzt werde ich wahrscheinlich noch ein paar "Komfortfeatures" einbauen, wie einen auswählbaren Port, oder eine einstellbare Baud-Rate, aber von der Funktionalität her passt das alles. Leider werde ich jetzt die Interruptroutinen auf dem Controller noch weiter verschlanken müssen. Wenn zusätzlich zum Schittmotor jetzt auch noch der UART mit zusätzlichem Timer wegen irgendwelcher Time-Outs auf die Interrupts geht, kann ich es mir wohl kaum ncoh leisten die Schrittmotorrampe währen des Betriebs zu berechnen. Falls jemand übrigens Interesse am Frontend und dem Übetragungsprotokoll haben sollte, kann ich das ganze auch noch gern hier preis geben. Beste Grüße Niels
:
Bearbeitet durch User
Niels Janson schrieb: > also ich kann jetzt nicht für Jens sprechen, aber ich muss sagen, dass > die bisherigen Lösungsvorschläge für mich irgendwie unzureichend > wären... Man verschänkt doch so ziemlich das, was den Schrittmotor so > vorteilhaft macht, die Sicherheit immer genau zu wissen, wo er ist, ohne > die Postion zu überprüfen oder Zwischenschritte zu berechnen. Hallo Niels, wenn Schritttakt und Pixeltakt vom µC aus dem selben Takt gebildet werden, laufen sie doch automatisch synchron. Die Auflösung kann man frei wählen, warum Jems so an DPI hängt verstehe ich nicht. Vermutlich sind 20 Pixel/mm völig ausreichend.
Guido B. schrieb: > wenn Schritttakt und Pixeltakt vom µC aus dem selben Takt gebildet > werden, laufen sie doch automatisch synchron. Genau das meinte ich hiermit: Niels Janson schrieb: > Oder man lässt sich das Layout gleich in passender Auflösung > exportieren, das wäre noch die präziseste Option, die mir darauf > einfiele. ;) > Die Auflösung kann man > frei wählen, warum Jems so an DPI hängt verstehe ich nicht. > Vermutlich sind 20 Pixel/mm völig ausreichend. Da hast du eigentlich vollkommen recht, zumindest habe ich gerade die Einstellmöglichkeit dazu bei Target gefunden. (Das einzig lästige ist dann eigentlich nur noch, dass man bei den meisten normalen Bildformaten, in die man exportieren kann, leider immer nur quadratische Pixel hat. Wenn man aber auf den Achsen unterschiedliche Schrittweiten hat könnte das problematisch werden.) Vergessen wir das auch, man kann getrennt in X- und Y-Richtung strecken. Beste Grüße Niels
Warum ich so an dpi hänge ist leicht erklärt: Ihr sagt, dass es möglich sein muss einen gemeinsamen Teiler zu finden. Dem ist aber nicht so, bzw. der ist sehr klein (= hohe Interruplast). Außerdem verlangt meine Hardware diese Auflösung. Ich will genau einen Schritt (oder Unterschritt beim Microstepping) pro Pixel. Erst dann kann ich die Ausgabe mit den Daten in Hardware synchronisieren. Ihr gebt eure Pixel wahrscheinlich zu Fuß aus. Also eine Lösung in Software. Das wird aber nicht sehr schnell und reproduzierbar laufen. Genau daher weil ihr nicht wisst wann ein Interrupt kommt. Und die Schnittstelle muss euch ja kontinuierlich mit Daten versorgen. Oder speichert ihr die am Gerät? Mein Ansatz war, zu den Schritten entweder parallel die Pixel ausgeben (also Laser an und ausschalten) oder byteweise die Daten an die SPI ausgeben und den Takt der Motoren und der SPI synchronisieren. Das wäre die Lösung in Hardware. Dann hat der Controller kaum noch was zu tun und ich kann allerhand andere Dinge tun (Taster einlesen, Status ausgeben, überwachen,...). Und ich habe dann für die Schritte und die Pixel die selbe Zeitbasis. Aber ich gebe euch recht: 20 Pixel/mm würden mir sehr wohl reichen! Wahrscheinlich nehme ich einen Schrittmotor mit 200 Schritten. Einen Riemen mit einer Teilung von 0,08" und eine Riemenscheibe mit 20 Zähnen. Wenn ich dann noch ein Microstepping von 1/8 mache, dann komme ich leicht auf eine Auflösung die mir reicht. Und der Aufwand ist bei mir auch nicht groß, da die Endstufen das schon mit Leichtigkeit schaffen. (Dann ist die Auflösung leicht bei 750dpi und höher) Ich hoffe auch, dass ich dadurch keine weiteren Lichtschranken oder so brauche für den Zeilenanfang. Aber da bin ich mir noch nicht sicher ob das geht. Aber das ist nur die Theorie. Der Versuch wird es zeigen ob das überhaupt so klappt. Grüße, Jens
Jens schrieb: > Ich will genau einen > Schritt (oder Unterschritt beim Microstepping) pro Pixel. Erst dann kann > ich die Ausgabe mit den Daten in Hardware synchronisieren. Hallo Jens, ich denke, genau das macht die Sache unnötig kompliziert. Wenn der Antrieb gleichmäßig läuft, kann die Pixelansteuerung der Laserdiode zeitgesteuert erfolgen. Ein SPI arbeitet erstmal autark, bei linear bewegter Diode liegt der Pixeltakt bei einigen kHz (die Spiegel- benutzer brauchen da viel höhere Werte). Damit braucht das SPI alle 1 bis 2 ms einen Ladeinterrupt (wenn überhaupt). das steckt jeder µC locker weg und eine Baudrate von 9k6 sollte reichen, wobei mehr leicht möglich ist. Also: Aufwärtsrampe läuft, wie auch immer. Rampe beendet: Pixelausgabe startet mit konstanter Frequenz. Zeile fertig: SPI schaltet die Laserdiode ab und Abwätrsmpe beginnt. Ich möchte die Daten eigentlich per PC-Software aufbereitet auf eine SD-Card speichern und vom Plotter dann wieder einlesen. Der Aufwand ist nicht riesig und das geht dann auch unter Linux, Windows, was weiß ich.
Hallo Guido, das habe ich noch vergessen: Mein Schrittmotortreiber bekommt schon einen Schrittakt. Den nehme ich in Hardware her für die SPI. Die läuft also nicht als Master sondern als Slave. Dann ist das System schon so wie du das auch machen würdest. Wir reden vom gleichen. Aber wie gesagt, erst die Tests werden zeigen was gut ist und sicher läuft (ich werde beides ausprobieren). Achja, warum ich die Aufteilung in dpi mache und nicht in Pixel/mm ist weil die Funktion, die mir die Bilddaten aus dem PDF errechnet in dpi rechnet. Also bin ich daher an inch gebunden. Leider! Das metrische System wäre mir lieber! Grüße, Jens
Jens schrieb: > Achja, warum ich die Aufteilung in dpi mache und nicht in Pixel/mm ist > weil die Funktion, die mir die Bilddaten aus dem PDF errechnet in dpi > rechnet. Also bin ich daher an inch gebunden. Leider! Das metrische > System wäre mir lieber! Da liegt der Hund also begraben! :D Besteht denn nicht die Möglichkeit, dass dein Programm das dann auf die passende dpi Zahl berechnet? Ob das jetzt mit 600, 1200 oder 2400 dpi berechnet wird oder mit 648 weil deine Schrittweite das so vorgibt macht doch grundlegend keinen Unterschied. Grüße Niels
Ahoi, ich habe heute meine ersten Tests gemacht und war sehr enttäuscht. Selbst die einfachsten Muster wurden komplett miserabel belichtet. Die Ränder waren total unscharf und vom eigentlichen Muster war nichts mehr zu erkennen. Nach dem ich dann mehrere Stunden (vergebens) meine Software gedebuggt habe, ist mir irgendwann der Gedanke gekommen, dass die Diode vielleicht zu träge reagiert. Also hab ich mal das Modul aufgeschraubt und mir die Konstantstromquelle angeschaut. Die Messung an Eingang und Ausgang der KSQ haben dann meine Vermutung bestätigt. Im Anhang sind die Aufnahmen einmal beim Anschalten und dann beim Ausschalten (Kanal A ist Eingang und B Ausgang) Werde also morgen meine eigene KSQ aufbauen müssen. Habe testweise schon mal eine Einfache mit OP+Transistor in Spice simuliert und komme damit auf ca. 60µs Anstiegs- und Abfallzeit. Ist zwar schon deutlich besser, aber ich denke da geht noch mehr. Hat einer von euch bereits eine "schnelle" Konstantstromquelle für ca. 120mA die idealerweise schon in der Realität getestet wurde? P.S. Ob man jetzt mit DPI (Pixel/inch) oder Pixel/mm arbeitet ist doch unerheblich. Liegt doch nur der Faktor 2,54 dazwischen? Es wäre natürlich gut, wenn die Auflösung des Layouts der Auflösung des Druckers entspricht. Gruß Kevin
Hallo Kevin, schau mal da nach http://www.repairfaq.org/sam/laserdps.htm Ich kann mich an einen "driver from hell" oder so ähnlich erinnern, der wohl gut sein muss. Aktuell arbeite ich mit Peters Treiberschaltung - jedoch modifiziert um 2 Stufen, welche den Strom begrenzen (sollen). Ich habe einige (!) teuere Verluste zu beklagen und möchte das nicht wiederholen. Ziel ist der Einsatz des IC-Haus-Treibers (abgewandelte Variante von Fritz's Treiber). Aktuell spiele ich mit Stencils bzw. der Stencil-Erstellung rum ... Das dauert wahrscheinlich noch etwas, da ich parallel an der PC-Software schraube, damit ich die PDF-Vorlagen nach belieben drehen etc. kann. Die Belichtung erfolgt schon "automatisch" im Hoch- / Querformat ja nachdem, was weniger Zeit kostet. Gruß Dieter
Hallo Niels, da hast du natürlich Recht. Soweit bin ich noch nicht. Das dauert noch. Ich muss ja erst noch meinen Aufbau machen. Da werde ich noch ein paar Wochen beschäftigt sein. Ich habe grad nicht so viel Zeit. Dann wird sich das zeigen ob das geht. Hallo Kevin, mit den Stromquellen für die Laserdioden habe ich schon mehr gemacht. Da kenn ich mich auch besser aus. Wenn du einen OP und einen Transistor nehmen willst wirst du wahrscheinlich scheitern! Das ist viel zu langsam. Ich habe da schon etliche Versuche und Simulationen gemacht. Außerdem kann dann deine Stromquelle überschwingen was den sofortigen Tod dein LD bedeuten kann, je nach dem wie viel Luft du da noch hast. Ich habe weiter oben ein paar Bilder von meiner Stromquelle angehängt. Die liefert in 1µs einen Strom von 1A an meinen Laser. Das Überschwingen ist da schon fast nicht mehr erkennbar. Das liegt so bei 50mA. Ich habe die Schaltung aus dem Labor verwendet und habe die schön kompakt aufgebaut. Das funktioniert prima. Wenn du doch nicht auf den OP verzichten willst, dann darfst du die Diode nicht "schalten", sondern du regelst den Strom von beispielsweise 10mA auf deine 120mA. Die untere Grenze sollte halt unter dem Schwellstrom liegen. Du musst dafür sorgen, dass du einen Ruhestrom durch die Diode und den OP/Transistor treibst. Nur so kannst du die Schaltung schnell bekommen. Dann sind die Kapazitäten in deiner Schaltung schon geladen und begrenzen dir deine Bandbreite nicht mehr! Grüße, Jens
Oops, das habe ich gründlich verwechselt (na ja, "die" und "hell" stehen ja möglicherweise auch in einem gewissen Zusammenhang :-)) - den habe ich gemeint: http://www.die4laser.com/dvd-rec/Die4Drive.htm Den gibt es auch in einer "nicht smd"-Variante, soweit ich weiß. Da hatte sich wohl gedanklich die "machine fom hell" von fujitsu vorgedrängt ...
Hi, kurz meine Erfahrungen mit selbstgefertigten Stencils aus Neusilber - Bungard 0,15 mm positiv beschichtet: Nicht meine Liga :-( QFN 28 bekomme ich nicht vernünftig hin. TSSOP-20 ist noch ordentlich reproduzierbar herzustellen. Habe auch mit Salzsäure rumgespielt (soll ja schneller Ätzen und dadurch weniger Unterätzen) - werde aber wieder und weiterhin Abstand davon nehmen. Alles im Freien gemacht mit nur ganz wenig Salzsäure und Wasserstoffperoxid (ca. 40 ml Salzsäure). Hat ordentlich geätzt. Meine Spülflüssigkeit ca. 1/2 l Wasser hat nur wenige Tropfen davon (über den Stencil) abbekommen. Die Spülflüssigkeit in den Ausguss (Edelstahl) geschüttet. Dort stand noch eine flache Schale mit Entwicklerlösung drin, da ich diverse Versuchsreihen durchgeführt habe. Am Ende nahm ich die Schale weg und darunter fand sich Rost. Never ever! Habe jetzt einen Kapton-Stencil in USA bestellt und werde nach unserem Urlaub - ab Mitte September - weiter machen. Was machen die Laser-Plotter? Ist ja wieder sehr ruhig geworden ... Gruß Dieter
Dieter Frohnapfel schrieb: > Was machen die Laser-Plotter? Ist ja wieder sehr ruhig geworden ... Beim Versuch die einzelnen Software Module zusammen zu setzen haben sich (welch Überraschung) einige Probleme aufgetan. Die Rampenberechnung funkt mit den Interrupts andauernd in die Datenübetragung des xmodem Protokolls und anders herum. Soll heißen, dass ich diese beiden Sachen auf keinen Fall beide in vollem Umfang laufen lassen kann. Konsequenz: Einsparungen. Bei der Datenübertragung ist nicht viel zu holen, also bin ich gerade dabei die Schrittmotorrampe als Array zu verpflanzen und den Code darauf anzupassen. Leider ist die Rampe 980 Schritte lang, und nimmt somit knapp 50 % der kompletten Strecke ein, aber dafür wird's verdammt schnell ;) Wenn das läuft geht's wieder weiter und weiter. Ist gerade halt Hauptsächlig Arbeit bei der Software zu tun, da gibt es nicht viel zu berichten^^ Beste Grüße Niels
Niels Janson schrieb: > Die Rampenberechnung funkt mit den Interrupts andauernd in die > Datenübetragung des xmodem Protokolls und anders herum. Habe ich Dir schon geschrieben - da bei Dir die Rampen immer gleichförmig sind, würde ich die nur einmal berechnen (vorab) und in eine Tabelle stecken und diese Tabelle immer wieder "abfahren". Keine "onlne-Berechnung" mit rechenintensiven Interrupts erforderlich. Niels Janson schrieb: > Leider ist die Rampe 980 > Schritte lang, und nimmt somit knapp 50 % der kompletten Strecke ein, Das scheint mir deutlich zu viel zu sein - vielleicht ist der von Dir genutzte Algorithmus sub-optimal :-) Aus meiner Sicht muss die Rampe bei Beginn der Belichtung abgearbeitet sein und erst nach der Belichtung wieder bremsen, damit eine gleichförmige Bewegung zur Belichtung zur Verfügung steht. In der Beschleunigungs- oder Brems-Rampe zu Belichten ist aus meiner Sicht nicht "Zielführend".
Dieter Frohnapfel schrieb: > Niels Janson schrieb: >> Die Rampenberechnung funkt mit den Interrupts andauernd in die >> Datenübetragung des xmodem Protokolls und anders herum. > > Habe ich Dir schon geschrieben - da bei Dir die Rampen immer > gleichförmig sind, würde ich die nur einmal berechnen (vorab) und in > eine Tabelle stecken und diese Tabelle immer wieder "abfahren". Keine > "onlne-Berechnung" mit rechenintensiven Interrupts erforderlich. Ich weiß, Asche über mein Haupt. Aber ich lerne nur durch starke wiederkehrende Einschläge auf meinen Kopf ;) > Niels Janson schrieb: >> Leider ist die Rampe 980 >> Schritte lang, und nimmt somit knapp 50 % der kompletten Strecke ein, > > Das scheint mir deutlich zu viel zu sein - vielleicht ist der von Dir > genutzte Algorithmus sub-optimal :-) Vermutlich. Das ist auch noch eine Rampe, die ich mir mit dem Appnote Algorithmus ausgegeben habe. Und da bin ich dann an die Grenze von uint16 bei der Beschleunigung gekommen. Wenn ich keine weiteren Probleme mehr habe, werde ich die auch noch aufbessern, aber erstmal funktioniert es so ganz gut. > Aus meiner Sicht muss die Rampe bei Beginn der Belichtung abgearbeitet > sein und erst nach der Belichtung wieder bremsen, damit eine > gleichförmige Bewegung zur Belichtung zur Verfügung steht. In der > Beschleunigungs- oder Brems-Rampe zu Belichten ist aus meiner Sicht > nicht "Zielführend". Da stimme ich dir voll und ganz zu. Der Laser wird auch erst aktiviert werden, wenn die state machine mit "accelerate" fertig ist und in den "run" modus übergegangen ist. Ich muss ich mir jetzt wohl erstmal einen Beruhigungstee machen, nachdem ich auf die schöne Hürde mit 16 bit Variablem im PROGMEM gestoßen bin, Stichwort "pgm_read_word". Man zweifelt wirklich am Verstand, wenn der Wert aus dem Array bei array[1] richtig ist und bei i=1; array[i] plötzlich totaler Mist... Grüße Niels
Hallo Niels, da muss ich Dieter Recht geben. Während der Belichtung muss die Rampe schon fertig sein, sonst ist die Belichtung nicht mehr gleíchmäßig. Was hast du denn für Beschleunigungen angegeben? Bei mir kann ich so ziemlich an die Grenze gehen und der Motor macht das ohne Schrittverlust mit. Die Werte sind ja auf Integer genormt. Ich fahre mit einem Wert von 50000 an. Was nutzt du für einen Wert? Ich habe da aber noch eine extra Lichtschranke eingeplant, die den Zeilenanfang markiert. Sollte ich beim Anfahren oder Bremsen Schritte verlieren, dann kann ich wieder auf die Lichtschranke Triggern. Und das bei jeder Zeile immer wieder neu. Ich habe eine für die Hinfahrt und eine für die Rückfahrt. Die restlichen Probleme habe ich zum Glück nicht, da ich die Arbeit auf zwei Controller im Moment noch verteilt habe. Einer für die Schnittstelle und einer, der die Motoren fährt und das Belichten übernimmt. Da kommen sich auch keine Interrupts in die Quere, da das sowieso synchron ist. Du kannst deinen Code auch gerne posten. Ich schau gerne mit drüber. Vielleicht fällt ja dem ein oder anderen noch was ein, was man eleganter oder effizienter gestallten kann. Es ist vor allem wichtig, dass du die Interruptroutinen so kurz wie möglich gestaltest. Eventuell kannst du Variablen setzten und die Berechnungen dann in "normalen" Funktionen machen. Grüße, Jens
Jens schrieb: > Hallo Niels, > > da muss ich Dieter Recht geben. Habe ich auch schon gemacht ;) > Was hast du denn für Beschleunigungen angegeben? Bei mir kann ich so > ziemlich an die Grenze gehen und der Motor macht das ohne Schrittverlust > mit. Die Werte sind ja auf Integer genormt. Ich fahre mit einem Wert von > 50000 an. > Was nutzt du für einen Wert? Um's genau zu nehmen 65535. Da geht aber auch auf jeden Fall noch einiges mehr, die Rampe werde ich noch in Excel neu berechnen und dann einfügen. der Motor läuft aber auch mit einer Geschwindigkeit von 20000. Also 100 rad/s. Das ergibt dann 0,157 ms / Halbschritt. > Du kannst deinen Code auch gerne posten. Ich schau gerne mit drüber. > Vielleicht fällt ja dem ein oder anderen noch was ein, was man eleganter > oder effizienter gestallten kann. Komme ich sicher drauf zurück, wenn ich noch einen Hauch weiter bin. Aber immerhin habe ich gerade wieder alles in Bewegung gebracht, erstaunlicherweise genau so wie erhofft. Ich schaffe die Distanz von 5000 (Halb)schritten (10,583 cm) in 1,08 s, mit steileren Rampen sollte das noch besser werden. > Es ist vor allem wichtig, dass du die > Interruptroutinen so kurz wie möglich gestaltest. Deswegen ja jetzt die Umsetzung mittels Tabelle ;) Beste Grüße Niels
Niels Janson schrieb: > Ich weiß, Asche über mein Haupt. Aber ich lerne nur durch starke > wiederkehrende Einschläge auf meinen Kopf ;) Kommt mir bekannt vor :-) Niels Janson schrieb: > auf die schöne Hürde mit 16 bit Variablem im PROGMEM gestoßen bin, Interessant - kannst Du da etwas präziser werden - vielleicht kann Dir dazu jemand (nicht unbedingt ich ...) helfen? Grundsätzlich denke ich, dass eine Rampe auf 1 bis max- 2 cm Strecke abgearbeitet sein sollte. Ich bin da zwar vorsichtiger - aber bei mir spielt es auch keine große Rolle, da ich nur die "weiträumigen" Bewegungen mit Rampe abfahre (um das auch zu verstehen). Wenn Du ein wenig (nicht alles :-)) offen legst kann Dir ggf. auch geholfen werden ... cu Dieter
Dieter Frohnapfel schrieb: > Niels Janson schrieb: >> auf die schöne Hürde mit 16 bit Variablem im PROGMEM gestoßen bin, > > Interessant - kannst Du da etwas präziser werden - vielleicht kann Dir > dazu jemand (nicht unbedingt ich ...) helfen? Das Problem bestand dadrin, dass ich die Tabelle mit den Timerwerten, weil es so viele waren im Flash als Array abgelegt habe. Nun ist es ja aber so, dass man auf solche Arrays nicht so leicht zugreifen kann, wie ich später gelernt habe, denn Folgendes hat funktioniert:
1 | uint16_t delays[980] PROGMEM = { |
2 | 9158, |
3 | 5495, |
4 | ...
|
5 | };
|
6 | |
7 | sprintf(Buffer, "delay0: %u\n", delays[0]); |
8 | uart_puts(Buffer); //Ausgabe 9158, wie gewünscht |
So funktioniert es wahrscheinlich, weil der Compiler den Array-Aufruf weg optimiert hat und gleich den richtigen Wert eingefügt. Problematisch wurde es aber, wenn ich versucht habe, mit einer Variablen auf die Array-Elemente zuzugreifen:
1 | for (int i=0; i<979; i++){ |
2 | sprintf(Buffer, "delay: %u\n", delays[i]); |
3 | uart_puts(Buffer); //Ausgabe vollkommen wirr.. |
4 | }
|
Die Lösung dafür bestand dann darin, Folgendes zu nutzen:
1 | sprintf(Buffer, "delay: %u\n", pgm_read_word(&(delays[i]))); |
Aber da musste ich erstmal das Problem genau identifizieren und dann auch noch google verständlich machen, das hat ein wenig gestört ;) > Grundsätzlich denke ich, dass eine Rampe auf 1 bis max- 2 cm Strecke > abgearbeitet sein sollte. Es sind aktuell recht genau 2 cm bei mir, der gesamte Verfahrweg auf der Achse beträgt leider auch nur knapp 10 cm, aber wie gesagt, ich denke die Rampe sollte noch steiler gehen. > Wenn Du ein wenig (nicht alles :-)) offen legst kann Dir ggf. auch > geholfen werden ... Noch ein zwei Schönheitskorrekturen hier und da, und dann mache ich das auch^^ Beste Grüße Niels
Dieter Frohnapfel schrieb: > der > Geschwindigkeit im Video wird die Oberfläche ganz hell - die Struktur > des Resists verändert sich. Mit dem Stereo-Mikroskop betrachtet ist > die "Spur" des Lasers undurchsichtig - es scheinen winzige Bläschen > enthalten zu sein. > Bei langsamerer Fahrgeschwindigkeit werden die Spuren schwarz - der > Lack > ist verkokelt. Hallo zusammen, interessanter Thread und wirklich sehr schön zu lesen :-) Um den Effekt "Oberfläche wird hell" bzw. "Oberfläche wird schwarz" zu erreichen, sind dafür die 405 nm LD notwendig oder geht das auch mit anderen (größeren) Wellenlängen? Worauf ich hinaus will: Vielleicht genügt ja die Veränderung der Struktur des Fotolacks durch den thermischen Einfluss des Laserlichts ("wegbrennen" o.ä.), so dass eine Belichtung bei korrekter Wellenlänge nicht (mehr) erforderlich ist. Das wiederrum würde bedeuten, dass ein ausreichend starker Infrarot-Laser genügen würde, den man wiederrum in die Laserdrucker-Scanner-Einheit verpflanzt und damit das Problem der unbrauchbaren Scanner-Optik bei 405 nm umgehen kann... Nur mal so als Gedanke - sozusagen als "Mittelweg" zwischen FR belichten und Kupfer wegbrennen ;-)
Pumuckl schrieb: > Das wiederrum würde bedeuten, dass ein > ausreichend starker Infrarot-Laser genügen würde, den man wiederrum in > die Laserdrucker-Scanner-Einheit verpflanzt und damit das Problem der > unbrauchbaren Scanner-Optik bei 405 nm umgehen kann Hmm - unbrauchbare Scanner-Optik? Sehe ich persönlich anders. Wie stark muss ein Infrarot-Laser sein, damit ein alle 3 ms "vorbeihuschender" Laserpunkt die "strukturelle Veränderung" bewirkt? Und wodurch wird die Veränderung bewirkt? Ist es die Hitze (durch permanente, relativ lang andauernde Belichtung) oder ist es einfach die in Summe eingetragene Energiemenge? Ich weiß es nicht. Vielleicht kann "knorke" das ja auflösen ... Was ganz anderes - Richtung Schrittmotorsteuerung: http://hackaday.com/2014/08/28/800-inches-per-minute-at-0-00025-resolution/ Schon "scharf" (im wahrsten Sinne des Wortes), was die da schaffen ...
Dieter Frohnapfel schrieb: > Hmm - unbrauchbare Scanner-Optik? Sehe ich persönlich anders. Naja, sagen wir mit Einschränkungen brauchbar. Weiter oben habe ich gelernt, dass die "F-Theta-Linse(n)" der Scanner-Optik für einen Wellenlängenbereich berechnet ist - in dem Fall für den infraroten Bereich (780 nm). Daher mein Ansatz, weiterhin mit einem Infrarot-Laser zu arbeiten, um das Optimum aus der Scanner-Optik herauszuholen, ohne die Linse(n) zu entfernen. Dieter Frohnapfel schrieb: > ie stark muss ein Infrarot-Laser sein, damit ein alle 3 ms > "vorbeihuschender" Laserpunkt die "strukturelle Veränderung" bewirkt? > Und wodurch wird die Veränderung bewirkt? Offensichtlich gar nicht so stark - siehe das Video dass weiter oben gepostet ist: Beitrag "Re: UV-Laserdrucker" Unter dem Video bei den Komentaren steht, dass die verwendeten Laserdioden "...405nm at 60-100mW..." (2x) besitzen. Das reicht wohl aus, dass sich der Lack bei der Geschwindigkeit so stark erwährmt, dass die Weiss-Färbung auftritt. Tante google verrät mit dass es preiswert Laserdioden mit 500 mW bei 808 nm gibt. Der Bereich kommt der ursprünglichen Wellenlänge sehr nahe (780 nm). Damit würde ich ins Rennen gehen, um mal den Versuch zu starten. Dieter Frohnapfel schrieb: > Ist es die Hitze (durch > permanente, relativ lang andauernde Belichtung) oder ist es einfach die > in Summe eingetragene Energiemenge? Ich weiß es nicht. Die Hitze resultiert aus der eingetragenen Energiemenge - wobei ab einer gewissen Leistung der thermische Einfluss überwiegt ;-)
Pumuckl schrieb: > Damit würde ich ins Rennen gehen, um mal den Versuch zu starten. Dann viel Erfolg (ehrlich!) wäre mal ein neuer Ansatz. Ich persönlich habe da etwas Skrupel, da man Infrarot nicht direkt sieht (ggf. durch eine Kamera etc.) - und auch mit Brille (unbedingt zu tragen) nicht besser dran ist. Pumuckl schrieb: > Offensichtlich gar nicht so stark - siehe das Video dass weiter oben > gepostet ist: Beitrag "Re: UV-Laserdrucker" Ja - das ist aber auch ein Frage der Geschwindigkeit bzw. der Dauer, mit der ein Punkt belichtet wird. Wenn es eher die thermische Energie ist wird es sicher interessant, da (sagen wir mal bei 600 dpi und 18 cm Belichtungsbreite) ein Punkt alle 3 ms für 700 ns belichtet wird (wenn ich denn richtig gerechnet habe). Also 1/4252 der Belichtungszeit pro Zeile (wenn ich die "Tot-Zeit" für Synchronisation etc. nicht berücksichtige). 0,0007 ms zum "aufwärmen" und 2,9993 ms zum wieder abkühlen. Hmm ... Im Video fährt der Laserkopf ca. alle 0,5 Sekunden über die komplette Breite und jeder Punkt wird 1,25 ms lang mit 150 mW belichtet (ungefähr ...) und hat zwischenzeitig keine Zeit zum abkühlen. Kurz: Keine Ahnung, bin gespannt.
Pumuckl schrieb: > Das reicht wohl > aus, dass sich der Lack bei der Geschwindigkeit so stark erwährmt, dass > die Weiss-Färbung auftritt. Die Frage ist ob die Verfärbung nur eine (extreme) Überbelichtung ist oder ob sie durch die Wärme entsteht. Da bin ich mir überhaupt nicht sicher, da beim "normalen" Belichten die belichteten Flächen auch heller werden. Aber das wäre ein interessanter Ansatz und ich denke einen Versuch wäre es wert. Mal ein kleines Update von meinem Projekt: Eine KSQ habe ich aufgebaut und die funktionierte auch. Allerdings sind mir an dem gesamten Druckerkonstrukt einige Schwachpunkte aufgefallen, die mich veranlasst haben den ganzen Aufbau zu verwerfen. Da ich von einem früheren Projekt noch einige Teile übrig habe, baue ich mir nun auch einen Aufbau mit Schrittmotoren und Linearführungen. Habe das ganze also in Inventor konstruiert und wollte die Teile mit meinem 3D-Drucker drucken. Die ersten zwei Teile wurden auch problemlos gedruckt. Dann musste ich feststellen, dass die Software die ich fabriziert habe Schrott ist und sporadisch ein Pufferüberlauf auftritt, den ich nicht so recht lokalisieren kann. Habe dann etwas geschaut und für 50€ ein RAMPS mit 4 Treibern und Arduino bekommen. Bin zwar eigentlich nicht von dieser Lösung überzeugt, aber bei dem Preis kann ichs mal ausprobieren. Außerdem kann ich dann endlich mal den Raspberry für etwas verwenden :-). Bis das läuft ist das andere Projekt also erstmal zurück gestellt.
Nabend, Wie hoch ist denn die Leistung der von euch verwendeten LD´s? Ich spekuliere grade mit 2 LD´s á 1W. Die würde ich von rechts und Links auf den Polygonspiegel richten und natürlich zueinander ausrichten/syncronisieren. Nur bin ich mir nicht sicher ob die Leistung auch für das Erhitzen (gefällt mir irgendwie) des FR´s ausreicht oder ob ich mich mit dem ursprünglichen belichten zufrieden geben müsste. In dem Video wurde ja bewusst eine Achse für das Verfahren der Linien benutzt. Schluckt die Polygonspiegelmethode wirklich so viel Leistung? Gruß
Hallo Christian, das wird schwer dir da eine richtige Antwort zu liefern, da das hier noch keiner versucht hat. Ich bin auch mit dem Erhitzen ein bisschen skeptisch. Ich denke das ist nicht nur von der Leistung abhängig. Viel wichtiger ist eigentlich wie sich dein Material verhält. Wenn der Lack gerade bei IR Licht reflektiert (also keine Energie aufnimmt) dann kannst du mit so viel Leistung da drauf ballern wie du willst und wirst keinen Erfolg haben. Da müsste man erst testen wie stark der Photolack reflektiert! Erst dann kann man abschätzen wie viel Leistung man braucht. Nur ich vermute, dass keiner hier die Messungen durchführen kann. Daher wirst du das einfach testen müssen. Im Übrigen finde ich deinen Ansatz zum jetzigen Zeitpunkt gewagt. Alle hier kämpfen noch mit trivialeren Problemen. Da dann auch noch 2 Laser über einen Spiegel zu synchronisieren das ist eine große Aufgabe. Vielleicht solltest du das auf Gerät 2 verlegen und erstmal dich in den sonstigen Aufbau hineinfinden. Nicht dass du nur sinnlos Geld verbrennst und das dann insgesamt wieder aus Frust im Müll landet. Grüße, Jens
Oh je oh je. Wie gross ist der Öffnungswinkel deines Scanners? 30 Grad? bei einem Scanner mit 6 Spiegel ergibt das je spielgel fläche von 120 Grad die abgescannt wird. heisst 75% der zeit läuft der Laser in der Pampa rum. und wie ich jetzt von 360 / 6 = 60 * 2 = 120 komme darfst du dir selber überlegen. und noch ein paar Einwände. die Linsen mögen zwar für IR berechnet worden sein. aber das Material ist sicher nicht für die Leistung ausgelegt. könnte passieren, das du die Linse zu sehr termisch belastest. und um den Lack weg zu bekommen musst du in relativ kurzer zeit eine hohe Leistung einbringen. Unter dem Lack ist Kupfer und das hat bekannter Massen eine sehr sehr gute Wärmeleitfähigkeit. Ich vermute du wirst mit der Methode eher die Leiterplatte aufheizen als den Lack weg zu lasern. Und der laser braucht aufgrund des Scanners relativ lange um wieder an der gleichen stelle zu sein. Entweder der Lack ist beim ersten mal ab scannen schon weg, oder du hast Pech gehabt. gruss
Naja ich denke ich werde die Methode mal versuchen. Sollte es nicht klappen den Lack zu "brennen" sollte die Energie doch zumindestens für das ordentliche belichten des Fotoresists ausreichen. Wenn ich durch die beiden Laserdioden dann wenigstens die Belichtungszeit verkürzt habe ist dies für mich schon ein ausreichender Erfolg. Ich versuche das Fahren auf der X-Achse zu vermeiden, da ich möglichst wenig Mechanik verbauen möchte. Zumindest schätze ich den Polygonspiegel langlebiger ein als Verfahreinheiten in X- und Y-Achse. Am besten würde es mir gefallen wenn sich von aussen ersichtlich nichts bewegt und der Laser intern über Spiegel über alle Achsen gelenkt wird. Das ist aber denke ich ein erstmal viel zu grosses Ziel und auch nicht notwendig. Ich werde auf jeden Fall berichten sobald die Syncronisation ordentlich läuft. Gruß HighTec
Zum belichten sollte die Wellenlänge stimmen! 405 bzw 445 nm. Mir IR bzw rot wird das nichts. Oder du verwendet einen anderen lack. Gibts so was überhaupt? Reprofilm kann man meines Wissens mit roten lasern belichten. (Trommelbelichter)
123 schrieb: > Zum belichten sollte die Wellenlänge stimmen! 405 bzw 445 nm. Mir > IR bzw rot wird das nichts. Oder du verwendet einen anderen lack. Gibts > so was überhaupt? Reprofilm kann man meines Wissens mit roten lasern > belichten. (Trommelbelichter) IR werde ich nicht verwenden, ich bestelle mir extra zwei LDs in 445 ;-)
Na wie sieht es aus? Hat wer ein paar updates zu berichten oder kämpft ihr noch an vorderster Front ;-)
Da der Thread schon wieder einzuschlafen droht - und ich Fortschritte zu verzeichnen habe :-) Ich habe meine Platine (in China gefertigt, wegen Durchkontaktierung) endlich bestückt (dank dem Kapton-Stencil aus USA und meinem Stereo-Mikroskop) und in den Ofen geschoben. Tschacka!!! Fast alles gut gegangen :-) bis auf den 100µF Elko, der wollte nicht verbacken werden. Ist aber nicht schlimm, den und mehr habe ich auf der "Versorgungs-Platine". Ab sofort bin ich SMD-Fan :-) Habe jetzt mit dem digitalen Poti per SPI rumgespielt (nach Lesen des Datenblatts auch erfolgreich) und kann jetzt den Laser wunderbar digital einstellen. Der kleine IC-HG wird allerdings mehr als Handwarm - hier muss ich mir noch eine Kühlung einfallen lassen. Thermal-Pad habe ich aber ich denke, ich werde von beiden Seiten mit Kühlkörpern kühlen. Im Nachhinein habe ich mehrere Fehler gemacht: 1. 5V Referenzspannung (warum, weiß ich gar nicht mehr) Voll doof, da ich mir damit Einstell-Spielraum genommen habe 2. SDO von digitalen Poti nicht beschaltet Auch nicht intelligent, da ich den gespeicherten und aktuellen Wert so nicht auslesen kann 3. Die Kühlung und mögliche Befestigungslöcher für Kühlkörper locker ignoriert - das rächt sich jetzt Außerdem gibt es eigentlich keinen vernünftigen Grund, den Mikrocontroller auf einer anderen Platine zu haben. Version x wird anders aussehen. Positiv: Der Weg ist das Ziel :-) Spiele also noch ein wenig mit dem Laser-Treiber, sorge für Kühlung und "verheirate" den erstmal mit der bestehenden Lösung. Mal schauen, was rauskommt. Nächste Stufe wird der Einsatz des ATXMEGA sein ... Wie schaut's bei den "Plotter-mässig-Linien-Belichtern" aus?
Falls es noch wen interessiert: Die Flanken der Signale sehen - im Gegensatz zur aktuellen Transistor/MosFet-Lösung - richtig gut aus. Kerzengerade - aber mit Überschwingern, die ich meinem fliegenden Aufbau oder dem "günstigen" Oszi anlaste. An diesem oder dem nächsten Wochenende werde ich das Teil mal in meinen Belichter einsetzen und mir das Ergebnis anschauen. Parallel werde ich (aus gegebenem Anlass :-)) mal schauen, ob ich meinen Plotter in Verbindung mit einer ordentlichen Laser-Diode nicht dazu bringen kann, mir Stencils zu schneiden. Was passiert in schwarzen Löchern mit Grüssen? Egal, ich grüsse alle ... :-)
Ich habe leider keine großen Fortschritte zu verzeichnen, da nächste Woche Klausuren sind... Mein 3D-Drucker läuft zwar mittlerweile wieder und die Teile sind fertig gedruckt, aber ich schätze, dass ich erst in drei Wochen alles zusammengebaut habe und die ersten Testläufe machen kann. Schön zu hören, dass es bei euch anscheinend besser vorangeht. Hoffentlich werden hier bald (brauchbare) Ergebnisse zu sehen sein :-) Schöne Grüße Kevin
Hallo ihr zwei, bei mir ist bisher nichts voran gegangen. Wie gesagt, ich werde wohl erst wieder gegen Weihnachten dazu kommen da was zu machen. Ich muss erst noch ein paar andere Sachen fertig machen. Was für eine Laserdiode willst du denn nehmen um die Stencils zu schneiden? Ich denke die Leistung und die Wellenlänge die dafür nötig sind, sind nicht so leicht zu bekommen. Kannst du von deinem Treiber mal Oszibilder einstellen? Würde mich schon interessieren. Grüße, Jens
Jens schrieb: > Kannst du von deinem Treiber mal Oszibilder einstellen? Hallo Jens, lieber nicht ... Außer meinem fliegenden Aufbau habe ich noch den Kardinal-Fehler begangen GND und AGND direkt am IC-HG zusammenkommen zu lassen (Fritz war da schlauer ...) - bin halt ein "rookie" in Bezug auf Schaltungsentwurf. Ist keine Entschuldigung - Lesen (vorher) hätte mir einiges erspart. Wie geschrieben sind die Signal-Flanken sehr gerade - nur gibt es - lt.Oszi - Überschwinger, die ich durch meinen fliegenden Aufbau bzw. die GND-Problematik in Verbindung mit der Charakteristik der LD erklären möchte (aber nicht wirklich kann). Der Weg ist das Ziel und ich lerne immer wieder hinzu :-) Hierzu die Aussage von IC-Haus: Zur Bewertung des Laserimpulses ist eine elektrische Messung des Laserstromes alleine nicht ausreichend. Das Ergebnis ist wegen der Charakteristik der Laserdiode nicht sehr aussagekräftig. Daher ist es unumgänglich den Laserimpuls der Diode optischen zu messen. Jens schrieb: > Ich denke die Leistung und die Wellenlänge die dafür nötig sind, sind > nicht so leicht zu bekommen. Sehe ich nicht so - mit ca. 250 mW Laserleistung (blaue LD) bruzzle ich sowohl Löcher in weißes (reflektierendes) Papier wie auch in ca. 50 µm dickes Kapton-Klebeband. Wenn ich an ca. 100 - 150 µm dicke Kapton- oder andere Folie denke ist das wahrscheinlich machbar. Den eigentlichen Knackpunkt sehe ich darin, den Plotter auf die gewünschte "Verfahr-Geschwindigkeit" zu bekommen. Aber das ist ja auch nur ein Ansatz - wenn es nicht funktioniert habe ich es zumindest probiert ... und werde weiterhin ca. 15 € für 2 Kapton-Stencils zahlen ... cu Dieter
Hallo Dieter, aber du willst doch jetzt in Metall schneiden. Das hat mir Papier nichts mehr zu tun. Da hast du mehrere Schwierigkeiten. Zum einen leitet Metall die Wärme besser. Da sind die 250mW schnell abgeführt. Zum anderen reflektiert Metall den Laserstrahl. Und das ist von der Wellenlänge und vom jeweiligen Metall abhängig. Für die verschiedenen Materialien wird das angegeben, wie viel Energie du ins Material bringen kannst und nennt sich Basorbtionsgrad oder Absorbtionswellenlänge. Da gibt es Kurven, wo man sehr schon sehen kann bei welcher Wellenlänge das Material reflektiert und bei welcher nicht. Du musst dann eine Wellenlänge wählen, die nicht reflektiert wird. Dann wird die Energie des Laserstrahls absorbiert und das Material erwärmt sich. Du kannst also schneiden. Die gängigen Laser für die Metallbearbeitung haben alle etwa 1064nm Wellenlänge. Das ist leider kein Zufall! Allerdings die Kapton-Stencils müsstest du problemlos schneiden können. Damit kommst du ja auch schon weiter! Grüße, Jens
Jens schrieb: > aber du willst doch jetzt in Metall schneiden Nö - ich rede von Kunststof-Folie bzw. Kapton-Folie. Metall war mal - ich hatte versucht Stencils aus Metallfolie (Neusilber bzw. Messing) zu ätzen - das geht bei ganz feinen Strukturen (QFN28) nicht mehr ordentlich; kann man aus meiner Sicht vergesssen. Gruß Dieter
Hallo Dieter, dann habe ich dich da falsch verstanden! Mich würde interessieren, wenn du so eine Kunststofffolie schneidest, wie gut das in den Ecken geht. Beispielsweise bei SMD Widerständen hast du ja ein rechteckiges Pad. Wie gut ist da die Kontur an den Ecken? Hast du da schon Ergebnisse? Gruß, Jens
Dieter Frohnapfel schrieb: > Parallel werde ich (aus gegebenem Anlass :-)) mal schauen, ob ich meinen > Plotter in Verbindung mit einer ordentlichen Laser-Diode nicht dazu > bringen kann, mir Stencils zu schneiden. Jens schrieb: > Hast du da schon Ergebnisse? Hallo Jens, nein - noch keinerlei Erkenntnisse. Das dauert auch sicher noch eine ganze Weile ... da ich wahrscheinlich den Plotter dazu selbst steuern muss. Die Optimierungen in der Plotter-Firmware werden sich vermutlich nicht mit meinen Vorstellungen decken :-( Das hat für mich auch nicht Prio 1. Zunächst werde ich mal den sub-optimalen Laser-Treiber an meine Lösung anbinden und mir das Ergebnis anschauen. Dann werde ich wohl ein neues PCB nach aktuellem Kenntnistand entwickeln und wieder in China fertigen lassen. Diesmal parallel dazu die Kapton-Stencils in USA ... Weihnachten (:-)) schaue ich mir dann wahrscheinlich das Ergebnis an. Dann (so ich bis dahin keine anderen Pläne habe) kümmere ich mich um den Plotter, der hier seit ca. 3 Jahren dekorativ herumsteht. Auch ich betreibe das nur Hobby-mässig. Wenn ich keine Lust habe tut sich nichts ... LG Dieter
Hallo, ich plane auch seit längerem den Bau eines Laser-Belichters fürs Hobby. Spiegeleinheiten usw. liegen bereits im Schrank. Zu LD-Treiber, Pll und uC habe ich auch bereits erste Planungen abgeschlossen. Doch wie bekomme ich ein Layout aus dem PC über USB/Seriell in meinen uC? Ich habe hierzu leider noch nichts gefunden. Schon gar keine Code-Beispiele. Ich würde gerne das sw-Layout aus Eagle, KiCad o.ä. als Pixelbild zeilenweise zerlegen und die sw-Informationen an den uC übergeben. Im Programmieren innerhalb des PCs bin ich leider noch keine große Leuchte. Hat einer von Euch evtl. ein Codebeispiel? Ich denke, dass das Ganze in Python am einfachsten zu implementieren sein dürfte. Mit Gruß Maik
Maik schrieb: > Ich würde gerne das sw-Layout aus Eagle, KiCad o.ä. als > Pixelbild zeilenweise zerlegen und die sw-Informationen an den uC > übergeben. Wenn du einen Gerber-Outout erzeugst, kann das Programm gerbv die Umwandlung übernehmen. Das ergibt allerdings Farbbilder, die du ev. noch weiterbearbeiten musst.
Maik schrieb: > Doch wie bekomme ich ein Layout aus dem PC über USB/Seriell in meinen > uC? Ich weiß, der Thread ist mittlerweile elend lang - aber im bei "Homemade Laser Exposer" (Youtube) solltest Du eine Lösung finden. Ich drehe weitere Kreise. Meine LM297 / LM298-Lösung (empfindliche Bausteine - sowohl in Bezug auf GND wie auch auf statische Elektrizität) habe ich durch ein winziges GY-4988-Modul mit ebensolchem Chip ersetzt. KEIN Kühlkörper erforderlich, bis 16tel Step möglich im QFN28-Mass ... O.K. 297/298 sind Dinosaurier ... Nur die Strom-Einstellung war etwas nervig. Aber ein guter Schritt in Richtung 1200 dpi :-) Meine Laser-Driver Lösung will noch nicht so recht. Bin nochmal ein paar Tage unterwegs, dann werde ich dem auf den Grund gehen. Habe einige Fragen an IC-Haus "gemailt" - und prompt Antwort bekommen. Die Erwärmung des Chips kann man (auch) über die zu schaltende Spannung beeinflussen. Habe ich ausprobiert - wird in V2 meines PCB mit einfließen. Leider funktioniert die Steuerung noch nicht wie gewünscht - keine Ahnung, wo es klemmt. Bin aber eigentlich guter Dinge :-), da ich an div. Baustellen ganz ordentlich vorankomme. Z.B. war mein Laser-Kühlkörper (mangels Bohr-mechanischer Fähigkeiten meinerseits - ich habe den Bohrer im vorgesehenen Bohrloch abgedreht :-( ) nur einseitig befestigt - das habe ich geändert, jetzt sitzt das Teil Bombenfest. Bei der Gelegenheit gelernt, dass es spezielle Bohrer für ALU (-Blöcke) gibt - habe ich aber nicht eingesetzt sondern mm-weise die langen Späne abgezogen. Hat sich nicht positiv auf die geplante Ziel-Linie ausgewirkt ... . Gruß an die Laser-geweihten :-)
Egon schrieb: > Autor: > > Egon (Gast) > > > > > > > > Datum: 07.10.2014 21:17 Oh Mann, ich gelobe Besserung :-) Ich habe 1 mal (und auch zum ersten Mal) ge-trollt (mit dem Namen Egon) und es hat sich umgehend gerächt :-(. Eigentlich nur, weil mir so viele Beiträge hier vollkommen Sinnfrei erscheinen und ich das auch mal ausprobieren wollte (hat übrigens prima funktioniert - man kann schon recht abwegig posten, es finden sich immer Mitstreiter ...)). Also der Beitrag stammt nicht von "Egon" sondern von mir ...
Dieter Frohnapfel aka Egon schrieb: > habe ich durch ein winziges GY-4988-Modul mit ebensolchem Chip ersetzt. Welchen Schrittmotor betreibst du denn mit dem Modul?
:
Bearbeitet durch User
Christian O. schrieb: > Schrittmotor Hallo Christian, war ein paar Tage weg ... daher die späte Antwort. Ich treibe den Standard-Schrittmotor (bipolar) des eingesetzten HP-Scanners damit. Ist nur ein kleiner Schrittmotor mit wenig Leistung - reicht aber dank des vorhandenen "Getriebes" gut aus. Der Motor wird durch den Haltestrom gut warm (nicht heiß), aber der Treiber-Baustein bleibt relativ kühl. Gruß Dieter
Hallo , bin vor kurzem auf euch aufmerksam geworden. Habe auch etwas vor einiger Zeit mit UV-Lasern, aber mit Galvos , experimentiert http://laserfreak.net/forum/viewtopic.php?f=43&t=55202 Frank
Frank schrieb: > Habe auch etwas vor einiger Zeit mit UV-Lasern, aber mit Galvos , > experimentiert > > http://laserfreak.net/forum/viewtopic.php?f=43&t=55202 Hmm, ja - der Link zeigt nur wenig - eigentlich nur die PC-Software in Action für eine Outline-Schrift. Das Video zeigt noch 2 Spiegel (was hat das mit "richtigen" Galvos zu tun ?) in relativ behäbiger Bewegung. Galvos sind (für mich) eher sehr kleine Ablenkeinheiten, welche auch sehr schnell reagieren ... Die Bilder - die div. Defekte in den Leiterbahnen etc. kenne ich eher von von Belichtung über Folien etc. - kann ich nicht so recht zuordnen. Wie genau hast Du denn die unterschiedliche Fokussierung (je nach Entfernung) des Laserstrahls gelöst? Welche "Galvos" hast Du denn verwendet? Wie lange dauert die Belichtung einer solchen Platine?
Hallo Dieter, Das Video auf Laserfreak ist nicht von mir -> von VDX hat geantwortet, ich bin dort roehre. Hardware: 175mW 405nm UV Lasermodul Galvos und Treiber : CT 6810P Mikrocontroller 32 Bit von Microchip PIC32 - USB CDC + Software-Kissenverzerrung Analog : Dual - DAC 16Bit DAC8532 - OPV Frontend +- 3V symetrisch Software : EAGLE (Leiterplatten Layout) - daraus wird mit „ FastGcode.ulp “ ein CNC File mit XYZ Koordinaten welche mittels der Software “ Repetier-Host“ (aus der 3D-Drucher Szene ) zum Mikrocontroller per USB übertragen wird. Der berechnet, gibt mit dem Bresenham-Algorithmus und Software-Kissenverzerrung die Werte an den DAC und der zum Galvotreiber aus. Die Galvos befinden sich senkrecht mittig 300mm über der Projektionsfläche von 180x170mm. Der Fokus des Lasers aus 300mm Entfernung und bei einer Scannfläche 180x170mm ist relatv unkritisch - die oben gezeigten Bilder sind aus den ersten Versuchen und vielleicht nicht gut aufgenommen , die Fussel stammen vom besprühen mit Positv20 - IC in der mitte -> PIC32MX695F512H-80 TQFP64 mit 0,5mm Pinnabstand - Belichtun bei pcb1.jpg ca. 9 min - keinere gehen natürlich schneller da nur die zu ätzenden Stellen gelasert werden. Frank
Frank schrieb: > Der Fokus des Lasers aus 300mm Entfernung und bei einer Scannfläche > 180x170mm ist relatv unkritisch Interessant - bei mir sind es etwa 25 cm und der Fokus ist schon recht kritisch ... . Scheint, als ob wir anders fokussieren. Bei Dir sind das ca. 1,3 bis 1,5 (je nachdem wie die "Spiegel-Wege" sind) cm Unterschied im Fokus von der Mitte zum Rand. Ist aus meiner Sicht eine ordentliche Nummer ... und ich kann mir noch nicht so recht vorstellen, wie das funktioniert. Mit den Galvos und der 3D-Drucker-SW habe ich Null Erfahrung. Ich gehe mal davon aus, das nicht Zeilen-weise sondern gezielt "abgefahren" wird. Wie auch immer das funktioniert. Welches"Raster" wird denn da zugrunde gelegt? Kannst Du mal bitte ein Bild / oder besser Video DEINES Aufbaus einstellen? Dann kann ich / können wir uns die Gegebenheiten besser nachvollziehen. Ansonsten: Respekt - sieht wirklich gut aus!
Hallo Dieter, ich werd am Wochenende versuchen ei paar Bilder zu machen. Für die Kontrolle des Focuspunktes, scanne ich mit 35% Laserpower ein Karo-Raster von 5x5mm über die gesamt zur Verfügung stehende Fläche auf Thermofaxpapier. -> visuell mit Lupe und Mikroskop. Für euch, mit den Schrittmotoren, hätte ich noch einen Tipp; falls noch nicht bekannt. http://smoothieware.org/ http://smoothieware.org/smoothie-on-a-breadboard Habe selbst schon getestet -> läuft super , als CNC, 3D-Drucker, Lasercutter einfach über ein ini-File zu Konfigurieren - mit Rampen, Planer und Geschwindigkeits-synchrone PWM-Steuerung für Laserpower Frank
Hallo Frank, sieht sehr vielversprechend aus was du da machst. Bilder würden mich auch interessiern. Und ich würde das Gerät gerne mal in Aktion sehen. Wie machst du das mit den Polygonen wenn eine etwas größere Fläche ausgespart werden soll? Du hast ja geschrieben dass du Fastgcode.ulp verwendest. Das habe ich mir auch mal besorgt, aber ich komme nicht mit den Einstellungen zurecht. Ich habe noch eine CNC Fräse hier und würde meine Platinen bis mein Belichter fertig ist gerne fräsen. Aber mit den ULPs komme ich nicht richtig zurecht. Auch das PCBGCode hat die Fill Funktion nicht mehr. Die Flächen werden nicht entfernt, sondern bleiben stehen. Sie sind zwar elektrisch nicht mehr angebunden, aber das reicht manchmal nicht aus (EMV, Sicherheitsabstand,...) Kannst du mir da weiter helfen? Grüße, Jens
Hallo Jens, kurze Info zu FastGcode.ulp -> Einstellung zum Lasern - wenn Du nur Isolation's fräsen möchtest, das Häkchen bei FILL entfernen
Hallo Frank, das ist ja der Hammer! Da interessieren mich jetzt aber auch die anderen Details. Der Aufbau und vor allem die Galvos. Dann würde mich interessieren wie das Ganze auch preislich liegt. Wenn die Lösung auch in dem Bereich liegt wie die anderen, dann ist das eine echte Alternative. Vielen Dank auch für die Infos zu dem ULP. Hat funktioniert. Grüße, Jens
Jens schrieb: > Da interessieren mich jetzt aber auch die anderen Details. Der Aufbau Ich habe mal abgewartet, weil ich auch sehr daran interessiert bin, wie diese tolle Leistung zustande kommt. Bilder vom Aufbau wären wirklich höchst interessant - ich kann mir das Alles gar nicht richtig vorstellen. Das die Ablenkung Dein know-how ist - O.K, das ist nachvollziehbar. Da muss man sich halt mal intensiv mit der Welt der Mathematik beschäftigen ... Abgesehen davon kann ich die "tolerante" Fokussierung immer noch nicht verstehen - vielleicht kannst Du das ja etwas "erhellen". cu Dieter
Moin Ich hab mich mal ein bischen versucht einzuarbeiten in die Laser optik. Man stössst da auf ganz lustige verhalten. von wegen gaus strahl, ... Der Minimale Fokus punkt ist von Winkel und Wellenlänge abhängig. Je steiler der Winkel um su kleiner. Es gibt einen abstand zwichen kurz vor denen der Fokuspunkt und kurz danach, bei dem der fokus mehr oder weniger gleich ist. Nennt sich ryleigh länge. Je flacher der Winkel um so länger dieser abstand. http://de.wikipedia.org/wiki/Gau%C3%9F-Strahl gruss ps. ich bin auch interresiert an dem system. vorallem über die güte der Galvos hab ich noch nichts gefunden. geht ja von ein paar hundert (einzelnen) euronen bis deutlich ins 4 stellige
Frank schrieb: > habe ein kurzes Video eingestellt. Deinen Aufbau hälst Du geheim? Wäre ja O.K. - muss man halt wissen ... Das Video sieht schon mal wirklich gut aus! Ich frage mich nur nach wie vor, wie Du den Fokus auf diese (schwankende) Entfernung sauber hin bekommst. Wenn ich hier mit einem Laser-Modul und Fokus auf ca. 30 cm rumspiele, dann machen +/- 10 mm Entfernung schon ordentlich was aus. Gruß Dieter
Hallo, anbei ein paar Bilder. - man kann sich mit dem Fokus theotetisch stundenlang beschäftigen - oder einfach ausprobieren. Ich habe aus meiner Kramkiste die beste Optik (Glas, 2 Linsen, AR) hin und her probiert -> und es klappt - die Fokus Einstellung ist allerdings feinmotorisch anspruchsfoll - Laserdioden-Treiber -> siehe Bild - zu den Galvos : also die China Dinger für 100 bis 300 € reichen nicht -> keine ausreichende Spannungsstabilisierung, nicht linear genug - meine Galvos und Treiber stammen aus einen alten Co2 Beschriftungslaser - der Rest - MµC, DAC, Opammp's, Laserdioden-Treiber sind einfachsten zu verkraften. Frank
Hallo, ich wunderte mich schon, wo meine Anfrage geblieben ist. Bis ich sah, dass der Thread mittlerweile eine 2. Seite hat... Augen auf Ich fragte nach einer Möglichkeit, ein Bild, Postscript etc. aus dem PC-Programm zeilenweise in sw-Daten ausgeben lassen zu können. Diese sollten dann lokal oder in der Zielhardware ausgewertet werden. Der Hinweis auf den Laser-Exposer in Youtube hilft mir nicht wirklich weiter. Das Video kenne ich. Die Daten auf der zugehörigen Internetseite sind leider nicht einsehbar. Die Lösung wurde offenbar in Python realisiert. Hat einer von euch weitere Hinweise für mich? Ich würde gerne offene Programmsprachen verwenden und von kommerziellen Programmpaketen absehen. Mit Gruß Maik.
@Frank Boah ... sieht richtig gut aus. Was mich am meisten überrascht ist die "heftige" Steuerung für die Galvos. Ich dacht immer, die müssten relativ wenig Masse/Gewicht haben um die schnellen Bewegungen optimal umzusetzen - und daher auch nur "leichtgewichtig" angesteuert werden. Ansonsten: Nochmals ... wirklich toll!! Was mich interessieren würde - wo ist das Problem mit "unzureichender Spannungsstabilisierung" (was muss da wo stabilisiert werden) und was bedeutet "nicht linear genug" bezogen auf die "China-Galvos"? O.K. ich bin diesbezüglich absoluter Laie - würde es aber gerne verstehen ... @Maik Apropos China - lebst Du dort :-) - anders kann ich mir nicht erklären, dass Maik schrieb: > Die Daten auf der zugehörigen Internetseite > sind leider nicht einsehbar. Du die Daten nicht sehen kannst. Der Link unter dem Video http://www.das-labor.org/wiki/LaserExposer führt auf die richtige Seite. Von dort aus kann man via Link z.B. im SVN die Sourcen betrachten und kommt - wie durch ein Wunder :-) - darauf, dass eines der sog. Poppler-Tools (nämlich pdftoppm) genutzt wird um eine PDF-Datei (z.B. aus Eagle heraus erzeugt) in eine Bitmap-Datei umzusetzen. Darüber wurde hier im Thread auch schon diskutiert ... Also "Poppler-Tools" ... wäre eine Möglichkeit. Es gibt bestimmt noch viele andere, aber ich z.B. nutze auch pdftoppm. Mit Python geht es wohl auch (vielleicht kann Frank da weiterhelfen) - da habe ich aber keine Ahnung von. Gruß Dieter
@Mike Kommt auch immer darauf welche Platform. Windows Linux OSx? Unter Windows könnte ein einfacher Raster treiber möglich sein. Der müsste nur aus einer GPD bestehen. der dann z.B. direckt aus Eagle die Daten generiert. Datei Drucken (myPCBprinter) Anbindung z.B. Über RS232 auf dem dann der Spooler die generierten Rasterdaten rausschiebt. Bei USB bräuchte man eine USB Device PrinterClass Implementierung. (mit linux kein Problem da schon im kernel vorhanden) Unter Linux / OSx könnte man cups bzw die darunterliegenden Software libs / tools verwenden. gruss
Hallo Dieter, -zu den Galvos : ... es gibt sogar welche, die bauen die Dinger selber http://elm-chan.org/works/vlp/report_e.html > Was mich interessieren würde - wo ist das Problem mit "unzureichender > Spannungsstabilisierung" - die 100€ Dinger haben ein Schaltnetzteil von +-15V für die Endstufe und Vorstufe (Servo-Regler)zusammen -> Lastschwankungen werden nicht ausgeregelt - billige Audio-Endstufen IC's verbaut(TDA2030) - ich habe mit solch ein Teil zu viel Zeit verbracht - zum Schluss ist eine Galvospule abgeraucht. Jetzt liegt es in der Ecke und wird mit Nichtachtung gestraft. guten Eindruck machen : http://www.ebay.de/itm/DT30-ILDA-scanner-set-galvanometer-for-laser-show-/191348298950?pt=Licht_Effekte&hash=item2c8d3f54c6 http://www.ebay.de/itm/DT40pro-ILDA-scanner-set-galvanometer-for-laser-show-/191348298911?pt=Licht_Effekte&hash=item2c8d3f549f http://www.thorlabs.de/newgrouppage9.cfm?objectgroup_id=3770 Frank
Frank schrieb: > -zu den Galvos : ... es gibt sogar welche, die bauen die Dinger selber :-) das ist nach meinem Geschmack - McGyver-Galvos :-) Aber im Ernst - die Dinger sind ja wirklich nicht gerade billig. Zum rumspielen ist mir das viel zu teuer ... Bin gespannt, ob andere Dir folgen werden. Ich bleibe jetzt erstmal auf der Polygonspiegel-Linie und versuche da noch zu optimieren. Vielleicht spiele ich wirklich mal mit den Selbstbau-Galvos rum - nur so, um das Prinzip mal anzuwenden. Gruß Dieter
Gibt auch noch die Galvos von Scannermax (Pangolin). Die 506er Serie hat irgendwo bei 350$ mit Servoverstärker angefangen. Das ist auf jedenfall schonmal eine andere Klasse als China ^^
Selbstbau Galvos müssten sich mit solchen Magneten [1] eigentlich recht einfach aufbauen lassen, in die mitte noch eine am besten nicht magnetische Welle (Alu oder Messing) und fertig wäre das teil. Nur die Feder könnte etwas problematisch sein. Die Ansteuerung ist eigentlich auch nicht aufwendig, ist ja eigentlich nur ein DAC + evtl einen Verstärker, oder? Klar muss die spannung möglichst glatt sein etc. aber das liese sich doch alles lösen. Ok die Spiegel scheinen etwas teurer zu sein, aber mit unter 100€ sollte man für mechanik und treiber auskommen, denke ich. [1] http://www.supermagnete.de/ringmagnete-neodym/ringmagnet-10mm-x-5mm-x-5mm-diametral-magnetisiert-neodym-n45-vernickelt_R-10-05-05-DN
Hallo an alle, ich muss mich hier auch mal wieder melden. Ich finde grad wieder Zeit mich mit meinem Drucker zu beschäftigen. Die Lösung mit den Galvos finde ich schon sehr gut, aber ich finde die Lösung auch sehr teuer. Das übersteigt mein Budget für meine Projekte bei weitem. Auch wenn man die Galvos selber herstellen könnte muss man erst noch prüfen ob die Auflösung passt und wie dann die Ergebnisse aussehen. Aber auch die Spiegel die man braucht sind nicht grade die billigsten. Oben steht zwar, dass man den Fokus auch leicht hin bekommt. Das kann ich nicht einschätzen. Bei meinem Laser würde das aber wahrscheinlich nicht funktionieren. Aber da gibt es offensichtlich auch andere die da besser funktionieren. Trotzdem eine sehr schöne Arbeit! Zu meinem Drucker: Ich habe die letzten Tage wieder angefangen und habe das Microstepping für den Wagen und den Vorschub fertig. Die Auflösung der beiden Achsen habe ich an die originale Auflösung des Druckers angelehnt. Das heisst pro Zeile habe ich eine Auflösung von 720dpi und beim Vorschub 2880dpi. Das ist schon sehr schön. Aber wahrscheinlich setze ich die dann runter auf 600dpi auf beiden Achsen. Dann kann ich das leichter in der Software umsetzen. Ich möchte nun als nächstes mal Vierecke in Papier brennen und die Wiederholgenauigkeit testen. Ich kann dann ein paar Fotos hier posten. Wie geht es denn bei den anderen weiter? Gibt es da schon Neuigkeiten? Wie sieht es denn bei dir aus Dieter? Viele Grüße, Jens
Jens schrieb: > Wie sieht es denn bei dir aus Dieter? Im Moment - tote Hose :-) Mache eine Bastel-Pause und kümmere mich um andere Dinge. Habe jetzt nochmal 2 IC-HG bekommen und werde die in den nächsten 2-3 Monaten auf dem bis dahin hoffentlich fertigen Platinen-Design bzw. den gefertigten PCB's einsetzen. Parallel dazu werde ich auf dem ATxmega weitermachen und den Rest der Routinen portieren bzw. anpassen. Da ist noch einiges zu tun und vor allem zu testen. Galvos sind auch mir zu teuer für eine reine Spielerei - ggf. werde ich in ferner Zukunft mal mit den Selbstbau-Galvos basteln. Sieht wirklich schön aus, die Belichtung mit den Galvos ... habe aber auch immer noch leise Zweifel, was den Fokus angeht. Melde mich, wenn ich mal wieder ein STückchen vorangekommen bin. Gruß Dieter
Hallo Dieter, ich habe ein Foto von den Linien gemacht, die ich auf ein Stück PCB gelasert habe. Die Kästchen daneben sind Milimeterpapier. Dann kann man die Breite der Linien abschätzen. Wenn ich das Bild in Paint lade und mir das vergrößert anschaue komme ich auf eine Linienbreit zwischen 60µm und 100µm. Je nach dem wie genau so eine Messung ist. Aber für meine Zwecke müsste das reichen. Grüße, Jens
Hallo Jens, das sieht ja schon recht gut aus. Wenn mich meine Augen + Sehhilfe :-) nicht täuschen komme ich auf ca. 70 µm = ~ 3 mil (in Relation zum mm-Papier). Das dürfte für unsere (Hobby-) Zwecke mehr als ausreichen. Die Spielereien bis zu 1 mil Auflösung sind aus meiner Sicht eher "akademisch" - auch im Hinblick auf die Unterätzung bei 35 µm Kupferschichtdicke. Ggf. kannst Du den Fokus ja durch Drehen des Lasers (elliptischer Fokus) noch etwas verbessern - nötig ist das aus meiner Sicht aber nicht. Außerdem - je feiner die Bahnen, desto öfter musst Du langfahren und entsprechend länger dauert die Belichtung .. Was auffällt sind die ungleichmässigen Abstände zwischen den Bahnen. Hast Du Probleme mit dem Vortrieb? Ich kämpfe aktuell mit dem Digital-Poti. Ich hielt das (Fritz hat das auf seiner Laser-Treiber-Platine verbaut) für eine gute Idee und habe es übernommen. Bei ersten Mal hat auch alles prima funktioniert und ich konnte das Poti via SPI einstellen. Jetzt aber verweigert es den Dienst. Ärgerlich ist, dass ich SDO nicht beschaltet habe (warum auch immer) und kein Feedback vom Poti bekomme. Werde am nächsten Wochenende mal "sniffen" ... Bei meinen Versuchen war ich wieder mal - aus Frust - unvorsichtig und haben meine Ersatz-LD (mit der ich gespielt habe) in eine bessere Welt geschickt :-( Ja, die Dinger sind recht empfindlich und wollen mit Sorgfalt behandelt werden ... Mehr nach dem nächsten Wochenende - da werde ich wohl auch mit dem ATXmega weitermachen. LG Dieter
Hallo Dieter, aus meiner Sicht ist eine feinere Auflöaung nicht notwendig. Genau aus den Gründen die du auch schon genannt hast. Vor allem die Zeit ist ein Faktor. Durch Drehen habe ich den Fokus schon auf das Kleinste fokusiert. Eine Auflösung von einem mil halte ich für schwierig. Ich bezweifle auch, dass das professionell geht. Bei den üblichen Herstellern sind die Struckturbreiten auch auf 150µm begrenzt. Das schaffe ich zu Hause nie im Leben. Wenn da das Basismaterial nicht nagelneu ist, schafft man das mit der Beschichtung wahrscheinlich nicht. Wenn meine kleinsten Leiterbahenen 0,3mm werden (prozesssicher) bin ich mehr als zufrieden. Mit dem Vorschub hast du Recht. Da gibt es noch ein Problem. Ich muss meine Treiber doch noch einmal ändern. Die neuen Teile sind gerade eben gekommen und die kann ich am Wochenende testen. Da bin ich sehr zuversichtlich, dass die vernünftig laufen! Was hast du denn für ein Problem mit deinem LD-Treiber? Kann man dir da weiterhelfen? Wenn die Dioden immer kaputt gehen, das geht ja auch langsam ins Geld! Ich habe meinen Treiber nicht mit der originalen LD getestet. Ich habe einfach vier 1N4001 Dioden in Reihe geschaltet. Wenn dein Treiber damit geht, dann ist die LD auch sicher. Den Strom durch die normalen Dioden kannst du da ja messen und schauen ob dein Treiber richtig arbeitet. Nach dem Wochenende gibt es bei mir vielleicht wieder Neuigkeiten! Ich melde mich! Grüße, Jens
Jens schrieb: > Was hast du denn für ein Problem mit deinem LD-Treiber? Weniger mit dem Treiber - mehr mit dem Digital-Poti (meinte ich) .. und dem Layout, bzw. der Wärme-Entwicklung. zu 1.) Nicht das Digital-Poti ist hinüber - mein Spiel-ATmega32 hat wohl einige Beinchen (PINs) "verloren". Leider darunter auch SPI Clock. Das behindert die SPI-Kommunikation natürlich erheblich ... War mir bisher nicht aufgefallen, da ich auf dem betreffenden Board/Prozessor bisher andere (nicht SPI) Dinge ausprobiert habe. Jetzt funktioniert es und ich bin gerade dabei, einem Port-Expander die LCD-Ausgabe zu übertragen. zu 2.) Hier muss ich halt, wie geschrieben, ein neues Layout entwickeln. Der IC-HG wird sehr warm - und den möchte ich nicht auch noch hinrichten. Habe von IC-Haus einige Tipps bekommen, die ich umsetzen werde. Dauert aber noch. Vorerst habe ich mal die Spannung auf 9,5 V reduziert - das bringt schon einiges ... Werde auch Tantal-Kondensatoren nutzen und kleine EMV-Vorsichtsmaßnahmen treffen. Bin leider kein Elektroniker, versuche mich aber in die Materie einzuarbeiten. Werde diesbezüglich täglich schlauer :-) - ist ja auch schon mal etwas ... Jens schrieb: > Ich habe > einfach vier 1N4001 Dioden in Reihe geschaltet Ja, daran habe ich auch schon gedacht - aber ich möchte halt die optimale Einstellung der LD finden und das geht nicht ohne "richtige LD". War ja auch mein Fehler (Unachtsamkeit) - und der wurde promt bestraft. Spannend ist das alles immer noch - mal schauen, was noch so kommt. Von Fritz hört/sieht man leider nichts mehr und Klaus scheint auch verschollen zu sein. Schade ... Die Galvo-Geschichte geht mir auch nicht so recht "aus dem Kopf" - ich kann mir nach wie vor nicht vorstellen, dass die Fokussierung kein Problem ist. Irgendwann (:-)) werde ich mich mal intensiver darum kümmern. LG Dieter
Hallo Dieter, schön, dass es bei dir auch weiter geht. Ich sitze gerade über meinem Aufbau und versuche die Lichtschranken in Betrieb zu nehmen. Da hatte ich noch ein Problem. Man sollte auch alles so aufbauen wie im Schaltplan und nicht anders. Sonst sucht man unter Umständen recht lange nach Fehlern. Wenn du dein Layout soweit hast, dann kann ich dir gerne auch nochmal drüber schauen ob das klappt. Ich mache auf Arbeit auch nichts anderes. Nicht dass du noch mehr "Lehrgeld" zahlen musst. Das müssen wir auch nicht hier über das Forum machen. Du kannst mir das auch per mail schicken. Aber nur wenn du willst! Ich denke bei mir gibt es bald die nächsten Versuche. Meine neuen Treiber sind da und die Schrittmotoren laufen deutlich besser. Mal sehen ob das schon reicht. Ich halte dich auf dem Laufenden! Grüße, Jens
Hallo Dieter, Nein Nein, ich bin nicht verschollen,ist zwar ein bischen ruhiger geworden. Aber habe euch immer im Blick, bekomme bei jedem neuen Betrag eine Mail und dann schau ich erstmal nach. Meine Maschine läuft zwar nicht so das man sagen das ist es jetzt aber man kann damit arbeiten. Werde noch mal versuchen die Lasereinheit senkrecht zu stellen um den vorderen Spiegel wegzulassen. Im Labor ist das ja auch so, da gibt es nicht mal die anderen Korrekturlinsen. Gruß Klaus
Klaus B. schrieb: > Werde noch mal versuchen die Lasereinheit senkrecht zu stellen um den > vorderen Spiegel wegzulassen. Hallo Klaus, schön, dass Du noch "im Spiel" bist. Das mit dem senkrecht stellen hatte ich schon - es hat sich aber nicht bewährt. Die waagerechte Lösung ist deutlich stabiler und funktioniert prima. Der Spiegel selbst verursacht nach meinen Beobachtungen keine merkbare Verschlechterung des Fokus oder der Belichtungsstärke. Das Linsensystem (aus der Scanner-Einheit von Jens) ist aus meiner Sicht vollkommen ausreichend. Die Korrektur durch die "geschweifte" Linse ist so gut, dass ich keinerlei Korrektur-Faktoren in Tixivs Programm benötige. Ich werde in jedem Fall dabei bleiben. Ich glaube auch nicht, dass das Ergebnis ohne Linsen-System deutlich besser wird - eher erwarte ich eine Verschlechterung durch den "ungleichen Fokus". Wie geschrieben arbeite ich weiter an einer Lasertreiber-Variante sowie der Umsetzung des Programmes auf ATXmega in Verbindung mit DMA->SPI-Ausgabe. Damit hoffe ich die Auflösung deutlich zu verbessern. LG Dieter
Hallo Dieter, Ich hatte schon so einen Aufbau, mit Abstützung nach hinten. Nun es sind ca 60 mm weniger Weg und damals hatte ich die Linsen von heute noch nicht und die ließen sich einfach nicht richtig einstellen. Denke das die Energie mehr wird, da dann dichter dran bin.Was ich auch noch mal ändern will, ist die Schrittmotorsteuerung. Der ULN2003 wird warm und wenn man unter 100ms fährt verschluckt sich der Schrittmotor immer mal wieder. Hab aber noch keine Lösung ob man mit der Originalschaltung eine normale Schrittmotorsteuerung Takt/Richtung ansteuern kann? Gruß, Klaus
Hallo Klaus, aktuell setze ich den ein: http://www.ebay.de/itm/A4988-A4983-StepStick-Schrittmotor-Treiber-3D-Drucker-Treiber-Modul-Reprap-Prus-/181443457570 Ist sehr günstig und reicht für einen "normalen" Scanner-Stepper vollkommen aus. Kann auch 1/2, 1/4, 1/8 und 1/16 tel Schrittweite. Wird nur mässig warm - deutlich besser (und kleiner) wie meine "alte" 297/298-Kombination. Da gibst Du nur ein Schritt-Signal (neben direction, enable und natürlich Stromversorgung) drauf und er macht den Rest :-) Seit ich solch ein Teil http://www.ebay.de/itm/A4988-A4983-StepStick-Schrittmotor-Treiber-3D-Drucker-Treiber-Modul-Reprap-Prus-/181443457570 (allerdings mit G2-Glaslinse) einsetze kann ich auch mit Spiegel, Linsensystem und damit langem Weg gut fokussieren. Natürlich habe ich einen ordentlichen Kühlblock dran. Der lässt sich auch super mit der Original-Halterung (innen) des Scanner-Moduls verschrauben. Das Bohren in das Alu des Kühlblocks ist ein anderes Thema. 1 Bohrer im Loch abgebrochen - finito. Schön langsam Bohren und immer wieder herausziehen und Späne abmachen. Jetzt weiß ich auch, dass es spezielle Alu-Bohrer gibt ... Ich kann Dir gerne meine aktuelle Software (noch nicht XMega) und ein paar Fotos vom Aufbau (nicht Foren-tauglich :-)) zusenden. Ist entwickelt auf einen ATMega32 (das Original von Tixiv mit einigen Anpassungen - u.a. auch einer Schrittmotor-Rampe für die "Rückfahrten"). Aktuell überlege ich auch noch, meine Gabellichtschranken (für die Bewegungs-Begrenzungen) durch eine andere Lösung zu ersetzen. Mir scheinen die Rückmeldungen nicht präzise (wiederholbar) genug zu sein. Vielleicht nehme ich Mikroschalter - oder irgendetwas anderes, was präziser ist. @Jens: Wenn ich endlich mal das neue Layout für den Laser-Treiber soweit habe sende ich Dir das gerne zur Prüfung zu. Mit dem Digital-Poti in der Schaltung funzt jetzt wieder alles prima und ich werde dabei bleiben. Muss halt SDO mit beschalten, damit ich die gespeicherte Einstellung auch wieder auslesen kann. LG Dieter
Hallo, ich bin heute auch wieder ein Stückchen weiter gekommen. Ich habe erfolgreich Vierecke belichtet. Genauer gesagt sind die genau 1" zum Quadrat groß. Damit habe ich meine Auflösung vom Drucker und der gesamten Mechanik testen können. Ich habe die originale Auflösung von dem Drucker erreichen können. 720dpi in beide Richtungen. Darauf werde ich auch meine Software von der PC-Seite aus auch auslegen. Die nächsten Schritte sind natürlich vertikale Linien. Da kann man dann sehen ob die Modulation des Lasers genau genug ist. Wenn das soweit ist, gibt es die nächsten Bilder. Das wird aber ein paar Tage dauern, da ich nicht einfach nur den Laser Ein- und Ausschalten will, sondern ich will das gleich so programmieren, dass ich das auch weiter in dem Gerät verwenden kann. Also ich will die Abhandlung mit den Daten gleich richtig machen. Sonst mache ich die Arbeit ja doppelt. Das scheint mir nicht zielführend zu sein. Grüße und eine schönen Sonntagabend noch!
Hallo Dieter, Ist ja lustig, genau solche Stepper hatte ich mir schon besorgt. Nur die Ansteuerung über die Orignalsoftware für den Atmega funktioniert dann so wohl nicht. Wäre nicht schlecht mal Deine Software zu testen und ein paar Bilder auch. Meine E-Mailadresse hat Du wohl noch. Vieleicht hast Du noch den Link der Linsen. Gruß Klaus
:
Bearbeitet durch User
Klaus B. schrieb: > Vieleicht hast Du noch den Link der Linsen Gerne: http://www.ebay.com/itm/405-G-2-Glass-Lens-for-Aixiz-Laser-Module-405nm-445nm-/170709204904?pt=LH_DefaultDomain_0&hash=item27bf0fbfa8
Hallo an alle, ich habe ein paar Bilder mit dem Mikroskop gemacht. Und was soll ich sagen. Die Linien sehen furchtbar aus. Es scheint, dass ich da ein paar Fehler auf einmal habe. Erstens: Es scheint so als ob die Ausgabe nicht immer zum richtigen Zeitpunkt kommt. Das kann ich vielleicht in den Griff bekommen, wenn ich die Lichtschranken zum synchronisieren nehme. Zweitens: Die Linien, die eigentlich parallel sein sollen scheinen eine leichte Wellenbewegung zu machen. Da ist die Methode mit dem Laserspiegel wahrscheinlich deutlich besser. Dadurch, dass eine Zeile mehrmals belichtet wird und der Strahl sich auch schneller bewegt mittelt sich das mit Sicherheit weg. Drittens: Es scheint so als ob der Laser feiner fokusiert ist als ich mit der Auflösung des Druckers erreichen kann. Ich habe Lücken zwischen den Linien. Wenn ich aber genau 720 Schritte in beide Richtungen fahre, bekomme ich genau ein Viereck mit 1" Kantenlänge. Also von daher sollte es passen. Ich hänge euch die Fotos mit an zum begutachten. Die Ausgabe wie ich die Daten auf den Laser bringe scheint auch noch nicht so zu laufen wie ich das gerne hätte. Da ist wohl noch einiges an Arbeit zu erledigen! Grüße, Jens
Jens schrieb: > Die Linien sehen furchtbar aus. Hallo Jens, nö :-) aber nicht besonders gerade. Das scheint mir eher ein mechanisches Problem zu sein, was mit der "Fahrbewegung" bzw. dem Gegenspieler - der Trägheit der Masse - zu tun hat. Alternativ kann natürlich auch die Achse am Motor oder der Umlenkrolle einen minimalen "Schlag" haben. Ich bin kein Fachmann, daher auch nur Laienhafte Erklärungsversuche. Bei Bild 006 ist wohl gerade ein Bus vorbei gefahren (ich lebe in eine Altbau-Wohnung, da vibriert der Fußboden im Esszimmer bei jedem vorbeifahrenden Bus ...). Dieses "geeiere" kenne ich aus der Zeit (vor vielen, vielen Jahren ...), wo ich versucht habe einen Plotter mit Gewindestangen (darf man hier gar nicht schreiben - aber mein Ruf kann nicht ruiniert werden :-) ) zu "basteln". Da hatte ich ähnliche Effekte, weil - die Gewindestangen nicht exakt gerade (und zu"biegsam") waren - zu viel Spiel (sonst ging bei den schwachen Schrittmotoren gar nichts) eingestellt war - die Halterungen und der gesamte Aufbau mechanisch viel zu instabil waren Das wenige, was zwischen Deinen "gebrannten" Linien noch stehen bleibt, wird mit hoher Wahrscheinlichkeit "wegentwickelt" (schon mal ausprobiert?). Das Problem mit den unterschiedlichen "Start-Bedingungen" habe ich, wie geschrieben, auch. Meine "Endschalter" sind Gabellichtschranken, die leider die gewünschte Präzision nicht erreichen. Ich habe mal nach "präzisen" Endschaltern/Referenzschaltern/... gesucht. Das Geld möchte ich nicht ausgeben ... . Werde mir also eine andere, im schlimmsten Fall "brutal" mechanische (fixer Anschlag aus Metall) Lösung ausdenken. LG Dieter
Hallo Dieter, die unterschiedlichen Startbedingungen können auch noch ein Fehler in der Software sein. Das halte ich für wahrscheinlicher. Da mache ich mir im Moment eigentlich noch keine Gedanken, dass ich das nicht in den Griff bekomme. Die krummen Linien denke ich kommen von meiner Schrittmotorsteuerung. Einen vorbeifahrenden Bus würde ich ausschließen, da ich im 5.Stock wohne in einem massiven Gebäude. Das habe ich noch nicht bemerkt. Was aber ist, ist dass man die Motoren noch ein bisschen rasten hört. Daraus schließe ich, dass ich noch ein zu hohes Rastmoment auf den Motoren habe. Und das wird man auch direkt an den Linien sehen. Ich weiss nur noch nicht, wie ich das Problem in den Griff bekommen soll. Ich mache mein Microstepping selber und da bin ich wohl an der Grenze des Machbaren mit meinem Aufbau. Ich werde nochmal versuchen die Ströme durch die Motoren zu messen ob das auch wirklich ein Sinus ist und dann mal sehen. Als Alternative habe ich mir auch noch fertige Module besorgt, die bei den 3D Druckern verwendet werden. Die machen das schon in Hardware bis 1/32 Schritt. Da könnte ich auch wieder mit Takt und Richtung fahren. Vielleicht lasse ich meinen eigenen Aufbau und verwende einfach fertige Treiber. Das kostet mich sonst alles so viel Zeit. Und zu tun ist da noch massig. Ich will mich nicht immer mit dem gleichen Problemen rumärgern. Aber ich muss sehen was die Messungen ergeben. Wenn ich auch alles wieder auf Takt und Richtung umbaue mit fertigen Treibern, dann hätte ich meine SPI wieder frei zur Verfügung. Dann könnte ich die auch nutzen um die Daten zum Laser zu bringen. Ich habe das vor einiger Zeit schon einmal angerissen wie ich das machen will. Das reizt mich schon das auch mal umzusetzen. Wie geht es bei dir weiter? Grüße, Jens
Jens schrieb: > Das halte ich für wahrscheinlicher Hallo Jens, dem wage ich zu widersprechen. Auch bei vermeintlich "harten" Anschlägen ist noch einiges an Toleranz mit drin. Ist aber auch egal - da müssen wir beide wohl einen Weg finden ... Jens schrieb: > Ich mache mein Microstepping selber Ja, kann man machen - ist die harte Tour :-) Ich gehe da den einfacheren Weg und nutze das (im Beitrag an Klaus) berichtete günstige Modul. Für kleine Kräfte locker ausreichend geht das bis 1/16 tel Schrittweite. Wobei ich, ehrlich gesagt, Skrupel habe unter 1/2 oder max. 1/4 Schrittweite zu gehen. Dann lieber ein entsprechendes Getriebe genutzt und gut ist. Diese Mikroschritte werden - falls ich das richtig verstehe - nur durch ein entsprechend großes Haltemoment in "unnatürlichen" Zwischenschritten des Schrittmotors gehalten - mit entsprechend großem Aufwand / Strom. Ob das immer optimal ist, kann ich nicht beurteilen. Ein Getriebe löst das ohne großen Aufwand / Strom und funktioniert wunderbar ... Meine nächsten Schritte sind (immer noch) - Laser-Dioden-Treiber optimieren - Umsetzung auf ATXMega mit DMA to SPI-Transfer Der Transfer funktioniert und ich komme locker auf die gewünschte Auflösung. Ich erhoffe mir davon nicht die Super-1 mil- Auflösung sondern deutlich schärfere Kanten und eine merklich bessere Auflösung insgesamt im 5 mil - Bereich. Unter 5 mil - bzw. minimal etwa 3 mil ist für mich alles sowieso nur eher hypothetisch und nicht unbedingt sinnvoll. Zum Spielen und Grenzen ausreizen ja - aber nicht für die praktische (und reproduzierbare) Anwendung. Für mich ist das sowieso alles nur ein Spiel/Hobby und entsprechend sehe ich das auch. Die vielen (Semi-) Profis (nicht wir) hier haben offensichtlich viel Zeit und sind wohl - wie auch immer - außerhalb einer geregelten Erwerbstätigkeit angesiedelt. Hier sind wir aber scheinbar relativ sicher vor den Profis ... :-) LG Dieter
Hallo Dieter, ich bin meinem Problem weiter auf der Spur. Ich habe grad noch ein paar Messungen gemacht und hab dann noch ein bisschen im Datenblatt gelesen. Das Problem was ich habe ist, dass der Current Controller im Motortreiber beim fallenden Verlauf der Motorstroms nicht mehr regeln kann. Das ist eine Eigenheit der Regelung mit minimaler ON-Zeit. Das ist im Datenblatt zum L6208(das ist der mit Takt und Richtung) sehr schön beschrieben. Also Lösung haben die einen Fast Decay Mode den man verwenden soll. Da wird der Freilaufpfad für den Motorstrom anders geleitet. Sehr schön, genau das brauche ich. Nur der L6207 (den ich grade verwende) hat diesen Mode nicht. Bei der Strommessung sieht es so aus, als ob ich den Motorstrom nicht zu Null regeln kann im Sinusverlauf und irgendwann schalte ich die Phasen für die Drehrichtung weiter. Dann springt der Strom in die entgegengesetzte Richtung mit dem gleichen Betrag. Und genau das sind die Vibrationen, die ich noch in meinem Antrieb habe. Das der L6207 den Mode nicht hat den ich brauche und der L6208 Schritte beim Verfahren verliert sind beide ICs nicht geeignet für die Anwendung die ich habe. Da damit auch ein Microstepping nicht so ohne weiteres möglich ist, ist mir auch klar, warum diese Bausteine auch nicht so weit verbreitet sind. Ich werde jetzt auf Lösungen von TI wechseln. Die habe Bausteine, die das Microstepping direkt schon machen. Da brauche ich auch keine DA Wandler mehr und so weiter. Das hat für den gesamten Aufbau auch noch andere Vorteile. Zum Beispiel habe ich dann meine SPI wieder frei. Die Treiber sollten kommende Woche kommen. Dann gibt es wieder Neuigkeiten von mir, wenn ich die in Betrieb habe. Grüße, Jens
Hallo Jens, das war dann wohl ein Griff ins Klo :-( Ja, für den 6208 gibts eine hübsche AN für Microstepping. Egal, bin gespannt, wie es bei Dir weitergeht. Bin etwas schlauer geworden, was Microstepping angeht (o.k., ist smoother ...) - und frage mich immer noch, warum Du unbedingt Microstepping einsetzen willst. Du zielst auf eine Auflösung von 720 dpi, d.h. ca. all 35 µm willst Du einen Laserpunkt setzen (oder auch nicht). Wie koordinierst Du das mit Deiner "smoothen" Bewegung? In einem ersten gedanklichen Ansatz würde ich einfach den Laser jeweils zwischen den Stepper-Schritt-Signalen (mit 720 dpi Abstand) an- oder ausschalten. Also nach jedem Stepper-Schritt-Signal ein-/ausschalten und vor dem nächsten Stepper-Schritt-Signal ausschalten. Dann wäre alles fein synchronisiert. Da die Geschichte sowieso nur mit einer gleichförmigen Bewegung / Tempo funktioniert sollte das wohl funktionieren. Mir ist klar, dass der Schrittmotor Vibrationen verursacht - macht der aber auch beim normalen Drucken. Wenn die Mechanik ausreichend stabil ist sollte es trotzdem funktionieren. Ich habe keine Ahnung, ob die Hersteller die Drucker im Microstep-Betrieb laufen lassen ... - aber dann müssten die sich ja auch Gedanken um die Synchronisation machen - oder? Übrigens ist mir noch eine alte Studie (so 2009/2010) "in die Hände gefallen" - habe ich in meiner "Literatur-Sammlung" zum LD-Projekt, in welcher die Belichtung mit UV-Laserdiode und Galvos untersucht wurde. Die kamen auch zu der Erkenntnis, dass die Fokussierung irgendwie nachgeführt werden muss. 2 Ansätze wurden angesprochen: Linse nachführen oder Tisch nachführen (anheben). Ich habe Klaus mal meinen akt. SW-Stand gesandt - aber nichts mehr gehört. Mit den Bildern warte ich nochmal ab. Meine Polygonspiegel-Steuerung sieht derart provisorisch aus und grätzt mich immer wieder an, da sie im Weg ist - das ich wohl eine SMD-Variante basteln werde, die ich im "Scanner"-Gehäuse mit verstauen kann. Mache ich als kleine Übung, bevor ich an die neue Lasertreiber-Platine gehe (was ich erfolgreich vor mir her schiebe :-)). LG Dieter LG Dieter
Hallo Dieter, doch die Drucker laufen mit Microstepping. Ich habe auf den Schaltungen aus dem Drucker mal geschaut, was die für Chips verbaut haben. Und da war auch ein Schrittmotortreiber von Allegro mit drauf der im Microstepping läuft. Der Trick an der Sache ist, das die Auflösung genauso groß ist wie die Anzahl der Schritte. Dann habe ich pro Schritt genau ein Pixel. Und genau so will ich die Daten auch synchronisieren. Bei meinem Motoren ist nur das Problem, dass ich keine gleichmäßige Bewegung bekomme und der Motor springt. Und diese Vibrationen werden auf den Laser übertragen. Wenn der Motor im Microstepping läuft macht er diese Vibrationen eben nicht mehr. Und die ganze Geschichte wird auch noch wesentlich leiser dazu. Mein nächster Versuch kommt, sobald die neuen Treiber da sind. Da muss ich nur mein Motorboard komplett umbauen. Das wird einige Tage in Anspruch nehmen. Aber ich hoffe, dass ich da kommende Woche mit fertig bin. Grüße, Jens
Hallo Dieter, Danke erst mal ,ist alles angekommen, muss mich erst mal durchfinden. Kannst Du mir bitte noch Deinen aktuellen Schaltplan schicken. Übrigens hab ich das auch wenn zu schnell gefahren wird verschluckt sich der Stepper, hoffe mit den neuen Modulen, daß das dann weg ist. Gruß Klaus
Klaus B. schrieb: > Kannst Du mir bitte noch Deinen aktuellen Schaltplan schicken. Hallo Klaus, räusper ... klar, wenn ich den erstellt habe ... Im Ernst - für den Exposer selbst ist es bisher der Original-Schaltplan - nur die Pins habe ich, meinen Bedürfnissen entsprechend, teilweise getauscht. Ferner habe ich C13 entfernt, da der aus meiner Sicht die Flanken des Laser-Impulses "negativ beeinflusst" hat. Vor die eigentliche Stromversorgung des Lasers habe ich noch 2 Sicherheitsstufen (manisch Laser-Dioden-Tod geschädigt) mit Strombegrenzung gepackt. Die stelle ich aber hier nicht vor (1 * LD-Driver von der Stange + 1 Eigenkreation mit MC34063). Den LD-Treiber habe ich ja (mittlerweile arbeite ich an V2) auf den IC-HG von IC-Haus umgestellt - work in process ... Der "Polygonmotor-Controller" ist im Laufe der Zeit "gewachsen". Den pinne ich aber spätestens am Wochenende mal von Hand oder in Eagle ab und sende Dir den auch zu - natürlich mit dem passenden Mini-Programm für den Attiny2313 (hatte ich vergessen, beizupacken). Klaus B. schrieb: > Übrigens hab ich das auch wenn zu schnell gefahren wird verschluckt sich > der Stepper Das Problem wirst Du auch mit dem Modul haben - WENN Du die Strombegrenzung nicht sehr fein justiert hast. Ich habe ein Weilchen damit experimentiert, bis ich die richtige Stellung für meinen Motor gefunden habe (immer schön mit Rampe vor und zurück rennen lassen ...). Jens schrieb: > Und > genau so will ich die Daten auch synchronisieren. Hallo Jens, auf das Verfahren bin ich nach wie vor gespannt. Ich habe immer noch keine Vorstellung, wie Du die Belichtung mit den Mikroschritten synchronisieren willst. Schaun mer mal ... LG Dieter
Hallo Dieter,
Dieter Frohnapfel schrieb:
> Der "Polygonmotor-Controller" ist im Laufe der Zeit "gewachsen"
Hast Du denn alles noch mal umgebaut?
Seit der Umstellung auf Quarzfrequenz von Dir bin sehr zufrieden, keine
Probleme mehr mit Drehzahl.
Gruß
Klaus
Mhm, ich finde das ganze ja schon sehr spannend. Wurde schon versucht, eine Achse durch einen beweglichen Spiegel zu ersetzen? Dann bräuchte man die "ungenaue" Mechanik nur noch für den Vorschub der Leiterplatte.
Marek Walther schrieb: > Wurde schon versucht, eine Achse durch einen beweglichen Spiegel zu > ersetzen? Du hast den Thread schon mal ansatzweise gelesen? Klaus B. schrieb: > Hast Du denn alles noch mal umgebaut? Hallo Klaus, ich habe ein wenig erweitert - und keine Ahnung, ob das angekommen ist. Wenn ich mir das, was ich da fabriziert habe so anschaue, frage ich mich warum es funktioniert ... Also bitte etwas Geduld ... LG Dieter
Hallo Dieter,
Dieter Frohnapfel schrieb:
> ich habe ein wenig erweitert
Kannst Du das ein wenig mehr erläutern. Und Was Du erreichen wolltest
and was ist.
Gruß
Klaus
Klaus B. schrieb: > Kannst Du das ein wenig mehr erläutern. Und Was Du erreichen wolltest > and was ist Hallo Klaus, dont panic :-) Ich habe keine großartigen Umbauten gemacht - verstand nur meine Schaltung nicht mehr %-| und wusste auch nicht, ob meine aktuelle Version schon bekannt ist. Alles wieder gut, ist nur total schrottig auf Lochraster "gewachsen". Umso wichtiger ist ein Re-Design auf vernünftiger Basis ... Ich habe die bei mir aktuell laufende Version übrigens auch schon hier im Thread eingestellt. Kannst Dich also wieder hinlegen :-) Aktuell spiele ich aber noch ein wenig mit der Stromversorgung für die Laser-Diode. Habe einen Stepdown-Konverter von 12V auf 6,5 V (reicht für meine LD aus) gebaut und hoffe auf geringere Erwärmung des IC-HG. Jetzt zweifle ich ein wenig, ob ich mit dem Ripple (~ 100 mV) leben möchte ... lg Dieter
Hallo Jens, ich habe jetzt V2 meines Schaltplans für den neuen Laser-/Polygonmotortreiber aus meiner Sicht fertig. Kannst ja bitte mal drüberschauen ... Ist stark angelehnt an die Version von Fritz und ich bleibe auch beim Digital-Potentiometer - da bin ich offen für ggf. eine automatische Leistungsanpassung. Das IC ohne Namen ist das IC-HG - der ATTINY15 wird ein ATTINY85 sein, den ich hier habe. Ggf. werfe ich die doppelten Elkos noch raus - hatte ich aus ESR-Gesichtspunkten (es waren "normale" Elkos) vorgesehen. Da ich jetzt mit Tantal-Elkos arbeiten werde kann ich die Duplikate wohl weglassen. Für meine Laserdiode langen 6,5 V - und lt. IC-Haus ist es besser, mit möglichst nur der benötigten Spannung zu arbeiten, um die Erwärmung auf einem Minimum zu halten. Jetzt kommt der spannende und richtig schwierige (für mich) Teil - nämlich das Ganze vernünftig auf ein PCB zu bringen. LG Dieter
Hallo Dieter, ich habe mal über den Schaltplan drüber geschaut. Im Großen und Ganzen sieht es für mich ganz gut aus. Um das aber komplett beurteilen zu können fehlen die anderen Teile des Gesamtsystems. Ich kann dir also nicht sagen ob deine Steckerbelegungen passen. Da musst du selber nochmal drüber schauen. Was mir auffällt ist, dass du mehrere Elkos parallel schaltest. Dazu muss man wissen, dass die nur funktionieren, wenn man das auch im Layout so umsetzen kann, dass alle den gleichen Strom sehen. Also auch alle gleich wirken. Das kann man erst beurteilen wenn das Layout fertig ist. Wenn das Probleme macht, ist es einfacher nur einen Kondensator zu nehmen und dafür einen guten (teuren). Im Layout solltest du vor allem beim Treiber auf kurze Leitungen achten. Dazu musst du auch den Rückweg auf Masse mit betrachten. Einfach an Masse anbinden bringt nichts, wenn die Fläche recht zerschnitten ist. Dann werden die Rückwege auch länger und bilden Schleifen. Gibt es für das IC Haus IC eine Application Note? Zur Beschaltung kann ich nichts sonst sagen. Da in dem Teil ein Treiber für die Diode drin ist, kann ich mir gut vorstellen, dass die Kondensatoren außen rum auf die Regelcharakteristik Einfluss nehmen. Vielleicht gibt es da Grenzwerte. Viel hilft viel stimmt da nicht immer. Die Versorgung von deiner Referenz stimmt nicht (TS431). Das ist im Prinzip eine Zehnerdiode. Da fehlt der Vorwiderstand (1k-10k). So geht die kaputt. Und die Referenzspannung solltest du mit einem Spannungsfolger entkoppeln. So geht dir die Spannung an der Diode nicht in die Knie. Das könnte auch die Problem erklären, die du mit der Schaltung hattest. Wenn du noch Fragen hast, gerne! Grüße, Jens
Hallo Jens, herzlichen Dank für die Hinweise. Die Parallelschaltung der (Tantal-) Elkos habe ich jetzt weggelassen (wie bereits angedeutet), da die Tantal-Elkos aus ESR-Gesichtspunkten ausreichend sind. Auch habe ich die parallelen Kondensatoren in der Versorgung des IC-HG weggelassen. Nur die parallelen Keramik-Kondensatoren in der Versorgung der Laserdiode behalte ich aus ESR-Gesichtspunkten bei. Bei der Beschaltung des IC-HG habe ich mich an das Datasheet und die Hinweise von IC-Haus gehalten - sollte also passen. Die Steckerbelegungen sind schon O.K. Da ich sowieso alles neu mache passe ich alle anderen Komponenten entsprechend an :-) Bei der Referenz hast Du mich voll erwischt ... . Habe das Datenblatt nicht (!) gelesen und ging einfach von "versorge ich - und raus kommt das Gewünschte" aus. Voll daneben!! Beim "Vorgänger" REF102CP ging das ja noch ... (erinnert mich an die typische Entwickler-Ausrede: "Gestern gings noch ..." :-) ). Habe mich jetzt in das Datenblatt vertieft und die Schaltung (auch mit dem korrekten Symbol etc.) angepasst. Den 100nF Kondensator nach der Stabilisierung habe ich, aufgrund meiner Datenblatt-Studie, entfernt. Die Belastung wird nicht so groß werden, dass ich etwas entkoppeln muss (sollte eigentlich der TS431 schon - in Maßen - machen). Habe jetzt mal auf 33 mA begrenzt - mehr sollte eigentlich (eher deutlich weniger) nicht benötigt werden. Sieht jetzt alles hübsch aufgeräumt aus ... Nochmals herzlichen Dank - in der nächsten Zeit werde ich das Layout angehen ... LG Dieter
Hallo Dieter, immer wieder gerne! Zur Referenzquelle. Das ist kein IC. Der Strom der im Datenblatt angegeben ist, ist der Strom, den die Diode tragen kann. Wenn du den auf 33mA begrenzt bist du schon an der Obergrenze. Da wird sich die Diode schon erwärmen und deine Spannung kann weglaufen. Ich würde an deiner Stelle den OP zur Entkopplung nicht einsparen. Wenn du einen MCP6004 verwendest, kannst du den auch mit den normalen 5V versorgen. Der ist Rail-to-Rail und den gibt es bei Reichelt recht günstig. Den kleinen Offset kannst du einstellen, wenn du der Diode noch einen Spindeltrimmer spendierst. Auch Alterungseffekte lassen sich so kompensieren. Du kannst dann im Layout noch weitere Widerstände (0 Ohm) in die Versorgungsleitungen schalten. Dann kannst du die betreffenden Teile durch nicht bestückten Widerstand wegschalten. Das ist bei der Inbetriebnahme sehr schön. Alle Teile lassen sich dann einzeln in Betrieb nehmen. Grüße, Jens
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.