miércoles, 27 de marzo de 2013

TinyVar+. Esquema, nuevo firmware y más

Ya está lista la versión 2.0 final para TinyVar/TinyVar+. Aprovecho para publicar el esquema electrónico de la PCB TinyVar+.

Ambos disponibles en la sección de Descargas.

Funcionalmente es muy parecido al esquema anterior, al cual sólo habría que añadirle 4 pulsadores en los pines correspondientes del PIC para transformarlo.

Las mejoras han sido sustanciales, desde la adición física de los pulsadores hasta la optimización y depuración de cálculos, ofreciendo ahora, valores mas precisos, estables y configurables mediante un menú.

Asimismo, estoy planteándome montar y ofrecer algunas PCBs extra que tengo y recuperar parte de lo invertido. No se aun el precio que rondaría, pero podrían andar sobre los 70-80€. Estoy a la espera de los componentes que me faltan. Publicare una entrada cuanto tenga novedades.

Esquema TinyVar+:
Click aqui para descargar
Novedades firmware 2.0 final vs 1.1:

-Se añade menú de confliguración mediante los cuatro pulsadores de TinyVar+.
-Mejorada notablemente la estabilidad y precisión en la velocidad vertical.
-Mejorada la precisión del cronometro.
-Añadido nuevo perfil de audio (AudioSmooth).
-BaudRate de la UART subido de 9600 a 57600bps.
-Modificado valores de configuración por defecto.
-Cambios menores en la pantalla de presentación.
-Optimización de código.

Vídeo del proto3 con el nuevo firmware: 


domingo, 10 de marzo de 2013

Test de la nueva PCB

Aquí un pequeño vídeo de la nueva PCB funcionando, se utiliza el nuevo perfil de audio que mencione en una entrada anterior "audioSmooth". Personalmente me inclino mas por este.

sábado, 9 de marzo de 2013

Llegaron las PCBs de TinyVar+

Bueno pues hoy me han llegado las placas de circuito impreso, ya he montado una de ellas y funciona perfectamente. Ahora a pulir el nuevo firm para que pronto esten operativas.

PCBs recien llegadas
Montaje componentes frontal


Montaje componentes trasera
Examinando con microscopio
Prueba de funcionamiento

sábado, 2 de marzo de 2013

Firmware 2.0b (alpha).

Nuevo firmware 2.0b, también en versión Alpha. Configurable modificando el archivo .hex. Disponible en la sección de descargas.

Novedades:
-Se añade posibilidad de configuración modificando el archivo hex.
-Modificada configuración por defecto.
-Optimización de código.

Parámetros configurables tinyVar 2.0b:

Este es el nombre y la descripción de cada parámetro. Entre paréntesis esta el valor por
defecto que tiene en este firmware.

vref_real(3300); //para la medición del porcentaje de batería, tensiones en milivoltios.
        tensión de referencia real (entre vdd y vss del PIC medida con un
        polímetro) (Sirve para calibrar la medición de la batería correctamente).
vBat_high(1550); //tension de una bateria nueva (pila alcalina nueva da 1.6v
        en vacío y en carga con el vario 1.57v)
vBat_low(1100); //tensión de una batería agotada, el regulador funciona a partir de 0,8v
        según datasheet.

dampFactor(2);//relación estabilidad/sensibilidad del vario. factor de filtro (de 0 a 100)
        5=5% de la ultima medida y 95% de la anterior) (valor alto=vario muy sensible
        pero poco estable y viceversa)

grafEscala_x(3);//segundos por pixel en el eje x de la gráfica
grafEscala_y(4);//metros por pixel en el eje y de la gráfica

acusticVentanaHi(1);//sonido a partir del cual el vario empieza a sonar en ascenso (valor
        incluido), en decímetros por segundo.
acusticVentanaLo(-1);//ídem pero en descenso.

pulsosParaSilencio(100);//numero de pulsos que recibe el buzzer para alternar entre
        sonido-silencio en ascenso (depende de la frecuencia del sonido). Valor
        ajustable de 0 a 1000 en incrementos de 20, (20 mas rápido,1000 mas lento,
        0 audio continuo sin silencios).

duracion_rotativo(4);//duración del campo multifunción que va rotando. valor ajustable de 1
        a 20 en incrementos de 1. 1 equivale a 0,5s, 2 equivale a 1s...

audioSmooth(1);//Al darle el valor 1 el cambio de frecuencia en el audio se hace
        progresivo, al darle el valor 0 el cambio es escalonado.

measureBatPresset(240); //Tiempo entre mediciones de batería de 500 en 500ms (1=500ms, 2=1s,
        240=2min...)



Como cambiar la configuracion modificando el archivo .hex:


Abrir el .hex con un editor de textos p.e el bloc de notas.
Localizar las lineas de la imagen adjunta (están al final del archivo .hex).
Cada recuadro de la imagen corresponde a un parámetro configurable, están en
    el mismo orden en que aparecen mas arriba (tal como leemos de izq a
    dcha, luego la siguiente linea...).

Por ejemplo, vamos a buscar el valor de vBat_low que es 1100 en decimal:
    pasamos el valor 1100 a hexadecimal, que es 44C, lo representamos
    con 4 bytes añadiéndole ceros a la izq: 0000044C.
    Finalmente invertimos el orden de cada byte y quedaría 4C 04 00 00
   
    Localizamos el tercer recuadro y vemos como coincide. Si quisieramos
    cambiar este valor para que marque batería agotada con 1,3 voltios por
    ejemplo, haríamos 1300 en hexadecimal es 00000514, invertimos los bytes
    14 05 00 00, este es el valor por el que habría que sustituirlo.