Vai al contenuto
PLC Forum


Programmare un orologio al quarzo


mirred

Messaggi consigliati

Ciao a tutti.

Premetto che è semplicemente una idea che voglio farmi: è fattibile prendere un orologio al quarzo e cambiare delle impostazioni (come la visualizzazione dello schermo, etc).

Mi riferisco ad orologi al quarzo molto semplici ... tipo il casio classico.

 

grazie

mir

Modificato: da mirred
cambio della firma
Link al commento
Condividi su altri siti


Livio Orsini
1 ora fa, mirred ha scritto:

Mi riferisco ad orologi al quarzo molto semplici ... tipo il casio classico.

 

Ti riferisci ad orologi da polso o da tavolo?

Link al commento
Condividi su altri siti

10 ore fa, mirred ha scritto:

al quarzo molto semplici ... tipo il casio classico.

Se intendi analogici, non c'è nessun micro, ma un ic dedicato con oscillatore e divisore. Se intendi quelli digitali, di solito usano micro programmati di non facile identificazione e probabilmente criptati.

Modificato: da Gennar0
Link al commento
Condividi su altri siti

mi riferisco ad un orologio da polso.

 

in realtà vorrei programmare un ibrido quarzo meccanico per gestire il motore.

Link al commento
Condividi su altri siti

Livio Orsini
28 minuti fa, mirred ha scritto:

in realtà vorrei programmare un ibrido quarzo meccanico per gestire il motore.

 

A me sembra un caso di sndrome di Gundam.🙂

Link al commento
Condividi su altri siti

😀 ammetto che potrebbe sembrare .... ma non voglio progettare un Gundam per ora ... mi limito all'orologio che sta in cabina.

 

diciamo che è vero che ho un bagaglio scarso ma ho studiato ingegneria e di base so cosa vuol dire studiare per arrivare al progetto e costruzione.

 

Le info che raccolgo sono anche per capirne la fattibilità con i miei mezzi. Penso, magari sbaglio, che un orologio al quarzo non sia un sistema così complesso.

Link al commento
Condividi su altri siti

Livio Orsini
49 minuti fa, mirred ha scritto:

Penso, magari sbaglio, che un orologio al quarzo non sia un sistema così complesso.

 

No, in teoria è molto semplice: un oscillatore controllato al quarzo, un divisore per arrivare alla frequneza di 1Hz. Poi, se di tipo analogico con questo segnale si controlla un picomotore stepper che fa muovere le lancette; se di tipo numerico si conta la frequenza e si visulazza il conteggio.

 

Poi dalla teoria alla pratica c'è di mezzo la....miniaturizzazione.

Il dispositivo che realizza il tutto è un chip specialistico non programmabileed in alcun modo modificabile.

Così, tanto per avere una vaga idea, cerca in rete i dati del DS3231, è un chip RTC (real time clock) con cui si realizzano moduli per arduino, raspberry, esp32, etc.. Così potrai avere un'idea di massima di che cosa si stia parlando.

 

59 minuti fa, mirred ha scritto:

... ma non voglio progettare un Gundam per ora .

 

Gundam non è ne un dispositivo, ne un apparato, è una malattia....giocosa. Ti riporto una definizione, delle tante, reperibili in rete.

Quote

La “Sindrome di Gundam” (SdG) non è una reale malattia, ma è il nome goliardico inventato nei primi anni 2000 per quello stato mentale particolare per cui una persona crede di poter realizzare un progetto complicato senza avere la minima competenza tecnica.

 

Link al commento
Condividi su altri siti

40 minuti fa, Livio Orsini ha scritto:

Gundam non è ne un dispositivo, ne un apparato, è una malattia....giocosa. Ti riporto una definizione, delle tante, reperibili in rete.

 Gundam per me rimarrà sempre questo :D:D

image.thumb.png.f56812d1197c4fab37be11b77f4f78cd.png

Link al commento
Condividi su altri siti

Allora io penso che siamo sulla strada giusta:

 

1. modulo Modulo RTC DS3231 che fa l'orologio

 

ora due strade:

 

2a. Multi-axis Electric Stepper Motor https://youtu.be/ObSEM4sE0pg

 

2b. StepperMotor https://youtu.be/Qys5OIncymw

 

con la prima strada mi viene da pensare che gestisco secondi/minuti/ore in un "passaggio unico .... ma forse non è commercializzato....

con la seconda ho un software più semplice ma una meccanica più complicata se voglio fare tutte le lancette

 

allora detto quanto sopra metto già dei paletti:

1. per ora realizzo un orologio da tavolo

2. penso di optare per il steppermotor con 3 motori che gestiscono secondi minuti ed ore ... ovviamente non saranno sullo stesso asse come i canonici orologi 

 

 

Link al commento
Condividi su altri siti

Livio Orsini
1 ora fa, mirred ha scritto:

Gundam per me rimarrà sempre questo :D:D

 

E proprio da questo progetto fantasioso che nasce la "Sindrome di Gundam".

D'altro canto il termine stesso di "sindrome" indica una malattia, non un apparato/dispositivo/macchina.

Definizione di sindrome psicologica:

Quote

Una sindrome è un insieme più o meno caratteristico di sintomi che una persona manifesta in un determinato momento e che possono fare riferimento a cause di diverso tipo. Può essere espressione di una o più malattie

 

Tornando all'argomento della discussione.

 

51 minuti fa, mirred ha scritto:

con la seconda ho un software più semplice ma una meccanica più complicata se voglio fare tutte le lancette

 

Con RTC DS3231 non hai da scrivere alcun software, specie se lo usi per pilotare uno stepper perchè, se hai letto il datasheet, hai un'uscita che da un'onda quadra con  f= 1Hz

L'unico eventuale software è necessario se, e solo se, vuoi leggere data e ora attuale tramite il bus I2C, puoi anche leggere la temperatura perchè il modulo è dotato di sensore di temperatura, e puoi cambiare data e ora sempre tramite comandi da bus I2C.

Inoltre esistono librerie belle e pronte per usarlo deirettamente con arduino, raspberry, ESP32, ES8266 ed altre MCU similari.

 

Poi, detto tra noi, io non capisco cosa vuoi fare, che scopo ti proponi, oltre al gusto di realizzare un orologio.

Link al commento
Condividi su altri siti

3 ore fa, mirred ha scritto:

3 motori

 

L'esp32 l'ho usato una volta per pilotare motore che regolava chiusura/apertura aria moto, non è complicato. Molti moduli hanno parecchie porte i/o  e se hai esperienza con arduino puoi fare tutto quello che ti serve. Non capivo perché 3 motori,  poi ho visto il video del motore con più assi, bello. Penso che consumi un tot per farlo andare a pile.

Link al commento
Condividi su altri siti

ok ... allora il mio obbiettivo è avere un sistema hardware semplice su cui gestire (via software) la posizione delle lancette:

 

image.thumb.png.6e58b881e03dd2f238464eeea7ece598.png

 

Dal software voglio gestire i fusi (non voglio inserire pulsanti ne altro per non complicarmi già ora troppo la vita).

 

Detto quanto sopra devo procurarmi:

- una scheda arduino (o mi consigliare qualcos'altro?)

un RTC DS3231

- 3 StepperMotor

 

ovviamente a stento so cambiare una lampadina ... quindi dovrò comprarmi qualche strumento (i cacciaviti da elettronica li ho).

 

Detto quanto sopra la vostra collaborazione e disponibilità è di fatto necessaria per aiutare un caso di sindrome di Gundam.

 

Attendo i vostri consigli su cosa mi può essere necessario.

 

grazie!!

mir

 

PS: giusto per vostra conoscenza ho fatto, per quasi due anni, ricerca all'università ed ero diventato un drago in Labview per la gestione di qualche tera di dati di un campo eolico.

 

 

 

 

 

 

Link al commento
Condividi su altri siti

Livio Orsini

Direi cahe al tuo elecon materiale mancano parecchie cose.

Gli stepper devono essere gestiti da appositi drive. E pur vero che saranno di infima potenza però ci vuole qualche cosa in più della porta di un micro per pilotarli.

Poi i segnali che servono a farli muovere devono avere una seqeunza ben precisa.

Io ti consiglio di documentarti, almeno a livello pratico. Cerca in rete il tutorial  di Vincenzo Villa, è molto pratico ed è abbastanza facile da comprendere. Così almeno acquisisci le nozioni fondamentali su cosa devi fare per far muovere uno stepper nel modo corretto, e fargli fare i passi, avanti o indietro, che desideri.

 

Arduino, ma anche le schede basta su micro espressif, si programma in pseudo "C", Raspberry accetta vari linguaggi perchè puoi caricarci i rispettivi compilatori.

Comincia a documentarti sugli stepper, poi riparliamo su cosa ti serve e su come organizzare il sistemino.

Link al commento
Condividi su altri siti

Detto quanto sopra devo procurarmi:

- una scheda arduino (o mi consigliare qualcos'altro?)

un RTC DS3231

- 3 StepperMotor.

 Ti servono dei driver tipo l' A4988 o simili. Non ricordo cos'avevo usato io.

Dipende anche dai motori.

Con arduino trovi parecchio materiale su internet. 

Io spesso usavo i pic direttamente, ma devi fare circuito, come software c'è un mondo.

La scelta, se arduino o micro, è dettata principalmente dal costo e dalla semplicità

Usi i micro se devi fare progetto e replicarlo.

Usi arduino per fare prima e semplificarti la vita.

 

Modificato: da Gennar0
Link al commento
Condividi su altri siti

Ordunque in questa fase userò arduino per semplificarmi la vita.

 

Mi sono acculturato un po' sui motori passo passo (https://www.vincenzov.net/tutorial/passopasso/elettronicaunipolare.htm)

Considerazioni inziali legate al mio progetto:

- non avrò problemi di coppia

- non avrò problemi di consumo (rendimento)

- potrei avere problemi di velocità (sulla lancetta dei secondi)?

 

Ho un paio di domande:

1. è corretto pensare  che il sistema wavemode sia quanto mi serve?

 image.png.9e5970cdc00773037af10981ad3f8733.png

2. non capisco da cosa dipende l'angolo di rotazione:
 - minuti e secondi => 360° / 60 = 6° per step

 - ore => 360 / 12 = 30° per step

3. è necessario un diodo di ricircolo per evitare di bruciare qualcosa?

 

grazie

mir

Link al commento
Condividi su altri siti

Livio Orsini
4 minuti fa, mirred ha scritto:

potrei avere problemi di velocità (sulla lancetta dei secondi)?

 

No.

 

5 minuti fa, mirred ha scritto:

è corretto pensare  che il sistema wavemode sia quanto mi serve?

 

Si, è il modo più semplice per spostarsi di 1 passo alla volta, semprechè il motore usato accetti questo tipo di pilotaggio.

 

6 minuti fa, mirred ha scritto:

non capisco da cosa dipende l'angolo di rotazione:

 

Dipende dalle caratteristiche del motore.

Ad esempio se il tuo motore è dato per 180 passi per giro, significa che un passo vale 2°. Quasi sempre i datasheets dei motori indicano la costante gradi/passo.

 

9 minuti fa, mirred ha scritto:

è necessario un diodo di ricircolo per evitare di bruciare qualcosa?

 

Si, però in genere è già inglobato nel transistor che pilota il motore.

 

Ti servono 4 uscite di arduino per ogni motore, totale 12 uscite, oppure 4 uscite per pilotare gli avvolgimenti e 3 uscite per selezionare il motore.

Ti servono almeno 3 per selzionare il motore su cui operare.

Ti servono altri 2 ingressi per selezionare avanti/indietro

Ti servono 2 porte per il Bus I2C che comunica con lo RTC DS3231.

Ti serve un ingresso interrupt per contare gli impulsi con f=1".

Poi forse ho dimenticato ancora qulache cosa.

Quindi arduino 1 è insufficiente come risorse, e dovrai prevedere un arduino mega.

 

Link al commento
Condividi su altri siti

Quote

Ti servono 2 porte per il Bus I2C che comunica con lo RTC DS3231.

ma Arduino non ha un clock interno?

Link al commento
Condividi su altri siti

Livio Orsini
41 minuti fa, mirred ha scritto:

ma Arduino non ha un clock interno?

 

Decidi se vuoi usare un RTC, o se vuoi basarti solo sull'oscilllatore di Arduino.

Se usi arduino ottieni un risultato che, a breve termine, è abbastanza preciso, ma già a medio termine (qualche giorno) commette errori abbastanza rilevanti.

Link al commento
Condividi su altri siti

Livio Orsini

Attenzione dhe ilDS3231 (RTC) lavora a 3.3V.

Puoi alimentarlo anche a 5V, perchè ha un suo regolatore a 3,3V, mai segnali in uscita e, soprattutto, quelli in ingresso devono essere a 3,3V.

Quindi è necessario usare traslatori di livello.

Se usi solo l'uscita a 1Hz basta un transistor per portarla a 5V, però se usi anche il bus I2C per colloquiare con arduino è necessario usare un modulino di traslazione di livello bidirezionale.

Prima di "smanettare" ti consiglio di leggerti uno dei tanti tutorials, sul DS3231, presenti in rete, (quasi) tutti in inglese.

Con arduino mega hai tutti gli IO che servono ed altri in più poer eventuali funzione che intenderai aggiungere.

Link al commento
Condividi su altri siti

6 ore fa, mirred ha scritto:

ma Arduino non ha un clock interno?

Non uso tanto Arduino, non so se i micro che usa hanno un risuonatore interno, ma probabile. Se sulla scheda c'è il quarzo e anche se il micro avesse il risuonatore, penso che non potresti modificarlo, anche perché arduino lo usi anche come programmatore. I programmatori hanno un software precaricato, penso sia lo stesso per Ardu.

Se vuoi usare tutte le potenzialità del microcontrollore ti conviene usare i pic o altri micro direttamente, ma devi farti il circuito e procurarti il programmatore.

I Pic, quelli più moderni, hanno il risuonatore interno, e tolte le alimentazioni, puoi usare tutti i piedini come i/o.

Modificato: da Gennar0
Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...