Autor Tema: PHP, puerto rs232 y PIC  (Leído 44278 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3143
PHP, puerto rs232 y PIC
« en: 01 de Febrero de 2007, 05:39:57 »
¿Alguien ha tenido alguna experiencia accediendo mediante PHP/ASP/Perl al puerto serie para comunicarse a través de Internet con algún dispositivo construido con un PIC ?

He visto que existe una librería francesa http://www.phpcs.com/code.aspx?ID=36224, y otra de pago (http://www.easyvitools.com/) (ésta Web ofrece otras herramientas muy interesantes), y quizás también pueda utilizarse directamente la librería dio (http://pecl.php.net/package/dio).

Estoy planeando realizar alguna aplicación sencilla de este tipo, que permita su gestión remota a través de una página Web.

Por ejemplo, hace algún tiempo, vi en la tele un proyecto que permitía a niños ingresados en hospitales de todo el mundo cuidar unas plantas a través de una página web. Pulsando botones podían regarlas, encender una luz, abonarlas, ... y veían los resultados a través de una Web Cam.

Yo lo enfocaría más a temas de domótica.

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5416
    • Picmania by Redraven
Re: PHP, puerto rs232 y PIC
« Respuesta #1 en: 01 de Febrero de 2007, 05:53:16 »
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3143
Re: PHP, puerto rs232 y PIC
« Respuesta #2 en: 01 de Febrero de 2007, 10:10:23 »
Muy bueno RedPic. Hacía mucho que no me pasaba por tu Web; está genial.

Los Tibbo también los consideré al principio, pero no sabía que había un modelo que incluía el conector RJ45.

Ahora que lo sé me pondré a investigar de nuevo sobre ellos. Algunas dudas que tenía sobre ellos son (no son para que me las contestes, sino para dejar constancia):

1. ¿Cómo se envía un comando desde una página Web al Tibbo? ¿Imagino que se utilizarán algunos comandos especiales, pero no encuentro cuáles?

2. ¿Podría el Tibbo devolver información a la página Web? Por ejemplo, si pulso un botón en la página Web se enciende un bombilla en el dispositivo PIC conectado al Tibbo, pero si la bombilla está fundida y el dispositivo PIC puede detectarlo ¿es posible devolver esta información a la página Web?

Seguiré informando (preguntando)...

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5416
    • Picmania by Redraven
Re: PHP, puerto rs232 y PIC
« Respuesta #3 en: 01 de Febrero de 2007, 10:48:02 »
Si, a todo. La pagina que estas viendo interactua con el PIC a través del Tibbo EM202. Le mando qué boton he pulsado y la página cambia dependiendo de lo que haga el PIC con la orden que le he enviado. Y todo desde un Navegador de Internet. El PIC-EM202 es realmente lo que dice arriba: Un Web Server.
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3143
Re: PHP, puerto rs232 y PIC
« Respuesta #4 en: 01 de Febrero de 2007, 12:23:49 »
Lo del Tibbo ya lo tengo medio claro; gracias RedPIC (se me han puesto los dientes largos al ver la foto de lo que has recibido hoy).

Siguiendo mi anterior línea de investigación (control directo mediante PHP de la aplicación PIC conectada al puerto serie), he encontrado el siguiente enlace, que aunque está referido al puerto paralelo, despeja algunas dudas y me demuestra que es posible la segunda parte de lo que yo quería hacer: AJAX/Macromedia FLASH+PHP+(programita DOS de acceso al puerto)+PIC.

Seguiré informando.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 17506
    • MicroPIC
Re: PHP, puerto rs232 y PIC
« Respuesta #5 en: 03 de Febrero de 2007, 08:10:46 »
Juanfe, podrías considerar acometerlo con un 18F6621 que ya trae ethernet integrado.

Y si quieres parte del trabajo ya hecho, mira qué baratita está esta placa:
http://microcontrollershop.com/product_info.php?products_id=893

Un saludo desde Sevilla, España.
Visita MicroPIC                                                                                        ɔ!doɹɔ!ɯ ɐʇ!s!ʌ

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3143
Re: PHP, puerto rs232 y PIC
« Respuesta #6 en: 03 de Febrero de 2007, 16:46:15 »
Muchas gracias a todos por sus consejos.

Para este proyecto en concreto necesito una solución muy básica (lo del tibbo y la plaquita que me propone Nocturno, me lo guardo para soñar en nuevos proyectos), que incluso un niño sea capaz de armar, y que sea completamente libre (no se puede comprar nada que no sean los componentes electrónicos por separado).




Siguiendo con mis pesquias he acabado en la página de Arduino, que ofrece placas de interfaz serie y usb basadas en ATMEL. Les incluyo el enlace pq me ha parecido de gran interés: te da instrucciones, los archivos Eagle, el firmware, tutoriales para conectar con sensores, e incluso un sencillo programador ATMEL.




Creo que combinando estas placas (o diseñando una yo mismo basada en PIC) con el programilla serproxy, del que también hay información en la página anterior conseguiré comunicame mediante PHP.

Seguiré informando...

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3143
Re: PHP, puerto rs232 y PIC
« Respuesta #7 en: 03 de Febrero de 2007, 17:47:33 »
Otro conversor ethernet-serial por software que puede ser interesante: SerialServer

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3143
Re: PHP, puerto rs232 y PIC
« Respuesta #8 en: 04 de Febrero de 2007, 16:16:37 »
¡Prueba superada  :-/!

He logrado acceder remotamente a través de Internet a un ordenador en el que tengo instalado WAMP+serproxy+PHP+DynDNS y al que está conectado en el puerto serie un PIC+LED (mediante un MAX232).

Este primer experimento ha sido muy simple (y más fácil de lo que esperaba). La comunicación es perfectamente bidireccional: pulsas un botón en una página Web y se enciende el LED en el ordenador host, que te devuelve un mensaje indicando que la operación se ha realizado correctamente. Vuelves a pulsar el botón, el LED se apaga y recibes otro mensaje generado por el PIC.

La única limitación que encuentro de momento es que la comunicación, pese a ser bidireccional, debe ser siempre iniciada por el PC (el PIC sólo puede responder cuando se le pregunta previamente); no obstante, esto no me preocupa demasiado, pues podría resolverse instalando un demonio en el ordenador host que estuviera permanentemente escuchando el puerto serie o paliarse aplicando AJAX en el ordenador remoto.

Precisamente empezaré investigando la opción de AJAX.

Lo que más me ha sorprendido de esta solución es que sólo he necesitado 1 PIC, 1 MAX232, 4 condensadores, 1 resistencia y 1 LED.

Seguiré informando...

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 17506
    • MicroPIC
Re: PHP, puerto rs232 y PIC
« Respuesta #9 en: 04 de Febrero de 2007, 16:22:16 »
Lo que más me ha sorprendido de esta solución es que sólo he necesitado 1 PIC, 1 MAX232, 4 condensadores, 1 resistencia y 1 LED.

Seguiré informando...
Se te ha olvidado un componente muy importante: un PC esclavo :D
Un saludo desde Sevilla, España.
Visita MicroPIC                                                                                        ɔ!doɹɔ!ɯ ɐʇ!s!ʌ

Desconectado vicent

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 144
    • Web de Vicent
Re: PHP, puerto rs232 y PIC
« Respuesta #10 en: 13 de Febrero de 2008, 11:31:50 »
Hace un año de esto, pero supongo que aún lo tendrás por ahí.

Me gustaría que colgaras lo que tienes de esto, sobre todo la parte en que php se comunica con el puerto serie.
Tengo en mente hacer como proyecto de final de carrera una casa domótica, controlada por una interfaz web. El caso es que me vendría bien tener algo sobre lo que trabajar en cuanto al tema de comunicación de php con puerto serie, aunque mi idea es conectarlo por el puerto USB, pero si veo que se complica mucho, lo haría por el serie.

El proyecto es para el año que viene, pero me gustaría ir mirando ya cosas, e ir haciendo lo que pueda.

Muchas gracias.
Un saludo. Au.

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3143
Re: PHP, puerto rs232 y PIC
« Respuesta #11 en: 13 de Febrero de 2008, 11:59:33 »
Hola vicent, aquí lo tienes todo www.villatic.org/carpetaJuanfe/PHP_RS232.rar:
  • Programa en Basic para el PIC que contesta con un hola, un adiós o cambiando el estado de un LED en función del valor recibido desde el PC
  • Script php que envía un valor a través de la variable $string al PIC
  • Esquemas electrónicos y plantillas para el PCB
  • El programa serproxy

Cuando investigué el tema no había ninguna librería gratuita para acceder desde PHP al puerto USB. Si ahora encuentras alguna, no te olvides de comentármelo. Gracias.

Desconectado vicent

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 144
    • Web de Vicent
Re: PHP, puerto rs232 y PIC
« Respuesta #12 en: 13 de Febrero de 2008, 13:49:13 »
Muchas gracias Juanfe.

Cosas a tener en cuenta:

Yo programo los pics con CCS C, así que el código del pic lo debería de reescribir, pero vamos, me lo esperaba, porque como lo quería hacer con USB, eso lo tenía asumido.
El script en PHP es simple, lo cual me gusta, pero he visto que usas serproxy. Me he descargado una versión para linux, ya que mi servidor funciona con Debian y lo he compilado sin problemas en el de sobremesa, que tiene OpenSuse 10.2. El servidor es un Pentium III a 500 o 600 MHz y creo que 128 MB de Ram, no me acuerdo, porque como va como un tiro, no me preocupo mucho por él, jejejeej.

La idea es recibir peticiones de la red interna a un script PHP (o CGI, pero me gusta más PHP) y que este se comunique con el demonio servidor (como el serproxy), pero debería también programarlo yo, puesto que no creo que pueda utilizar ese software para el PFC, ya que no es software libre, y podría tener problemas con la licencia.

En breve abriré un nuevo tema en proyectos para ir mostrando los avances.
Ya os digo que no tengo prisa, así que haré avances poco a poco, por lo pronto tengo que acabar los exámenes, que me quedan 2 el viernes, :(

Un saludo. Au.

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3143
Re: PHP, puerto rs232 y PIC
« Respuesta #13 en: 13 de Febrero de 2008, 14:00:05 »
Hola vicent, serproxy es freeware y open-source.

Programar un demonio de este tipo para el puerto serie no sería muy complicado, pero hacerlo para el puerto USB... no me atrevo a aventurarme.

Suerte

Desconectado vicent

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 144
    • Web de Vicent
Re: PHP, puerto rs232 y PIC
« Respuesta #14 en: 13 de Febrero de 2008, 14:08:12 »
Citar
serproxy es freeware y open-source.
De verdad, que estoy un poco espeso, debe ser por los exámenes, porque no es normal lo mío. ¡¡Si lo he compilado!! y no he sido consciente que tenía el código fuente disponible, jajaj.
Efectivamente, mirando la licencia es GPL, supongo que lo podría utilizar en el PFC.

Respecto a lo del puerto USB, si lo configuro para puerto serie virtual, no creo que haya mucha diferencia, ya que según tengo entendido, un puerto USB virtual funciona igual (o prácticamente) que uno serie.

Bueno, no quiero "ensuciarte más el post", a ver si luego tengo un rato y creo un tema con mi idea.

Gracias, una vez más.

Un saludo. Au.


 

anything