Ik ben blij je weer te verwelkomen. Ik hou echt van displays Arduino type OLED. Bijzonder klein met een diagonaal van 0,96 inch met een resolutie van 128 bij 64 pixels. Als je mijn pagina op deze site bekijkt, kun je veel verschillende projecten vinden met dit scherm. Apparaten zoals een voltmeter of ampèremeter met een dergelijk display zijn natuurlijk compact, maar worden zelden gebruikt, en het is handiger om een kant-en-klare multimeter te gebruiken die in elke radiowinkel wordt verkocht. En ik wil mijn zelfgemaakt stond op tafel en verheugde het oog, bij elke blik op haar, elke dag. Daarom is een horloge hiervoor de beste oplossing. Ik had veel opties voor horloges met dit scherm, op Arduino, op Attiny85, op batterijen, gevoed door USB, met achtergrondverlichting, met een thermometer, enz., Enz. Maar ze hadden allemaal een aantal nadelen: onstabiel voedsel, een lelijke zaak, niet genoeg geheugen om de datumweergavefunctie te implementeren (Attiny85). Maar als gevolg van veel vallen en opstaan, vond ik de optimale oplossing voor mijn verzoeken. Deze keer gebruiken we:
- Typemachine Modarri
- Arduino Pro Mini 5v 16 Mhz
- DS28B20 (digitale temperatuursensor)
- WS2812 (adres LED-strip)
- USB-TTL (om de schets te vullen)
- OLED 0,96 128x64
- Knopen
- printplaat
- Weerstand 4.7 kOhm
- Keramische condensator 104, 2 stuks
- Kunststof plaat 1-2 mm dik
- aansluitdraden
- USB-kabel
- Lijmpistool
- Oliekeerring en alles wat je nodig hebt om te solderen
Stap 1 Keuze van huisvesting.
Na lange en pijnlijke pogingen om een horlogekast te maken zodat ik hem mooi vond, besloot ik de basis voor de kast in mijn (en niet alleen in mijn eigen) schappen te zoeken. Ik zag auto's die ik leuk vind. Dit zijn kleine, goed gemaakte, met rubberen wielen en schokdempers van Modarri-speelgoedauto's
Dit bedrijf heeft een breed assortiment aan producten. Auto's zijn er voor elke smaak en kleur. En het belangrijkste voor ons is dat ze een plek hebben voor vingercontrole. En het is geweldig voor ons kleine scherm. Ik heb drie modellen gevonden:
Je kunt zo'n horloge van iedereen maken, maar ik hou vooral van de zwarte. Ook zijn veel machineonderdelen onderling uitwisselbaar, je kunt het monteren zoals je wilt.Naar mijn mening is dit een uitstekende koffer, netjes gemaakt, ziet er mooi uit en is er voldoende ruimte voor elektronica.
Stap 2 Het scherm voorbereiden.
Ons scherm is klein, maar schattig is een grafisch display. Van de functies is het de moeite waard om te benadrukken dat elke pixel een onafhankelijke LED is. OLED staat voor organische lichtgevende diode. 4 draden worden gebruikt voor aansluiting. VCC (positieve voedingsdraad, kan worden gevoed vanaf 5 of 3,3 volt), GND (negatieve voedingsdraad), SCL en SDA (aangesloten op Arduino). De verbinding met de Arduino is via een I2C seriële asymmetrische communicatiebus. Het scherm zelf ziet er zo uit:
Soldeer de draden aan alle 4 contacten, het is beter om meerkleurige draden te gebruiken en op te schrijven welke naar welk contact leidt:
Zodat het externe scherm de algehele look niet bederft, zullen we er een kleine behuizing voor maken. Een klein vel dun plastic is geschikt voor de koffer. Om de paar uur heb ik een briefpapiertablet opgeofferd:
Het was perfect om de zaak te maken. Volgens het volgende schema hebben we een kleine behuizing uit plastic gesneden:
De binnenste rechthoek moet zorgvuldig worden gesneden en gebogen langs de stippellijnen:
We plaatsen onze display erin, we bevestigen het scherm en de zijwanden met hotmelt-lijm, het is ook beter om de draden met lijm in te vullen om ze niet te scheuren, als ze plotseling per ongeluk worden vastgehaakt:
Van de buitenkant zou het zo moeten zijn:
Stap 3 Bereid de temperatuursensor voor.
Welnu, wat een horloge zonder temperatuursensor! De beste keuze is een digitale sensor. De meest betaalbare is de DS28B20. Over de voordelen kun je eindeloos praten, kortom. Het gebruikt geen Arduino-processor om de temperatuur te berekenen, het verbindt slechts één draad met de Arduino (het werkt met het OneWire-protocol). DS28B20 kan op veel manieren worden aangesloten. Gebruik externe voeding door deze vanaf 5 volt door de VDD-pin te voeren, zwerfkracht door de VDD- en GND-contacten aan te sluiten, of u kunt een verbeterd verdwaald vermogenscircuit vinden. Alle opties hebben hun voor- en nadelen. We zullen ons concentreren op externe voeding, we zullen VDD aansluiten op +5, GND op GND, DQ op de Arduino-pin, we moeten ook een 3.3 kOhm-weerstand gebruiken om de DQ aan te zetten op stroom. De regeling is als volgt:
De weerstand wordt het handigst naast de sensor geplaatst, tussen de poten gesoldeerd. Ik geef DS28B20 in verschillende gevallen vrij, het is het beste om de TO-92-zaak in te nemen. De pinout van de sensor is als volgt:
Het middelste contact is de DQ - databus, soldeer de draad eraan en een van de weerstandscontacten (4,7 kOhm):
We isoleren het middelste contact van de laterale contacten met behulp van elektrische tape. We buigen het tweede been van de weerstand en solderen samen met de draad aan de Vdd-pin. Wijs de derde GND-pin toe, noteer de kleuren van de draden en isoleer alle resterende contacten.
Stap 4 De bedieningsknoppen voorbereiden.
Het instellen van de tijd en datum is op twee manieren mogelijk. Via poortmonitor of knoppen. In de schets van het horloge is voorzien in het gebruik van drie knoppen (Set, Plus, Minus). Maar je kunt met twee rondkomen door de min-knop uit te schakelen. Soldeer de knoppen op de printplaat:
Vergeet niet om de kleuren van de draden op te nemen om te weten waar dat toe leidt. Knoppen hebben een van de draden gemeen, deze maakt verbinding met GND. Parallel aan de knoppen solderen we de keramische condensatoren met de markering 104 (elimineren het effect van gerammel van de contacten).
Gesoldeerde draden zijn beter te vullen met hete lijm.
Stap 5 Bereid WS2812 voor.
De adresband WS2812, of liever slechts één LED WS2812, zullen we gebruiken om de machine te markeren. Ik heb één LED van de tape afgesneden, maar je kunt ze apart kopen. We lijmen WS2812 vanaf de onderkant van de machine en solderen de volgende draden eraan: +5 (positieve voedingsdraad), GND (negatieve voedingsdraad), Din. Let op: de adresband heeft een signaalrichting. Daarom moet de signaaldraad aan de klem Din worden gesoldeerd (signaalingang), niet ongeoldeerd laten:
LED is nodig voor decoratie. Het is optioneel, het horloge werkt zonder. Een beetje vooruit rennen, een foto van de achtergrondverlichting:
Er zijn 5 markeringskleuren in de schets, maar u kunt uw eigen kleuren toevoegen door de schets te bewerken.
Stap 5 Alle elektronica in een typemachine plaatsen.
Ga dus eindelijk door naar de typemachine. We demonteren het. We plaatsen het eerder voorbereide display op zijn plaats voor de vinger:
We leiden draden van het display aan de rechterkant van de stoel. De temperatuursensor DS28B12 is boven het linker achterwiel geplaatst. De draden van de sensor moeten worden vastgezet en de sensor zelf moet aan de draden hangen zonder de onderdelen van de behuizing aan te raken:
Arduino wordt aan de linkerkant van de stoel geplaatst. We hebben alle draden daar. We plaatsen het bord en solderen de draden op hun plaats, het is gemakkelijker om de lengte van de draden te berekenen. De machine wordt gevoed via USB. In één bundel is het nodig om veel draden te verdraaien en te solderen voor stroom. Ik raad aan om ze op een kleine afstand van de Arduino te draaien en te solderen, ze in de achterbumper te plaatsen en slechts twee stroomdraden naar de Arduino te brengen. De verbinding is als volgt:
USB +5 - Arduino +5 - Oled Vcc - DS28B20 Vdd - WS2812 +5 (draai en soldeer samen)
USB GND - Arduino GND - Oled GND - DS28B20 GND - WS2812 GND - Gemeenschappelijk vanaf knoppen (draai en soldeer samen)
Oled SDA - D8 Arduino
Oled SCI - D9 Arduino
1 Set-knop - D2 Arduino
2 Plus-knop - D3 Arduino
Minus knop 3 - D4 Arduino (optioneel)
WS2812 Din - D5 Arduino
DS28B20 DQ - D10 Arduino
Pincodes kunnen in de schets worden gewijzigd. Nadat u alle draden heeft gesoldeerd, kunt u beginnen met het monteren van de behuizing:
Stap 6 Bewerk en vul de schets.
Zoals gewoonlijk hebben we de Arduino IDE-programmeeromgeving nodig. We gaan door officiële website en download het.
Wij maken het u gemakkelijker. U kunt het installatieprogramma downloaden of u kunt het gewoon archiveren, er is geen verschil.
Nu hebben we de bibliotheken nodig:
OLED_I2C - wordt geleverd met de Arduino IDE
OneWire - download link hieronder
Adafruit_NeoPixel - Download link hieronder
U kunt deze bibliotheken installeren door naar de sectie "Bibliotheekbeheer" van de Arduino IDE zelf te gaan. Vind ze op naam en installeer. Als je problemen hebt met internet, download dan de onderstaande archieven en pak het uit in de map "libraries" op de plaats waar je de Arduino IDE hebt geïnstalleerd.
Ik heb twee schetsen voor dit horloge. Eerst met secondenweergave:
En de tweede optie zonder seconden:
Maak een keuze uit onderstaande bestanden.
Download projectbestanden