Diseño circuito microcontrolador

Hola!!

Soy nuevo en el foro y me estoy iniciando en el diseño de circuitos con microcontroladores, pero tengo algunas dudas que no he conseguido resolver buscando en este foro ni en internet, quizá porque son demasiado obvias/elementales pero yo no las tengo claras y me gustaría que me echarais una mano si es posible. Con ideas confusas lo único que creo que voy a hacer es quemar algo!! jeje.

Para calcular por ejemplo la resistencia que hay que colocar en un pin de salida para obtener una intensidad determinada siempre se tiene en cuenta que el pin genera una caída de potencial de 0,6v sobre los 5v de alimentación del microcontrolador ¿esto es un dato genérico?

En la imagen que os adjunto viene un gráfico (el inferior) para colocar un pulsador que genere una señal lógica 1. Si os fijais hay una resistencia que conecta el pin de entrada con tierra cuando no hay potencial (pulsador abierto) ¿no debería estar la resistencia posicionada para controlar la intensidad que se genera cuando se activa el pulsador en vez de proteger el pin de tierra? no entiendo el sentido de esa resistencia, además, el gráfico superior, que representa un pulsador para entrada lógica 0 si tiene una resistencia entre el potencial y el pin. ¿ alguien me podría explicar como funcionan esas resistencias? gracias de antemano.
 

Adjuntos

  • capturada.jpg
    capturada.jpg
    33.2 KB · Visitas: 63
Así está bien. En realidad la resistencia solo fija el valor de la tensión cuando el pulsador está abierto. Como el pin está funcionando como entrada ya está en alta impedancia y no absorberá mucha corriente.
 
Agradezco tu respuesta, pero sigo sin tenerlo claro. Los dibujos que he adjuntado no son un diseño mio, sino que pertenecen al libro que estoy siguiendo (basic para microcontroladores pic). Hasta donde yo se las resistencias sirven para limitar la corriente que llega a los pines del microcontrolador ¿pero que sentido tiene una resistencia conectada entre un pin de entrada y tierra en la figura de abajo? ¿y que sentido tienen 2 resistencias en serie en la figura de arriba cuando el pulsador está abierto? gracias de nuevo.
 
1cualquiera, las resistencias colocadas son para atenuarnos el ruido eléctrico presente en todo circuito, y que no nos darian unos falsos "0" ó "1" cuandono no pulsamos los interruptores , ya que por lo general las entradas son de alta impedancia.
En el primer circuito la "fuerza a +VCC mientras no oprimas el interruptor , en el segundo hace lo contrario; en cktos donde el ruido es mayor se añade condensadores y resistencias ,R-C.
 
En el circuito de arriba, la entrada estaría con un "1" (+5v) cuando no se acciona el pulsador.
En el circuito de abajo, la entrada estaría con un "0" (GND) cuando no se acciona el pulsador.

Es decir, la diferencia de esos circuitos está en cómo querés que esté la entrada cuando no se apreta el pulsador y cómo cuando se aprete. Las resistencias están para evitar cortocircuitos (evitar cortocircuito entre VCC y GND) en los dos casos, ya que sino, cuando se aprete el pulsador, quedaría como un cable entre VCC y GND.
 
Gracias por las respuestas. Al parecer la función de esas resistencias es el conocido pull up y pull down que yo había pasado por alto. No obstante hay un par de cosas que no me quedan claras:

1- Por lo que me habéis dado a entender no es necesario colocar resistencias para controlar la intensidad de corriente en los pines de entrada de los microcontroladores ya que estos tienen una impedancia muy alta ¿es esto cierto?

2 - Por otra parte, en la figura de arriba hay colocadas dos resistencias; la vertical entiendo que es una resistencia pull up, pero no entiendo la funcionalidad de la resistencia horizontal ¿no sería mejor sumar ambas y poner una sola resistencia pull up?

Una ultima duda general ¿es necesario poner siempre resistencias pull up o recomendable?
 
1 Efectivamente, un pin de entrada se puede poner a 0 o 1 GND o VCC que solo consumirá una pequeñisima corriente

2 Yo solo veo una resistencia que está en vertical.
 
Si perdona, me debo de haber confundido con otro dibujo.

Una ultima pregunta ¿Las resistencias pull up/pull down se deben poner o son recomendables? ¿Como puedo calcular su valor? estoy usando un pic 16f84A.
 
En las salidas no sirve para nada en principio, solo es una carga inútil. Peero, se pueden emplear como truco para tener mas corriente de salida. Por ejemplo un pic da 25mA de salida pero necesito tener algunos mA mas para activar algo por 1. Pongo una resistencia a positivo que de un valor tal que la salida pueda forzar a cero sin problemas. Cuando la salida esté a uno la corriente será la que entregue la salida mas lo que pase por la resistencia.

En las entradas sirve para no dejar una entrada al aire, dependiendo del tipo de semiconductor esto puede ser un 1 lógico o puede ser indeterminado, osea ruido puro. De esta forma marcamos que valor tendrá la entrada cuando "no pulse" el mecanismo que le da señal. Si la señal viene de una puerta no hace falta. El valor de la resistencia dependerá de como de lejos esté el pulsador o como de ruidoso sea el ambiente, en principio un valor de unos 10~15k vale pero si hay muchos metros o mucho ruido cuanto mas bajes la resistencia mas inmune es. Todo ello dentro de cierta lógica; si pones una resistencia de 1Ω tendrás 5A cada vez que pulses, será muy inmune pero necesitarás una fuente enorme. Lo normal sería poner una resistencia de uno 500 Ω para ambientes muy ruidosos y 10k para cosas "cercanas", entre esos dos valores tan dispares lo pones un poco "a sentimiento" según cada caso como sea.
Yo era muy fan de los 10k o mas pero cuando me empezó a fallar una cosa por la longitud de los cables cambié de opinión; ahora suelo poner 4k7 como mucho, pero eso va a gustos.
 
Última edición:
Si perdona, me debo de haber confundido con otro dibujo.

Una ultima pregunta ¿Las resistencias pull up/pull down se deben poner o son recomendables? ¿Como puedo calcular su valor? estoy usando un pic 16f84A.

Se deben poner, en las entradas, SIEMPRE, excepto que uses la resistencia de pull-up interna que tiene el PIC16F84A (las tenés que configurar cuando haces el programa, tené en cuenta que éste PIC tiene sólo resistencias de pull-up internas en el PuertoB, si no me equivoco), porque sino al apretar el pulsador se te hace un cortocircuito entre VCC y GND. Osea, más allá del ruido y del valor, tenés que tener una cierta resistencia para evitar cortocircuito.
La resistencia no está por el microcontrolador sino para evitar el cortocircuito entre VCC y GND que se generaría al accionar el pulsador.

En cuanto a la salida: hay otras formas más seguras para el microcontrolador que la resistencia que menciona "Scooter". De por sí, tenés que tener en cuenta que el microcontrolador acepta más corriente en modo "sink" que en modo "source", y depende de en qué modo esté va a activar con un 0 (modo sink) o con un 1 (source) a la salida.
Igualmente, se pueden "aislar" un poco el microcontrolador del resto del circuito, en caso de necesitar más corriente, con un transistor trabajando en corte o saturación o sino con circuito/integrado optoacoplador a la salida.
 
Totalmente de acuerdo con leiboleo; las resistencias no son lo mejor para aislar del mundo exterior, pero pueden hacer algo. Para cosas "serias" siempre optoacoplar en ambos sentidos.
 
Muchísimas gracias por las respuestas. Acabo de registrarme en el foro y la verdad es que me sorprende la calidad de las respuestas que me habéis dado y la rapidez con la que habéis respondido. No en todos los foros pasa eso jeje.

Ambos me habéis respondido otra duda que tenía en mente, ya que el proyecto que estoy haciendo consiste en controlar un depósito y una bomba de un pozo con sensores de nivel, y probablemente una electroválvula, pero en eso aún no he pensado. El pozo mide unos 30 metros de profundidad, así que teniendo en cuenta que los sensores a instalar serían mediante flotadores estamos hablando de 30 metros de bajada y 30 de subida, más unos 15 metros más para llegar hasta el microcontrolador. Con una longitud tan grande voy a tener que tener muy en cuenta el ruido así como la caída de potencial que se produzca en el cable, y hasta donde yo se eso no es posible simularlo jeje.
 
Muchísimas gracias por las respuestas. Acabo de registrarme en el foro y la verdad es que me sorprende la calidad de las respuestas que me habéis dado y la rapidez con la que habéis respondido. No en todos los foros pasa eso jeje.

Ambos me habéis respondido otra duda que tenía en mente, ya que el proyecto que estoy haciendo consiste en controlar un depósito y una bomba de un pozo con sensores de nivel, y probablemente una electroválvula, pero en eso aún no he pensado. El pozo mide unos 30 metros de profundidad, así que teniendo en cuenta que los sensores a instalar serían mediante flotadores estamos hablando de 30 metros de bajada y 30 de subida, más unos 15 metros más para llegar hasta el microcontrolador. Con una longitud tan grande voy a tener que tener muy en cuenta el ruido así como la caída de potencial que se produzca en el cable, y hasta donde yo se eso no es posible simularlo jeje.

Para calcular la resistencia del cable lo podés hacer con la siguiente fórmula:
form12.gif

La resistividad del cobre es: 1,71 x 10^-8

Ah, si estás empezando a manejarte con el PIC16F84A, te recomiendo que te descargues el libro "PIC16F84A. Desarrollo de proyectos", en el que te explica varias cosas más sobre el microcontrolador.
 
Entonces todo optoacoplado con otra fuente completa independiente. Impedancias bajas mas bajas que las que pueda producir la humedad.
 
Como bien ha dicho Scooter estoy pensando en usar un optoacoplador para acoplar el circuito del sensor con el del microcontrolador y poder transmitir la señal. No obstante tengo otra duda a cerca de la longitud de los cables: es evidente que la longitud de los cables (unos 120 metros en total para cada sonda) unido a la resistencia del agua una vez que las sondas estén sumergidas supone que el circuito del microcontrolador no pueda detectar señales estando conectado directamente al cableado, no obstante no tengo muy claro porque se produce este fenómeno, ya que si yo aplico una ddp de 5v en el cable eso no va a variar por muy largo que sea así que sobreentiendo que lo que va a ocurrir es que la resistencia va a ser tan alta que la intensidad disminuirá a mínimos indetectables, además del ruido que se producirá, que impediría detectar 0 o 1 ¿me equivoco en lo que acabo de decir?

Por otra parte, he hecho el cálculo de la resistencia del cable para 1mm2 de sección y apenas salen 4 ohmios, en realidad la mayor resistencia la produce el agua con diferencia, pero es muy relativo a la concentración de sales en el agua del pozo. Para ser exactos se debería medir la conductividad.

Otra pregunta ¿de que manera influye la separación de los cables de las sondas dentro del agua del pozo? ¿aumenta su resistencia? nadie comenta nada a cerca de esto, solo hablan de la resistividad del agua.
 
Saludos... apenas iba a abrir un tema nuevo cuando me encontré con este. Por lo que veo el amigo "1cualquiera" tiene entre manos el mismo proyecto que yo sobre la medición de resistividad de agua de formación en pozos.

He investigado y hallé esta página donde muestran la relación entre las medidas de los electrodos de medición y la resisitividad del agua.

Mi idea a grandes rasgos es la siguiente:

Prototipo.png

Como se observa en el diagrama, el medidor de resistividad consiste básicamente en un comparador de tensiónes entre un DAC (de 8 bits) y el divisor de voltaje generado por la sonda de medición y un resistor de los 8 resistores demultiplexados por el 4051 (Demultiplexor analógico).
Para hacer la lectura, el uC selecciona un resistor de los 8 (en función de la caida de voltaje provocada por la sonda) y a continuación comienza a generar una onda de escalera ascendente en el DAC hasta que la salida del comparador sea 0 (voltaje del DAC ligeramente mayor al de la sonda), cuando eso suceda el uC leerá el valor del DAC y el del resistor seleccionado para hacer los cálculos necesarios para determinar la resistividad del agua.

Les presento mi idea porque me gustaría saber una segunda opinión de ustedes sobre el diseño a grandes rasgos.

Ahora, en mi caso también la distancia desde la sonda al controlador exterior son aproximadamente 200 m, lo que tengo pensado es incluir en la sonda un uC esclavo que haga las lecturas correspondientes y este se comunique a otro uC maestro en el exterior del pozo por medio de señales digitales utilizando un protocolo similar al RS232 en cuanto a los niveles de voltaje para disminuir los efectos del ruido.
 
Con 200m te recomendaría más utilizar rs485, te puedes ahorrar algunos dolores de cabeza,le colocas un par de SN75176 que no valen nada (o el que mas te guste o encuentres) y listo

un saludo
 
La verdad es que yo no te puedo dar una opinión a cerca de tu invento porque mis conocimientos en electrónica son muy limitados y no termino de entender como lo quieres hacer. Por otra parte, y después de haber estimado la resistencia que puede oponer el agua al paso de corriente considero que es más factible utilizar una sonda mediante flotador, ya que, aun siendo agua de pozo (con alta concentración de sales) y estimando que la resistencia pudiera ser de 200 ohmios * cm (tirando por lo bajo) con una profundidad de nivel de agua de entre 3 y 3 metros y medio puedes hacer un cálculo sencillo de que la resistencia eléctrica puede alcanzar los 60 K, además de que tendría que utilizar un generador de corriente alterna, dado que la corriente continua genera electrolisis y destruye los electrodos, y por supuesto encontrar una manera de amplificar la señal, lo cuál se podría hacer utilizando transistores pero para mi el circuito se complica mucho, y el pozo en el que pondría la sonda tiene espacio suficiente para colocar sondas con flotador.
 
Atrás
Arriba