Pages: [1] 2   Go Down
Author Topic: salidas digitales arduino mega adk  (Read 3767 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Jr. Member
**
Karma: 0
Posts: 53
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hola compañeros, otra de indios.... jejejje
segun documentacion de arduino mega dice que:
Las E/S operan a 5 voltios. Cada pin puede proporcionar o recibir una intensidad maxima de 40mA y tiene una resistencia interna (desconectada por defecto)de 20-50kOhms. Además, algunos pines tienen funciones especializadas

tengo la placa conectada a una fuente de alimentacion externa que proporciona 9.41 voltios, a pesar de eso en los pines de salida me salen solo 3.3 voltios , y no se porque.

¿tiene que ver algo esa resistencia interna?
¿como logro que me salgan los deseosos 5 voltios?

Logged

Chile
Offline Offline
Sr. Member
****
Karma: 0
Posts: 260
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

La resistencia interna debería estar activada solamente si hiciste un digitalwrite sobre un pin declarado como Input (corrijo, gracias Heke).

Cómo inicializaste los pins que estás midiendo?
« Last Edit: August 19, 2011, 07:31:40 am by pgmartin » Logged

Spain
Offline Offline
God Member
*****
Karma: 25
Posts: 956
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Como input
El compañero quiere decir como input:

También hay resistencias pullup de 20K conveniente integradas en el chip Atmega a las que se puede acceder desde el software. Estos resistencias pull-up incorporadas son accedidas de la siguiente manera.

pinMode(pin, INPUT);           // pone el pin como entrada
digitalWrite(pin, HIGH);       // activa la resistencia pullup

Si la quieres como Pulldown lo cambias asi:
pinMode(pin, INPUT);           // pone el pin como entrada
digitalWrite(pin, LOW);       // activa la resistencia pulldown

mira este link:
http://arduino.cc/es/Tutorial/DigitalPins
« Last Edit: August 18, 2011, 02:55:43 pm by Heke » Logged

CUIDADO !! MIS POST NO SON APTOS PARA MENORES. SI ERES MENOR DE 14 AÑOS DEBES DE LEERLOS ACOMPAÑADO DE UN ADULTO

Offline Offline
Jr. Member
**
Karma: 0
Posts: 53
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

inicie los pines en setup:
pinMode(luz11, OUTPUT);

y los cambio en loop HIGH o LOW, y asi pretendo maniobra 30 reles
http://www.sparkfun.com/datasheets/Components/General/JZC-11F-05VDC-1Z%20EN.pdf

creo que con las caracteristicas de este rele, por el bajo consumo que tiene puedo conectarlo directamente a la salida del pin y gnd.  Con 3.3 voltios conmuta pero no lo hace bien (el sonido al conmutar) el 15º rele empieza a fallar, la fuente es de 9 voltios 1200 mA. ¿una fuente mas potente en mA seria lo suyo por la cantidad de reles?

heke!! si defino esos pin como INPUT, y les doy HIGH, tendre en ese pin 5 voltios?

demasiados reles para un solo arduino ? si es asi alguna idea? un transistor me ayudaria en algo...
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 53
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

despues de estar asta las 4 de la mañana indagando:

pg martin :
defino los pines en setup:
pinMode(luz11, OUTPUT);

Y los maniobro en loop, HIGH si quiero 5 voltios  cierra rele, LOW abre rele.
el rele es este: http://www.sparkfun.com/datasheets/Components/General/JZC-11F-05VDC-1Z%20EN.pdf

--creo que por el bajo consumo que tiene el rele ¿ es posible manibrar 30 reles con mega?
--la funte es de 9voltios 1200 mA ¿una mas potente 2500 mA seria lo suyo?

heke:
si defino los pines en como input y les doy el valor HIGH ¿tengo 5 voltios en salida?
se que son muchos, en lugar de conectarlos directamente, de que otra forma puedo hacerlo?
Logged

Donostia
Offline Offline
God Member
*****
Karma: 0
Posts: 740
elektronikadonbosco
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Estas controlando los reles con transistores y alimentandolos por una fuente independiente y no directamente desde la placa?
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 53
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si, pretendo controlarlos con la placa, según cararateristcas de Rele yo en entiendo que se puede...
Es un Rele que consume poco, si aporto a la placa una fuente con suficientes mA para todos los componentes entiendo que debe de funcionar.

En fin sigo indagando y buscando nuevos caminos para mi fin, lo de los transistores ... Me estoy documentando una ayuda lo agradecería pues creo que es la forma mas conveniente para no forzar tanto la placa " los transistores junto con los reles "

Muchas gracias por todo!!!
Logged

Donostia
Offline Offline
God Member
*****
Karma: 0
Posts: 740
elektronikadonbosco
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Tienes que hacerlo con trasistores o con alguna variante hay post sobre eso mismo y alguno reciente, si lo encuentro te lo pongo. Salu2

http://arduino.cc/forum/index.php/topic,69660.0.html
« Last Edit: August 19, 2011, 07:19:58 am by ionhs » Logged

Chile
Offline Offline
Sr. Member
****
Karma: 0
Posts: 260
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

pacooh:
Hacele caso a ionhs, y poné algún transistor o algo en el medio para no reventar a la arduino. A cada relé le tendrías que poner también un diodo de protección en serie.
Si yo lo estuviera haciendo, probablemente me inclinaría por usar unos ULN2803 que es una serie de darlingtons más diodos de protección y con eso ni te ponés a medir el voltaje. Es un integrado económico y tiene 8 puertos, con lo cual podrías controlar hasta 8 relés (usando 8 pines).
Si no querés usar tantos pines de la Arduino, empezá a recorrer el camino del ShiftOut.

Y ojo: si vas a activar todos los relés al mismo tiempo, estás muy jugado con la fuente.

Suerte

Logged

Spain
Offline Offline
God Member
*****
Karma: 25
Posts: 956
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Pacooh !!

Quieto parao!!

Que no, que no, estas equivocado. Por mucha "chicha" que le pongas al arduino de fuente de alimentacion, aunque esta sea de 40Amperios!! no va a dar mas.

Es que no entiendes que la maxima potencia que va a dar el arduino es a traves de el. Y que yo recuerde eran miliwatios.

Olvidate de esos reles que tienes que me juego una cerveza a que consumen mas que lo que el arduino puede dar por mucho que creas que no.

Tienes que usar o transistores o algun circuito integrado especialidado de driver, tipo uln28...

Los 5 voltios (en realidad 4,7 o 4,8 en las salidas del arduino) solo los tendras poniendolo como salida, pero eso no es lo que preguntabas cuando hablabas de resistencias de pullup, para que sepas, las resistencias de pullup o pulldown se emplean para fijar a positivo o a masa una entrada digital, para evitar que una interferencia de un falso positivo en esa entrada, repito ENTRADA !

Para activar reles o lo que quieras, el arduino no necesita ninguna resistencia de pullup ni las va a poner, ten en cuenta que el arduino deja las salidas en alta impedancia o si no me equivoco, cuando estan definidas, tendra el valor medio de la tension merced a un puente de dos transistores internos, esperando dar high o low.

Respecto a los reles, pon el polimetro en ohmios con un fondo de escala de 200 o 2000 y mide la bobina de este, a ver cuanto da en resistencia pura y nos lo dices...
« Last Edit: August 19, 2011, 08:35:35 am by Heke » Logged

CUIDADO !! MIS POST NO SON APTOS PARA MENORES. SI ERES MENOR DE 14 AÑOS DEBES DE LEERLOS ACOMPAÑADO DE UN ADULTO

Chile
Offline Offline
Sr. Member
****
Karma: 0
Posts: 260
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

pacoooh:
si te apuraste tu placa ya debe echar humo   smiley-eek-blue

Si tuviste paciencia olvidate de conectar el relé directo a la arduino.

Mirá esta imágen:


Si el diodo te parece que está en una posición "que no sirve para nada porque nunca va a conducir", es precisamente porque al apagar el relé, de su bobina salen las más exoticas corrientes que sin este diodo van directo a freir cuanto componente tengan cerca.

Esta es la forma correcta de conectar un relé al Arduino. y R1 NO  es la resistencia interna (olvidate de ellas, que solo sirven para las entradas). tendrás que dimensioarla dependiendo del transistor que uses.
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 53
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

bieeeennn!!!

he desecho lo echo, y comprovado que el arduino no tenga ningun pin muerto, no ha pasado nada. Menos mal....
ahora, creo que el mejor camino a seguir en "darlintong" lo integrare mejor con lo que tengo echo ya,

heke: la medicion que me da la bobina del rele es de 55.5 ohmios. Que te dice esto?

http://www.datasheetcatalog.org/datasheets/90/366828_DS.pdf
he estado ojeando los 18 pines del uln2803 y me asalta dos dudas...
1-- el circuito donde integre los uln2803¿ es conveniente alimentarlo con otra fuente de alimentacion en los pines 9  y 10 del uln2803?
2-- y  ¿ no es necesaria ninguna resistencia para los pines que van del arduino al uln2803?

el lunes los pido!!!



Logged

Donostia
Offline Offline
God Member
*****
Karma: 0
Posts: 740
elektronikadonbosco
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Con puentes darlinton no he trabajado nunca pero si he montado en el arduino el esquema que comenta pgmartin. Los valores que use son:

Transistor BC337
Diodo 4007 pero valdrá casi cualquiera
R1 10K ohm

al circuito que comentaba pgmartin le añadi una resistencia (220 ohm) y un led en serie conectándolo paralelo al diodo, así cuando se activa el rele se enciende el led. Salu2
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 49
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Yo he usado esos transistores bc337 y con la resistencia de 10K el consumo de los pines del arduino no sobrepasa los 2 miliAmperios. Comparado con el darlington creo que son mejor opcion aunque vas a tener que hacer mas soldaduras.
Es que tengo una duda acerca de los Daarlington ¿No tienen la logica cambiada? Lo digo porque si los usas vas a tener que mantener los pines en valor alto para que esten cerrados. Eso lo veo un gasto innecesario de energia.
Logged

Chile
Offline Offline
Sr. Member
****
Karma: 0
Posts: 260
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si usás el ULN2803, los darlingtons tienen un hFe tan grande que en la práctica no es necesario ponerle una resistencia de base.
Y tené en cuenta estas conecciones (ojo que este es el 2003 que tiene solo 7 darlintons):
http://www.digital-diy.com/digital-diy.net/Handy%20Tips/Resources/Relay.gif
Lo importante es conectar el pin de descarga (en la imagen el 9, en el 2803 es el 10, fijate en el datasheet) a Vcc

Los darlington son NPN, con lo cual controlarás la parte negativa del relé. Para activarlos mandarás un valor alto al pin y para cortar uno bajo (no se invierte nada).

Dado que los relays consumen mucho más que el arduino, podés usar una fuente independiente, inclusive de otro voltaje si los relés son de 12V por ejemplo. Pero recuerda unir las tierras/masas. Si por algún motivo quieres aislarlos y no unir masas, entonces empezarás a recorrer el camino de los optoacopladores (una experiencia lumínica  smiley-cool )

Si la bobina del relé tiene una resistencia de 55.5 Ohm, a 5V consumiría (por ley de ohm) aprox. 90mA. Con los darlington te sobra.Igual esto es bastante más alto que lo que interpreto del datasheet. Por las dudas medilo con el amperímetro.

Para dimensionar la fuente tenés que tener en cuenta la simultaneidad, es decir cuantas cosas van a estar consumiendo al mismo tiempo. Desconozco el objetivo de tu proyecto, pero no es lo mismo que los 4 relés se prendan al mismo momento, que estés haciendo una secuencia prendiendo de a uno, por ejemplo.

Ahora que leíste todo, te pido que igual revalides lo dicho, no soy un experto pero al menos con estos componentes trabajé y no los hice echar humo  smiley-sweat


Logged

Pages: [1] 2   Go Up
Jump to: