Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ESPE
INGENIERÍA MECATRÓNICA
AUTOMATIZACIÓN INDUSTRIAL
MECATRÓNICA
TEMA: IMPLEMENTACIÓN DE UN
PERCEPTRÓN
ESTUDIANTES:
-Pérez Ronnie
-Pérez Samuel
-Quinaluisa Laydi
-Soria Polo
2. OBJETIVOS:
Objetivo general:
3. INTRODUCCIÓN
Se desea realizar la implementación de una compuerta and, nand, or o nor, usando para ellos una
tarjeta Arduino que perita la programación de la salida de la neurona, teniendo como entradas la
lectura de dos canales analógicos y presentado la respuesta en un led, como activación del
perceptrón.
4. MARCO TEÓRICO
Una regla de propagación ℎ𝑖 (𝑡) = 𝜎 (𝑤𝑖𝑗 , 𝑥𝑗 (𝑡)) ; ℎ𝑗 (𝑡) = ∑ 𝑤𝑖𝑗 𝑥𝑗 es la más común.
Una función de activación 𝑦𝑖 (𝑡) = 𝑓𝑖 (ℎ𝑖 (𝑡)), que representa simultáneamente la salida de la
neurona y su estado de activación.
𝑎 = 𝑓(𝑤𝑝 + 𝑏)
5. MATERIALES
• Computador,
• Tarjeta Arduino,
• Protoboard,
• Sensores/entradas análogas acondicionados para Arduino,
• Led,
• Cables.
6. DESARROLLO
6.1. Procedimiento compuerta NAND
1. El primer paso para realizar la implementación de un perceptrón con la compuerta
NAND, se debe encontrar los valores de los pesos y el bias, con los cuales se objetivo
esperado.
Para esto se debe realizar un código pequeño en el software Matlab, el cual facilita la
obtención de dichos valores; a continuación, se presenta el código utilizado en el
software.
P1 P2 Y
0 0 1
0 1 1
1 0 1
1 1 0
Fig7. Clasificación de ANS por el tipo de aprendizaje y la arquitectura
En la entrada se colocarán los valores de entrada para el perceptrón, las cuales serán los
valores correspondientes a la compuerta NAND.
El objetivo será la salida que esperamos obtener con las entradas.
El comando train sirve para realizar el entrenamiento del perceptrón, con las entradas y
objetivos deseados.
3. Una vez encontrados los valores de los pesos y bias, se procede a realizar la
implementación del perceptrón utilizando el software ArduinoIDE y una tarjeta Arduino,
se debe tener en cuenta que la función de activación utilizada para este caso será la
escalón.
Para realizar la programación se utilizará dos sensores analógicos; para nuestro caso se
usó un LM35 y un potenciómetro.
Se debe leer cada una de las entradas analógicas, luego hay que escalar los valores de las
entradas analógicas para pasarlos a las entradas del perceptrón, ya que es necesario que
estén en un rango de 0 a 1.
Posterior a esto se debe encontrar el valor a del perceptrón, aplicando la ecuación:
𝑎 = ∑𝑝 ∗ 𝑤 + 𝑏
Y por último para obtener la salida, ya que se utilizó la función escalón, se debe tener en
cuenta que los valores de la salida serán 0 ó 1, según los siguientes parámetros:
Sí 𝑎 ≥ 0, entonces salida=1
4. Una vez terminado el programa se debe cargar a la placa Arduino y abrir el monitor serial
para ver el funcionamiento, y verificar los valores.
Para realizar la programación se utilizará dos sensores analógicos; para nuestro caso se
uso un sensor ultrasónico y un potenciómetro.
Se debe leer cada una de las entradas analógicas, luego hay que escalar los valores de las
entradas analógicas para pasarlos a las entradas del perceptrón, ya que es necesario que
estén en un rango de 0 a 1.
Posterior a esto se debe encontrar el valor a del perceptrón, aplicando la ecuación:
𝑎 = ∑𝑝 ∗ 𝑤 + 𝑏
Y por último para obtener la salida, ya que se utilizó la función escalón, se debe tener en
cuenta que los valores de la salida serán 0 ó 1, según los siguientes parámetros:
Sí 𝑎 ≥ 0, entonces salida=1
4. Una vez terminado el programa se debe cargar a la placa Arduino y abrir el monitor serial
para ver el funcionamiento, y verificar los valores.
Fig16. Puerto Serial compuerta AND
3. Una vez encontrados los valores de los pesos y bias, se procede a realizar la
implementación del perceptrón utilizando el software ArduinoIDE y una tarjeta Arduino,
se debe tener en cuenta que la función de activación utilizada para este caso será el
escalón.
Fig20. Código compuerta OR
Para realizar la programación se utilizará dos sensores analógicos; para nuestro caso se
usó un LM35 y un potenciómetro.
Se debe leer cada una de las entradas analógicas, luego hay que escalar los valores de las
entradas analógicas para pasarlos a las entradas del perceptrón, ya que es necesario que
estén en un rango de 0 a 1.
Posterior a esto se debe encontrar el valor a del perceptrón, aplicando la ecuación:
𝑎 = ∑𝑝 ∗ 𝑤 + 𝑏
Y por último para obtener la salida, ya que se utilizó la función escalón, se debe tener en
cuenta que los valores de la salida serán 0 ó 1, según los siguientes parámetros:
Sí 𝑎 ≥ 0, entonces salida=1
4. Una vez terminado el programa se debe cargar a la placa Arduino y abrir el monitor serial
para ver el funcionamiento, y verificar los valores.
Fig21. Puerto serial compuerta OR
3. Una vez encontrados los valores de los pesos y bias, se procede a realizar la
implementación del perceptrón utilizando el software ArduinoIDE y una tarjeta Arduino,
se debe tener en cuenta que la función de activación utilizada para este caso será la
escalón.
Fig25. Código compuerta NOR
Para realizar la programación se utilizará dos sensores analógicos; para nuestro caso se
usó un sensor ultrasónico y un potenciómetro.
Se debe leer cada una de las entradas analógicas, luego hay que escalar los valores de las
entradas analógicas para pasarlos a las entradas del perceptrón, ya que es necesario que
estén en un rango de 0 a 1.
Posterior a esto se debe encontrar el valor a del perceptrón, aplicando la ecuación:
𝑎 = ∑𝑝 ∗ 𝑤 + 𝑏
Y por último para obtener la salida, ya que se utilizó la función escalón, se debe tener en
cuenta que los valores de la salida serán 0 ó 1, según los siguientes parámetros:
Sí 𝑎 ≥ 0, entonces salida=1
7. CONCLUSIONES
• Todas las compuertas implementadas en este laboratorio se las puede resolver mediante
el perceptrón utilizado en Matlab.
• Arduino se puede utilizar para la implementación de una red neuronal dándonos
resultados satisfactorios ya que se logró acondicionar todos los sensores utilizados para
que la programación en Arduino IDE nos de la salida esperada de cada compuerta.
8. RECOMENDACIONES
• Establecer los rangos correctos en los valores que los sensores nos muestran para que
nuestra red pueda funcionar correctamente.
9. BIBLIOGRAFÌA