Per fare la cosa può anche andare bene, come una stampante 3D fatta con le fascette per cavi
Solo che non si tiene conto dei pochi giri che vanno persi dal motorino che non si arresta subito (magari mezzo o 3/4 di giro = 6 o 10 impulsi). Questo dopo centinaia di operazioni la posizione comincia a cambiare.
Come misurare i decimi di metro con un flessometro.
marsram: E anche se tu sapessi quanto è andato avanti, come lo riporteresti al target se non si fermasse quando togli corrente ?
Io ho previsto che il contatore continua a contare tramite i segnali di IOC. Quindi si deve contare con la verifica delle due fasi.
Quando ho iniziato avevo tenuto conto di tutti gli interrupts, che facilmente causano un sovraccarico. Con gli ehnanced è facile discriminare il fronte e saltare la routine con minor numero di istruzioni.
Oppure scendi ai componenti discreti e calcoli quanti giri fanno al motore e li inserisci a una catena di contatori. Se non sbaglio ti servirebbero almeno 700 impulsi per fare 2 giri dell'albero lento. Con 3 74xx190 hai lo scopo di rilevare il numero di giri e con qualche (N)AND vedere da che parte gira.
Ora che si capisce il tuo scopo, si può optare anche a un servo. Lo si programma per ruotare di 180° direttamente sul catenaccio. La rotazione della mandata della chiave diventa indotta.
https://www.instructables.com/id/Bluetooth-Door-Lock-Arduino…
Ad ogni modo io faccio il mio progetto e sei pregato di rispondere ai miei messaggi, se vuoi un mio aiuto.
Anno nuovo, forum nuovo.
Mi sa che lascio.
picmicro675
postato il: 28.03.2019, alle ore 08:42
pippodue: I moduli QEI leggono gli ingressi un certo numero di volte prima di validarli, per prevenire i rimbalzi o le incertezze sui fronti, fare anche questo in SW comporta un ulteriore notevole aggravio.
anche i grandi uomini, come gli uomini comuni, possono talvolta cadere in errore (Voltaire)
spippolo
postato il: 28.03.2019, alle ore 18:43
picmicro675:
Ad ogni modo io faccio il mio progetto e sei pregato di rispondere ai miei messaggi, se vuoi un mio aiuto.
Ti ringrazio e mi sembra di aver risposto a tutti, non vedo perchè usare un servo quando ho un motore che mi va bene allo scopo, se volete io ho chiesto un aiuto per una cosa personale e amatoriale, se pensate che lavori dietro a un progetto industriale.. avete sbagliato ..
picmicro675
postato il: 28.03.2019, alle ore 19:28
spippolo: Ti ringrazio e mi sembra di aver risposto a tutti
Se vuoi le risposte da tutti allora scrivere sul forum è corretto.
Facilmente ho considerato che l'indirizzo di posta elettronica fosse valido, quindi ho scritto in privato. Che è stato anche enunciato in questa discussione.
Se facessi attenzione quando accedi al forum, c'è una icona di lettera che lampeggia, appena sotto la testata. Se ci clicchi sopra ti porta ai tuoi messaggi privati del forum
Vedrai che c'è un messaggio per te.
Il progetto lo porto avanti. Ormai ho ancora qualche ragguaglio per completare il programma. Non l' ho ancora messo alla prova in hardware, ma voglio vedere alcuni difetti dal simulatore, che mi premette di verificare anche passo per passo.
Quando sarà in grado di fare secondo le mie concezioni allora lo pubblico nelle mie pagine.
@pippodue
Vedo che quello sviluppo prende un cospicuo ammontare di flash. Mi fa supporre che non siano ingressi veloci per quello che hai scritto. Io ho fatto la routine di conteggio in assembly, poi vedrò se riesco a leggere anche oltre il kHz.
Anno nuovo, forum nuovo.
Mi sa che lascio.
spippolo
postato il: 29.03.2019, alle ore 00:10
Era finita nello spam la tua mail, l'indirizzo è valido.. ti ho risposto.
la bustina del forum non lampeggia e nel forum non mi è arrivato nessun messaggio privato..
Far girare il motore a meno tensione, lo rende troppo lento.. e inoltre potrevvero generarsi errori di lettura con la stessa alimentazione. Per questo avrei pensato di alimentare la parte logica a 3.3 V e il motore a 12 .. magari posso scendere a 10 V .. per rallentarlo un poco..
Come utente anonimo puoi leggere il contenuto di questo forum ma per aprire una discussione
o per partecipare ad una discussione esistente devi essere registrato ed accedere al sito