LM317 regelt nicht!?

Nach langem Testen einer simplen Spannungsversorgung hat weder der LM317 noch sein negativer Bruder LM337 eine gescheite Regelung gezeigt. Die Ausgangsspannung war von der Eingangsspannung abhängig und der einstellbare Spannungsbereich per Poti auch nicht wirklich einstellbar.
Die ersten Gedanken gingen an das Platinenlayout: Alles OK!
Dann kam die Frage über einen möglicherweise nicht datenglatt-konformen LM317-Typ auf: denkste, alles konsistent!
Und wer das Datenblatt genau studiert, wird einen Absatz über die Regelung finden und dass diese einen Mindeststrom liefern muss, um richtig zu funktionieren. Andernfalls fällt die geregelte Spannung zu hoch aus. Weiter oben findet sich bei den elektrischen Kenndaten auch der Eintrag über den ‘minimum load current’, welcher bei typischerweise 3.5 mA und maximal 10 mA liegt.
Idealerweise bietet sich zur Lösung des Problems eine LED mit geeignetem Vorwiderstand an, um diese Last anliegen zu lassen und man hat eine schöne Kontrollleuchte für die anliegende geregelte Spannung. Alternativ dimensioniert man den Spannungsteiler aus R1 und R2 geeignet und erhält das selbe aber weitaus unspektakulärere Ergebnis.

Der Quadcopter auf github

Es gibt tolle Neuigkeiten bezüglich des Quadcopter-Projekts. Den kompletten Programmcode kann man nun auf github finden. Der Code steht öffentlich zur Verfügung und wird immer weiter entwickelt. Mal kommt was neues dazu, mal werden bestehende Probleme beseitigt, mal werden ganze Klassen wieder umgekrempelt, weil man damit entweder Code sparen kann oder es anschließend einfacher komfortabler wird. Schaut es euch einfach in Ruhe an: Quadcopter auf github. Und wie immer: Bei Fragen, fragt.

Neues Design

Wir haben uns mal getraut ein neueres WordPresstheme zu installieren. Ich hoffe es gefällt euch auch so gut wie uns. Besonders toll ist daran, dass man sich die Seite nun auch endlich auf dem Smartphone anständig anschauen kann. Und außerdem hat sich die Breite der Seite geändert, sodass man nun mehr auf einem Blick hat.

Serverumzug

Wir sind jetzt mal umgezogen auf einen anderen wesentlich schnelleren Server. Beim alten Anbieter war unter anderem das Problem, dass der MySQL-Server auf einem anderen Server war als der Apache mit PHP. Da WordPress nicht gerade sparsam umgeht mit Datenbankabfragen pro Seitenaufruf, war das ein großes Problem. Jetzt sind Apache und MySQL auf einem Server und laufen wesentlich performanter.

Da lässt sich die Seite gleich viel komfortabler durchforsten, oder? ;)

Kleines Update für das Skript zum Löschen älterer Kernel

Ich habe das Skript zum Löschen veralteter Kernel mal auf Vordermann gebracht. Wegen eines Sortierungsfehlers konnte es passieren, dass das Skript z.B. meinte Kernel 3.11 wäre älter als Kernel 3.9. Das Problem ist jetzt behoben. Außerdem kann man jetzt die Kurzfassung für Parameter verwenden. In diesem Fall also zum Beispiel “-rl2″ statt “-r -l 2″. Die ganze Arbeit dafür nimmt einem das Hilfsmittel ‘getops’, was normalerweise überall schon vorinstalliert ist.

Das Beamer-Mikroskop

Vielleicht habt ihr schon einmal gesehen, wie einfach sich eine Webcam zu einem digitalen Mikroskop umbauen lässt. Meistens werden Kameraobjektive oder das originale Objektiv der Webcam verkehrt herum verwendet. Da wir die Optik des zuletzt aufgeschraubten Beamers noch im Keller hatten, wollten wir es einmal damit versuchen. Dafür haben wir eine alte ausgediente Webcam benutzt, welche wir aus ihrem Gehäuse befreit haben.

Weiterlesen

[PB] Wie arbeite ich mit dem Eventsystem in PureBasic?

Dieses mal möchte ich zeigen wie man mit dem Eventsystem von Purebasic korrekt umgeht. Da gibt es die Oldschool-Variante mit WaitWindowEvent() und Konsorten, aber auch die neuen Befehle wie BindEvent() oder BindGadgetEvent() .

Als Beispiele habe ich mir überlegt ein ‘CanvasWindow’ zu entwickeln, das ein ‘CanvasGadget’ in einem normalen ‘Window’ kapselt und beliebig oft instantiiert werden kann. Dabei verwaltet das CanvasWindow alle Events, die im Fenster geschehen, von selbst mittels  BindEvent()  oder  BindGadgetEvent(). Drum herum erstellen wir uns noch ein kleines Hauptfenster, mit dem man neue CanvasWindows erstellen kann und mit dessen Beenden sich auch alle schon offenen Fenster wieder schließen und das Programm ebenfalls beendet wird.

Weiterlesen

[PB] Wie schreibe ich eine ConcurrentQueue

Ich habe jetzt mal angefangen kleine Videotutorials zu erstellen, in denen ich in Echtzeit einen kleinen Algorithmus oder bestimmte Programmierprinzipien entwickle und erkläre.

Dieses mal geht es um einen nebenläufige Warteschlage, oder auf Englisch “Concurrent Queue”, die nach dem “First In”-“First Out”-Prinzip arbeitet und mit Threads zurecht kommt.

Weiterlesen

Kurzes Update aus dem Keller

Während Nicolas an der USB-Anbindung unseres Messprojektes arbeitet, gedeiht auch der Anschluss des Lasers. Viel Zeit hat dabei die Suche nach den Schaltplänen des Netzteiles gekostet. Aber was lange währt…

Ihr habt jetzt schon eine sehr lange Zeit nichts mehr von uns gehört, aber das nächste Video zeichnet sich an den heutigen Erfolgen schon sehr klar ab!

20131204-211612.jpg

Y-Adapter für den Logikanalysator

For english version please click here.
In diesem Blogbeitrag wollen wir Euch eine ganz einfache, aber sehr effiziente Lösung für das Debuggen von Schaltungen vorstellen. Wie Ihr vielleicht schon wisst, sind wir nun in der Lage die Signale, welche wir vom Mikrocontroller aus senden, auch mit einem Logikanalysator taktgenau zu messen. Nun möchte man manchmal auch die Antwort des angesteuerten Chips messen können, was uns auch zu der hier vorgestellten Lösung gebracht hat.
Wir bauen uns einen DIP-Y-Adapter!

So ist man in der Lage auf Platinen befindliche Steckleisten zu kontaktieren und die Signale auf zwei Geräte, in dem Fall den Logikanalysator und den Zielchip zu verteilen.

Weiterlesen