Ätzmaschine 2
Darauf hatte ich schon lange Lust, die Ätzmaschine1 neu aufzubauen und mit einem AVR anzusteuern. Durch Verwendung
des Mega8, ergeben sich natürlich ganz neue Möglichkeiten gegenüber der alten Version.
Technische Daten:
- MC Gesteuert (Mega8)
- Text LCD 16x2
- Alle Einstellungen über Drehencoder
- Motor (RB35) PWM gesteuert
- Anzeige UPM
- Erinnerungsbeeper
- Heizung einstellbar von 20..64 Grad
- Anzeige der Ätzzeit
Videoclip Testlauf:
Die Mechanik:
Hier ein bescheidener Versuch mit einer technischen Zeichnung die einfache Mechanik grafisch darzustellen.
Die Schwenkplatte habe ich vorn mit 2 Scharnieren (ca.45x20mm) befestigt.
Klick zum Vergrößern
Den Aluwinkel, der den Motor in Position hält, habe ich
anhand des Datenblatt des Motors auf einer 1,5mm Aluplatte angerissen und gebohrt. Danach in einen
Schraubstock eingespannt, lässt sich das Alu recht gut zu einem 90 Grad-Winkel biegen. Auf der Unterseite des
Winkels werden noch 4 Löcher gebohrt um den Motorhalter mit der Bodenplatte der Ätzmaschine zu
verschrauben.
Der von mir verwendete Motor ist der gut erhältliche RB35 mit der Übersetzung 1:100.
Der RB35 (1:100) dreht knapp 60 UPM wenn er mit den vorgeschriebenen 12 V betrieben wird.
Also etwa 1x wippen pro Sekunde. Dies lässt sich durch die PWM-Ansteuerung des Mega8 Stufenlos bis zum völligen Stillstand herunterregeln. Im Gegensatz zur Zeichnung oben, sitzt die Motorachse des RB35 nicht mittig. Um zu gewährleisten, das genügend Platz nach unten ist, habe ich den Motor so montiert, das die Achse am höchsten Punkt aus dem Winkel ragt. Da die Motorachse einen Durchmesser von 6mm hat, passt ein üblicher Drehknopf für Potis (auch 6mm natürlich) aus der Bastelkiste wunderbar. Wie ich aus einem Lautstärke Regler aus einer alten HIFI Anlage den Exzenter bastelte sieht man auf den beiden Fotos rechts. Auch gut zu erkennen sind 2 "Probebohrungen" mit denen ich (mit dem Hub) experimentiert habe. Je grösser der Abstand zwischen Mittelpunkt und Laufrolle ist (bei mir ca. 18mm), desto stärker sind natürlich auch die Schwenkbewegungen.
Die Kunststoffrolle (aus der
Bastelkiste) auf der später die Schwenkplatte läuft, sollte sich auf der M3 Schraube frei drehen lassen. Aus
diesem Grund habe ich eine Selbstsichernde M3 Mutter verwendet. Natürlich kann man auch zwei M3 Muttern
kontern (gegeneinander festschrauben), die Hauptsache die Rolle dreht frei und die Mutter löst sich nicht
durch die Drehbewegung. Etwas Schmierung (Fett, Vaseline) zwischen
Schraube und Rolle schadet sicher nicht.
Das aufgeschraubte Magnet gibt die
nötigen Impulse an den Hallgeber (TLE4905L, Reichelt) um so die UPM zu
berechnen. Damit das Magnet einigermaßen eben aufgeschraubt werden kann, muss mit einer Feile die
entsprechende Fläche vom Drehknopf abgeschliffen werden. Da mein Drehknopf innen aus Kunststoff besteht,
ging das bei mir recht schnell. Den Hallgeber habe ich auf ein Stück Lochraster gelötet und an einem
Metallwinkel befestigt. Diese Metallwinkel gibt es im Baumarkt im 12er Pack (mit einem Kabelbinder verzurrt,
ca. 2 Euro glaub) . Insgesamt habe ich bei der Ätzmaschine 7 Stück dieser Winkel (Eine Seite ca. 25x14x1mm)
verbaut.
Die Maße der Ätzmaschine
Ansicht von oben /alle Maße in cm / Klick zum vergrößern
Die Höhe der Ätzmaschine beträgt bei mir 8,5 cm. Auf der Zeichnung oben fehlt noch die Abdeckung für die hintere Kammer. Die Maße dafür sind 17,5x8,5 cm. Ich habe mir im Baumarkt einen Plexiglasrest (5mm stark) besorgt den ich mit einer Stichsäge (montiert auf Stichsägetisch mit Anschlag) zugeschnitten habe. Die hässlichen Schnittkanten habe ich danach mit mittelgroben (P100) bis extrafeinem (P800, naß) Schleifpapier bearbeitet. Ich wollte die Kannten eigentlich noch polieren, habe es dann aber doch so gelassen. Eigentlich wollte ich mir das alles gar nicht antun, jedoch weigerte sich der Mann beim Zuschnitt, da ich das Mindestmaß von 10x10 cm bei den meisten Teilen unterschritten hatte. Das Plexiglas lässt sich sehr stabil mit dem "Hartkunststoff" Kleber von UHU verkleben, jedoch muss man sehr aufpassen dass man nicht zu viel Kleber verwendet, da sonst beim zusammenpressen der Teile zuviel Überschuss herausquellt und auf das Plexi kleckert. Verklebt habe ich nur das Grundgehäuse der Ätzmaschine und den Laufsteg (8,5 x 1,2 cm) der Schwenkplatte. Die Zwischenwand und die Abdeckung für die Elektronik habe ich mit den schon oben erwähnten Winkeln und M4 Senkkopfschrauben verschraubt.
Wenn ich noch einmal anfangen müsste, würde ich die linke Kammer in die der Motor und die Elektronik eingebaut wird, mindestens 2cm grösser machen, da es hier ziemlich eng zugeht.
Die Heizung
Die Heizplatte (180x110x1,5 mm) besteht aus Aluminium und wird mit Abstandsrollen und M3 Senkkopfschrauben auf der Schwenkplatte befestigt. Da sich bei mir die Heizfolien für KFZ Spiegel (Conrad) schon bei der Ätzmaschine 1 bewährt haben, habe ich natürlich wieder solche verwendet. Dieses mal allerdings die grösseren mit 15 Watt. Da die Folien nicht nebeneinander auf die Heizplatte passen , habe ich diese in der mitte überlappt. Ob das auf dauer gut geht wird sich noch herausstellen . Da ich zur Stromversorgung ein umgebautes Computernetzteil benutze, habe ich die beiden Heizfolien parallel geschaltet. Selbstverständlich kann man die Heizung auch mit Wechselstrom betreiben. Ist ein 24 (max.27) Volt Trafo in der Bastelkiste, kann man die Heizfolien auch in Reihe schalten. Da die Folien ja für KFZ-Spiegel konzipiert sind, darf die Spannung bis 13,6 Volt betragen. Rechts oben sieht man den Temperatursensor LM75. Diesen braucht man nicht zu kalibrieren, er kann einfach über I2C Bus digital ausgelesen werden. Ich habe den 8 Pin SMD Chip auf ein Stückchen Lochraster gelötet und mit der Chipoberseite auf die Heizplatte geschraubt. Zwischen Chip und Heizplatte ist eine Glimmerscheibe, wie sie bei der Isolierten Montage von TO3 Gehäuse benötigt wird. Falls zur Hand, kann vor der Montage, noch etwas Wärmeleitpaste auf die Glimmerscheibe aufgetragen werden.
Für den Aufbau genügt ein schmaler Streifen Lochraster (am besten aus EP) mit 2 Lochreihen von denen 2 Pads mit einem Cutter getrennt werden müssen. Pin 5-8 werden mit +5 Volt verbunden. An Pin 5-7 liegen die Anschlüsse A0..A2, damit ist auch gleich die I2C-Adresse des LM75 festgelegt($9E). Der 100 nF Kondensator ist ein 0805 SMD Typ und sollte unbedingt mit auf die Lochrasterplatine. Pin 4 kommt an Masse, Pin 1 und 2 sind die Daten und Clock Leitungen für den I2C-Bus. Die jeweiligen Pullups von 4,7k befinden sich auf der Mega8 - Platine. Pin3 ist ein Schaltausgang des LM75 und wird hier nicht benötigt. Am besten verbindet man die Sensorplatine mit etwas Flachbandleitung mit der Mega8-Platine. An den 4 freien Lötpads der Lochrasterplatine liegen folgende Signale. Oben links (am 100nF) +5 Volt, oben rechts GND, unten links SDA und unten rechts SCK.
Eigentlich hatte ich vor einen Isolierten Sensor zu Benutzen der sich direkt während des ätzen in der Schale befindet, jedoch hing dieser durch den Schaukelvorgang immer die halbe Zeit "in der Luft", sodass ich mich für diese Lösung entschied.
Will man schon angesetzte Ätzflüssigkeit wiederverwenden, wird diese (je nach Menge) so nach ca. 10-20 Minuten auf ca. 45 Grad erhitzt. Soll es schneller (und heisser) gehen gibt es noch folgende Möglichkeiten die Heizung zu tunen.
1.)Spannung erhöhen
Wie schon weiter oben erwähnt, darf bei Parallelschaltung der Folien die Spannung 13,6, und bei Reihenschaltung das doppelte also 27,2 Volt betragen. Da die Temperatur an der Heizplatte gemessen wird und bei überschreiten des eingestellten Wert die Heizung abgeschaltet wird, könnte man sogar das Risiko eingehen noch 1-2 Volt höher zu gehen. Ich selbst benutze ein umgebautes PC-Netzteil welches ich nach dieser Anleitung auf knapp 13V eingestellt habe.
2.)Abdecken der Ätzschale
Wohl die einfachste Lösung. Einfach einen Plexiglasdeckel passend zu Ätzschale fertigen.
3.)Styropor unter die Heizplatte
Damit keine Wertvolle Wärme nach unten verloren geht, kann man (am besten Feinporiges und Hitzebeständiges) Styropor auf die Maße der Heizplatte zuschneiden und darunter montieren. Ich hatte bei meinen Versuchen nur normales zur Hand, welches auch funktioniert.
Mit den oben genannten Möglichkeiten, konnte ich bei einem Test ca. 0.2 Liter Wasser in weniger als 13 Minuten auf 54 Grad erhitzen.
Schaltung
Links der AT Mega8. Da ja ein Timer während dem ätzen mitläuft der die Ätzzeit stoppt,
wird der Mega8 mit einem 8 MHz Quarz betrieben. Wer auf die (Quarz)genaue Zeit verzichten kann braucht diesen
nicht zu bestücken und stellt einfach den internen RC-Generator (8MHz) bei den Fusebits ein.
An J3 wird der Hallgeber
angeschlossen. Bei der Montage kann während der Motor läuft, LED2 beobachtet werden, welche die Peaks anzeigt
die bei jeder Umdrehung ankommen wenn der Magnet (nahe genug) am Hallgeber vorbei
läuft.
Die Relaiskontakte K1-1 und K1-2 unterbrechen den Strom für die Heizfolien, wenn die Temperatur den Sollwert erreicht haben.
Der Zustand wird durch LED1 angezeigt. Diese leuchtet, wenn das Relais eingeschaltet ist.
PB3 (OC2) Steuert über den N-Channel FET
IRLZ34N den Motor an. An JP2 liegt der I2C-Bus an dem nur der LM75 angeschlossen ist.
BZ1 ist der Summer für den Erinnerungsbeep. Leider ist der von mir eingebaute BJM05 etwas zu leise. Das bemerkte ich
leider erst, als die Schaltung im geschlossenem Gehäuse war. Hier werde ich bei Gelegenheit noch etwas
nachbessern.
An J2-1..5 wird der Drehgeber angeschlossen.
Leider habe ich keine genaue Bezeichnung für meinen Drehgeber. Ich habe allerdings mehrere dieser Encoder
(Drehencoder, Drehimpulsgeber) angeschlossen und die funktionierten alle problemlos. Leider hatte ich nur
einen mit Gewinde da, der sich mit einer Mutter an der Frontplatte anschrauben lässt und ausgerechnet dieser
ist nicht Beschriftet.
An J2-1 und J2-2 wird der Eigentliche Encoder angeschlossen, meist am 3poligen Anschluss des Encoders, die
beiden äusseren Pins. Sollte der Drehgeber falsch herum drehen, müssen J2-1 und J2-2 vertauscht werden. Der
mittlere Pin, kommt an GND (J2-4 oder J2-5). J2-3 ist der Drucktaster der auch gegen GND geschaltet wird.
Reichelt hat z.B. diesen im Programm, welcher gehen müsste
(ohne Gewähr). Auch bei Pollin und Conrad wird man fündig.
PortC (0..5) steuert im 4-Bit Modus das 2 stellige LCD-Modul an. Dieses wird über den 10poligen SV1- Stecker mit der Platine verbunden. Da ich die Schaltung auf dem STK500 entwickelt habe , wollte ich den Anschluss nicht mehr ändern.
Ein Verbindungskabel wird nach folgender Tabelle hergestellt.
Bezeichnung |
SV1-Pin |
|
LCD |
Pin(s) |
PC0 | 1 | - | DB4 | 11 |
PC1 | 2 | - | DB5 | 12 |
PC2 | 3 | - | DB6 | 13 |
PC3 | 4 | - | DB7 | 14 |
PC4 | 5 | - | RS | 4 |
PC5 | 6 | - | E | 6 |
GND | 9 |
- - - |
VSS R/W BLK |
1 5 16 |
VCC /+5V | 10 | - | VDD | 2 |
Ein 10k Poti zur Kontrastreglung wird wie üblich zwischen Pin1 und 2 des LCDs (äussere Potipins) und der mittlere Potipin (der Schleifer) an Pin3 des LCDs angelötet. Der Vorwiderstand für die Hintergrundbeleuchtung beträgt bei mir 6,8Ohm (0,5 Watt) und wird zwischen Pin2 und Pin15 des LCD gelötet.
Layout
Die Platine ist einseitig. Die PSK Steckverbinder lassen sich auch durch normale Pinheader ersetzen, dann muss man allerdings aufpassen das man die Stecker nicht verpolt. Beim Bestücken wie üblich mit den niederen Bauteile (Widerstände, Dioden) beginnen und zu den höchsten Bauteilen vorarbeiten.
Da die Platine direkt über dem Motor montiert wird (EMV ungünstig), empfield es sich das Motorgehäuse auf Masse zu legen.
Die üblichen Enstörmaßnamen mit Keramikkondensatoren bewirkten bei mir eher eine Verstärkung der Störungen.
An X3 wird die +5 Volt Spannungsversorgung angeschlossen. Wer wie ich ein umgebautes PC-Netzteil benutzt, sollte evtl. C5 durch einen 10µF Elko ersetzen (plus des Elko zum Mega8 hin), da es beim Einschalten der Heizung (immerhin knapp 3A), Spikes auf der 5V Leitung geben kann.
Die Platine habe ich mit der Ätzmaschine 2 geätzt als die Hardware noch lose uber meinem Tisch verstreut war und am STK500 hing .
Stückliste
R1 | 10k | Widerstand 1/4 Watt |
R2,R3,R4,R6 | 330 Ohm | Widerstand 1/4 Watt |
R5 | 1,2k | Widerstand 1/4 Watt |
R7,R8 | 4,7k | Widerstand 1/4 Watt |
C1,C4,C5 | 100nF | Keramik Kondensator (C5 evtl. 10µF) |
C2,C3 | 22pF | Keramik Kondensator |
C6,C7 | 4,7nF | Keramik Kondensator |
D1,D3 | 1N5819 o. 1N4004 | Diode |
FET | IRLZ34N | N-Chanel Power FET, Logik Level |
T1 | BC547B o.Ähnlich | NPN Universal Transistor |
IC1 | ATMega8-16PDIP | AVR Mikrocontroller |
IC2 | LM75 CIM-5 | I2C Temperatursensor 5 Volt Version |
Hall1 | TLE4905 + Magnet M4 | Hallsensor Unipolar |
Q1 | 8 Mhz | Quarz |
K1 | FIN36.11 | Relais 1x um 5Volt |
LED1,LED2 | 3 mm LED | |
X1,X2,X3 | Schraubklemme | 2polig RM5 |
J1,J2,J3,JP2 | PSK Leiterplattenverbinder |
2,3,4,5pol Beispiel unten für 5pol Printstecker, Leergehäuse, Kontakte |
JP1 | Pinheader 2x3pol RM2.54 | ISP Steckverbinder |
BZ1 | BJM05 | Summer |
enc | Drehimpulsgeber | Dieser müsste gehen (siehe Text oben) |
Download
Eagle Dateien, ASM und HEX Dateien
Was ich noch vorhabe:
- Beim nächsten ätzen einen Videoclip mitschneiden.
- Eine Halterung für die Ätzschale, ähnlich Ätzmaschine 1, jedoch mit einem Federmechanismus der die Schale auf die Heizplatte presst. Im Moment wird die Schale mit einem Gummiband auf der Schwenkplatte gehalten (wg. besserem Wärmekontakt).
- Den Quelltext aufräumen
- Da ja noch Platz im Flash des Mega8 und die Hardware komplett vorhanden ist könnte man gleich noch einen
Belichtungstimer integrieren. Mal sehen .....
Die Firmware aufspielen.
Da es ja mittlerweile zig verschiedene Möglichkeiten gibt einen AVR zu brennen zeige ich hier nur ein Beispiel mit dem AVR-Studio und dem Dragon oder STK500. Hier die Fuse Bits. Bei anderer Brennsoftware kann man sich beim brennen der Fuses an den HIGH und LOW Werten (0xD7, 0xBD) orientieren.
Im Programm-Reiter (Bild oben) den Pfad zur .hex und .eep Datei Herstellen und beides in den Mega8 brennen. Das Eeprom muss mitgebrannt werden, um definierte Startwerte beim ersten einschalten zu erhalten.
Links
Ätzmaschine 1
Mikrocontroller.net
Hier noch ein besonders schöner Aufbau der Ätzmaschine. Sven hat einige mechanische Detais noch verbessert.
Ein Nachbau aus weissem Polysterol
FAQ:
Frage: | Mein Problem sind die Pins 1 und 2 des LM75. Welcher kommt an JP2 - 2 und welcher an JP2 - 3 . |
Antwort: | Pin1 des LM75 ist SDA, dieser kommt an PD0 des Mega8 also JP2/2. SCL (2/LM75) kommt an PD1 (JP2/3). |
|
|
Frage: | Mir fällt auf, das bei meiner Platine die ganze Masse Kontaktfläche nicht vorhanden ist. |
Antwort: | Du musst vor dem Ausdrucken deiner Folie auf Ratsnest klicken, damit die Massefläche von Eagle gezeichnet wird. Eagle speichert die Massefläche (Polygon) nicht mit ab, das ist also immer so wenn du mit Eagle eine Folie ausdrucken willst. |
|
|
Frage: | Wie werden die Heizfolien an X1-1 und X1-2 angeschlossen |
Antwort: |
Du musst die beiden X1 Anschlüsse als 1poligen Schalter ansehen. Damit kannst du eine Leitung der
Heizspannung unterbrechen (schalten). Das habe ich extra so gemacht, damit man verschiedene
Möglichkeiten hat die Heizfolien zu versorgen. Gleichspannung, Wechselspannung, 12V (bei Paralellschaltung) oder 24V (bei Reihenschaltung der Folien). |
|
|
Frage: |
Den Atmega8 möchte ich mit Ponyprog programmieren. Wie genau muss ich den dann brennen (was muss ich alles in ponyprog auswählen)? |
Antwort: |
Auf meiner HP ist ganz unten ein Fenster mit den Fuse Bits abgebildet. diese Werte trägst du hier http://www.engbedded.com/fusecalc/ ein. Oben noch den Mega 8 einstellen. Nach klick auf apply .... erscheinen weiter unten die Haken für Ponyprog. Die .hex in den Flash und die .eep ins eeprom brennen. Fertig |
Frage: | Beim aufheizen der Aluplatte springt plötzlich ,nach ca. 20 Sekunden die Anzeige auf 0,00°C... |
Antwort: |
Abhilfe brachte das neu verlegen der Kabel zum LM75. Auch der Sensor der vorher in der Mitte der Heizplatte eingebaut war wurde an anderer Stelle eingebaut. |
|
Timer Addon
Wie oben schon zu lesen war, habe ich den Quelltext nochmal überarbeitet und gleich noch einen Belichtungstimer in die Software eingebaut. Der Timer kann ohne weitere Hardware genutzt werden wenn der Summer genügt und das Belichtungsgerät manuell abgeschaltet wird, das habe ich jahrelang so gemacht .
Auch wer den Timer nicht benötigt, sollte die überarbeitete Firmware nutzen da kleinere Bugs entfernt wurden.
Das Hauptmenü (Bild links) enthält nun 3 Punkte. <RUN> startet den Ätzvorgang, <TIME> Den
Belichtungstimer und <SET> das Setup. Wird der Belichtungstimer gewählt (Bild rechts) wird die zuletzt
gewählte Zeit auf dem LCD angezeigt. Deise kann durch drehen am Encoder verändert werden. Durch drücken des
Encoders wird der Timer gestartet. Während der Timer läuft wird, PD4 am Mega8 auf high geschaltet. Den Timer
kann man jederzeit durch nochmaliges drücken unterbrechen und dann entscheiden ob man abbrechen will, oder ob
weitergezählt werden soll. Ist der Timer bei 00:00 angelangt ertönt der Summer und PD4 wird wieder auf GND
geschaltet.
Die kleine Extraschaltung
Wie gesagt kann der Timer ohne weitere Hardware genutzt werden, komfortabler wird es aber, wenn ein Relais mit kleiner Treiberstufe in den Belichter eingebaut wird.
Die 3 Leitungen für +5, GND und Pin6 des Mega8 könnten z.B. über einen 3poligen Klinkenstecker verbunden werden, wenn man das Ätzgerät und den Belichter mit entsprechenden Buchsen ausstattet. Der Relaiskontakt könnte dann den (einpoligen) Netzschalter im Belichtungsgerät überbrücken.
Das hätte dann den Vorteil, das der Belichter weiterhin ohne den Timer eingeschaltet werden kann.
Download Qellcode, Hex, Eagle-Dateien