Tartalomjegyzék:
- 1. lépés: 3D nyomtatás a műanyag alkatrészekre
- 2. lépés: Készítse elő a vezérlőpaneleket és a vezetékeket
- 3. lépés: Szerelje össze a szervókat
- 4. lépés: Beállítás és tesztelés
- 5. lépés: A kód feltöltése
- 6. lépés: Az óra összeszerelése a hátsó táblán
- 7. lépés: Végső beállítás és kezelés
Videó: Mechanikus hét szegmenses kijelző óra: 7 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:39
Pár hónapja építettem egy két számjegyű, 7 szegmenses mechanikus kijelzőt, amelyet visszaszámlálóvá alakítottam. Egész jól sikerült, és sokan azt javasolták, hogy duplázódjanak a kijelzőn, hogy készítsenek egy órát. A probléma az volt, hogy már kifogytam a PWM IO -ból az Arduino Mega készüléken, és nem volt elég a második vagy a harmadik számjegyhez. Ekkor ezeknek a PCA9685 16 csatornás PWM illesztőprogramoknak az irányába mutattak, amelyek I2C interfészen keresztül működnek. Ezek lehetővé tették a szükséges 28 szervó meghajtását a két I2C csap segítségével egy Arduino -n. Így hozzá kellett kezdenem egy óra építéséhez, amely most egy DS1302 valós idejű óramodult használ az idő megtartására, és két 16 csatornás szervo meghajtót a kijelző alkotásához használt 28 szervó vezérléséhez, mindezt egy Arduino Uno hajtja.
Ha élvezi ezt az utasítást, kérjük, szavazzon rá az Óraversenyen
Kellékek:
Az óra elkészítéséhez néhány alapvető eszközön kívül a következő kellékekre lesz szüksége:
- Arduino Uno - Vásárlás itt
- DS1302 Óramodul - Vásárlás itt
- 2 db PCA9685 16Ch szervo meghajtó - Vásárlás itt
- 28 x Micro Servo - Vásárlás itt
- Szalagkábel - Vásárlás itt
- Férfi tűs fejlécek - Vásárlás itt
- Női tűfejlécek - Vásárlás itt
- 3 mm -es MDF - Vásárlás itt
- Fekete spray festék - Vásároljon itt
- 5V 5A akkumulátor -eltávolító áramkör - Vásárlás itt
- 12 V -os tápegység - Vásároljon itt
Ehhez a projekthez néhány 3D nyomtatott alkatrészre is szüksége lesz. Ha még nem rendelkezik 3D nyomtatóval, és szívesen készít valamit, akkor mindenképpen fontolja meg annak megvásárlását. Az itt használt Creality Ender 3 Pro megfizethető, és árához képest jó minőségű nyomatokat készít.
- 3D nyomtató - vásároljon itt
- Szál - Vásároljon itt
1. lépés: 3D nyomtatás a műanyag alkatrészekre
A 7 szegmenses kijelzőket a lehető legegyszerűbbre terveztem. A szervó egyben a tartókonzol is a felette lévő szegmens feltartásához. Minden szegmenshez két 3D nyomtatott komponens szükséges, egy távtartó blokk a szervó alsó oldalának alátámasztására és a kijelző szegmens, amely közvetlenül a szervókarra ragasztható.
Töltse le a 3D nyomtatási fájlokat - Mechanikus 7 szegmenses kijelző óra 3D nyomtatási fájlok
Nyomtassa ki a szervo szegmenseket és pontokat élénk színű PLA -val. Áttetsző zöldet használtam, de a pirosnak, narancsnak vagy sárgának is jól kell működnie. Fekete PLA -t használtam a távtartó blokkokhoz és a ponttartókhoz, hogy ne legyenek láthatók, amikor a szegmenseket kikapcsolt helyzetbe fordítják.
Ha nincs hozzáférése 3D nyomtatóhoz, próbálja ki az online nyomtatási szolgáltatásokat. Számos megfizethető szolgáltatás áll rendelkezésre, amelyek kinyomtatják az alkatrészeket, és néhány napon belül házhoz szállítják őket.
2. lépés: Készítse elő a vezérlőpaneleket és a vezetékeket
Két PCA9685 16 csatornás PWM illesztőprogramot kell használnia a 28 órás szervók meghajtásához. A szervókat óra- és percszámjegyekre bontottam, minden számpárt egy tábla hajtott. Tehát az egyik táblám vezérli a szervókat a két órás számjegyekhez, a másik pedig a szervókat a két perces számjegyekhez.
A kettő összekapcsolásához össze kell állítania egy 6 vezetékes szalagkábel -csatlakozót, és egy második fejlécet kell forrasztania az első szervokártya másik végére. Meg kell változtatnia az I2C címet is a második táblán, hogy az eltérjen az elsőtől és egyedileg azonosítható legyen.
A három táblát (két szervólapot és az óramodult) az Arduino -hoz csatlakoztatni kell a kábelköteget is. Szükséged lesz 5 V -ra és GND -re minden táblához, valamint az I2C csatlakozásokhoz az Arduino A4 és A5 csapokhoz (I2C az Arduino Uno -n), és az óramodul CLK, DAT & RST csatlakozói az Arduino 6, 7 és 8 -as csapjaihoz illetőleg.
Az Arduino közvetlenül a 12 V -os tápegységről és a szervókról kapja az áramot az 5 V -os 5 A BEC -ről, amelyet ezután a PWM -illesztőprogram tetején lévő két csatlakozóhoz csatlakoztatnak. Csak egy szervo meghajtót kell csatlakoztatnia a tápellátáshoz, és a 6 vezetékes szalagkábel -csatlakozáson keresztül táplálja a másodikat.
3. lépés: Szerelje össze a szervókat
Miután kinyomtatta a szegmenseket, a hátát és az oldalát feketére kell permeteznie, hogy kevésbé láthatók legyenek, amikor 90 fokkal kikapcsolt helyzetben vannak.
Ezután fel kell ragasztania a szegmenseket a szervókarokra forró olvadék ragasztóval. Segít ragasztani őket a szervóra úgy, hogy a kar már a szervón van, így ellenőrizheti, hogy egyenesen és vízszintesen ragasztja -e őket.
Ezenkívül egy távtartó blokkot kell ragasztania minden szervó aljára.
Szerelje össze a pontokat úgy, hogy egy kis dübelt vagy kebabrudat ragaszt a pontok hátuljába, majd az alaptömbökbe. Ezeket a botokat is feketére szórtam, hogy szögből nézve kevésbé láthatóak legyenek.
4. lépés: Beállítás és tesztelés
Az összes szervót megszámoztam, és minden vezetékre felírtam a számot, hogy könnyebb legyen nyomon követni őket. A mértékegység felső szegmensével kezdtem, és a tízes számjegy középső szegmenséig dolgoztam. Ebben a sorrendben csatlakoztattam őket a szervo vezérlőkártyákhoz, emlékezve arra, hogy a táblák azonosítói 0 -tól 13 -ig számítanak, és nem 1 -től 14 -ig.
Ezután felállítottam a szegmenseket egy asztalra, elegendő hely közöttük a teszteléshez, hogy ne mozogjanak az egyikbe és a másikba, miközben beállították az utazási korlátokat és az irányokat. Ha megpróbálja közel egymáshoz állítani őket, akkor valószínűleg egy vagy kettő megpróbál rossz irányba mozogni vagy haladni egy bizonyos szakaszban, és ütni fog egy másikat, ami károsíthatja a szegmenst, a szervókarokat, vagy megfoszthatja a szervó fogaskerekeit.
5. lépés: A kód feltöltése
A kód első pillantásra bonyolultnak tűnik, de valójában viszonylag egyszerű a két használt könyvtárnak köszönhetően. Ezenkívül sok az ismétlés, mert négy különböző 7 szegmenses kijelzőt kell frissíteni.
Itt található a kód összefoglaló leírása, nézze meg a teljes útmutatót, ahol részletesebb magyarázatot talál, és egy linket a kód letöltéséhez - Mechanikus 7 szegmenses kijelzőóra
Kezdjük két könyvtár importálásával, a virtuabotixRTC.h az óra modulhoz és az Adafruit_PWMServoDriver.h a szervo meghajtókhoz. Az Adafruit könyvtár közvetlenül letölthető és telepíthető az IDE könyvtárkezelőjén keresztül.
Ezután létrehozunk egy objektumot minden vezérlőpulthoz a megfelelő címmel, egyet az óra számjegyekkel és egyet a perc számjegyekkel.
Ezután négy tömbünk van a szervó be- és kikapcsolási pozícióinak tárolására. A következő lépésekben módosítania kell ezeket a számokat, hogy megbizonyosodjon arról, hogy a szervók bekapcsolt helyzetben állnak, kikapcsolt állapotban 90 fokkal elfordulnak, és nem haladnak túl.
Egy számjegy tömb tárolja az egyes szegmensek pozícióit minden megjelenítendő számjegyhez.
Ezután beállítjuk az óra modult, és változókat hozunk létre az aktuális és a múltbeli számjegyek tárolására.
A beállítási funkcióban elindítjuk és beállítjuk a PWM vezérlőpaneleket, valamint szükség esetén frissítjük az órát. Ezután egy cikluson keresztül futunk, hogy a kijelzőt 8 8: 8 8 -ra állítsuk, így tudjuk az összes szervó kiindulási helyzetét. Ezt a szervókat is úgy kell beállítani, hogy mindegyikük felfelé nézzen.
A fő ciklusban megkapjuk a frissített időt az óra modulból, kiszórjuk a négy számjegybe, majd ellenőrizzük, hogy az idő változott -e az utolsó ellenőrzéshez képest. Ha az idő megváltozott, akkor frissítjük a kijelzőt, majd frissítjük az előző számjegyeket.
A frissítési kijelző funkcióban először a középső szegmenseket mozgatjuk. Ezt először azért kell megtenni, mert némi logika szükséges ahhoz, hogy a középső szegmens melletti két felső szegmenst kissé félretolja az útból, mielőtt a középső szegmenst elmozdítaná, különben beleütközik. A középső szegmensek mozgatása után a többi szegmens a megfelelő pozícióba kerül.
6. lépés: Az óra összeszerelése a hátsó táblán
Miután befejeztem a tesztelést, összeszereltem a szervókat a hátsó táblára, a fenti elrendezést útmutatóként.
A fehér terület a tábla teljes mérete, a világosabb szürke az egyes számjegyeket körülvevő terület, ahová a szervoszegmensek beköltöznek, a sötétszürke területen lévő körvonal pedig a külső 6 szegmens középvonala minden számjegy esetén.
Kivágtam a táblát, megjelöltem az elrendezést, majd a számjegyeket a helyükre ragasztottam, hogy kiépítsem az óralapot.
Ezután lyukakat fúrtam minden szervó közelében, és a vezetékeket a tábla hátuljához vezettem, hogy kevésbé láthatóak legyenek.
Kétoldalas szalaggal rögzítettem az elektronikát az óra hátoldalára.
7. lépés: Végső beállítás és kezelés
Miután a szervók készen voltak, eltávolítottam az összes szervokart a szegmensek helyzetének végső beállításához. Ebben az állapotban be kell kapcsolnia az Arduino-t, hogy a 8 8: 8 8 felirat jelenjen meg, majd húzza ki az áramellátást, ez újra összpontosítja az összes szervóját, hogy a szervókarokat vissza lehessen helyezni úgy, hogy a szegmensek olyan közel legyenek a függőlegeshez amint lehet.
Ezután szekvenciálisan be kell kapcsolnia az Arduino -t, és módosítania kell a szegmens be- és kikapcsolási pozícióit a négy tömbjében, hogy a szervók tökéletesen függőlegesek legyenek bekapcsolt állapotban, és 90 fokos fordulatot kell végezni kikapcsolás nélkül. Ez a lépés meglehetősen időigényes és némi türelmet igényel, de a végeredmény megéri!
Az órát 12 V -os tápegység és 5 V -os BEC csatlakoztatva hagyhatja áram alatt. Ha lemerül az áram, az RTC modul akkumulátora megtartja az időt, így az áramellátás visszaállításakor az óra automatikusan visszaáll a megfelelő időre.
Ha tetszett ez az Instructable, kérjük, szavazzon rá az Óra versenyen, és tudassa velem az esetleges fejlesztéseket vagy javaslatokat az alábbi megjegyzések részben.
Második díj az Óraversenyben
Ajánlott:
Hét szegmenses kijelző vezérlése Arduino és 74HC595 műszakregiszter használatával: 6 lépés
Hét szegmenses kijelző vezérlése az Arduino és a 74HC595 műszakregiszter használatával: Hé, mi újság, srácok! Akarsh itt a CETech -től. Hét szegmenses kijelzőt érdemes megnézni, és mindig hasznos eszköz az adatok számjegyek formájában történő megjelenítésére, de van egy hátrányuk, amely az, hogy amikor egy hét szegmenses kijelzőt valósan irányítunk
Élvilágított, hét szegmenses óra kijelző: 16 lépés (képekkel)
Élvilágítású, hét szegmenses órakijelző: A hét szegmenses kijelző több mint egy évszázada létezik (https://en.wikipedia.org/wiki/Seven-segment_display), és a számok ismerős alakját képezik a digitális órákban, műszerfalakon és sok más numerikus kijelző. Újra lettek
DIY hét szegmenses kijelző 2ʺ: 14 lépés
DIY hét szegmenses kijelző 2ʺ: Ez a kijelző közös anódként vagy közös katódként is elkészíthető. A projekt alkotóelemei egy NYÁK, 29 db 3 mm -es LED, 8 ellenállás és 2 db női fejléc az 1x6 arduino számára. A DIY hét szegmenses kijelző 2ʺ ideális arduinhoz
Digitális és bináris óra 8 számjegyű X 7 szegmenses LED kijelző: 4 lépés (képekkel)
Digitális és bináris óra 8 számjegyű X 7 szegmenses LED -kijelző: Ez a digitális & Bináris óra 8 számjegyű és 7 szegmenses LED -kijelzővel. Szeretem új funkciókat adni a szokásos eszközökhöz, különösen az órákhoz, és ebben az esetben a 7 Seg kijelző használata a bináris órához szokatlan, és
Újrahasznosított PVC hét szegmenses kijelző: 5 lépés (képekkel)
Újrahasznosított PVC hét szegmenses kijelző: már egy ideje tervezem, hogy digitális órát készíthetek, amelyet a falra akaszthatok, de továbbra is ezt tettem, mert egyszerűen nem akartam akrilt vásárolni, ezért néhány maradék PVC kábelcsatornát használtam Azt kell mondanom, hogy az eredmények nem az ágyak, így