Stap 13: Elektronica met schacht Encoder
Dit is de finale (misschien) versie van de elektronica. Een Arduino Uno is in het centrum en is verantwoordelijk voor alle functies.
Eerst wij nemen een 12 VDC plug-in voeding (wallwart) en stap tot een gereglementeerde 7,5 VDC.
Een realtime clock (RTC) biedt nauwkeurige datum en tijd. Een ChronoDot temperatuur gecompenseerd wordt gebruikt. De laatste interfaces met Arduino via I2C bezetten slechts 2 pinnen van de Arduino.
Een klein OLED-display (Diymall 0.96" I2C SPI 128 x 64 witte) geeft de datum en tijd op de control box. Ik gebruikte SPI voor de interface vereist 4 pinnen van de Arduino.
De stappenmotor (28BYJ-48) wordt aangedreven door een UL2003 controller boord die zich in de achterkant van de klok bevindt.
De roterende positie sensing is gedaan met een optische encoder schijf en twee foto interrupters.
Voegde ik wat code en een piëzo-luidspreker een low-level tic-inhoudsopgave om geluid te produceren als men van een slinger echappement horen zou.
Tot slot, zes drukknoppen worden gebruikt om de RTC-klok aanpassen nadat het uiteindelijk drijft een beetje af en de mechanische klok kan ook worden aangepast met een motie snel vooruit of achteruit.
Er zijn veel details nog moeten worden beschreven. Zoals ik normaal met alle mijn Arduino schetsen doen, zijn talrijke opmerkingen ingebed in de code. Je wordt aangemoedigd om te inspecteren de code van boven naar beneden. Dit zal volledig verklaren hoe het ding werkt.
Opmerkingen over het downloaden van de Arduino schets bestand hieronder:
Wanneer u deze op uw computer opslaat, zal het verschijnen in de map ' downloads ' met een rare naam hebben veel brieven en een bestandsextensie van "Ino". Noem het aan wat ooit u houdt, maar de extensie intact laat.
Als u het bestand met het programma van de Arduino IDE openen, zal het klagen en u vragen of u wilt Maak een nieuwe schets map en verplaats het bestand er. Dat aanvaarden. Helaas, de nieuwe schets map zullen niet ook in je downloadmap. Verplaatsen naar waar u meestal houden uw schetsen. Toch is de schets is waarschijnlijk niet te lopen aangezien bibliotheken ontbreken.
Open het bestand schets (ino) met Windows WordPad (niet Kladblok). U ziet de vijf bibliotheken aan de bovenkant van de schets. De eerste twee zijn inherent aan de Arduino software. De overige drie moet worden geïnstalleerd in de map Bibliotheken
In dat geval ook downloaden (save) het ClockLibaries.zip bestand. Nogmaals, de bestandsnaam bevat een bos van brieven. U kan dat negeren en gewoon pak de drie mappen. Vervolgens verplaatst u deze mappen naar de map van de bibliotheken van je Arduino jongeheer vouwblad.
Nu moet de schets prima uitgevoerd.
De sketch bevat een groot aantal opmerkingen waarin het doel van coderegel beschrijft. Ik doe dit regelmatig in alle mijn schetsen niet alleen met het oog op deze write-up. Wat lijkt duidelijk tijdens het ontwerp mogelijk raadselachtig als u opnieuw de code een jaar later.
De sketch was geschreven, bewerkt en uitvoeren met behulp van de Arduino IDE versie 1.6.2. Het werd ook getest met versie 1.6.8 en schijnt prima uitvoeren. Als u bekend met de Arduino eigenaardigheden bent, weet je hoe bibliotheken verwerkt en waar te zetten uw schetsen. Ik gebruik een nogal onorthodoxe setup waar zowel de schetsen en de extra bibliotheken worden opgeslagen op een bestandsserver. Hetzelfde geldt voor alle gegevensbestanden CorelDraw, VCarve Pro en de CNC-toolpaths is gekoppeld. Desbetreffende bestandsserver is back-up dagelijks op externe schijven. Deze manier, mijn werk is bewaard moet de hoofdcomputer beschadigd raken.