jueves, 6 de junio de 2019

BITÁCORA

Este es nuestro código de visual studio, el cual nos permite una interfaz serial para controlar nuestro edificio desde una computadora

https://drive.google.com/file/d/1RXO9mYNukDddNNdSl5E0_6ZCHx5wxaGL/view?usp=drivesdk

Armado y Proceso de Elaboracion del Edificio Domotico

Empezamos la elaboración de nuestro proyecto otorgándole una estructura solida como base para nuestro edificio. 
La estructura fue reciclada de nuestro proyecto de un elevador programado con PLC (Controlador lógico programable) 
de esa menare podríamos decidir mas adelante si nuestro edificio tendría un elevador o unas escaleras eléctricas.
Después de haber conseguido la estructura para nuestro edificio se procedió a cortar 5 cuadrados de madera que coincidan con las medidas internas de la estructura. Estos serian los pisos y techos del elevador. 
Después de cortarlos se procedió a lijarlos para eliminar cualquier borde áspero que impida su introducción adentro de la estructura y introducirlo adentro de nuestra estructura para después pegarlos y asegurar su sitio en lo que se estaría convirtiendo en nuestro edificio tecnológico. 
Después de haber instalado lo que serian nuestros pisos, se tomaron los techos y se realizaron 3 perforaciones en donde pondríamos los leds que serian la  iluminación interna del edificio. 
Una vez instalados los leds en su referente sitio, se procedió a soldar los negativos con negativos y los positivos con positivos. 
De esa manera seria mucho mas fácil el poderlos conectar con el PIC, quien seria el encargado de hacerlos encender y apagar cada vez que se requiriera. 
Una vez instalados y soldados los leds, se procedio a ponerlos en su respectivo lugar asegurándonos que estos coincidían con la ubicación de los 3 pisos que tendría el edificio respectivamente. 
Después se decidió el utilizar escaleras eléctricas como medio de traslado de piso a piso. 
Así que se consiguió una plancha de cartón y se empezaron a tomar medidas exactas para que las escaleras fueran de un tamaño en el que fueran justas y no entorpecieran sus funciones con las demás del elevador. 
Una vez cortadas las piezas de cartón, se procedió a armar las bandas transportadoras. Se utilizo un motor por escalera y elástico para hacer que este simulara una escalera eléctrica.
Después de armarse la banda procedimos a a hacerle unas bases con carton de manera en la que estas pudieran sostenerse por si mismas al lado del edificio unas sobre otras. 
una vez terminada la estructura base de nuestro edificio, se empezaron a conectar los componentes electrónicos que estarían junto al PIC18f4550 dirigiendo las funciones del edificio. 
Una vez que se puso el código en marcha y se comprobó que funcionaba por medio de un protoboard, se procedió a instalarlos en una tablilla penolica para así poderla conectar a una laptop de manera que ningún componente se safara de su sitio correspondiente. 
Una vez que tuvimos las estructura y el código, se procedió a darle los toque finales al edifico. 
Con alambre, cartón y tela se hicieron lo que serian los muebles del edificio y se reutilizaron piezas de juguete pintadas para darle mas . 
Con pedazos de tela de una toalla se realizo un alfombrado y para simulación de paredes cristalinas se dibujo y pego en la pared imágenes referentes a los edificios en la ciudad. 
para finalizar, se pinto de color negro la estructura metalica y se corto un pedazo de tabla de madera para otorgarle una base al edificio; la cual se pinto de color verde para que simulara el jardín de un edificio. 


miércoles, 5 de junio de 2019

Bitácora

Este es nuestro código final de pic c compiler para el funcionamiento de nuestro edificio inteligente, cabe notar que en las pruebas que realizamos la comunicación USB funciona correctamente y el funcionamiento de las entradas están fallando, intentamos arreglar ese problema y logramos que tanto un interruptor y un sensor encendieran lo mismo, pero funcionaba de manera extraña ya que teníamos que dejar funcionando el sensor o el interruptor por unos 5 o 9 segundo para que el microcontrolador lo detectará. Eso fue en ocasiones, ya que la mayoría de el tiempo no lo detectaba.
Cabe mencionar también que mientras realizaba mis pruebas dañamos la funcionabilidad USB del microcontrolador y fue necesario conseguir otro.



https://drive.google.com/file/d/1osQulXKHJwp754G8e-emme0gYAjTNrrj/view?usp=drivesdk

Bitácora

Este fue nuestro tercer código, este incluye lo necesario para encender el puerto b desde la comunicación USB así como también incluye el uso de entradas físicas tales como botones y sensores para encender el puerto b. Este en un principio funcionó correctamente pero con una que otra fallida, desde ese momento empezamos a notar el fallo de las entradas físicas junto con la comunicación USB.

https://drive.google.com/file/d/16kR5BMpLeDcwpMGaicCD6YPUZ5UjjOS4/view?usp=drivesdk


Bitácora

Este fue nuestro segundo código, este lo utilizamos como prueba para ver en funcionamiento de las entradas físicas tales como botones y sensores

https://drive.google.com/file/d/1jhYGNegQl9N473kIaIFa-7FnuB6Sz1wk/view?usp=drivesdk

BITÁCORA

Este fue nuestro primer código, solo cuenta con lo necesario para la comunicación USB y para encender el puerto b del microcotrolador


https://drive.google.com/file/d/1p0GnzaUKGCgAcLlHBdJhFnyaLNpHsZeT/view?usp=drivesdk

Bitácora

https://drive.google.com/file/d/1y5W_pl9rehXvo8NDUotG5zvfDHYiXKvo/view?usp=drivesdk

miércoles, 15 de mayo de 2019

Cronograma de actividades del proyecto

FECHA
ACTIVIDAD
RESPONSABLE
OBSERVACIONES
11-02-2019
Planteamiento del proyecto
Todo el equipo

11-02-2019
Inspección del material
Sthepany

13-03-2019
Bosquejo
Sthepany

02-04-2019
Inicio de la maqueta
Roció y Mariana

03-05-2019
Inicio del código
Melanie y Jonathan

08-05-2019
Conexión eléctrica
Melanie y Jonathan

20-05-2019
Simulaciones
Melanie y Jonathan

22-05-2019
Identificación de errores
Mariana y Melanie

23-05-2019
Verificación de la conexión eléctrica
Sthepany y Roció

24-05-2019
Corrección de errores
Jonathan

25-05-2019
Acabado de código
Melanie y Jonathan


28-05-2019
Acabado de maqueta
Roció y Mariana

29-05-1029
Presentación con el docente asignado en la materia
Todo el equipo

30-05-2019
Evaluación final
Todo el equipo




jueves, 11 de abril de 2019

Codigo


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace ConsoleApp2
{
    class Program
    {
        static void Main(string[] args)
        {
            int s1,s2,sr;
            int r1,r1,rr;
            int m1,m2,mr;
            int d1,d2,dr;
            int tm1,tm2,tmr;
            int l1,l2,pe,ar;
            int[] FILOSOFIA,MATEMATICAS,INGLES,DIBUJO,TALLER;
            FILOSOFIA = new int [5];
            MATENATICAS = new int [5];
            INGLESN = new int [5];
            DIBUJO = new int [5];
            TALLER = new int [5];
            int c,b;
            string [] NOMBRES;
            NOMBRES = new string [5];       
            int num,a,fact=1;
           int i;                              
           
do {
            Console.Clear();
            Console.WriteLine(“OPCIONES DE CODIGO”);
            Console.WriteLine(“1. SUMA”);
            Console.WriteLine(“2. RESTA”);
            Console.WriteLine(“3. MULTIPLICACION”);  
            Console.WriteLine(“4. DIVISION”);
            Console.WriteLine(“5. TABLAS DE MULTIPLICAR”);
            Console.WriteLine(“6. PERIMETRO Y AREA DE UN RECTANGULO”);
            Console.WriteLine(“7. PROMEDIO”);
            Console.WriteLine(“8. FACTORIAL DE UN NUMERO”);
            Console.WriteLine(“9. SALIR”); 
            Console.WriteLine(“ELIGE UNA OPCION:”);          
            i = Convert.ToInt16(Console.ReadLine());
            Swich (i) {
            case 1:         
                        Console.WriteLine(“SUMA”);    
                        Console.WriteLine(“ESCRIBE EL PRIMER NUMERO”);        
                        s1 = Convert.ToInt16(Console.ReadLine());
                        Console.WriteLine(“ESCRIBE EL NUMEOR DOS”);   
                        s2 = Convert.ToInt16(Console.ReadLine());
                        sr = s1+s2;
                        Console.WriteLine(“{0}+{1}={2}”,s1,s2,sr);       
                        break;
case 2:         
                        Console.WriteLine(“RESTA”);     
                        Console.WriteLine(“ESCRIBE EL PRIMER NUMERO”);         
                        r1 = Convert.ToInt16(Console.ReadLine()); 
                        Console.WriteLine(“ESCRIBE EL NUMEOR DOS”);   
                        r2 = Convert.ToInt16(Console.ReadLine());
                        rr = r1-r2;
                        Console.WriteLine(“{0}-{1}={2}”,r1,r2,rr);         
                        break;
            case 3:         
                        Console.WriteLine(“MULTIOPLICACION”);   
                        Console.WriteLine(“ESCRIBE EL PRIMER NUMERO”);         
                        m1 = Convert.ToInt16(Console.ReadLine());           
                        Console.WriteLine(“ESCRIBE EL NUMEOR DOS”);   
                        m2 = Convert.ToInt16(Console.ReadLine());
                        mr = m1*m2;
                        Console.WriteLine(“{0}x{1}={2}”,m1,m2,mr);
                        break;           
            case 4:         
                        Console.WriteLine(“DIVISION”);           
                        Console.WriteLine(“ESCRIBE EL PRIMER NUMERO”);         
                        d1 = Convert.ToInt16(Console.ReadLine());
                        Console.WriteLine(“ESCRIBE EL SEGUNDO NUMERO”);   
                        d2 = Convert.ToInt16(Console.ReadLine());

                        dr = d1/d2;
                        Console.WriteLine(“{0}/{1}={2}”,d1,d2,dr);    

                        break;
            case 5:
Console.WriteLine(“TABLAS DE MULTIPLICAR”);     
                        Console.WriteLine(“ESCRIBE EL NUMERO DE LA TABLA DE MULTIPLICAR”);   
                        tm1 = Convert.ToInt16(Console.ReadLine());         
                        for (tm2=1; tm2<10; tm2++){
                        tm3=tm1*tm2;
                        Console.WriteLine(“{0}x{1}={2}”,tm1,tm2,tmr);
                        }
                        break;
case 6:

                        l1 = Convert.ToInt16(Console.ReadLine());  
                        Console.WriteLine(“ESCRIBE EL VALOR DE LA ALTURA DEL RECTANGULO”);
                        l2 = Convert.ToInt16(Console.ReadLine());

                        pe=l1+l1+l2+l2;
                        ar=l1*l2*;
                        Console.WriteLine(“EL PERIMETRO DEL RECTANGULO ES {0},pe”);       
                        Console.WriteLine(“EL AREA DEL RECTANGULO ES {0},ar”);
                        break;
            case 7:
                        for (c=0; c<=4; c++)
{
                        Console.WriteLine(“ESCRIBE EL NOMBRE DEL ALUMNO”);          
                        NOMBRE[c] = Convert.String(Console.ReadLine());         
                        FILOSOFIA = Convert.ToInt16(Console.ReadLine());
                        Console.WriteLine(“ESCRIBE LA CALIFICACION DE MATEMATICAS”);
                        MATEMATICAS = Convert.ToInt16(Console.ReadLine());

                        Console.WriteLine(“ESCRIBE LA CALIFICACION DE DIBUJO”);  
                        DIBUJO = Convert.ToInt16(Console.ReadLine());
                        Console.WriteLine(“ESCRIBE LA CALIFICACION DE TALLER”);    
                        TALLER = Convert.ToInt16(Console.ReadLine());
                        Console.WriteLine(“ESCRIBE LA CALIFICACION DE INGLES”);   
                        INGLES = Convert.ToInt16(Console.ReadLine());
                        Console.Clear();
                        }
                        For (c=0; c<=4; c++)
{
                        b = (FOLOSOFIA[c]+MATEMATICAS[c]+DIBUJO[c]+INGLES[c]+TALLER[c])/6;
                        Console.WriteLine(“{0} TIENE UN PROMEDIO FINAL DE {1}”,NOMBRES[c],b);
                        } Console.ReadKey();
                        break;
            case 8:
                        Console.WriteLine(“FACTORIAL DE UN NUMERO”);          

                        Console.WriteLine(“ESCRIBE EL NUMERO A FACTORIZAR”);      
                        num = Convert.ToInt16(Console.ReadLine());
                        Console.WriteLine(“{0}!=”,num);
                        for (a=num; a>0; a--)
{
                        fact = fact*a;
                        Console.WriteLine(a);                  
                        if (a>=2){
                        Console.WriteLine(“x”);  
                        } 
                        }
Console.WriteLine(“ ={0}”,fact”);        
                        Console.ReadLine();
                        break;
                       
default:
                        Console.WriteLine(“DIGITA UNA OPCION VALIDA”);
                        break;       
           
            } Thread.Sleep (1000);
            } While (i != 9);       
}
}
}