Op woensdag 2 april 2025 09:22:48 schreef Lambiek:
@rew, ohm pi, en EricP,
/b]

[bijlage]

Bedankt voor het meedenken echter raak ik nu zelf even in de war.

37x12 Het waren 444 schakels totaal

ik dacht ik maak er van
38x12 = 456 schakels totaal

zowel
444 / 720 min = 6.16666667
als
456 / 720 min = 0.633333333

Beide zijn geen hele getallen is dat dan ook nog een probleem?
of waar moet ik op uit komen dan?

Ik dacht dat alleen het aantal schakels een heel getal moest zijn.

[Bericht gewijzigd door OHX op (16%)]

Bij jou gaat het om de lengte van de ketting. De afstand van zeg 12.00 tot 13.30 moet een bepaalde lengte hebben die overeen komt met een X aantal hele stappen, dus niets achter de komma. En dat is even puzzelen. :)

En als dat niet uitkomt moet je een tandwielvertraging toepassen.

444 / 720 min = 6.16666667

Ik kom hier op uit. 0.6166666666666667

Op woensdag 2 april 2025 09:22:48 schreef Lambiek:
Maar goed het is niet mijn feestje. :)

Als je dus iedere keer het zelfde aantal schakels verdraaid voor bijvoorbeeld één minuut en dan uitkomt op een gelijk aantal stappen, wordt het veel simpeler.

De standaard 1.8 graden-per-stap motoren doen precies 200,000000 stappen per omwenteling. Met 10 schakels per omwenteling krijg je dan precies 20.0000 stappen per schakel. Heb je dan 30 schakels per uur, moet je iedere minuut precies 10.00000 stappen doen.

Neem je zo'n 28BYJ motor, dan zijn er 2048 stappen in een omwenteling. precies 204.8 stappen per schakel en 102.2 stappen per minuut. eens in de 5 minuten moet je 105 ipv 104 stappen doen.

MAAARRRRR...

Een 28BYJ-48 motor heeft niet 2048 stappen per omwenteling maar slechts 2037.8864 . Dat is 203.78864 per schakel. Dus moet je 101.89432 stappen per minuut doen. En dit met het "mooist mogelijke" aantal schakels per uur.

Het is leuk om te proberen het simpel te houden, maar het wordt TOCH ingewikkeld. En zo ingewikkeld is het niet. Als je afstapt van jaren-tachtig acht-bitters, hou je gewoon een "fractional steps" bij in een 32 bit variabele. Omdat ik nooit zin heb om met de overflows van 32 bits te gaan prutsen, doe ik hier dan 24 bits in.

En dan krijg je:


  #define FRAC_MAX (1<<24)
  target_pos      += steps_to_do;
  target_pos_frac += steps_to_do_frac;
  if (target_pos_frac > FRAC_MAX) {
     target_pos ++;
     target_pos_frac -= FRAC_MAX;
   }
  if (target_pos_frac < 0) {
     target_pos --;
     target_pos_frac += FRAC_MAX;
   }
   steps_to_do = target_pos - current_pos; 

Zo moeilijk is dat niet.

Nu heb je een steps-per-minuut die je tot 0.0625 PPM kan instellen(*). Als je dan bijvoorbeeld: "Mijn kristal is 13.2ppm te snel bij kamertemperatuur" (Dat is binnen spec van +/- 20PPM) tegenkomt, dan kan je daar ook voor corrigeren.

(*) PPM van een stap. Eigenlijk is met ongeveer 100 stapjes de instel nauwkeurigheid dus iets van 1 op 1.6 miljard.

Bij jou gaat het om de lengte van de ketting. De afstand van zeg 12.00 tot 13.30 moet een bepaalde lengte hebben die overeen komt met een X aantal hele stappen, dus niets achter de komma. En dat is even puzzelen. :)

Dat is toch totaal irrelevant? Tenzij 'stappen' zo groot zijn dat je ze echt ziet (1 stap per 5 minuten ofzo). Dan heb je een punt. Maar dan nog: wat is de gewenste nauwkeurigheid? (die vraag heb ik reeds eerder gesteld). Op de seconde nauwkeurig is vast niet de bedoeling.

Ook met min of meer integers is het appeltje-eitje.
Als we even aannemen dat je een heel aantal stappen per uur hebt (maar het feestje gaat ook op per 12 uur, alleen worden de getallen wat groter). Dan weet je hoeveel stappen je per minuut moet doen (mag ook per seconde, ook dan worden de getallen wat groter).
Ergens is je 'nulpunt'. Je weet hoeveel minuten je daar voorbij bent. Doe dat maal het aantal stappen wat je zou moeten doen per minuut. Zit je met je huidige aantal stappen daar onder, dan doe je een stap. Zo niet, dan wacht je braaf af.
Als het niet een al te beroerd deeltal is (bijvoorbeeld een priemgetal :) ), dan werkt dat prima. En ergens kom je ook weer op mooie hele getallen uit (na een uur, een rondje), en dan kun je terug naar 0.

Bovenstaande natuurlijk uitgaande van iets wat stapt. Of het nou een stepper of een motortje met een eindcontact is.

En ja, het is simpeler als je een mooi deeltal hebt. Als dat mechanische de boel niet hopeloos complex maakt omdat de overbrengingsverhouding die je nodig zou hebben niet te krijgen is bijvoorbeeld.

Op woensdag 2 april 2025 11:23:56 schreef EricP:
[...]Dat is toch totaal irrelevant? Tenzij 'stappen' zo groot zijn dat je ze echt ziet (1 stap per 5 minuten ofzo). Dan heb je een punt. Maar dan nog: wat is de gewenste nauwkeurigheid? (die vraag heb ik reeds eerder gesteld). Op de seconde nauwkeurig is vast niet de bedoeling.

Excuses ik had door de hoeveelheid vragen over uw vraag heen gelezen.
Op de seconden nauwkeurig dat is niet nodig en denk zelf dat op de minuut al heel lastig wordt.

[Bericht gewijzigd door OHX op (11%)]

Als het niet uitkomt, dan kan je ook de stationsklokbenadering toepassen.
Een stationsklok loopt iets te snel. Als de secondewijzer op de 12 staat, dan wacht de secondewijzer enige tijd totdat er een echte minuut voorbij is. Dan begint de secondewijzer weer iets te snel te lopen en wacht weer op de 12 totdat de volgende echte minuut voorbij is.
Je laat de kettingklok een 'kettingklokuur' te snel lopen. Hoeveel te snel mag je zelf bepalen. Dan zet je de kettingklok stil totdat een echt uur verstreken is. Als je het veel te snel doet, dus een 'kettingklokuur' duurt 5 minuten en de overige 55 minuten staat de klok stil, dan valt het op. Als je het langzaam doet, dus een 'kettingklokuur' duurt 59 minuten en de laatste minuut staat de klok stil, dan ziet bijna niemand dat.
Je hoeft uiteraard niet een uur te wachten, Je kan ook elke minuut of elke 5 minuten of elke andere mooie tijdseenheid dan ook synchroniseren.

Als je een stepper met gearbox neemt steekt 't allemaal niet zo nauw...
Ik heb steppers gehad die 2000 steps per omwenteling deden, dus zeer nauwkeurig te positioneren...

Als je een klok met mooie overbrengingsverhoudingen hebt, zoals de klok van Lambiek, dan hoef je niet moeilijk te doen.
Zit er een ongelukkige overbrengingsverhouding er tussen, dan moet je synchroniseren, zelfs met het systeem van Arco (2000 stappen / omwenteling). Maar hoe meer stappen, hoe langer je kan wachten totdat de klok teveel voor of achter loopt. Met een beetje mazzel hoef je de klok dan alleen gelijk te zetten tijdens de batterijenwisseling of met overgang zomertijd <-> wintertijd.

Iedere dag of week een bepaalde offset van een instelbaar aantal steps negatief of positief) toevoegen werkt prima.
(dat doe ik ook met digitale klokken: ieder uur het aantal clockcycli aanpassen afhankelijk van de temperatuur om zo exact mogelijke tijd te krijgen)

Je kan ook elke minuut of elke 5 minuten of elke andere mooie tijdseenheid dan ook synchroniseren.

Synchroniseren tegenover wat? er moet dus wel ergens een sensor zijn die de exacte ketting positie weet. En je hoeft dan niet continu te weten waar de ketting is wat dat doe je via de stappenmotor, maar op het tijdstip van de synchronisatie moet dan de ketting wel bijna op de sensor staan. Je laat dan ketting heel langzaam iets doorlopen totdat die precies op de sensor staat. Is de ketting net voor de synchronisatie tijd al al precies op de sensor dan wacht je heel even.

Voor de sensor kan je dan op 1 of meerdere schakels dan een klein magneetje aanbrengen die je dan via een hall sensor kan zien. Zo kan je bv op elk half uur of op elk heel uur synchroniseren.

Op zaterdag 29 maart 2025 13:19:16 schreef vergeten:
[...]Volgens mij schrijf je dat als Klok.

Maar het gaat hier over een url
https://ohxdesign.com/chainclcok/    werkt!
https://ohxdesign.com/chainclock/   werkt niet !

Nu werkt het andersom!

@OHX,
Je voorziet de klok toch wel van een kettingspanner op een (of meer) tandwiel(en)?

Op woensdag 2 april 2025 11:31:14 schreef OHX:
..n denk zelf dat op de minuut al heel lastig wordt.

Dat dacht ik in het begin ook. Maar als je een halve schakel per minuut beweegt is het heel goed zichtbaar als ie een minuut verder stapt en ook afleesbaar. Lastig om echt "blind" de minuten af te lezen, maar het verschil tussen 15 over en 16 over kan je goed zien.

Op woensdag 2 april 2025 11:06:44 schreef rew:

MAAARRRRR...

Een 28BYJ-48 motor heeft niet 2048 stappen per omwenteling maar slechts 2037.8864 .

Hoe kan een stappenmotor nou niet een geheel aantal stappen maken voor één hele omwenteling?
Dat er een behoorlijke afwijking kan zitten in de individuele stappen is bekend
maar na 2048 (64stappen 1:64 vertraging) stappen moet hij toch volledig rond zijn.

Maar de vertraging is niet 1:64.

Bij tandwielen is het niet verstandig om een "gemene deler" te hebben in het aantal tanden. Bijvoorbeeld een 10:20 tandwieloverbrenging... het kan wel, maar beter is om wat anders te verzinnen. De reden is dat tamdje 1 van het 10-wiel uitsluitend matched met gaatjes 1 en 11 op het 20-wiel. Als nu tandje 1 een subtiel uitstulpinkje heeft, dan graaft ie daarmee in gaatjes 1 en 11 een extra gat in de aanliggende tanden. Dat effect versterkt zichzelf. Hierdoor zijn je tandwielen sneller "op".

Als je nu een verhouding van 10:19 kiest, dan komt tandje 1 met alle andere gaatjes in aanraking alvorens weer bij gaatje 1 terecht te komen. Doordat nu 19 gaatjes wrijving maken tegen dat hobbeltje op tandje 1, slijt nu het hobbeltje af en wordt na enige slijtage de vorm van de tanden meer richting de ideale vorm. De tandwielen gaan zo veel langer mee.

Dus ze hebben in de 28BYJ-48 niet gekozen voor 10:40, 10:40, 10:40, maar wat andere verhoudingen waar "rare" getallen als 39 en 41 in voorkomen.

Op woensdag 2 april 2025 18:56:12 schreef benleentje:
[...]Synchroniseren tegenover wat? er moet dus wel ergens een sensor zijn die de exacte ketting positie weet.

Dat is correct.
Zoals je al opmerkt kan het met een magneetje op de ketting (met reedcontact, hallsensor of wat dan ook).
Het kan ook met een uitstulping op de ketting en een microswitch, of met een fotocel enz.
Het voordeel van dit systeem is dat de software niet hoeft te rekenen. Je moet alleen de motor een iets hogere snelheid mee geven die benodigd is om de ketting in 12 uur rond te krijgen.

Op donderdag 3 april 2025 08:45:23 schreef rew:
Dus ze hebben in de 28BYJ-48 niet gekozen voor 10:40, 10:40, 10:40, maar wat andere verhoudingen waar "rare" getallen als 39 en 41 in voorkomen.

Niet volgens dit datablad. Daar heeft alleen de 30BYJ-46 een 'rare' deelverhouding.
In de software kan je die verhouding weer 'goed zetten'.

Zoals je al opmerkt kan het met een magneetje op de ketting (met reedcontact, hallsensor of wat dan ook).
Het kan ook met een uitstulping op de ketting en een microswitch, of met een fotocel enz.

Ik denk nu ineens dat het beter is om maar 1 magneet of uitstulping op de ketting te hebben en dan 12x een hall sensor. Als je bv 12 magneten op de ketting doet dan weet je wel elk uur maar je weet nooit het 12uu punt ( beging van de ketting). Met 1 magneet je op precies 12 uur en 12 sensoren dan weet je op elk heel uur precies waar de ketting is. Als die dan bv bij sensor nr3 is dan is de ketting op 3 uur. Wil je de klok na stroomuitval op tijd zetten dan kan dan vrij simpel door de ketting snel te laten lopen en dan laat je die doorlopen totdat die op tijd staat.

Het heeft ook als voordeel dat de ketting onnauwkeuriger mag lopen, bijv 1 minuut te snel per uur in plaats van 1 minuut te snel per 12 uur.

Excuses voor de nogal late reactie.
Ben nogal druk geweest. En zoals meerdere mensen adviseerde moet ik eerst een werkend model hebben.

Ben daarom druk bezig met het verder uitwerken het model.
Hoop binnen 1 maand een echt model te hebben. Zal dan zeker een update geven en advertentie plaatsen voor hulp wat betreft de elektra/motor.

Mvg,

Olivier
OHX Design

Beste forum leden ik heb even 2 vragen 1. ik ben een stuk verder met deze en mijn andere klok.

En ben nu opzoek naar iemand die mij kan helpen met de elektronica en de programmering. Waar kan ik dat het best op dit forum posten?

In ieder geval alvast bedankt voor de tips.

https://ohxdesign.com/chainclock/
https://ohxdesign.com/sa-clock/

[Bericht gewijzigd door OHX op (11%)]

In V&A zetten.
Dat is de plek voor dit soort vragen.

Ben wel heel benieuwd naar het uiteindelijke resultaat!

Misschien ook nog eentje bedenken in de vorm van een klokhuis voor Apple aanhangers... :+