¿Aún no conoces AMA?

Hazte socio de Acuariofilia Madrid Asociación.
ABIERTO EL PLAZO DE INSCRIPCIÓN: DEL 1 AL 15 DE JUNIO.

Más info
image01

Atlas de peces de AM

¡Hemos alcanzado las 800 fichas! Visita nuestro atlas de peces actualizado.

Más info
image01

Cardúmenes y sociabilidad

Nueva actualización de la tabla con una extensa relación de peces, donde podrás conocer qué entorno necesita cada especie, su sociabilidad y si convive o no en cardumen. ¡Pasa a descubrirla!

Mas info
image01
Aula Arduino para principiantes.
Respuestas: 1783    Visitas: 439449
#1,036
(23-01-2015, 03:44 PM)checha escribió: Antonio me puedes hacer el favor de darme la información mas escueta, es que tengo la cabeza como un bombo y no saque nada claro.
La botonera no tengo que hacerla ya que tengo una de arduino solo necesito el programa para cambiar fecha y hora manualmente.
Muchas garcias por tu ayuda.
Mi software se entiende con mi botonera y adaptándola tambien con alguna otra. Necesitaria saber su la botonera que vas a usar, irá conectada a un solo pin analógico de entrada. Si usa varios pins digitales para la botonera no se podrá aprovechar para esto.

De todas formas montar 5 botones y 5 resistencias es algo muy simple.

(23-01-2015, 02:42 PM)doblej escribió: La aplicacion que comento es XDK de desarrollo de intel , no te mete publicidad ni nada. https://software.intel.com/es-es/html5/tools

Con esta aplicacion puedes , o cargar tu web (php,jscrip,json, se come todo) y te lo convierte en apk directo , o bien te lo puedes crear directamente ( un pintaventanas muy bueno para gente que no quiera estar de lios).
Yo es la que he usado es rápida y cómoda.

Sinceramente lo que hice yo es bajarme una plantilla de Bootstrap , http://startbootstrap.com/template-overv...b-admin-2/ , esa en concreto que es gratuita y ya tienes todas las gráficas, solo le das formato y lo tienes responsive para todo los dispositivos.(El bootstrap , para los que no lo sepan , se cambia de tamaño para los moviles y tabletas , y en la plantilla viene todo).

Es verdad que la mayorias de las Wifi , vienen en shield , pero bueno alguna habra que sea separada.

Casi todas las cosas simples de hacer y que aun no conozco vienen explicadas en ingles y hasta que encuentro la información adecuada en Español y me lo estudio me lleva un tiempo.

Las posibilidades que se me ocurren son tres:

1) Aplicacion Web --> cgi --> Serial --> Arduino
2) Aplicacion Web + php --> BB.DD. --> Python --> Serial --> Arduino.
3) Aplicación Web + php --> Serial Arduino.

La tercera forma no la he usado nunca y aunque en teoría sea posible, podría no ser factible usando XDK salvo que usemos Arduino Galileo que también es de Intel.

Lo que se necesita hacer es una pantalla con un menú y que al pinchar en una opción se pueda enviar al Arduino una cadena de texto con un comando. Tambien es necesario poder leer la información generada por Arduino.

En estos momentos me gustaría saber como de trivial resultaría realizar un ejemplo concreto. Este podría ser una aplicación que:

1) Pida la hora a Arduino por puerto serial (usb).
2) Que reciba la hora de Arduino por puerto serial (usb).
3) Que muestre la hora.
4) Que solicite introducir la nueva hora y ...
5) Que la envíe a Arduino.
#1,037
He encontrado esto: Control an Arduino with PHP

Posibilidades para hacer aplicaciones Web en efecto hay muchísimas pero he trabajado poco en estos temas. En PHP he hecho algo con BBDD. Concretamente una BBDD de fichas de peces.

Estoy mirando XDK, pero me estoy mareando con tanta información y seguramente lo que sería más útil para mí puede que no lo esté localizando. Estas cosas llevan tiempo.

Todos estos temas los tendré que investigar en su momento porque ahora tengo un montón de cosas a medio hacer y quiero terminarlas.
#1,038
(21-01-2015, 02:22 PM)checha escribió: Hola estoy haciendo un proyecto con arduino uno. Es un reloj en tiempo real con rtc tiny y una pantalla lcd.
El programa del reloj esta funcionando perfectamente pero necesitaba cambiar la hora manualmente y por mas que busco no encuentro nada. La hora la necesito cambiar con un mando ir pero bueno esto es lo de menos, donde ando perdido es como se puede cambiar la hora manualmente.
Me registre en este foro porque vi a Antonio que esta ayudando a otros principiantes, haber si con un poco de suerte me puede echar una mano.

Acabo de coger mi proyecto CAO1 y le he suprimido toda la funcionalidad salvo mostrar la hora y la fecha, y los menús de puesta en hora y fecha.
Lo estoy probando. De momento parece que funciona perfectamente.
Aún no lo voy a subir, pero ya tienes lo que necesitabas.
Mañana lo revisaré un poco más y lo documentaré.
#1,039
(25-01-2015, 10:39 PM)Antonio Castro escribió:
(21-01-2015, 02:22 PM)checha escribió: Hola estoy haciendo un proyecto con arduino uno. Es un reloj en tiempo real con rtc tiny y una pantalla lcd.
El programa del reloj esta funcionando perfectamente pero necesitaba cambiar la hora manualmente y por mas que busco no encuentro nada. La hora la necesito cambiar con un mando ir pero bueno esto es lo de menos, donde ando perdido es como se puede cambiar la hora manualmente.
Me registre en este foro porque vi a Antonio que esta ayudando a otros principiantes, haber si con un poco de suerte me puede echar una mano.

Acabo de coger mi proyecto CAO1 y le he suprimido toda la funcionalidad salvo mostrar la hora y la fecha, y los menús de puesta en hora y fecha.
Lo estoy probando. De momento parece que funciona perfectamente.
Aún no lo voy a subir, pero ya tienes lo que necesitabas.
Mañana lo revisaré un poco más y lo documentaré.
Mi botonera solo usa un pin de entrada, lo que pasa que no pone ni marca ni modelo.
Para la entrada solo voy a usar un pin digital el numero 2 ya que quiero hacer una interrupción cada vez que accione el mando y para eso tiene que estar conectado en el pin 2 o 3.
Muchas gracias.
#1,040
Checha, lo puedes hacer con interrupciones, pero no es necesario en este caso. El cuerpo principal del programa va a refrescar una vez por segundo el LCD y mientras tanto tiene tiempo sobrado para atender la botonera. La lectura de la endrada es muy rápida.

Si tu botonera solo usa un pin de entrada, estoy casi seguro que servirá. No necesito saber marca y modelo. Basta con usar un programa para nos diga los valores que va a entregar cada boton y para eso me he currado hoy un programa que hace eso y más cosas.

Tienes que usarlo para averiguar el valor de lectura asociado a cada botón.

.zip   EstadisticasAnalogRead.zip (Tamaño: 4.48 KB / Descargas: 11)

Es un Zip. Descomprimelo y situa la carpeta dentro de tu carpeta Sketchbook y desde el IDE vas a Sktechbook y lo compilas. Pregunta cualquier duda que tengas.
#1,041
Muchas gracias Antonio no se como agradecértelo.
Los valores de entrada te los paso el miércoles por la tarde ya que antes no creo que pueda .
Muchas gracias y un saludo.
#1,042
Lo del control de arduino por php echaré un vistazo que tiene buena pinta, parece tan fácil como abrir el puerto con fopen y escribir por él, igual que se haría en c. Entiendo que también se podría leer de él abriendo el puerto como lectura/escritura y leyendo los streams que lleguen.

En otro orden de cosas ya me están llegando piezas (se toman su tiempo) y me surgen algunas dudas. Los Tip141 se calientan mucho?? hay que ponerlos en un disipador? pondré varios sometidos a un máximo de 7A.
#1,043
hola se calientan un poco yo he puesto hasta 24 led de 3w en dos series 48v 700mA cada serie con lo que mas se calientan son con los leds de 10w 12v 1400mA siempre les pongo disipador los tip 122 tambien van bien en series mas pequeñas con menos voltaje o mA y son bastante mas baratos
#1,044
(27-01-2015, 04:49 PM)Agamenon escribió: Lo del control de arduino por php echaré un vistazo que tiene buena pinta, parece tan fácil como abrir el puerto con fopen y escribir por él, igual que se haría en c. Entiendo que también se podría leer de él abriendo el puerto como lectura/escritura y leyendo los streams que lleguen.

En otro orden de cosas ya me están llegando piezas (se toman su tiempo) y me surgen algunas dudas. Los Tip141 se calientan mucho?? hay que ponerlos en un disipador? pondré varios sometidos a un máximo de 7A.

Estoy viendo posibilidades interesantes en Python.
En linux abro un terminal con una sesion bash y voy al directorio /tmp (Puede valer otro directorio cuyo path sea accesible para el server). Luego tecleo el comando

python -m SimpleHTTPServer 8888

Simplemente con eso, Python me abre un servidor web en el puerto 8888. Para ver como funciona entro en el navegador y tecleo la IP de localhost y el puerto.

http://127.0.0.1:8888/

El navegador me muestra el contenido del directorio desde el cual arranqué el server y si selecciono una pagina html me la mostrará.

Python tiene muchas librerías para cada cosa. En lo relativo a estos temas tiene todas estas librerías:
https://docs.python.org/3/library/internet.html

Es un tema para mirarlo con calma y podemos continuar compartiendo ideas.

Solo puedo decir que desarrollar en Python me resulta bastante agradable. No es como C++, porque si bien tiene una gran potencia y versatilidad, es un lenguaje de bajo nivel en el cual los punteros, y otros detalles relativos a la arquitectura del hardware y del compilador lo acercan más a la máquina que al humano.

Nada que ver con Python. Este es un lenguaje para humanos. Yo creo que es un lenguaje ideal para aprender programación porque la curva de aprendizaje es mucho más suave. En las escuelas deberían enseñar a programar en lenguaje Python pero en algunas les enseñan a programar en C.

Es decir, les enseñan a odiar la programación.
#1,045
No digas eso de mi lenguaje C, que soy de los que aprendí con él y le tienes un cierto cariño, jejeje. Hombre me alternativa de aquella era Pascas, casi que agradecí enpezar por C.

De todas formas en las aulas yo empezaría directmente a enseñar programación orientada a objetos, se suele dejar como segundo plato y se empieza por la estructurada y luego la gente se acostumbra a progamar de forma estructurada incluso en Java o .Net perdiendo la ventaja que te dan los objetos.

Mira arduino no tendo, pero una maquina virtual con linux si. Voy a probar lo del Python que comentas a ver si puedo montar algo que se pueda acceder desde el movil.

Un saludo.
#1,046
Antonio he intentado usar el programa que me pasaste para leer el valor de cada pulsador y no he podido ya que me ha dado fallo al compilar.He usado las librerias que venían en el zip.
El serial 11,12 y 13 dice que no esta declarado, te recuerdo que uso arduino uno.
No obstante he usado un programilla que tenia por aqui y he sacado los valores.
Entrar en menu 0xBA45FF00
mode 0xB946FF00
menos 0xEA15FF00
mas 0xF609FF00
gracias por todo un saludo.
#1,047
(28-01-2015, 02:13 PM)checha escribió: Antonio he intentado usar el programa que me pasaste para leer el valor de cada pulsador y no he podido ya que me ha dado fallo al compilar.He usado las librerias que venían en el zip.
El serial 11,12 y 13 dice que no esta declarado, te recuerdo que uso arduino uno.
No obstante he usado un programilla que tenia por aqui y he sacado los valores.
Entrar en menu 0xBA45FF00
mode 0xB946FF00
menos 0xEA15FF00
mas 0xF609FF00
gracias por todo un saludo.

El programa debe compilar bien salvo que seleccionaras una placa equivocada en el IDE. Los valores que entregará el programa son valores entre 0 y 1023.
#1,048
(28-01-2015, 08:06 PM)Antonio Castro escribió:
(28-01-2015, 02:13 PM)checha escribió: Antonio he intentado usar el programa que me pasaste para leer el valor de cada pulsador y no he podido ya que me ha dado fallo al compilar.He usado las librerias que venían en el zip.
El serial 11,12 y 13 dice que no esta declarado, te recuerdo que uso arduino uno.
No obstante he usado un programilla que tenia por aqui y he sacado los valores.
Entrar en menu 0xBA45FF00
mode 0xB946FF00
menos 0xEA15FF00
mas 0xF609FF00
gracias por todo un saludo.

El programa debe compilar bien salvo que seleccionaras una placa equivocada en el IDE. Los valores que entregará el programa son valores entre 0 y 1023.

Rectifico. Blush

El programa tal como está dará error en los Arduino que no sean Mega. Se trata de un fragmento de código que olvidé que existía porque no he necesitado usar otro puerto Serial más que el de siempre.

Concretamente el fragmento ya modificado con un par de líneas para que te funcione sería este:

Código:
// **************************************************
// Permite mandar el Buffer al puerto Serial deseado.
// Pensado para Arduino Mega (Port==0 --> Serial)
// (Port==1 --> Serial1) ... (Port==3 --> Serial3)
// Si el puerto no está entre 0 y 3 no hará nada.
// Si la placa solo tiene un puerto serie no hará nada
// salvo que se indique el puerto 0.
// **************************************************
void PhMeter_SerialFmt::_Serial(int Port){
// Arduino Mega2560 && Arduino ADK
    switch(Port){
        case 0:
            Serial.print(_BUFF_MESG_SER_FMT);
            if (_Ln) Serial.println();
            break;
#if defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)  
       case 1:
            Serial1.print(_BUFF_MESG_SER_FMT);
            if (_Ln) Serial1.println();
            break;
        case 2:
            Serial2.print(_BUFF_MESG_SER_FMT);
            if (_Ln) Serial2.println();
            break;
        case 3:
            Serial3.print(_BUFF_MESG_SER_FMT);
            if (_Ln) Serial3.println();
            break;
#endif    
    }
}

He añadido dos líneas.

#if defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)
(( líneas conflictivas ))
#endif

Lo que hacen es evitar que las lineas de código entre esa primera que he puesto y la última sean compiladas en las placas que no sean Arduino Mega 1280 o Arduino 2560

Te contesté a bote pronto, pero con más tiempo lo probé en otra placa y vi donde estaba el problema. Lo habría visto al momento si hubieras trasladado el mensaje completo del error de compilación donde indica en que fichero y en que línea el compilador detecta el error, pero te estoy agradecido porque al igual que otros me hacéis un estupendo servicio de beta testers y los errores que soléis detectar con más frecuencia son los fallos de portabilidad.

Por eso he aprendido a usar ciertas macros que detectan en tiempo de compilación en que placa se está compilando el programa.

Ya corregiré el fichero que subí. Últimamente estoy algo limitado por un importante trancazo. (Como casi todo el mundo parece). Tú solo tienes que añadir esas dos líneas y si eso no funcionara, simplemente quitas las líneas conflictivas que están entremedias ya que en tu placa jamás tendrán utilidad.
#1,049
muchas gracias, ya lo pruebo mañana.Un saludo.
#1,050
Estupenda noticia.
Raspberry Pi 2, lanzamiento sorpresa -good.gif

Usuarios navegando en este tema: 6 invitado(s)


Salto de foro: