#bastelkram

ws01@diasp.org

Der "Doppelpiepser", die fußgängerfreunliche Alternative zur Klingel :-)

(Leicht bearbeites Repost eines mit #Pluspora leider verschwundenen Artikels)

piep piep!

Zum Probehören einfach ins Bild klicken

Beim Aufräumen fiel mir Anfang 2020 das hier abgebildete Teil in die Hand, eine Bastelei, die ich 2016 mit einem preiswerten Microcontroller auf die Schnelle zusammengeklöppelt hatte, auf Basis einer bei www.mikrocontroller.net gefundenen Idee. Der entsprechende Artikel ist hier bei mikrocontroller.net immer noch zu finden, incl. des ziemlich simplen Quellcodes. Ein ensprechendes #Mercurial -Repository ist zusammen mit dem Mercurial-Support von #Bitbucket untergegangen.

Zum besseren Verständnis, die Ausgangsfrage war

Ich möchte mit einer einfachen Schaltung so einen Doppelpieps erzeugen,
wie bei der FB vom Auto. Wie realisiere ich das am besten, NE 555 und
Piezo Lautsprecher scheinen dafür ja geeignet zu sein ?

Es geht hier um das Geräusch, das manche Autos mit der Hupe produzieren, wenn man es per Funkschlüssel auf- oder zuschließt. Meist geben die Blinker zusätzlich ein kurzes Signal, zweimal kurz oder einmal lang. Unsere jetzt fast 25 Jahre alte Famlienkutsche hat zwar einen Funkschlüssel, blinkt jedoch nur. 2016 war das aber noch weit verbreitet. Inzwischen höre ich es nur seltener.

Neben der Funktion als Partygag kann man den Überraschungseffekt (damals kannte praktisch jeder das Geräusch) durchaus auch beim #Radfahren nutzen, etwa wenn man mit Fußgängern zusammen fahren muss. Ich vermeide das zwar eisern, aber wenn ich den #Kottenforst, konkret den Bonner Stadtwald queren möchte, habe ich keine Alternative. An den meisten meiner Rennräder habe ich keine Klingel, sondern benutze meine Stimme, das funktioniert i.d.R. besser. Interessanterweise tut es der Überraschungseffekt aber noch besser, der sich ergibt, wenn man dieses Geräusch an einer Stelle vernimmt, wo man es nicht erwartet. Ich hab's später dann aber wieder drangegegeben, hauptsächlich weil der Gebrauch umständlich war. Hätte ich einen 3D-Drucker, hätte ich mir vmtl. ein kompaktes Gehäuse gedruckt, ein kleiner Taster, ein kleiner 3V-Akku und ein Piezo-Buzzer ohne eigene Elektronik dürften zusammen weniger Raum einnehmen als eine herkömmliche Klingel.

Konstruktion

Meine Realisierung unterscheidet sich von anderen vornehmlich durch ihren Minimalismus: ausser einem kleinen 8-Bit-Microcontroller names PIC10F320 werden keine weiteren elektronischen Bauteile benötigt. Tatsächlich habe ich diesen hier nur deswegen verwendet, weil ich einen herumliegen hatte, es hätten evtl auch weniger üppig ausgestattete getan. 😀 Dieser hier hat 0.448 KB Programmspeicher (ja, richtig gelesen, Kilobyte), so steht's im Datenblatt. Im Manual steht natürlich "program memory flash (words): 256". Diese Prozessorserie hat eine Harvard-Architektur und der Programmspeicher ist nicht byteorientiert. Was Bytes angeht: davon gibt es 64 Stück, von denen weniger als ein Drittel benötigt wurden.

Auf eine Zeichnung der Schaltung habe ich verzichtet, es ist neben Masse und Vdd eigentlich nur ein Datenpin (RA2) an den Buzzer anzuschließen. Details in Kopf des Quellcodes.

-> https://www.mystrobl.de/ws/pic/basteleien/doppelpiepser_main.c

Verwendet habe ich im Prototyp nicht die SMD-Version des Prozessors, sondern die für Prototyping immer noch recht praktische DIP-8-Variante, auf einem Steckbrett. Auf den im Foto sichbaren Spannungsregeler kann man bei Versorgung mit einer Lithium-Ionen-Zelle verzichten, diese Prozessoren funktionieren in einem weiten Spannungsbereich, wahlweise 1,8-3,6 V oder 2,3V-5,5V.

Der verwendete Microcontroller ist einer der kleinsten, die derzeit auf dem Markt sind. Attraktiv an den Teilen ist, daß sie sehr robuste I/O-Ports haben, äußerst simpel zu programmieren sind und daß man damit ohne nennenswerte Zusatzbeschaltung einfache deterministische Steuerungen bauen kann. Um ein halbes Dutzend Modelleisenbahnweichen anzusteuern und zwei Kontaktgleise abzufragen, braucht man keine multitaskingfähige CPU mit mehreren Kernen, bei der man schon bei der Frage, wie die umfangreiche Peripherie bzw. deren Kontrollregister zu initialisieren sind, auf mehr Lesestoff und Probleme stößt, als das Problem darstellt, das man eigentlich lösen wollte.

Wohlgemerkt, es geht hier nicht darum, Geld zu sparen. sondern darum, unnötige Komplexität zu vermeiden. Zwar gibt es durchaus Variationen solcher Controller aus chinesischen Quellen, die weniger als 3 Cent pro Stück kosten, und Controller wie der PIC10F200 aufwärts sind insbesondere in der für Breadboard-Basteleien besser geeigneten PDIP-Verpackung hierzulande recht teuer, Reichelt verlangte für einen PIC10F200 im Jahr 2019 54 Cent pro Stück, die SOT-23-6-Version für SMD-Platinen kostete aber nur 36 Cent. Aktuell (2024) empfiehlt Micrchip, den 10F200 nicht mehr zu verwenden, sondern den PIC10F322, der sich vom dem in dieser Bastelei hier verwendeten 10F320 nur durch den mit 512 Worten doppelt so grossen Programmflash unterscheidet. Für den 10F320 in der DIP-8-Ausführung bezahlt man bei Rechelt inzwischen 1,05 €. Für Basteleien wie diese ist das irrelevant, i.d.R. gibt man mehr Geld für Porto aus als für die Bauteile.

Die noch aus den Zeiten der TTL-Gräber bekannten DIP/DIL-Bauform nimmt man längst nur noch für Prototypen und selbst da im professionellen Umfeld seltener, weil viele neuere IC und Komponenten nur noch in diesen Bauformen verfügbar sind, z.T. auch aus technischen Gründen, etwa bei hohen Frequenzen. Dennoch, wenn man auf die Schnelle eine robuste Peripherieschaltung zusammenklöppeln will, ist ein Steckbrett oder ein Platinenabschnitt mit einem einfach steckbaren Controller oft die besser kontrollierbare Lösung, im Vergleich dazu, einen noch freien Pin einer vorhandenen komplexen Lösung verträglich mit einem nicht vollständig offengelegten oder verstandenen Softwarestack aus vielen Schichten auf deterministische Weise zu steuern, und das schnell.

https://www.sprut.de/electronic/pic/10f20x.htm gibt eine Übersicht über die einfach gestrickten Prozessoren der 200er-Serie und gibt einen Eindruck von der Größenordnung. Erforderlich für diese Bastelei erforderlich ist allerdings eine Besonderheit des 10LF32x , der NCO ("Numerially Controlled Oszillator"), der die Produktion einer Rechteckschwingung auf das Setzen von ein paar Steuerregistern beschränkt. Das Programm reduziert sich so auf zwei simple Schleifen. Faktisch macht der eigentliche Prozessor hier nicht mehr, als unterschiedlich lange zu warten.

#electronics #radfahren #klingel #bastelkram

ws01@diasp.org

Basteleien an meiner privaten Wolke - hier: der Stromausfall

Eine Fortsetzung dieser Schilderung

  • Zusammenfassung: wir hatten einen Stromausfall, eine Phase war weg. Als der Strom wieder da war, kam eines von zwei mit Proxmox betriebenen DeskMini 110-Kistchen nicht wieder hoch: mausetot. Ursache: CMOS fehlerhaft, so dass sich das BIOS mutmaßlich noch vor dem Initialisieren der Peripherie (incl. Displayschnittstellen) aufhängte.

Nach dem manuellen Löschen des CMOS, wozu das Mainboard ausgebaut werden muss, lief's wieder. Aaaber - die 2017 gekauften Kistchen sind jetzt schon knapp sechs Jahre alt, sehr wahrscheinlich, dass der Pufferakku (oder, wie hier, die CR2032-Lithiumzelle) nicht mehr genügend Spannung hat. Gemessen hatte ich nicht bzw. nur flüchtig, weil das nur mit Verrenkungen möglich ist: es gibt da nicht die übliche Fassung, sondern die mit angeschweissten Crimpfahnen und per Schrumpfschlauch isolierte Zelle wird mit einem winzigen Molexstecker mit dem Mainboard verbunden und ist ansonsten mit einem Stück zweiseitigem Klebeband auf einer freien Fläche auf der Rückseite des Mainboards festgeklebt. Man braucht zwei Stecknadeln, zwei Krokodilklemmen und einiges an Vorsicht, um das mit einem Vielfachmessinstrument messen zu können. Abgesehen davon, solche Teile habe ich nicht im Hause, wollte aber nicht ohne Infrastruktur bleiben. Und solange die Maschinchen am Netzteil hängen, bedarf es der Pufferung nicht.

Da keiner der von mir sonst bevorzugten Lieferanten diese Bauform anbot, habe aus dem wie üblich konfusen Angebot von Amazon einen Anbieter rausgesucht und fünf Stück bestellt und mich heute an die Arbeit gemacht. Da in einigen Reviews darüber gemeckert wurde, die gelieferten Batterien hätten verpolte Anschlüsse, habe ich vorsichtshalber das abgezogene Original von Asrock mit den gelieferten Batterien verglichen.

Schwarz ist das Original, gelb eine der gelieferten Zellen, nach dem Kürzen und Vertauschen der Anschlüsse. Der Stecker war in der Tat falsch herum angecrimpt, die Farben der Kabel stimmen, rot ist plus, schwarz minus. Wobei unklar ist, ob es hier einfach keinen Standard gibt, was allerdings auch nicht viel helfen würde, da weder Asrock in den Unterlagen überhaupt mehr verrät, als in einer Zeichnung zu zeigen, wo sich die Batterie befindet, noch die Anbieter umfangreiche Kompatibilitätslisten führen. Immerhin passt der Stecker. Also: ein Stück rausgeschnitten, passende Schrumpfschläuche rausgesucht, abisoliert und verlötet. Wie man so sagt, passt, wackelt und hat Luft. :-)

Vor dem Einbau der neuen Batterie

Nach dem Einbau der modifzierten neuen Batterie

Nach dem  Umbau

Als vorsichtiger Mensch habe ich erst die Ersatz- und Testmaschine bestückt, geprüft, ob die Pufferbatterie auch tatsächlich puffert und dann eine zweite Zelle vorbereitet, eingebaut und auch da getestet. Immerhin hängt hier mein ganzer Flohzirkus dran, interner Webserver (ein Hybrid aus Zope und Plone, dessen Workspace bis 2008 zurückreicht), Telefonlog nebst Telefonbuch (eine kleine Django-Anwendung) noch aus ISDN-Zeiten, der bis Anfang 2000 zurückreicht, Proxy, ein OSM-Tileserver, ein paar verwaiste VM für Entwicklungszwecke, aus der Zeit, als ich noch mehr mit Microcontrollern herumgebastelt habe, ein CVS aus uralten Zeiten als Archiv, ein Mercurial-Host, den ich immer noch heftig nutze (Git mag ich nicht), usw. usf. Ich habe mich schon lange daran gewöhnt, dass das alles mehr oder weniger ohne Unterbrechungen zur Verfügung steht.

Und der Stromausfall?

Nun, die erste geplante Stromabschaltung wurde angekündigt, ich hab' morgens alles brav heruntergefahren, auf die Abschaltung gewartet und dann eine halbe Stunde nach Ende des maximalen Zeitintervalls angerufen. Nichts war, die Reparatur des defekten Hausanschlusses bei einem der Nachbarn musste offenbar verschoben werden. Also neues Spiel, neues Glück in ein paar Tagen. :-/

Und ich hab' immer gelästert, dass wir hier in der Stadt wenigstens einen Vorteil gegenüber den Kollegen auf dem Lande hätten: eine stabile Stromversorgung, die nicht bei jedem Gewitter die Grätsche macht.

#proxmox #heimwolke #deskmini #bastelkram