Category Archives: elektronik

elektronik

0/0 auf Pin1 – Darum!

Wieder einer dieser Mommente, in denen mir Dinge klar geworden sind, die mir mMn längt hätten klar sein sollen. Dabei geht es diesmal um das Layout von Platinen bzw. das Anlegen von Bauelementen eben für das Layout.

Seit meiner Studienarbeit bis jetzt, da ich in Lohn und Brot stehe, habe ich immer wieder Platinen gelayoutet. Heißt, ich habe nachdem der Schaltplan fertig war, in einem Programm virtuelle Bauelemente auf einer virtuellen Platine verteilt und dann Leitungen “gemalt”, die die Anschlüsse der Bauelemente gemäß dem Schaltplan miteinander verbunden haben. Am Ende des Prozesses steht eine Datei, mit deren Hilfe eine Platinenfertigung Platinen fertigen kann.

Durchsteckmontage

Durchsteckmontage

Im Programm sind für die Bauelemente unter anderem sogenannte Footprints hinterlegt. Dabei handelt es sich um die zum Bauelement passenden Kontaktstellen, die auf der Platine vorhanden sein müssen, um das Bauelement anzuschließen. Im Fall eines altmodischen Widerstands also zwei Löcher, die mit Kupfer kontaktiert sind, um die Beinchen des Widerstands durchzustecken und dann anzulöten. Das meiste wird heute allerdings ohne Löcher in SMD-Technik (Surface Mount Device) umgesetzt. Dabei gibt es nur noch Kontaktflächen (ohne Löcher) auf der Platine, sog. Pads, auf denen dann die Bauelemente aufgelötet werden.

SMD-Bauelemente

SMD-Bauelemente

Die Footprints für die Bauelemente sind in den Programmen in einer Bibliothek hinterlegt. Möchte man ein Bauelement verwenden, das nicht in der Bibliothek vorhanden ist, muss man es selbst anlegen. Zu den genauen Maßen gibt es Informationen in den Datenblättern der Bauelemente, anhand derer man die Footprints “malt”.

Soweit so gut. Beides, also Layout und das Erstellen neuer Bauelemente, habe ich hinter mir. Teils mit einer Anleitung vom Lehrstuhl, teils mit Anleitungen aus dem Netz. Irgendwie funktioniert hat es immer. Aber wie bei so vielem, sind es die kleinen Details, auf die man erst später kommt und dazu muss ich schon wieder etwas ausholen.

Alle Layoutprogramme arbeiten mit einem Gitter, dass die kleinste Schrittweite für die Mausposition und damit von allem, was man platzieren möchte bestimmt. Hier stellt sich die Frage, aus welchen Gründen, stelle ich mir mein Gitter wie ein?

Dazu muss man wissen, dass sich die Bauelemente, die man heute käuflich erwerben kann in zwei Lager teilen lassen. Es gibt Bauelemente, deren Pins in ein metrisches Raster (cm, mm) passen und es gibt Bauelemente, die in ein Imperiales (inch, mil) passen. In der Regel folgen die neueren SMD-Bauelmente dem metrischen Raster, die “alten” Bauelementen zum Durchstecken dem Imperialen.

Somit macht es Sinn, an einer Platine, die hauptsächlich mit SMD-Bauelementen bestückt wird mit metrischem Raster zu arbeiten und andersherum. Das hat dann den Vorteil, dass man das Raster relativ grob wählen kann und so ohne langes Zielen z.B. eine Leiterbahn genau in der Mitte zwischen zwei Pins eines Bauelements hindurch führen kann.

Das setzt allerdings Vorraus, dass die Footprints der Bauelemente sinnvoll angelegt wurden. Beim anlegen der Bauelemente ist nämlich ein Nullpunkt zu setzen. Damit das Raster entsprechend greift, macht es Sinn diesen Nullpunkt in die Mitte eines Pins zu legen. Dann klappt’s später auch mit dem Raster.

An der Uni gab es eine Anleitung, die besagte, dass es so gemacht wird. Der Grund wurde nicht erwähnt. Auf der Arbeit hieß es: “Entweder in die Mitte des Bauelements oder auf einen Pin.” Es mag sein, dass die Platzierung in der exakten Mitte auch funktioniert, 100%ig sicher ist aber wohl nur der Pin.

Zu verdanken habe ich diese Erkenntnis Dave Jones von EEV-Blog, dem ich in der vergangenen Woche in einem seiner älteren Videos beim Layouten über die Schulter geschaut habe.

Thank you Dave.

Mit diesem Wissen, setze ich mich jetzt an die Bauelemente, die ich in den letzten Monaten angelegt habe und platziere den Nullpunkt jeweils mittig auf Pin1, damit alles besser wird als vorher.

Update:

Nachdem ich dann meine Bibliothek aktualisiert hatte, ist mir aufgefallen, dass das für das aktuelle Projekt gar nicht sooo toll ist. Auf der Platine ist in Sachen Gitter ohnehin alles Kraut und Rüben, wodurch die Änderung der Nullpunkte lediglich den Effekt hat, dass sich die Bauelemente im Layout verschieben und neu platziert werden müssen.

elektronik games leben programmieren

Mechanische Tastatur (mx-brown, tkl, red backlight, german) … arghhh

Ich habe ein Luxusproblem. Nachdem ich auf der Arbeit den Raum und damit meine Schreibtischsituation gewechselt habe, tippe ich auf einer externen Tastatur, anstatt auf meinem Laptop. Die Tastatur, die ich anfangs benutzt hatte, war hakelig, die Tasten klemmten hin und wieder. Es sollte also eine Neue her.

Ein Grund für mich mit einer mechanischen Tastatur, bei der man (wieder) auf richtigen Schaltern rumdrückt und nicht diesen Gumminupsies, die heute in Tastaturen üblich sind. Soweit so gut. Die Tastatur ist etwas lauter als vorher, dafür tippt es sich wunderbar. Die Tastatur auf der Arbeit hat einen Ziffernblock und war für eine mechanische Tastatur relativ günstig. Wohl auch, weil sie direkt von Cherry kommt, die die Schalterchen bauen.

Zu Hause hätte ich jetzt auch gerne eine mechanische Tastatur. Das trifft sich gar nicht schlecht, denn ich tippe im Moment auf einem Bluetooth-Keyboard von Apple (die Variante ohne Ziffernblock). Das Bluetooth-Keyboard würde seine Stärke aber viel eher im Wohnzimmer am AppleTV ausspielen, wo man endlich mit ‘ner ordnetlichen Tastatur die Suche benutzen kann, ohne das Gerät anschreiben zu wollen.

Zu Hause hab ich leicht andere Anforderungen, als im Büro und so hätte ich dort gerne eine andere Tastatur: Ohne Ziffernblock, mit rotern Beleuchtung der Tasten und deutschem Layout.

Ohne Ziffernblock, weil mich die breite Tastatur beim Zocken stört.

Mit roter Beleuchtung, da ich zu Hause öfter Abends am Rechner sitze, als auf der Arbeit und auch wenn ich blind Texte schreiben kann, hört es bei Sonderzeichen irgendwann auf. Außerdem hab ich festgestellt, dass ich hin und wieder bei gewissen Zeichen kurz auf die Tastatur schaue. Sehe ich die Tasten bleibe ich im Fluss. Wenn nicht, beginnt die Tastensuche im Dunkeln und ich bin raus. Das stört besonders beim Programmieren. Naja und rot soll es sein, weil rotes Licht die Anpassung der Augen an die Dunkelheit nicht kaputt macht. Außerdem kann ich blaue LEDs nicht mehr sehen.

Gerade zum Programmieren wäre englisches Layout dan vielleicht gar nicht schlecht, aber ich bin jetzt über 30 und da muss ich mich nicht an eine neues Tastaturlayout gewöhnen. Außerdem ist meine Geschwindigkeit auf der Tastatur beim Programmieren selten der begrenzende Faktor ;)

Ach ja … ich habe mir die Tastatur für die Arbeit in mehreren Varianten bestellt. Mit unterscheidlichen Schaltern, die sich unterschiedlich anfühlen. Ich mach die mx-brown-Schalter von Cherry.

Wieso verdammt nochmal baut niemand eine Tastatur mit diesen Eigentschaften? Die einzige Möglichkeit wäre entweder eine Tastatur mit englischem Layout zu kaufen und die Tasten zu tauschen. Das sehe ich aber nicht ein. Die Tastaturen sind schon teuer und dann noch mal mehr oder weniger sinnfreie 50€ für neue Tasten … neee. Alternativ könnte ich selbst die LEDs gegen rote tauschen. Damit kann ich dann die Garantie aber vergessen und ordentlich Zeit geht auch dabei drauf.

Im Moment mache ich daher erst mal nix und bastel mir vielleicht ein kleines Tastaturlicht, dass dann unter meinen Laptopständer kommt. Wenn sich das bewährt, fällt vielleicht die Bedingung der Beleuchtung weg, mal sehn.

elektronik

An alles denken

Gerade noch glaubte ich mein aktuelles Elektrobastelprojekt in naher Zukunft abschließen zu können, denn heute brachte der Postbote das Gehäuse \o/. Aber zu früh gefreut. :( Nachdem soweit alle elektrischen Probleme ausgeräumt sind, es bis zum vollständigen Funktionieren nur noch ein paar Zeilen Code braucht, bremst mich ein zu kleines Gehäuse aus. Dass der Raum nicht wirklich üppig bemessen war, wusste ich schon vorher. Daran aber, dass der mopplige Motorpoti einfach zu dick für das Gehäuse ist, hab ich nicht gedacht.

Abgesehen davon wird es einem maximal schwer gemacht für kleines Geld Gehäuse zu kaufen, die man sich ins Wohnzimmer stellen möchte. So wie es im Moment aussieht, behalte ich das Gehäuse für ein anderes Projekt und gehe für das aktuelle unter die Schreiner und baustel das Gehäuse aus Holz. Es handelt sich nicht um ein Hochfrequenzprojekt und so wird es auch ohne die schirmende Wirkung eines Metallgehäuses auskommen (abgesehen davon hat das gekaufte Gehäuse Seitenteile aus Plastik und bietet in Sachen Abschirmung wohl eher zweifelhaften Schutz).

Und damit begebe ich mich ins Reich der träume. Morgen ist ein neuer Tag, aber das musste ich mir noch kurz aus dem Hirn schreiben.

Gute Nacht und bezieht bei der Auswahl von Gehäusen alle Bauelemente mit ein. Ist ein Protip ;)

elektronik

Arduino unter OS X Mountain Lion

Arduino DOFIm Rahmen eines Bastelprojekts von mir für meine Schwester habe ich heute damit begonnen unter OS X Mountain Lion (10.8.3) Software für den Arduino zu schreiben. Dabei kam es das erste mal vor, dass nach der Installation der Arduino-Entwicklungsumgebung nicht alles direkt funktioniert hat. Konkret wurde der FTDI-Chip nicht erkannt, weshalb der COM-Port über die die Kommunikation zwischen Arduino und Mac läuft nicht erstellt wurde.

Die Lösung des Problems brachte für mich die Installation des aktuellen FTDI-Treibers. Die Installation ist unkompliziert. DMG runterladen, öffnen Package für die neueren OS X Versionen rechtsklicken -> öffnen -> bestätigen, im Installer fleißig “weiter” klicken und schon wurde mein Board wieder erkannt.