top of page

Primer Sistema Domótico

  • Jebus
  • 29 sept 2015
  • 3 Min. de lectura

Buen día a todos, en esta entrada veremos una aplicación que contendra dos formularios en VS2010, el desarrollo de estos programas en Python queda temporalmente detenido por cuestiones de tiempo, pero si o si implementaremos todos estos programas en mi lenguaje favorito :)


Descripcion del programa a grandes rasgos (VS2010):


En el anterior programa aunque funcional se pudo observar que dependiamos del nombre puerto de comunicación Serial y este es asignado por el S.O. lo que nos hacia antes de ejecutar la aplicación verificar que concordaran los nombres del puerto en el programa y en el sistema para evitar problemas, esto es bastante tedioso ya que en una aplicación final un usuario final se espantaria al tener que hacer todo este proceso lo que hace al software en sí poco y nada óptimo, asi que vamos a optimizar este proceso con un nuevo programa.


- Creando un formulario que detecte y muestre los puertos seriales disponibles.


Primero que todo vamos a generar un nuevo proyecto en el cual su primer formulario nos buscará y nos listará en un "ComboBox" todos los puerto seriales disponibles en el equipo, para esto simplemente en el formulario haremos que un boton busque y agrege cada puerto, después tendremos la opción de elegirlo y conectarnos a él (que no es lo mismo), adicional tendra un botón para enviar por medio de una caja de texto carácteres al dispositivo que esté conectado a este puerto, en este caso el PIC 16F877A, tendremos además una caja de texto desabilitada pero visible para poder visualizar los datos recibidos desde el PIC, esto solo es para testear que la comunicación entre ambos es funcional.


En la siguiente imágen mostraré como queda el primer formulario totalmente funcional:


*Elaboración propia

La segunda parte del proyecto será tomar una imagen de la distribución de un apartamento internamente colocar distribuidamente una imagen de "Leds" para simular la iluminación y unos botones que simulen los interruptores tipo pulsador por cada Led.


El funcionamiento de este segundo formulario es que ya sea por software o por hardware (accionando el pulsador) se debe encender el respectivo led físico y además simularlo en el software, con este funcionamiento básico se puede controlar la iluminación de un hogar real desde un computador en este caso.


- El Hardware


Para el hardware usaremos el mismo circuito que se utilizó en la secuencia de leds de la entrada anterior así que no entraré en detalles ya que hasta la simulación hecha en proteus nos servira para este ejemplo solo que no usaremos el puerto B.


- El programa en CCS para el PIC


Tal vez la parte que más se me dificultó fue hacer que el microcontrolador estuviera atento a las entradas del puerto A (donde se encuentran los pulsadores) y que si detectaba un cambio en la entrada RS232 hiciese lo que debería hacer con la instrucción recibida sin utilizar interrupciones ya que por el momento no las sé usar, para encontrar la solución a este percance me dirigí al manual de CCS que está disponible en la página del desarrollador y despues de leer varias opciones de entrada de caracteres encontré la que desde un principio pudo evitarme 6 largas horas de pruebas con sentencias cíclicas While e IF - Else, el comando en cuestión era Kbhit() con esta instruccion pude evocar el metodo que dirigiera al microcontrolador para que hiciese lo que el computador mandaba y si no había cambio en el puerto simplemente estuviera pendiente del Puerto A.


- El segundo formulario en VS2010


Para el formulario número dos del mismo proyecto la lógica programacional fue bastante sencilla, simplemente creando un modulo en el proyecto y creando unas variables globales pude enviar datos desde un formulario al otro, asi puedo supervisar lo que recibe y envía el computador al PIC sin tener que cerrar el formulario de búsqueda y selección de puerto, la mayoria de la descripción del proyecto esta en el archivo fuente del proyecto.


Aqui podrám ver una imagen de como quedó el proyecto en tiempo de ejecución en VS2010.


*Elaboración propia con imagen tomada de: http://mimansion.com/m/proyectos-floridablanca-16.html



Enlace de descarga:


Ahí encontraran el codigo fuente en CCS del Microcontrolador y el proyecto en VS2010.


Creo que es todo por el momento, animo a los que visitan este blog si tienen alguna duda, queja o comentario lo dejen tranquilamente, y asi mejorar en los aspectos en los que pueda fallar.


 
 
 

Comments


© 2023 by BI World. Proudly created with Wix.com

  • Facebook Basic Black
  • Twitter Basic Black
  • YouTube Basic Black
bottom of page