Monday, April 29, 2024

100 SIMULANDO SENSOR: Calor

100 SIMULANDO SENSOR: Calor

Ing. Honoria Reyes Macedo


INTRODUCCION   

Se trabaja con un proyecto de escritorio en Windows Form de .NET

 Entre los controles mas importantes que usa:

Un Button como apagador, en su evento Click() usa una variable llamada encendido para saber si esta apagado o encendido

Un Timer que se activa cuando se presiona el botón apagador. Permite mostrar los movimientos en su evento Tick()

Un Label que visualiza un contador cuando esta activo el Timer, con una variable conteo

Un TrackBar con limite inferior=10 y superior =400. Su uso es manual y representa el sensor que detecta calor. Usa su evento Scroll() y guarda su valor en una variable llamada lectura.

Un DataGrid para registrar lo que el TrackBar vale cada que se ejecuta el Timer, y el horario en que se ejecuta, el cual guarda en una variable llamada tiempo.

Un ProgressBar que varia de acuerdo a los cambios del TrackBar, con cambio de color

de acuerdo a un límite establecido en código.

 

* Cada control que se agregue tendrá sus propias propiedades(estilos): nombre, color, letra, tamaño,  y si se necesita texto también como los Labels.

* Cada control tendrá sus eventos al dar doble click sobre ellos como: Click(), Scroll(), Tick() o en la parte de propiedades en el icono eventos.

 

Antes de empezar se deben preparar imagenes del proyecto a usar y colores en RGB, y hexadecimal.

 

ACTIVIDADES   

1.- Crear proyecto en Aplicacion Windows Form(.NET Framework)

-         Usar el mnemónico para el nombre de su proyecto y sus iniciales




1.1 Controles a usar y sus propiedades - Ventana (Form)

En la propiedad Backcolor y FormBorderStyle

En caso de que no se vean las propiedades: Con el mouse derecho sobre la ventana Form seleccionar propiedades 



1.2 Crear folders en el proyecto

-         Data

-         Entity

-         Forms

-         img



1.3 Copiar imágenes pequeñas en el folder img con copy y paste 




1.4 Controles a usar y sus propiedades, arrastrar desde el cuadro de herramientas

       1.4.1 En todos poner su nombre en la propiedad Name: Como en el ejemplo del punto 1.4.2

       pnlLogin  (Nombre para el panel de arriba)

       pnlInfo  (Nombre para el panel de abajo)

       pictBoxLogo  (Nombre para el PictureBox)

       txtBoxUsuario (Nombre para TextBox del usuario)

       txtBoxPassword  (Nombre para el TextBox de la contraseña)

       btnAceptar  (Nombre para el Button Aceptar)

       lblUsuario  (Nombre para el Label del usuario)

       lblPassword (Nombre para el Label de la contraseña)

       lblInfo  (Nombre para el Label de Acerca del proyecto)




Nota: Si no esta abierto el cuadro de herramientas:



1.4.2 En la propiedad Text y TextAlign:

       de los Label y Button



1.4.3 En la propiedad BackgroundImage:

       del PictureBox



1.5 Agregar Button y en la propiedad Name: btnCerrar

        y BackgroundImage: agregar una imagen




1.6 Agregar evento click() a btnCerrar

Con doble click sobre btnCerrar




     
Nota: Se podrá cambiar el nombre del evento en la ventana de eventos



    Librerías que usará: Observa la linea con flecha amarilla, que indica el nombre del proyecto, punto y el nombre de la carpeta(Forms) que contendrá al formulario que se creara en el siguiente punto.
   

Compilar y ejecutar, cerrar con el botón del punto 1.5



2.- Crear un formulario llamado FrmPrincipal.cs en la carpeta Forms 






Observar lo subrayado amarillo (el nombre de la clase es el mismo nombre del constructor):




2.1 Controles a usar y sus propiedades, desde el cuadro de herramientas

- En la Ventana (Form)

En la propiedad Text =Nombre del proyecto


        2.1.1 Arrastrar un TabControl y agregar tres pestañas:

       Calor, Luz, Presión


2.1.2 En la pestaña de calor en la propiedad Name:   tabCalor y backcolor :elegir color




2.2 Controles a usar y sus propiedades, desde el cuadro de herramientas en tabCalor

2.2.1 En todos en la propiedad Name:

salirToolStripMenuItem (Nombre para el MenuStrip )

dGridVLectura  (Nombre para el DataGridView)

timerTemporiza  (Nombre para el Timer)



            Nota: En el MenuStrip que se arrastra solo escribir Salir


2.2.2 En todos en la propiedad Name:

btnON_OFF   (Nombre para el Button)

lblTemporizador  (Nombre para el Label del contador)

lblSensor  (Nombre para el Label del sensor)

trackBarSensor   (Nombre para el TrackBar)

progBarLectura   (Nombre para el ProgressBar)




2.2.3 En el DataGrid agregar  2 columnas:

Horario, Lectura(Grados)





 

2.2.4 En el Timer agregar un valor mas lento de conteo

En la propiedad Interval=1000






2.2.5 En el TrackBar agregar

En la propiedad Maximo=400, Minimo=10




2.2.6 En el PregressBar agregar

En la propiedad Maximo=400, Minimo=10




    2.2.7 En el Button agregar:

           En la propiedad BackgroundImage poner la imagen "apagado" copiada en la carpeta img





3.- En el formulario Form1.cs

       3.1 Agregar evento Click() al botón btnAceptar

                Con doble click sobre el botón



         Nota: Se podrá cambiar el nombre del evento en la ventana de eventos



       Quedaría asi:   Observar que en la linea numero 1: es el nombre del proyecto y la carpeta Forms que contiene a FrmPrincipal





Compilar y ejecutar



4.- En el formulario FrmPrincipal.cs

      Usará las siguientes librerías:

    



    4.1 Agregar evento Click() al menú  salir

       Con doble click sobre el menu Salir




   4.2 Agregar las variables a usar: encendido, conteo, tiempo, lectura




4.3 Crear un método llamado mostrarLectura()


 4.4 Agregar un evento Tick() al Timer 
        Con doble click sobre el Timer



4.5 Agregar un evento Scroll() al TrackBar

            Con doble click sobre el TrackBar


 

4.6 Agregar un evento click() al botón  btnON_OFF 

       Con doble click sobre el boton de apagado/encendido



5. Llenar la barra progresiva

5.1 Crear una clase llamada ModifyProgressBarColor.cs en la carpeta Forms 





Quedaría así: Usar sus librerías también

 

 public static class ModifyProgressBarColor

    {

        [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]

        static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr w, IntPtr l);

        public static void SetState(this ProgressBar pBar, int state)

        {

            SendMessage(pBar.Handle, 1040, (IntPtr)state, IntPtr.Zero);

        }

    }



5.2 Agregar al método llamado mostrarLectura()en FrmPrincipal.cs 

la ejecución de la clase creada. Desde la linea 69 hasta la 75




Compilar y ejecutar


PRUEBA

- Con el apagador APAGADO:

         Mover el sensor: Describir que sucede

        

- Con el apagador ENCENDIDO

         Mover el sensor al límite y apagar: Describir que sucede



****************************************************************************************

ANEXO  *************SI SE VA A USAR UNA GRAFICA *************************

Usar el control Chart con Nombre = chartLectura

   1- UNA LECTURA LLAMADA Ejecutandose

   2- SEGUNDA LECTURA LLAMADA Deseable (OPCIONAL)

 





-Agregar para Deseable también sus propiedades nombre, chartArea y ChartType

-Escoger el color deseado

 



3.- AGREGAR EL LLENADO EN LA GRAFICA

            Agregar las líneas palomeadas en el metodo mostrarLectura()




-------------------------------------------------------0-----0-----------------------------

-------------------------------------------------000--~--000----------------------------



100 VINCULAR CON SQL SERVER

  VINCULAR DATOS CON SQL SERVER Ing. Honoria Reyes Macedo   INTRODUCCION En esta práctica se enviarán datos de un proyecto de escrit...