Resultados 1 al 25 de 80
- 21/12/2013, 13:28 #1Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
¿ Empezamos a trastear con Arduino ?
Viendo que en el foro hay foreros bastantes conocimientos de electrónica y también hay foreros con conocimiento de informática ¿ Porque no empezamos a hacer entre todos algún aparatito ?
Ya se que hay cosas en el mercado, pero muchas veces estas no se adaptan a lo que queremos y creo que es un sistema con el cual nosotros podemos cubrir algunas de nuestras necesidades con un costo relativamente bajo.
Se me ocurre para empezar una cosa simple como que lea el voltaje de la bateria y si sobre pasa de X voltios, active un relé y empiece a funcionar por ejemplo un termo. Ya se que hay reguladores que lo hacen, pero lo que creo que puede tener este pequeño proyectin es que se pueda modificar al gusto de cada uno y sea independiente de los aparatos que tengamos cada uno
¿ Alguien se anima ?
Espero que Eloisa nos eche una mano en la parte de electrónica
- - - - - - - - - - - - - - - - - - -
Paso número 1. Hacer un divisor de tensión ya que las entradas de Arduino son de 5V como máximo y las baterias serán de 12, 24, ó 48 V por lo que habrá que tener una prevision de una entrada de 15V, 30V y 60V
Este se hace con 2 resistencias. Aquí un ejemplo que acabo de encontrar por la red de como se calcula y se hace
http://platea.pntic.mec.es/~lgonzale...Actividad).pdf
- - - - - - - - - - - - - - - - - - -
y aquí otro que hace los cálculos automaticamente
http://es.ncalculators.com/electroni...alculadora.htm
Por ejemplo para una bateria de 24V ( le ponemos un máximo de 32V ). Con una resistencia de 11k y otra de 2k obtendríamos un voltaje máximo de 4.92V que estaría dentro de lo que acepta el arduino que sería un maxímo de 5V
Aquí que nos explique Elosia la diferencia entre poner una resistencia de 11k y otra de 2k o poner una de 1.1k y otra de 0.2k que parece que harían lo mismo
-
- 21/12/2013, 14:06 #2Forero
- Fecha de ingreso
- abr 2012
- Ubicación
- Valencia
- Mensajes
- 27
Re: ¿ Empezamos a trastear con Arduino ?
Me parece una idea magnífica el proponer que se desarrollen soluciones con el Arduino, Raspberry Pi o similares.
En cuando a regular la tensión a 5V para la alimentación del Arduino, me decantairía más por utilizar reguladores de voltaje 7805, que necesitan como tensión de entrada entre 7,7V y 35V. Lo que cubriría el segmento de instalaciones a 12V y a 24V.
El regular en voltaje mediante divisores de tensión por resistencias, lo que hace es que se produzca una caida de tensión en éstas y esto produce calor, que habría de disiparse de alguna manera.
Mis conocimientos de electrónica están un poco oxidados, por lo que podría estar equivocado y existir una solución mejor.
Adjunto un enlace para ilustrar lo comentado.
PICs, Electrónica y Robótica: Reguladores de voltaje 7805
SalU2
- 21/12/2013, 14:14 #3el_cobarde Invitado
Re: ¿ Empezamos a trastear con Arduino ?
Borrado el texto original por estar totalmente equivocado.
Lo único correcto era: Cuanto más resistencia, menos energia se "pierde".
Para divisor de tensión se conectan las resistencias en serie. Es cierto que las tensiones obtenidas serían las mismas con 11k+2k que con 1,1k+0,2k. En ambos casos serían 11/13 y 2/13 del voltaje total (20,3V y 3,7V en el caso de 24V). La diferencia está en la intensidad de corriente.
11k y 2k suman 13k, que conectados a batería de 24V daría una intensidad de corriente de 24V/13k = 1,85 mA.
Con 1,1k y 0,2k la intensidad sería 10 veces mayor (18,5 mA), o sea 10 veces más "pérdidas".
("pérdidas", porque esta intensidad no hace más que calentar las resistencias).
Con lo dicho parece que lo ideal sería elegir resistencias infinitamente grandes. Esto no es posible, porque el dispositivo (arduino) que se conecta en paralelo a una de las resistencias tambien tiene resistencia, que debe ser mucho mayor que la del divisor de tensión, para influir lo menos posible.Última edición por el_cobarde; 22/12/2013 a las 11:31 Razón: Corregido por estar totalmente equicocado
- 21/12/2013, 15:14 #4Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
- 21/12/2013, 15:26 #5Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
Hola,
creo que se referían al divisor de tensión para monitorizar la tensión de baterías, no a la alimentación de la placa.
Por otra parte, para alimentar la placa Arduino, como no la conozco, no sé si se alimenta a 12v, 5V ó a 3,3V.
En función de la tensión de entrada y del consumo total, se elegiría una fuente regulada lineal o conmutada, esta última para no disipar demasiada energía y mejorar el rendimiento.
Por mi parte, tengo conocimientos de diseño de circuitos analógicos y digitales, si puede echaros una mano, aqui estoy. Yo estoy intentando hacer un desarrollo parecido, sólo que yo trabajo con CPU de la familia PIC32 , y mi idea era hacerme una placa a medida
incluso incorporando el control MPPT.
Saludos
- 21/12/2013, 15:37 #6Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Exacto.
La placa puede trabajar con una alimentación externa de entre 6 a 20 voltios. Si el voltaje suministrado es inferior a 7V el pin de 5V puede proporcionar menos de 5 Voltios y la placa puede volverse inestable, si se usan mas de 12V los reguladores de voltaje se pueden sobrecalentar y dañar la placa. El rango recomendado es de 7 a 12 voltios.
- 21/12/2013, 15:51 #7Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
Hay unos reguladores conmutados que substituyen directamente al 7805, disposición de pines es identica, tienen un rango de tensión de entre 8 y 32 V con eficiencia del 83% ( depende del modelo exacto ), solamente que entregan 500mA o 800ma con disipador.
BP5277-50 ROHM Semiconductor | Mouser
Ojo que el datasheet que direcciona no es el correcto, hay que visitar la pagina de ROHM y poner la referencia
compre uno hace tiempo, todavía no lo he probado
- 21/12/2013, 16:23 #8Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Pero para que necesitaríamos eso ? La placa de arduino ya lleva incorporado el regulador de voltaje ¿ No ?
- 21/12/2013, 16:29 #9Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
Era para si la alimentamos directamente de baterias, digo yo. Antes decías que si se usan más de 12 V el regulador se puede sobrecalentar, no sé ...
- 21/12/2013, 19:39 #10Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Ah, vale. Yo había pensado alimentar el arduino directamente de la red de 220 con un transformadores, pero si utilizamos uno de ese tipo seguro que será mas eficiente, aunque creo que el arduino debe consumir ña y menos, pero si, mejor una opción de ese tipo, aunque eso lo dejaría para mas adelante. Para empezar el arduino se puede alimentar con una pila de 9v
- 21/12/2013, 20:02 #11el_cobarde Invitado
- 21/12/2013, 20:14 #12Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
¿ Disponemos de información detallada o datasheet de esta placa Arduino ? ¿ Me podeis pasar el enlace donde esta el producto o su documentación ?
Para el cálculo de las resistencias del divisor de tensión, habría que tener en cuenta:
1.- Impedancia de la entrada analógica, dato importante, la resistencia del puente divisor puede afectar la lectura.
2.- Quizá no es conveniente llevar la máxima tensión de entrada al 98,4% del rango útil de esta entrada. Yo propondría que trabaje al 75 u 80% máximo, así podremos monitorizar si la tensión se 'desmadra' . Cuando equalizamos, pregunto: ¿ qué tensión máxima tendremos en la batería ?
3.- Como habrá un conversor AD ( analógico digital), habría que ver la resolución y precisión de este. Por experiencia, si este conversor NO tiene una referencia de tensión de precisión del 1 ó 2 por mil, el error podría ser notable. Las referencias de tensión en algunos chips pueden tener errores del 1 o 2 %, lo que implicaría hasta 0,5V de error, aunque eso se puede corregir por 'software' haciendo un calibrado digital.
- 21/12/2013, 20:29 #13el_cobarde Invitado
- 21/12/2013, 22:15 #14Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
La entrada de señal analógica tiene 1024 valores, por lo que la resolución puede ser bastante buena. Para empezar podemos partir de la placa arduino Uno que es la normal. Luego hay un montón de versiones
Aquí tienes los datos
Arduino - ArduinoBoardUno
- - - - - - - - - - - - - - - - - - -
También habría que añadir un sensor de temperatura a la bateria para hace la corrección oportuna. ¿ Alguien puede decir cual es a corrección ? No se si esa depende del tipo y marca de bateria, pero bueno, eso se puede meter en una variable en la programación
- 21/12/2013, 22:46 #15Forero
- Fecha de ingreso
- ene 2012
- Ubicación
- Zamora
- Mensajes
- 816
Re: ¿ Empezamos a trastear con Arduino ?
-2,7mV/°C por celda de batería de 2V en plomo/acido, agm, gel
Y yo añadiría un retardo a la conexión y desconexión del contacto, facilmente operativo desde el exterior....ya que de lo contrario veremos que la carga aplicada al sistema si es una carga de potencia (90% de los casos) puede hacerlo entrar en un bucle ultra corto
Saludos.
- 22/12/2013, 14:11 #16Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Retardos, controlar si entra en un bucle, etc es muy fácil por software. Primero vamos a la parte de hardware. Ya tengo una placa de Arduino Leonardo, que me servirá igual, unos reles para 220 10A y alguna cosilla mas. La semana que vene empezare con el tema. Ya se que me cargare mas de una cosa, pero ya sabéis que la experiencia sale del numero de veces que metes la pata.
- 22/12/2013, 17:40 #17Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
Buenas,
Después de mirarme el datasheet del dispositivo del Arduino, he dibujado el esquema para el divisor de tensión. Básicamente lo que tenia que saber, es la tensión de referencia a la que trabaja el bloque AD de la CPU ATMEGA328, y esta admite 2 opciones:
1.- Referencia interna de 1,1V, pero con mínimo y máximo de 1,0 y 1,2V respectivamente.
2.- Referencia externa en el pin AREF, le tenemos que poner la tensión de referencia. Esto usualmente se haría con un chip especializado de referencia de tensión.
Para simplificar la realización del circuito, optaremos por la primera opción, aunque esto seguramente requerirá de una calibración digital, que el que se encargue de hacer el programa tendrá que tener en cuenta. Evidentemente, se puede recalcular el circuito para esa opción, pero esto añadiria más componentes ( el citado chip en concreto)
Se podrían haber utilizado muchas combinaciones de resistencias para lograr esto, pero me he ceñido a un consumo aproximado de 1 mA para el divisor de tensión. El datasheet pide una impedancia de la fuente de entrada de los pines AD menor de 10K ohmios, no hay problema con este divisor que debe tener menos de 1K de resistencia equivalente serie. He calculado para una tensión nominal de trabajo de 1,1 * 0,75 (%) = 0,825 V frente a 1,1V de referencia, y a partir de aqui salen los valores mostrados para el esquema, aunque proporcionalmente se podrían poner sus múltiplos.
Las resistencias del divisor, son del 1%, que aparte de la tolerancia, suelen estar fabricadas con materiales de bajo coeficiente térmico, es decir, no variaran tanto su valor con cambios de temperatura y mantendrán la lectura más estable. La resistencia de 100R ( 100 Ohmios ) y los dos diodos, son de protección para que no entre ninguna sobre-tensión al dispositivo y se dañe. No tienen efecto en la división de tensión.
También he añadido otro circuito para la medida de la temperatura, sencillo, realizado con una resistencia NTC que son fáciles de encontrar y bastante baratas. Sólo que tiene un pero, hay que linealizar la curva pero se puede hacer por software, y os puedo pasar un ejemplo escrito en lenguaje "C" ( es una simple interpolación lineal ).
Un 'pero' que sucede con la medida de tensión de batería, es que con la resolución de 10 bits, a duras penas nos enteraremos del cambio de tensión de las células de 2V para 1º C. Esto es intrínseco del conversor ADC. Pero con la acumulaciòn de grados , pongamos 5 o 6, si que se notará.
Aprovechando las entradas analógicas, se me acaba de ocurrir: Se podría hacer un sistema de medida de la intensidad en DC del inverter, y por qué no, de la corriente de carga de las baterías. Esto se podría hacer con un sistema de medida casi no intrusivo, como es con un dispositivo de efecto Hall, para ello creo que habría de diseñar alguna especie de toroide de hierro dulce, por dentro del cual pasara el cable a medir la corriente, y el toroide provisto de un pequeño entrehierro para colocar el dispositivo Hall. Estos funcionan por campo magnético, no son difíciles de localizar. ¿ Alguien se atreve a diseñar y mecanizar algo parecido ?
Con esto, y sabiendo la resistencia interna de la batería, pregunto: ¿ Se podría hacer que el dispositivo sea un monitor del SOC de las baterías ?
Puedo haberme equivocado en algún planteamiento o cálculo, evidentemente. Ya me direis que os parece, se admiten críticas - quejas - sujerencias, etc., etc.
SaludosÚltima edición por Invitado; 22/12/2013 a las 18:14
- 22/12/2013, 18:25 #18Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Menudo nivel para los que "no tenemos ni papa". ¿Para que sirven c1 y c2 ? ¿Que son los J1.1 y los otros J ?
- 22/12/2013, 18:28 #19Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
C1 y C2 son para filtrar el ruido de la señal. C1 sólo se montaría si entrase demasiado ruido por la masa ( a veces ocurre). Los J1 y otros J, son las conexiones, con bornas o como lo creáis conveniente hacer cada uno en su prototipo.
- 22/12/2013, 20:35 #20Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
No se si no me entero, pero creo entender que por defecto el valor de voltaje que tenemos que tomar es 5V en vez de 1.1, así será mas fácil ya que es el que viene por defecto en la placa ¿ No ?
Arduino - AnalogReference
- - - - - - - - - - - - - - - - - - -
Otra cosilla que no entiendo, yo al arduino tengo que conectar el positivo digamos que sale del divisor de tensión, pero ¿ donde conecto el negativo que sale de ese divisor de tensión ? Porque yo solo tengo que tomar lecturas de un pin de entrada
- 22/12/2013, 20:37 #21Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
Hola,
pues no, he realizado los cálculos para analogReference(INTERNAL) , o sea, 1,1 V .
¿ Por qué? Pues por ser la tensión más estable y diseñada dentro del mismo chip para ser una referencia. La referencia de tensión para un conversor ADC sería, en un símil mecánico, como el pie de rey, es el patrón a partir del cual determinamos todas la medidas cuando mecanizamos o tomamos medidas de una pieza. La tensión de 5V ( DEFAULT) también es posible utilizarla, pero como la toma de la alimentación general de todo el sistema Arduino, lo más probable es que no sea lo suficientemente precisa para realizar conversiones ADC de una cierta precisión, además, con las variaciones del consumo interno de la placa, puede variar varias decenas de milivoltios.
Si lo deseas, te puedo recalcular los valores para referencia de 5V, no te ahorrará ningún componente ( hay de dividir la tensión de todas formas ).
Al fin y al cabo, lo que lees del conversor será un nº entre 0 y 1023, y deberás aplicar el factor de escala en cualquier caso anterior.
El negativo lo tomas del conector POWER, pines 6 y 7, o pin 7 del conector IOH ( GND), creo que esta puesto en el esquema que he subido en J3.3
- 23/12/2013, 10:40 #22Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Ok. Entendido lo del 1.1, cuantas menos conversiones, mas precisión y entre 0v y 1.1V es lo que lee directamente el micro
La que no se donde tendría que conectar es la gnd analog
- 23/12/2013, 11:38 #23Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
En este caso, la precisión la determina la tensión de referencia, y es la mejor opción a mi entender ya que de las 2 tensiones, es la única que podemos controlar bien realmente. Lo que hace el conversor es un ratio entre Tensión analógica entrada / Tensión de referencia, luego sólo te tienes que adecuar al rango ese, en el fondo es bastante simple.
El gnd analog se conecta al GND normal, del conector POWER o del IOH, en esta placa va todo mezclado, no es la mejor opción, pero ahora no vamos a 'operar' la placa del Arduino . Se podría mirar si admite entradas diferenciales para compensar esto del gnd analog, pero creo que sería complicarlo todo, empecemos por lo más simple.
Saludos
- 23/12/2013, 13:41 #24Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
No entiendo que es el IOH.
La placa tiene varios GND. Dos donde tiene las tomas de 5V y 3.3V y otra al lado de Aref, que es donde propones meter el + del divisor de tensión de la bateria a medir. Lo que no se es si los 3 GND van conectados entre si.
- - - - - - - - - - - - - - - - - - -
Me he equivocado, no tenemos que conectar al pin Aref, eso sería si usaramos la instruccion analogReference(external) y la que vamos a utilizar creo que es analogReference(internal) para trabajar dentro de la escala 0-1.1V que sería para la que has calculado los valores de las resistencias
- - - - - - - - - - - - - - - - - - -
Me estoy liando así que habrá que leer despacio esto
http://arduino.cc/es/Reference/AnalogReference
Y a ver si me aclaro, aunque creo que lo mas fácil para no liarnos es trabajar con la escala 0-5V que viene por defecto haciendo el divisor de tensión para esta escala. Imagino que para los que entienden mas de electrónica igual es mucho mejor lo otro, pero para empezar y familiarizarnos poco a poco los analfabetos creo que será mas sencillo así.
¿ Te importaría poner los valores de las resistencias para una escala de 0-5V para baterias de 12-24-48 ?
Gracias
- 23/12/2013, 15:29 #25Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
vayamos por partes : segun el esquema en pdf del arduino del cual pusiste el enlace : http://arduino.cc/en/uploads/Main/Ar...-schematic.pdf
IOH o POWER son 2 de los conectores o tiras de pines que hay en la placa. Efectivamente, los GND son comunes a toda la placa y a todos los conectores.
Aref sólo se utiliza para poner una tensión de referencia en caso de que selecciones ( EXTERNAL ), tiene que ser una tensión muy estable y precisa, sino vas a leer cualquier cosa menos lo que te interesa. En caso de las otras selecciones ( DEFAULT ) o (INTERNAL) se seleccionan 5V o 1,1V ( referencia interna disponible en el propio chip).
valores de R1 y R2 para utilizar vref = 5V ( DEFAULT):
R1 12V : 3K24 1%, 24V: 7K5 1%, 48v: 16K2 1%
R2 1K 1% en todos los casos
Supongo que no se explicarme muy bien, pero no sé más.
El hecho de poner una tensión de referencia u otra, por ejemplo trabajar a 5V de referencia, ni és más complicado ni más sencillo que trabajar a otra, como por ejemplo la de 1,1V. Ya mencioné los pros de esta última.
Ten en cuenta que , al programar el chip de Arduino, al realizar la lectura del ADC no te va a dar voltios directamente, nunca, sólo te dará un numero comprendido entre 0 y 1023. Tendrás que aplicar el factor de escala, tanto si trabajas a vref de 5V, 1,1V o XX,X V, si o si.
En cualquiera de los casos, la formulita para obtener la tensión real en voltios, sería:
V = ( Nadc * Vref * ( R1 + R2)) / ( R1 * 1024)
de donde Nadc es el valor leído del registro interno del conversor AD del chip del arduino, Vref es la tensión de referencia que has seleccionado y R1 y R2 son los valores de las resistencias del puente divisor.
Posteriormente habría que aplicarle un filtro digital para eliminar el ruido 'eléctrico' propio de la señal de entrada y de los conversores, pero eso ya es arena de otro costal.