<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Präzision Archives - Nerd Corner</title>
	<atom:link href="https://nerd-corner.com/de/tag/praezision/feed/" rel="self" type="application/rss+xml" />
	<link>https://nerd-corner.com/de/tag/praezision/</link>
	<description>Craft your dreams!</description>
	<lastBuildDate>Tue, 19 Aug 2025 16:21:22 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>

<image>
	<url>https://nerd-corner.com/wp-content/uploads/2019/10/cropped-LogoNerdCorner-2-32x32.png</url>
	<title>Präzision Archives - Nerd Corner</title>
	<link>https://nerd-corner.com/de/tag/praezision/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>DIY Solarpanelhalterung für 2W Panels</title>
		<link>https://nerd-corner.com/de/diy-solarpanelhalterung-fuer-2w-panels/</link>
					<comments>https://nerd-corner.com/de/diy-solarpanelhalterung-fuer-2w-panels/#respond</comments>
		
		<dc:creator><![CDATA[Nerds]]></dc:creator>
		<pubDate>Sun, 22 Jun 2025 17:41:40 +0000</pubDate>
				<category><![CDATA[DIY]]></category>
		<category><![CDATA[Hardware-DE]]></category>
		<category><![CDATA[3D Druck]]></category>
		<category><![CDATA[CAD]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Druck]]></category>
		<category><![CDATA[Filament]]></category>
		<category><![CDATA[Gehäuse]]></category>
		<category><![CDATA[Halter]]></category>
		<category><![CDATA[Halterung]]></category>
		<category><![CDATA[löten]]></category>
		<category><![CDATA[Präzision]]></category>
		<category><![CDATA[PV]]></category>
		<category><![CDATA[Schritt für Schritt Anweisung]]></category>
		<category><![CDATA[Solar]]></category>
		<category><![CDATA[Solar panel]]></category>
		<category><![CDATA[Solid Works]]></category>
		<category><![CDATA[STL]]></category>
		<category><![CDATA[Verkabelung]]></category>
		<guid isPermaLink="false">https://nerd-corner.com/?p=1702</guid>

					<description><![CDATA[<p>Oft braucht es keine großen Stromquellen, um einen 18650-Akku zuverlässig zu laden. Leider sind passende, kleine Solarpanels schwer zu finden – viele sind polykristallin, besitzen &#8230; </p>
<p>The post <a href="https://nerd-corner.com/de/diy-solarpanelhalterung-fuer-2w-panels/">DIY Solarpanelhalterung für 2W Panels</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p data-start="155" data-end="778">Oft braucht es keine großen Stromquellen, um einen 18650-Akku zuverlässig zu laden. Leider sind passende, kleine Solarpanels schwer zu finden – viele sind polykristallin, besitzen kein Gehäuse oder sind lediglich laminiert und mit einfachen Ösen zur Befestigung versehen. Für eine stabile und wetterfeste Montage im Außenbereich ist das allerdings selten ideal. Wer Wert auf eine saubere, dauerhafte Installation legt, braucht ein robustes Gehäuse mit verstellbarem Halter. Für meine Outdoor-Anwendungen reicht in der Regel eine Leistung von etwa 1,5 Watt – da ist ein monokristallines 2-Watt-Panel mit entsprechender Solarpanelhalterung genau die richtige Wahl.</p>
<p data-start="155" data-end="778"><img fetchpriority="high" decoding="async" class="zoooom aligncenter wp-image-1714" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanel-stand.jpg" alt="" width="716" height="800" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanel-stand.jpg 1393w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanel-stand-268x300.jpg 268w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanel-stand-916x1024.jpg 916w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanel-stand-768x858.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanel-stand-1374x1536.jpg 1374w" sizes="(max-width: 716px) 100vw, 716px" /></p>
<p data-start="155" data-end="778"><em><strong>Das könnte dich auch interessieren: </strong><a href="https://nerd-corner.com/de/diy-powerbank-mit-spannungsregler-und-voltmeter/">DIY Powerbank mit Spannungsregler und Voltmeter</a></em></p>
<h2 data-start="179" data-end="214">Montageplanung und Materialwahl</h2>
<p data-start="216" data-end="416">Bevor ich mit dem Bau beginne, überlege ich mir zunächst, wo die Solarpanels montiert werden sollen: Eins am Gartenschuppen, zwei am Balkongeländer,  und eines am Mast der Wetterstation.</p>
<p data-start="418" data-end="721">Am Gartenschuppen steht eine gerade Holzwand zur Verfügung, was einen flachen Halter erforderlich macht. Das Balkongeländer sowie der Mast hingegen haben jeweils einen Durchmesser von 30 mm – hier ist ein Halter mit Rundung notwendig. Aktuell benötige ich also zwei unterschiedliche Befestigungstypen.</p>
<p data-start="723" data-end="972">Als Solarpanel verwende ich ein monokristallines 2-Watt-Modul mit etwa 6 V Ausgangsspannung (siehe <em data-start="822" data-end="834">Bild 1.0.1</em>). Für den elektrischen Anschluss am Panel habe ich mich für eine Standard-Hohlbuchse mit 5,5×2,1 mm entschieden (siehe <em data-start="956" data-end="968">Bild 1.0.2</em>). Kabel und Schrauben sind in der Darstellung nicht enthalten, da sie je nach Anwendung variieren können. Die Panels sind im Fünfer- oder Zehnerpack bei diversen Onlinehändlern erhältlich. Ihre Abmessungen betragen 120 × 110 mm (Länge × Breite), wobei die Höhe zwischen 1,3 mm und 1,8 mm schwanken kann.</p>
<p><img decoding="async" class="aligncenter wp-image-1713 zoooom" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter1.jpg" alt="" width="2276" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter1.jpg 2279w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter1-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter1-1024x598.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter1-768x449.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter1-1536x898.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter1-2048x1197.jpg 2048w" sizes="(max-width: 2276px) 100vw, 2276px" /></p>
<h2 data-start="175" data-end="204">Konstruktion des Gehäuses</h2>
<p data-start="206" data-end="477">Das zentrale Bauteil für die Solarpanelhalterung ist der Rahmen. Er übernimmt sowohl die Stabilität als auch die Dichtfunktion des Gehäuses. Der Rahmen muss verwindungssteif sein, alle notwendigen Gewinde aufnehmen können und dabei dennoch kompakt bleiben. Das Solarpanel wird von hinten mit Leisten in seinen Sitz gepresst, sodass es an der Vorderseite dicht abschließt.<br data-start="618" data-end="621" />Um einen gleichmäßigen Anpressdruck zu erzeugen, sind mehrere Schrauben notwendig (<em data-start="708" data-end="726">siehe Bild 2.0.1</em>).</p>
<p data-start="732" data-end="968">Auf der Rückseite befindet sich ein Deckel (<em data-start="780" data-end="792">Bild 2.0.2</em>), der zur Stabilität in X-Form verstärkt ist. Dieser Deckel nimmt außerdem die Hohlbuchse (5,5 × 2,1 mm) auf, die später mit einer kleinen Brücke befestigt wird. Eine der insgesamt vier Anpressleisten, die das Panel in den Rahmen drücken, ist in <em data-start="1058" data-end="1070">Bild 2.0.3</em> zu sehen. Zur Befestigung an Geländern oder Wänden kommt der Gelenkhalter (<em data-start="1153" data-end="1165">Bild 2.0.4</em>) zum Einsatz. Dieser dient als Aufnahme für den Haltehebel, der das Gehäuse sicher fixiert und eine flexible Ausrichtung ermöglicht.</p>
<p><img decoding="async" class="aligncenter wp-image-1712 zoooom" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2.jpg" alt="" width="2265" height="1320" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2.jpg 2277w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-1024x597.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-768x448.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-1536x895.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-2048x1194.jpg 2048w" sizes="(max-width: 2265px) 100vw, 2265px" /></p>
<p>Auf Bild 2.1.1 ist der Halte Arm zur Geländer Befestigung angezeigt mit einem 30mm Durchmesser am Ende. Das Gegenstück für den Halter sieht man auf Bild 2.1.2. Die Brücke (Bild 2.1.3) zum Befestigen der Hohlbuchse am Deckel.</p>
<p><img loading="lazy" decoding="async" class="zoooom aligncenter wp-image-1711" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-1.jpg" alt="Solarpanelhalterung CAD Teile" width="2276" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-1.jpg 2279w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-1-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-1-1024x598.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-1-768x449.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-1-1536x898.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter2-1-2048x1197.jpg 2048w" sizes="auto, (max-width: 2276px) 100vw, 2276px" /></p>
<h2 data-start="61" data-end="86">3D-Druck der Bauteile</h2>
<p data-start="88" data-end="354">Für den 3D-Druck habe ich folgende Druckausrichtungen für den Prusa MK4 gewählt (<em data-start="181" data-end="209">siehe Bild 3.0.1 und 3.0.2</em>).<br data-start="211" data-end="214" />Besonders wichtig: Die Leiste muss natürlich viermal gedruckt werden, da sie an allen vier Seiten des Solarpanels zum Einsatz kommt.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1710 zoooom" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3.jpg" alt="" width="2265" height="1320" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3.jpg 2277w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-1024x597.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-768x448.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-1536x895.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-2048x1194.jpg 2048w" sizes="auto, (max-width: 2265px) 100vw, 2265px" /></p>
<h3 data-start="162" data-end="406">Gewindeschneiden</h3>
<p data-start="162" data-end="406">Kommen wir nun zu meiner Lieblingsbeschäftigung: dem Gewindeschneiden. Zugegeben – gerade im Rahmen gibt es einiges zu tun (<em data-start="292" data-end="310">siehe Bild 3.1.1</em>): Die grünen Markierungen zeigen 12× M3-Gewinde, die gelben 4× M3-Gewinde an.</p>
<p data-start="408" data-end="795">Für alle, die nicht zu den größten Fans des Gewindeschneidens zählen, gibt es eine alternative Variante des Rahmens. Dieser ist mit Schlitzen zur Aufnahme von normalen M3-Muttern ausgestattet. Die passende Datei trägt den Namen: Deckel110x120_V1-2.stl (<em data-start="675" data-end="693">siehe Bild 3.1.3</em>).<br data-start="695" data-end="698" />Die Vertiefungen für die Muttern sind zusätzlich in <em data-start="754" data-end="766">Bild 3.1.4</em> und <em data-start="771" data-end="778">3.1.5</em> gut zu erkennen.</p>
<p data-start="797" data-end="1074">Beim Rückendeckel (<em data-start="820" data-end="832">Bild 3.1.2</em>) lässt sich das Schneiden von Gewinden allerdings kaum vermeiden: Hier sind 3× M3-Gewinde und 2× M2-Gewinde notwendig.<br data-start="961" data-end="964" data-is-only-node="" />Alternativ können jedoch auch selbstschneidende Schrauben verwendet werden – das spart Werkzeuge und Zeit.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1709 zoooom" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-1.jpg" alt="" width="2276" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-1.jpg 2279w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-1-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-1-1024x598.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-1-768x449.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-1-1536x898.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter3-1-2048x1197.jpg 2048w" sizes="auto, (max-width: 2276px) 100vw, 2276px" /></p>
<h2 data-start="165" data-end="289">Verlöten und Montage</h2>
<p data-start="165" data-end="289">Wenn alle 3D-Druckteile gereinigt und mit Gewinden versehen sind, kann das Solarpanel angeschlossen und verlötet werden.</p>
<h3 data-start="165" data-end="289">Elektrische Anschlüsse</h3>
<p data-start="291" data-end="519">Die erste Hürde besteht darin, herauszufinden, wo sich der Pluspol am Panel befindet.<br data-start="384" data-end="387" />Auf der Rückseite des Solarpanels befinden sich lediglich zwei Lötlaschen, aber keine Kennzeichnung – also: Plus oder Minus? Um das schnell und eindeutig festzustellen, benötigen wir ein Multimeter. Stellen wir es auf Gleichspannungsmessung (DC) ein, hilft es uns, die Polarität zu erkennen.</p>
<p data-start="699" data-end="1045">Im Bild 4.0.1: Die rote Leitung (Plus) des Multimeters liegt auf einer der Lötlaschen, die schwarze Leitung (Minus) auf der anderen. Erscheint nun im Display ein Minuszeichen vor dem Messwert, bedeutet das, dass die rote Leitung am Minuspol liegt – also ist die gegenüberliegende Lasche der Pluspol des Solarpanels.</p>
<p data-start="1047" data-end="1363">Im Bild 4.0.2 sehen wir die umgekehrte Konfiguration: Die rote Leitung liegt auf dem Pluspol des Panels, die schwarze Leitung auf dem Minuspol. In diesem Fall erscheint kein Minuszeichen im Display – die Polarität stimmt,<br data-start="1294" data-end="1297" />und wir wissen nun sicher, wo der Pluspol des Solarpanels ist.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1708 zoooom" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4.jpg" alt="" width="2265" height="1320" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4.jpg 2277w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-1024x597.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-768x448.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-1536x895.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-2048x1194.jpg 2048w" sizes="auto, (max-width: 2265px) 100vw, 2265px" /></p>
<p data-start="79" data-end="137">Jetzt wird die Hohlbuchse mit dem Solarpanel verlötet. Welche Anschlüsse dabei verbunden werden müssen, zeigt Bild 4.1.1 deutlich.<br data-start="222" data-end="225" />Im Bild 4.1.2 sieht man die fertige Verlötung im eingebauten Zustand.</p>
<p data-start="304" data-end="614">Zusätzlich habe ich am Pluspol der Hohlbuchse eine Diode angelötet (siehe Bild 4.1.3).<br data-start="398" data-end="401" />Diese schützt vor Rückstrom: Sollte am angeschlossenen Verbraucher keine eigene Schutzdiode vorhanden sein, würde das Solarpanel im Dunkeln Energie aus dem Akku ziehen – und ungewollt als Heizung arbeiten.</p>
<p data-start="616" data-end="772">Ein typisches Beispiel:<br data-start="639" data-end="642" />Wenn ein Laderegler keine integrierte Diode besitzt, kann der Akku das Panel bei fehlendem Sonnenlicht rückwärts entladen.</p>
<p data-start="774" data-end="1004">Die Einbaurichtung der Diode ist entscheidend, damit der Strom nur in eine Richtung fließen kann.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1707 zoooom" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-1.jpg" alt="" width="2276" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-1.jpg 2279w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-1-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-1-1024x598.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-1-768x449.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-1-1536x898.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-1-2048x1197.jpg 2048w" sizes="auto, (max-width: 2276px) 100vw, 2276px" /></p>
<h3 data-start="62" data-end="284">Montage der Hohlbuchse und Einsetzen des Panels</h3>
<p data-start="62" data-end="284">Die Montage der verlöteten Hohlbuchse an der Haltebrücke ist in Bild 4.2.1 dargestellt.<br data-start="157" data-end="160" />Dazu wird die Hohlbuchse in die große Öffnung der Haltebrücke geschoben, bis das Gewinde auf der anderen Seite herausragt. Anschließend wird die Mutter auf das Gewinde gesetzt und festgezogen – das Ergebnis zeigt Bild 4.2.2. Nun wird das Solarpanel in den Haltesitz des Rahmens eingesetzt (siehe Bild 4.2.3, roter Rahmen).<br data-start="496" data-end="499" />Wer die Dichtigkeit erhöhen möchte, kann vor dem Einsetzen des Panels etwas elastischen Kleber gleichmäßig in den Sitz auftragen. Sitzt das Solarpanel korrekt, wird die erste Leiste aufgesetzt und mit einer Schraube in der Mitte leicht angezogen (siehe Bild 4.2.4, magenta Kreis). Zur Veranschaulichung nochmal eine Seitenansicht in Bild 4.2.5.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1706 zoooom" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-2.jpg" alt="" width="2264" height="1320" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-2.jpg 2278w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-2-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-2-1024x597.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-2-768x448.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-2-1536x895.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-2-2048x1194.jpg 2048w" sizes="auto, (max-width: 2264px) 100vw, 2264px" /></p>
<h3 data-start="62" data-end="294">Befestigung der Leisten und Verschraubung</h3>
<p data-start="62" data-end="294">Nach und nach werden die restlichen Leisten jeweils mit der Schraube in der Mitte angebracht (siehe Bild 4.3.1). Anschließend werden die restlichen Schrauben eingesetzt, aber noch nicht fest angezogen (siehe Bild 4.3.2). Wenn das Solarpanel gleichmäßig sitzt, werden zuerst die mittleren Schrauben jeder Leiste fest angezogen.<br data-start="401" data-end="404" />Danach werden alle übrigen Schrauben festgezogen und nach einer kurzen Zeit nochmals nachgezogen. Falls das Solarpanel noch Spiel hat, kann man zwischen Solarpanel und Leiste etwas unterlegen, bis es fest sitzt. In Bild 4.3.3 sieht man, wie die Hohlbuchse samt Haltebrücke an der Innenseite des Rückendeckels befestigt wird.<br data-start="738" data-end="741" />Zum Abschluss wird der Rückendeckel mit vier Schrauben auf den Rahmen geschraubt (siehe Bild 4.3.4).</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1705 zoooom" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-3.jpg" alt="" width="2276" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-3.jpg 2279w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-3-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-3-1024x598.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-3-768x449.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-3-1536x898.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-3-2048x1197.jpg 2048w" sizes="auto, (max-width: 2276px) 100vw, 2276px" /></p>
<p>Bis zur Fertigstellung des Halters sind nur noch wenige Schritte nötig:<br data-start="139" data-end="142" />Zuerst wird die M6-Mutter in den Gelenkhalter eingepresst (siehe Bild 4.4.1).<br data-start="223" data-end="226" />Anschließend wird der Halter für das Geländer mit einer M6-Schraube am Gelenkhalter befestigt (siehe Bild 4.4.2).<br data-start="343" data-end="346" />Der Gelenkhalter wird nun mit drei M3-Schrauben am Rückendeckel verschraubt.<br data-start="422" data-end="425" />Nicht zu vergessen: Die M3-Muttern müssen in den Gegenhalter eingepresst werden, der später für die Montage am Geländer verwendet wird (siehe Bild 4.4.4).</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1704 zoooom" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-4.jpg" alt="" width="2264" height="1320" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-4.jpg 2278w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-4-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-4-1024x597.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-4-768x448.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-4-1536x895.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-4-2048x1194.jpg 2048w" sizes="auto, (max-width: 2264px) 100vw, 2264px" /></p>
<h2>Explosionszeichnung</h2>
<p>Zur besseren Übersicht gibt es eine Explosionszeichnung des Solarpanelhalters in Bild 4.5.1.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1703 zoooom" src="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-5.jpg" alt="" width="2264" height="1320" srcset="https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-5.jpg 2278w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-5-300x175.jpg 300w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-5-1024x597.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-5-768x448.jpg 768w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-5-1536x895.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2025/06/solarpanelhalter4-5-2048x1194.jpg 2048w" sizes="auto, (max-width: 2264px) 100vw, 2264px" /></p>
<h3>Anmerkung</h3>
<p data-start="64" data-end="682">Natürlich gibt es auch alternative Befestigungsmöglichkeiten. So könnte man das Solarpanel beispielsweise im Garten am Blumenbeet anbringen – dort besteht jedoch die Gefahr, dass wachsende Pflanzen es nach und nach verdecken. In diesem Fall bietet sich ein Halter mit Aluminiumrohr und Erdspieß an (siehe Bild 5.0.1).<br data-start="381" data-end="384" />Auch auf dem Balkon lässt sich das Panel befestigen, etwa an Blumenkästen, die das Geländer verdecken. Hierfür gibt es ebenfalls eine passende Halterung mit Aluminiumrohr (siehe Bild 5.0.2).<br data-start="574" data-end="577" />Darüber hinaus ist auch eine Montage an einer Wand oder an einem Pfosten vorgesehen (siehe Bild 5.0.3).</p>
<p><img decoding="async" src="https://elepla.de/images/Powerbank/2W_Solarpanel_Halterrahmen/5-0.jpg" alt="5 0" /></p>
<p data-start="66" data-end="163">Des Weiteren plane ich die Konstruktion eines Solarpanelhalters mit integriertem USB-C-Ausgang.</p>
<p data-start="165" data-end="442">Das Solarpanel ist eine ideale Ergänzung für meine Kleingeräte und Sensoren im Außenbereich – und das sogar im Winter! Die benötigten Kabel lassen sich je nach Anforderung entweder selbst konfektionieren oder einfach kaufen. Grundsätzlich gilt dabei: je kürzer, desto besser.</p>
<p data-start="444" data-end="558">Viel Freude beim Nachbauen – oder vielleicht hat dich dieses Projekt sogar inspiriert, selbst kreativ zu werden.</p>
<h2>Dateien zum Herunterladen</h2>
<ul>
<li><a href="https://www.thingiverse.com/thing:6835041">Solarpanelhalterung Gehäuse</a></li>
</ul>
<p>The post <a href="https://nerd-corner.com/de/diy-solarpanelhalterung-fuer-2w-panels/">DIY Solarpanelhalterung für 2W Panels</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nerd-corner.com/de/diy-solarpanelhalterung-fuer-2w-panels/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>DIY Tastenfeldschloss &#8211; 3D Druck und Programmierung</title>
		<link>https://nerd-corner.com/de/diy-tastenfeldschloss-3d-druck-und-programmierung/</link>
					<comments>https://nerd-corner.com/de/diy-tastenfeldschloss-3d-druck-und-programmierung/#respond</comments>
		
		<dc:creator><![CDATA[Nerds]]></dc:creator>
		<pubDate>Tue, 17 Dec 2024 15:10:58 +0000</pubDate>
				<category><![CDATA[Arduino Projekte]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Hardware-DE]]></category>
		<category><![CDATA[Software-DE]]></category>
		<category><![CDATA[SolidWorks-DE]]></category>
		<category><![CDATA[3D Druck]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[C Programmierung]]></category>
		<category><![CDATA[CAD]]></category>
		<category><![CDATA[Fritzing]]></category>
		<category><![CDATA[Gehäuse]]></category>
		<category><![CDATA[Genauigkeit]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Präzision]]></category>
		<category><![CDATA[Schloss]]></category>
		<category><![CDATA[Solid Works]]></category>
		<category><![CDATA[Tastenfeld]]></category>
		<category><![CDATA[Tastenfeldschloss]]></category>
		<category><![CDATA[Verkabelung]]></category>
		<category><![CDATA[Version 1]]></category>
		<guid isPermaLink="false">https://nerd-corner.com/?p=1642</guid>

					<description><![CDATA[<p>Ein Schrank, der immer abgeschlossen sein soll, und fünf Personen, die darauf zugreifen müssen – eine klassische Herausforderung. Die naheliegenden Lösungen? Fünf Schlüssel im Umlauf &#8230; </p>
<p>The post <a href="https://nerd-corner.com/de/diy-tastenfeldschloss-3d-druck-und-programmierung/">DIY Tastenfeldschloss &#8211; 3D Druck und Programmierung</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p data-start="111" data-end="523">Ein Schrank, der immer abgeschlossen sein soll, und fünf Personen, die darauf zugreifen müssen – eine klassische Herausforderung. Die naheliegenden Lösungen? Fünf Schlüssel im Umlauf oder eine einzige Person, die den Schlüssel verwaltet, sodass man ihn sich jedes Mal ausleihen muss. Doch wir kennen das alle: Am Ende liegt der Schlüssel dann doch auf dem Schrank, unter dem Teppich oder hinter dem Blumentopf.</p>
<p data-start="525" data-end="926">Aber wäre es nicht viel praktischer, ganz auf physische Schlüssel zu verzichten? Heutzutage gibt es zahlreiche Möglichkeiten, ein Schloss zu öffnen: Fingerabdruckscanner, Gesichtserkennung, NFC, Zahlencodes, Stellräder – oder natürlich brachiale Methoden wie Sprengstoff und rohe Gewalt. Doch wenn man eine preiswerte, gewaltfreie und einfache Lösung sucht, rückt das Tastenfeldschloss in den Fokus.</p>
<p data-start="928" data-end="1117">Überraschenderweise gibt es im Internet kaum wirklich gute DIY-Lösungen für Hobbybastler. Also packe ich es selbst an – mein erstes Tastenfeld-Schloss, das ich schlicht „Version 1“ nenne.</p>
<p data-start="928" data-end="1117"><em><strong>Das könnte dich auch interessieren: </strong><a href="https://nerd-corner.com/de/diy-powerbank-mit-spannungsregler-und-voltmeter/">DIY Powerbank mit Spannungsregler und Voltmeter</a></em></p>
<h2>Konstruktion des Gehäuses</h2>
<p data-start="89" data-end="285">Zunächst liegt der Fokus auf dem Gehäuse und der Aufnahme für das Tastenfeld. Die erste Frage, die sich dabei immer stellt: Wie groß soll es sein? Die Antwort hängt von mehreren Faktoren ab:</p>
<ul data-start="287" data-end="664">
<li data-start="287" data-end="390">Welche Komponenten werden benötigt? Jedes Bauteil nimmt Platz ein und beeinflusst die Bauweise.</li>
<li data-start="391" data-end="529">Wie viel Raum beanspruchen die Komponenten? Ein kompaktes Design ist vorteilhaft, darf aber nicht die Funktionalität einschränken.</li>
<li data-start="530" data-end="664">Wie sind Haptik und Bedienbarkeit? Das Tastenfeld sollte angenehm zu bedienen sein, ohne dass es zu eng oder unpraktisch wird.</li>
</ul>
<p data-start="666" data-end="784">Diese Überlegungen bilden die Grundlage für das Gehäusedesign – denn eine gute Planung spart später Zeit und Nerven.</p>
<h3 data-start="98" data-end="130">Was kommt ins Gehäuse?</h3>
<p data-start="132" data-end="238">Zentraler Bestandteil ist natürlich das Membrantastenfeld (1.0.1). Es hat die folgenden Abmessungen:</p>
<ul data-start="240" data-end="335">
<li data-start="240" data-end="261">Breite: 69 mm</li>
<li data-start="262" data-end="282">Länge: 76 mm</li>
<li data-start="283" data-end="335">Dicke: 0,6 mm (bzw. 0,95 mm über den Tasten)</li>
</ul>
<p data-start="337" data-end="515">Zusätzlich verfügt das Tastenfeld über ein Flachbandkabel mit DuPont-Buchsen zum Anschluss an einen Mikrocontroller. Das Kabel selbst ist 85 mm lang und 17,78 mm breit.</p>
<p data-start="517" data-end="773">Die Schaltzentrale des Schlosses bildet der Nano (1.0.2). Um ihn sauber im Gehäuse unterzubringen und die Kabelverbindungen möglichst komfortabel zu gestalten, habe ich mich für ein Nano-Expansionsboard mit Schraubklemmen (1.0.4) entschieden.</p>
<p data-start="775" data-end="938">Für die Notstromversorgung kommt eine Hohlbuchse (5,5 x 2,1 mm, 1.0.4) zum Einsatz, damit das Schloss auch bei einem Stromausfall weiterhin funktioniert.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1671 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/1-0-1.jpg" alt="tastenfeldschloss Bauteile" width="2310" height="1324" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/1-0-1.jpg 2318w, https://nerd-corner.com/wp-content/uploads/2024/12/1-0-1-300x172.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/1-0-1-1024x587.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/1-0-1-768x440.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/1-0-1-1536x881.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/1-0-1-2048x1174.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<p>Die Stift- und Buchsenleisten (1.1.1) dienen als zentrale Stromverteilung und werden später auf die Lochrasterplatte (1.1.2) gelötet. Damit alle Komponenten zuverlässig verbunden werden, kommen Jumperkabel (1.1.3) zum Einsatz. Je nach Position der Bauteile sind unterschiedliche Längen erforderlich – in diesem Fall 10 cm und 20 cm.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1670 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/1-1.jpg" alt="" width="2310" height="1327" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/1-1.jpg 2321w, https://nerd-corner.com/wp-content/uploads/2024/12/1-1-300x172.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/1-1-1024x588.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/1-1-768x441.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/1-1-1536x882.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/1-1-2048x1176.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<p data-start="71" data-end="316">Für die Statusanzeige des Tastenfeldschlosses setze ich auf Neo-Pixel – adressierbare LEDs vom Typ WS2812b (1.2.1). Damit lassen sich verschiedene Farben und Effekte steuern, um den aktuellen Zustand des Schlosses visuell darzustellen.</p>
<p data-start="318" data-end="394">Auf die Positionierung der Schrauben gehe ich später noch genauer ein.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1669 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/1-2.jpg" alt="" width="2320" height="1324" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/1-2.jpg 2331w, https://nerd-corner.com/wp-content/uploads/2024/12/1-2-300x171.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/1-2-1024x584.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/1-2-768x438.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/1-2-1536x876.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/1-2-2048x1169.jpg 2048w, https://nerd-corner.com/wp-content/uploads/2024/12/1-2-1400x800.jpg 1400w" sizes="auto, (max-width: 2320px) 100vw, 2320px" /></p>
<p data-start="99" data-end="320">Nachdem die Komponenten nun feststehen, kann ich mir Gedanken über die Größe des Gehäuses machen. Diese wird nicht nur durch die verbauten Elemente bestimmt, sondern vor allem durch die Bedienbarkeit und Haptik.</p>
<p data-start="322" data-end="804">Tastenfelder begegnen uns täglich – an Bankautomaten, Telefonen, Türschlossanlagen und natürlich Smartphones. Die Entscheidung für die Tiefe des Gehäuses basiert auf einer positiven Erinnerung an meinen vorletzten Arbeitsplatz: Das dortige Tastenfeldschloss am Eingang war erhöht und von beiden Seiten gut zugänglich. Man konnte es bequem mit dem rechten oder linken Daumen bedienen, und die abgerundeten Ecken sorgten für eine angenehme Haptik beim Auflegen der Hand.</p>
<h2 data-start="806" data-end="829">Tastenfeldschloss Gehäusedesign</h2>
<p data-start="830" data-end="1165">Daraus ergibt sich eine Tiefe von 45 mm (2.0.3). Für eine bessere Ergonomie erhalten die Ecken einen Radius von 15 mm (R15) und die umlaufenden oberen Kanten einen Radius von 10 mm (R10). Mir ist bewusst, dass diese Verrundungen den Innenraum leicht verkleinern, aber der Komfort und die Optik überwiegen diesen Nachteil.</p>
<p data-start="1167" data-end="1511">Die Breite und Höhe des Gehäuses ergeben sich aus den einzubauenden Komponenten. Dabei muss auch der Platz für die Verkabelung berücksichtigt werden. Besonders wichtig: Der Nano sollte im eingebauten Zustand weiterhin mit einem handelsüblichen USB-Mini-Kabel erreichbar sein, um beispielsweise neue Programme aufspielen zu können.</p>
<h3 data-start="1513" data-end="1546">Montage und Befestigung</h3>
<ul data-start="1547" data-end="2275">
<li data-start="1547" data-end="1646">Vier M3-Gewinde (2.0.1) an der Innenseite ermöglichen das Anschrauben der Trägerplatte.</li>
<li data-start="1647" data-end="1787">Zusätzlich gibt es vier Montagepunkte mit Ø4,2 mm Bohrungen zur Befestigung des Gehäuses an einer Tür, einem Deckel oder einer Wand.</li>
<li data-start="1788" data-end="1941">Das Gehäuse erhält ein Fenster (2.0.2) mit 60 × 67 mm, das für das Tastenfeld vorgesehen ist. Dieses wird später mit der Trägerplatte ausgefüllt.</li>
<li data-start="1942" data-end="2080">Haltesäulen mit M2-Gewinde sowie die Öffnung für die Hohlbuchse (1.0.4) sind mit orangen Ellipsen markiert (2.0.1, 2.0.3).</li>
<li data-start="2081" data-end="2165">Das nächste Bild (2.0.4) zeigt die Außenmaße: 110 mm Breite und 117 mm Höhe.</li>
<li data-start="2166" data-end="2275">Außerdem ist ein Durchbruch bzw. Schlitz von 50 mm Länge für die LED-Blende (2.0.5) erforderlich.</li>
</ul>
<p data-start="2277" data-end="2405">Für die Wandstärke des Gehäuses habe ich durchgehend 2 mm vorgesehen – stabil genug für den vorgesehenen Einsatzzweck.</p>
<p data-start="2407" data-end="2508">Mit der abgeschlossenen Gehäusekonstruktion können wir nun mit den weiteren Komponenten fortfahren.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1668 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/2-0-1.jpg" alt="Tastenfeldschloss Gehäuse" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/2-0-1.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/2-0-1-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/2-0-1-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/2-0-1-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/2-0-1-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/2-0-1-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h3 data-start="91" data-end="147">Die Trägerplatte – das zentrale Montageelement</h3>
<p data-start="149" data-end="389">Die nächste wichtige Komponente ist die Trägerplatte. Der Name erklärt sich von selbst: Bis auf die Hohlbuchse werden hier alle Bauteile befestigt. Dieses System bietet mehrere Vorteile gegenüber einer direkten Montage im Gehäuse:</p>
<p data-start="391" data-end="771"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Einfache Montage außerhalb des Gehäuses – Mehr Platz und bessere Handhabung bei der Verkabelung.<br data-start="493" data-end="496" /><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Modularität – Verschiedene Trägerplatten mit unterschiedlichen Komponenten sind möglich.<br data-start="590" data-end="593" /><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Schlichtes Gehäusedesign – Die Gehäusekonstruktion bleibt einfacher und flexibler.<br data-start="681" data-end="684" /><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Leichter Austausch – Komponenten lassen sich einfacher ersetzen oder erweitern.</p>
<p data-start="773" data-end="870">Doch speziell für das Tastenfeldschloss gibt es noch einen weiteren entscheidenden Vorteil:</p>
<p data-start="872" data-end="1185">Das Tastenfeld wird direkt in eine vorgesehene Vertiefung der Trägerplatte (2.1.1) geklebt. Anschließend wird die Trägerplatte samt Tastenfeld von hinten in das Gehäuse eingesetzt und mit M3-Schrauben fixiert. Dabei verdeckt der Rahmen des Fensters im Gehäuse den Rand und die Kabel vollständig.</p>
<p data-start="1187" data-end="1485"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f512.png" alt="🔒" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Sicherheitsaspekt: Das Fenster ist so dimensioniert, dass zwar der Rand und die Kabel verborgen bleiben, aber die Tasten vollständig sichtbar und bedienbar sind. Dadurch lässt sich das Tastenfeld nicht zerstörungsfrei entfernen – ein wichtiger Schutzmechanismus gegen Manipulation.</p>
<h3 data-start="1487" data-end="1545">Befestigung der Komponenten auf der Trägerplatte</h3>
<p data-start="1547" data-end="1663">Auf der Rückseite (2.1.2) der Trägerplatte befinden sich diverse Befestigungsmöglichkeiten für die Elektronik:</p>
<p data-start="1665" data-end="2043"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f7e1.png" alt="🟡" class="wp-smiley" style="height: 1em; max-height: 1em;" /> M3-Gewinde für den Nano-Adapter (2.1.3) – Da Nano-Adapter im Internet oft unterschiedliche Lochabstände haben, gibt es auf der rechten Seite (2.1.2) ein zusätzliches Befestigungsgewinde zur flexiblen Anpassung. Falls die Bohrungen dennoch nicht exakt passen, lassen sie sich vorsichtig aufweiten – allerdings ohne dabei Leiterbahnen des Adapters zu beschädigen.</p>
<p data-start="2045" data-end="2177"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f534.png" alt="🔴" class="wp-smiley" style="height: 1em; max-height: 1em;" /> M2-Gewinde für den Nano R3 ATMEGA168P (2.1.4) – Eine alternative, kostengünstige Lösung anstelle eines Nano R3 mit Adapter.</p>
<p data-start="2179" data-end="2366"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f535.png" alt="🔵" class="wp-smiley" style="height: 1em; max-height: 1em;" /> M2-Gewinde für die Lochrasterplatte (20×80 mm, 1.1.2, 2.1.5) – Diese dient zur Energieverteilung und verbindet alle Stromversorgungsleitungen sauber an einem zentralen Punkt.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1667 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/2-1-1.jpg" alt="" width="2310" height="1329" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/2-1-1.jpg 2317w, https://nerd-corner.com/wp-content/uploads/2024/12/2-1-1-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/2-1-1-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/2-1-1-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/2-1-1-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/2-1-1-2048x1178.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h3 data-start="95" data-end="140">Die LED-Blende und ihre Befestigung</h3>
<p data-start="142" data-end="442">Die LED-Blende (2.2.1) wurde so konstruiert, dass sie von der Rückseite in den Schlitz (2.0.5) des Gehäuses eingeklickt wird. Der Radius an der Außenseite der LED-Blende entspricht dem Gehäuseradius, wodurch ein weicher Übergang entsteht und sich die Blende optisch nahtlos einfügt.</p>
<p data-start="444" data-end="602">Die Montagebrücke (Vorderseite 2.2.2, Rückseite 2.2.3) muss ich nicht neu entwerfen, da ich sie bereits in anderen Projekten erfolgreich verwendet habe.</p>
<h3 data-start="604" data-end="638">Die Befestigung der LEDs</h3>
<p data-start="640" data-end="814">Nun bleibt noch die Montage der drei WS2812b-LEDs (1.2.1). Warum genau drei LEDs benötigt werden, werde ich später im Programmierteil dieses Artikels erläutern.</p>
<p data-start="816" data-end="1039">Die Entwicklung des LED-Halters (SMD50, 2.2.4) war aufwendiger als erwartet. Natürlich könnte man die LED-Streifen einfach kleben, klemmen oder mit Heißkleber befestigen – doch das erschien mir zu unprofessionell.</p>
<p data-start="1041" data-end="1179">Daher habe ich viel Zeit und Mühe investiert, um eine perfekte Halterung zu entwerfen. Das Resultat ist auf Bild 2.2.5 zu sehen.</p>
<p data-start="1181" data-end="1300"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f4cc.png" alt="📌" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Weiterführende Informationen:<br data-start="1217" data-end="1220" /><a href="https://nerd-corner.com/de/klick-und-klemmsystem-smd5050-klammer-2/">Für Details zur Konstruktion gibt es einen eigenen Artikel auf NerdCorner.</a></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1666 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/2-2-1.jpg" alt="" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/2-2-1.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/2-2-1-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/2-2-1-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/2-2-1-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/2-2-1-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/2-2-1-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h2 data-start="91" data-end="122">3D-Druck der Bauteile</h2>
<p data-start="124" data-end="211">Nachdem die Konstruktion abgeschlossen ist, müssen die Teile nun gedruckt werden.</p>
<p data-start="213" data-end="265"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f4cc.png" alt="📌" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Materialwahl für die einzelnen Komponenten:</p>
<ul data-start="267" data-end="719">
<li data-start="267" data-end="359">Gehäuse (3.0.1): gedruckt mit ABS-Filament, bestehend aus Vorder- und Rückseite.</li>
<li data-start="360" data-end="421">Trägerplatte (3.0.2): gefertigt aus PLA-Filament.</li>
<li data-start="422" data-end="525">LED-Blende (3.0.3): stehend im Drucker hergestellt, gedruckt mit PLA+ in der Farbe „Natur“.</li>
<li data-start="526" data-end="628">LED-Klemmen (3.0.4): ebenfalls aus PLA+, gefertigt im selben Verfahren wie die LED-Blende.</li>
<li data-start="629" data-end="719">Brücke für die Hohlbuchse: gedruckt aus PLA-Filament, analog zur Trägerplatte.</li>
</ul>
<p data-start="721" data-end="868">Mit diesen Materialien sind die mechanischen und thermischen Eigenschaften der Bauteile optimal auf ihre jeweiligen Einsatzzwecke abgestimmt.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1665 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/3-0-1.jpg" alt="" width="2310" height="1329" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/3-0-1.jpg 2317w, https://nerd-corner.com/wp-content/uploads/2024/12/3-0-1-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/3-0-1-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/3-0-1-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/3-0-1-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/3-0-1-2048x1178.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h2 data-start="80" data-end="118">Nachbearbeitung der Bauteile</h2>
<p data-start="120" data-end="224">Nach dem Druck müssen sowohl die gedruckten Teile als auch einige Kaufteile bearbeitet werden.</p>
<h4 data-start="226" data-end="266">1&#x20e3; Säubern der 3D-Druckteile</h4>
<ul data-start="267" data-end="342">
<li data-start="267" data-end="342">Entfernen von Stützmaterial und überstehenden Druckrückständen.</li>
</ul>
<h4 data-start="344" data-end="376">2&#x20e3; Gewinde schneiden</h4>
<ul data-start="377" data-end="820">
<li data-start="377" data-end="563">Gehäuse (4.0.1):
<ul data-start="404" data-end="563">
<li data-start="404" data-end="528">Vier M3-Gewinde (Achtung: Sacklöcher! Beim Schneiden vorsichtig vorgehen, um den Boden nicht nach außen zu drücken).</li>
<li data-start="531" data-end="563">Zwei M2-Gewinde (4.0.2).</li>
</ul>
</li>
<li data-start="564" data-end="820">Trägerplatte (4.0.3):
<ul data-start="596" data-end="820">
<li data-start="596" data-end="676">Die blau markierten M2-Gewinde müssen auf jeden Fall geschnitten werden.</li>
<li data-start="679" data-end="820">Bei Verwendung eines Nano-Adapters mit Schraubklemmen (2.1.4) müssen zusätzlich die rot markierten M2-Gewinde geschnitten werden.</li>
</ul>
</li>
</ul>
<h4 data-start="822" data-end="860">3&#x20e3; Lochrasterplatte kürzen</h4>
<ul data-start="861" data-end="1029">
<li data-start="861" data-end="954">Die Lochrasterplatte (4.0.4) muss auf 8 bis maximal 10 Lochraster gekürzt werden.</li>
<li data-start="955" data-end="1029">Wichtig: Die Montagelöcher sollten erhalten bleiben (siehe 4.0.5).</li>
</ul>
<h4 data-start="1031" data-end="1064">4&#x20e3; Stiftleiste kürzen</h4>
<ul data-start="1065" data-end="1152">
<li data-start="1065" data-end="1152">Die Stiftleiste mit einem Seitenschneider auf acht Pins kürzen (4.0.6).</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1664 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/4-0-2.jpg" alt="" width="2310" height="1394" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/4-0-2.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/4-0-2-300x181.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/4-0-2-1024x618.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/4-0-2-768x464.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/4-0-2-1536x927.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/4-0-2-2048x1236.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h3 data-start="89" data-end="115">Löten der Bauteile</h3>
<p data-start="117" data-end="221">Nun geht es ans Löten der Teile. Zuerst konzentrieren wir uns auf die Energieversorgungsplatine:</p>
<h4 data-start="223" data-end="273">1&#x20e3; Löten der Energieversorgungsplatine</h4>
<ul data-start="274" data-end="730">
<li data-start="274" data-end="375">Lochrasterplatte (4.0.5): Lötung der Sockelleiste (1.1.1) und der Pin-Leiste (4.0.6).</li>
<li data-start="376" data-end="730">Pin-Leiste (4.1.2): Eine zweireihige Pin- und Sockelleiste wird aufgelötet. Auf der Rückseite verbinden wir die beiden Reihen jeweils mit Lötzinn.
<ul data-start="541" data-end="730">
<li data-start="541" data-end="730">Die Reihen unterscheiden sich in Männchen und Weibchen sowie in den Farben: Rot für Plus und Schwarz für Minus. Dies erleichtert den Anschluss der Energieversorgung.</li>
</ul>
</li>
</ul>
<h4 data-start="732" data-end="773">2&#x20e3; Verlötung der WS2812B LEDs</h4>
<ul data-start="774" data-end="844">
<li data-start="774" data-end="844">Verlöten der Anschlüsse des WS2812B LED-Streifens (4.1.3).</li>
</ul>
<h4 data-start="846" data-end="884">3&#x20e3; Verlöten der Hohlbuchse</h4>
<ul data-start="885" data-end="1126">
<li data-start="885" data-end="952">Zum Abschluss wird die Hohlbuchse (1.0.4) verlötet (4.1.4).</li>
<li data-start="953" data-end="1126">Eine detaillierte Anleitung <a href="https://nerd-corner.com/de/hohlbuchse-als-schalter-verwenden/">zum Verlöten der Hohlbuchse</a> findest du in einem separaten Artikel. Es ist wichtig, die genaue Vorgehensweise zu kennen, um Fehler zu vermeiden.</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1663 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/4-1-2.jpg" alt="" width="2310" height="1329" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/4-1-2.jpg 2317w, https://nerd-corner.com/wp-content/uploads/2024/12/4-1-2-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/4-1-2-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/4-1-2-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/4-1-2-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/4-1-2-2048x1178.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h2 data-start="75" data-end="118">Zusammenbau des Tastenfeldschlosses</h2>
<h4 data-start="120" data-end="152">1&#x20e3; LED-Blende einbauen</h4>
<ul data-start="153" data-end="332">
<li data-start="153" data-end="217">Zuerst klicke die LED-Blende (2.2.1) in das Gehäuse ein.</li>
<li data-start="218" data-end="332">Verklebe die LED-Blende an den vorgesehenen Stellen, wie auf den Bildern 5.0.1 und 5.0.2 abgebildet.</li>
</ul>
<h4 data-start="334" data-end="365">2&#x20e3; Nano R3 einstecken</h4>
<ul data-start="366" data-end="447">
<li data-start="366" data-end="447">Stecke den Nano R3 (1.0.2) in den Nano-Adapter (5.0.3) deiner Wahl ein.</li>
</ul>
<h4 data-start="449" data-end="484">3&#x20e3; Nano-Adapter montieren</h4>
<ul data-start="485" data-end="759">
<li data-start="485" data-end="617">Schraube den Nano-Adapter (1.0.3) mit dem eingesteckten Nano R3 (1.0.2) auf der Trägerplatte-Rückseite (4.0.3) fest.</li>
<li data-start="618" data-end="759">Verwende dafür die M3-Gewinde auf der Trägerplatte und die Schrauben (1.2.2), wie auf den Bildern 5.0.4 und 5.0.5 zu sehen.</li>
</ul>
<h4 data-start="761" data-end="801">4&#x20e3; Energieversorgung anbringen</h4>
<ul data-start="802" data-end="955">
<li data-start="802" data-end="922">Befestige die Energieversorgung (4.1.2) mit den Schrauben (1.2.4) an der Trägerplatte-Rückseite (4.0.3).</li>
<li data-start="923" data-end="955">Siehe dazu das Bild 5.0.6.</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1662 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/5-0-1.jpg" alt="" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/5-0-1.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/5-0-1-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/5-0-1-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/5-0-1-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/5-0-1-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/5-0-1-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h3 data-start="75" data-end="127">Montage des Tastenfelds auf der Trägerplatte</h3>
<h4 data-start="129" data-end="165">1&#x20e3; Wahl der Schraubenlänge</h4>
<ul data-start="166" data-end="437">
<li data-start="166" data-end="258">Achte darauf, wie auf Bild 5.1.1 dargestellt, die richtige Schraubenlänge zu wählen.</li>
<li data-start="259" data-end="437">Schrauben dürfen nicht zu lang sein, da sie sonst beim Anbringen des Tastenfelds aus der Klebefläche herausragen und das Tastenfeld nicht sauber aufgeklebt werden kann.</li>
</ul>
<h4 data-start="439" data-end="474">2&#x20e3; Tastenfeld vorbereiten</h4>
<ul data-start="475" data-end="780">
<li data-start="475" data-end="532">Entferne die Schutzfolie des Tastenfelds (1.0.1).</li>
<li data-start="533" data-end="689">Um die Folie zu entfernen, benutze ein Teppichmesser, um vorsichtig an einer Ecke zwischen Klebeschicht und Schutzfolie zu kommen (siehe 5.1.2).</li>
<li data-start="690" data-end="780">Nachdem du die Ecke erreicht hast, ziehe die ganze Schutzfolie ab (siehe 5.1.3).</li>
</ul>
<h4 data-start="782" data-end="815">3&#x20e3; Tastenfeld aufkleben</h4>
<ul data-start="816" data-end="1144">
<li data-start="816" data-end="942">Setze das Tastenfeld (1.0.1) in die Vertiefung auf der Trägerplatte-Vorderseite (2.1.1) ein und drücke es fest an.</li>
<li data-start="943" data-end="1060">Das Tastenfeld muss komplett versenkt werden und darf nicht über den Rand hinausstehen (siehe 5.1.4).</li>
<li data-start="1061" data-end="1144">Achte darauf, dass auch die Kabel in der Vertiefung liegen (siehe 5.1.5).</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1661 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/5-1-1.jpg" alt="" width="2340" height="1327" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/5-1-1.jpg 2350w, https://nerd-corner.com/wp-content/uploads/2024/12/5-1-1-300x170.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/5-1-1-1024x581.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/5-1-1-768x436.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/5-1-1-1536x871.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/5-1-1-2048x1162.jpg 2048w" sizes="auto, (max-width: 2340px) 100vw, 2340px" /></p>
<h3 data-start="64" data-end="123">Verkabelung des Tastenfelds mit dem Arduino Nano R3</h3>
<h4 data-start="125" data-end="160">1&#x20e3; Jumper-Kabel verwenden</h4>
<ul data-start="161" data-end="309">
<li data-start="161" data-end="309">Jumper-Kabel (10 cm lang, Männchen-Männchen) werden verwendet, um das Tastenfeld mit dem Arduino Nano R3 zu verbinden (siehe 5.2.1).</li>
</ul>
<h4 data-start="311" data-end="343">2&#x20e3; Anschluss der Kabel</h4>
<ul data-start="344" data-end="622">
<li data-start="344" data-end="420">Achte darauf, dass du die Kabel nicht verdrehst, sondern nur biegst.</li>
<li data-start="421" data-end="522">Das linke Kabel wird an D2 des Arduino angeschlossen, und das rechte Kabel an D8.</li>
<li data-start="523" data-end="622">Insgesamt sind es sieben Kabel, die die Anschlüsse D2 bis D8 belegen (siehe 5.2.3).</li>
</ul>
<h4 data-start="624" data-end="658">3&#x20e3; Pin-Leisten verwenden</h4>
<ul data-start="659" data-end="815">
<li data-start="659" data-end="815">Da das Rastermaß des Arduino-Adapters und des Tastenfelds nicht übereinstimmen, kannst du Pin-Leisten verwenden, um die Verbindung herzustellen.</li>
</ul>
<h4 data-start="817" data-end="857">4&#x20e3; Befestigung der LED-Klemmen</h4>
<ul data-start="858" data-end="1023">
<li data-start="858" data-end="944">Die Klammern (3.0.4) für die WS2812B LEDs werden an den LEDs festgeklickt.</li>
<li data-start="945" data-end="1023">Am besten machst du das auf einer ebenen Oberfläche (siehe 5.2.4).</li>
</ul>
<h4 data-start="1025" data-end="1065">5&#x20e3; Anbringen des LED-Streifens</h4>
<ul data-start="1066" data-end="1214">
<li data-start="1066" data-end="1214">Der WS2812B Streifen wird nun mittig an der Oberseite der Trägerplatte aufgeschoben (siehe 5.2.5 Vorderseite und 5.2.6 Rückseite).</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1660 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/5-2.jpg" alt="" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/5-2.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/5-2-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/5-2-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/5-2-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/5-2-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/5-2-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h3 data-start="86" data-end="134">Zusammenbau der Trägerplatte und Gehäuse</h3>
<h4 data-start="136" data-end="202">1&#x20e3; Verschrauben der Trägerplatte mit dem Gehäuse (5.3.1)</h4>
<ul data-start="203" data-end="660">
<li data-start="203" data-end="382">Achte darauf, dass du M3 Schrauben verwendest, die nicht zu lang sind. Andernfalls könnten sie beim Anziehen eine Erhöhung in die Vorderseite des Gehäuses drücken.</li>
<li data-start="383" data-end="525">Die Ausrichtung der Trägerplatte im Gehäuse ist wichtig: Der LED-Streifen sollte auf der gleichen Seite wie die LED-Blende sein.</li>
<li data-start="526" data-end="660">Nach dem Verschrauben sollte das Tastenfeld leicht an den inneren Rahmen des Gehäuses gepresst sein (siehe 5.3.2 und 5.3.3).</li>
</ul>
<h4 data-start="662" data-end="727">2&#x20e3; Vormontage der Hohlbuchse für die Notstromversorgung</h4>
<ul data-start="728" data-end="1069">
<li data-start="728" data-end="833">Für die Notstromversorgung musst du die Hohlbuchse vormontieren und an das Gehäuse schrauben.</li>
<li data-start="834" data-end="1069">Die Hohlbuchse mit Brücke und Mutter wird in Bild 5.3.4 dargestellt.
<ul data-start="917" data-end="1069">
<li data-start="917" data-end="984">Stecke die Hohlbuchse in die runde Vertiefung der Brücke.</li>
<li data-start="989" data-end="1066">Kontere die Hohlbuchse mit der Mutter auf der anderen Seite der Brücke.</li>
</ul>
</li>
</ul>
<h4 data-start="1070" data-end="1120">3&#x20e3; Befestigung der Hohlbuchse im Gehäuse</h4>
<ul data-start="1121" data-end="1275">
<li data-start="1121" data-end="1275">Die Hohlbuchse mit der Brücke wird dann an die im Gehäuse vorgesehenen Haltesäulen mit M2 Schrauben verschraubt (siehe 5.3.5 und 5.3.6).</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1659 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/5-3.jpg" alt="" width="2310" height="1329" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/5-3.jpg 2317w, https://nerd-corner.com/wp-content/uploads/2024/12/5-3-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/5-3-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/5-3-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/5-3-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/5-3-2048x1178.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h3 data-start="106" data-end="172">Anschluss der Kabel und Fertigstellung der Stromversorgung</h3>
<h4 data-start="174" data-end="232">1&#x20e3; Anschluss des Steuerkabels für den Servomotor</h4>
<ul data-start="233" data-end="335">
<li data-start="233" data-end="335">Das Steuerkabel für den Servomotor wird an Pin D9 des Nano R3 angeschlossen (5.4.1).</li>
</ul>
<h4 data-start="337" data-end="395">2&#x20e3; Anschluss der Stromversorgung für den Nano R3</h4>
<ul data-start="396" data-end="520">
<li data-start="396" data-end="520">Die Stromversorgung des Nano R3 wird an den GND-Pin und den VIN-Pin des Nano R3 angeschlossen (5.4.2).</li>
</ul>
<h4 data-start="522" data-end="577">3&#x20e3; Anschluss des Steuerkabels für den WS2812B</h4>
<ul data-start="578" data-end="691">
<li data-start="578" data-end="691">Das Steuerkabel für den WS2812B LED-Streifen wird an Pin D10 des Nano R3 angeschlossen (5.4.3).</li>
</ul>
<h4 data-start="693" data-end="737">4&#x20e3; Verkabelung des Stromverteilers</h4>
<ul data-start="738" data-end="1010">
<li data-start="738" data-end="1010">Alle restlichen Kabel müssen an den Stromverteiler angeschlossen werden:
<ul data-start="821" data-end="1010">
<li data-start="821" data-end="847">Servomotor-Anschluss</li>
<li data-start="852" data-end="873">Arduino Nano R3</li>
<li data-start="878" data-end="904">WS2812B LED-Streifen</li>
<li data-start="909" data-end="1010">Hohlbuchse Alle Verbindungen erfolgen mit Plus und Minus (siehe 5.4.4 und 5.4.5).</li>
</ul>
</li>
</ul>
<h4 data-start="1012" data-end="1103">5&#x20e3; Verwendung von unterschiedlichen Farben und Anschlussarten für die Verkabelung</h4>
<ul data-start="1104" data-end="1349">
<li data-start="1104" data-end="1222">Es hilft, unterschiedliche Kabel-Farben zu verwenden:
<ul data-start="1168" data-end="1222">
<li data-start="1168" data-end="1190">Rot für Plus</li>
<li data-start="1195" data-end="1222">Schwarz für Minus</li>
</ul>
</li>
<li data-start="1223" data-end="1349">Der Stromverteiler hat unterschiedliche Anschlussarten:
<ul data-start="1289" data-end="1349">
<li data-start="1289" data-end="1316">Männlich für Plus</li>
<li data-start="1321" data-end="1349">Weiblich für Minus</li>
</ul>
</li>
</ul>
<h4 data-start="1351" data-end="1386">6&#x20e3; Hinweis zur Hohlbuchse</h4>
<ul data-start="1387" data-end="1512">
<li data-start="1387" data-end="1512"><a href="https://nerd-corner.com/de/hohlbuchse-als-schalter-verwenden/">Zur Verkabelung und Anschluss der Hohlbuchse gibt es einen eigenen Artikel, den du unbedingt lesen solltest</a></li>
</ul>
<h4 data-start="1514" data-end="1601">7&#x20e3; Anbringen der Stecker-Gehäuse für den Servomotor und die Energieversorgung</h4>
<ul data-start="1602" data-end="1885">
<li data-start="1602" data-end="1680">Für den Servomotor-Anschluss wird ein drei-poliger Stecker benötigt.</li>
<li data-start="1681" data-end="1885">Für die externe Energieversorgung wird ein zwei-poliger Stecker benötigt.
<ul data-start="1767" data-end="1885">
<li data-start="1767" data-end="1885">Weitere Details zum Konstruktionsprozess und den Download-Links für <a href="https://nerd-corner.com/de/3d-gedruckte-dupont-steckverbindung-fuer-jumper-kabel/">Stecker-Gehäuse</a> findest du hier.</li>
</ul>
</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1658 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/5-4.jpg" alt="" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/5-4.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/5-4-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/5-4-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/5-4-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/5-4-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/5-4-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<p>Im Bild 5.5.1 ist nochmal die ganze Verkabelung dargestellt.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1657 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/5-5.jpg" alt="fritzing keypad lock" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/5-5.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/5-5-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/5-5-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/5-5-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/5-5-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/5-5-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h2>Arduino Code</h2>
<p>Nach der intensiven Arbeit mit der Hardware und dem 3D-Drucker widmen wir uns nun der Strategie und der Programmierung des Tastenfeldschlosses. Warum ist eine Strategie für ein Tastenfeldschloss wichtig? Eine durchdachte Handlungsabfolge – also die Reihenfolge, in der das Tastenfeldschloss bedient wird, welche Ereignisse sich aus bestimmten Aktionen ergeben und welches Ziel verfolgt wird – bildet die Grundlage für eine funktionale Steuerung. Dieser Leitfaden ist daher auch entscheidend für die Programmierung des Tastenfeldschlosses: Er legt fest, was wann passieren soll und welche Hardware dabei zum Einsatz kommt. Ziel ist es, eine logische und nachvollziehbare Abfolge von Ereignissen zu schaffen, die in diesem Fall auch optisch nachzuvollziehen ist.</p>
<p>Beispiel 1:<br />
Das Tastenfeldschloss soll anzeigen, wie viele Stellen bereits eingegeben wurden. (Siehe Bilder 7.0.1 bis 7.0.4)</p>
<p>Beispiel 2:<br />
Das Tastenfeldschloss soll nach Betätigung einer bestimmten Taste mitteilen, ob das eingegebene Kennwort korrekt ist. (Siehe Bild 7.0.5)</p>
<p>Beispiel 3:<br />
Das Tastenfeldschloss soll anzeigen, wenn etwas falsch eingegeben wurde, wie etwa ein falsches Kennwort oder zu viele Tastenanschläge. (Siehe Bild 7.0.8)</p>
<p>Beispiel 4:<br />
Das Tastenfeldschloss soll den aktuellen Zustand anzeigen. (Siehe Bilder 7.0.5 bis 7.0.7)</p>
<p>Kommen wir nun zur Programmierung des Tastenfeldschlosses, die sich in einigen Punkten von herkömmlichen Programmen im Internet unterscheidet. Zu Beginn werden die drei notwendigen Bibliotheken eingebunden: &lt;Keypad.h&gt; für das Tastenfeld, &lt;Adafruit_NeoPixel.h&gt; für die WS2812B LEDs und &lt;Servo.h&gt; für den Servomotor (Bild 6.0.1). Im folgenden Abschnitt wird die Pin-Belegung für die LEDs festgelegt, wobei Pin D10 verwendet wird und die Anzahl der LEDs sowie das Farbschema bestimmt werden. Ebenso wird die Helligkeit der LEDs festgelegt – dieser Wert kann je nach Standort angepasst werden, wobei höhere Werte für mehr Helligkeit sorgen (Werte von 0 bis 255). (Siehe Bild 6.0.2) Der dritte Abschnitt widmet sich der Beschreibung des verwendeten Tastenfelds, einschließlich der Anzahl der Reihen und Spalten sowie der Belegung der Tasten. (Siehe Bild 6.0.3)</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1656 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/6-0-1.jpg" alt="" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/6-0-1.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/6-0-1-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/6-0-1-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/6-0-1-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/6-0-1-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/6-0-1-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<p>Im vierten Abschnitt wird der Servomotor konfiguriert, indem der Gradbereich festgelegt wird, den er zurücklegen kann, sowie die Geschwindigkeit, mit der er sich bewegen soll (siehe Bild 6.1.1). Anschließend folgt der Abschnitt zur Kennworteingabe. Hier habt ihr die Möglichkeit, das Standardkennwort 1516 zu ändern, um ein neues vierstelliges Kennwort festzulegen. Das Programm funktioniert nur korrekt, wenn ein vierstelliger Code eingegeben wird. In diesem Abschnitt wird außerdem der Steuer-Pin für den Servomotor auf D9 gesetzt (siehe Bild 6.1.2). Der darauf folgende Abschnitt widmet sich der Festlegung der Farben für die verschiedenen Ereignisse.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1655 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/6-1-1.jpg" alt="" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/6-1-1.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/6-1-1-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/6-1-1-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/6-1-1-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/6-1-1-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/6-1-1-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<p>In den letzten beiden Abschnitten wird das Verhalten des Tastenfeldschlosses bei bestimmten Handlungen erläutert. Diese Beschreibung stellt natürlich nur einen groben Überblick über das Programm dar. In einem zukünftigen Artikel für Tastenfeldschloss Version 2 werden wir dann das Programm detaillierter und umfassender erklären.</p>
<pre class="EnlighterJSRAW" data-enlighter-language="c">//==========================================Librarys==============================================================
#include &lt;Keypad.h&gt;
#include &lt;Adafruit_NeoPixel.h&gt;
#include &lt;Servo.h&gt;
//========================================Neo-Pixel==============================================================
#define LED_PIN 10
#define LED_COUNT 3
Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);
int led_strength = 75; //controlls Brighttness (0 - 255)
//========================================Keypad=================================================================
const byte rows = 4;
const byte cols = 3;
char keys[rows][cols] = {
 {'1', '2', '3'},
 {'4', '5', '6'},
 {'7', '8', '9'},
 {'*', '0', '#'}
};
byte rowPins[rows] = {8, 7, 6, 5};
byte colPins[cols] = {4, 3, 2};
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, rows, cols );
//=========================================Servo============================================================
Servo lock;
int pos = 0;
int servo_angle = 180;
int servo_speed = 15;
//======================================Password===============================================================
String input;
const String password = "1516"; //Set Password
int n = 1;

 

void setup() {
 input.reserve(password.length() +2);
 strip.begin();
 strip.show();
 lock.attach(9); //motor pin
}

void loop() {
//-------------------colours------------------------------------------------------------------- 
 uint32_t blue = strip.Color(0, 0, led_strength);
 uint32_t green = strip.Color(0, led_strength, 0);
 uint32_t red = strip.Color(led_strength, 0, 0);
 uint32_t orange = strip.Color(led_strength, led_strength/2, 0);

 char key = keypad.getKey();

if (key != NO_KEY) {
//-------------------------End conditions------------------------------------------------------
 if (key == '#') {
 if (input == password) {
 //unlock
 strip.clear();
 strip.fill(green, 0, LED_COUNT);
 strip.show();
 for (pos = 0; pos &lt;= servo_angle; pos += 1) {
 lock.write(pos);
 delay(servo_speed );
 }
 while (1 == 1)
 { char key = keypad.getKey();
 strip.clear();
 strip.fill(orange, 0, LED_COUNT);
 strip.show();
 if (key == '*')
 {
 strip.clear();
 strip.fill(green, 0, LED_COUNT);
 strip.show();
 break;
 }
 }

 for (pos = servo_angle; pos &gt;= 0; pos -= 1) {
 lock.write(pos);
 delay(servo_speed );
 }
 n = 1;
 input = "";
 delay (1000);
 strip.clear();
 strip.show();
 } else {
 //wrong password
 strip.clear();
 strip.fill(red, 0, LED_COUNT);
 strip.show();
 n = 1;
 input = "";
 delay (1000);
 strip.clear();
 strip.show();
 }
 }
 else if (n == password.length() + 1) {
 //Input too long
 strip.clear();
 strip.fill(red, 0, LED_COUNT);
 strip.show();
 n = 1;
 input = "";
 delay (1000);
 strip.clear();
 strip.show();
 }
//----------------------------------Buttons------------------------------------------
 else {
 input += key;
 if (n == password.length() ) {
 strip.clear();
 strip.fill(blue, 0, LED_COUNT); 
 strip.show();
 n++;
 }
 else {

 strip.clear();
 strip.setPixelColor(n-1, blue);
 strip.show();
 n++;
 }
 }
 }

}</pre>
<h2 data-start="14" data-end="438">Funktion</h2>
<p data-start="14" data-end="438">Die Bedienung des Tastenfeldschlosses ist sehr intuitiv. Sobald die erste Taste gedrückt wird, leuchtet die rechte LED blau (7.0.1). Beim zweiten Tastendruck wird die mittlere LED blau (7.0.2). Nach der dritten Taste strahlt die linke LED in Blau (7.0.3). Mit der vierten Taste leuchten schließlich alle drei LEDs blau (7.0.4). Wenn diese drei LEDs in Blau leuchten, weiß der Benutzer, dass die #-Taste gedrückt werden muss.</p>
<p data-start="440" data-end="897">Wird die #-Taste betätigt, erfolgt die Überprüfung des Passworts. Ist das Passwort korrekt, leuchten alle drei LEDs gleichzeitig grün, und der Servomotor wird aktiviert (7.0.5). Das grüne Licht bleibt so lange an, wie der Servomotor seine Endlage (offen) noch nicht erreicht hat. Sobald der Servomotor die Endlage (offen) erreicht, wechseln die LEDs von Grün zu Orange (7.0.6). Die orange Farbe bleibt so lange erhalten, bis der Benutzer die *-Taste drückt.</p>
<p data-start="899" data-end="1152">Nach dem Drücken der *-Taste wechseln die LEDs wieder auf Grün (7.0.7) und bleiben in dieser Farbe, bis der Servomotor die Endlage (geschlossen) erreicht hat. Ist dies der Fall, erlöschen die LEDs, und das Tastenfeldschloss ist bereit für neue Eingaben.</p>
<p data-start="1154" data-end="1383" data-is-last-node="">Falls jedoch das Passwort nach dem Drücken der #-Taste in Schritt 7.0.4 falsch ist, leuchten alle drei LEDs rot (7.0.8). Ebenso wird das rote Licht angezeigt, wenn mehr als vier Tasten, abgesehen von der #-Taste, gedrückt werden.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1654 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/7-0-1.jpg" alt="keypad lock step by step guide" width="2310" height="1329" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/7-0-1.jpg 2317w, https://nerd-corner.com/wp-content/uploads/2024/12/7-0-1-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/7-0-1-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/7-0-1-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/7-0-1-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/7-0-1-2048x1178.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h2>Türmontage</h2>
<p>Natürlich ist diese Variante nicht für den Einsatz an einer gewöhnlichen Tür gedacht, bei der man einfach hindurchgeht und die Tür sich von selbst wieder schließt. Der Grund dafür liegt im offenbleiben des Schlosses, bis die *-Taste gedrückt wird. Doch wie kann man die *-Taste drücken, wenn man sich auf der anderen Seite des Tastenfeldschlosses befindet, hinter der Wand? Eine Verzögerung im Programm könnte zwar helfen, aber wer weiß schon, wie lange man braucht, um die Tür zu passieren und hinter sich zu schließen? Eine viel sinnvollere Lösung wäre es, einen zusätzlichen Schalter zu implementieren, der auf der anderen Seite der Tür angebracht wird. Dieser Schalter würde, ohne eine Passworteingabe, bei Betätigung direkt zu Punkt 7.0.6 führen und das Schloss öffnen, sodass die Tür von innen geöffnet werden kann.</p>
<p>Doch das ist Zukunftsmusik. Nun kommen wir zur Montage des Tastenfeldschlosses an einer Tür. Hierfür habe ich auf der Rückseite des Gehäuses vier Bohrungen vorgesehen. Diese Bohrungen haben an der Innenseite eine Vertiefung für herkömmliche Sechskantmuttern M4 DIN 934. Die entsprechenden Bohrungen sind in Bild 8.0.1 (Rückansicht) und Bild 8.0.2 (Vorderansicht) zu sehen, wobei das Gehäuse zur besseren Anschauung etwas transparent dargestellt ist. Die Installation der Muttern ist denkbar einfach: Nachdem sichergestellt wurde, dass sämtliches Supportmaterial entfernt ist, wird die Mutter von hinten in die vorgesehene Vertiefung gedrückt. Es sollten keine Einpressmuttern verwendet werden, da diese unnötig teuer sind.</p>
<p>Für die Befestigung an der Wand oder Tür habe ich eine Bohrschablone entwickelt (Bild 8.0.3). Diese Schablone enthält an den vier Ecken jeweils eine Bohrung mit einem Durchmesser von 4 mm. Der Abstand der Bohrungen entspricht dem Abstand der Bohrungen am Gehäuse. Man kann die Schablone bequem an der Oberfläche der Tür fixieren, zum Beispiel mit Klebeband (Bild 8.0.4). So spart man sich das mühsame Anreißen der Bohrlöcher und vermeidet Fehler.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1653 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/8-0-1.jpg" alt="" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/8-0-1.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/8-0-1-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/8-0-1-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/8-0-1-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/8-0-1-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/8-0-1-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<p>Auf Bild 8.1.1 sehen wir die gebohrten Montagelöcher von der Vorderseite, markiert durch magentafarbene Kreise. Dank der Bohrschablone haben diese Löcher den richtigen Abstand zueinander. Falls beim Bohren die Position leicht verrutscht oder nicht ganz exakt eingehalten wurde, stellt das kein Problem dar. In diesem Fall kann man die Montagelöcher einfach etwas größer bohren, um das Tastenfeldschloss beim Anschrauben präzise auszurichten. Zusätzlich sind auf diesem Bild in gelben Kreisen zwei Bohrungen zu sehen, die leider etwas am Rand ausgebrochen sind. Diese Bohrungen sind für das Kabel des Servos und die Energieversorgung vorgesehen. Nachdem die Bohrungen fertiggestellt waren, habe ich das Tastenfeldschloss angebracht und die Kabel zuvor durch die vorgesehenen Bohrungen auf der Rückseite der Tür (Bild 8.1.2) geführt.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1652 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/8-1.jpg" alt="" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/8-1.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/8-1-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/8-1-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/8-1-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/8-1-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/8-1-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<p>Die gesamte Montagearbeit des Tastenfeldschlosses ist auf der Vorderseite der Tür in Bild 8.2.1 zu sehen. Wer mit dieser Montagelösung nicht zufrieden ist, kann ich beruhigen: Als letzten Schritt habe ich einen Rückendeckel entworfen, der es ermöglicht, das Tastenfeldschloss an einer Wand oder einem Rahmen zu befestigen (Bild 8.2.2). Dazu steckt man einfach das Gehäuse des Tastenfeldschlosses auf den Rückendeckel und verschraubt es von hinten mit M4 Senkkopfschrauben (markiert durch magentafarbene Kreise in Bild 8.2.2). Danach wird das ganze Konstrukt an der Wand befestigt, wofür zwei Laschen mit jeweils zwei Bohrungen zur Verfügung stehen (gelbe Kreise in Bild 8.2.2).</p>
<p>Nicht zu vergessen ist, dass man am Gehäuse zusätzlich eine oder mehrere Bohrungen für die Kabel des Servos und der Energieversorgung anbringen muss. Dabei sollte man auch das Sicherheitsrisiko bedenken, dass eine unbefugte Person das Tastenfeldschloss über die zugänglichen Schrauben abschrauben könnte.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1651 zoooom" src="https://nerd-corner.com/wp-content/uploads/2024/12/8-2.jpg" alt="" width="2310" height="1330" srcset="https://nerd-corner.com/wp-content/uploads/2024/12/8-2.jpg 2316w, https://nerd-corner.com/wp-content/uploads/2024/12/8-2-300x173.jpg 300w, https://nerd-corner.com/wp-content/uploads/2024/12/8-2-1024x589.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2024/12/8-2-768x442.jpg 768w, https://nerd-corner.com/wp-content/uploads/2024/12/8-2-1536x884.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2024/12/8-2-2048x1179.jpg 2048w" sizes="auto, (max-width: 2310px) 100vw, 2310px" /></p>
<h2>Schließmechanismus</h2>
<p>Wer jetzt noch einen echten Schließmechanismus vermisst, der nicht nur einen Servo-Anschluss nutzt, kann sich auf den „Schließer“ freuen, der sich bereits in der Entwicklung befindet und in den kommenden Versionen des Tastenfeldschlosses präsentiert wird.</p>
<p>Die Entwicklung des Tastenfeldschlosses war eine spannende, aber auch herausfordernde Aufgabe. Besonders hervorzuheben sind einige Eigenschaften der VERSION 1 des Tastenfeldschlosses:</p>
<ul>
<li>Verschiedene Arduino Nano-Modelle und Adapter können verwendet werden – Flexibilität bei der Hardwarewahl.</li>
<li>Optisches Feedback – Über die Zahleneingabe und den Status des Tastenfeldschlosses wird der Benutzer direkt informiert.</li>
<li>Notstromversorgung über Hohlbuchse – Garantiert zuverlässige Funktion im Falle von Stromausfällen.</li>
<li>Stabiles Programm – Die Software wurde so entwickelt, dass sie zuverlässig funktioniert.</li>
<li>Optimale Haptik für Links- und Rechtshänder – Das Tastenfeldschloss wurde ergonomisch gestaltet, um allen Nutzern gerecht zu werden.</li>
</ul>
<h2>Dateien zum Herunterladen</h2>
<ul>
<li><a href="https://www.thingiverse.com/thing:6840254">Tastenfeldschloss Gehäuse</a></li>
</ul>
<p>The post <a href="https://nerd-corner.com/de/diy-tastenfeldschloss-3d-druck-und-programmierung/">DIY Tastenfeldschloss &#8211; 3D Druck und Programmierung</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nerd-corner.com/de/diy-tastenfeldschloss-3d-druck-und-programmierung/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>3D gedruckte Dupont Steckverbindung für Jumper Kabel</title>
		<link>https://nerd-corner.com/de/3d-gedruckte-dupont-steckverbindung-fuer-jumper-kabel/</link>
					<comments>https://nerd-corner.com/de/3d-gedruckte-dupont-steckverbindung-fuer-jumper-kabel/#comments</comments>
		
		<dc:creator><![CDATA[Nerds]]></dc:creator>
		<pubDate>Sat, 28 May 2022 09:56:11 +0000</pubDate>
				<category><![CDATA[DIY]]></category>
		<category><![CDATA[Hardware-DE]]></category>
		<category><![CDATA[3D Druck]]></category>
		<category><![CDATA[CAD]]></category>
		<category><![CDATA[Dupont]]></category>
		<category><![CDATA[Gehäuse]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Jumper Kabel]]></category>
		<category><![CDATA[Kabel]]></category>
		<category><![CDATA[Präzision]]></category>
		<category><![CDATA[Stecker]]></category>
		<category><![CDATA[Verbinder]]></category>
		<category><![CDATA[Verkabelung]]></category>
		<guid isPermaLink="false">https://nerd-corner.com/?p=1214</guid>

					<description><![CDATA[<p>Viele DIY Projekte werden von Chaos an der Werkbank begleitet. Schraubenzieher, Lötkolben, Jumper Kabel, alles liegt kreuz und quer. Aufgeräumt wird meistens erst am Ende &#8230; </p>
<p>The post <a href="https://nerd-corner.com/de/3d-gedruckte-dupont-steckverbindung-fuer-jumper-kabel/">3D gedruckte Dupont Steckverbindung für Jumper Kabel</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Viele DIY Projekte werden von Chaos an der Werkbank begleitet. Schraubenzieher, Lötkolben, Jumper Kabel, alles liegt kreuz und quer. Aufgeräumt wird meistens erst am Ende des Tages oder wenn das Projekt fertig ist. Mich hat diese Unordnung genervt, vorallem die Jumper Kabeln wollte ich nicht überall verteilt haben. Nachdem ich den <a href="https://nerd-corner.com/de/gedruckter-verbinder-als-loethilfe-fuer-jumperkabel-und-led-streifen/">Verbinder als Löthilfe für Jumperkabel und LED Streifen</a> entworfen habe, kam mir eine Idee mit der ich sowohl das Chaos in den Griff bekam, als auch die Stabilität der Jumper Kabel PINs  erhöhen konnte. Die Idee war eine Dupont Steckverbindung zu nutzen.</p>
<p>Das nachfolgende Bild zeigt eine solche Verbindung. Ich bin absolut begeistert davon wie praktisch diese Verbindungen im Alltag sind. Beispielsweise lassen sich mehrere LED Streifen über eine 4 PIN Dupont Steckverbindung mit einem Controller ohne zusätzliches Werkzeug <span style="font-size: 1.125rem;">zusammenschalten</span><span style="font-size: 1.125rem;">!</span></p>
<p><em><strong>Das könnte dich auch interessieren:</strong></em> <a href="https://nerd-corner.com/de/gedruckter-verbinder-als-loethilfe-fuer-jumperkabel-und-led-streifen/">DIY Verbinder als Löthilfe für Jumperkabel und LED Streifen</a></p>
<p><img loading="lazy" decoding="async" class="size-full wp-image-1228 aligncenter" src="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-case-inside.jpg" alt="Dupont Steckverbindung" width="388" height="269" srcset="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-case-inside.jpg 388w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-case-inside-300x208.jpg 300w" sizes="auto, (max-width: 388px) 100vw, 388px" /></p>
<h2>Liste der Komponenten</h2>
<ul>
<li><a href="https://amzn.to/38XZWyn">3D Drucker</a></li>
<li><a href="https://amzn.to/3wX4xsv">Filament PLA</a></li>
<li><a href="https://amzn.to/3GxwifJ">Jumper Kabel</a></li>
</ul>
<p><img loading="lazy" decoding="async" class="size-full wp-image-1221 aligncenter" src="https://nerd-corner.com/wp-content/uploads/2022/05/dupont-jumper-cable-housing-gif.gif" alt="Dupont Steckverbindung " width="462" height="273" /></p>
<article>
<h2>CAD Design für Dupont Steckverbindung</h2>
<div>Wie bei jedem CAD Design, sollte man auch bei der Dupont Steckverbindung nicht einfach planlos loslegen, sondern zunächst ein paar Fragen klären.</div>
<ul>
<li data-mce-word-list="1">Welche Fertigungstoleranz haben die schwarzen Gehäuse der Jumper-Kabel?</li>
<li data-mce-word-list="1">Welche Längen existieren für die schwarzen Gehäuse?</li>
<li data-mce-word-list="1">Gibt es unterschiedliche Kabeldurchmesser?</li>
<li data-mce-word-list="1">Wie groß muss die Nase am Deckel sein?</li>
<li data-mce-word-list="1">Welches Material soll verwendet werden?</li>
</ul>
</article>
<article></article>
<div>Die Messungen (mit einem Digital Messschieber) von unterschiedlichen Herstellern der Jumper Kabel ergaben, dass kaum Abweichungen bestanden. Die größte Abweichung war die Länge von 12 mm bis 14mm. Da die meisten eine Länge von 14 mm besitzen wurde das Maß auch für mein CAD Design genutzt.</div>
<div></div>
<div>Das Ziel war es einen Schnellverbinder zu konstruieren, d.h. Kabel reinlegen Deckel draufdrücken und fertig. Damit wollte ich Schrauben, Kabelbinder, Schlauchschellen, Verkleben oder löten vermeiden.</div>
<h4>Material und Dimensionierung</h4>
<div>Um das zu erreichen habe ich mich für Haltenasen bzw. Krallen entschieden. Dafür muss man auf die Dimensionierung und die Wahl des Materials achten. Das vermutlich beste Material wäre Nylon. Leider stehen mir nicht die Möglichkeiten zur Verfügung mit Nylon zu drucken. Hierfür wäre ein geschlossener Bauraum nötig gewesen. Das gleiche gilt für ABS die zweitbeste Lösung. Übrig bleibt daher nur PET oder PLA. Ich hatte noch einen größeren Vorrat an farbfreien PLA, daher habe ich mich für PLA entschieden. Hinweis an dieser Stelle: Der Farbzusatz im Filament beeinflusst die Druckeigschaften und das nicht unerheblich! Für Funktionsdrucke wähle ich deswegen immer farbfreies PLA.</div>
<div></div>
<p>Um 4 Jumper Kabel ins Gehäuse bringen zu können, habe ich ein Innenmaß von 10,6 mm gewählt. Für die Seitenwände wählte ich eine Dicke von 1,7 mm und für den Boden eine Stärke von 1,46 mm. Für die Außen-Abmessungen ergaben sich 4 mm x 14 mm x 25 mm.</p>
<h4>Konstruktion des Deckels</h4>
<p>Für den Deckel sind die  Maße identisch zum Gehäuse, aber mit einem Zusatz für die herausstehenden Laschen mit den Nasen. Die Dimensionen der Laschen sind auf Grundlage meiner bisherigen Erfahrungen entstanden. Ich habe mich für ein zweites Laschen Pärchen entschieden, weil die Haltekraft dadurch erhöht wird und die Kraft sich besser verteilt. Außerdem, falls eine Lasche brechen sollte, würde der Deckel trotzdem sicher am Gehäuse halten.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1231 zoooom" src="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Deckel.jpg" alt="Dupont Steckerverbindung Deckel" width="2280" height="1054" srcset="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Deckel.jpg 2285w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Deckel-300x139.jpg 300w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Deckel-1024x473.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Deckel-768x355.jpg 768w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Deckel-1536x710.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Deckel-2048x946.jpg 2048w" sizes="auto, (max-width: 2280px) 100vw, 2280px" /></p>
<p>Wichtig ist die Form der Nase am Ende der Lasche (Detail A), da der 3D-Drucker dies nicht exakt so druckt wie am CAD konstruiert.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1230 zoooom" src="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Gehause.jpg" alt="Dupont Steckerverbinder Deckel" width="1870" height="963" srcset="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Gehause.jpg 1874w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Gehause-300x154.jpg 300w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Gehause-1024x527.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Gehause-768x395.jpg 768w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-Stecker-Gehause-1536x791.jpg 1536w" sizes="auto, (max-width: 1870px) 100vw, 1870px" /></p>
<div>Wie im Detail B zu sehen wurde an die Innenseite des Deckels eine Erhöhung konstruiert. Diese Erhöhung hilft die Kabel etwas nach unten zu pressen<span style="font-size: 1.125rem;">, wenn der Deckel auf das Gehäuse gedrückt wird</span><span style="font-size: 1.125rem;">. Die Kabel sind im Gehäuse fixiert und ziehen dabei das Kabelgehäuse zu dem Anschlag (Detail D). Durch die zusätzliche Spannung wird das Kabelgehäuse exakter fixiert. Dies funktioniert, weil die Pressung hinter der Fixierung im Gehäuse stattfindet und die Kabel etwas Abstand zum Gehäuseboden haben. Die Höhe des Druckbalkens (Detail B) darf allerdings nicht zu groß sein, da sonst die Nasen der Laschen nicht an dem Gehäuseboden einklicken können.</span></div>
<div></div>
<div><img loading="lazy" decoding="async" class="aligncenter wp-image-1229 zoooom" src="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-stecker-innenansicht.jpg" alt="Dupont Stecker innenansicht" width="2430" height="784" srcset="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-stecker-innenansicht.jpg 2437w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-stecker-innenansicht-300x97.jpg 300w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-stecker-innenansicht-1024x330.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-stecker-innenansicht-768x248.jpg 768w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-stecker-innenansicht-1536x495.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-stecker-innenansicht-2048x661.jpg 2048w" sizes="auto, (max-width: 2430px) 100vw, 2430px" /></div>
<div></div>
<div>
<div class="accordion">
<p>Die Abrundungen am Kabelsitz (Detail C) dienen der leichten Einführung der Kabel. Die Durchbrüche oder auch Fenster genannt waren ursprünglich für die Gegenseite eines Steckers als Haltepunkt gedacht. Dies habe ich aber verworfen, da das Haltemoment mehr als ausreichend ist. Die rechteckigen Durchbrüche helfen nun bei der Orientierung beim Zusammenbau.</p>
</div>
</div>
<h2>Zusammenbau</h2>
<p>Der Zusammenbau ist flott und kinderleicht. Das erste Dupont-Kabel legt man von vorne an eine der beiden Seitenwände und schiebt das Kabelgehäuse bis zum Anschlag (Detail D). Danach hält man das Gehäuse fest und zieht am Kabel um mögliches Spiel zwischen Crimp-Verbindung und Kabelgehäuse zu eliminieren. Das Kabel drückt man nun in die Kabelführung am Stecker Gehäuse. Analog die Vorgensweise mit Kabel Nummer 2, 3 und 4. Anschließend wird der Deckel auf das Gehäuse gedrückt bis es klickt.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1227 zoooom" src="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-case-look-through.jpg" alt="Dupont Stecker zusammengebaut" width="2360" height="1381" srcset="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-case-look-through.jpg 2369w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-case-look-through-300x176.jpg 300w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-case-look-through-1024x599.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-case-look-through-768x449.jpg 768w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-case-look-through-1536x899.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-case-look-through-2048x1198.jpg 2048w" sizes="auto, (max-width: 2360px) 100vw, 2360px" /></p>
<h2>Anwendungen</h2>
<p>Ursprünglich hatte ich dieses Stecker Design für ein Projekt mit vielen 4PIN RGB-Streifen konstruiert. Nach kurzer Zeit merkte ich wie praktisch die Konstruktion war. Ich kann es für den Arduino, Sensoren, LED Streifen, Raspberry Pi und vieles mehr verwenden und das ohne Löten oder anders Werkzeug zu benutzen. Natürlich weiß ich, dass man z.B am Arduino zwischen den Steckern immer 2 PINs Abstand lassen muss, aber im Alltag stört das eigentlich nicht.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1222 zoooom" src="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-examples.jpg" alt="dupont connection jumper cable examples" width="1110" height="1221" srcset="https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-examples.jpg 1116w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-examples-273x300.jpg 273w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-examples-931x1024.jpg 931w, https://nerd-corner.com/wp-content/uploads/2022/05/Dupont-jumper-cable-examples-768x845.jpg 768w" sizes="auto, (max-width: 1110px) 100vw, 1110px" /></p>
<h4><strong>Vorteile der Dupont Steckverbindung:</strong></h4>
<ul>
<li data-mce-word-list="1">Schnelle Montage</li>
<li data-mce-word-list="1">Universeller Einsatz</li>
<li data-mce-word-list="1">Enorme Haltekraft</li>
<li data-mce-word-list="1">Leicht zu drucken</li>
</ul>
<h4><strong>Nachteile der Dupont Steckverbindung:</strong></h4>
<ul>
<li>
<p data-mce-word-list="1">Größerer Platzbedarf</p>
</li>
</ul>
<h2>Dateien zum Herunterladen</h2>
<ul>
<li><a href="https://www.thingiverse.com/thing:5233256" target="_blank" rel="noopener">4 PIN Variante STL Datei</a></li>
<li><a href="https://www.thingiverse.com/thing:5243255" target="_blank" rel="noopener">3 PIN Variante STL Datei</a></li>
<li><a href="https://www.thingiverse.com/thing:5539871">5 PIN Variante STL Datei</a></li>
<li><a href="https://www.thingiverse.com/thing:5576023">6 PIN Variante STL Datei</a></li>
<li><a href="https://www.thingiverse.com/thing:5576064">7 PIN Variante STL Datei</a></li>
<li><a href="https://www.thingiverse.com/thing:5835440">6 PIN Variante STL Datei</a></li>
</ul>
<p>The post <a href="https://nerd-corner.com/de/3d-gedruckte-dupont-steckverbindung-fuer-jumper-kabel/">3D gedruckte Dupont Steckverbindung für Jumper Kabel</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nerd-corner.com/de/3d-gedruckte-dupont-steckverbindung-fuer-jumper-kabel/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
		<item>
		<title>Gedruckter Verbinder als Löthilfe für Jumperkabel und LED Streifen</title>
		<link>https://nerd-corner.com/de/gedruckter-verbinder-als-loethilfe-fuer-jumperkabel-und-led-streifen/</link>
					<comments>https://nerd-corner.com/de/gedruckter-verbinder-als-loethilfe-fuer-jumperkabel-und-led-streifen/#comments</comments>
		
		<dc:creator><![CDATA[Nerds]]></dc:creator>
		<pubDate>Sun, 24 Apr 2022 21:26:21 +0000</pubDate>
				<category><![CDATA[DIY]]></category>
		<category><![CDATA[SolidWorks-DE]]></category>
		<category><![CDATA[anlöten]]></category>
		<category><![CDATA[Anlöthilfe]]></category>
		<category><![CDATA[CAD]]></category>
		<category><![CDATA[festlöten]]></category>
		<category><![CDATA[Gehäuse]]></category>
		<category><![CDATA[Jumper Kabel]]></category>
		<category><![CDATA[led]]></category>
		<category><![CDATA[LED Streifen]]></category>
		<category><![CDATA[löten]]></category>
		<category><![CDATA[Löthilfe]]></category>
		<category><![CDATA[Lötzin]]></category>
		<category><![CDATA[Pin]]></category>
		<category><![CDATA[Pins]]></category>
		<category><![CDATA[Präzision]]></category>
		<category><![CDATA[RGB LED]]></category>
		<category><![CDATA[RGB LED Streifen]]></category>
		<category><![CDATA[Schritt für Schritt Anweisung]]></category>
		<category><![CDATA[Schrumpfschlauch]]></category>
		<category><![CDATA[Solid Works]]></category>
		<category><![CDATA[Verbinder]]></category>
		<category><![CDATA[Verkabelung]]></category>
		<guid isPermaLink="false">https://nerd-corner.com/?p=1191</guid>

					<description><![CDATA[<p>Bei einem Projekt habe ich viel Zeit in die Vorbereitung von Kabel investiert (zuschneiden, abisolieren, verdrillen und die Litzen mit Lot beträufeln). Für Prototypen benutze &#8230; </p>
<p>The post <a href="https://nerd-corner.com/de/gedruckter-verbinder-als-loethilfe-fuer-jumperkabel-und-led-streifen/">Gedruckter Verbinder als Löthilfe für Jumperkabel und LED Streifen</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Bei einem Projekt habe ich viel Zeit in die Vorbereitung von Kabel investiert (zuschneiden, abisolieren, verdrillen und die Litzen mit Lot beträufeln). Für Prototypen benutze ich dagegen meist Jumper Kabel. Dabei habe ich mir schon öfters gedacht, dass es unglaublich praktisch wäre Jumper Kabel auch im Endprodukt zu verwenden.</p>
<p>Daher habe ich einen Schnellverbinder im CAD designt mit dem Jumper Kabel sehr einfach verlötet werden können. Der Verbinder dient als ideale Löthilfe. Natürlich muss auch der Litzen Querschnitt für die benötigte Amperezahl ausreichen! Auf dem Markt gibt es hauptsächlich minderwertige Schnellverbinder. Meine STL Datei ist dagegen günstig und funktioniert einwandfrei.</p>
<p><em><strong>Das könnte dich auch interessieren:</strong> <a href="http://nerd-corner.com" target="_blank" rel="noopener">Universal einsetzbares Steckergehäuse!</a></em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1206 zoooom" src="https://nerd-corner.com/wp-content/uploads/2022/04/custom-designed-connector-soldering-aid-scaled.jpg" alt="custom designed connector soldering aid" width="2550" height="1435" srcset="https://nerd-corner.com/wp-content/uploads/2022/04/custom-designed-connector-soldering-aid-scaled.jpg 2560w, https://nerd-corner.com/wp-content/uploads/2022/04/custom-designed-connector-soldering-aid-300x169.jpg 300w, https://nerd-corner.com/wp-content/uploads/2022/04/custom-designed-connector-soldering-aid-1024x576.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2022/04/custom-designed-connector-soldering-aid-768x432.jpg 768w, https://nerd-corner.com/wp-content/uploads/2022/04/custom-designed-connector-soldering-aid-1536x864.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2022/04/custom-designed-connector-soldering-aid-2048x1152.jpg 2048w" sizes="auto, (max-width: 2550px) 100vw, 2550px" /></p>
<h2>Liste der Komponenten</h2>
<ul>
<li><a href="https://amzn.to/3kaCY92" target="_blank" rel="noopener">4 Pin RGB LED Streifen</a></li>
<li><a href="https://amzn.to/3kbBpI9" target="_blank" rel="noopener">Jumper Kabel</a></li>
<li><a href="https://amzn.to/3MxERcl" target="_blank" rel="noopener">Schrumpfschlauch</a></li>
<li><a href="https://amzn.to/3vdhuPr" target="_blank" rel="noopener">Heißkleber</a></li>
</ul>
<h2>Anwendung im Projekt</h2>
<p>Für ein größeres Projekt brauchte ich 16 RGB Streifen mit je 21 LEDs. Die Streifen wurden nachher in eine 3D gedruckte Fassung geschoben. Der LED-Streifen wurde direkt an der vormarkierten Stelle mit einer handelsüblichen Schere getrennt (meistens sind die RGB-Streifen nach jeder dritten LED teilbar).</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1202 zoooom" src="https://nerd-corner.com/wp-content/uploads/2022/04/Ergebnis-Lothilfe-Anlothilfe-scaled.jpg" alt="Löthilfe connector" width="1440" height="2556" srcset="https://nerd-corner.com/wp-content/uploads/2022/04/Ergebnis-Lothilfe-Anlothilfe-scaled.jpg 1442w, https://nerd-corner.com/wp-content/uploads/2022/04/Ergebnis-Lothilfe-Anlothilfe-169x300.jpg 169w, https://nerd-corner.com/wp-content/uploads/2022/04/Ergebnis-Lothilfe-Anlothilfe-577x1024.jpg 577w, https://nerd-corner.com/wp-content/uploads/2022/04/Ergebnis-Lothilfe-Anlothilfe-768x1364.jpg 768w, https://nerd-corner.com/wp-content/uploads/2022/04/Ergebnis-Lothilfe-Anlothilfe-865x1536.jpg 865w, https://nerd-corner.com/wp-content/uploads/2022/04/Ergebnis-Lothilfe-Anlothilfe-1153x2048.jpg 1153w" sizes="auto, (max-width: 1440px) 100vw, 1440px" /></p>
<p>Bei den Jumper-Kabeln habe ich eine Seite männlich und die andere weiblich gewählt. Die Seite mit den PINs (männlich) wurden an den RGB-Streifen gelötet und die Buchse (weiblich) als Stecker benutzt. Es ist entscheidend Jumper-Kabel mit quadratischem Gehäuse (Standardabmessung: 2,54 mm). Die Länge des Plastikgehäuses spielt keine Rolle. Je nach Marke sind die Plastikgehäuse 12 mm oder 14 mm lang.</p>
<h2>Ablauf</h2>
<p>Da keine Vorarbeit an den Kabeln notwendig ist kann direkt mit dem Löten begonnen werden. Ich bevorzuge zuerst am RGB-Streifen an den Lötstellen (Kupferschicht) Lot aufzubringen.  Danach löte ich die PINs an die Lötstellen ohne zusätzliches Lot. Die PINs sollten nicht zu tief Richtung LED verlötet werden und die Ausrichtung muss passen.</p>
<p>Anschließend kommt der Verbinder ins Spiel. Dieser Verbinder ist an der RGB Seite und nach oben offen. Der RGB-Streifen wird in den Verbinder eingelegt, sodass die Lötstellen sich im Verbinder befinden. Im Anschluss werden die vier Kabel in die Schlitze gedrückt und die Lötstellen evtl. mit Heißkleber versiegelt. Ich empfehle zur Sicherheit noch einen 12er Schrumpfschlauch anzubringen. Dadurch erhält man eine superstarke Verbindung!</p>
<p><img loading="lazy" decoding="async" class="wp-image-1203 aligncenter zoooom" src="https://nerd-corner.com/wp-content/uploads/2022/04/led-connector-Lothilfe.jpg" alt="led connector löthilfe" width="450" height="752" srcset="https://nerd-corner.com/wp-content/uploads/2022/04/led-connector-Lothilfe.jpg 454w, https://nerd-corner.com/wp-content/uploads/2022/04/led-connector-Lothilfe-179x300.jpg 179w" sizes="auto, (max-width: 450px) 100vw, 450px" /></p>
<h2>Arbeitsschritte in Bildern</h2>
<p><img loading="lazy" decoding="async" class="zoooom aligncenter wp-image-1196" src="https://nerd-corner.com/wp-content/uploads/2022/04/Arbeitsfolge.jpg" alt="work steps for the connector (Löthilfe)" width="490" height="1338" srcset="https://nerd-corner.com/wp-content/uploads/2022/04/Arbeitsfolge.jpg 494w, https://nerd-corner.com/wp-content/uploads/2022/04/Arbeitsfolge-110x300.jpg 110w, https://nerd-corner.com/wp-content/uploads/2022/04/Arbeitsfolge-375x1024.jpg 375w" sizes="auto, (max-width: 490px) 100vw, 490px" /></p>
<h4><strong>Vorteile:</strong></h4>
<ul>
<li>Keine Kabelvorbereitung</li>
<li>Starke Verbindung</li>
<li>Einfacher 3D Druck</li>
</ul>
<h4><strong>Nachteile:</strong></h4>
<ul>
<li>Benötigt mehr Platz</li>
<li>STL Datei nur für RGB Streifen mit 10 mm Breite</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1208 zoooom" src="https://nerd-corner.com/wp-content/uploads/2022/04/RGBjoiner1.jpg" alt="CAD design soldering aid connector" width="1810" height="764" srcset="https://nerd-corner.com/wp-content/uploads/2022/04/RGBjoiner1.jpg 1817w, https://nerd-corner.com/wp-content/uploads/2022/04/RGBjoiner1-300x127.jpg 300w, https://nerd-corner.com/wp-content/uploads/2022/04/RGBjoiner1-1024x432.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2022/04/RGBjoiner1-768x324.jpg 768w, https://nerd-corner.com/wp-content/uploads/2022/04/RGBjoiner1-1536x648.jpg 1536w" sizes="auto, (max-width: 1810px) 100vw, 1810px" /></p>
<p>&nbsp;</p>
<h2>Datei zum Herunterladen</h2>
<ul>
<li style="list-style-type: none;">
<ul style="margin-left: 1rem;">
<li><a href="https://www.thingiverse.com/thing:5223739" target="_blank" rel="noopener">STL Datei der Anlöthilfe</a></li>
</ul>
</li>
</ul>
<p>The post <a href="https://nerd-corner.com/de/gedruckter-verbinder-als-loethilfe-fuer-jumperkabel-und-led-streifen/">Gedruckter Verbinder als Löthilfe für Jumperkabel und LED Streifen</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nerd-corner.com/de/gedruckter-verbinder-als-loethilfe-fuer-jumperkabel-und-led-streifen/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Upgrade: Datentransfer mittels VLC und LiFi – Pi zu Pi Übertragung</title>
		<link>https://nerd-corner.com/de/upgrade-datentransfer-mittels-vlc-und-lifi-pi-zu-pi-uebertragung/</link>
					<comments>https://nerd-corner.com/de/upgrade-datentransfer-mittels-vlc-und-lifi-pi-zu-pi-uebertragung/#comments</comments>
		
		<dc:creator><![CDATA[Nerds]]></dc:creator>
		<pubDate>Thu, 08 Jul 2021 13:53:33 +0000</pubDate>
				<category><![CDATA[DIY]]></category>
		<category><![CDATA[Hardware-DE]]></category>
		<category><![CDATA[Linux-DE]]></category>
		<category><![CDATA[Software-DE]]></category>
		<category><![CDATA[C Programmierung]]></category>
		<category><![CDATA[CAD]]></category>
		<category><![CDATA[Datenübertragung]]></category>
		<category><![CDATA[Datenübertragung per Licht]]></category>
		<category><![CDATA[Genauigkeit]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Kommunikationstechnik]]></category>
		<category><![CDATA[LiFi]]></category>
		<category><![CDATA[LiFI Router]]></category>
		<category><![CDATA[Light Fidelity]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Lüfter]]></category>
		<category><![CDATA[Präzision]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[visible Light communication]]></category>
		<category><![CDATA[visuelle Lichtkommunikation]]></category>
		<category><![CDATA[VLC]]></category>
		<category><![CDATA[zyklische Redundanzprüfung]]></category>
		<guid isPermaLink="false">https://nerd-corner.com/?p=964</guid>

					<description><![CDATA[<p>Nachdem ich bereits einfache Textnachrichten mittels Lichtsignale von einem Raspberry Pi zu einem Arduino Uno übertragen habe ( Link: https://nerd-corner.com/de/textnachrichten-mittels-lichtsignale-senden-pi-zu-arduino/ ) wollte ich dieses System &#8230; </p>
<p>The post <a href="https://nerd-corner.com/de/upgrade-datentransfer-mittels-vlc-und-lifi-pi-zu-pi-uebertragung/">Upgrade: Datentransfer mittels VLC und LiFi – Pi zu Pi Übertragung</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Nachdem ich bereits einfache Textnachrichten mittels Lichtsignale von einem Raspberry Pi zu einem Arduino Uno übertragen habe ( Link: <a href="https://nerd-corner.com/de/textnachrichten-mittels-lichtsignale-senden-pi-zu-arduino/">https://nerd-corner.com/de/textnachrichten-mittels-lichtsignale-senden-pi-zu-arduino/</a> ) wollte ich dieses System verbessern, um jegliche Dateiformate in beide Richtungen übertragen zu können. Da ein Raspberry Pi mit Linux betrieben wird, kann dieses System zur Datenübertragung mittels VLC (visueller Lichtkommunikation) auf alle Linux Geräte übertragen werden. Der Software Code und die STL Dateien können am Ende des Blogeintrags heruntergeladen werden.</p>
<p><em><strong>Das könnte dich auch interessieren:</strong> <a href="https://nerd-corner.com/de/textnachrichten-mittels-lichtsignale-senden-pi-zu-arduino/" target="_blank" rel="noopener">Textnachrichten mittels Lichtsignale senden</a></em></p>
<p><em><strong>Eng mit diesem Artikel verbunden:</strong> <a href="https://nerd-corner.com/de/zyklische-redundanzpruefung-in-c/" target="_blank" rel="noopener">Fehlererkennung bei der Datenübertragung</a></em></p>
<p><em><strong>Ebenfalls relevant:</strong> <a href="https://nerd-corner.com/de/wie-programmiert-man-einen-praezisen-timer-in-c-fuer-linux/" target="_blank" rel="noopener">Taktgeschwindigkeit für eine Datenübertragung festlegen in C</a></em></p>
<h2>Liste der Bauteile</h2>
<ul>
<li><a href="https://amzn.to/3zlaLSJ" target="_blank" rel="noopener">2x Raspberry Pi 4</a></li>
<li><a href="https://amzn.to/3zhH6to" target="_blank" rel="noopener">2x 5V Solarzelle</a></li>
<li><a href="https://amzn.to/3rkpOZU" target="_blank" rel="noopener">2x 5V Laserdiode</a></li>
<li><a href="https://amzn.to/2Uu9AkT" target="_blank" rel="noopener">Jumper Kabel</a></li>
<li><a href="https://amzn.to/3exAv6g" target="_blank" rel="noopener">3D Drucker</a></li>
<li><a href="https://amzn.to/3hST9I2" target="_blank" rel="noopener">Filament</a></li>
<li><a href="https://amzn.to/3kwoX7c" target="_blank" rel="noopener">2x 5V Lüfter</a></li>
<li><a href="https://amzn.to/2UvY34L" target="_blank" rel="noopener">NPN Transistor</a></li>
<li>2x ADC Board mit einem LM393</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-966 zoooom" src="https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-parts-scaled.jpg" alt="Datenübertragung mit Licht Einzelteile" width="2500" height="1681" srcset="https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-parts-scaled.jpg 2560w, https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-parts-300x202.jpg 300w, https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-parts-1024x689.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-parts-768x516.jpg 768w, https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-parts-1536x1033.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-parts-2048x1377.jpg 2048w" sizes="auto, (max-width: 2500px) 100vw, 2500px" /></p>
<h2>Verkabelung</h2>
<p>Anders als bei der Verkabelung im letzten Artikel, in dem Textnachrichten mittels Lichtsignale von einem Pi zu einem Arduino gesendet wurden ( Link: <a href="https://nerd-corner.com/de/textnachrichten-mittels-lichtsignale-senden-pi-zu-arduino/">https://nerd-corner.com/de/textnachrichten-mittels-lichtsignale-senden-pi-zu-arduino/</a> ), gibt es jetzt keinen definierten Empfänger und keinen definierten Sender. Es werden stattdessen zwei baugleiche Stationen aufgebaut, die sowohl Daten senden und empfangen können.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-965 zoooom" src="https://nerd-corner.com/wp-content/uploads/2021/07/FritzingPiTransceiver_Steckplatine.png" alt="Fritzing Pi VLC LiFI" width="2250" height="1459" srcset="https://nerd-corner.com/wp-content/uploads/2021/07/FritzingPiTransceiver_Steckplatine.png 2270w, https://nerd-corner.com/wp-content/uploads/2021/07/FritzingPiTransceiver_Steckplatine-300x195.png 300w, https://nerd-corner.com/wp-content/uploads/2021/07/FritzingPiTransceiver_Steckplatine-1024x664.png 1024w, https://nerd-corner.com/wp-content/uploads/2021/07/FritzingPiTransceiver_Steckplatine-768x498.png 768w, https://nerd-corner.com/wp-content/uploads/2021/07/FritzingPiTransceiver_Steckplatine-1536x996.png 1536w, https://nerd-corner.com/wp-content/uploads/2021/07/FritzingPiTransceiver_Steckplatine-2048x1328.png 2048w" sizes="auto, (max-width: 2250px) 100vw, 2250px" /></p>
<p>Aus diesem Grund werden die Raspberry Pi’s sowohl mit einem 5V Laser als auch mit einer 5V Solarzelle verbunden. Für den Laser wurde der GPIO18 Pin gewählt, welcher in der „wiringPi“ Library Pin 1 entspricht. Die „wiringPi“ Library wird im Programmcode verwendet. Direkt unter GPIO18 befindet sich ein Ground, welcher mit dem Minus Pol des Lasers verbunden wird.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-967 zoooom" src="https://nerd-corner.com/wp-content/uploads/2021/07/GPIO.png" alt="Datenübertragung mittels Licht Pi" width="1500" height="1125" srcset="https://nerd-corner.com/wp-content/uploads/2021/07/GPIO.png 1600w, https://nerd-corner.com/wp-content/uploads/2021/07/GPIO-300x225.png 300w, https://nerd-corner.com/wp-content/uploads/2021/07/GPIO-1024x768.png 1024w, https://nerd-corner.com/wp-content/uploads/2021/07/GPIO-768x576.png 768w, https://nerd-corner.com/wp-content/uploads/2021/07/GPIO-1536x1152.png 1536w" sizes="auto, (max-width: 1500px) 100vw, 1500px" /></p>
<p>Die Solarzelle liefert je nach Lichtintensität einen entsprechenden Spannungswert. Da die digitalen Pins des Raspberry Pi aber nur 1 und 0 erkennen können, muss mit Hilfe eines Komparators der analoge Wert der Solarzelle in einen digitalen Wert gewandelt werden. Der Vorgang wird genauer im Abschnitt „ADC Board mit einem LM393 Komparator“ erläutert. Für die Verkabelung wird der Plus und Minus Pol der Solarzelle mit den Plus und Minus Kontakten des ADC Boards verbunden. Anschließend wird der Ground des ADC Boards an einen Raspberry Pi Ground verbunden und für die Spannungsversorgung der Plus Pol des ADC Boards mit 5V des Pi verbunden. Der D0 Pin des ADC Boards liefert den digitalen Wert 0 oder 1, abhängig von der Lichtintensität der Solarzelle. Diesen Pin habe ich mit GPIO17, welcher in der „wiringPi“ Library Pin 0 entspricht, verbunden.</p>
<p>Da mir aufgefallen ist, dass der Pi im Betrieb sehr heiß wird, habe ich noch einen Lüfter angeschlossen. Damit der Lüfter sich nicht dauerhaft im Betrieb befindet, was sich negativ auf die Leistung des Lasers auswirken würde, kann der Lüfter durch einen NPN Transistor geschalten werden. Hierfür verbindet man den Plus Pol des Lüfters direkt mit einem 5V Pin des Raspberry Pi und den Minus Pol des Lüfters mit dem Emitter des NPN Transistors. Der Collector des Transistors wird mit einem Ground des Pi verbunden. Um nun den Lüfter über den Transistor ein- und ausschalten zu können wird die Transistor Basis mit einem GPIO Pin verbunden. Ich habe beispielsweise GPIO27 (entspricht in der „wiringPi“ Library Pin 2) gewählt. In der Nachfolgenden Tabelle werden die Pins des Pi der Nummerierung der „wiringPi“ Library gegenüber gestellt.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-940 zoooom" src="https://nerd-corner.com/wp-content/uploads/2021/06/pinbelegung-Pi.png" alt="VLC Textnachrichten visuelle Lichtkommunikation wiringPi Datenübertragung mit Licht" width="599" height="295" srcset="https://nerd-corner.com/wp-content/uploads/2021/06/pinbelegung-Pi.png 600w, https://nerd-corner.com/wp-content/uploads/2021/06/pinbelegung-Pi-300x148.png 300w" sizes="auto, (max-width: 599px) 100vw, 599px" /></p>
<h2>ADC Board mit einem LM393 Komparator</h2>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-968 zoooom" src="https://nerd-corner.com/wp-content/uploads/2021/07/ADC-LM393.jpg" alt="ADC Board mit LM393 Komparator" width="450" height="319" srcset="https://nerd-corner.com/wp-content/uploads/2021/07/ADC-LM393.jpg 771w, https://nerd-corner.com/wp-content/uploads/2021/07/ADC-LM393-300x213.jpg 300w, https://nerd-corner.com/wp-content/uploads/2021/07/ADC-LM393-768x545.jpg 768w, https://nerd-corner.com/wp-content/uploads/2021/07/ADC-LM393-120x85.jpg 120w" sizes="auto, (max-width: 450px) 100vw, 450px" /></p>
<p>Die Solarzelle gibt abhängig von der Lichtintensität einen Spannungswert zurück. Leider hat der Raspberry Pi aber keine analogen Pins um diesen Spannungswert auszulesen. Daher muss das analoge Signal in ein digitales Signal umgewandelt werden. Mit Hilfe des <a href="https://www.ti.com/product/LM393" target="_blank" rel="noopener">LM393</a> Komparators ist das möglich. Dieser ist häufig auf ADC Boards verbaut. Hier habe ich einfach den ursprünglichen Sensor (es war ein Fotowiderstand) durch die Solarzelle ersetzt. Mit Hilfe eines Potentiometers kann der Komparator eingestellt werden. Das bedeutet, sobald der Spannungswert der Solarzelle, welcher von der Lichtintensität abhängt, den eingestellten Wert des Potentiometers übersteigt, wird eine digitale 1 gemessen, anderenfalls eine digitale 0.</p>
<h2>Aufbau des Datenframes</h2>
<p><img loading="lazy" decoding="async" class="zoooom aligncenter wp-image-969" src="https://nerd-corner.com/wp-content/uploads/2021/07/MultipleFrames-1.jpg" alt="Aufbau Datenframe Lichtübertragung Daten Datentransfer mittels VLC" width="1300" height="469" srcset="https://nerd-corner.com/wp-content/uploads/2021/07/MultipleFrames-1.jpg 1409w, https://nerd-corner.com/wp-content/uploads/2021/07/MultipleFrames-1-300x108.jpg 300w, https://nerd-corner.com/wp-content/uploads/2021/07/MultipleFrames-1-1024x369.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2021/07/MultipleFrames-1-768x277.jpg 768w" sizes="auto, (max-width: 1300px) 100vw, 1300px" /></p>
<p>Der Datenframe für das Versenden der Textnachrichten mittels visueller Lichtkommunikation (Link: <a href="https://nerd-corner.com/de/textnachrichten-mittels-lichtsignale-senden-pi-zu-arduino/">https://nerd-corner.com/de/textnachrichten-mittels-lichtsignale-senden-pi-zu-arduino/</a> ) bestand aus einer Preamble, der Länge der Textnachricht, dem Textinhalt und der zyklischen Redundanzprüfung. Um aber statt Textnachrichten alle möglichen Arten von Daten verschicken zu können muss anstelle der Länge der Textnachricht der Dateiname, die Dateiendung, die Gesamtzahl der Pakete und die Nummer des aktuellen Pakets angegeben werden. Anschließend kann der Dateninhalt und der Code der zyklischen Redundanzprüfung angefügt werden.</p>
<h2>Softwarecode für Datentransfer mittels VLC</h2>
<p>Im Grunde wurden die Empfänger- und Senderskripte aus dem vorherigen Projekt zum Senden von Textnachrichten mittels visueller Lichtkommunikation (Link: <a href="https://nerd-corner.com/de/textnachrichten-mittels-lichtsignale-senden-pi-zu-arduino/" target="_blank" rel="noopener">https://nerd-corner.com/de/textnachrichten-mittels-lichtsignale-senden-pi-zu-arduino/</a> ) weiterentwickelt und zu einem gemeinsamen Skript zusammengefasst. Welches auf beiden Raspberry Pi’s Anwendung findet. Es wurde beispielsweise eine „ReadFile“ und „WriteFile“ Funktion ergänzt, welche Dateien einlesen und empfangene Datenpakete zu einer Datei zusammenfassen und abspeichern können. Das Programm wurde wieder in C geschrieben, da eine hohe Geschwindigkeit bei der Datenübertragung erreicht werden soll. Details zur präzisen Programmierung in C für eine schnelle Datenübertragung in diesem Beitrag: <a href="https://nerd-corner.com/de/wie-programmiert-man-einen-praezisen-timer-in-c-fuer-linux/" target="_blank" rel="noopener">https://nerd-corner.com/de/wie-programmiert-man-einen-praezisen-timer-in-c-fuer-linux/</a></p>
<p>Der gesamte Softwarecode zum Datentransfer mittels VLC kann am Ende des Artikels heruntergeladen werden. Der Kern des Programms ist wieder eine State Maschine mit Hilfe derer ausgewählt werden kann, ob Daten gesendet oder empfangen werden sollen. Außerdem schaltet das Programm automatisch den Lüfter an, wenn keine Datenübertragung stattfindet. Wichtig: Beim Kompilieren bitte nicht die „<a href="http://wiringpi.com/" target="_blank" rel="noopener">wiringPi</a>“ Bibliothek und die &#8222;math.h&#8220; Bibliothek vergessen! Der Befehl lautet: „gcc -o transceiver transceiver.c -lwiringPi -lm“</p>
<pre class="EnlighterJSRAW" data-enlighter-language="c" data-enlighter-group="transceiver" data-enlighter-title="transceiver.c">while(1)
    {
        digitalWrite (2, HIGH);
        printf("Press the R button for Receiver Mode or any other key for Sender Mode\n");
        scanf(" %c",&amp;mode);
        
        if (mode=='R'||mode=='r')
        {
            digitalWrite(2,LOW);
            modeReceiver=true;
        }
        
        if (mode!='R'&amp;&amp;mode!='r')
        {
            digitalWrite(2,LOW);
            modeReceiver=false;
            
            char dataName[NAME_MAX];
            char dataExtension[NAME_MAX];
            
               
            printf("\n Name of file WITHOUT extension: ");
            scanf("%s",dataName);

            printf("\n Extension: ");
            scanf("%s",dataExtension);

            if (read_file(dataName, dataExtension, file_content) != OK)
            {
                printf("File read error, size exceeds array size\n");
                return -1;
            }
            BuildDataFrame(dataName, dataExtension, file_content);
        }
        
        
        
        while(modeReceiver)
        {
            gettimeofday(&amp;tval_after, NULL);
            timersub(&amp;tval_after, &amp;tval_before, &amp;tval_result);
            double time_elapsed = (double)tval_result.tv_sec + ((double)tval_result.tv_usec/1000000.0f);
            
            while(time_elapsed &lt; 0.001)
            {
                gettimeofday(&amp;tval_after, NULL);
                timersub(&amp;tval_after, &amp;tval_before, &amp;tval_result);
                time_elapsed = (double)tval_result.tv_sec + ((double)tval_result.tv_usec/1000000.0f);
            }
            gettimeofday(&amp;tval_before, NULL);
            
            int data = digitalRead(0);
            
            
            switch (state)
            {
                case 0:
                    //looking for preamble pattern
                    synchro_Done=false;
                    LookForSynchro(data);
                    
                    if (synchro_Done==true)
                    {
                        state=1;
                    }
                    break;
                    
                case 1:
                    //receive the actual data
                    receiveData_Done=false;
                    senderState=false;
                    ReceiveData(data);
                    
                    if(receiveData_Done&amp;&amp;senderState==false)
                    {
                        state=0;
                    }
                    if(senderState==true){
                        senderState=false;
                        state=0;
                        modeReceiver=false;
                        }
                    break;
                  
            }
            
        }
    }</pre>
<p>&nbsp;</p>
<h2>Gehäuse</h2>
<p>Um die Komponenten an Ort und Stelle fixieren zu können, wurde im CAD ein Gehäuse konstruiert. Dies hat auch den Vorteil, dass keine komplizierte Ausrichtung der Laser und der Solarzellen für die Datenübertragung notwendig ist. Für Anfänger eignet sich TinkerCAD zum Gehäuse design. TinkerCAD ist kostenlos und kann direkt im Browser benutzt werden. Alternativ können die STL Files für den 3D Drucker auch hier heruntergeladen werden.</p>
<p><img loading="lazy" decoding="async" class="zoooom aligncenter wp-image-970" src="https://nerd-corner.com/wp-content/uploads/2021/07/gehaeuse-CAD.jpg" alt="Datenübertragung per Licht Gehäuse Datentransfer mittels VLC" width="600" height="530" srcset="https://nerd-corner.com/wp-content/uploads/2021/07/gehaeuse-CAD.jpg 682w, https://nerd-corner.com/wp-content/uploads/2021/07/gehaeuse-CAD-300x265.jpg 300w" sizes="auto, (max-width: 600px) 100vw, 600px" /></p>
<p>Das Gehäuse zum Datentransfer mittels VLC besitzt eine Öffnung für die Solarzelle und den Laser. Außerdem wurde ein Abluftschacht für den Lüfter konstruiert und zusätzlich Platz für ein Raspberry Pi Gehäuse frei gelassen. Im nachfolgenden Bild wird der Einbau der Komponenten dargestellt.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-971 zoooom" src="https://nerd-corner.com/wp-content/uploads/2021/07/assembly-end-scaled.jpg" alt="Datenübertragung per Licht Lifi VLC" width="2500" height="1875" srcset="https://nerd-corner.com/wp-content/uploads/2021/07/assembly-end-scaled.jpg 2560w, https://nerd-corner.com/wp-content/uploads/2021/07/assembly-end-300x225.jpg 300w, https://nerd-corner.com/wp-content/uploads/2021/07/assembly-end-1024x768.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2021/07/assembly-end-768x576.jpg 768w, https://nerd-corner.com/wp-content/uploads/2021/07/assembly-end-1536x1152.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2021/07/assembly-end-2048x1536.jpg 2048w" sizes="auto, (max-width: 2500px) 100vw, 2500px" /></p>
<h2>Fazit zum Datentransfer mittels VLC</h2>
<p>Es wurde das bereits bestehende System zum Senden von Textnachrichten mittels visueller Lichtsignale weiterentwickelt, sodass jetzt alle Arten von Daten gesendet und empfangen werden können. Das System funktioniert erstaunlich erfolgreich. Es ist sehr robust und erreicht eine Datenrate von 1 kBit/s bis 10 kBit/s. Alle ankommenden Datenpakete können durch den intelligenten Aufbau des Datenframes direkt zugeordnet werden. Lediglich ein Acknowledgement Signal wäre noch eine sinnvolle Ergänzung. Ein solches Signal wäre eine Rückmeldung vom Empfänger an den Sender um dem Sender mitzuteilen, dass alle Pakete angekommen sind, oder eventuell ein bestimmtes Paket fehlerhaft war und erneut gesendet werden muss.</p>
<p>Ebenfalls interessant für die Zukunft wäre andere Modulationsarten auszuprobieren. Besonders das speziell für visuelle Lichtkommunikation erdachte Colour Shift Keying würde ich gerne näher untersuchen und die daraus resultierenden Datenraten vergleichen.</p>
<p><img loading="lazy" decoding="async" class="zoooom aligncenter wp-image-972" src="https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-finish-scaled.jpg" alt="Datenübertragung per Licht Gehäuse Lifi VLC Datentransfer mittels VLC" width="2500" height="1125" srcset="https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-finish-scaled.jpg 2560w, https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-finish-300x135.jpg 300w, https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-finish-1024x461.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-finish-768x346.jpg 768w, https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-finish-1536x691.jpg 1536w, https://nerd-corner.com/wp-content/uploads/2021/07/Assembly-finish-2048x922.jpg 2048w" sizes="auto, (max-width: 2500px) 100vw, 2500px" /></p>
<h2>Dateien herunterladen:</h2>
<ul>
<li><a  data-e-Disable-Page-Transition="true" class="download-link" title="" href="https://nerd-corner.com/de/download/977/?tmstv=1756336368" rel="nofollow" id="download-link-977" data-redirect="false" >
	Softwarecode Transceiver</a>
</li>
<li><a href="https://cults3d.com/en/3d-model/various/visible-light-communication-pi-housing" target="_blank" rel="noopener">STL files housing</a></li>
<li><a  data-e-Disable-Page-Transition="true" class="download-link" title="" href="https://nerd-corner.com/de/download/991/?tmstv=1756336368" rel="nofollow" id="download-link-991" data-redirect="false" >
	Pi Case with free pins (Creative Common License from Thingiverse)</a>
</li>
</ul>
<p>&nbsp;</p>
<p>The post <a href="https://nerd-corner.com/de/upgrade-datentransfer-mittels-vlc-und-lifi-pi-zu-pi-uebertragung/">Upgrade: Datentransfer mittels VLC und LiFi – Pi zu Pi Übertragung</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nerd-corner.com/de/upgrade-datentransfer-mittels-vlc-und-lifi-pi-zu-pi-uebertragung/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Arduino Timer Interrupts – Arduino Register programmieren</title>
		<link>https://nerd-corner.com/de/arduino-timer-interrupts-arduino-register-programmieren/</link>
					<comments>https://nerd-corner.com/de/arduino-timer-interrupts-arduino-register-programmieren/#comments</comments>
		
		<dc:creator><![CDATA[Nerds]]></dc:creator>
		<pubDate>Sat, 06 Mar 2021 23:47:26 +0000</pubDate>
				<category><![CDATA[Arduino Projekte]]></category>
		<category><![CDATA[Hardware-DE]]></category>
		<category><![CDATA[Software-DE]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Arduino Uno]]></category>
		<category><![CDATA[Bedienungsanleitung]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[C Programmierung]]></category>
		<category><![CDATA[Genauigkeit]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Präzision]]></category>
		<category><![CDATA[Schritt für Schritt Anweisung]]></category>
		<category><![CDATA[Timer]]></category>
		<category><![CDATA[Timer Interrupts]]></category>
		<guid isPermaLink="false">https://nerd-corner.com/?p=851</guid>

					<description><![CDATA[<p>Wenn du eine regelmäßige Frequenz mit dem Arduino erreichen willst, kannst du einfach die delay() Funktion verwenden. Diese pausiert das Programm des Arduinos für die &#8230; </p>
<p>The post <a href="https://nerd-corner.com/de/arduino-timer-interrupts-arduino-register-programmieren/">Arduino Timer Interrupts – Arduino Register programmieren</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Wenn du eine regelmäßige Frequenz mit dem Arduino erreichen willst, kannst du einfach die delay() Funktion verwenden. Diese pausiert das Programm des Arduinos für die entsprechende Zeitspanne. Wenn die Anforderungen höher sind, kannst du auch millis() oder nanos() als Timer verwenden. Die delay() und millis() Funktionen sind wahrscheinlich für die meisten Anwendungen ausreichend, aber wenn du nicht das ganze Programm pausieren oder eine 100% exakte Taktzeit erreichen willst, macht es Sinn, Arduino Timer Interrupts zu verwenden. Wir erklären was Timer Interrupts sind und wie man sie benutzt. Den Arduino Code findest du am Ende des Beitrags.</p>
<p><em><strong>Das könnte dich auch interessieren:</strong> <a href="https://nerd-corner.com/de/wie-programmiert-man-einen-praezisen-timer-in-c-fuer-linux/" target="_blank" rel="noopener noreferrer">Raspberry Pi Timer programmieren in C</a></em></p>
<h2>Liste der Komponenten</h2>
<ul>
<li><a href="https://amzn.to/3Bhpobz" target="_blank" rel="noopener">Arduino Uno</a></li>
<li><a href="https://amzn.to/3kAMzHH" target="_blank" rel="noopener">LED</a></li>
<li><a href="https://amzn.to/3xSmA2m" target="_blank" rel="noopener">Jumper Kabel</a></li>
<li><a href="https://amzn.to/3y5rp8N" target="_blank" rel="noopener">220 Ohm Widerstand</a></li>
<li><a href="https://amzn.to/3zhDcke" target="_blank" rel="noopener">Steckbrett</a></li>
</ul>
<h2>Was ist eigentlich ein Timer?</h2>
<p>Ein Timer ist im Grunde nichts anderes als ein bestimmtes Register im Mikrocontroller, das hardwaregesteuert kontinuierlich um 1 erhöht (oder verringert) wird. Anstatt Anweisungen im Programm zu kodieren, die regelmäßig ausgeführt werden und ein Register um 1 erhöhen, macht der Mikrocontroller das ganz von alleine!</p>
<p>Dies wird nützlich, wenn eine Aktion bei bestimmten Zählerwerten ausgeführt wird. Einer dieser &#8218;bestimmten Zählerstände&#8216; ist zum Beispiel der Überlauf. Das Zählregister eines Timers kann nicht beliebig lange inkrementiert werden. Z.B. ist der höchste Zählerstand, den ein 8-Bit-Timer erreichen kann, 2^8 &#8211; 1 = 255. Der nächste Schritt ist nicht 256, sondern es kommt zu einem Überlauf, der den Timer wieder auf 0 setzt. Das ist die ganze Magie! Wir können den Controller so konfigurieren, dass ein Interrupt ausgelöst wird, wenn der Timer überläuft. Anschließend können wir einen Code in das Arduino Programm schreiben, der im Falle eines Interrupts ausgeführt wird. Zum Beispiel können wir eine LED zum Leuchten bringen oder einen bestimmten Sensorwert abfragen.</p>
<h2>Arduino Uno Mikrocontroller ATMEGA328P</h2>
<p><img loading="lazy" decoding="async" class="alignright wp-image-784 size-medium zoooom" src="https://nerd-corner.com/wp-content/uploads/2020/11/ATMEGA328P-300x274.jpg" alt="Microcontroller ATMEGA328P Nerd Corner Arduino Uno Timer Interrupts" width="300" height="274" srcset="https://nerd-corner.com/wp-content/uploads/2020/11/ATMEGA328P-300x274.jpg 300w, https://nerd-corner.com/wp-content/uploads/2020/11/ATMEGA328P.jpg 466w" sizes="auto, (max-width: 300px) 100vw, 300px" /></p>
<p>Der ATMEGA328P-Mikrocontroller ist das Herzstück des Arduino Uno-Boards. (ACHTUNG: Der Arduino Mega z.B. hat einen anderen Mikrocontroller!) Der ATMEGA328P Mikrocontroller hat 3 Timer (<a href="https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf">Datenblatt</a>), die teilweise in Arduino-Funktionen und/oder teilweise in Bibliotheken verwendet werden. Das Überschreiben der Timer-Register kann daher zu Komplikationen mit bestehenden Timer-Funktionen wie millis(), micros() oder delay() führen und sollte mit Vorsicht verwendet werden. Die 3 Timer sind Timer0 (8Bit), Timer1 (16Bit) und Timer2 (8Bit).</p>
<ul>
<li>8 Bit-Timer0: wird genutzt für die Funktionen millis(), micros(), delay() und für PWM an Pin D5 und D6</li>
<li>16 Bit-Timer1: wird z. B. für die Bibliothek Servo, VirtualWire, TimerOne und für PWM an Pin D9 und D10 genutzt</li>
<li>8 Bit Timer2: wird genutzt für Funktion tone() und für PWM an Pin D3 und D11</li>
</ul>
<h2>Wie variiert man die Taktgeschwindigkeit?</h2>
<p>Der Systemtakt des Arduino Uno beträgt 16 MHz (CPU-Frequenz). Das bedeutet, dass Timer0, Timer1 und Timer2 16 Millionen Mal pro Sekunde hochlaufen. Die 8-Bit-Timer zählen z. B. jeweils von 0 bis 255. Bei 256 tritt ein Überlauf auf und die Timer beginnen wieder bei 0. Das bedeutet 16000000/256 = 62500 Überläufe pro Sekunde (62,5kHz Taktrate). Das ist für die meisten Timer-Anwendungen wahrscheinlich zu schnell!</p>
<p>Deshalb gibt es einen Trick, um die Taktraten zu verlangsamen. Man verwendet einen sogenannten Vorteiler (Prescaler). Ein Vorteiler kann auf die Werte 1, 8, 64, 256 oder 1024 eingestellt werden. Er ermöglicht es, den Systemtakt (16MHz) durch den gewählten Faktor zu teilen und eine niedrigere Taktrate für die Timer einzustellen. Ein Vorteiler von 1024 würde z. B. die Timer-Register nur beim 1024sten Systemtakt um 1 erhöhen. Das wären 16000000/1024=15625 Inkremente pro Sekunde und damit bei einem 8-Bit-Timer 15625/256= 61,035 Überläufe pro Sekunde (~61 Hz Taktrate des Timers).</p>
<h2>Anwendungsbeispiel: LED soll mit 50 Hz blinken</h2>
<p>Im Folgenden wird die Ansteuerung von Arduino Timer Interrupts mit dem 16-Bit Timer1 gezeigt. Damit soll eine LED im 50 Hz-Takt aufleuchten. Schaltplan, Arduino-Code und Bilder sind ebenfalls enthalten. (Die Vorgehensweise für den 8-Bit-Timer0 und Timer2 ist analog.) Für den zeitgesteuerten Impuls benötigen Sie den sogenannten &#8222;CTC-Modus&#8220;.</p>
<p>Im CTC-Modus (&#8222;Clear Timer on Compare Mode&#8220;) wird der Zähler gelöscht, wenn der Wert des Zählers (TNCT1) entweder mit dem Wert des OCR1A-Registers oder dem Wert des ICR1-Registers (in unserem Fall OCR1A) übereinstimmt. Das OCR1A-Register bestimmt also den Maximalwert des Zählers und damit seine Auflösung.</p>
<h3>Der 16 Bit Timer1 braucht die folgenden Register:</h3>
<ul>
<li>Timer Counter Register 1: TCNT1</li>
<li>Output Compare Register A: OCR1A</li>
<li>Timer Counter Control Register A: TCCR1A</li>
<li>Timer Counter Control Register B: TCCR1B</li>
<li>Timer/Counter Interrupt Mask Register: TIMSK1</li>
<li>(Für Timer0 und Timer2 würden die entsprechenden Register TCNT0 bzw. TCNT2 heißen)</li>
</ul>
<h3>Berechnung des OCR1A Registers für Arduino Timer Interrupts</h3>
<p>Der Wert des Registers OCR1A ist abhängig von der gewünschten Interruptfrequenz und dem gewählten Vorteiler. Es gilt die folgende Formel:</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-783 zoooom" src="https://nerd-corner.com/wp-content/uploads/2020/11/InterruptFrequency.jpg" alt="Formula for Arduino Timer Interrupt Frequency calculation OCR1A register" width="691" height="156" srcset="https://nerd-corner.com/wp-content/uploads/2020/11/InterruptFrequency.jpg 692w, https://nerd-corner.com/wp-content/uploads/2020/11/InterruptFrequency-300x68.jpg 300w" sizes="auto, (max-width: 691px) 100vw, 691px" /></p>
<p>Wir setzen unsere Spezifikationen in die Formel ein:</p>
<ul>
<li>CPU-Frequenz Arduino Uno: 16.000.000 Hz</li>
<li>Gewünschte Interruptfrequenz: 50 Hz (= 20 ms Periodendauer)</li>
<li>Möglicher Vorteiler: 1, 8, 64, 256 oder 1024</li>
</ul>
<p><strong>Berechnungsbeispiel mit Vorteiler 1024:</strong><br />
OCR1A= (16.000.000 / (1024 * 50)) &#8211; 1 = 311,5</p>
<p><strong>Berechnungsbeispiel mit Vorteiler 8:</strong><br />
OCR1A= (16,000,000 / (8 * 50)) &#8211; 1 = 39,999</p>
<p><strong>ACHTUNG:</strong> Der OCR1A-Wert muss kleiner als 65,536 (2^16 ) sein!</p>
<p><strong>Daher kann ein Vorteiler 8 NICHT die 10 Hz Interruptfrequenz erreichen:</strong><br />
OCR1A= (16.000.000 / (8 * 10)) &#8211; 1 = 199.999</p>
<p>Der Wert 199,999 ist größer als das Register mit 65,536, daher muss ein anderer Vorteiler verwendet werden, um 10 Hz zu erreichen</p>
<p><strong>Stattdessen ein Vorteiler 64 für 10 Hz Interruptfrequenz:</strong><br />
OCR1A= (16.000.000 / (64 * 10)) &#8211; 1 = 24.999</p>
<p><em>Wird nun ein Timer1-Interrupt ausgelöst, springt der Programmablauf in eine zu erstellende Interrupt-Service-Routine &#8222;ISR(TIMER1_COMPA_vect)&#8220;. (Siehe Arduino Code)</em></p>
<h3>Bit Kombination für die gewünschten Vorteiler</h3>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-785 zoooom" src="https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterrupts.jpg" alt="Arduino Uno timer interrupts Prescaler " width="1121" height="413" srcset="https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterrupts.jpg 1122w, https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterrupts-300x110.jpg 300w, https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterrupts-1024x377.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterrupts-768x283.jpg 768w" sizes="auto, (max-width: 1121px) 100vw, 1121px" /></p>
<h3>Arduino Timer Interrupts Code für die 50 Hz Frequenz</h3>
<pre class="EnlighterJSRAW" data-enlighter-language="c">void setup() {

  pinMode(11,OUTPUT);  //LED pin (to blink in 50Hz frequency)
  
//START TIMER SETUP
//TIMER SETUP for highly preceise timed measurements 

  cli();//stop all interrupts

  // turn on CTC mode
  TCCR1A = 0;// set entire TCCR1A register to 0
  TCCR1B = 0;// same for TCCR1B
  TCCR1B |= (1 &lt;&lt; WGM12);

  // Set CS11 bit for prescaler 8
  TCCR1B |= (1 &lt;&lt; CS11); 
  
  //initialize counter value to 0;
  TCNT1  = 0;
  
  // set timer count for 50Hz increments
  OCR1A = 39999;// = (16*10^6) / (50*8) - 1  
  
  // enable timer compare interrupt
  TIMSK1 |= (1 &lt;&lt; OCIE1A);
  
  sei();//allow interrupts
  //END TIMER SETUP
}



ISR(TIMER1_COMPA_vect) {//Interrupt at frequency of 50 Hz
 //write your timer code here

 digitalWrite(11,HIGH);
 delay(15);
 digitalWrite(11,LOW);
}




void loop() {

//when the timer is over, your program will stop in the loop function and jump to the timer code. 
//After the timer code it will jump back to the point where it left the loop function
}</pre>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-786 zoooom" src="https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterruptLED.jpg" alt="Arduino Timer Interrupt LED sketch" width="1649" height="839" srcset="https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterruptLED.jpg 1650w, https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterruptLED-300x153.jpg 300w, https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterruptLED-1024x521.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterruptLED-768x391.jpg 768w, https://nerd-corner.com/wp-content/uploads/2020/11/TimerInterruptLED-1536x782.jpg 1536w" sizes="auto, (max-width: 1649px) 100vw, 1649px" /></p>
<p>The post <a href="https://nerd-corner.com/de/arduino-timer-interrupts-arduino-register-programmieren/">Arduino Timer Interrupts – Arduino Register programmieren</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nerd-corner.com/de/arduino-timer-interrupts-arduino-register-programmieren/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Wie programmiert man einen präzisen Timer in C für Linux</title>
		<link>https://nerd-corner.com/de/wie-programmiert-man-einen-praezisen-timer-in-c-fuer-linux/</link>
					<comments>https://nerd-corner.com/de/wie-programmiert-man-einen-praezisen-timer-in-c-fuer-linux/#comments</comments>
		
		<dc:creator><![CDATA[Nerds]]></dc:creator>
		<pubDate>Sun, 28 Feb 2021 13:03:04 +0000</pubDate>
				<category><![CDATA[Linux-DE]]></category>
		<category><![CDATA[Software-DE]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[C Programmierung]]></category>
		<category><![CDATA[Genauigkeit]]></category>
		<category><![CDATA[Kommunikationstechnik]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Präzision]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[Timer]]></category>
		<guid isPermaLink="false">https://nerd-corner.com/?p=833</guid>

					<description><![CDATA[<p>Ich wollte einen Timer in C für meinen Raspberry Pi programmieren, der sowohl für 1 ms als auch für 0,1 ms präzise Arbeitsanweisungen ausführt. Da &#8230; </p>
<p>The post <a href="https://nerd-corner.com/de/wie-programmiert-man-einen-praezisen-timer-in-c-fuer-linux/">Wie programmiert man einen präzisen Timer in C für Linux</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Ich wollte einen Timer in C für meinen Raspberry Pi programmieren, der sowohl für 1 ms als auch für 0,1 ms präzise Arbeitsanweisungen ausführt. Da Python zur Laufzeit kompiliert wird, war Python für diesen Zweck leider viel zu langsam. Aus diesem Grund wurde das Programm in C geschrieben. Die 1 ms und 0,1 ms wurden nach der Programmierung mit Hilfe eines Oszilloskops bestätigt.</p>
<p>Nachfolgend eine Erklärung wieso die Library „sys/time.h“ genutzt wurde, sowie ein Codebeispiel mit anschließender Erläuterung. Dieses Codebeispiel eignet sich sehr gut für bitweise Datenübertragung in der Kommunikationstechnik.</p>
<p><em><strong>Das könnte Sie ebenfalls interessieren:</strong> <a href="https://nerd-corner.com/de/arduino-timer-interrupts-arduino-register-programmieren/" target="_blank" rel="noopener">Präzise Timer Interrupts für den Arduino programmieren!</a></em></p>
<h2>Liste der Komponenten</h2>
<ul>
<li><a href="https://amzn.to/3hSZ7bT" target="_blank" rel="noopener">Linux Betriebssystem (zum Beispiel Raspberry Pi)</a></li>
<li>Editor für C &#8211; Programmierung</li>
</ul>
<p><img loading="lazy" decoding="async" class="zoooom aligncenter wp-image-841" src="https://nerd-corner.com/wp-content/uploads/2021/02/proxy-image-3.jpg" alt="Timer in C for Linux" width="498" height="404" srcset="https://nerd-corner.com/wp-content/uploads/2021/02/proxy-image-3.jpg 1084w, https://nerd-corner.com/wp-content/uploads/2021/02/proxy-image-3-300x243.jpg 300w, https://nerd-corner.com/wp-content/uploads/2021/02/proxy-image-3-1024x830.jpg 1024w, https://nerd-corner.com/wp-content/uploads/2021/02/proxy-image-3-768x623.jpg 768w" sizes="auto, (max-width: 498px) 100vw, 498px" /></p>
<h2>Die Library „sys/time.h“</h2>
<p>Funktionen wie „usleep()“ oder „nanosleep()“ würden das komplette Programm anhalten. Für einfache Anwendungen mag das vielleicht ausreichen, allerdings war das für meine Zwecke zu ungenau. Ich wollte einen Timer, der wirklich exakt im 1 ms Takt bzw. 0,1 ms Takt arbeitet. Deswegen wurde anstelle von „usleep()“ oder „nanosleep()“ eine andere Lösung gewählt. Die Library „sys/time.h“. Diese kann die aktuelle „System Clock Time“ (System Uhrzeit) auslesen und vergleichen.</p>
<h2>Codebeispiel für präzisen Timer in C</h2>
<pre class="EnlighterJSRAW" data-enlighter-language="c">#include &lt;sys/time.h&gt;

int main()
{
    struct timeval tval_before, tval_after, tval_result;
    int counter=0;
    bool stop=false;
   
    gettimeofday(&amp;tval_before, NULL);
    while(stop!=true)
    {
        gettimeofday(&amp;tval_after, NULL);
        timersub(&amp;tval_after, &amp;tval_before, &amp;tval_result);
        double time_elapsed = (double)tval_result.tv_sec + ((double)tval_result.tv_usec/1000000.0f);
        
        while(time_elapsed &lt; 0.001)  //1ms; you can change your desired time interval here
        {
            gettimeofday(&amp;tval_after, NULL);
            timersub(&amp;tval_after, &amp;tval_before, &amp;tval_result);
            time_elapsed = (double)tval_result.tv_sec + ((double)tval_result.tv_usec/1000000.0f);
        }
        gettimeofday(&amp;tval_before, NULL);
        
        if (counter==10000)
        {
            stop=true;
        }
            
        else 
        {
            counter++;
        }
    }
    return 0;
}
</pre>
<h2>Erklärung zum Codebeispiel:</h2>
<p>Eine Funktion &#8222;gettimeofday&#8220; schreibt die aktuelle System Uhrzeit in die Variable &#8222;tval_before&#8220;. Eine While Schleife wird anschließend solange ausgeführt bis die eigentliche Aufgabe erledigt ist.</p>
<p>Innerhalb der While Schleife wird als Erstes erneut die System Uhrzeit in eine Variable &#8222;tval_after&#8220; abgespeichert. Anschließend wird die zeitliche Differenz zwischen &#8222;tval_after&#8220; und &#8222;tval_before&#8220; gemessen und in &#8222;tval_result&#8220; abgespeichert.</p>
<p>Der nächste Schritt des Timers in C erschließt sich nicht sofort auf den ersten Blick: &#8222;tv_result&#8220; besteht per Definition aus 2 Teilen. Zum einen ein Sekunden Anteil &#8222;.tv_sec&#8220; und zum anderen ein Mikrosekunden Anteil &#8222;.tv_usec&#8220;. Eben dieser Mikrosekundenanteil muss erst noch durch eine Million geteilt werden, damit man den Wert in Sekunden erhält. Anschließend, kann der Mikrosekundenanteil zum Sekundenanteil addiert werden.</p>
<p>Der addierte Wert wird im Code als &#8222;time_elapsed&#8220; bezeichnet. Falls dieser Wert kleiner als eine Millisekunde ist, wird eine weitere innere While Schleife geöffnet, die solange den Wert für &#8222;time_elapsed&#8220; neu berechnet, bis exakt 1 ms vergangen ist. Anschließend wird mittels der &#8222;gettimeofday&#8220; Funktion der Wert für &#8222;tval_before&#8220; neu festgelegt.</p>
<p>Da zu diesem Zeitpunkt exakt 1 ms vergangen ist, kann der Timer nun seinen eigentlichen Arbeitsschritt ausführen. In diesem einfachen Codebeispiel wird lediglich eine Variable „counter“ um 1 erhöht. Das bedeutet für jeden Intervallschritt (im Codebeispiel 1 ms) erhöht sich der counter um 1. Sobald ein festgelegter Wert für counter erreicht wurde stoppt das Programm. In diesem Fall ist der festgelegte Wert 10000. Anschließend wird die While Schleife beendet. Aber dieser Teil des Codes kann natürlich problemlos für die eigenen Zwecke angepasst werden.</p>
<p>Meine Messungen mit dem Oszilloskop haben eine exakte Frequenz von 1 ms gemessen, sogar 0,1 ms wurde exakt gemessen. Dieses Codebeispiel eignet sich deswegen auch sehr gut für eine exakte <a href="https://de.wikipedia.org/wiki/Daten%C3%BCbertragung">Datenübertragung</a> in der Kommunikationstechnik.</p>
<h2>Dateien herunterladen</h2>
<ul>
<li><a  data-e-Disable-Page-Transition="true" class="download-link" title="" href="https://nerd-corner.com/de/download/835/?tmstv=1756336368" rel="nofollow" id="download-link-835" data-redirect="false" >
	Downloadfile Timer in C</a>
</li>
</ul>
<p>The post <a href="https://nerd-corner.com/de/wie-programmiert-man-einen-praezisen-timer-in-c-fuer-linux/">Wie programmiert man einen präzisen Timer in C für Linux</a> appeared first on <a href="https://nerd-corner.com/de">Nerd Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nerd-corner.com/de/wie-programmiert-man-einen-praezisen-timer-in-c-fuer-linux/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
	</channel>
</rss>
