Autor Tema: Proyecto telecontrol y telemonitoreo.  (Leído 3896 veces)

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

Desconectado alcarruz

  • PIC10
  • *
  • Mensajes: 5
Proyecto telecontrol y telemonitoreo.
« en: 15 de Enero de 2010, 08:05:01 »
Hola, les cuento que acabo de terminar un prototipo de mi página web donde todo el que quiera puede desarrollar el telemonitoreo y el telecontrol.

En el fondo es un microcontrolador que conectas al PC a través del puerto USB y al registrarte puedes comandar tu dispositivo desde cualquier parte del mundo que tenga internet.

Por el momento cuenta con 5 entradas digitales y 5 salidas digitales, pero pronto espero aumentarlas para tener un mayor alcance, además de agregar entradas análogas.

Se requiere un minimo de conocimiento en microcontroladores para poder interactuar con la interface.

La página es www.toolsdistance.com, cualquier duda escribanme a mi correo alcarruz@gmail.com.

El código del PIC, que puede ser modificado para usar cualquier otro microcontrolador incluso de otra marca, es el siguiente:

#include <16f88.h>
#fuses HS,NOPROTECT,WDT,NOLVP
#use delay(clock=20000000)
#use rs232(baud=9600, xmit=PIN_B5,rcv=PIN_B2,ERRORS)
static char k[20],e[20];
char cadena;
signed int m,n=0;
int an0;
#int_rda
void serial_rda()
{
   cadena=getc();
   if (cadena=='A') m=0;
   if (cadena=='Z') n=1;
   if(n!=1) k[m]=cadena;
   putc(e[m]);
   m++;
   if(m>=20) m=1;
   //printf("%s",e);
   n=1;
}
main()
{
   setup_wdt(WDT_1152MS);
   enable_interrupts(GLOBAL);
   enable_interrupts(int_rda);
   e[0]=10;
   e[6]=13;
   //setup_adc( ADC_CLOCK_INTERNAL );
   //setup_adc_ports(sAN0);
   //set_adc_channel(0);
   while(1)
   {
      restart_wdt();
      //enable_interrupts(int_rda);
      //printf("%s",e);
      if(n==1){
         //disable_interrupts(int_rda);
         if(m==7&&k[0]=='A'){
         //if(k[0]=='A'){
            if(k[1]=='s') output_high(PIN_B0);
            if(k[1]=='n') output_low(PIN_B0);
            if(k[2]=='s') output_high(PIN_B1);
            if(k[2]=='n') output_low(PIN_B1);
            if(k[3]=='s') output_high(PIN_B3);
            if(k[3]=='n') output_low(PIN_B3);
            if(k[4]=='s') output_high(PIN_B4);
            if(k[4]=='n') output_low(PIN_B4);
            if(k[5]=='s') output_high(PIN_B6);
            if(k[5]=='n') output_low(PIN_B6);
         }
         n=0;
      }
      //an0=read_adc();
      if(input(PIN_A0)) e[1]='s';
      else e[1]='n';
      if(input(PIN_A1)) e[2]='s';
      else e[2]='n';
      if(input(PIN_A2)) e[3]='s';
      else e[3]='n';
      if(input(PIN_A3)) e[4]='s';
      else e[4]='n';
      if(input(PIN_A4)) e[5]='s';
      else e[5]='n';

      //delay_ms(500);
   }
}


Saludines

Desconectado alcarruz

  • PIC10
  • *
  • Mensajes: 5
Re: Proyecto telecontrol y telemonitoreo.
« Respuesta #1 en: 26 de Enero de 2010, 14:19:20 »
Estimados, les informo que la tarjeta Arduino, desdwe ahora es compatible con el sistema. Solo es cosa de cargar el siguiente código y listo.

Vamos adelante con el telecontrol y el telemonitoreo.

int i=0;
int RA0 = 4;
int RA1 = 5;
int RA2 = 6;
int RA3 = 7;
int RA4 = 8;
int RB0 = 9;
int RB1 = 10;
int RB2 = 11;
int RB3 = 12;
int RB4 = 13;
char k[20],e[20];
char cadena;
int m,n=0;
void setup() {
   Serial.begin(9600);   // opens serial port, sets data rate to 9600 bps
        e[0]=10;
        e[6]=13;
        pinMode(RA0, INPUT);
        pinMode(RA1, INPUT);
        pinMode(RA2, INPUT);
        pinMode(RA3, INPUT);
        pinMode(RA4, INPUT);
        pinMode(RB0, OUTPUT);
        pinMode(RB1, OUTPUT);
        pinMode(RB2, OUTPUT);
        pinMode(RB3, OUTPUT);
        pinMode(RB4, OUTPUT);
}
void loop() {
   if (Serial.available() > 0) {
           cadena=Serial.read();
          if (cadena=='A') m=0;
          if (cadena=='Z') n=1;
          if(n!=1) k[m]=cadena;
          Serial.print(e[m]);
          m++;
          if(m>=15) m=1;
        }
        if(n==1){
         if(m==7&&k[0]=='A'){
            if(k[1]=='s') digitalWrite(RB0, HIGH);
            if(k[1]=='n') digitalWrite(RB0, LOW);
            if(k[2]=='s') digitalWrite(RB1, HIGH);
            if(k[2]=='n') digitalWrite(RB1, LOW);
            if(k[3]=='s') digitalWrite(RB2, HIGH);
            if(k[3]=='n') digitalWrite(RB2, LOW);
            if(k[4]=='s') digitalWrite(RB3, HIGH);
            if(k[4]=='n') digitalWrite(RB3, LOW);
            if(k[5]=='s') digitalWrite(RB4, HIGH);
            if(k[5]=='n') digitalWrite(RB4, LOW);
           }
           n=0;
        }
        if(digitalRead(RA0)) e[1]='s';
        else e[1]='n';
        if(digitalRead(RA1)) e[2]='s';
        else e[2]='n';
        if(digitalRead(RA2)) e[3]='s';
        else e[3]='n';
        if(digitalRead(RA3)) e[4]='s';
        else e[4]='n';
        if(digitalRead(RA4)) e[5]='s';
        else e[5]='n';
}

Exito

Desconectado MGLSOFT

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: Proyecto telecontrol y telemonitoreo.
« Respuesta #2 en: 26 de Enero de 2010, 15:43:51 »
A ver si entiendo:
Desde tu pagina WEB yo puedo controlar una placa que a su vez deberia estar conectada por puerto serie (o USB con chip FTDI) a mi PC que debe estar conectada a Internet??

Es asi o me equivoco??
No explicas demasiado como es el tema.

Por otro lado opino que este tema es para el subforo de proyectos.
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado alcarruz

  • PIC10
  • *
  • Mensajes: 5
Re: Proyecto telecontrol y telemonitoreo.
« Respuesta #3 en: 26 de Enero de 2010, 16:02:52 »
Hola... Es como tú dices.

Si conectas tu Arduino, AuxBoard u otro PIC que que se conecte al PC a través del chip FTDI  a la página de toolsdistance, podrás a traves de internet encender o apagar los pines digitales del micro y también podrás leer las entradas digitales que dispongas según cada firmware que se encuentra en la misma página.
Todo esto es gratuito, sin costo alguno. Vá dirigido a todo el que quiera hacer telecontrol y telemonitoreo.

La página es nueva, así que aún tiene poco material, pero de a poco la estoy enriqueciendo para la mejor experiencia del usuario.

Espero te sirva, cualquier duda me avisas.

PS: No sabía donde postear este tema, por eso lo hice en esta sección.

Exito en sus proyectos

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Proyecto telecontrol y telemonitoreo.
« Respuesta #4 en: 26 de Enero de 2010, 16:16:22 »
Suena interesante, aunque no acabo de entenderlo. ¿Cuál es la utilidad que pretendes que tenga?

Desconectado alcarruz

  • PIC10
  • *
  • Mensajes: 5
Re: Proyecto telecontrol y telemonitoreo.
« Respuesta #5 en: 26 de Enero de 2010, 16:38:19 »
Hola...

La idea es tener entradas y salidas digitales a distancia.
En el fondo sirve para activar señales digitales a través de internet, ya sea una ampolleta, un portón eléctrico y sistema de regadío, etc. Y poder leer señales digitales, como por ejemplo un sensor de movimiento, una alarma antiintrusion, un sensor de nivel, un sensor de sobrepaso de temperatura, etc.

Pronto espero incorporar lectura análoga, para las personas que usen este tipo de sensores.

Espero le sirva a alguien..

Exito

Desconectado micro_pepe

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3206
Re: Proyecto telecontrol y telemonitoreo.
« Respuesta #6 en: 26 de Enero de 2010, 19:28:57 »
Si lo he entendido bien, se necesita un PC constantemente conectado a internet para recibir los datos de la placa de monitoreo, no.

Si es asi, se debe tener en cuenta que un PC se puede "colgar".

Saludos
Se obtiene más en dos meses interesandose por los demás, que en dos años tratando de que los demás se interesen por ti.

新年快乐     的好奇心的猫死亡

Desconectado alcarruz

  • PIC10
  • *
  • Mensajes: 5
Re: Proyecto telecontrol y telemonitoreo.
« Respuesta #7 en: 26 de Enero de 2010, 19:46:25 »
Hola..

Sí, es a través de un pc, por lo que tiene sus pros y sus contras. La idea es que también se puede operar del pc donde esta el hardware. Pero tienes razón, se puede "colgar" si el pc falla....

Exito

Desconectado rroque

  • PIC12
  • **
  • Mensajes: 68
Re: Proyecto telecontrol y telemonitoreo.
« Respuesta #8 en: 12 de Mayo de 2010, 20:12:01 »
Uhm alcarruz, esta idea es interesante .. es gracioso a mi se me ocurrio lo mismo y lo ejecute para un control de monitoreo de nivel con ultrasonido y control de bombas, de hecho que con una computadora comun y corriente se llegue a colgar por lo que toda la informacion que recibia se iba a un servidor y de ahi recien a una tarjeta para la comunicaciones.
Esa tarjeta que utilice se llama Alix con un procesador AMD la programacion entera no la hice en el micro sino en el procesador con lenguaje perl y recien el micro lo utilizo como interface para activar contactores u otras cosas, bueno esa fue mi experiencia que la mejore.

Solo te digo que sigas adelante y sigue investigando.

Saludos desde arequipa-peru