Go Down

Topic: Pregunta (Read 1 time) previous topic - next topic

shuji

Bueno mi pregunta es muy simple necesito enviar y recibir datos pero hasta donde he visto arduino funciona a 5v y yo necesito recibir y enviar datos entre 10v a 15v ¿Arduino lo soporta o necesito hacer algun circuito?

Eduardo_g

#1
Aug 28, 2009, 11:28 am Last Edit: Aug 28, 2009, 11:57 am by Eduardo_g Reason: 1
No deberías intentar manejar el Arduino con esas tensiones. Las opciones a manejar dependen del numero de entradas/salidas que quieras manejar con esas tensiones.
Si es una o dos, con una resistencia y un zenner para la entrada, y un transistor para la salida lo solucionas.
Si quieres manejar varias SALIDAS, puedes usar un controlador de relés tipo ULN2803 y para las entradas lo mismo de antes, zenner.
Si quieres manejar varias patas de manera que todas puedan ser entrada/salida tendrás que buscar algun integrrado dedicado, en concreto puedes mirar el CD40116, convierte cualquier señal de hasta 12.5v en otra inferior, tiene 8 canales.
El PDF en http://pdf1.alldatasheet.com/datasheet-pdf/view/113329/HARRIS/CD40116.html

Saludos

Imagina

hola,

Si lo que quieres es controlar algun dispositivo (todo/nada) con un relé tendrias lo que quieres... (ejemplo:  encender una luz, mover un motor), por cierto con el relé tambien te quitas el problema del consumo...

Pero en tu pregunta dices "Comunicar" eso sería distinto, lo que necesitas es un "Logic Level Converter" esto te permite comunicar entre dos equipos que utilizan voltajes distintos, aqui tienes un ejemplo de lo que tienes que buscar, pero este es para comunicar entre 3v3 y 5v por lo tanto no te servirá... simplemente es una orientación... (no se si existen para 5v y 15v)

http://www.sparkfun.com/commerce/product_info.php?products_id=8745

Un Saludo,

DojoDave

Si se trata de un puerto serie que te envia datos, puedes usar un MAX232, que permiten conectar dispositivos de bajo voltaje a puertos serie de 12V (seguro que puedes estirarlo hasta 15). Sino, tienes la opcion de hacerte algo con transistores o con optoacopladores.

/d

Eduardo_g

Cuidado porque por lo que entiendo de la pregunta, los niveles de la parte de 15v serían 0-15v, y un puerto serie es -15 /+15, es decir, el valor lógico bajo en RS232 no es 0v sino un valor negativo, dependiendo de lo que se quiera manejar esto puede ser contraproducente.
Además para la entrada igual, si el dispositivo de entrada a 15v está dando un valor lógico bajo con 0v, esto en protocolo RS232 sería un estado indeterminado

DojoDave

Mahatma: http://circuitlake.com/wp-content/uploads/2008/05/2tr.gif es otra posibilidad. Ahi te lo puedes hacer con transistores.

Eduardo_g: estoy de acuerdo, sin embargo por la forma de la pregunta parece que Mahatma esta hablando de un puerto serie, aunque puedo estar equivocado

Mahatma: para salir de dudas, podrias hacer un dibujo?

/d


shuji

#6
Sep 01, 2009, 02:08 am Last Edit: Sep 01, 2009, 03:20 am by shuji Reason: 1
Gracias me orientaron bastante en mi duda y en realidad es que tengo un sistema que entrega variasiones de V y necesigo guardarlas en mi Pc aunque lo del puerto serie igual me dio muchas ideas pero ahora tengo otro problema y es que necesito guardar los datos de entrada del adruino, para ser mas especifico necesito guardar la variación del voltaje con respecto del tiempo a unos 300 o 500 muestras por segundo o lo máximo posible.
Lo que no se si es posible guardar los datos directamente en el computador o cuales son las limitaciones reales que tengo.
lo otro es que mi placa arduino es via USB.

DojoDave

Tendras que tomar muestras en un array de datos y enviar la informacion en paquetes de vuelta al ordenador a la maxima velocidad posible. Para evitar la perdida de datos, te recomiendo que uses el puerto serie a 57600. Los arrays los puedes hacer de 1024 posiciones e ir contando cuantos datos llevas almacenados.

Lo unico es que posiblemente perderas sincronismo al enviar tantos datos de golpe, por lo que podrias estudiar como de pequeños tienen que ser los paquetes de datos para no perderlo.

/d

shuji

o en su caso seria mas rapido instalarle una SD al arduino para guardar los datos directamente en el y luego leerlos aparte, es que he estado viendo algunos post sobre la instalación de sd al arduino pero lo fundamental es que necesito guardar muchos datos por segundo y no se como lograrlo.

o si lo intentara hacer como multitarea aunque no se me ocurre bien el como quisas gane algo de tiempo.

Go Up