<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Ddo on kollegen</title>
    <link>https://kollegen.uber.space/tags/ddo/</link>
    <description>Recent content in Ddo on kollegen</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>de</language>
    <lastBuildDate>Thu, 15 Jan 2015 00:00:00 +0000</lastBuildDate><atom:link href="https://kollegen.uber.space/tags/ddo/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>RFduino Implementation of DDO</title>
      <link>https://kollegen.uber.space/posts/ddo-rfduino-implementation-of-ddo/</link>
      <pubDate>Thu, 15 Jan 2015 00:00:00 +0000</pubDate>
      
      <guid>https://kollegen.uber.space/posts/ddo-rfduino-implementation-of-ddo/</guid>
      <description>&lt;p&gt;This post describes the coding for the DDO hardware, based on a RFduino board. The hardware itself is introduced in the post &lt;a href=&#34;https://kollegen.uber.space/posts/ddo-prototype/&#34;&gt;posts/ddo-prototype&lt;/a&gt;. To implement the program, the standard Arduino SDE with RFduino library is installed on your computer (The RFduino Quick Start Guide on &lt;a href=&#34;https://www.rfduino.com&#34;&gt;www.rfduino.com&lt;/a&gt; is not available any more).&lt;/p&gt;
&lt;p&gt;The implementation has following main features:&lt;/p&gt;
&lt;p&gt;Counting wheel rotations and calculation distance
Read/Write the distance to memory in a safety way
Push the actual distance via Bluetooth LE (BLE)
Further topics are:
Flash the LED with a memory write, communicate an error via LED
Send logging to SDE
The most important challenge is the non-stable power supply, especially at writing time.&lt;/p&gt;</description>
      <content>&lt;p&gt;This post describes the coding for the DDO hardware, based on a RFduino board. The hardware itself is introduced in the post &lt;a href=&#34;https://kollegen.uber.space/posts/ddo-prototype/&#34;&gt;posts/ddo-prototype&lt;/a&gt;. To implement the program, the standard Arduino SDE with RFduino library is installed on your computer (The RFduino Quick Start Guide on &lt;a href=&#34;https://www.rfduino.com&#34;&gt;www.rfduino.com&lt;/a&gt; is not available any more).&lt;/p&gt;
&lt;p&gt;The implementation has following main features:&lt;/p&gt;
&lt;p&gt;Counting wheel rotations and calculation distance
Read/Write the distance to memory in a safety way
Push the actual distance via Bluetooth LE (BLE)
Further topics are:
Flash the LED with a memory write, communicate an error via LED
Send logging to SDE
The most important challenge is the non-stable power supply, especially at writing time.&lt;/p&gt;
&lt;p&gt;Architecture
The implementation communicates or controls five external components. The EEPROM is used to store the actual distance value. The LED give signals to the user at run time. The reed contact attached to the front wheel is the rotation trigger.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://kollegen.uber.space/posts/ddo-rfduino-implementation-of-ddo/system-context.jpg&#34; alt=&#34;System Context&#34;&gt;&lt;/p&gt;
&lt;p&gt;Via BLE the board sends the actual distance value periodically into the environment (independent, if there is a receiving app or not).
For the developer, messages can be pushed via serial port to the Arduino SDE.&lt;/p&gt;
&lt;p&gt;The inner view:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://kollegen.uber.space/posts/ddo-rfduino-implementation-of-ddo/inner-view.jpg&#34; alt=&#34;Inner View&#34;&gt;&lt;/p&gt;
</content>
    </item>
    
    <item>
      <title>DDO Prototype</title>
      <link>https://kollegen.uber.space/posts/ddo-prototype/</link>
      <pubDate>Sun, 30 Nov 2014 00:00:00 +0000</pubDate>
      
      <guid>https://kollegen.uber.space/posts/ddo-prototype/</guid>
      <description>&lt;p&gt;Aufgabenstellung
Früher hatte ich mal so einen Kilometerzähler am Vorderrad meines Rennrads, sehr zum Leidwesen meiner Radkollegen, da das Ding ziemlich laut klackerte.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://kollegen.uber.space/posts/ddo-prototype/z%C3%A4hler.jpg&#34; alt=&#34;Analoger Kilometerzähler&#34;&gt; Analoger Kilometerzähler&lt;/p&gt;
&lt;p&gt;Das gleiche soll nun mit moderner Technik neu gebaut werden - aber ohne Klackern, wenn&amp;rsquo;s geht.&lt;/p&gt;
&lt;p&gt;Schaut man sich auf dem Markt um, was es derzeit gibt, so findet man den Bikelogger. Der kann mehr einiges mehr als nur den aktuellen Stand zählen. Der Preis ist mit ca. 140 € aber ziemlich hoch. Cool ist, das er kein Kontakt-Kontakt für die Bewegungserfassung benötigt.&lt;/p&gt;</description>
      <content>&lt;p&gt;Aufgabenstellung
Früher hatte ich mal so einen Kilometerzähler am Vorderrad meines Rennrads, sehr zum Leidwesen meiner Radkollegen, da das Ding ziemlich laut klackerte.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://kollegen.uber.space/posts/ddo-prototype/z%C3%A4hler.jpg&#34; alt=&#34;Analoger Kilometerzähler&#34;&gt; Analoger Kilometerzähler&lt;/p&gt;
&lt;p&gt;Das gleiche soll nun mit moderner Technik neu gebaut werden - aber ohne Klackern, wenn&amp;rsquo;s geht.&lt;/p&gt;
&lt;p&gt;Schaut man sich auf dem Markt um, was es derzeit gibt, so findet man den Bikelogger. Der kann mehr einiges mehr als nur den aktuellen Stand zählen. Der Preis ist mit ca. 140 € aber ziemlich hoch. Cool ist, das er kein Kontakt-Kontakt für die Bewegungserfassung benötigt.&lt;/p&gt;
&lt;p&gt;Den Zähler, den ich mir vorstelle, soll einfach nur die Laufleistung zählen und ansonsten nicht weiter auffallen. Es muss völlig wartungsfrei und ohne Schnickschnack sein. Außerdem soll er aus möglichst wenigen Bauteilen bestehen und die vorhanden Infrastruktur am Rad nutzen. Bei Bedarf kann man den aktuellen KM-Stand per Smartphone abfragen,&lt;/p&gt;
&lt;p&gt;Komponenten
Man benötigt einen Mikrocontroller zur Steuerung, ein EEPROM zum Speichern und eine stabile Spannungsversorgung.&lt;/p&gt;
&lt;p&gt;Als Mikrocontroller habe ich mich für den RFduino entschieden, da er sehr klein ist und Bluetooth 4.0 unterstützt. Man kann ihn als SMD-Chip oder als Entwicklerboard mit USB-Anschluss für Rasterplatinen beziehen. Das Board kann mit 3.3 V betrieben werden. Die Programmierung ist einfach und es gibt viele Beispiele.&lt;/p&gt;
&lt;p&gt;Als Speicher-Baustein kommt der 24AA256 von Microchip zum Einsatz. Er ist mit 256 kB ausreichen groß, kann per I2C einfach mit dem RFduino kommunizieren und kann mit 3.3 V betrieben werden.&lt;/p&gt;
&lt;p&gt;Die Spannungsversorung bedient sich der am Fahrrad vorhanden B&amp;amp;M Lumotec-Leuchte mit Supercup-Kondensator. Um die Spannung der LED auf konstante 3.3 V zu bringen, kommt zur Spannungsstabilisierung der Step-Up Spannungsregler U1V11F3 von Pololu zu Einsatz.&lt;/p&gt;
&lt;p&gt;Die Radbewegung wird klassisch per Kontakt-Schalter&lt;/p&gt;
&lt;p&gt;Schaltung
Auf dem Schaltplan sieht man noch die zusätzlich eine LED, als Minimal-Kommunikation so zu sagen.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://kollegen.uber.space/posts/ddo-prototype/schaltung.jpg&#34; alt=&#34;Schaltung&#34;&gt; Schaltplan&lt;/p&gt;
&lt;p&gt;Die Stromversorgung geht tatsächlich direkt an die LED der Lumotec-Leuchte, dazu wurde ein 2-adriges Kabel an die LED-Platine gelötet.&lt;/p&gt;
&lt;p&gt;Steckbrett
Auf das Breadboard gesteckt, ist die Schaltung sehr übersichtlich:
&lt;img src=&#34;https://kollegen.uber.space/posts/ddo-prototype/steckbrett.jpg&#34; alt=&#34;Steckbrett&#34;&gt; Steckbrett&lt;/p&gt;
&lt;p&gt;Bauteil-Liste
M1 RFD22102 RFduino DIP
M2 Pololu 3.3V Step-Up Voltage Regulator U1V11F3
IC1 EEPROM Microship 24AA256
R4 Vorwiderstand  82 kΩ
LED1 Rote LED
R1 Vorwiderstand  330 Ω
LED2 Gelbe LED
R2 Vorwiderstand  330 Ω
R3 Pull-Down-Widerstand 55 k Ω&lt;/p&gt;
&lt;p&gt;LED1 blinkt kurz, wenn der aktuelle KM-Wert gespeichert wurden. LED2 zeigt, das  Spannung anliegt (nur auf dem Breadboard gesteckt, nicht im Prototyp verbaut).&lt;/p&gt;
&lt;p&gt;Platine
Die Platine ist so gestaltet, dass sie in ein Gehäuse 56 x 56 x 40 mm passt (Hammond Electronics 1594ABK, gibt z.B. bei Conrad Electronics, Best.-Nr. 535086-62).&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://kollegen.uber.space/posts/ddo-prototype/layout.jpg&#34; alt=&#34;Layout&#34;&gt; Layout&lt;/p&gt;
&lt;p&gt;Die Verbindungen von Pin 8 vom 24AA256 nach VOUT musst aus Platzmangel fliegend verkabeln, dass könnte man noch besser machen. Gelötet sieht das dann so aus:
&lt;img src=&#34;https://kollegen.uber.space/posts/ddo-prototype/platine-1.jpg&#34; alt=&#34;Oberseite&#34;&gt; Oberseite&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://kollegen.uber.space/posts/ddo-prototype/platine-2.jpg&#34; alt=&#34;Unterseite&#34;&gt; Unterseite&lt;/p&gt;
&lt;p&gt;Als Signalgeber kommt ein kabelgebundener eine kabelgebunde Variante von einem billigen Baumarkt-Tacho zum Einsatz. Die Kabelenden werden direkt an die Steckerstifte auf der Platine gelötet (REED bzw. VOUT), Polung spielt keine Rolle. Ebenso das Kabel der Spannungsversorgung (VIN und GND). Das Kabel wird von unten durch das Lumitec-Gehäuse gezogen (Belüftungsloch) und auf die kleine LED-Platine gelötet. Hier natürlich auf die richtige Polung achten.&lt;/p&gt;
&lt;p&gt;Hinweis: Mit dem Eingriff verliert die Leuchte den Garantieanspruch. Ob das Fahrrad noch im Straßenverkehr zulässig ist, habe ich nicht geprüft.
Montage&lt;/p&gt;
&lt;p&gt;Auf Rasterplatine gelötet und in ein Gehäuse gepackt sieht das Gerät dann am Fahrrad recht klobig aus, so wie es sich für einen Prototypen halt gehört.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://kollegen.uber.space/posts/ddo-prototype/montage.jpg&#34; alt=&#34;Brompton&#34;&gt; Montage am Brompton&lt;/p&gt;
&lt;p&gt;An meinem Brompton konnte es einfach an die Taschenhalterung montiert werden. Es führen zwei Kabel aus dem Gerät: Die Stromversorgung zur Frontlampe sowie das Kabel für den Kontaktnehmer zur Gabel.&lt;/p&gt;
</content>
    </item>
    
  </channel>
</rss>
