INHOUDSOPGAWE:
- Voorrade
- Stap 1: Ontwerp en maak van die ratte
- Stap 2: Montering van die ratstelsel
- Stap 3: Koppel die stepper en sensor
- Stap 4: Die elektronika wat die klok laat tik
- Stap 5: Programmering van die Arduino
- Stap 6: Geniet die geluid van u horlosie vir die eerste keer
Video: Planetêre ratklok: 6 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
(Ou) meganiese uurwerke is ongelooflik interessant en aangenaam om na te kyk, maar dit is ongelukkig amper onmoontlik om self te bou. Meganiese horlosies ontbreek ook aan die sorgeloosheid van die presiese digitale tegnologie wat vandag beskikbaar is. Hierdie instruksies wys u hoe u die beste van twee wêrelde kan kombineer; deur meganiese klokwysers deur 'n planetêre ratkas met 'n stepper motor en 'n Arduino te ry!
Voorrade
Algemene komponente:
- 5 mm hout en akrielplaat
- M5 boute (versink), ringe en moere
- PCB -afwykings
- M3 -skroewe vir die stapmotor
Elektriese komponente:
- Stepper driver (ek het die L293d gebruik)
- Enige tipe Arduino
- Real Time Clock (ek het die DS3231 gebruik)
- Hall -effek sensor (ek het die A3144 gebruik)
- 5 mm Neodium magneet
- Knoppies vir gebruikersinvoer
- 10K weerstand
- 100uf 25V kapasitor
- DC -aansluiting
- 5V 2A DC kragbron
- Battery vir die RTC (cr2032 in my geval)
Meganiese komponente:
- Enige tipe 1,8 grade/stap -stapmotor met 'n as van 5 mm
- GT2 400 mm tandriem
- GT2 60 tand 5mm as katrol
- GT2 20 tand 5mm as katrol
- 5x16x5 mm laer (3x)
- 5x16x5 mm flenslager (2x)
- M5x50 draadstang
Stap 1: Ontwerp en maak van die ratte
Een van die doelwitte van hierdie projek was om 'n motor te hê wat die hele klok aandryf, soortgelyk aan 'n werklike meganiese klok waar een ontsnappingsmeganisme die hele klok aandryf. Die minuutwyser moet egter 12 rotasies maak in die tyd wat die uurwyser 1 draai maak. Dit beteken dat 'n ratkas van 1:12 nodig is om albei hande met een motor te bestuur. Ek het besluit om dit met 'n planetêre ratkas te doen; die video wat ingesluit is, verduidelik pragtig hoe hierdie tipe ratkas werk.
Die volgende stap vir my was om die tandtelling vir die verskillende ratte te bepaal om 'n verhouding van 1:12 te skep. Hierdie webwerf was baie nuttig en bevat al die nodige formules. Ek het die sonrat aan die minuutwyser vasgemaak en die planeetdraer aan die uurwyser, terwyl die ringrat stilstaan. Kom ons doen 'n bietjie wiskunde!
- S = aantal tande op die sonrat
- R = aantal tande op die ringrat
- P = aantal tande op die planeet rat
Die ratverhouding (i) word bepaal deur:
i = S/R+S
Let op dat die aantal tande op die planeetrat in hierdie geval nie saak maak vir die ratverhouding nie, maar ons moet die algemene beperking respekteer:
P = (R - S)/2
Na 'n paar raaisels gebruik ek die volgende getalle: S = 10; R = 110; P = 50; Dit lyk asof hulle op die rand is van wat moontlik is, aangesien daar baie min speling tussen die planeetwiele is, maar dit werk!
U kan die ratte in u gunsteling CAD -program teken, die meeste van hulle het spesiale ratproppe. U kan ook die lêers wat by hierdie instruksies aangeheg is, gebruik. natuurlik. Let daarop dat alle ratte, hoewel dit in grootte verskil, dieselfde tandhoogte het.
Ek het gedink dit sal wonderlik wees om hierdie ratte van 5 mm aluminium te maak en het 'n plaaslike winkel kontak met 'n waterstraal as hulle hierdie ratte vir my kan sny. Normaalweg sou u nooit ratte met watersnyers maak nie, maar dit is ratte met baie lae werkverrigting. Verrassend genoeg het hulle ingestem om te probeer, maar hierdie plan het vreeslik misluk. Die dele was net te klein vir die waterstraal en het begin rondbeweeg terwyl dit sny.
Hierdie terugslag het beteken dat dit tyd was vir plan B, so ek het 'n bietjie 5 mm swart swart akriel gekoop en 'n plek gekry met 'n lasersnyer, wat geen probleem gehad het om my ratte te sny nie. As u nie 'n lasersnyer beskikbaar het nie, kan u waarskynlik ook 'n 3D-drukker vir hierdie ratte gebruik, ek het die STL-lêers ingesluit (die ring moet moontlik in 3 dele verdeel word).
Nadat ek gesny het, druk ek die gemonteerde laers in die planetêre ratte. Om die pasmaat reg te kry, het ek 'n proefstuk van akriel gemaak met verskeie gate wat elk 'n effens groter deursnee gehad het (stappe van 0,05 mm). Nadat ek die instelling met die regte pas gevind het, het ek die gatgrootte in die planetêre ratte na hierdie instelling verander. Dit is iets wat verskil met materiaal en tipe masjien, dus u moet dit altyd self doen.
Stap 2: Montering van die ratstelsel
Om die ratte te monteer, is die raamwerk van die klok nodig. Dit is nou die deel waar u u kreatiwiteit kan laat waak, aangesien die vorm van die raam relatief onbelangrik is, solank al die boutgate op die regte plek is. Ek het gekies om baie gate in die draaiplaat en agterplaat te maak om die ratmeganisme te beklemtoon. Dit is ook die rede waarom die planeetdraers en minuutwysers deursigtig is, maar dit lyk ook net cool!
Ek het weer die lasersnyer gebruik om hierdie dele te maak, en aangesien die akriel dele 5 mm dik was, het ek ook die hout dele 5 mm dik gemaak. Alle gate in die draaiplaat en planeetdraer is versink om bypassende boute te pas.
Die sentrale as van die klok loop in twee laers binne -in die planeetdraers. Aangesien ek hierdie as van 'n staaf van 5 mm gemaak het, pas dit baie goed in die laers en kon ek nie meer die komponente uitmekaar haal nie. Dit sou baie makliker wees om net 'n stuk M5 -draad te gebruik, want u hoef ook nie meer u eie draad te sny nie (as ek eers besef het …). Om te keer dat die sonrat om die as draai, het dit 'n D-vormige gat, dus moet die as ook in hierdie D-vorm ingedruk word. As die sonrat om die as pas, kan u die as monteer; moenie die planeetdraers vergeet as u flenslaers gebruik nie! Kyk na die ontplofde aansig vir monteerinstruksies.
As die sentrale as gemonteer is, is dit tyd vir die planeet. Hulle benodig ook die klein ringe, net soos die sentrale as, om seker te maak dat die ratte glad loop. Sodra alles op die planeetdraers gemonteer is, kyk of die planeet se ratte en sonrat glad verloop.
Die sentrale deel kan nou in die klokraam gemonteer word. Dit is 'n vervelige taak, maar dit help baie om die boute deur die voorplaat te steek en vas te plak. Dit kan ook handig wees om die voorplaat te lig om ruimte vir die minuut te skep. Die foto's toon dat ek ses klein stukkies papier tussen die ratring en die agterplaat geplaas het om 'n bietjie speling vir die ratte te gee. As u die planeetdraer insit, moet u seker maak dat die draaiknoppe op 'n sinvolle plek wys (as u minuutwyser op 12 wys, moet die uurwyser nie tussen twee uur se voorbeeld wees nie)
Stap 3: Koppel die stepper en sensor
Noudat ons 'n ratmeganisme het wat die hande korrek aandryf, moet ons steeds die ratmeganisme reg bestuur. Daar kan verskillende tipes elektriese motors gebruik word. 'N Stepper-motor kan ook 'n regte "klik" -klank maak, wat ideaal is vir die semi-meganiese horlosie!
'N Gewone stapmotor kan 200 treë per omwenteling maak, wat beteken dat dit 200 stappe per uur kan wees as ons dit met die minuutwyser koppel. Dit beteken 'n interval van 18 sekondes per stap, wat nog nie soos 'n tikkende klok klink nie. Daarom gebruik ek 'n 1: 3 -transmissie tussen die stapmotor en die minuutwysers, sodat die stapmotor 600 treë per uur moet maak. Deur die halfstapmodus te gebruik, kan dit verhoog word tot 1200 stappe per uur, wat gelyk is aan een stap per 3 sekondes. Klink beter!
Een probleem met stepper motors is dat jy nooit weet waar hulle is as jy jou Arduino aanskakel nie. Daarom het alle 3D-drukkers eindpunte, sodat u u drukker na 'n bekende posisie kan skuif en dan vanaf daardie punt kan voortgaan. Dit is ook nodig vir die klok; slegs 'n eindstop werk nie, aangesien 'n klok deurlopend moet draai. Om hierdie posisionele waarneming te besef, gebruik ek 'n A3144 Hall-effek sensor wat 'n magneet waarneem (kyk die polariteit! …) wat aan die planeetdraer vasgemaak is. Dit word gebruik om die hande na 'n spesifieke posisie by die aanvang te skuif, waarna hulle na die benodigde tyd kan beweeg.
Montering is baie eenvoudig; Bevestig die stapmotor aan die agterkant en laat die skroewe effens los. Dan kan u die klein katrol op die stepper -motoras monteer en kyk of die tandriem reguit loop. Nou kan u die stapmotor skuif om die spanning op die tandriem aan te pas. Die tandriem het 'n klein bietjie spel nodig om seker te maak dat u nie die ratte belas nie. Speel met hierdie instelling totdat u tevrede is, en draai dan die skroewe van die stapmotor heeltemal vas.
Die saal-effek sensor is vasgeplak. Dit is die beste om eers drie drade aan die sensor te soldeer en seker te maak dat die hitte krimp om elke been van die sensor sodat hulle mekaar nie kan kort nie. Na soldeer kan die sensor op sy plek vasgeplak word. Dit maak nie regtig saak watter kant op is nie, solank jy nog nie die magneet vasgemaak het nie. Nadat u die sensor vasgeplak het, koppel dit aan 'n Arduino of 'n klein LED -kring om te toets of dit werk. (LET WEL: die saal -effek sensor werk slegs as die magnetiese veldlyne in die regte rigting gaan). Gebruik hierdie toetsbaan om te bepaal hoe die magneet geplak moet word. As u heeltemal seker is watter kant van u magneet die sensor in die gesig staar, plak u die magneet vas.
Stap 4: Die elektronika wat die klok laat tik
U kan 'n baie eenvoudige Arduino -kode gebruik, wat 'n halwe stap met die motor maak en dan 'n vertraging van 3000 millisekonde neem tot die volgende stap. Dit sal werk, maar dit is nie baie presies nie, aangesien die interne Arduino -klok nie baie akkuraat is nie. Tweedens sou die Arduino die tyd vergeet elke keer as hy die krag verloor.
Om die tyd dop te hou, is dit dus die beste om 'n intydse klok te gebruik. Hierdie dinge is spesiaal ontwerpte skyfies met 'n rugsteunbattery wat die tyd akkuraat byhou. Vir hierdie projek het ek die DS3231 RTC gekies wat via i2c met 'n Arduino kan kommunikeer, wat die bedrading maklik maak. As u eers die tyd korrek op sy chip ingestel het, sal dit nooit vergeet hoe laat dit is nie (solank die cr2032 -battery nog 'n bietjie sap oor het). Besoek hierdie webwerf vir al die besonderhede oor hierdie module.
Die bestuur van die stapmotor word gedoen met 'n L293d -motorbestuurder. Sommige meer gevorderde stapmotorbestuurders gebruik 'n PWM-sein vir mikro-trap en huidige beperking. Hierdie PWM -sein kan die irriterende piepgeluid maak waarmee elke vervaardiger bekend is (veral as u 'n 3D -drukker besit). Aangesien hierdie horlosie veronderstel is om deel van u interieur te word, is nare geluide nie wenslik nie. Daarom het ek besluit om die lae-tegnologie l293d-motorbestuurder te gebruik om seker te maak dat my klok stil is (behalwe om elke 3 sekondes te stap, maar dit is eintlik lekker!). Besoek hierdie webwerf vir 'n gedetailleerde beskrywing van die l293d -chip. Let daarop dat ek my stappermotor op 5V laat werk, wat die kragverbruik en temperatuur van die stappermotor verlaag.
Soos vroeër genoem, gebruik ek 'n Hall-effek sensor om 'n magneet vas te plak wat vasgemaak is aan die planeet draer. Die bedieningsbeginsel van die sensor is baie eenvoudig; dit verander van toestand as 'n magneet naby genoeg is. Op hierdie manier kan u Arduino 'n digitale hoog of laag opspoor en kan dus opspoor of 'n magneet naby is. Besoek hierdie webwerf wat wys hoe u die sensor kan koppel en die eenvoudige kode toon wat gebruik word vir magneetopsporing.
Laastens, maar nie die minste nie, het ek 4 knoppies vir gebruikersinvoer by die PCB gevoeg. Hulle gebruik die Arduino interne optrekweerstands om die bedrading te vereenvoudig. My PCB het ook headers in 'n Uno -opset, sodat ek Arduino -skilde kan byvoeg vir moontlike uitbreidings (ek het dit tot dusver nog nie gedoen nie).
Ek het eers alles op my broodbord getoets en toe ontwerp en bestel ek 'n pasgemaakte PCB vir hierdie projek, want dit lyk wonderlik! U kan ook die printplaat aan die agterkant van u horlosie monteer as u nie daarna wil kyk nie.
Die Gerber -lêers vir die PCB kan van my skyf afgelaai word. Instructables laat my dit om een of ander rede nie oplaai nie. Gebruik hierdie skakel na my Google Drive.
Stap 5: Programmering van die Arduino
Die basiese kode vir die Arduino is eintlik baie eenvoudig. Ek het 'n skema aangeheg wat visualiseer wat in die Arduino gebeur en hoe die Arduino met die ander toestelle koppel. Ek het verskeie biblioteke gebruik om die kodering te vereenvoudig.
- Accelstepper -> hanteer die stapvolgorde van die stapmotor, waarmee u intuïtiewe opdragte kan gee soos: Stepper.runSpeed () of Stepper.move () waarmee u onderskeidelik teen 'n sekere spoed of na 'n sekere posisie kan beweeg.
- Wire -> dit is nodig vir i2c -kommunikasie, selfs as u die RTClib gebruik
- RTClib -> hanteer die kommunikasie tussen Arduino en RTC, waarmee u intuïtiewe opdragte kan gee soos rtc.now () wat die huidige tyd teruggee.
- OneButton -> Hanteer die knoppie -invoer, ontdek perse en voer dan 'n vooraf gespesifiseerde leemte uit om iets te doen. Kan enkele, dubbele of lang perse opspoor.
As u kode vir 'n horlosie skryf, is dit baie belangrik om nie te veranderlikes wat aanhou toeneem nie. Aangesien die Arduino -kode 24/7 werk, word hierdie veranderlikes vinnig groter en groter en sal dit uiteindelik 'n oorloop veroorsaak. Die stepper motor word byvoorbeeld nooit beveel om na 'n sekere posisie te gaan nie, aangesien hierdie posisie net mettertyd sal toeneem. In plaas daarvan word die stappermotor beveel om 'n sekere aantal stappe in 'n sekere rigting te beweeg. Op hierdie manier is daar geen posisie veranderlike wat mettertyd toeneem nie.
Die eerste keer dat u die RTC aansluit, moet u die tyd van die skyfie stel, 'n stuk kode wat u kan oplos wat die RTC -tyd gelyk stel aan u rekenaartyd (die tyd op die oomblik dat u die kode saamstel). Let daarop dat as u dit sonder kommentaar verlaat, die RTC -tyd teruggestel sal word na die tyd waarop u u kode telkens opgestel het. So lewer 'n opmerking, voer dit een keer uit en lewer dan kommentaar daarop.
Ek het my kode by hierdie instruksies aangeheg, ek het deeglik kommentaar gelewer. U kan dit sonder enige veranderinge oplaai, of kyk wat u dink!
Stap 6: Geniet die geluid van u horlosie vir die eerste keer
Nadat u alle elektronika gekoppel het en die kode opgelaai het, is dit die resultaat!
Die basiese ontwerp van hierdie horlosie is baie eenvoudig en kan in baie verskillende vorms en groottes gemaak word. Aangesien daar 'n Arduino aan boord is, kan u ook maklik ekstra funksies byvoeg. Stel 'n wekker op die regte tyd, laat die koffiemasjien op 'n vasgestelde tyd aanskakel, internetverbinding, koel demo -modusse wat die meganiese beweging van u ontwerp aan ander wys en nog baie meer!
Soos u moontlik in hierdie instruksies opgemerk het, moes ek my horlosie uitmekaar haal om hierdie instruksies te skryf. Alhoewel ek jammer is vir hierdie instruksies, kan ek ten minste waarborg dat die ontwerp op die lang termyn baie goed presteer, aangesien hierdie horlosie al meer as 3 jaar sonder probleme in my woonkamer wegtik!
Laat weet my asseblief in die kommentaar as u van hierdie Instructable hou, dit is die eerste keer dat ek een skryf. Stuur vir my ook 'n boodskap as u enige wenke of vrae het. En ek hoop dat ek iemand geïnspireer het om ook eendag 'n semi-meganiese horlosie te bou!
Eerste prys in die klokwedstryd
Aanbeveel:
Neem wonderlike foto's met 'n iPhone: 9 stappe (met foto's)
Neem wonderlike foto's met 'n iPhone: die meeste van ons dra deesdae 'n slimfoon oral, daarom is dit belangrik om te weet hoe u u slimfoonkamera kan gebruik om fantastiese foto's te neem! Ek het net 'n paar jaar 'n slimfoon gehad, en ek hou daarvan om 'n ordentlike kamera te hê om dinge te dokumenteer wat ek
Raspberry Pi -boks met koelventilator met CPU -temperatuuraanwyser: 10 stappe (met foto's)
Raspberry Pi Box of Cooling FAN Met CPU Temperature Indicator: Ek het framboos pi (Hierna as RPI) CPU temperatuur aanwyser stroombaan in die vorige projek bekendgestel. Die kring wys eenvoudig RPI 4 verskillende CPU temperatuur vlakke soos volg.- Groen LED aangeskakel wanneer CPU temperatuur is binne 30 ~
Howto: Raspberry PI 4 Headless (VNC) installeer met Rpi-imager en foto's: 7 stappe (met foto's)
Howto: Raspberry PI 4 Headless (VNC) installeer met Rpi-imager en foto's: ek is van plan om hierdie Rapsberry PI te gebruik in 'n klomp prettige projekte in my blog. Kyk gerus daarna. Ek wou weer my Raspberry PI gebruik, maar ek het nie 'n sleutelbord of muis op my nuwe plek gehad nie. Dit was 'n rukkie sedert ek 'n Framboos opgestel het
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino - Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter - Rc Helikopter - Rc -vliegtuig met Arduino: 5 stappe (met foto's)
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino | Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter | Rc Helikopter | Rc -vliegtuig met Arduino: om 'n Rc -motor te bestuur | Quadcopter | Drone | RC -vliegtuig | RC -boot, ons het altyd 'n ontvanger en sender nodig, veronderstel dat ons vir RC QUADCOPTER 'n 6 -kanaals sender en ontvanger nodig het en dat die tipe TX en RX te duur is, so ons maak een op ons
Hoe om 'n rekenaar met maklike stappe en foto's uitmekaar te haal: 13 stappe (met foto's)
Hoe om 'n rekenaar uitmekaar te haal met eenvoudige stappe en foto's: dit is 'n instruksie oor hoe om 'n rekenaar uitmekaar te haal. Die meeste basiese komponente is modulêr en kan maklik verwyder word. Dit is egter belangrik dat u daaroor georganiseerd is. Dit sal u verhinder om onderdele te verloor, en ook om die montering weer