El hilo del arduino(aut. y robotica industrial)

S

#240 nono si estoy de acuerdo pero esque es lo unico que me han enseñado en mi carrera y lo que comento es para hacer mi proyecto de fin de carrera pero que vamos, como en principio tampoco quiero programar nada muy complicado me imagino que me costara poco aprender a programar en C o en lo que toque

2 respuestas
BLZKZ

#241 qué carrera es? Curiosidad

2 respuestas
gonya707

#241 En absoluto. C es un leguaje fácil siempre y cuando no te metas con movidas, y para lo que tienes pensado ahcer no hara falta.

Si te pilla de nuevas programar en algo que no sea ensamblador tira por donde quieras. Arduino es probablemente el más fácil de los lenguajes (también es una variante de C). Y tienes muchos tutoriales y ejemplos básicos

#242 me sumo a la pregunta. donde te han enseñado ensambler y no otra cosa? Vamos lo que sabes de programación ni se parece a la programación usada el 99% de las veces.

1 respuesta
S

#242 y #243 ingenieria tecnica industrial especializao en electronica industrial (zaragoza)

pues con el ensamblador he hecho hasta acelerometros que yo movia la plaquita y se desplazaba el puntito en la pantalla pero de ahi no he pasao nunca xD

1 respuesta
Ak3larr3

Yo programaba pics en ensamblador y no te lo recomiendo para algo así. Mejor un lenguje de alto nivel. Se mire como se mire mover registros y sumarlos no es muy usable a no ser que necesites un control absoluto u optimiazación.

morfen69

#244 Interesante que tu hicieras esa carrena en esa universidad precisamente XD

No diste C en microprocesadores o algo de programacion extra en informatica industrial?

P.D: Supongo que darias Pascal en primero, eso es muy buena base para pasarte a cualquier otro lenguaje no orientado a objetos sin apenas esfuerzo.

Ontopic:

Parece que lo que quieres hacer es bastante sencillo asi que lo puedes programar en VHDL en un PLD y tirando, que eso supongo que lo diste en Elec. Digital. Pero seria muy recomendable que aprendieras las bases de C como minimo.

1 respuesta
S

#246 por qué interesante? xD en micros di solo ensamblador, en informatica industrial programabamos automatas pero eso no era programar ni era nada, era coger cuatro bloques y unirlos, si te digo que la primera vez que "programé" en eso fue el dia del examen y saqué un 9 te digo todo xd.
En primero pascal era optativa y yo porsupuesto elegí ingles asi que program holamundo, writeln, readln y poco mas.
Pues muchas gracias chicos, parece ser que voy a aprender C.

PD: si es porque en mi perfil pone canarias es fake eh xD

PD2: tambien quiero poner un display y unos botoncicos para poder elegir manualmente la temperatura a la que saltan los aspersores, el nivel de luminosidad para que se encienda la luz y alguna cosa mas, que es un proyecto de fin de carrera, habrá que complicarlo un poquillo asi que si que voy a tener que usar C si.

2 respuestas
morfen69

#247 Interesante porque yo estoy estudiando la misma (pero el Grado) jaja. Supongo que el examen seria de Piedrafita...

Para usar un display vas a tener que programar un uC por narices, asi que si, a aprender C jaja.

1 respuesta
gonya707

#247 por experiencia te comentaré que todo lo que quieres hacer es muuuuuuuuy fácil de hacer con CCS PIC y con Arduino. Con otros sistemas no tanto.

1 respuesta
S

pues muchas gracias #248 y #249 por cierto si quieres apuntes de analogica que me imagino que sera la que te estara reventando dilo y te paso mogollon de diseños

gonya707

Por cambiar un poco de tema y aportar algo de código y recursos para los que haceis cosas de estas, acabo de terminar una librería para usar el circuito integrado AD9850 con varios tipos de procesadores.

Este circuito es un generador de funciones desde 0Hz hasta.... unos 60 MHz! con resolucion de 0.02Hz. Así que si no teneis un generador de funciones en vuestro laboratorio esto puede serviros mucho, y vale menos de 5$.

Podeis encontrar los códigos y explicaciones para aburrir en estos artículos:

4
Todso

Gonya eres un jugón.

E

hola, estoy estudiando 1º de automatización y robotica industrial y he hecho ya desarrollo de productos electrónicos. Quería comprarme un arduino y estoy dudando entre el uno y el leonardo. Habia mirado este que parece ser original:
http://www.ebay.es/itm/Leonardo-R3-Latest-ATmega32u4-Module-USB-Cable-For-Arduino-ATmega32u4-BR-/151151247448?pt=LH_DefaultDomain_0&hash=item2331510058&_uhb=1
Me han dicho que los vamos a programar por puertos y que en el leonardo vienen desordenados, pero he mirado por internet y vienen igual que en el uno y no he encontrado información al respecto.
¿cual me aconsejais pillarme?

1 respuesta
gonya707

#253 Tengo un Uno y los puertos estan colocados igual que en ese Leonardo, vamos es de esperar que todas las placas de arduino guarden el mismo orden, sino los shields solo servirian para un modulo concreto.

La unica pega que le veo a esa compra es que el procesador es SMD y está soldado a la placa, así que no podrás sacarlo si vas a usar el procesador en una aplicación independiente (vamos puedes usar la placa para programar todos los procesadores que quieras).

Por lo demas es muy buen precio, mi Uno me costó bastante más en su tiempo

raid

#238 Hola, Gracias por el aviso. Se tiene en cuenta.

A ver, Dirigido a la peña que está liada con el ambi-light:

Justo ahora acabo de rescatar unas tiras led de esas que se venden en Ikea. Están un poco hechas polvo (fallan la mitad de los leds), pero quería ver si podía aprovecharlas.

El caso es que no sé cómo diablos conectarlas con seguridad (me refiero a voltaje e intensidad, etc) para no terminar de romperlas.

La información que tengo es:
Transformador que utiliza el aparato:
Prim: 220-240Vac, 50Hz (vale, a la corriente de casa)
Sec.: 12Vdc, Max 0,42A, 0,5-5W
Y eso es lo que me mosquea, porque dudo mucho que los leds vayan a 12Vdc. Aunque claro, estos leds de ikea, primero pasan por un selector de color (que irá controlado por un microconrolador y habrán reguladores de voltaje y tal).

Por otro lado tengo la información de las pistas de la tira led:
R
B
G
W

En este caso W es la masa común? o sea, va conectado a GND?
RGB iría conectado a los pines salida del arduino directamente? ¿mejor pasar por una resistencia primero?? 1K?

Gracias.

1 respuesta
gonya707

#255 las tiras de led van a 12 V siempre. Mi padre tiene la casa repleta de luces de led y he tenido que hacer muchos apaños electronicos para ello.

Nunca he visto una W en el comun, pero no pasa nada, prueba a conectar el transformador y la tira de led W a masa y R a VCC por ejemplo (no uses el arduino) Si lucen es que W es masa y si no, es que es a VCC, pero no pasa nada porque la corriente que pasara por lso leds sera minima, vamos no vas a quemar nada.

Ahora que ya sabes la polaridad... las tiras de led ya llevan resistencias smd (normalmente de 220 ohm) incorporadas, asi que no te preocupes por eso.

Y ahora lo complicado, no puedes conectar los pines R g y B al arduino directamente, mas que nada porq el arduino te va a dar unos 20mA, y tu necesitas bastante mas para encender tantos leds (de hecho los 0.42A me parecen poco pero supongoq es una tira de menos de 5 metros no?).

Lo que necesitas es un driver que alimentas con los 12V de la fuente y que controlas con 3 canales PWM del arduino, el driver copiara esas señales pwm pero a 12V y con la corriente suficiente para iluminar la tira.

1 respuesta
raid

#256 Vaya, pues si que se me ha complicado el tema en un momento... jaja.

Son las tiras de leds del ikea, hay cuatro tramos independientes de 9 leds cada uno (y de esos fallan 3 en dos tiras y 6 en otra)

Mmmmpffff, esto del driver.... claro y me da mal rollo romper el selector de color, porque realmente es lo único que está en perfecto estado.

Este es el material rescatado (curiosamente en esta web dicen precísamente que les meta 12V)
http://www.overclock.net/t/1262191/ikea-dioder-color-changing-led-strips-with-different-form-factors

Edit:

Se me ocurre usar amplificadores operacionales alimentados a 12v. Eso serviría?
Que tal un UA741CN ?? es lo que tengo por casa (creo que serviría) http://www.datasheetarchive.com/dlmain/Datasheets-25/DSA-496852.pdf

Con tres de esos, alimentados los tres con los 12V que necesito ya sería suficiente para que las señales del arduino fueran amplificadas a 12v ¿no?

1 respuesta
gonya707

#257 Lol no te sirve no, en 741 debe de dar 25 miliamperios de salida como mucho, y además si usas OA ten en cuenta que si lo alimentas con ) y 12, a su salida van a llegar mas o menos desde 2V hasta 10V (dropout voltage)

Si además hay leds fundidos y eso, yo lo descartaría, te va a quedar algo chapucero, y comprar 5 metros de leds rgb no es tan caro, y si no son waterproof lo puedes encontrar por menos de 15$ seguro.

Tu lo que necesitas y no te da el arduino ni los OA es corriente suficiente, pero vamos, con la fuente de alimentación ya hecha y además de alimentación asimétrica te podría valer con 3 tristes transistores de potencia... Aplicas el pwm del arduino a la base, alimentas por colector y emisor a masa, por el colector ahora te sale el PWM invertido de polaridad y con corriente de sobra

1 respuesta
raid

#258 No es por lo caro que es, sinó por si lo podía hacer con el material que tengo yo aqui, y ya después si es necesario adaptarlo.

El led strip que me comentas está muy bien, pero es uno. Supongo que si lo corto en trozos, luego voy a tener que soldarle nuevos conectores y demás (con lo bueno que soy yo soldando sabes?). En cambio estos de ikea me vienen bien porque los tengo encima de mi mesa y porque se pueden usar independientes.

Quería hacer una adaptación del ambi light que indicaba posts atrás, pero en el que las señales a los leds fueran por zonas (y no la media de toda la pantalla), así ante un fondo degradado de izquierda a derecha, los valores de una tira de leds y la otra serían diferentes. Problema añadido: Solo tengo 6 pwm en el Arduino. Luego esta el tema del TI MSP430G2 Launchpad, pero no sé cuántos tengo ni cuales son (tengo que investigar por ahí)

En fin, me lo tomaré con calma. Y a ver que voy sacando poco a poco. Yo pensaba que iba a ser programar, conectar a saco y listos, pero veo que tengo que resolver primero varias lagunas que tengo :)

2 respuestas
gonya707

#259 Si tu procesador es el MSP430 2553 tiene 4 canales de pwm.

Si cortas el reel ese de leds, si, luego tendras que soldar cable a los otros cachos, y efectivamente necesitas sacar de algun otro lado mas señales de pwm, o bien con resitros de desplazamiento o con circuitos integrados que puedas programar con el arduino por serie o algo asi.

De momento intenta hacer funcionar una de las tiras sin pegarla a ningun lado y luego vas evolucionandolo.

1 1 respuesta
goyetus

#260 Inocente de mi, juraria que en los manuales que postee hilos atras era mas sencillo el tema...... me he enterado de la misa la mitad de todo lo que habeis hablado!

En los que he visto, creo recordar que iban conectados al arduino directamente y a alimentacion externa (nada mas). En fin, le pegare un buen vistazo a fondo en cuanto me lleguen las leonardo de una vez por todas!

Cada dia que pasa me doy cuenta que se "menos" , necesito varias vidas para aprender todo lo que quiero :P

edito:

Efectivamente en los manuales usan todos el chip uln2003a , con un adaptador de corriente enganchado al breadboard de 5v y 600ma.

#259 En este ejemplo no usan el uln2003a , directamente le meten alimentacion a los leds, y los leds conectados al arduino. Esta 100% en español. No se si te apañara o no. (se me olvido poner este enlace el otro dia.

http://www.briefer.es/2013/04/ambilight-con-arduino-adalight-ws2801-xbmc-y-boblight

Edito2:

A quien le vaya a hacer falta el ULN2003A si piensa montar un ambilight, buscando precios me he encontrado con este "chollo"..... 20 unidades por 3,75 € + envio. En farnell, rs y similares no bajan de 0,50 la unidad..... es un ahorro importante.

El vendedor es "ALEMAN" , nada de aduanas ni chinos :P

http://www.ebay.es/itm/20x-ULN2003A-STMicroelectronics-Seven-Darlington-Array-ULN-2003-A-DIP-16-/161101176762?_uhb=1&pt=Bauteile&hash=item258260dfba&quantity=1&autorefresh=true

2 respuestas
raid

#261 Si si, ya es eso, usar el ULN2003A por ejemplo en lugar de lo que yo proponía (que era un amplificador operacional simplemente)

Y bueno, yo creo que debo ser de los que menos saben de electrónica aquí... que a lo máximo que llego es a entender muy básicamente el funcionamiento del transistor (solo en la región de saturación), pero ya eso de PNP o NPN y los FET NMOS, PMOS y demás... poca cosa.

#263 Yo siempre los he visto como interruptores que se activan electrónicamente no? Básicamente viene a ser eso. Si en la base hay tensión, el colector comunica con el emisor y transmite corriente. Sinó, entre colector y emisor hay corte. Pero luego hay por lo visto una región intermedia que creo que entre colector y emisor solo pasa parte de la corriente. En fin, no quiero desviar el hilo yo ahora al funcionamiento de los transistores.

3 respuestas
gonya707

#261 ese integrado son simplemente varios transistores de par darlington dentro de un chip. si los compras discretos cada uno te valdria menos de 10 centimis

#262 basicamente todos funcionan de manera muy parecida

2 respuestas
gonya707

#262 Bah, desvia el hilo todo lo que quieras xD es informacion util para cualquiera que se vaya a poner con este proyecto, que no sois pocos.

El transistor efectivamente puede actuar como un interruptor controlado por tensión. Un transistor bipolar deja pasar la corriente o no, en funcion de lo que reciba por base, y un transistor de efecto de campo (FET) hace lo mismo, solo que la base se llama gate.

Pero en este caso no se quiere usar el transistor como interruptor, sino en un estado intermedio, que es como amplificador. Un transistor bipolar actuando como amplificador tiene una ganancia bruta de unos 200A/A, vamos, que si metes 1 micro amperio por la base, la corriente de colector sera 200 veces más. Un par darlington son dos transistores en uno, es decir, una amplificación de corriente de 200*200=4000 aproximadamente. La idea del diseño es ahora encontrar las resistencias externas necesarias para polarizar los transistores correctamente y que no esten en saturacion(interruptor cerrado) ni corte (interruptor abierto), sino en activa(amplificador)

1 respuesta
goyetus

#263 perdona mi ignorancia tio, pero me he quedado igual, jajajaja, soy un profano de la electronica. Si fuera codigo aun aun...... En fin, he pedido 20 uln3000a a este Aleman por 3,20 € (el sitio mas barato que he encontrado con mucha diferencia).

Con lo que me has comentado que ni he entendido, comprendo que es mucho mucho mas barato aun.


#262 Te aseguro que yo se bastante menos que tu por lo que te he leido hablar , jajajaaj :)


#264 Gonya, ya que tu controlas bastante, y yo no tengo ni zorra idea, mi proyecto con ambilight sera conectar una tira de 5m (72 watt maximo) al arduino a traves del uln3000a y un alimentador externo de 6a y 5v (al menos eso indican en el pack que he comprado en los chinos). Es una tira de led 5050........

¿Voy a poder hacerlo o es una barbaridad lo que estoy pensando? (Por requisitos de corriente, puedo reducir de 5m a 2m los led, no hay problema)

1 respuesta
gonya707

#265 con 6 amperios te sobran 5 y medio xD pero puede que con 5 voltios los leds no te luzcan demasiado. Lo habitual es alimentarlos con 12V

Si ya tienes comprada la fuente de 5V de todos modos hay solucion para que saques de ahi 12 voltios pero ya nos metemos en movidas algo mayores XD

1 respuesta
goyetus

#266 me he equivocado, es de 12 tal como decias :)

Imagen

es de aqui.....
http://www.ebay.es/itm/New-5M-SMD-5050-RGB-LED-Strip-Light-Power-Supply-Adapter-IR-Remote-Controler-A-/121190148296?pt=LH_DefaultDomain_186&var&hash=item1c377ee8c8&_uhb=1

La alimentacion va al controlador de los leds que lleva mando a distancia.... supongo que tendre que comprar algun conector igual para alimentar la breadboard y asi controlar los leds.... (suposiciones mias vagas....) XD

Algo parecido a esto :


2 respuestas
gonya707

#267 esto es lo que hay que conseguir a grandes rasgos xD

como alimentes el arduino con 12 lo revientas. Yo he puesto un buck de 12V a 5V para tener la tension de alimentacion del arduino, pero al ser poca corriente la necesaria se puede hacer con un regulador lineal (LM7805 o los nuevos que no se como se llaman), de los que se pueden pedir muy facilmente samples gratuitos por cierto.

Si en tu caso usas como driver los pares darlington, tendras que añadir unas resistencias para polarizar los transistores, habria que ahcer un calculillo, pero no es complicado en absoluto.

Por cierto, creo que con uno solo de esos integrados que has comprado te vale xD

3 respuestas
goyetus

#268 jajjaja, gracias tio. Me imaginaba que con uno me valdria, pero es que el precio minimo rozaba casi lo mismo en 1 que en 20 por culpa de los gastos de envio. (diferentes vendedores de ebay, rs, farnell, etc)

Antes he mirado en un par de tiendas de componentes electronicos de mi ciudad y para mi sorpresa no tenian (no se si es comun o no), asi que me he tirado a la piscina :P

Efectivamente, la idea es usar el driver que he pedido para la tira de leds. Sobre el tema del buck que me indicas, ni idea, jejejeje, yo solo he visto que en los manuales enganchan directamente ese adaptador a la placa y poco mas (pero como estoy pez, fijo que llevas razon).

Muchisimas gracias por tan detallado esquema, ya me lo he guardado :)

1 respuesta
gonya707

#269 buck y boost son conversores de tensión. un buck es para abajo y un boost es para arriba xD. En tu caso lo suyo seria usar un buck que te convierta 12V a 5V simplemente. Tambien estan los integrados LM7805 que les metes cualquier cosa superior a 7V y te sacan 5V.