Jose Campaña / Mbed 2 deprecated 2_Un_Sensor

Dependencies:   mbed

Committer:
jcampanal
Date:
Fri Jan 18 02:59:48 2019 +0000
Revision:
1:434f82fb0641
Parent:
0:3870563dc975
Programa realizado por Jose Campana Maestria Automatizacion(U. Salesiana)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jcampanal 0:3870563dc975 1 #include "mbed.h"
jcampanal 0:3870563dc975 2
jcampanal 0:3870563dc975 3 AnalogIn sensor(PC_1); // Sensor 1
jcampanal 0:3870563dc975 4
jcampanal 0:3870563dc975 5 DigitalOut led1(PD_12); // Led Verde
jcampanal 0:3870563dc975 6 DigitalOut led2(PD_13); // Led Naranja
jcampanal 0:3870563dc975 7 DigitalOut led3(PD_14); // Led Rojo
jcampanal 0:3870563dc975 8
jcampanal 0:3870563dc975 9 Serial device(PA_2,PA_3); //Puerto serial
jcampanal 0:3870563dc975 10
jcampanal 0:3870563dc975 11 int i, j, muestra, mediciones, tiempo;
jcampanal 0:3870563dc975 12 float T, lectura, acum, Tacum, promedio;
jcampanal 0:3870563dc975 13
jcampanal 0:3870563dc975 14 int main()
jcampanal 0:3870563dc975 15 {
jcampanal 0:3870563dc975 16 device.baud(19200); // Velocidad de Puerto Serial
jcampanal 0:3870563dc975 17
jcampanal 0:3870563dc975 18 device.printf ("Ingrese # de muestras: ");
jcampanal 0:3870563dc975 19 device.scanf ("%d[^\n]",&muestra);
jcampanal 0:3870563dc975 20 device.printf ("\n");
jcampanal 0:3870563dc975 21 device.printf("%i \n", muestra);
jcampanal 0:3870563dc975 22
jcampanal 0:3870563dc975 23 device.printf ("Ingrese # de mediciones: ");
jcampanal 0:3870563dc975 24 device.scanf ("%d[^\n]",&mediciones);
jcampanal 0:3870563dc975 25 device.printf ("\n");
jcampanal 0:3870563dc975 26 device.printf("%i \n", mediciones);
jcampanal 0:3870563dc975 27
jcampanal 0:3870563dc975 28 device.printf ("Ingrese Tiempo entre muestras: ");
jcampanal 0:3870563dc975 29 device.scanf ("%d[^\n]",&tiempo);
jcampanal 0:3870563dc975 30 device.printf ("\n");
jcampanal 0:3870563dc975 31 device.printf("%i \n", tiempo);
jcampanal 0:3870563dc975 32 device.printf("\n");
jcampanal 0:3870563dc975 33
jcampanal 0:3870563dc975 34 i = 1;
jcampanal 0:3870563dc975 35 while(i < muestra + 1) // Presentacion de Muestras
jcampanal 0:3870563dc975 36 {
jcampanal 0:3870563dc975 37 device.printf("Muestra # %i \n", i);
jcampanal 0:3870563dc975 38
jcampanal 0:3870563dc975 39 j = 0;
jcampanal 0:3870563dc975 40 acum = 0;
jcampanal 0:3870563dc975 41 promedio = 0;
jcampanal 1:434f82fb0641 42 Tacum = 0;
jcampanal 0:3870563dc975 43
jcampanal 0:3870563dc975 44 while (j < mediciones) // Presentacion de Mediciones
jcampanal 0:3870563dc975 45 {
jcampanal 0:3870563dc975 46 device.printf("Sensor : (%f)\n", sensor.read());
jcampanal 1:434f82fb0641 47 lectura = sensor.read();
jcampanal 0:3870563dc975 48
jcampanal 0:3870563dc975 49 if (sensor.read() >= 0 && sensor.read() < 0.3)
jcampanal 0:3870563dc975 50 {
jcampanal 0:3870563dc975 51 T = (100.500001*sensor.read()) + 10; // Calculo Temperatura (0V = 10° y 1V = 40°)
jcampanal 0:3870563dc975 52 led1 = 1;
jcampanal 0:3870563dc975 53 }
jcampanal 0:3870563dc975 54 else
jcampanal 0:3870563dc975 55 led1 = 0;
jcampanal 0:3870563dc975 56
jcampanal 0:3870563dc975 57 if (sensor.read() >= 0.33 && sensor.read() < 0.6)
jcampanal 0:3870563dc975 58 {
jcampanal 0:3870563dc975 59 T = (145.166767*sensor.read()) - 6.66672735; // Calculo Temperatura (1.1V = 41° y 2V = 80°)
jcampanal 0:3870563dc975 60 led2 = 1;
jcampanal 0:3870563dc975 61 }
jcampanal 0:3870563dc975 62 else
jcampanal 0:3870563dc975 63 led2 = 0;
jcampanal 0:3870563dc975 64
jcampanal 0:3870563dc975 65 if (sensor.read() >= 0.64 && sensor.read() <= 1)
jcampanal 0:3870563dc975 66 {
jcampanal 0:3870563dc975 67 T = (211.719999*sensor.read()) - 51.719999; // Calculo Temperatura 3 (2.1V = 81° y 3.3V = 81°)
jcampanal 0:3870563dc975 68 led3 = 1;
jcampanal 0:3870563dc975 69 }
jcampanal 0:3870563dc975 70 else
jcampanal 1:434f82fb0641 71 {
jcampanal 0:3870563dc975 72 led3 = 0;
jcampanal 1:434f82fb0641 73 }
jcampanal 0:3870563dc975 74 device.printf("Temperatura: (%4.2f)\n", T);
jcampanal 1:434f82fb0641 75
jcampanal 0:3870563dc975 76 acum = acum + lectura;
jcampanal 0:3870563dc975 77 Tacum = Tacum + T;
jcampanal 1:434f82fb0641 78 device.printf("Temperatura Acum : (%4.2f)\n", Tacum);
jcampanal 0:3870563dc975 79
jcampanal 0:3870563dc975 80 wait(tiempo); // Espera de n seg por Mediciom
jcampanal 0:3870563dc975 81 j++;
jcampanal 0:3870563dc975 82 }
jcampanal 0:3870563dc975 83
jcampanal 0:3870563dc975 84 promedio = acum / j;
jcampanal 0:3870563dc975 85 device.printf("\n");
jcampanal 0:3870563dc975 86 device.printf("Promedio de mediciones: (%f)\n", promedio);
jcampanal 0:3870563dc975 87 T = Tacum / j;
jcampanal 0:3870563dc975 88 device.printf("Promedio de Temperatura: (%4.2f)\n", T);
jcampanal 0:3870563dc975 89 device.printf("\n");
jcampanal 0:3870563dc975 90
jcampanal 0:3870563dc975 91 i++;
jcampanal 0:3870563dc975 92 }
jcampanal 0:3870563dc975 93 }