Skip to content

Computer

9 posts with the tag “Computer”

Seminar: Camera-based PCB Analysis for Solder Paste Dispensing

Mini Kossel 3D Printer
Mini Kossel 3D Printer.

The lectures during my last semester were largely focused on digital image processing. Combining this with the inspiration for 3D printing, I gathered through my trip though South Korea, resulted in the following seminar paper. Seminars are a compulsory part of our curriculum which I like due the self-contained work and the ability to pick an individual topic.

Over the past year, I’ve built my own Kossel 3D printer. The Mini Kossel is based on a novel parallel delta kinematic which was developed by Johann C. Rocholl, a Google engineer from Germany.

This paper is targeting the automation of solder paste dispensing onto printed circuit boards by using computer vision and RepRap robots.

Download:Presentation Slides
Download:Full Paper
Source Code

HIDeKey

HIDeKey USB Security Token
HIDeKey USB Security Token.

Als Abschlussprojekt und Vorbereitung auf meine Betreuer Tätigkeit für die Mikrocontroller-AG des MMI’s habe ich mich näher mit dem USB-Bus und dem darauf aufbauenden HID-Protokoll befasst.

HIDeKey ist ein kleiner USB-Stick, der als HID-Tastatur vom Rechner erkannt wird und beliebge Zeichenketten und Tastenkombinationen an den Host-Rechner senden kann.

Mein Ziel war es ein kleinen Hardware-Dongle zu entwickeln welcher Passwörter, TANs und Onetime-Tokens direkt an jeden beliebigen Rechner senden kann. Meine Passwörter sind im verschlüsselt EEPROM des Mikrocontrollers gespeichert. Beim Drücken, des Tasters auf dem Stick, wird das Passwort eingegeben.

Als Hardware nutze ich die zuvor vorgestellten USBasp Programmieradapter aus China, deren Firmware ich durch eine eigene ersetzt habe. Mit einem zusätzlichen Taster lässt sich so über ein kleines Menü zwischen 10 User-Passwort-Kombination wählen.

Neue Passwörter können mit einem kleinen Konsolen-Programm direkt über den Rechner einprogrammiert werden.

HIDeKey soll auch zur Generierung von One Time Passwords (OTP) genutzt werden können. Da er sich wie ein gewöhnliche USB-Tastatur verhält, kann er auch unterwegs am Schlüsselbund in Internet-Cafes und Rechner-Pools genutzt werden.

Quelltext und Schaltpläne gibt auf Codeberg: /stv0g/hidekey .

In meinem Wiki ist auch noch etwas Dokumentation gesammelt.

HIDeKey ist wie die meisten meiner Projekte als OpenSource veröffentlicht. Ich freue mich über jede Verbesserung, Erweiterung oder andere Beiträge zu diesem Projekt 😊.

MATLAB powered NXT omniwheel robot

MATLAB-powered NXT Omniwheel Roboter
MATLAB-powered NXT Omniwheel Roboter.

Kurz vor Weihnachten beendeten wir unser Erstsemester Projekt “MATLAB meets LEGO Mindstorms” an der RWTH Aachen.

Während dieser Pflichtveranstaltung sollten wir die Lerninhalte der Vorlesung “Mathematische Methoden der Elektrotechnik” durch Steuerung von LEGO Mindstorms NXT Robotern unter MATLAB vertiefen. Das Projekt ist eine Pflichtveranstaltung im ersten Semester meines Studienganges (Elektrotechnik, Informationstechnik und Technische Informatik) und wird durch alle Lehrstühle unserer Fakultät als 10-tägige Blockveranstaltung vor Weihnachten durchgeführt.

Ich wurde dem Institut für vernetzte System (MOBNETS) zugeteilt. Etwas verwundert war ich dann am ersten Tag, als wir auf Englisch begrüßt wurden. Aber naja, später werden wir vermutlich sowieso dazu gezwungen werden.

Während der ersten Woche lernten wir die eigens für das Projekt entwickelte “RWTH Mindstorms NXT-Toolbox” kennen und haben an einigen vorgegebenen Versuchen gearbeitet.

In der zweiten Hälfte des Projektes durften wir dann in einem Wahlversuch selber kreativ werden und einen eigenen Roboter konstruieren.

Meine beiden Kollegen und ich haben uns für einen Roboter mit omni-direktionalem Antrieb entschieden. Das Prinzip dieses etwas außergewöhnlichen Antriebes wird das folgende Video deutlich.

Die Konstruktion der “Omniwheels” war komplizierter als Anfangs angenommen. Dafür sind wir glücklicherweise recht schnell auf den nötigen Zusammenhang zwischen Fahrtrichtung und den drei Motorgeschwindigkeiten gekommen.

Als Projektabschluss mussten alle Gruppen ihren Roboter präsentieren. Unsere Präsentation gibt es hier:

Download:RWTH Omniwheel Bot (Präsentation)
  • Omniwheel-Antrieb
    • Bewegungsfreiheit in 360°
    • Drehen auf der Stelle
  • Intuitive Fernsteuerung über zweiten NXT-Brick
    • Durch Neigung des Controllers (Beschleunigungssensoren)
    • Schalter zur Steuerung des Programmablaufs
  • Signal-Hupe
  • Akustischer Abstandswarner
/_astro/DSC04214.RRBoXpNQ.jpg /_astro/IMG_9300.CIeUocJW.jpg /_astro/IMG_9302.bKvasTTu.jpg /_astro/IMG_9305.BgUpQKXL.jpg

Visualize your Power Consumption with fnordlicht LED Modules

fnordlicht Power Consumption Visualizer

Gerade zurückgekommen vom elektro:camp(<<2010>>) aus Kaiserslautern, blogge ich heute über mein neustes Spielzeug: zehn fnordlichtmini’s.

Vor ein paar Wochen bin ich auf das Projekt von Alexander Neumann aufmerksam geworden, um den Eingang neuer Mails, Nachrichten und meinen Stromverbrauch darzustellen. Meine 10 Module waren schnell aufgebaut. Sie bestehen aus je 3x3 LED’s (RGB) und einem ATMega8 Mikrocontroller, der die PWM-Ansteuerung und die Kommunikation über einen seriellen Bus übernimmt.

Leider gab es bisher nur kein in Ruby geschriebenen Code zum Testen der Ansteuerung der Lichter über einen Rechner ( /fd0/fnordlicht/tests ). Daher ergriff ich die Gelegenheit und schrieb eine kleine C++-Bibliothek zur Ansteuerung der fnordlicht Module über die serielle Schnittstelle. Die Bibliothek sowie ein Beispiel-Programm für die Linux-Konsole gibt es auf Codeberg: /stv0g/libfn .

Mit der Ethernet-RS232 Bridge von ethersex (Y-Port) konnte ich sogar die Ansteuerung über das Internet testen. Dies wird auch von der Library unterstützt.

/_astro/IMG_3749.B-334MuJ.jpg /_astro/IMG_3754.Bzfs4Xvn.jpg /_astro/IMG_3756.CHWvRnKD.jpg /_astro/IMG_3760.M_alROZc.jpg /_astro/IMG_3765.C_mUVNnl.jpg /_astro/IMG_3766.Z-Mb1uBh.jpg /_astro/IMG_3770.BDw74amh.jpg

volkszaehler.org

volkszaehler.org Logo
volkszaehler.org Logo.

volkszaehler.org ist ein freier Smart Meter (hier: intelligenter Stromzähler) im Selbstbau. Die anfallenden Stromprofile bleiben dabei unter der Kontrolle des Nutzers.

Seit dem 1. Januar 2010 müssen Stromversorger ihren Kunden für Neubauten so genannte “intelligente Stromzähler” (Smart Meter) anbieten. Der Kunde soll dadurch seinen Stromverbrauch analysieren und optimieren können.

Die dabei anfallenden Daten (“Stromverbrauchsprofil”) erlauben einen sehr detaillierten Einblick in den Tagesablauf des Nutzers (wann steht er auf? wann geht er in’s Bett? wann kocht er? wie oft verwendet er seine Spülmaschine? verändert sich sein Verhalten? …). Darum sollten die Daten ausschließlich für den Nutzer selbst zur Verfügung stehen - und das geht nur, wenn man sich den Smart Meter selbst baut. Mit einem Materialeinsatz von etwa 100 €, etwas Geschick und Zeit lässt sich das mit Hilfe eines Standard-µC-Moduls aufbauen.

Auf der SIGINT 2010 konnte ich mir den Vortrag von Justin Otherguy über das noch recht junge Projekt anhören und fand anschließen die Gelegenheit mit ihm über das Projekt zu sprechen. Schnell war für mich klar, dass ich hier helfen möchte.

Bisher gibt es nur einen funktionsfähigen Prototypen. In den letzten Wochen habe ich mit ein paar weiteren Entwicklern begonnen den Code des Prototypen neu aufzubauen.

Die Architektur von volkszaehler.org ist dreigeteilt:

  1. Die Controller und Sensor Ebene erfasst mithilfe eines Mikrocontrollers die Daten leitet sie an den Backendserver weiter.
  2. Der Backendserver besteht aus einem PHP-Skript und einer Datenbank. Hier werden die Daten weiter verarbeitet und ausgewertet. Er kommuniziert ausschließlich über eine standardisierte JSON API.
  3. Das Frontend stellt die Daten für den Benutzer übersichtlich dar und ist für die Ausgabe der Analysen verantwortlich.
Systemübersicht volkszaehler.org
Systemübersicht volkszaehler.org.

Diese Darstellung verrät uns auch, dass nur der Stromverbrauch erfasst werden kann. Geplant sind sämtliche Messgrößen (Temperatur, Luftdruck, Luftfeuchtigkeit, Strahlung, Niederschlag, …).

Bisher gibt es noch keine stabile, lauffähige Version des Quellcodes. Im Wiki, der Mailing-Liste und im GitHub Repository ( /volkszaehler/volkszaehler.org ) findet ihr weitere Informationen zu meinem neuen Projekt.

Wir freuen uns über jede Unterstützung 😊. Besonders Entwickler mit PHP und Javascript Kenntnissen wären hilfreich 😉.

USB Audiointerfaces für Linux

Musik ist meine Freizeitbeschäftigung. Mittlerweile höre ich sie eigentlich in jeder Lebenslage. Zuhause, beim Laufen, Fahrrad fahren, auf der Arbeit und in der Bahn. Man könnte fast sagen ich bin süchtig geworden 🫤. Die Qualität der Onboard-Soundkarte meines Dell Latitude ist einfach nur miserabel. Von dem Mikrofon Eingang ganz zu schweigen. Ganz klar hier muss was besseres her.

Vorne weg: ich habe das Terratec PHASE 26 USB und das Cakewalk UA-1G getestet und mich schließlich für das Terratec entschieden. Meine Entscheidung habe ich nicht nach keinem bestimmten Gesichtspunkt getroffen. Hauptsächlich nutze ich das Interface aber zur Wiedergabe. Vielleicht gibt es demnächst auch mal wieder einen Audiobeitrag von mir 😉.

Kriterien waren neben der Linux-Unterstützung ein digitaler Ausgang, ein Mikrofon- und Line-Eingang sowie herausragende Audioqualität. Preislich habe ich mir eine Grenze von 100 € gesetzt.

Dell Latitude D630 ist da!

In den vergangenen Osterferien habe ich jeden Tag um die Ankunft meines neuen Laptops gefiebert. Als er dann sechs Tage verfrüht bei mir auf dem Tisch lag freute ich mich riesig. Hier ein Kompliment an Dell. Diese pessimistische Lieferzeiteinschätzung ist wirklich eine gute Marketing Strategie.

Meine ersten Erfahrungen mit dem D630 unter Debian Etch waren grauenvoll. Anfange lief gar nichts. Erst nach mehreren Stunden konnte ich die wichtigsten Komponenten zum Laufen bringen.

Meine Rettung war die neue LTS (Long Term Support) Version von Ubuntu, Hardy Heron, die fast zeitgleich mit dem Eintreffen meines Laptops veröffentlicht wurde.

Zu Ubuntu gibt es nicht viel zu sagen: Es läuft einfach alles!

Und das nach circa 20 minütiger Installation, ohne weitere Konfiguration.

Dell Portables POST Bitmap Update Program

Da ich leider noch sehnsüchtig auf mein Notebook warte, verbringe ich die Zeit damit, mich über es zu informieren:

Dell Portables POST Bitmap Update Program soll es laut Dell ermöglichen die Dell-Werbung, die beim Booten angezeigt, wird zu entfernen und durch ein eigenes Bild zu ersetzten:

The POST Bitmap Update Program allows you to replace the image that is displayed during the Power-On Self Test (POST) of your Dell Portable computer. By default, the image displayed during POST is the Dell logo. This image can be replaced by a specially formatted image loaded into non-volatile memory (NVRAM) using SPLASH.EXE. The image remains in memory even when power has been removed from the system.

The image which is loaded into NVRAM must be in bitmap (.bmp) format. The image can be no larger than 640 pixels wide by 480 pixels high and must use 16 colors.

Dell Boot Logo
Dell Boot Logo.

18 und mehr...

Ja endlich bin ich es auch! Volljährig!

Lange habe ich nun schon darauf hin gefiebert. Schließlich war es doch ein wenig ernüchternd. Meine Führerschein hab schon, bin aber bisher noch nicht alleine gefahren 🙁. Ansonsten hat sich auch nicht viel geändert. Zugegebenermaßen hatte ich das auch nicht erwartet. Bank, Versicherung & Verwandte stehen Schlange…

Nur das Wetter spielt dieses Jahr etwas verrückt. Bei uns schneit es täglich, und das in Hessen während Ostern!

Dafür gibt es diesmal ein fettes Geburtstagsgeschenk:

Dell Latitude D630
Dell Latitude D630.

Nach einigen Recherchen habe ich mich schließlich für einen Dell Latitude D630, und gegen ein Modell der Inspiron Serie, entschieden. Mein Vater besitzt ein ähnliches Modell als Dienst-Notebook. So fiel mir die Entscheidung etwas leichter.