Professional Documents
Culture Documents
RINCN
OPCIN I: TESIS
DISEO E IMPLEMENTACION DE UN SISTEMA
CONTROLADOR DE POSICIN PARA PANELES
FOTOVOLTAICOS
QUE PARA OBTENER EL GRADO DE
INGENIERA ELECTROMECNICA
PRESENTAN:
NOVIEMBRE 2015
Resumen
En esta tesis se documenta el proceso de diseo e implementacin de un sistema de
control, mediante Redes Neuronales Artificiales en un prototipo orientador de paneles
voltaicos. Presentando resultado de observaciones en pruebas hechas con dos tipos
de paneles fotovoltaicos, del tipo monocristalino y policristalino.
En el primer captulo, se presentan los argumentos que justifican el uso de recursos
en la atencin de esta problemtica, y las limitaciones de la presente propuesta.
El segundo captulo trata el fenmeno de energa solar, y en especial la energa solar
fotovoltaica, con informacin sobre la radiacin que incide en Mxico, y tipos de
paneles que captan la energa emanada del Sol. Adems se presentan
clasificaciones
referentes
sistemas
seguidores
solares,
principalmente
Contenido
INTRODUCCIN
10
10
1.5 Justificacin
11
11
13
14
15
16
16
18
21
21
22
24
24
26
27
27
30
30
30
31
33
33
36
46
49
50
53
ii
53
55
56
56
61
63
64
64
65
66
68
69
69
70
76
78
79
82
84
84
86
86
87
88
89
92
94
95
97
98
101
103
CONCLUSIONES
108
REFERENCIA BIBLIOGRFICA
110
115
iii
ndice de figuras
Figura 1. Intensidad media de la radiacin solar sobre la superficie terrestre.............16
Figura 2. Irradiacin sobre paneles fotovoltaico................................................................18
Figura 3. Irradiacin solar presente en Mxico..................................................................20
Figura 4. Indicadores mundiales en la dependencia de fuentes de energa.................22
Figura 5. Esquema para el desarrollo de proyectos de tecnologa solar fotovoltaica. 23
Figura 6. Panel solar compuesto por clulas de silicio monocristalino..........................25
Figura 7. Panel solar formado por clulas de silicio policristalino...................................25
Figura 8. Panel solar de silicio amorfo................................................................................26
Figura 9. Sistema solar fotovoltaico aislado.......................................................................26
Figura 10. Orientacin e inclinacin de los mdulos fotovoltaicos.................................28
Figura 11. Mecanismo del seguidor solar...........................................................................29
Figura 12. Seguidor solar de un solo eje horizontal..........................................................31
Figura 13. Seguidor solar de dos ejes.................................................................................32
Figura 14. Elementos de la parte superior del seguidor TFP-ITL...................................34
Figura 15. Vista de seccin de la zona de giro del seguidor solar..................................35
Figura 16. Principio de funcionamiento de un motor de corriente continua..................36
Figura 17. Pines del microcontrolador en el Arduino UNO..............................................39
Figura 18. Componentes de un Arduino UNO....................................................................40
Figura 19. Smbolo de una fotorresistencia LDR...............................................................45
Figura 20. Smbolo de un relevador.....................................................................................46
Figura 21. Representacin de engrane recto.....................................................................47
Figura 22. Representacin de engrane helicoidal.............................................................48
Figura 23. Representacin de engranes cnicos..............................................................48
Figura 24. Representacin de engranaje de tornillo.........................................................49
Figura 25. Esquema simplificado de un sistema de control.............................................50
Figura 26. Diagrama de bloque del seguidor solar............................................................51
Figura 27. Elementos neuronales........................................................................................54
Figura 28. Modelo ms simple de una neurona realizada por McCullon y Pitts...........57
Figura 29. Funciones de activacin ms comnmente empleadas................................59
Figura 30. Funciones de salida ms empleadas...............................................................61
Figura 31. Grafica dirigida de una RNA general................................................................61
Figura 32. Ejemplos de RNAs con diferente arquitectura de alimentacin..................63
Figura 33. Perceptrn de una sola capa.............................................................................66
Figura 34. Espacio de trabajo con los datos de entradas y salidas...............................71
Figura 35. Ventana Network/Data Manager de la GUI nntool de Matlab.......................71
Figura 36. Venta importar datos para una RNA.................................................................72
Figura 37. Ventana Create Network or Data......................................................................72
Figura 38. Ventana de configuracin de parmetros del Perceptrn.............................73
Figura 39. Ventana de configuracin para el entrenamiento del Perceptrn................74
iv
ndice de tablas
Tabla 1. Irradiacin diaria promedio mensual para el municipio de Pursima...............20
Tabla 2. Elementos de la unin de giro...............................................................................34
Tabla 3. Elementos de la unin de giro...............................................................................35
Tabla 4. Tabla de verdad de compuerta XOR para el Perceptrn..................................71
Tabla 5. Palabras reservadas del lenguaje C.....................................................................77
Tabla 6. Caractersticas del panel solar monocristalino....................................................85
Tabla 7. Caractersticas del panel solar policristalino.......................................................85
Tabla 8. Especificaciones del engrane recto ANSI............................................................88
Tabla 9. Elementos del seguidor solar empleado en esta tesis......................................90
Tabla 10. Datos de entradas y salidas para el Perceptrn...............................................94
Tabla 11. Parmetros topolgicos empleados en el Perceptrn.....................................96
vi
Introduccin
Durante los ltimos aos el agotamiento de las fuentes tradicionales de energa
fsiles, el incremento de su costo y problemas medioambientales derivados de su
explotacin, transporte y consumo, ha puesto a la mayora de los pases del mundo a
buscar soluciones en energas alternativas. Por ejemplo, la energa radiada por el Sol
que tiene un doble objetivo, contribuir a la disminucin de gases de efecto
invernadero y economizar utilizando energas renovables.
Al carecer de un sistema que controle el posicionamiento de dispositivos que capten
la energa solar, se reduce la cantidad de energa recolectada. Esto es importante
para cuestiones de almacenamiento y consumo. Es til la implementacin de un
dispositivo que lleve a cabo la funcin de posicionamiento para recolectar ms
potencia de la radiacin solar.
La incidencia de los rayos del Sol sobre los paneles difiere de la perpendicularidad a
lo largo del da, y por lo tanto se ve reducida la eficiencia de captacin de los paneles
fotovoltaicos. Es posible corregir esta situacin utilizando un seguidor solar que
oriente los paneles a la posicin del Sol. Utilizando un seguidor solar se han
reportado ganancias superiores al 25%, segn estudios de campo.
El objetivo general de esta investigacin fue disear e implementar un
servomecanismo que auto-orienta paneles fotovoltaicos, de forma que sigan la
trayectoria del Sol y se coloquen de forma casi perpendicular a sus rayos.
Al utilizar sensores fotoelctricos, motores y otros componentes electromecnicos, se
puede orientar de manera automtica el mecanismo base de un panel solar, de forma
que se oriente, buscando captar de manera ms eficiente la energa Solar.
En la presente tesis se realiza el diseo e implementacin de un sistema de control
por medio de Redes Neuronales Artificiales, implementado en Arduino, controlando la
posicin de paneles solares fotovoltaicos de manera correcta.
Considerando los problemas de deficiencia presentes en paneles estticos, se elige
implementar un sistema seguidor solar con dos grados de libertad, que por medio de
RNA en Arduino es capaz de generar la seal de control de posicin del panel.
Captulo I
Marco de Referencia
Objetivo general
Objetivos especficos
Disear un
dispositivo
electromecnico
para orientacin
respecto al
Implementar
un
sistema
de
control
para
automatizar
el
dispositivo
electromecnico construido.
1.5 Justificacin
Promover y mejorar el uso de paneles fotovoltaicos es importante para el cuidado del
medio ambiente, como fuente limpia o verde que existe. Esto evita producir agentes
contaminantes, que daan la atmosfera e incrementan el calentamiento global.
Los paneles fotovoltaicos son implementados en sistemas que requieran de energa
elctrica, y depende del consumo elctrico la cantidad de celdas requeridas. Gracias
a esta alternativa se prev para un futuro una disminucin en la dependencia de las
fuentes tradicionales de energa obtenidas a partir de combustibles fsiles (petrleo,
carbn y gas natural).
Para aumentar la eficiencia de captacin solar es importante implementar un
servomecanismo que le oriente segn la posicin del Sol. Al desarrollar un sistema
electromecnico con componentes y circuitos simples hace que el costo sea bajo a
comparacin con el proporcionado por empresas comercializadoras, beneficiando as
a las personas que los requieren.
Los sistemas orientadores automticos son una tecnologa poco utilizada en el
campo de la energa solar, por lo cual el producto a desarrollar satisface una
necesidad de mercado.
Limitantes
12
Captulo 2
Marco Terico
13
Los sistemas fotovoltaicos son aquellos que convierten la energa proveniente del Sol
en energa elctrica mediante clulas fotoelctricas.
1 JUTGLAR, Llus. Energa solar, Barcelona Espaa: CEAC 2009. pp 7-8
14
2 Mndez Muiz Javier Mara, cuervo Gracia Rafael, Energa Solar Fotovoltaica 2da Edicin, Espaa: Fundacin
Confemetal pp. 16
15
1/3 de la energa total interceptada por la atmosfera, el 70% llega al mar, aun as, es
miles de veces el consumo energtico mundial.
2.1.2.1 Tipos de radiacin solar
Cuando la radiacin solar penetra en la atmsfera, tiene lugar un fenmeno de
absorcin y dispersin, que depende de la masa, el espesor y la densidad de la capa
de aire, y su composicin.
En funcin a los rayos que inciden en la Tierra se distinguen cinco componentes de
la radiacin solar5:
Radiacin directa: Es aquella que procede del Sol, pasa en lnea recta a
travs de la atmsfera de la Tierra, pero no se disipa, se desva ni padece
reflexiones o refracciones intermedias, llegando directamente a la superficie
terrcola sin cambio alguno en su trayectoria lineal.
Radiacin difusa: Es la radicacin que parte del Sol, pasa por la atmsfera,
sufre cambios, por lo tanto se desvan los rayos solares de su direccin
original, como consecuencia de los mltiples procesos de reflexin, refraccin,
dispersin y absorcin, producidos por el choque directo de agentes
atmosfricos tales como: nubes, partculas de polvo, molculas en el aire,
montaas, rboles, edificios, el suelo y el resto de elementos atmosfricos
terrestres. Por lo tanto la radiacin difusa no tiene ninguna direccin y va en
todas direcciones.
Feb
Mar
Abr
May
Jun
Jul
Ago
Sep
Oct
Nov
Dic
7 Sistema de informacin energtica del estado de Guanajuato (SIEG). Fecha de consulta: agosto 2014. Sitio
Web: http://energia.guanajuato.gob.mx/siegconcyteg/formulario/Solar/frmValoresIrrdiacionSolar.php
20
Pursima
del
Rincn
3,697
4,297
5,307
5,152
3,639
su produccin. El primer paso fue buscar paneles con mayor eficiencia, esto se logr
en 1970, la primera clula solar con heteroestructura de arseniuro de galio (GaAs) y
altamente eficiente se desarroll en la Unin Sovitica por Zhore Alferov.8
8 Garca, Santiago. Energa Fotovoltaica. Energiza. Octubre 2013 (Edicin 3). pp 12-14
9 Secretaria de energa (SENER). Iniciativa para el desarrollo de las energas renovables en Mxico, Noviembre
2012. pp 10,12,13
10 Informador redaccin NBVV, Permiten seguidores solares ahorrar energa. Agosto 5 del 2012. Sitio web:
http://www.informador.com.mx/tecnologia/2012/395337/6/permiten-seguidores-solares-ahorrar-energia.htm
11 Secretaria de energa (SENER). Iniciativa para el desarrollo de las energas renovables en Mxico, Noviembre
2012. pp 3
22
electrones son libres, se produce una corriente elctrica que puede ser utilizado
como fuente elctrica. Las celdas fotovoltaicas generalmente estn hechas a base de
silicn, el mismo material que se utiliza para transistores y circuitos integrados. El
silicn es tratado para que cuando le llegue la luz, se liberen los electrones,
generando as una corriente elctrica.
La cantidad de energa generada por una celda solar es determinada por la cantidad
de luz que incide directamente sobre ella, lo cual est determinado por el clima y la
hora del da.
2.2.3.1 Tipos de paneles fotovoltaicos
Existen tres tipos de paneles fotovoltaicos, los cuales son: 14,15
Monocristalinos
Estn formados por barras de silicio cristalizado, cuya red cristalina es idntica en
todo el cristal y caracterizada por la solidificacin de los tomos del silicio en tres
direcciones espaciales, perpendiculares entre s, y sin imperfecciones entre s.
Se ha demostrado en pruebas de laboratorio que su rendimiento es por encima de
24,7%.
Amorfos
Este panel tambin es elaborado de silicio, su forma no es muy parecida a los ya
mencionados. Son empleados en pequeos dispositivos electrnicos como lo son
26
27
16 Junta de Castilla y Len. Manual del Instalador. Energa Solar Fotovoltaica. Primera Edicin. Pp 57
28
18 Energizar, Fundacin Argentina. Energa Solar. Sitio Web: http://www.energizar.org.ar. Publicado en el 2010.
19 Beltrn, Adn Jos. Prototipo fotovoltaico con seguimiento del sol para procesos electroqumicos. Tesis de
maestra. Mxico 2009. Pp 30-34
20 Guardado, Gutirrez Domingo Heriberto. et al. Implementacin de seguidor solar en dos ejes para sistema
fotovoltaico. Universidad de el Salvador 2009. Pp 11-15
30
Un solo eje horizontal. Este tipo de seguidor tiene el eje horizontal respecto al
suelo. En este caso, el eje horizontal est orientado Norte-Sur, y a lo largo del
da los paneles horizontales girarn sobre este eje, siguiendo el movimiento
aparente del Sol. Este tipo de seguidor es aceptable en latitudes cercanas al
ecuador.
Un solo eje vertical. En este caso el eje est vertical respecto al suelo. En
32
Un solo eje inclinado. Los seguidores de un solo eje que no sea ni vertical ni
horizontal, es un seguidor de eje inclinado. Los paneles estn inclinados con
la misma inclinacin del eje, y cuando giran forman un cilindro alrededor de
este eje.
Nmero
1
2
3
4
5
6
7
8
9
10
35
Nmero
1
2
3
4
5
6
7
8
9
En la Figura 15 se muestra una vista de seccin a detalle del punto de giro o unin
de giro. Y en la tabla 3 los nombres de los elementos.
Esta parte ayuda a dar una idea clara para el diseo a proponer con los materiales
36
disponibles.
A continuacin se da una breve explicacin de los componentes electromecnicos
del seguidor solar, elementos de transmisin mecnica (engranes) y soportes, para el
posicionamiento.
2.4.1.1 Elementos electromecnicos
Los elementos electromecnicos son el conjunto de partes elctricas, electrnicas y
mecnicas encargados de hacer una funcin, como se mencion anteriormente.
Algunos ejemplos de estos son motores elctricos, microcontroladores, relevadores,
etc., que al combinarlos realizan una determinada tarea.
Motores de corriente continua (CC).
El motor de corriente continua es una mquina que convierte energa elctrica en
movimiento o trabajo mecnico, a travs de fenmenos electromagnticos. Este tipo
de motor es llamado as por el tipo de corriente que utiliza para su alimentacin. 22
El primer periodo de desarrollo de la mquina de corriente continua, que abarca el
tiempo desde 1831 hasta 1851, est enlazado ininterrumpidamente con los nombres
de los cientficos rusos E. J. Lenz y B. S. Jacobi, gracias a ellos y al desarrollo
tecnolgico este tipo de motor ha ido evolucionando. 10
Un motor de corriente continua produce torque gracias a la conmutacin mecnica
de la corriente.
En la Figura 16 se presenta un esquema del motor, donde el campo magntico
permanente es producido por imanes en el estator, el flujo de corriente en el
devanado del rotor produce una fuerza sobre el devanado. Debido a que en este
caso el motor tiene dos polos, la conmutacin se hace por medio de un anillo partido
a la mitad, donde el flujo de corriente se invierte cada media vuelta (180 grados).
22 Stephen J. Chapman. Maquinas Elctricas. Tercera Edicin. Australia. , Editorial Mc Graw Hill. 2000. pp 646.
37
motores, rels, sensores de luz, diodos lser, altavoces, micrfonos, etc. Se puede
alimentar mdiate la conexin USB del ordenador o con una fuente de 9 V. La placa
se puede controlar directamente desde la computadora, o programarla con esta, o
desconectarla para trabajar de forma automtica.25
El elemento principal de Arduino es el microcontrolador. El resto de la placa se ocupa
de facilitar la alimentacin y permitir que se comunique con la computadora a la que
est conectado. El lenguaje que se utiliza para la programacin de este
microcontrolador es estndar como Python, C, Java, Php, etc.
Las ventajas de Arduino son las siguientes:26
Es libre y extensible: esto quiere decir que cualquiera puede mejorar y ampliar
la capacidad del Arduino sin problema. Esto permite que exista un rico
ecosistema de extensiones, tanto de variantes de placas no oficiales como
de libreras y software de terceros, que pueden adaptarse mejor a
necesidades concretas.
los
41
componentes importantes.
como son:
GND: tiene dos pines hembra conectados a tierra. Es importante que todos
los componentes del circuito compartan una tierra comn como referencia.
Vin: Este pin hembra se utiliza como una fuente externa ya sea que est
conectado a la clavija de 2,1 mm o mediante el cable USB, el voltaje y
corriente que genera es proporcional a la que entra.
5V: este pin proporciona una fuente de alimentacin de 5 voltios a partir del
recibido a travs del cable USB o de la clavija de 2,1 mm, y la corriente
mxima generada es de 40mA.
3,3V: este pin hembra ofrece un voltaje de 3,3V, este voltaje se obtiene a
travs del cable USB o de la clavija de 2,1 mm y se encuentra regulado con un
error de 1% por un circuito especifico incorporado. La corriente mxima que
suministra es de 50mA.
Pin 0 (RX) y pin 1 (TX): estos pines permiten que el microcontrolador pueda
recibir datos en serie por el pin RX o transmitirlos por el pin TX sin pasar por la
conversin USB, es decir, estos pines facilitan la comunicacin sin
intermediarios de dispositivos externos receptor/transmisor.
Pin RESET este pin permite reiniciar si el valor de voltaje es muy bajo. Para
realizar esta funcin la misma placa Arduino ya dispone de un botn.
Pin IOREF este pin es una duplicacin regulada del pin Vin su funcin es
indicar a la placa el voltaje al cual estn trabajando.
salidas
analgicas
PWM),
16
entradas
analgicas
4
44
28 TORRENTE, Artero scar. Arduino, Curso Prctico de Formacin. Primera Edicin, Mxico: Alfaomega
2013. pp 102
45
Arduino Mini. Esta placa es muy parecida a la placa Arduino Nano, est
basada igualmente en el microcontrolador ATmega328P SMD funcionando a
16MHz, tiene 14 pines de entrada/salida digitales (6 de los cuales pueden
funcionar como salidas PWM) y 8 entradas analgicas. Y al igual que la placa
Arduino Nano, el Arduino Mini est especialmente pensada para conectarla a
una protoboard mediante las patillas que sobresalen de su parte posterior,
formando parte as de un circuito complejo de una manera relativamente fija.
Sensores de posicionamiento
Existen varios tipos de sensores fotoelctricos, el ms comn y econmico es el
sensor llamado LDR.
Puede tambin ser llamado fotorresistor, fotoconductor, clula fotoelctrica o resistor
dependiente de la luz, cuyas siglas, LDR, se originan de su nombre en ingls light
29 TORRENTE, Artero scar. Arduino, Curso Prctico de Formacin. Primera Edicin, Mxico: Alfaomega
2013. pp 113
46
Relevador
El Relevador o rel fue inventado por Joseph Henry en 1835, Su funcin es de un
interruptor controlado por un circuito elctrico, por medio de una bobina y un
electroimn, se acciona un juego de uno o varios contactos que permiten abrir o
cerrar otros circuitos elctricos independientes.30
30 F. Graf, Rudolf. Diccionario de Electrnica. Ediciones Pirmide, 1984.
47
En est subtema no se hace mencin del diseo de los engranes, ya que los
31 J. E. Shigley. Diseo en ingeniera mecnica. Octava edicin. Espaa: McGraw-Hill, 2008. Pp 654-680
48
elementos que se adquiere estn diseados para ejercer una fuerza mayor a la
requerida para el prototipo del seguidor solar, as que solo se mencionaran los tipos
de engranes que existen.
Los tipos de engranes son los que se mencionan a continuacin:
Engranes rectos.
Como se ilustra en la Figura 21 este tipo de engrane tienen dientes paralelos al eje
de rotacin y se emplean para transmitir movimiento de un eje a otro eje paralelo.
Estos engranes son los ms simples que existen. Se utilizan generalmente para
velocidades pequeas y medianas, a grandes velocidades si no son ratificados o
pulidos producen ruido cuyo nivel depende de la velocidad de giro que tengan.
Engranes helicoidales
Como se observa en la Figura 22, este tipo de engranes poseen dientes inclinados
con respecto al eje de rotacin, y se utilizan para las mismas aplicaciones que los
engranes rectos, estos no son tan ruidosos, debido al engranado que es ms gradual
de los dientes durante el acoplamiento.
Asimismo, el diente inclinado desarrolla cargas de empuje y pares de flexin que no
estn presentes en los engranes rectos. En ocasiones, los engranes helicoidales se
usan para transmitir movimiento entre ejes no paralelos.
49
Sistema de
control
Salida; respuesta
Respuesta real
Intensidad
luminosa
Posicin
Correcta
Microcontrolador
Arduino UNO
Motor 1 y 2
Sensor
LDR
Figura 26. Diagrama de bloque del seguidor solar
Especificar
la
informacin
que
debe
proporcionarse
al
resolverse
(especificaciones de salida).
una
transformacin
lineal.
Las
redes
neuronales
artificiales
son
35 Ponce, Pedro. Inteligencia artificial con aplicaciones a la ingeniera. Mxico 2010. Pp 193-194
55
57
Procesamiento paralelo
Habilidad de generalizar
Adaptabilidad
Tolerancia a falla
37,38,39,40
36 F.C. Rosa. et al, La Neurona Biolgica y su Implementacin Artificial. CIO: Len, Guanajuato. p.p 3-16.
37 Pedrycz, W., Computacional Intelligence: an introduction. 1 ed. Computer Engineering. 1998, Florida USA:
CRC PressLLC. pp 7-35.
38 Kasabov, N.K., Foundations of Neural Networks, Fuzzy Systems, and Knowledge Engineering. 2 ed. Expert
systems (Computer science), ed. B. Book. Vol. 1. 1998, London, England: MIT Press. pp 251-307
39 Rosa, F.C.d.l. and M.S. Girardo, La Neurona Biologica y su Implementacion Artificial. 1993, CIO: Len,
Guanajuato. pp 3-16.
40 Jain, A.K. and J. Mao, Artificial Neural Networks: A tutorial. IEEE Computer, 1996. 18: p. 31-44
58
Figura 28. Modelo ms simple de una neurona realizada por McCullon y Pitts
neurona biolgica42.
El modelo matemtico de la neurona McCulloc-Pitts est dado por la siguiente
ecuacin.
Ec. 1
Donde:
= Valor de la seal de salida de la neurona, regularmente se considera igual al nivel
de activacin de la neurona.
= Peso de la entrada j.
= Valor de seal de entrada j.
= Valor de umbral o sesgo de la funcin.
= Nmero de entradas a la neurona.
Las funciones de entrada ms empleadas y conocidas son:
44,45
a) sumatoria del producto de los valores de entrada por sus respectivos pesos.
Ec. 2
b) Productora de las entradas pesadas (producto de todos los valores de
entrada, multiplicados por sus correspondientes pesos).
Ec. 3
c) Mximo de las entradas pesadas. Solo considera el valor de entrada ms
fuerte, previamente multiplicado por su peso correspondiente.
44 Kasabov, N.K., Foundations of Neural Networks, Fuzzy Systems, and Knowledge Engineering. 1998, London,
England. 257- 260.
45 Jones, P.C. y S. Tepavich, ADALINE Stabilization of an Inverted Robot Arm. 1997, www.aracnet.com.
60
Ec. 4
d) Distancia euclidiana.
Ec. 5
Una neurona artificial puede estar activa o inactiva; esto significa que tiene un estado
de activacin. Algunas neuronas artificiales pueden encontrarse en un valor de
activacin dentro de un conjunto determinado
La funcin de activacin calcula el estado de actividad de una neurona, esta es una
funcin del valor x proporcionado por la funcin de entrada (valor de salida en
funcin de entrada). Las funciones de activacin ms empleadas se mencionan en
seguida, y muestran en la Figura 29.
a) Funcin de activacin lineal.
Ec. 6
61
62
Ec. 9
Siendo A y B un valor que afecta la dispersin de la funcin.
Por ltimo el elemento de procesamiento est listo para proporcionar el valor de la
seal de salida u. Esta salida es transferida a otros elementos de procesamiento, o a
una conexin de salida, como corresponda a la estructura de la red.
Si la funcin de activacin est por debajo de un umbral determinado (ver Figura 29),
ninguna salida se pasa a la neurona siguiente. Normalmente los valores de entrada a
una neurona estn restringidos dentro de un rango: [0, 1], [-1, 1], etc.
Dos de las funciones de salida ms empleadas se muestran en la Figura 30 46.
a) La funcin identidad. Donde la salida es la misma que la entrada.
Ec.10
Siendo ui(t) el valor de la seal de salida de la neurona i en el tiempo t.
b) La funcin binaria.
Ec.11
Siendo
46 Frausto, Cesar. Control de un pndulo invertido empleando redes neuronales artificiales. 2005. Pp 16-17
63
47 Jain, A.K. et al. Artificial Neural Networks: A tutorial. IEEE Computer, 1996. Pp 35
64
Bsicamente, todas las RNA tienen una estructura similar a la que se muestra en la
Figura 31. Existen redes que contienen una sola capa, o aun solo un elemento, pero
la mayora de las aplicaciones requieren redes que al menos tengan los tres tipos de
65
capa.
La capa de neuronas de entrada recibe los datos ya sea por medio de archivos de
entrada o aplicaciones de tiempo real directamente de sensores. La capa de salida
enva informacin directamente al mundo exterior, ya sea a un proceso de clculo
secundario o la etapa de potencia electrnica de un sistema de control mecnico, por
ejemplo. Entre estas dos capas puede haber muchas capas ocultas. Estas capas
internas contienen neuronas interconectadas en varias estructuras. La entrada y
salida de cada una de estas neuronas ocultas simplemente alimenta a otras
neuronas.48
Todas las neuronas correspondientes a una capa pueden estar conectadas con todas
las neuronas de las capas cercanas, esto sera una conexin completa. Cuando no
existen todas las conexiones posibles de una neurona o capa de neuronas se dice
que estn Parcialmente Conectadas.
Considerando las conexiones de realimentacin se pueden considerar dos clases de
arquitecturas, mostradas en la Figura 32.
Perceptrn.
Perceptrn multicapa.
Adaline.
Memorias asociativas.
Mquina de Boltzmann.
RNA de Elman.52
RNA de kohonen.
53 Ponce, Pedro. Inteligencia artificial con aplicaciones a la ingeniera. Mxico 2010. Pp 204
68
54,55
56
conjunto de entrenamiento {
} es linealmente separable.
(donde
cero para
se podra obtener
}.
define el operador de
Ec. 14
Donde
todo
, y
correctamente a
para todo
para
. Si el Perceptrn clasifica
pesos.
57 UNInotas. Campus Party 2014, Fiesta Tecnolgica en Colombia. Colombia Julio 2014. ISSN 2027-839X
58 El Informador. Estudiantes de Unimagdalena participaron en la fiesta tecnolgica ms grande de Colombia.
Campus Party. Julio del 214. Sitio Web: http://www.elinformador.com.co/
59 Hobbizine. A neural network for Arduino. Sitio web: http://robotics.hobbizine.com/arduinoann.html
60 Ramrez, Oscar A. et al. Creacin de una red neuronal artificial e implementacin en un microcontrolador.
Encuentro de investigacin en ingeniera elctrica. Zacatecas, Zacatecas. Marzo 25-26 del 2010.
61 Granado, Benito. et al. Implementacin de una Red Neuronal Multicapa en un Microcontrolador PIC para la
Identificacin de Color. 10 Congreso Nacional de Mecatrnica. Puerto Vallarta, Jalisco. Noviembre 3 y 4 del
2011.
72
Clculo y Matemtica.
Desarrollo de Algoritmos.
Adquisicin de datos.
62Ataurima, Miguel. Matlab y Simulink para ingeniera Nivel 1. Universidad de Ciencia y Humanidades,
facultad de ciencia e ingeniera. Julio 2013. Pp 7-10
63 Hudson, Mark. et al. Neural Network Toolbox User's Guide. Versin 8.4. 2015. Natick,MA: The
MathWorks,Inc. Pp 1-30
73
Network Toolbox).
Al crear una RNA mediante el espacio de trabajo de Matlab es necesario introducir
los comandos adecuados para obtener la arquitectura deseada en la RNA. Esta
forma de disear RNAs permite personalizar la arquitectura y presenta la ventaja de
poder emplear funciones de entrada, de activacin y de salida definidas por el
usuario o, una combinacin de las ya implementadas en el propio Matlab.
Utilizando el conjunto de bloques en Control Systems se puede seleccionar una de
las opciones de RNAs ya diseadas para controlar sistemas, la desventaja de esta
herramienta es que algunas versiones de Matlab anteriores al 7.0 no es posible
generar el cdigo necesario para ejecutarla en tiempo real mediante Real Time
Workshop o Real Time Windows Target.
Por ltimo, la tercer forma de disear una RNA es mediante la GUI nntool. Esta
herramienta permite crear RNAs de distintas arquitecturas mediante la seleccin en
un men de la arquitectura deseada. Para este trabajo se seleccion la GUI nntool
para crear las RNAs empleadas en el control del seguidor solar.
Cuando se crea una RNA en Matlab, las capas generadas incluyen la combinacin
de: pesos, operaciones de multiplicacin y suma (en este caso realizadas como un
producto entre vectores W*P), el sesgo b, y la funcin de transferencia f.
2.6.1.1 Creacin de un Perceptrn mediante la GUI nntool de Matlab
A continuacin se presenta uno de los mtodos para crear y entrenar una Red
Neuronal Artificial tipo Perceptrn. En el cual se utiliza el software Matlab Versin
7.8.0.347 (RS2009a).
Por ejemplo se tienen los datos mostrados en la Tabla 4. Donde X1 y X2 son los
datos de entradas y S son los resultados esperados.
Entradas
X1
0
0
1
1
X2
0
1
0
1
Salidas
S
0
0
0
1
74
Con los valores que contiene la tabla, en el espacio de trabajo de Matlab se debe
introducir los datos de entradas y salidas en forma matricial tal y como se observa en
la Figura 34.
Para acceder a la Interface de Usuario Grfico de RNAs, en el espacio de trabajo de
Matlab se debe introducir el comando: nntool. Lo que permite acceder a la ventana
Administrador de RNAs (Network/Data Manager) mostrada en la Figura 35.
75
Se debe importar los datos de entradas y salidas, esto se logra haciendo clic en el
botn Import de la ventana Network/Data Manager, como se observa en la Figura 36.
Una vez importado los datos, se debe crear la RNA. Con el botn New de la ventana
Network/Data Manager (Figura 35). Aparece la ventana emergente de la Figura 37 en
donde se introduce los parmetros necesarios.
76
La ventana Create Network or Data permite introducir los parmetros para entrenar
una RNA. Los parmetros a considerar en la creacin de un Perceptrn son:
Network Type: es el tipo de RNA, en este caso debe ser del tipo Perceptrn.
78
En la Figura 39 se observa los parmetros requeridos por nntool y que sirven para el
entrenamiento del Perceptrn, donde el tiempo de entrenamiento depende de las
pocas (epochs) y el error (goal) este ltimo debe ser lo mnimo posible.
Al hacer clic en Train Network aparece la ventana emergente que muesrta el
comportamiento de la red durante su entrenamiento, Figura 40, donde resume la
informacin ms importante del proceso de entrenamiento, a fin de encontrar los
pesos (w) y umbrales (b) ms convenientes para la RNA.
79
Una vez terminado el proceso. Los estados de formacin que se produce durante el
proceso de entrenamiento se pueden analizar. Esto se logra haciendo un clic en el
botn Performance (de la Figura 40) y aparece una grfica donde se identifica el
mejor desempeo, ilustrado en la Figura 41.
En el botn View/Edit Weights (ver Figura 39) se visualizan los pesos (W) y los
umbrales (b) encontrados para que el Perceptrn lleve a cabo la tarea entrenada, tal
y como se observa en la Figura 42.
80
Para comprobar que la RNA aprendi la tarea de manera correcta, se simula. Esto se
hace insertando en el espacio de trabajo de Matlab datos no utilizados para el
entrenamiento y que se desean presentar. En la misma ventana donde se entrena,
en el botn Simulate se ingresa el valor de entrada (Inputs) que se haya creado en
Matlab y se enva con el botn Simulate Network que est en la misma ventana. Una
vez realizado esto, en la ventana Network/Data Manager se abre la salida (en Output
Data dar doble clic) y aparece el resultado deseado, tal y como se muestra en la
Figura 43.
Break
Case
Char
const
continue
default
64 W., Brian. et al. El lenguaje de programacin C. Segunda edicin. Mxico: Pearson educacin, 1991. pp 40-59
82
do
goto
signed
unsigned
Doubl
If
Sizeof
Void
Else
Int
Static
Volatile
Enum
Long
Struct
While
extern
register
switch
float
return
typedef
For
short
union
implicacin
muy
importante:
no
es
lo
mismo
escribir
por
ejemplo
Men Archivo: esta sesin ofrece acciones estndar como crear un nuevo
sketch, abrir uno existente, guardarlo, cerrar el software en s, etc., tambin
hay otras acciones. Por ejemplo, la entrada Ejemplos se accede a los
sketches de ejemplos que vienen con el programa. Dentro del men se
encuentra la entrada Preferencias, donde abre un cuadro emergente que
ofrece la posibilidad de establecer algunas preferencias del software, como
por ejemplo la de cambiar la ubicacin de la carpeta sketchbook, el idioma
del software, tamao de la fuente de letra, la activacin de las actualizaciones
automticas del programa, el nivel de detalle en los mensajes mostrados
durante el proceso de compilacin y/o carga de los sketches, etc.
Men Editar: ofrece las acciones estndar como deshacer y rehacer, cortar,
copiar y pegar texto, seleccionar todo el texto o buscar y reemplazar texto,
adems de otras acciones. Por ejemplo Copiar al Foro lo que hace es copiar
el cdigo del sketch al portapapeles del sistema en una forma que es
especialmente adecuada para pegarlo en el foro oficial de Arduino (y as
recibir ayuda de la comunidad). Copiar como HTML copia el cdigo del
sketch al portapapeles del sistema en una forma que es especialmente
adecuada para pegarlo en pginas web genricas. Otras acciones a tener en
cuenta son por ejemplo la de Comentar / Descomentar la porcin de texto
84
Men Ayuda: desde este men se accede a varias secciones de la pgina web
oficial de Arduino que contienen diferentes artculos, tutoriales y ejemplos de
ayuda. No se necesita Internet para consultar dichas secciones ya que esta
documentacin se descarga junto con el propio software.
Otra zona contenido en el mismo programa son las barras de botones compuestas
por los siguientes elementos que se muestran en la Figura 45.
1. Verificar: este botn realiza dos cosas: comprueba que no haya ningn error
en el cdigo del sketch, y si el cdigo es correcto, entonces lo compila.
2. Subir: este botn se debe pulsar inmediatamente despus del botn
Verificar. Su funcin es invocar internamente al comando avrdude para
cargar en la memoria del microcontrolador de la placa Arduino el sketch
recientemente verificado y compilado. Avrdude es capaz de realizar su tarea
porque al hacer clic en este botn se activa automticamente el bootloader del
microcontrolador (auto-reset).
3. Nuevo: Crea un nuevo sketch de trabajo.
4. Abrir: presenta un men con todos los sketches disponibles para abrir.
5. Guardar: guarda el cdigo del sketch que se est trabajando en un fichero, el
cual tiene la extensin .ino. Los ficheros se guardan en cualquier ubicacin
85
que se le indique, pero el software Arduino ofrece una carpeta especfica para
ello, la carpeta sketchbook, ubicada dentro de la carpeta personal del
usuario del sistema y generada automticamente la primera vez que se
ejecuta el programa.
6. Monitor Serie: abre el monitor serie que es una ventana emergente que
acta como una terminal independiente que se comunica mediante la
recepcin y el envo de datos en serie.
Justo debajo del botn de Monitor Serie se tiene un botn desplegable desde
el cual abre nuevas pestaas. Tener varias pestaas abiertas a la vez suele
ser til cuando se tiene un cdigo tan largo que se necesita dividirlo en partes
para trabajar cmodamente. Esto es as porque todas las nuevas pestaas
abiertas forman parte del mismo proyecto que la primera pestaa original (y
por lo tanto, el cdigo escrito en todas ellas es solo uno) pero el contenido
particular de cada una de las pestaas se guarda fsicamente en un fichero
diferente, permitiendo as una manipulacin ms sencilla.
86
Captulo 3
Componentes Estructurales
87
89
Caractersticas
Potencia promedio (Pmax)
Voltaje en potencia mxima (Vmp)
Corriente en potencia mxima (Imp)
Voltaje en circuito abierto (Voc)
Corriente en corto circuito (Isc)
Temperatura de operacin
Sistema mximo de voltaje conectado
Fusible mximo promedio
Dimensiones
Peso
20 W
18.82 V
1.08 A
22.58 V
1.19 A
- 40C a + 85C
1000 V
15 A
485mmx360mmx20mm
2.3 kg
90
25 W
17.2 V
1.45 A
21.6 V
1.58 A
de -2C a + 42C
600 V
495mmx356mmx25mm
2.4 kg
91
Especificaciones
Mdulo (m)
Ancho de cara (F)
Nmero de dientes (Z)
ngulo de presin ()
Dimetro del eje
1,5 mm
8 mm
32
20
20 mm
94
95
Nmero
1
2
3
4
5
6
7
8
9
10
11
96
dispositivo
es
de
gran
ayuda
til
en
las
aplicaciones
de
ser utilizado como interfaz entre las salidas de un Arduino en este caso, o cualquier
integrante de las familias TTL o CMOS y dispositivos que necesiten una corriente
ms elevada para su funcionamiento, como un rel o motor C.C. Este dispositivo
soporta una tensin mxima de 50 voltios.
A cada motor se conectan dos rels a la salida del ULN2803, la finalidad es
manipular remotamente la orientacin del mecanismo. En la Figura 58 se ilustra la
interfaz de potencia.
Para el posicionamiento correcto se debe de colocar algn tubo delgado que est
perpendicular a los paneles fotovoltaicos, de tal forma que su sombra permita
visualizar cuando los rayos del Sol queden de manera perpendicular al tubo gua, la
manera ms fcil de observar cuando la estructura este de manera perpendicular a
los rayos es eliminado lo ms posible la sombra del tubo empleado.
seales en presentes
en =las
int myLDR0
0;fotorresistencias.
99
100
SALIDAS
DIFERENCIAS
POSICI
N
S1
S2
S3
S4
S1
Vs
S2
S1
Vs
S2
S2
Vs
S3
S3
Vs
S4
S1
Vs
S3
S2
Vs
S4
S1
Vs
S4
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
P13
P14
P15
P16
P17
P18
P19
P20
12
10
11
13
17
11
11
11
13
11
11
14
11
11
12
12
12
11
12
11
28
24
24
26
25
25
24
25
26
26
25
34
25
27
33
25
28
25
25
26
8
7
7
8
8
7
7
7
10
7
7
8
7
7
9
7
7
7
7
7
15
12
13
17
27
13
12
14
23
13
12
13
13
13
13
15
13
13
15
13
-16
-14
-13
-13
-8
-14
-13
-14
-13
-15
-14
-20
-14
-16
-21
-13
-16
-14
-13
-15
-16
-14
-13
-13
-8
-14
-13
-14
-13
-15
-14
-20
-14
-16
-21
-13
-16
-14
-13
-15
20 -7
17 -5
17 -6
18 -9
17 -19
18 -6
17 -5
18 -7
16 -13
19 -6
18 -5
26 -5
18 -6
20 -6
24 -4
18 -8
21 -6
18 -6
18 -8
19 -6
4
3
4
5
9
4
4
4
3
4
4
6
4
4
3
5
5
4
5
4
13 -3
12 -2
11 -2
9
-4
-2 -10
12 -2
12 -1
11 -3
3 -10
13 -2
13 -1
21 1
12 -2
14 -2
20 -1
10 -3
15 -1
12 -2
10 -3
13 -2
M1 M2 M3 M4
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
0
1
0
0
0
0
0
1
1
1
0
1
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
1
1
1
0
0
1
0
0
0
0
1
1
1
0
0
0
0
1
1
1
0
0
0
0
0
0
1
0
Tipo de Red
Funcin de
transferencia
Funcin de
aprendizaje
pocas
Factor de
Aprendizaje
Perceptr
n
HARDLIM
LEARNPN
15000
0.120
102
Figura 61. Valores del error medio cuadrtico presente en el Perceptrn durante su
entrenamiento
103
104
Etapa de procesamiento, las seales de entrada generadas por los LDRs son
procesadas mediante Redes Neuronales Artificiales para el accionamiento de
los motores y posicionamiento de los paneles fotovoltaicos (ver Anexo 1).
El hardware Arduino est alimentado mediante un regulador de tensin
(LM7805CV).
Figura 64. Prototipo desarrollado con el sistema de control de RNA tipo Perceptrn
La manipulacin de la estructura fue hecha de manera directa para obtener los datos
de inicio en el entrenamiento de la RNA.
Con el fin de mejorar el comportamiento dinmico se vio conveniente utilizar una
serie de resortes, y elementos elctricos para disminuir el movimiento brusco, ya que
los motores utilizados son de alto torque, y en la activacin
es conveniente
Con el fin de integrar todos los elementos del sistema utilizado para el sistema de
control, se opt por construir una caja en donde se contienen y protegen de la
interperie, esta se muestra en la Figura 65, y en su exterior se encuentran: un botn
de encendido y apagado utilizado para activar o desactivar el funcionamiento del
mecanismo, las conexiones de salida para los motores implementados, adems la
disposicin de dos salidas de voltaje (12 voltios) para diversas aplicaciones.
Los materiales utilizados son de fcil adquisicin, adems se le agregaron funda a
los motores, la finalidad: protegerlos de las adversidades del clima (polvo, humedad,
rayos solares, etc.).
Dentro de la caja se encuentran los siguientes elementos:
108
Captulo 4
MEDICIONES Y ANLISIS DE RESULTADOS
109
Figura 66. Esquema de conexin para monitorear la generacin elctrica en los paneles
Figura 68. Grfica del comportamiento en panel fotovoltaico policristalino en las dos
condiciones de orientacin (Sol intenso noviembre 2015)
113
Figura 69. Grafica del comportamiento sobre panel fotovoltaico monocristalino en dos
condiciones diferentes (Sol intenso noviembre 2015)
Se infiere, a partir de los datos observados durante las pruebas, que en los das
nublados el incremento en la generacin elctrica es mayor por la captacin de luz
solar beneficiada con el seguidor solar, respecto al caso de tener el panel fijo; El
sistema de control del prototipo fue entrenado bajo condiciones atmosfricas con
incidencia altas y bajas de sol. El sistema se comporta muy estable bajo dichas
condiciones de trabajo.
En los das nublados, la irradiacin de luz solar es significativamente menor, y los
fotones que inciden sobre los paneles provienen de toda la bveda celeste, es decir,
es difusa.
114
Figura 70. Condiciones de trabajo en panel fotovoltaico tipo policristalino soleado vs nublado
posicionado estticamente (noviembre 2015)
115
Conclusiones
Para obtener un buen aprendizaje de la RNA es necesario realizar un gran nmero
de pruebas con condiciones climatolgicas diferentes ya que entre ms informacin
sea proporcionada a la Red esta ser capaz de aprender con mayor eficiencia la
tarea requerida, para llevar a cabo su funcin de manera correcta. Al introducir una
cantidad excesiva de datos estos pueden ser redundantes, ya que la red puede ser
afectada con la cantidad de informacin y memorizar la tarea de manera errnea.
Una red tiene sus limitantes ya que no es posible que aprenda un comportamiento
que no ha sido debidamente incluido en sus datos de entrenamiento.
La respuesta del sistema de control de posicionamiento para paneles fotovoltaicos
implementado con Redes Neuronales Artificiales, es por naturaleza un sistema
inestable y no lineal, el cual se ve afectado por una gran cantidad de fenmenos
climatolgicos. Para su buen funcionamiento el rea donde se coloque el prototipo
debe estar despejada lo ms posible, ya que cualquier alteracin en el clima sea
nublado o estructuras cercanas a l pueden interferir con la lectura correcta de los
sensores colocados en el prototipo.
La red neuronal utilizada durante el desarrollo del trabajo fue del tipo supervisada,
existen otro tipo de redes en las que su programacin est diseada para que esta
misma este en continuo aprendizaje del entorno que la rodea, pero el
microcontrolador que se emplea en esta investigacin carece de memoria de
almacenamiento y de procesamiento para implementar dicha alternativa.
Los datos que se utilizaron para el entrenamiento de la red no siempre fueron
activados por elementos de control, ya que la adquisicin de la informacin fue
realizada con pequeos impulsos que se suministraban a los motores de CC, donde
117
119
Referencia bibliogrfica
ATAURIMA, Miguel. Matlab y Simulink para ingeniera Nivel 1. Universidad de
Ciencia y Humanidades, facultad de ciencia e ingeniera. Julio 2013. Pp 7-10
BELTRN, Adn Jos. Prototipo fotovoltaico con seguimiento del sol para
procesos
electroqumicos. Tesis
Investigacin
Desarrollo
de
maestra,
Tecnolgico,
Centro
coordinacin
Nacional
de
de
mecatrnica,
Comisin
Federal
de
Electricidad.
Energa
Renovable.
Sitio
Web:
http://www.cfe.gob.mx/
CRIADO, Vctor. Manual prctico de evaluacin de una instalacin de energa
fotovoltaica a pequea escala. Walter Hulshorst ECON internacional.
Universidad Politcnica de Madrid 2010.
EL INFORMADOR. Estudiantes de Unimagdalena participaron en la fiesta
tecnolgica ms grande de Colombia: Campus Party. 18 de Julio del 214.
Sitio Web: http://www.elinformador.com.co/
ELMAN, Jeffrey L. Finding structure in time. Cognitive Science, 14. 1990, San Diego.
Pp. 179-211
Energizar,
Fundacin
Argentina.
Energa
solar.
Sitio
Web:
Sinerpo.
Energa
en
sistemas
fotovoltaicos.
Sitio
Web:
120
J.A. et al,
Neural
and
A neural
network
for Arduino.
Noviembre
2014.
Sitio
web:
http://robotics.hobbizine.com/arduinoann.html
HUDSON, Mark. et al. Neural Network Toolbox User's Guide. Versin 8.4. 2015.
Natick,MA: The MathWorks,Inc. Pp 1-30
INSTITUTO NACIONAL PARA EL FEDERALISMO Y EL DESARROLLO MUNICIPAL
(INAFED). Enciclopedia de los Municipios y Delegaciones de Mxico.
2010. Sitio Web: http://www.inafed.gob.mx/work/enciclopedia/
INSTITUTO
UNIVERSITARIO
TECNOLOGAS
DE
INVESTIGACIN
DE LA INFORMACIN
DE
ROBTICA
Y COMUNICACIN
(IRTIC).
Eduardo.
Retratos
de
la
conexin
fotovoltaica
la
red,
Tesis
de
licenciatura.
Universidad
Politcnica
Salesiana
Ecuador, 2012. Pp 39
NISE, S. Norman. Sistemas de control para ingeniera. Tercera edicin. Mxico:
Continental, 2004. Pp 2
ORBEGOZO, Carlos. et al. Energa solar fotovoltaica: Manual tcnico para
instalaciones domiciliarias. Per: Green Energy 2010.
PEDRYCZ, W., Computacional Intelligence: an introduction. 1 ed. Computer
Engineering. 1998, Florida USA: CRC PressLLC. Pp 7-35.
PERPIN, Oscar. Energa solar fotovoltaica. Primera edicin. Espaa: Creative
Commons, Mayo 2014. Pp 25
PONCE, Pedro. Inteligencia artificial con aplicaciones a la ingeniera. Primera
123
124
Anexo
1. Cdigo Perceptrn en Arduino
UNO
int tiempo=500;
// Tiempo de activacin
de las salidas.
float pesos[4][10]={{-11.5001,-15.7452,-7.4925,-13.983,-67.9435,-8.7101,6.4905,-4.0076,1.7622,2.4829},
{0.082906,-0.0085693,0.053608,0.076982,0.091475,-0.038107,-0.023375,0.029298,0.03514,0.031422},
{-28.1126,24.5423,-9.7275,12.601,43.1398,-44.5121,-22.3285,10.5712,61.2436,-26.7147},
{3.3675,-1.7911,-11.2652,-0.69619,5.1195,4.0475,-10.5691,12.1426,-1.1453,4.0637}};
// Arreglo de pesos sinpticos.
float umbrales[4]={-0.70711,0,-0.85711,-0.20711};
// Valores umbral para la funcin escaln.
float temporal;
double lectura[10];
int contador=4;
int salidas[4]={2,3,4,5};
int salidas1[4]={0,0,0,0};
int x;
int y;
float z;
int w;
void setup() {
// Se inicializa cada pin como salida:
for (int estasalida = 0; estasalida < contador; estasalida++) {
pinMode(salidas[estasalida], OUTPUT);
}
/* configura la conexin y la velocidad */
Serial.begin(9600);
}
void loop() {
for(w=1;w<13;w++)
{
/* leemos el valor de los sensores y lo almacenamos */
for(contador=0;contador<4;contador++)
{
lectura[contador] = analogRead(contador);}
/* Se calcula la diferencia entre los sensores y se almacena */
lectura[4]=lectura[0]-lectura[1];
lectura[5]=lectura[1]-lectura[2];
lectura[6]=lectura[2]-lectura[3];
lectura[7]=lectura[0]-lectura[2];
lectura[8]=lectura[1]-lectura[3];
lectura[9]=lectura[0]-lectura[3];
/* Se procesan los valores de entrada y determinan las salidas */
for(x=0;x<4;x++)
{temporal=0;
for(y=0;y<10;y++)
{z=lectura[y]*pesos[x][y];
temporal=temporal+z;}
if(temporal<umbrales[x])
{salidas1[x]=0;}
else{salidas1[x]=1;}
}
/* Se activan las salidas correspondientes */
for (x=0;x<4;x++) {
// turn the pin on:
if(salidas1[x]<1)
{digitalWrite(x+2, LOW);}
// turn the pin off:
else{digitalWrite(x+2, HIGH);}
}
delay(tiempo/w);
for(x=2;x<6;x++)
digitalWrite(x, LOW);
delay(tiempo);
}
delay(20*tiempo);
}
125