Aviso

El foro está en modo de sólo lectura.

ENCODER Y EPROM DE ARDUINO AYUDA

Más
6 años 1 semana antes #1307 por DEA
Buenas amigos.

Tengo este proyecto con un Encoder (para quien no lo sepa, no es mas que un cuenta pulsos de dos canales).

He usado arduino UNO y con Interrupciones.

Bien pues necesito contar los pulsos y cuando detenga el Encoder estos pulsos se guarden en memoria, para cuando encienda otra vez arduino sepamos en que posición esta el encoder y cundo se mueva los pulsos nuevos se sumen a los guardados en la memoria.

Lo he intentado pero no me funciona no se que hago mal.

Os dejo aqui el sketch del contador de pulsos (ENCODER), que funciona bien y el otro (ENCODER EPROM) con el guardado de memoria, que no me funciona.

Un Saludo
Adjuntos:
Más
6 años 6 días antes #1308 por Jose Luis
Respuesta de Jose Luis sobre el tema ENCODER Y EPROM DE ARDUINO AYUDA
El miercoles le dare un vistazo que estoy en mi dia libre. Podias decirme que encoder estas usando? Solo por cusiosidad.
Más
6 años 6 días antes #1309 por DEA
Respuesta de DEA sobre el tema ENCODER Y EPROM DE ARDUINO AYUDA
Por supuesto Jose Luis

Es un Encoder de OMRON, el E6B2 - CWZ6C de 100 P/R

Muchas Gracias
Más
6 años 5 días antes - 6 años 5 días antes #1310 por Jose Luis
Respuesta de Jose Luis sobre el tema ENCODER Y EPROM DE ARDUINO AYUDA
Acabo de abrir el codigo del ecoder grabando en la eeprom y tras ver la primera linea de loop yo creo que te estas equivocando en el concepto (y muy gravemente). La grabacon de cada celda de memoria de la eeprom es muy lenta (por encima de 3ms) y por otro lado, la estabilidad e la eeprom por ecima de 100.000 grabaciones no esta garantizada, o dicho de otra forma, que se peuden guardar datos en memoria diferentes al orginal. Y claro, si tu grabas la eeprom constantemente en el loop principal, cuanto tiempo necesia para llegar a 100.000 grabaciones? Dando 5 milisegundos de grabacion serian 200 por segundo,12000 por minuto... osea en menos 10 minutos tu eeprom ya se considera no fiable.

Me imagino ademas, que como el tiempo de grabacion es muy alto, no te leera correctamente los pulsos del encoder, pese a que uses interrupciones.

Creo que has de cambiar el concepto de lo que quieres hacer.

Pregunta, sin usar la eeprom para guardar los datos, lo que quieres hacer te funciona?
Última Edición: 6 años 5 días antes por Jose Luis.
Más
6 años 5 días antes #1311 por DEA
Respuesta de DEA sobre el tema ENCODER Y EPROM DE ARDUINO AYUDA
Pues respondiendo a tu pregunta Jose Luis, Si funciona y no, te explico.
El encoder con el código primero funciona perfectamente, cuenta los pulsos sin problemas, pero si lo paro en 50 pulsos y apago arduino, lo vuelvo a encender y ahora marca 0.

El ojetivo es mover un motor que mueva una bandeja con un recorrido de unos 5 metros, y controlado por una pantalla en la cual yo le ponga que se mueva 1metro a la derecha (2150 pulsos) y si el Encoder se paro en 150 pulsos, pues este se moverá hasta llegar a los 2150, pero si lo apago ya pierde la posición de los 150 pulsos. Lo malo que tiene este codigo es que si cierro el puerto de depuración y lo vuelvo a abrir también pierde los pulsos contados.

Lo de la pantalla y que se mueva hacia un lado y otro eso mas o menos es facil y lo tengo controlado.

Como siempre muchas Gracias
Más
6 años 4 días antes #1312 por Jose Luis
Respuesta de Jose Luis sobre el tema ENCODER Y EPROM DE ARDUINO AYUDA
Yo creo que lo de la eeprom vas tener que descartarlo al menos como lo tienes planteado. Yo tengo un sistema parecido, y lo que hacemos es ponerle un home al motor, y que si hace muchos movimientos, las holguras hacen que se vayan sumando error. Entonces cada cierto tiempo, o si se que sin tension, o alguna anomalia, se manda a home el motor, asi se sincroniza todo el proceso.

Quiza una memoria mas rapida tipo ram, alimentada con una bateria para aguantar los datos. Pero desconozco por que se queda sin tension el sistema para poder hacerme una idea de lo que quieres hacer.
Tiempo de carga de la página: 0.153 segundos
Gracias a Foro Kunena