Kazalo:

Igranje z ročno stensko uro: 14 korakov
Igranje z ročno stensko uro: 14 korakov
Anonim
Image
Image
Načelo delovanja
Načelo delovanja

Elektronske ročne stenske ure (kremen za komercialno označevanje) dandanes niso nič posebnega. Lahko ga kupite v številnih trgovinah. V nekaterih so izjemno poceni; s ceno približno 2 € (50 CZK). Nizka cena je lahko motivacija, da si jih podrobneje ogledate. Potem sem spoznal, da so lahko zanimiva igrača za novince v elektroniki, ki nimajo toliko sredstev in jih zanima predvsem programiranje. Bi pa rad predstavil svoj razvoj drugim. Ker so poceni stenske ure zelo strpne do poskusov in preizkusov začetnikov, sem se odločil napisati ta članek, kjer bi rad predstavil osnovne ideje.

1. korak: Načelo delovanja

Načelo delovanja
Načelo delovanja
Načelo delovanja
Načelo delovanja

Preprosto je prepoznati, da ta ura uporablja za premikanje nekakšen koračni motor. Tisti, ki je že razbil nekaj ur, je spoznal, da je v običajnem koračnem motorju le ena tuljava namesto dveh. V tem primeru govorimo o "enofaznem" ali "enopolnem" koračnem motorju. (To ime se ne uporablja tako pogosto, je večinoma analogna izpeljava za označevanje, ki se uporablja za druge koračne motorje s polnim skladom). Tisti, ki že začne razmišljati o načelu delovanja, se mora vprašati, kako je mogoče, da se motor vedno vrti v pravo smer. Za opis načela delovanja je uporabna naslednja slika, ki prikazuje starejše vrste motorjev.

Na prvi sliki je vidna ena tuljava s priključkoma A in B, sivim statorjem in rdeče-modrim rotorjem. Rotor je izdelan iz trajnega magneta, zato je barvno označen, viden, v katero smer je magnetiziran (ni tako pomembno, kateri pol je severni in kaj južni). Na statorju lahko vidite dva "utora" blizu rotorja. So zelo pomembni za načelo delovanja. Motor deluje v štirih korakih. Vsak korak bomo opisali s štirimi slikami.

Med prvim korakom (druga slika) je motor pod napetostjo, priključek A je priključen na pozitivni pol, priključek B pa na negativni pol. Ustvari magnetni tok, na primer v smeri puščice. Rotor se bo ustavil v položaju, ki bo ustrezal magnetnemu toku.

Drugi korak sledi po prekinitvi napajanja. Nato se magnetni tok v statorju ustavi in magnet se nagiba k vrtenju v položaj, njegova polarizacija je v smeri največje prostornine magnetnega mehkega materiala statorja. In tukaj sta ključna ta dva utora. Opozarjajo na majhno odstopanje največje prostornine. Nato se rotor nekoliko zasuka v smeri urinega kazalca. Kot je prikazano na sliki 3.

Naslednji korak (četrta slika) je z napetostno priključeno polariteto (priključek A na negativni pol, priključek B na pozitivni pol). To pomeni, da se magnet v rotorju vrti v smeri magnetnega polja s tuljavo. Rotor uporablja najkrajšo smer, to je spet v smeri urinega kazalca.

Zadnji (četrti) korak (peta slika) je enak drugemu. Motor je spet brez napetosti. Razlika je le v tem, da je začetni položaj magneta nasproten, vendar se bo rotor spet premaknil v smer največje prostornine materiala. To je spet malo v smeri urinega kazalca.

To je ves cikel, prvi korak sledi spet. Za motorno gibanje sta dva in štiri koraka razumljena kot stabilna. Nato se z menjalnikom 1:30 mehansko prenese v položaj druge roke.

2. korak: Načelo delovanja Nadaljevanje

Načelo delovanja Cont
Načelo delovanja Cont
Načelo delovanja Cont
Načelo delovanja Cont
Načelo delovanja Cont
Načelo delovanja Cont
Načelo delovanja Cont
Načelo delovanja Cont

Slike prikazujejo napetostno valovno obliko na sponkah motorja. Številke pomenijo vse sekunde. V resnici so impulzi veliko manjši v primerjavi s prostori. Gre za eno milisekund.

3. korak: Praktično razstavljanje 1

Praktična demontaža 1
Praktična demontaža 1

Za praktično razstavljanje sem uporabil eno najcenejših stenskih ur na trgu. Imajo malo prednosti. Eno je, da je ta cena tako nizka, da jih lahko nekaj kupimo za poskuse. Ker je proizvodnja močno usmerjena v ceno, ne vsebuje nobenih zapletenih pametnih rešitev in tudi zapletenih vijakov. V resnici ne vsebujejo nobenih vijakov, samo plastične ključavnice. Potrebujemo le minimalno orodje. Na primer, izvijač potrebujemo samo za odstranjevanje teh ključavnic.

Za razstavljanje stenske ure potrebujemo izvijač z ravno konico (ali katero koli drugo palico), kljukico za oblačila in delovno preprogo z dvignjenimi robovi (to ni obvezno, vendar olajša iskanje koles in drugih manjših delov).

4. korak: Praktično razstavljanje 2

Praktična demontaža 2
Praktična demontaža 2
Praktična demontaža 2
Praktična demontaža 2
Praktična demontaža 2
Praktična demontaža 2
Praktična demontaža 2
Praktična demontaža 2

Na zadnji strani stenske ure so tri ključavnice. Dva zgornja na položaju številk 2 in 10 lahko odklenete in odprete pokrovno steklo Ko je steklo odprto, je možno izvleči kazalce ure. Njihov položaj ni potrebno označevati. Vedno jih bomo vrnili v položaj 12:00:00 Ko so kazalci na urah izklopljeni, lahko odmontiramo premik ure. Ima dva zapaha (na položaju 6 in 12). Priporočljivo je, da gibanje izvlečete čim bolj naravnost, sicer se lahko gibanje zatakne.

5. korak: Praktično razstavljanje 3

Praktična demontaža 3
Praktična demontaža 3
Praktična demontaža 3
Praktična demontaža 3
Praktična demontaža 3
Praktična demontaža 3

Potem je mogoče odpreti gibanje. Ima tri zapahe. dva na položajih 3 in 9 ur in nato tretji na 6 ur. Ko odprete, je dovolj, da med motorjem in menjalnikom odstranite prozoren zobnik, nato pa zobnik, ki je povezan z rotorjem motorja.

6. korak: Praktično razstavljanje 4

Praktična demontaža 4
Praktična demontaža 4
Praktična demontaža 4
Praktična demontaža 4

Tuljava motorja in stator se držita samo na enem zapahu (pri 12 urah). Ne drži za nobene tirnice, za tirnice se uporablja samo s pritiskom, potem odstranitev ni zapletena. Tuljava je navojena na statorju brez držala. Z lahkoto se lahko sleče.

7. korak: Praktično razstavljanje 5

Praktična demontaža 5
Praktična demontaža 5
Praktična demontaža 5
Praktična demontaža 5
Praktična demontaža 5
Praktična demontaža 5
Praktična demontaža 5
Praktična demontaža 5

Na spodnjo stran tuljave je prilepljeno majhno tiskano vezje, ki vsebuje en CoB (čip na plošči) s šestimi izhodi. Dva sta za napajanje in sta zaključena na večjih kvadratnih podlogah na krovu za namestitev električnih tirnic. dva izhoda sta priključena na kristal. Mimogrede, kristal je 32768Hz in ga je mogoče razpajkati za prihodnjo uporabo. Zadnja dva izhoda sta priključena na tuljavo. Se mi je zdelo bolj varno odrezati sledi na krovu in spajkati žice na obstoječe blazinice na krovu. Ko sem poskušal odpajkati tuljavo in žico priključiti neposredno na tuljavo, sem vedno odtrgal žico tuljave ali jo poškodoval. Spajanje novih žic na ploščo je ena od možnosti. Recimo, da je to bolj primitivno. Bolj ustvarjalna metoda je priključitev tuljave na napajalne ploščice in ohranjanje napajalnih tirnic za povezavo z ohišjem za baterije. Nato lahko elektroniko vstavite v škatlo za baterije.

8. korak: Praktična demontaža 6

Praktična demontaža 6
Praktična demontaža 6
Praktična demontaža 6
Praktična demontaža 6

Kakovost spajkanja lahko preverite z ohmmetrom. Tuljava ima upornost približno 200Ω. Ko je vse v redu, stensko uro sestavimo nazaj. Običajno vržem napajalne tirnice, potem imam več prostora za svoje nove žice. Fotografije so posnete pred metanjem električnih vodil. Ko jih odstranim, pozabim narediti naslednjo fotografijo.

Ko končam gibanje, ga preizkusim z drugo uro. Roko sem dal na os in priključil nekaj napajanja (uporabil sem baterijo CR2032, vendar je mogoče uporabiti tudi AA 1, 5V). Preprosto priključite napajanje v eno polarnost na žice in nato spet z nasprotno polariteto. Ura mora odtipkati in kazalka se premakne za eno sekundo. Ko imate težave z dokončanjem premikanja nazaj, ker žice zasedajo več prostora, preprosto zavrtite tuljavo in jo postavite na nasprotno stran. Ko enkrat ne uporabljate tirnic, to ne vpliva na premikanje ure. Kot je bilo že navedeno, jih morate pri vrnitvi rok pokazati na 12:00:00. To mora biti pravilna razdalja med uro in minuto.

9. korak: Primeri uporabe stenske ure

Večina preprostih primerov, ki se osredotočajo na prikaz časa, vendar z različnimi spremembami. Zelo priljubljena je sprememba, imenovana "Ura Vetinari". S kazanjem na knjigo Terryja Pratchetta, kjer ima lord Vetinari stensko uro v svoji čakalnici, je to nepravilno tikanje. Ta nepravilnost vznemirja čakajoče ljudi. Druga priljubljena aplikacija je "sinusna ura". To pomeni uro, ki pospešuje in zavira na podlagi sinusne krivulje, potem imajo ljudje občutek, plujejo po valovih. eden mojih najljubših je "čas kosila". Ta sprememba pomeni, da ura teče nekoliko hitreje v času med 11 in 12 uro (0,8 sekunde), da bi kosilo prej; in nekoliko počasneje v času kosila med 12 in 13 uro (1, 2 s), da bi imeli malo več časa za kosilo in da bi nadomestili izgubljeni čas.

Za večino teh sprememb je dovolj, da uporabite najpreprostejši procesor, ki uporablja delovno frekvenco 32768Hz. Ta frekvenca je zelo priljubljena pri izdelovalcih ure, saj je s to frekvenco enostavno izdelati kristal, prepovedano pa je preprosto binarno deljenje na popolne sekunde. Uporaba te frekvence za procesor ima dve prednosti: lahko preprosto ponovimo cikel iz ure; in procesorji imajo običajno minimalno porabo pri tej frekvenci. Poraba je nekaj, kar tako pogosto rešujemo pri igri s stensko uro. Še posebej, da se čim dalj časa napaja iz najmanjše baterije. Kot je bilo že navedeno, ima tuljava upornost 200Ω in je namenjena za cca 1,5 V (ena baterija AA). Najcenejši procesorji običajno delujejo z malo večjo napetostjo, vendar z dvema baterijama (3V) delujeta vse. Eden najcenejših procesorjev na našem trgu je Microchip PIC12F629 ali zelo priljubljeni moduli Arduino. Nato bomo pokazali, kako uporabljati obe platformi.

10. korak: Primeri uporabe stenske ure PIC

Primeri uporabe stenskih ur PIC
Primeri uporabe stenskih ur PIC
Primeri uporabe stenskih ur PIC
Primeri uporabe stenskih ur PIC

Procesor PIC12F629 ima delovno napetost 2,0 - 5,5 V. Zadostuje uporaba dveh "mignonskih baterij" = AA celic (cca 3V) ali dveh AA akumulatorjev za ponovno polnjenje (cca 2, 4V). Toda za tuljavno uro je dvakrat več, kot je bilo načrtovano. Povzroča minimalno nezaželeno povečanje porabe. Potem je dobro dodati najmanj serijski upor, ki bo ustvaril ustrezen delilnik napetosti. Vrednost upora mora biti približno 120Ω za moč akumulatorja ali 200Ω za moč baterije, izračunano za čisto uporovno obremenitev. V praksi je lahko vrednost nekoliko manjša, približno 100Ω. V teoriji je dovolj en zaporedni upor s tuljavo. Še vedno sem iz nekega razloga nagnjen k temu, da motor gledam kot simetrično napravo, nato pa zraven vsakega terminala tuljave postavim upor s polovičnim uporom (47Ω ali 51Ω). Nekatere konstrukcije dodajajo zaščitne diode, da se izognejo negativni napetosti procesorja, ko je tuljava odklopljena. Po drugi strani pa izhodna moč procesorskih izhodov zadostuje za povezavo tuljave neposredno s procesorjem brez ojačevalnika. Celotna shema procesorja PIC12F629 bo videti, kot je opisano na sliki 15. Ta shema velja za ure brez dodatnih krmilnih elementov. Še vedno imamo na voljo en vhodno/izhodni pin GP0 in samo en vhod GP3.

11. korak: Primeri uporabe stenske ure Arduino

Primeri uporabe stenskih ur Arduino
Primeri uporabe stenskih ur Arduino
Primeri uporabe stenskih ur Arduino
Primeri uporabe stenskih ur Arduino
Primeri uporabe stenskih ur Arduino
Primeri uporabe stenskih ur Arduino

Ko želimo uporabiti Arduino, si lahko ogledamo podatkovni list za procesor ATmega328. Ta procesor ima delovno napetost, določeno kot 1,8 V - 5,5 V za frekvenco do 4 MHz in 2,7 V - 5, 5 V za frekvenco do 10 MHz. Pri eni pomanjkljivosti Arduino plošč moramo biti previdni. Ta pomanjkljivost je prisotnost regulatorja napetosti na krovu. Velika količina napetostnih regulatorjev ima težave z obratno napetostjo. Ta problem je široko in najbolje opisan za regulator 7805. Za naše potrebe moramo uporabiti ploščo z oznako 3V3 (zasnovano za napajanje 3.3V), še posebej, ker ta plošča vsebuje kristal 8MHz in se lahko napaja od 2, 7V (to pomeni dva AA baterije). Nato uporabljeni stabilizator ne bo 7805, ampak njegov ekvivalent 3,3 V. Ko bi radi napajali ploščo brez uporabe stabilizatorja, imamo dve možnosti. Prva možnost je, da napetost priključite na zatiče "RAW" (ali "Vin") in +3V3 (ali Vcc) skupaj in verjamete, da stabilizator na vaši plošči nima zaščite pred prenapetostjo. Druga možnost je preprosto odstraniti stabilizator. Za to je dobro uporabiti Arduino Pro Mini po referenčni shemi. Ta shema vsebuje mostiček SJ1 (na sliki 16 v rdečem krogu), namenjen odklopu notranjega stabilizatorja. Na žalost večina klonov ne vsebuje tega skakalca.

Druga prednost Arduina Pro Mini je, da ne vsebuje nobenih dodatnih pretvornikov, ki lahko porabijo elektriko med običajnim delovanjem (to je majhen zaplet pri programiranju). Arduino plošče so opremljene z vse bolj udobnimi procesorji, ki nimajo dovolj energije za en izhod. Potem je dobro dodati najmanj majhen izhodni ojačevalnik s parom tranzistorjev. Osnovna shema za napajanje baterije bo videti tako, kot je prikazano na sliki.

Ker ima okolje Arduino (jezik "ožičenje") lastnosti sodobnih operacijskih sistemov (potem imajo težave z natančnim časovnim razporedom), je dobro razmisliti o uporabi zunanjega vira ure za Timer0 ali Timer1. Pomeni vhode T0 in T1, označeni so kot 4 (T0) in 4 (T1). Preprost oscilator, ki uporablja kristal iz stenske ure, lahko priključite na kateri koli od teh vhodov. Odvisno je, kako natančno uro želite izdelati. Slika 18 prikazuje tri osnovne možnosti. Prva shema je zelo ekonomična v smislu uporabljenih komponent. Zagotavlja več manj trikotnih izhodov, vendar v celotnem napetostnem območju, potem je dobro za napajanje CMOS vhodov. Druga shema z uporabo pretvornikov je lahko CMOS 4096 ali TTL 74HC04. Sheme so si med seboj manj podobne, v osnovni obliki so. Tretja shema s čipom CMOS 4060, ki omogoča neposredno povezavo kristala (enakovredno 74HC4060 z uporabo iste sheme, vendar različnih vrednosti uporov). Prednost tega vezja je, da vsebuje 14 -bitni delilec, nato pa se je mogoče odločiti, katera frekvenca se uporablja kot časovni vhod.

Izhod tega vezja lahko uporabite za vhod T0 (pin 4 z oznako Arduino) in nato uporabite Timer0 z zunanjim vhodom. To ni tako praktično, ker se Timer0 uporablja za funkcije, kot so delay (), milis () ali micros (). Druga možnost je, da ga priključite na vhod T1 (pin 5 z oznako Arduino) in uporabite Timer1 z dodatnim vhodom. Naslednja možnost je, da ga priključite na prekinitveni vhod INT0 (pin 2 v oznaki Arduino) ali INT1 (pin 3) in uporabite funkcijo attachInterrupt () in funkcijo registra, ki se občasno pokliče. Tu je uporaben delilnik, ki ga ponujajo čipi 4060, potem klic ne sme biti tako pogost.

Korak: Hitra ura za strojno opremo modelov železnikov

Hitra ura za strojno opremo Model Railroaders
Hitra ura za strojno opremo Model Railroaders
Hitra ura za strojno opremo Model Railroaders
Hitra ura za strojno opremo Model Railroaders
Hitra ura za strojno opremo Model Railroaders
Hitra ura za strojno opremo Model Railroaders

Za zanimanje bom predstavil eno uporabno shemo. Na skupno krmiljenje moram priključiti več stenskih ur. Stenske ure so daleč drug od drugega, poleg tega pa je okolje bolj industrijsko z večjim elektromagnetnim hrupom. Nato sem se vrnil k starim sistemom avtobusov, pri katerih sem za komunikacijo uporabil večjo napetost. Seveda nisem rešil dela na bateriji, ampak sem uporabil stabiliziran napajalnik 12V. Signal iz procesorja sem ojačal z gonilnikom TC4427 (ima dobro razpoložljivost in ugodno ceno). Potem nosim signal 12V z možno obremenitvijo do 0,5A. V podrejene ure sem dodal preproste razdelilnike uporov (na sliki 18 označeni kot R101 in R102; motor spet razumem kot simetričen, kar ni potrebno). Z zmanjšanjem hrupa bi rad povečal zmanjšanje hrupa, potem sem uporabil dva upora 100Ω. Za omejitev napetosti na tuljavi motorja je vzporedno s tuljavo priključen mostični usmernik B101. Most ima kratko stran DC, nato predstavlja dva para proti vzporednih diod. Dve diodi pomenita izpad napetosti okoli 1,4 V, kar je zelo blizu normalne delovne napetosti motorja. Potrebujemo protiparalelno, ker je napajanje izmenično v eni in nasprotni polarnosti. Skupni tok, ki ga uporablja ena podrejena stenska ura, je potem (12V - 1.5V) / (100Ω + 100Ω) = 53mA. To je sprejemljiva vrednost, da se izognete hrupu.

Tu sta dve stikali na shemah, ki sta za krmiljenje dodatnih funkcij stenske ure (pomnoževalnik hitrosti pri modelih železnikov). Hčerinska ura ima še eno zanimivost. Povezani sta z dvema 4 mm bananama priključkoma. Na steni držijo stensko uro. To je še posebej uporabno, če želite pred začetkom uporabe nastaviti določen čas, jih preprosto odklopite in nato znova priključite (leseni blok je pritrjen na steno). Če želite ustvariti "Big Ben", potrebujete leseno škatlo s štirimi pari vtičnic. To polje lahko uporabite kot shrambo za ure, kadar se ne uporabljajo.

13. korak: Programska oprema

S programskega vidika je situacija relativno preprosta. Opišimo realizacijo na čipu PIC12F629 s kristalom 32768Hz (reciklirano iz prvotne ure). Procesor ima en cikel navodil, dolg štiri cikle oscilatorja. Ko bomo za kateri koli časovnik uporabili vir notranje ure, to pomeni učne cikluse (imenovane fosc/4). Na voljo imamo na primer Timer0. Vhodna frekvenca časovnika bo 32768 /4 = 8192Hz. Odštevalnik časa je osem bit (256 korakov) in ga držimo polnega brez ovir. Osredotočili se bomo le na dogodek prelivanja časovnika. Dogodek se bo zgodil s frekvenco 8192 /256 = 32Hz. Potem, ko želimo imeti impulze eno sekundo, moramo ustvariti impulz vsakih 32 prelivov Timer0. Če želimo, da ura teče na primer štirikrat hitreje, potem potrebujemo 32 /4 = 8 preliv za impulz. Za primere, ki jih želimo oblikovati z nepravilnimi, a natančnimi, moramo imeti vsoto prelivov za nekaj impulzov, enako kot 32 -kratno število impulzov. Potem lahko v matriki nepravilnih ur oblikujemo takole: [20, 40, 30, 38]. Nato je vsota 128, kar je enako 32 × 4. Za sinusno uro na primer [37, 42, 47, 51, 55, 58, 60, 61, 62, 61, 60, 58, 55, 51, 47, 42, 37, 32, 27, 22, 17, 13, 9, 6, 4, 3, 2, 3, 4, 6, 9, 13, 17, 22, 27, 32] = 1152 = 36*32). Za uro bomo uporabili dva prosta vhoda kot definicijo delilnika za hiter tek. Tablični dith delilniki hitrosti so shranjeni v pomnilniku EEPROM. Glavni del programa lahko izgleda tako:

MainLoop:

btfss INTCON, T0IF pojdi na MainLoop; počakajte na Timer0 bcf INTCON, T0IF incf CLKCNT, f btfss SW_STOP; če je stikalo STOP aktivno, clrf CLKCNT; počisti števec vsakič btfsc SW_FAST; če ne pritisnete gumba za hitro, pojdite na NormalTime; izračunati samo normalni čas movf FCLK, w xorwf CLKCNT, w btfsc STANJE, Z; če sta FCLK in CLKCNT enaka, pojdi na SendPulse NormalTime: movf CLKCNT, w andlw 0xE0; bitovi 7, 6, 5 btfsc STANJE, Z; če je CLKCNT> = 32 pojdi na MainLoop pojdi na SendPulse

Program s funkcijo SendPulse, ki sama ustvari impulz motorja. Štetje funkcij šteje lihe/parne impulze in na podlagi tega ustvari impulz na enem ali drugem izhodu. Funkcija z uporabo konstantnega ENERGISE_TIME. Ta konstantni čas definiranja med tem je pod napetostjo motorne tuljave. Zato ima velik vpliv na porabo. Ko je tako majhen, motor ne more dokončati koraka, včasih pa se zgodi, da se ta sekunda izgubi (običajno, ko druga roka gre okoli številke 9, ko gre "navzgor").

Pošlji impulz:

incf POLARITY, f clrf CLKCNT btfss POLARITY, 0 goto SendPulseB SendPulseA: bsf OUT_B goto SendPulseE SendPulseE: movlw 0x50 movwf ECNop

Celotne izvorne kode lahko prenesete na koncu strani www.fucik.name. Situacija z Arduinom je malo zapletena, ker moramo Arduino z uporabo višjega programskega jezika in lastnim kristalom 8MHz paziti, katere funkcije uporabljamo. Uporaba klasične delay () je malo tvegana (izračuna čas od zagona funkcije). Boljše rezultate bo imela uporaba knjižnic, kot je Timer1. Veliko projektov Arduino šteje za zunanje naprave RTC, kot so PCF8563, DS1302 itd.

14. korak: Zanimivosti

Ta sistem uporabe motorja stenske ure je zelo preprost. Obstaja veliko izboljšav. Na primer na podlagi merjenja povratne EMF (električne energije, proizvedene s premikanjem magneta rotorja). Potem lahko elektronika prepozna, ko se roke premikajo in če ne, potem hitro ponovi utrip ali posodobi vrednost "ENERGISE_TIME". bolj uporabna zanimivost je "obratni korak". Na podlagi opisa je videti, da je motor zasnovan samo za eno smer vrtenja in ga ni mogoče spremeniti. Toda, kot je predstavljeno na priloženih videoposnetkih, je možna sprememba smeri. Načelo je preprosto. Vrnimo se k motoričnemu principu. Predstavljajte si, da je motor v drugem koraku v stabilnem stanju (slika 3). Ko priključimo napetost, kot je prikazano v prvem koraku (slika 2), se bo motor logično začel vrteti v obratni smeri. Ko bo utrip dovolj kratek in se bo končal rahlo, preden motor dvigne stabilno stanje, bo logično nekoliko utripal. Ko bo to utripanje prispelo naslednji napetostni impulz, kot je opisano v tretjem stanju (slika 4), bo motor nadaljeval s smerjo, kot se je zagnal, to pomeni v obratni smeri. Majhna težava je, kako določiti trajanje prvega impulza in enkrat ustvariti nekaj razdalje med prvim in drugim impulzom. Najhuje pa je, da se te konstante razlikujejo pri vsakem premiku ure in se včasih razlikujejo glede na primere, da se kazalci spuščajo "navzdol" (okoli številke 3) ali navzgor (okoli številke 9) in tudi v nevtralnih položajih (okoli številk 12 in 6). Za primer, predstavljen na videoposnetku, sem uporabil vrednosti in algoritem, kot je predstavljeno v naslednji kodi:

#define OUT_A_SET 0x02; config za določen niz b jasno

#define OUT_B_SET 0x04; config za izhod b določite jasen #define ENERGISE_TIME 0x30 #define REVERT_TIME 0x06 SendPulse: incf POLARITY, f clrf CLKCNT btfss POLARITY, 0 goto SendPulseB SendPulseA: movlw REVERT_TIME movwF OGLED movwF ECO začni z impulzom B movwf GPIO RevPulseLoopA:; kratek čas čakanja decfsz ECNT, f goto RevPulseLoopA movlw OUT_A_SET; nato impulz A movwf GPIO pojdi na SendPulseE SendPulseB: movlw REVERT_TIME movwf ECNT movlw OUT_A_SET; začni z impulzom A movwf GPIO RevPulseLoopB:; kratek čas čakanja decfsz ECNT, f goto RevPulseLoopB movlw OUT_B_SET; nato impulz B movwf GPIO; pojdite na SendPulseE SendPulseE: movlw ENERGISE_TIME movwf ECNT SendPulseLoop: decfsz ECNT, f pojdite na SendPulseLoop bcf OUT_A bcf OUT_B pojdite na MainLoop

Uporaba povratnih korakov poveča možnost igranja s stensko uro. Včasih lahko najdemo stensko uro, ki ima nemoteno premikanje druge roke. Te ure se ne bojimo, uporabljajo preprost trik. Sam motor je enak motorju, opisanemu tukaj, le prestavno razmerje je večje (običajno 8: 1 več) in motor se vrti hitreje (običajno 8 -krat hitreje), kar omogoča nemoteno gibanje. Ko se odločite za spremembo te stenske ure, ne pozabite izračunati zahtevanega množitelja.

Priporočena: