L'objectiu és comprendre com funciona la llum mitjançant microconroladors i programació. En en meu cas transmisió de la llum a través de lents de diferents dioctries i opacitats.
El procediment per a constuïr un espectofotómetre consta de les seguents parts:
Hem de buscar la bibliografia a google scholar el màxim d'absorbància de: àcid carmínic, luteïna i FCF
Nom | Carmín | Luteina | FCF | Font |
---|---|---|---|---|
Raquel Albarrán | 612nm (1) | 650nm | 630nm (3) | 1. Autores=Dayana Donneys-Victori,Cristian Camilo Ospina-Toro,Mónica Vanesa Zapata-Villegas, Nilson Marriaga-Cabrales,Fiderman Machuca-Martínez, Juan M. Peralta-Hérnandez, Carlos A. Martínez-Huitle Titulo= DYNA. Electrocoagulación de soluciones de índigo carmín empleando ánodos de magnesio y de aleación AZ31. Vol.85. Sept. 2018 https://www.scielo.cl/scielo.php?script=sci_arttext&pid=S0718-34292015000300004 2. https://grupofranja.net/danos-oculares-que-produce-la-luz-azul-y-mecanismos-fisiologicos-de-defensa/ 3. Autores=? Orange Country Biothecnology Education Collavorative Titulo: 1.6 Espectofotometría. Libre Texts Español (MindTouch) https://espanol.libretexts.org/Biologia/Biotecnolog%C3%ADa/Manual_de_Laboratorio%3A_Introducci%C3%B3n_a_la_Biotecnolog%C3%ADa/01%3A_T%C3%A9cnicas/1.06%3A_Espectrofotometr%C3%ADaibre Texts Español |
Manal El Morabit | 494 nm (4) | 455 nm (5) | 630 nm (6) | Carmín: Tello V, Vargas J Efecto de la luz artificial a diferentes fotoperiodos sobre dos variables productivas de la grana cochinilla, Dactylopius coccus Costa (Hemiptera: Dactylopiidae) para su cultivo bajo condiciones controladas VOLUMEN:33 no.3 Arica ago. 2015 Luteína: FCF: |
Alexis Álvarez | 494 nm | 445 nm | 620 nm | Àcid Carmínic: https://dialnet.unirioja.es/servlet/articulo?codigo=9252159 FCF: Luteina: https://digital.csic.es/bitstream/10261/172392/1/biomarocuhuman.pdf Luteína: https://digital.csic.es/bitstream/10261/172392/1/biomarocuhuman.pdf |
Bassim Lyamani | 535nm (4) | 422-445nm (5) | 560nm (6) | 4: Ocampo, C. Informe de pràctica de laboratorio, Universidad Peruana Union, Volumen nro. 5 pagines (9) (2006) (DOC) caracterizacion de colorantes | claudia ocampo - Academia.edu 5: Burgos J.T y Calderon F.R DETERMINACION DEL CONTENIDO DE CAROTENOIDES TOTALES EN OCHO ESPECIES DE FRUTAS Y VERDURAS COMERCIALIZADAS EN LA ZONA METROPOLITANA DE SAN SALVADOR |
494nm | 535nm | 623nm | ÀCID CARMÍNIC: Luteina: FCF: |
|
Joel Cano | 490-499 nm | 440 nm | 630 nm | (7B) Àcid Carmínic: Salazar,KG et al Extracción de ácido carmínico como colorante natural a partir de la cochinilla Pol.Con 8 : 583-605 (2023) https://dialnet.unirioja.es/servlet/articulo?codi go=9252159 (7D) FCF: Rodriguez,RF et al Evaluación de colorantes sintéticos en bebidas comercializadas en la ciudad de Trujillo en el periodo 2018 - 2019 Alpha Centauri 2 : 124-139 (2021) https://dialnet.unirioja.es/servlet/articulo?codigo=8092600 (7C) Luteína: Odorrisi, AA et al DESENVOLVIMENTO E VALIDAÇÃO DE MÉTODO ESPECTROFOTOMÉTRICO PARA DETERMINAÇÃO DE CORANTE À BASE DE LUTEÍNA ADICIONADO EM IOGURTE DESNATADO Quim. Nova 35 : 2057-2062 (2012) https://www.scielo.br/j/qn/a/6qfQpCHJ8jn8rH8RYyrVXSK/?lang=pt# |
Alex Roca | 495 nm | 445 nm | 620 - 630 nm | Carmín: Luteina: Estèvez, R. Biomarcadores de luteína, zeaxantina y otros carotenoides en la relación dieta y salud ocular humana (Tesis Doctoral) Universidad Complutense de Madrid. (2016) https://digital.csic.es/bitstream/10261/172392/1/biomarocuhuman.pdf FCF: Rodríguez, M.C. et al. Cuantificación simultánea de colorantes en bebidas deportivas utilizando espectroscopia visible y PLS–1. Revista FABICIB. volumen 17. PÁGS. 74 - 84. (2013) https://www.researchgate.net/publication/282977677_Cuantificacion_simultanea_de_colorantes_en_bebidas_deportivas_utilizando_espectroscopia_visible_y_PLS-1 |
Daniel Solis | 494 nm | 445 nm | 482 nm | (7B) Àcid Carmínic: Salazar,KG et al Extracción de ácido carmínico como colorante natural a partir de la cochinilla Pol.Con 8 583-605 (2023) file:///C:/Users/DanielSol%C3%ADsArteaga/Downloads/Dialnet-ExtraccionDeAcidoCarminicoComoColoranteNaturalAPar-9252159%20(1).pdf Luteina: https://www.boe.es/buscar/pdf/2009/BOE-A-2009-16021-consolidado.pdf FCF: https://www.argentina.gob.ar/normativa/recurso/86181/dto202-2003-12/htm |
Ariadna Arcas | 495 nm | 455 nm | 630 nm | Carmín:https://www.scielo.cl/scielo.php?script=sci_arttext&pid=S0718-34292015000300004 Luteína:https://grupofranja.net/danos-oculares-que-produce-la-luz-azul-y-mecanismos-fisiologicos-de-defensa/ FCF:https://espanol.libretexts.org/Biologia/Biotecnolog%C3%ADa/Manual_de_Laboratorio%3A_Introducci%C3%B3n_a_la_Biotecnolog%C3%ADa/01%3A_T%C3%A9cnicas/1.06%3A_Espectrofotometr%C3%ADa Orange Country Biothecnology Education Collaborative Titulo: 1.6 Espectofotometría. Libre Texts Español (MindTouch) |
Mariana Velasco | 494nm | 445nm | 630nm | https://docs.google.com/document/d/17PXOVwkcxc__sNLeHLdus3zdZb38olWlQAy8A463YLM/edit?usp=sharing |
Mateo Pérez | 494nm | 440nm | 630nm | Carmín: Luteína: https://dialnet.unirioja.es/servlet/articulo?codigo=8092600 FCF: |
Utilitzarem codis que faran un escaneij o "scan" de forma que encecndràn els llums RGB del led de forma que generarem longituts d'ona que van desde 380 nanómetres a 780 nanòmetres
Escriu la longitud d'ona en nanòmetres i converteix-la en RGB en la següent línea
A la figura 1 podem visualitzar la relació entre el color de la llum i la longitud d'ona.
<input type="number" id="wavelength" value="550" min="380" max="780">El codi anterior que transforma longitut d'ona en valor RGB funciona de la següent manera: Longitut d'ona de una etiqueta html anomenada "label".
L'etiqueta input permet introduïr qualsevol tipus de valors pel teclat, però la propietato atribut de input anomenat type està definida com a number i només permet introduir números. El value és una propietat o atribut de input que fa que surti com a valor predeterminat i mín i màx són els valors mínims i màxims i no s'acceptaràn valors de marge. La ID es una propietat molt important ja que es com el DNI i el cridarem en getElementById.
<button onclick="convertWavelength()">Converteix a RGB</button>La paraula "button" crea un botó de forma automàica queu te una propietat/atribut que es diu "onclick" que està esperant ser clickada. Altres que poden existir son: "onmouseover" (quan estic a sobre), "onekaydown" (quan pressiono una tecla), onsubmeet (quan envio un formulari). El contingut del botó s'escriu abans de final de button
Quan detecti que onclick és igual a true s'executarà una funció que no té cap parámetre ni argument perquè té dos paréntesis buits. La funció s'anomena convertWaveLenght(){...instruccións aqui...}. Això vol dir que quan clicko un botó creat amb html crido una funció creada en javaScript més enevant que convertirà la logitud d'ona que escric en RGB.
<div id="result"></div>
Un div és un divisor que és com un paràgraf en aquest cas buit que té un identificador anomenat result que només es veurà i s'executarà desprès, és a dir, quan es carrega la pàgina està buit o quan clickem el botó de convertir farà la seva funció
function convertWavelength() {
const wavelength = document.getElementById("wavelength").value;
const R = Math.round(getRGBValue(wavelength, 'R'));
const G = Math.round(getRGBValue(wavelength, 'G'));
const B = Math.round(getRGBValue(wavelength, 'B'));
const result = `RGB values: (${R}, ${G}, ${B})`;
document.getElementById("result").textContent = result;
}
parseFloat transforma qualsevol variableen un float o número decimal i posteriorment en una altra funció Math round el transformarà en un numero sencer o intiger. Si el numero intrpduït com a nm està fora de margesn
Una funció és una forma que tenim de transformar un valor que donem nosaltres en un altre diferent. En aquest cas volem transformar la longitud d'ona en 3 valors: R, G i B.
Sempre que escric la paraula function, per crear una funció, he de posar al costat el nom de la funció, en anglès, que expliqui el que fa, en aquest cas convertir la longitud d'ona i poso convertWaveLenght(), enn camelCase, i posem un parentesis buit perquè no depén de paràmetres o arguments.
Dins de la dunció tenim diverses instruccións agrupades en una clau
Les primeres 5 línies de la funció defineixen constants globals que es posen fora de les funcions i afecten a tot el codi (const PI=3,1416)
Els pasos a seguir informaticament són els seguents:
float sensorVoltage;
float sensorValue;
sensorValue = analogRead(A0);
sensorVoltage = sensorValue/1024*5.0;
Primer de tot hem de crear una variable anomenada sensorValue i per crear-la utilitzem la instrucció float sensorValue Això crearà un espai de memória gran capaç de emmagatzemar un número decimal = "floating point number" = número amb coma flotant. Aquest espai de memória el puc anomenar com vulgui, si l'anomenés valorSensor en castellà o català només ho entendrien l'entendrien aquí. El posem an anglès en estil camelCase a lletra de camell. N'hi han altres estils com snake_case, PascalCase o kebab-case. És a dir la variable sensorValue que emmagatzema els valors del sensor pot anomenar-se en esls estils anteriors com: sensorValue (camelCase), sensor_value(snake_case), SensorValue(PascalCase) i sensor-value(kebab-case). Un cop començes a utilitzar una forma de anomenar no pots canviar-ho en el mateix codi, és important el punt i coma de cada línia perque indica que la instrucció ha acabat. En els microocontroladors que tenen poca memoria (Arduino UNO té 16kb, molt poc comparat amb 512 de ESP32-S3) podrien gastar menys memória definint variables més petites que números decimals com per exemple numeros sencers. En aquest darrer cas seria int sensorValue; que int significa integrer number o número sencer i accepta 5 digits (5 espais de memòria) pero només fins el número 64000 o 32000 i el 1023 està dintre del marge, si en comptes d'un sensor fos una sortida analògica de 8 bits, que és igual a 28 igual a 255, quina variable utilitzaries que gastés la mínima memória?
Si tenim una variable float, quants digits guarda espai ala petita memória deel microcontrolador?
Si vull utilitzar byte no arribaia a 1023 sinó a 255 i no serviria per un sensor que llegeix de 0 a 1023. Aquest de 255 es podria fer servir per una sortida analògica PWM d'Arduino de 8 bits,però estem parlant de entrades analògiques, sensors, perquè 28 = 255.
En el cas de Arduino UNO, la velocitat de mostreig del rellotge és de 125kH< que vol dir 12500 cicles per segón. En el cas d'ESP32-S3, la sevavelcitat màxima és de 2 MHz, (2000000 de mostres per segon) però realment s'aprofita 1000 per segon, via wifi. Aquests valors tan altssón teòrics.
Altres tius de variables que consumeixmolt poca memòria es boolean. Boolean ve de el nom d'un senyor Boole que va inventar àlgebra basada en 0 i 1, en el seu equivalent false i true. Es pot fer servir per començar el moviment, primer és en false i desprès es true si toques una tecla per exemple, es a dir, si es compleix una condició.
Char, es una altre tipus de variable que siginifica caràcter i és compatible amb arduino, i que incolu els caràcters ASCII on podem veure que els caràcters són números tan decimals com binaris, per exemple la lletra "a" és el número decimal 97 i el número binari 01100001. Perqué 0*27 + 1*26 + 1*25 + 0*24 + 0*23 + 0*22 + 0*21 + 1*20 =
Com podem veure a la taula, posa que el floatacepta números de fins a 3.4028235E+38, que vol dir 3.4028235*1038, es a dir 38 espais de de memòria disponibles per aquesta variable