Obsah:
- Krok 1: 3D tisk plastových součástí
- Krok 2: Připravte si ovládací desky a zapojení
- Krok 3: Sestavte serva
- Krok 4: Nastavení a testování
- Krok 5: Nahrání kódu
- Krok 6: Sestavení hodin na zadní desce
- Krok 7: Konečné nastavení a provoz
Video: Mechanické sedmisegmentové hodiny zobrazení: 7 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:18
Před pár měsíci jsem postavil dvouciferný mechanický 7segmentový displej, který jsem proměnil v odpočítávací časovač. Vyšlo to docela dobře a řada lidí navrhla zdvojnásobení na displeji, aby se vytvořily hodiny. Problém byl v tom, že už mi na Arduino Mega docházel PWM IO a neměl jsem k dispozici dostatek pro druhou nebo třetí číslici. Poté jsem byl nasměrován na směr těchto 16kanálových ovladačů PWM PCA9685, které fungují přes rozhraní I2C. Díky tomu bylo možné pohánět všech 28 serv, která jsem potřeboval, pomocí dvou pinů I2C na Arduinu. Takže jsem se pustil do stavby hodin, které nyní používají modul hodin reálného času DS1302 k udržení času a dva 16kanálové servomotory pro ovládání 28 serv používaných k sestavení displeje, všechny poháněné Arduino Uno.
Pokud vás tento Instructable baví, zvažte prosím jeho hlasování v Hodinové soutěži
Zásoby:
K sestavení hodin budete kromě některých základních nástrojů potřebovat následující zásoby:
- Arduino Uno - Koupit zde
- Hodinový modul DS1302 - kupte zde
- 2 x 16A servo ovladače PCA9685 - kupte zde
- 28 x Micro Servos - Koupit zde
- Plochý kabel - Koupit zde
- Pruhové hlavičkové proužky - kupte zde
- Ženské kolíkové lišty - kupte zde
- 3mm MDF - Koupit zde
- Černá barva ve spreji - Koupit zde
- Obvod pro odstranění baterie 5V 5A - kupte zde
- Napájecí zdroj 12V - Koupit zde
Pro tento projekt budete také potřebovat nějaké 3D tištěné díly. Pokud ještě nemáte 3D tiskárnu a baví vás vyrábět věci, určitě byste měli zvážit její pořízení. Zde použitý Creality Ender 3 Pro je cenově dostupný a za svou cenu produkuje docela dobré výtisky.
- Použitá 3D tiskárna - Koupit zde
- Filament - Koupit zde
Krok 1: 3D tisk plastových součástí
Sedmi segmentové displeje jsem navrhl tak, aby byly co nejjednodušší. Servo je také podpůrný držák, který drží segment nad ním. Pro každý segment jsou vyžadovány dvě 3D tištěné komponenty, distanční blok pro podporu spodní strany serva a zobrazovací segment, který se lepí přímo na rameno serva.
Stáhněte si soubory 3D tisku - soubory mechanického 7segmentového displeje s hodinami 3D tisku
Vytiskněte segmenty a body serva pomocí jasně barevného PLA. Použil jsem průsvitnou zelenou, ale dobře by měla fungovat i červená, oranžová nebo žlutá. Použil jsem černé PLA pro distanční bloky a bodové podpěry, aby nebyly viditelné, když jsou segmenty otočeny do vypnuté polohy.
Pokud nemáte přístup k 3D tiskárně, vyzkoušejte některou ze služeb online tisku. K dispozici je řada cenově dostupných služeb, které součásti vytisknou a dodají vám je za pár dní až domů.
Krok 2: Připravte si ovládací desky a zapojení
K pohonu 28 hodinových serv budete potřebovat dva 16kanálové ovladače PWM PCA9685. Rozdělil jsem serva na číslice hodin a minut, přičemž každý pár číslic byl poháněn jednou deskou. Takže mám jednu desku ovládající serva pro dvouhodinové číslice a druhou ovládající serva pro dvouminutové číslice.
Chcete -li je spojit dohromady, budete muset vytvořit 6vodičový konektor plochého kabelu a pájet druhý pásek záhlaví na druhý konec první řídicí desky serva. Budete také muset změnit adresu I2C na druhé desce, aby byla odlišná od první a jednoznačně identifikovatelná.
Budete také muset vytvořit kabelový svazek pro připojení tří desek (dvě desky se servy a modul hodin) k vašemu Arduinu. Na každé desce budete potřebovat 5V a GND a také připojení I2C k vašim pinům Arduino A4 a A5 (I2C na Arduino Uno) a piny hodinového modulu CLK, DAT & RST na piny 6, 7 a 8 na vašem Arduinu resp.
Napájení je dodáváno do Arduina přímo z napájecího zdroje 12V a do serva pomocí 5V 5A BEC, který je poté připojen ke dvěma svorkám v horní části ovladače PWM. K napájení stačí připojit pouze jeden ovladač serva a druhý bude napájet pomocí 6vodičového kabelu.
Krok 3: Sestavte serva
Jakmile vytisknete své segmenty, budete muset nastříkat zadní část a boky na černo, aby byly méně viditelné, když budou otočeny o 90 stupňů do vypnuté polohy.
Poté musíte segmenty přilepit tavným lepidlem na servo ramena. Pomáhá je přilepit na servo s paží již na servu, tímto způsobem můžete zkontrolovat, zda je lepíte rovně a rovně.
Budete také muset na dno každého serva přilepit distanční blok.
Sestavte body tak, že do zadní části bodů a poté do základních bloků nalepíte malou hmoždinku nebo kebab. Tyto tyčinky jsem nastříkal také černě, aby byly méně viditelné při pohledu z úhlu.
Krok 4: Nastavení a testování
Očísloval jsem všechna serva a zapsal číslo na každý vodič, aby bylo snazší je sledovat. Začal jsem horním segmentem na číslici jednotek a pracoval jsem na středním segmentu na desítce. To je také pořadí, ve kterém jsem je zapojil do desek servopohonu, přičemž jsem si pamatoval, že identifikátory na deskách se počítají od 0 do 13 a ne od 1 do 14.
Segmenty jsem pak postavil na stůl s dostatečným prostorem mezi nimi pro testování, aby se při nastavování cestovních limitů a směrů nepohybovaly do jednoho a druhého. Pokud je zkusíte nastavit blízko sebe, pravděpodobně se v jedné fázi pokusíte jeden nebo dva pokusit o pohyb špatným směrem nebo o přejezd a zasáhnout další, což může poškodit segment, rameno serva nebo odizolovat převody na servu.
Krok 5: Nahrání kódu
Kód vypadá na první pohled složitě, ale ve skutečnosti je díky dvěma použitým knihovnám poměrně jednoduchý. Také se hodně opakuje, protože je třeba aktualizovat čtyři různé 7 segmentové displeje.
Zde je souhrnný popis kódu, podrobnější vysvětlení najdete v úplném průvodci a odkaz na stažení kódu - Mechanické 7segmentové zobrazovací hodiny
Začneme importem dvou knihoven, virtuabotixRTC.h pro modul hodin a Adafruit_PWMServoDriver.h pro ovladače servo. Knihovnu Adafruit lze stáhnout a nainstalovat přímo prostřednictvím správce knihovny v IDE.
Potom pro každou řídicí desku vytvoříme objekt s příslušnou adresou, jeden pro číslice hodin a jeden pro číslice minut.
Potom máme čtyři pole pro uložení pozic zapnutí a vypnutí pro každé servo. V následujících krocích budete muset tato čísla upravit, abyste se ujistili, že jsou vaše serva ve svislé poloze, když jsou vypnutá, otočená o 90 stupňů a nepřekračují cestování.
Číselné pole ukládá pozice každého segmentu pro každou zobrazovanou číslici.
Poté nastavíme modul hodin a vytvoříme proměnné pro uložení aktuálních a minulých jednotlivých číslic.
Ve funkci nastavení spustíme a nastavíme řídicí desky PWM a v případě potřeby aktualizujeme čas. Poté projdeme smyčkou a nastavíme displej na 8 8: 8 8, abychom znali počáteční polohu všech serv. To se také používá k nastavení serv tak, aby všechny směřovaly správně nahoru.
V hlavní smyčce získáme aktualizovaný čas z hodinového modulu, rozlil ho do čtyř číslic a poté zkontroloval, zda se čas od poslední kontroly nezměnil. Pokud se čas změnil, aktualizujeme displej a poté aktualizujeme předchozí číslice.
Ve funkci aktualizace zobrazení nejprve přesuneme prostřední segmenty. To se provádí nejprve, protože je zapotřebí určitá logika, aby se dva horní segmenty sousedící se středním segmentem trochu přesunuly z cesty, než se střední segment přesune, jinak do nich narazí. Jakmile jsou střední segmenty přesunuty, zbývající segmenty jsou přesunuty do správných poloh.
Krok 6: Sestavení hodin na zadní desce
Jakmile jsem skončil s testováním, sestavil jsem serva na zadní desku pomocí výše uvedeného rozložení jako vodítka.
Bílá oblast je celková velikost desky, světlejší šedá je oblast obklopující každou číslici, do které se pohybují segmenty serva, a obrys v tmavě šedé oblasti je středová čára pro vnějších 6 segmentů pro každou číslici.
Rozstříhal jsem desku, označil rozvržení a poté nalepil číslice na místo, aby se vytvořil ciferník.
Potom jsem vyvrtal otvory v blízkosti každého serva a přivedl dráty k zadní části desky tak, aby byly méně viditelné.
Elektroniku jsem namontoval na zadní stranu hodin oboustrannou páskou.
Krok 7: Konečné nastavení a provoz
Jakmile byla všechna serva připravena, odstranil jsem všechna ramena serva pro konečné úpravy poloh segmentů. V tomto stavu byste měli zapnout Arduino, aby se zobrazilo 8 8: 8 8, a poté odpojit napájení, tím se vycentrují všechna vaše serva, abyste mohli znovu nasadit ramena serva se segmenty směřujícími co nejblíže svislici jak je to možné.
Poté budete muset Arduino postupně zapínat a upravovat pozice zapínání a vypínání segmentu ve čtyřech polích, aby byla serva při zapnutí dokonale svislá a při vypnutí se otočila o 90 stupňů, aniž byste museli cestovat. Tento krok je poměrně časově náročný a vyžaduje trochu trpělivosti, ale konečný výsledek stojí za to!
Hodiny lze nechat napájet pomocí napájecího zdroje 12 V a k němu připojeného 5 V BEC. Pokud dojde k výpadku napájení, baterie v modulu RTC udrží čas, takže po obnovení napájení se hodiny automaticky resetují na správný čas.
Pokud se vám tento Instructable líbil, hlasujte pro něj v soutěži o hodiny a dejte mi vědět o všech vylepšeních nebo návrzích, se kterými můžete přijít v sekci komentáře níže.
Druhá cena v soutěži Hodiny
Doporučuje:
Sedm segmentové hodiny zobrazení: 9 kroků
DIY Seven Segment Display Clock: v tomto tutoriálu vám ukážu, jak sestavit sedmisegmentové hodiny
Internetové hodiny: Zobrazení data a času pomocí OLED pomocí ESP8266 NodeMCU s protokolem NTP: 6 kroků
Internetové hodiny: Zobrazení data a času pomocí OLED pomocí ESP8266 NodeMCU s protokolem NTP: Ahoj kluci v tomto návodu, postavíme internetové hodiny, které získají čas z internetu, takže tento projekt ke spuštění nebude potřebovat žádný RTC, bude k tomu potřebovat pouze funkční připojení k internetu A pro tento projekt potřebujete esp8266, který bude mít
Mechanické dálkové spouštění pro Ricoh GR II Digital: 5 kroků (s obrázky)
Mechanické dálkové spouštění pro Ricoh GR II Digital: Opravdu si užívám 28mm objektiv Ricoh GR, protože jsem před 20 lety použil svůj první GR1. Nyní mě dohnala moje minulost a koupil jsem si GR II digital. Pro turistiku miluji jednoduchost, malé a lehké vybavení - GR II je pro mé účely perfektní, ale příslušenství
C51 4bitové elektronické hodiny - dřevěné hodiny: 15 kroků (s obrázky)
C51 4bitové elektronické hodiny - dřevěné hodiny: Měl jsem o víkendu trochu volného času, takže jsem šel dopředu a sestavil jsem tyto digitální bity se 4 -bitovými digitálními hodinami v hodnotě 2,40 USD, které jsem před chvílí koupil od AliExpress
Vyčištění staré mechanické klávesnice: 5 kroků (s obrázky)
Vyčistěte starou mechanickou klávesnici: Mechanické klávesnice byly v 90. letech minulého století velmi populární a populární a u mnoha lidí se jejich zvuk a zvuk více podobal psacím strojům, na které byli dříve zvyklí. Od té doby mechanická klávesnice