scieee Science in your language
[sp] (orig)

BMS (Battery Management System) para una motocicleta eléctrica

Author: Lizarralde Bilbao, Markel
Year: 2020
Source: https://addi.ehu.eus/bitstream/10810/47707/1/TFM%20MARKEL%20LIZARRALDE.pdf
MÁSTER UNIVERSITARIO EN
INGENIERÍA EN TECNOLOGÍA INDUSTRIAL
TRABAJO FIN DE MÁSTER
BMS (BATTERY MANAGEMENT
SYSTEM) PARA UNA MOTOCICLETA
ELÉCTRICA
Es udian e Liza alde Bilbao Ma kel
Di ec o /Di ec o a Zuloaga Izagui e Ai zol
Depa amen o Tecnología elec ónica
Cu so académico 2019-2020
Bilbao, 14 de sep iemb e de 2020
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
1
RESUMEN TRILINGÜE
RESUMEN
El p opósi o de es e documen o es p esen a un p oyec o que es de u ilidad pa a el equipo
Mo oS uden . Es e p oyec o consis e en el desa ollo, ab icación y pues a a pun o de un BMS
(ba e y managemen sys em), so wa e necesa io pa a con ola lo y so wa e adicional pa a
diagnosis desde el o denado . Se mues a el diseño de un BMS de mane a económica pa a
pos e io men e u iliza lo en la compe ición de Mo oS uden . Se abajan apa ados ales como
los obje i os, el alcance, es udio de al e na i as y soluciones, desa ollo eó ico y p ác ico
comple o pa a la consecución del abajo y las conclusiones del mismo.
ABSTRACT
The pu pose o his documen is o in oduce a p ojec ha could be use ul o he Mo oS uden
eam. The p ojec consis s in he de elopmen o a BMS (ba e y managemen sys em) and i s
co esponding so wa e o be able o con ol i . The aim o his documen is o p esen he
possibili y o designing a BMS in an economical way o be able o use i in he Mo oS uden
compe i ion. The p oposed s udy is desc ibed in he ollowing ex . Rela ed o he documen ,
we will ind ou ha i is di ided in di e en pa s, including in oduc ion, con ex , goals and
scope, wo king plan, esou ces, and conclusions.
LABURPENA
Dokumen u honen helbu ua Mo oS uden aldea en za e abilga ia den p oiek u ba
ga a zea da. Lan hau BMS (ba e y managemen sys em) ba en ga apen eknikoa,
ab ikazioa, p og amazioa e a p obak egi ean da za. Mo oS uden lehiake an e abili ahal
izango den BMS ekonomiko ba diseina u da. Ga a uko di en a alen a ean helbu ua, i ispena,
auke en e a konponbideen az e ke a, lana au e a e ama eko ga apen ekniko osoa e a
ondo ioak au ki zen di a.
PALABRAS CLAVE
BMS, ba e y managemen sys em, Mo oS uden , placa elec ónica, so wa e, p og amación,
diseño esquemá ico, a duino.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
2
1. Con enido
1. MEMORIA ....................................................................................................................................................... 7
In oducción ....................................................................................................................................................... 7
Con ex o ............................................................................................................................................................... 7
Es ado del a e .................................................................................................................................................. 8
BMS come ciales .......................................................................................................................................... 8
Obje i os y alcance .......................................................................................................................................... 9
Bene icios .......................................................................................................................................................... 10
Bene icios Técnicos .................................................................................................................................. 10
Bene icios Económicos ........................................................................................................................... 11
Bene icios Sociales .................................................................................................................................... 11
Bene icios Medioambien ales .............................................................................................................. 11
Desc ipción de eque imien os ................................................................................................................ 11
Análisis y selección de al e na i as ........................................................................................................ 13
G upo de al e na i as 1: Topología del BMS .................................................................................. 13
G upo de al e na i as 2: Tipo de balanceo ..................................................................................... 14
G upo de al e na i as 2: Medición de ol ajes .............................................................................. 20
G upo de al e na i as 3: Topología de medición de in ensidades ........................................ 22
G upo de al e na i as 4: Tecnología de medición de empe a u as .................................... 23
G upo de al e na i as 5: P o ocolos de comunicación .............................................................. 24
G upo de al e na i as 6: Alimen ación del BMS ........................................................................... 25
G upo de al e na i as 7: Mic ocon olado .................................................................................... 26
Solución p opues a. Diseño de al o ni el ............................................................................................. 28
2. METODOLOGÍA SEGUIDA EN EL DESARROLLO DEL TRABAJO ............................................. 30
Plan de p oyec o y plani icación .............................................................................................................. 30
Fases del abajo ........................................................................................................................................ 30
Hi os ................................................................................................................................................................ 32
Equipo y ecu sos u ilizados ................................................................................................................ 33
Diag ama de Gan ......................................................................................................................................... 34
Diseño de placa escla a ............................................................................................................................... 34
Diseño esquemá ico: A duino Nano .................................................................................................. 34
Diseño esquemá ico: Balanceo ............................................................................................................ 36
Diseño esquemá ico: Medición de ol ajes ..................................................................................... 40
Diseño esquemá ico: Comunicaciones ............................................................................................. 45
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
3
Diseño esquemá ico: Módulo Mic o SD ........................................................................................... 46
Diseño esquemá ico: Pan alla OLED ................................................................................................. 47
Diseño esquemá ico: Alimen aciones ............................................................................................... 48
Diseño del PCB ........................................................................................................................................... 50
Diseño de placa maes a ............................................................................................................................. 54
Diseño esquemá ico: A duino Nano .................................................................................................. 54
Diseño esquemá ico: Con ol de con ac o es ................................................................................ 55
Diseño esquemá ico: Supe isión de con ac o es ....................................................................... 59
Diseño esquemá ico: Te mis o es ...................................................................................................... 61
Diseño esquemá ico: Supe isión del IMD ..................................................................................... 61
Diseño esquemá ico: Comunicaciones ............................................................................................. 62
Diseño esquemá ico: Módulo Mic o SD ........................................................................................... 65
Diseño esquemá ico: Pan alla OLED ................................................................................................. 65
Diseño esquemá ico: Alimen aciones ............................................................................................... 65
Diseño del PCB ........................................................................................................................................... 66
So wa e del BMS ........................................................................................................................................... 68
So wa e del escla o ................................................................................................................................ 69
So wa e del maes o ............................................................................................................................... 77
So wa e de moni o ización y análisis de uncionamien o ........................................................... 84
Ex ae da os en di ec o del BMS ....................................................................................................... 87
Analiza un a chi o gua dado en el PC ............................................................................................ 88
Ex ae da os gua dados del BMS ...................................................................................................... 88
Pues a en ma cha. Resul ados ob enidos............................................................................................. 89
Ensamblaje ................................................................................................................................................... 89
Re asos po ue zas mayo es ............................................................................................................. 94
P uebas de la placa escla a ................................................................................................................... 95
P uebas de la placa maes a .............................................................................................................. 100
P uebas BMS al comple o ................................................................................................................... 101
Fu u as mejo as ........................................................................................................................................... 101
3. COSTES DEL PROYECTO ..................................................................................................................... 104
4. CONCLUSIONES ...................................................................................................................................... 106
5. BIBLIOGRAFÍA ......................................................................................................................................... 108
6. ANEXO I: Diag ama de Gan ............................................................................................................. 110
7. ANEXO II: Esquema eléc ico de la placa escla a ...................................................................... 111
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
4
8. ANEXO III: Esquema eléc ico de la placa maes a .................................................................. 117
9. ANEXO IV: So wa e de la placa escla a ....................................................................................... 122
10. ANEXO V: So wa e de la placa maes a .................................................................................. 128
11. ANEXO VI: So wa e de moni o ización y análisis de uncionamien o ....................... 140
12. ANEXO VII: COSTES DEL PROYECTO ........................................................................................ 172
TABLA DE ILUSTRACIONES
Ilus ación 1. Topologías de BMS ................................................................................................................. 14
Ilus ación 2. Celdas desbalanceadas en ca ga máxima [3] .............................................................. 15
Ilus ación 3. Celdas desbalanceadas en ca ga mínima ...................................................................... 15
Ilus ación 4. Tipos de balanceo ................................................................................................................... 16
Ilus ación 5. Balanceo po esis encia ija .............................................................................................. 17
Ilus ación 6. Balanceo po diodo zene .................................................................................................... 17
Ilus ación 7. Balanceo po esis encia conmu ada .............................................................................. 18
Ilus ación 8. Balanceo de celdas ................................................................................................................. 19
Ilus ación 9. Medición de ol ajes de celdas en se ie ......................................................................... 20
Ilus ación 10. E apa de acondicionamien o ........................................................................................... 21
Ilus ación 11. Dis in os ipos de e apas de acondicionamien o .................................................... 22
Ilus ación 12. Con e ido es de alimen ación ...................................................................................... 26
Ilus ación 13. Diag ama de Gan ............................................................................................................... 34
Ilus ación 14. A duino Nano en el escla o ............................................................................................. 35
Ilus ación 15. Shi egis e ........................................................................................................................... 37
Ilus ación 16. Ci cui o de balanceo ........................................................................................................... 38
Ilus ación 17. Mul iplexo MUX508 y MUX509 .................................................................................... 41
Ilus ación 18. Tabla de e dad del mul iplexo [17] .......................................................................... 41
Ilus ación 19. Conexiones del mul iplexo ............................................................................................. 42
Ilus ación 20. Esquema in e no del AD628 [18] .................................................................................. 43

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
5
Ilus ación 21. OP-AMP en modo no in e so ........................................................................................ 44
Ilus ación 22. AD628 en el esquema eléc ico ...................................................................................... 45
Ilus ación 23. Aislado Si8600 [19] ........................................................................................................... 45
Ilus ación 24. Esquema del módulo Mic o SD ....................................................................................... 47
Ilus ación 25. Pan alla OLED ........................................................................................................................ 48
Ilus ación 26, MAX680 .................................................................................................................................... 49
Ilus ación 27. Alimen ación de la placa escla a ................................................................................... 50
Ilus ación 28. Diseño del PCB escla o ...................................................................................................... 51
Ilus ación 29. PCB escla o ............................................................................................................................. 52
Ilus ación 30. Bloques uncionales del escla o..................................................................................... 53
Ilus ación 31. A duino Nano en el maes o ............................................................................................ 55
Ilus ación 32. Ci cui o del con ac o [20] ............................................................................................... 56
Ilus ación 33. Esquema de con ol de con ac o .................................................................................. 58
Ilus ación 34. Con ol de con ac o comple o ....................................................................................... 59
Ilus ación 35. Supe isión de con ac o .................................................................................................. 60
Ilus ación 36. Esquema de conexión de e mis o es .......................................................................... 61
Ilus ación 37. Esquema de conexión del IMD ........................................................................................ 62
Ilus ación 38. Esquema del MCP2515D ................................................................................................... 63
Ilus ación 39. Esquema del MCP2551 ...................................................................................................... 64
Ilus ación 40. Res o de esquema del CAN ............................................................................................... 64
Ilus ación 41. Módulo blue oo h HC-05 ................................................................................................... 65
Ilus ación 42. Diseño de placa maes a ................................................................................................... 67
Ilus ación 43. Bloques uncionales de placa maes a ........................................................................ 68
Ilus ación 44. Tabla de e dad de los mul iplexo es ......................................................................... 72
Ilus ación 45. Bloque uncional de medición de ol ajes ................................................................. 73
Ilus ación 46. Diag ama uncional del balanceo .................................................................................. 77
Ilus ación 47. So wa e de análisis y moni o ización ........................................................................ 86
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
6
Ilus ación 48. Diag ama uncional del so wa e de análisis y moni o ización ........................ 86
Ilus ación 49. Fijación de las placas a solda ......................................................................................... 89
Ilus ación 50. Colocación del S encil ......................................................................................................... 90
Ilus ación 51. Colocación de componen es ............................................................................................ 91
Ilus ación 52. Soldadu a de los componen es en el ho no .............................................................. 92
Ilus ación 53. Resul ado ob enido ............................................................................................................. 92
Ilus ación 54. Placa escla a .......................................................................................................................... 93
Ilus ación 56. Ensamblaje del BMS al comple o ................................................................................... 94
Ilus ación 57. Cu a de ca ga de las celdas ............................................................................................ 95
Ilus ación 58. Des iación del ol aje en el balanceo de las celdas ............................................... 96
Ilus ación 59. Placa de p uebas pa a las celdas ................................................................................... 97
Tabla 1. Reque imien os del BMS ................................................................................................................ 11
Tabla 2. A duino Nano ...................................................................................................................................... 28
Tabla 3. A ibu os de las a eas del escla o ............................................................................................. 72
Tabla 4. Ta eas del maes o. .......................................................................................................................... 79
Tabla 5. E o es en la medición de ol ajes. ............................................................................................ 97
Tabla 6. Mediciones de in ensidad .............................................................................................................. 99
Tabla 7. Cos es del p oyec o ........................................................................................................................ 104
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
7
1. MEMORIA
INTRODUCCIÓN
Es e documen o con iene un p oyec o de diseño e implan ación del BMS (ba e y
managemen sys em) pa a una mo o eléc ica de compe ición, así como el so wa e
necesa io pa a dicha placa. Es e so wa e se i á pa a el pos e io análisis del
uncionamien o del BMS y las ba e ías de la mo ocicle a po pa e del equipo de
Mo oS uden Bizkaia.
En una p ime a pa e se p esen a el con ex o del p oyec o, obje i os del mismo y los
bene icios écnicos y económicos que se espe an consegui . Pa a ello, se es udia án dis in as
al e na i as y se alo a án ambas median e di e en es c i e ios, eligiendo aquella opción
que más se ajus e a las necesidades.
Una ez seleccionada la al e na i a, se ealiza una desc ipción en la que se mues an las
di e en es pa es de las que cons a á el BMS y se da una b e e explicación de cada una de
ellas. También se de alla án odos los de alles del So wa e diseñado pa a su con ol.
A con inuación, se plani ican odos los abajos a ealiza , iendo las di e en es elaciones
en e las a eas a lle a a cabo. P incipalmen e hay dos e apas, una en la que se ealiza el
diseño y ab icación de las placas elec ónicas y o a en la que se p og ama el So wa e.
Es e p oyec o cuen a ambién con un análisis de allado de odos los cos es. En es e úl imo
se enume an las en ajas ob enidas, dando una explicación de las consecuencias de las
mismas.
CONTEXTO
Como alumno de la escuela pa icipo olun a iamen e en la sex a edición de la compe ición
de Mo oS uden (2018-2020) [1]. Mo oS uden es un desa ío que nace de la Ciudad del
mo o de A agón, siendo una compe ición en e uni e sidades de ingenie ía de odo el
mundo. El obje i o consis e en el diseño y cons ucción de una mo ocicle a de compe ición
eléc ica. Las dis in as uni e sidades se en en a án en la compe ición a unas p uebas
écnicas du an e unas jo nadas que se lle an a cabo en las ins alaciones de Mo o land
A agón du an e un in de semana en el mes de oc ub e 2020, eniendo como p ueba inal la
ca e a. Las p uebas plan eadas end án como in e alua el compo amien o dinámico y
las p es aciones de la mo o ab icada, pa a comp oba la segu idad y uncionalidad,
esul ado dependien e de la des eza de los miemb os del equipo.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
8
Uno de los obje i os p incipales po pa e de la escuela de ingenie ía de Bilbao es cons ui
la mayo can idad de elemen os de la mo ocicle a que sea posible. Uno de los componen es
básicos y más impo an es en un ehículo eléc ico es el BMS:
Las siglas de BMS p o iene de Ba e y managemen sys em en inglés, o sis ema de ges ión
de ba e ías en español. Las ba e ías de Ion de Li io son pelig osas ya que un uso indebido
de las mismas puede lle a las un sob ecalen amien o o incuso a la explosión. Con el in de
e i a cualquie p oblema se han desa ollado dis in as al e na i as. En e ellas, y la más
u ilizada sin duda, es el BMS. Es la placa de con ol enca gada de que las ba e ías del
ehículo eléc ico pe manezcan en su ango segu o de ope ación (sa e ope a ion a ea). Pa a
ello debe moni o iza dis in os pa áme os eléc icos y é micos de las ba e ías como
ol ajes, in ensidades de ca ga y desca ga, empe a u as… y asegu a la desconexión de las
ba e ías del sis ema de acción en caso de allo de alguno de los mismos.
Po lo an o, debido a la impo ancia del BMS en el ehículo eléc ico, así como la necesidad
u iliza uno pa a la p óxima mo ocicle a de la uni e sidad se ha decidido lle a a cabo el
p oyec o de diseño, ensamblaje y p uebas eales en ci cui o.
ESTADO DEL ARTE
BMS come ciales
Las unciones mínimas que cumple el BMS más sencillo son las siguien es:
 P o ección an e sob e ensiones: Si el ol aje de alguna de las celdas llega a los 4.2V
( ol aje máximo de las celdas de Li-Ion), el BMS debe impedi que se siga ca gando
esa celda. Pa a impedi lo ab e el con ac o o mos e que egule la en ada de
co ien e y deja de ca ga oda la ba e ía. En caso de que se use un BMS sin la
capacidad de balancea las celdas no se hab á ca gado la ba e ía al comple o ya que
el es o de celdas no hab án llegado al ol aje de 4.2V. Además, los BMS más
sencillos no pe mi en egula el ol aje al que se co a la ca ga, con lo que solo se
pod ía u iliza ese disposi i o pa a una ecnología especí ica de celdas.
 P o ección an e sob eca gas de in ensidad: Si la in ensidad de desca ga supe a
cie o alo ab e el ci cui o desconec ando a la ba e ía de la ca ga. Puede que no
exis a es a p o ección cuando se ca gue la ba e ía ya que suele se el p opio
ca gado quien lle a esa limi ación de co ien e. Al igual que el ol aje, es a
in ensidad de co e no suele se egulable en los BMS come ciales. En los BMS más
compac os suele usa se una esis encia shun y en los de mayo po encia un senso
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
15
a ias de las celdas no se han ca gado po comple o y el BMS hab á dado po
inalizada la ca ga.
Ilus ación 2. Celdas desbalanceadas en ca ga máxima [3]
 El BMS co a la desca ga de la ba e ía cuando de ec a que una celda ha llegado a su
ol aje mínimo. Pa iendo del caso an e io en el que una celda es aba menos
ca gada que la o a, es sencillo e que la celda menos ca gada se á la p ime a en
llega al ol aje mínimo. Es o lle a á a no habe ap o echado oda la ene gía que
enía en su in e io .
Ilus ación 3. Celdas desbalanceadas en ca ga mínima
Aumen ando el núme o de ciclos de ca ga y desca ga el desbalanceo de las celdas se ía cada
ez mayo y, po lo an o, el endimien o cada ez peo . Con el in de e i a es e enómeno
se hace uso de uno de los mé odos de balanceo que se explican a con inuación. Es os
mé odos se pueden di idi en dos g andes g upos: Balanceo ac i o y pasi o.

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
16
Los mé odos de balanceo ac i o a an de pasa el exceso de ca ga de algunas celdas a las
de meno ca ga a ando de despe dicia la mínima ene gía posible. Como g an des en aja
ienen que son mucho más cos osos y necesi an más espacio ísico. Como es os úl imos dos
pun os son muy impo an es en el caso de la mo ocicle a se desca a di ec amen e el es udio
de los mismos en es e p oyec o. Además, equie en gene almen e un con ol más complejo
que con el balanceo pasi o.
El balanceo pasi o disipa la ene gía sob an e de las celdas de mayo ca ga di ec amen e en
o ma de calo . Es un mé odo más ine icien e que el balanceo ac i o, pe o su icien e pa a la
compe ición. Como la mo ocicle a es á diseñada pa a desempeña el máximo endimien o
en ca e a, no esul a an impo an e dispone de un mé odo de balanceo algo más
ine icien e a la ho a de ca ga lo en boxes si es e hace que la placa sea más pequeña y pese
menos pa a la ca e a. Además, el con ol del balanceo pasi o es muy sencillo.
Ambos mé odos pueden di idi se en subg upos como se puede e en la siguien e imagen
[4]. Solamen e se an a analiza los mé odos pasi os en es e p oyec o po las azones
an e io men e comen adas.
Ilus ación 4. Tipos de balanceo
Equilib ado pasi o: Resis encia ija
Consis e en coloca una esis encia en pa alelo a cada celda de al o ma que la esis encia
limi e la ensión a la que puede llega la celda. Se man iene el balanceo en e las celdas ya
que, si se da el caso de que una celda iene mayo ensión, la desca ga que es a su i á a
causa de su esis encia ambién se á mayo y ol e á al mismo ol aje que el es o. Es el
mé odo más sencillo, pe o ambién obsole o debido a la al a ine iciencia ene gé ica.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
17
Ilus ación 5. Balanceo po esis encia ija
Equilib ado pasi o: Diodo zene
El uso de un diodo zene en luga de una esis encia ija educe el p oblema de la g an
pé dida de ene gía del caso an e io . P o ege a las celdas de sob eca gas ya que es as no
sob epasa án el ol aje del diodo. Sin emba go, no p o ege an e sob edesca gas y los diodos
deben sopo a la co ien e de ca ga de las celdas suponiendo es o p oblemas económicos
y é micos.
Ilus ación 6. Balanceo po diodo zene
Equilib ado pasi o: Resis encia conmu ada
Se a a de una e sión mejo ada a la esis encia ija. Se sigue u ilizando una esis encia ija
pa a disipa la ene gía sob an e de cada celda, pe o solo cuando es necesa io. Pa a ello se
coloca un in e up o en se ie a cada esis encia y se decide cuando se cie a y cuando no.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
18
Es os in e up o es pueden se ansis o es, mos e s u o os elemen os dependiendo de la
in ensidad que engan que sopo a . El esquema es el siguien e:
Ilus ación 7. Balanceo po esis encia conmu ada
La elocidad de balanceo depende del paso de co ien e po el mos e y la esis encia. El
con ol de los mos e s se ealiza con el mic ocon olado , que es el enca gado de medi los
ol ajes y decidi en cada ins an e cuales de los mos e s deben es a conduciendo.
Exis en di e en es algo i mos de con ol. El más sencillo consis e en ac i a el balanceo de
odas las celdas sal o la del ol aje más bajo. De es a o ma se es a á ca gando más ápido
la celda que meno ol aje enga pa a que se iguale con el es o. O a opción es ac i a
solamen e los que es én po encima de un ango de ol aje (10mV po ejemplo) sob e la
celda de ol aje más bajo. La elección de uno u o o in luye básicamen e en la elocidad de
balanceo, calen amien o del BMS y complejidad del algo i mo de con ol en e o os
ac o es. Es un sis ema de balanceo más ca o que los dos an e io es, pe o sigue siendo más
ba a o que lo mé odos de balanceo ac i os ya desca ados. Po odos es os mo i os se ha
decidido u iliza la opología de esis encia conmu ada
Además, iene una g an en aja en e a muchos BMS come ciales ya que pe mi e empeza
a balancea la ba e ía en cualquie ni el de ca ga de la ba e ía. Muchos de los come ciales
solo empiezan a balancea las celdas que llegan a su ni el máximo de ca ga. Si se supone el
siguien e es ado de ca ga de una ba e ía:
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
19
Ilus ación 8. Balanceo de celdas
En el es ado de ca ga (1) en la imagen, el BMS comenza ía el balanceo de la celda de 4.2V
(2) has a que ecupe a a el mismo ol aje que las o as (3), es o es, a 4.0V. En es e caso se
ha supues o que no es á ci culando in ensidad po ninguna de las o as celdas.
Aho a se plan ea el caso an e io , pe o ca gando simul áneamen e odas las celdas, incluida
la del balanceo. La in ensidad máxima a la que se pod á ca ga es a se á la in ensidad de
balanceo de la celda ya que, si se le suminis a una in ensidad mayo a la que se es á
disipando en el balanceo, es a segui á ca gándose has a que se es opee o se incendie po
sob eca ga la. Es o limi a la in ensidad de ca ga de oda la ba e ía cuando una de las celdas
llega a su ol aje máximo. Los BMS come ciales son capaces de disipa unos 100mA, con lo
que ese se ía el lími e de in ensidad de ca ga cuando se es á llegando al ope. Los hay has a
más ine icien es, que co an di ec amen e la ca ga has a que las celdas se balancean, lo que
hace la ca ga aún más len a.
Si se u iliza a un BMS habi ual pa a la ba e ía de la mo ocicle a, suponiendo que hubie a
una di e encia de ca ga del 5% en e la celda más ca gada y el es o, el iempo de balanceo
se ía el siguien e:
𝐶𝑎𝑝𝑎𝑐𝑖𝑑𝑎𝑑 𝑑𝑒 𝑐𝑎𝑑𝑎 𝑟𝑎𝑚𝑎 𝑑𝑒 𝑙𝑎 𝑚𝑜𝑡𝑜𝑐𝑖𝑐𝑙𝑒𝑡𝑎 𝑒𝑛 𝑝𝑎𝑟𝑎𝑙𝑒𝑙𝑜=60 𝐴ℎ
𝐶𝑎𝑝𝑎𝑐𝑖𝑑𝑎𝑑 𝑑𝑒 𝑙𝑎 𝑟𝑎𝑚𝑎 𝑎 𝑑𝑖𝑠𝑖𝑝𝑎𝑟 𝑒𝑛 𝑏𝑎𝑙𝑎𝑛𝑐𝑒𝑜=60𝑥0.05=3 𝐴ℎ
𝐼𝑛𝑡𝑒𝑛𝑠𝑖𝑑𝑎𝑑 𝑑𝑒 𝑏𝑎𝑙𝑎𝑛𝑐𝑒𝑜=100 𝑚𝐴=0.1 𝐴
𝑇𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑏𝑎𝑙𝑎𝑛𝑐𝑒𝑜=3 𝐴ℎ
0.1 𝐴=30 ℎ
Como se puede obse a se necesi a una in ensidad de balanceo mayo a la o ecida po la
mayo ía de los BMS del me cado. Hay que busca un comp omiso en e la elocidad de
balanceo y el calo a disipa en cada esis encia del balanceo. Se ha decidido escoge una
in ensidad ce cana a 0.3A, educiendo 3 eces el iempo necesa io.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
20
Po lo an o, en la si uación plan eada se necesi a ían 30h pa a comple a la ca ga de la
ba e ía con un BMS comp ado mien as que con el de es e p oyec o se necesi a ían 10h.
Además, es muy impo an e ene en cuen a que el BMS comp ado ha ía es e balanceo a
pa i del ins an e en que la celda más ca gada llegue a los 4.2V como se ha plan eado. En el
BMS del p oyec o se pod á empeza a balancea las celdas en cualquie momen o, an es de
que es o ocu a, g acias a que se end á con ol absolu o con el mic ocon olado ,
ap o echando así odo el iempo de ca ga. Es o quie e deci que, si po ejemplo hicie an
al a 2h ca gando la ba e ía pa a que se die a la si uación plan eada an e io men e, con el
BMS diseñado ya se hab ía es ado balanceando la ba e ía 2h, educiendo aún más el iempo
de balanceo. Es o le da una en aja sus ancial en e a o os BMS.
G upo de al e na i as 2: Medición de ol ajes
Hay que adap a los ol ajes de las celdas pa a pode medi los con un mic ocon olado .
Es o se debe a que la medición de la ensión de cada celda es á e e enciada a su p opio
bo ne nega i o, con lo que, aunque cada celda solo enga un ol aje del ango 2.5-4.2V, el
mic ocon olado no medi á lo mismo (el mic ocon olado es a á e e enciado al bo ne
nega i o de la p ime a celda y no la que quie e medi ). Es e enómeno se puede e a
con inuación:
Ilus ación 9. Medición de ol ajes de celdas en se ie
Se puede como el mic ocon olado al medi el ol aje de la segunda celda e á una ensión
en e 5.0 y 8.4V, alo esul an e de suma de las dos p ime as celdas. Es e enómeno
imposibili a la medida di ec a de las ensiones ya que si así se hicie a se daña ía el
mic ocon olado po alimen a lo con ensiones mayo es de las pe mi idas (gene almen e
uncionan a 3.3 0 5V). Pa a e i a es o se debe medi el ol aje de cada celda de o ma
di e encial, es o es, oma la medida del bo ne nega i o y posi i o, ob ene el di e encial de
ambos y e e encia lo al mismo pun o que el mic ocon olado . A es a e apa se le llama á la
e apa de acondicionamien o.

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
21
Ilus ación 10. E apa de acondicionamien o
O o p oblema impo an e a esol e es que hay que medi 27 ensiones di e en es y el
mic ocon olado no end á an as en adas analógicas. En consecuencia, no queda más
emedio que mul iplexa las medidas de las celdas. Los mul iplexo es son disposi i os que
pe mi en con ola un mayo núme o de señales con un núme o meno de en adas [5].
Básicamen e uncionan como un in e up o de señales. Son capaces de jun a 2,4,8,16 o
incluso 32 señales en una única. Pa a ello equie en cie o con ol de señales, ya sea
u ilizando en adas digi ales o con algún p o ocolo de comunicación. Dicho es o, se pueden
u iliza dos opologías di e en es:
 Coloca una e apa de acondicionamien o pa a cada conjun o se ie de celdas y, una
ez acondicionados odos los ol ajes, mul iplexa los has a la en ada o en adas
analógicas. La elección del mul iplexo se hace más sencilla ya que los ol ajes es án
ya acondicionados. Sin emba go, se u iliza una mayo can idad de componen es que
en la siguien e ipología ya que se u ilizan an as e apas de acondicionamien o como
celdas en se ie.
 Coloca el mul iplexo o los mul iplexo es di ec amen e a las celdas y una única o
un pa de e apas de acondicionamien o en e la salida del mul iplexo y las en adas
analógicas del mic ocon olado . Son necesa ios menos componen es elec ónicos,
pe o los mul iplexo es deben sopo a la al a ensión compues a po el conjun o de
celdas, ya que se es án pasando las señales sin acondiciona po el mismo
Las dos ipologías se pueden e en la siguien e imagen:
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
22
Ilus ación 11. Dis in os ipos de e apas de acondicionamien o
La al e na i a adop ada es la segunda, la de mul iplexa p ime o las señales pa a así educi
el núme o de e apas de acondicionamien o. Como se necesi a un meno núme o de
componen es pa a ob ene el mismo esul ado no solo el cos e o al de la placa se á meno ,
sino que el espacio necesa io ambién lo se á. Respec o a la des en aja de hace ci cula
señales de al os ol ajes po el mul iplexo , se educe el núme o de mul iplexo es del
me cado que se puedan u iliza , pe o sigue habiendo un amplio abanico a elegi .
G upo de al e na i as 3: Topología de medición de in ensidades
Como ya se ha comen ado an e io men e en el apa ado de desc ipción de eque imien os
es necesa io medi la in ensidad que ci cula po la ba e ía, an o en ca ga como en desca ga.
Es a in ensidad es de co ien e con inua ya que se mide di ec amen e en el bo ne posi i o
de la ba e ía. Se pod ía medi ambién la co ien e al e na ci culada en los bo nes del mo o ,
pe o esul a ía ú il ya que no se es a ían midiendo las pé didas que hay aguas a iba.
Exis en di e en es mane as de medi la co ien e con inua:
 Resis encia shun : Consis e en coloca una esis encia en se ie a la salida de la
ba e ía y medi la caída de ol aje en la esis encia. Conocido el alo de la
esis encia y la caída de ol aje del mismo (se medi ía median e el
mic ocon olado ) se puede calcula la in ensidad que ci cula po él median e la ley
de Ohm. Es una o ma muy sencilla de medi la in ensidad, pe o conlle a las
siguien es des en ajas: Se a a de un mé odo de medición in asi o no aislado ya
que se ac úa di ec amen e sob e el cable de alimen ación de la ba e ía p o ocando
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
23
una caída de ol aje en la salida y, lo peo de odo, a in ensidades an al as esul a
comple amen e ine icien e po la po encia que disipa ía en o ma de calo (las
pé didas de calo an en elación de al cuad ado espec o a la in ensidad que ci cula
po la esis encia).
 E ec o Hall: Es e ipo de senso es son sensibles a las a iaciones del campo
magné ico que lo a a iesa, gene ando un ol aje en su salida equi alen e a la
in luencia magné ica que lo ci cula [6]. Son capaces de medi co ien es DC y AC de
una o ma lineal, p ecisa y sin bajo consumo. No son in asi os y es án
comple amen e aislados del ci cui o p incipal.
El mé odo a u iliza es el de e ec o Hall po su sencillez, obus ez y e iciencia. Son capaces
de medi co ien es en ambas di ecciones, con lo que eniendo un único senso se pod án
medi las in ensidades an o en ca ga como en desca ga de la ba e ía. Hab á que ene es o
en cuen a a la ho a de lee el ol aje p opo cionado po el senso pa a lee lo en el
mic ocon olado .
G upo de al e na i as 4: Tecnología de medición de empe a u as
Po no ma i a de la compe ición se deben coloca , al menos, 4 senso es de empe a u a en
la ba e ía con el in de ga an iza su segu idad [7]. Adicionalmen e, aunque no sea
obliga o io, es ecomendable moni o iza la empe a u a del p opio BMS pa a asegu a que
es e ampoco sob epase su lími e de empe a u a. El ipo de senso de empe a u a a
u iliza no es á es ingido po la compe ición, con lo que queda a elección lib e. Po lo an o,
se pueden u iliza los siguien es ipos de senso es de empe a u a [8]:
 Te mopa : Es án compues os po dos hilos me álicos de di e en e ipo unidos en
uno de los ex emos. El e ec o de la empe a u a hace que se c ee una di e encia de
ensión en el o o ex emo y es a ensión es leída pa a ob ene la empe a u a. Son
los más u ilizados al se económicos, de sencilla ins alación y p ecisos en un amplio
ango de medición. Sin emba go, ienen una espues a len a en compa ación a o os
ipos y necesi an una en ada analógica y una e apa de ampli icación po cada
senso a ins ala ya que la ensión que pueden se capaces de gene a es del o den
de mili ol ios.
 Te mis o : Es e ipo de senso con iene un ma e ial semiconduc o en la que a ía
su esis encia en unción de la empe a u a a la que es é some ida. Exis en dos ipos
de e mis o es: Los NTC, que disminuyen su esis encia al aumen a la empe a u a
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
24
y los PTC que aumen an su esis encia jun o con la empe a u a. Al igual que con los
e mopa es necesi an una en ada analógica po cada senso e mis o a u iliza .
 Dallas: Es e ipo de senso es de empe a u a es án compues os po 3 cables: Dos
pa a alimen ación y uno de da os. Es e úl imo es un bus de da os que, median e el
uso de un p o ocolo de comunicación especí ico, es á unido a cada uno de los
senso es ipo Dallas que se u ilicen. Pe mi en ealiza la medición de has a 2^48
senso es median e un único cable, es o es, un núme o p ác icamen e ilimi ado de
disposi i os. Son sencillos de lee en un mic ocon olado con una única en ada
digi al, ba a os y además p o ocan un uso meno de cables al compa i el bus de
da os [9].
El senso a u iliza pa a las mediciones de empe a u a an o en la ba e ía como en el BMS
es el de ipo Dallas, p incipalmen e po el aho o de cableado en la mo ocicle a.
Adicionalmen e hab á un e mis o den o del mo o eléc ico ya que es el que iene
p eins alado in e namen e. Po lo an o, hab á que añadi ambién la posibilidad de medi
es e ipo de senso es.
G upo de al e na i as 5: P o ocolos de comunicación
En la mayo ía de mic ocon olado es del me cado se incluye la posibilidad de u iliza los
siguien es dos p o ocolos maes o-escla o: SPI e I2C. Las di e encias son las siguien es
El p o ocolo SPI es sínc ono, Full Duplex y necesi a 4 cables pa a ealiza la comunicación.
El maes o decide con qué escla o comunica se a a és de uno de los 4 cables que u iliza.
Po cada pulso de la señal de eloj se puede en ia un bi del maes o al escla o y ice e sa.
Se pueden manda secuencias de bi de cualquie amaño y a elocidades de ansmisión de
has a 8MHz. Las des en ajas son que necesi a has a 4 cables, unciona pa a co as
dis ancias, no iene mecanismo de con ol y de ección de e o es y la longi ud de mensajes
debe conoce se an o po los escla os como po los maes os [10].
El I2C es un p o ocolo sínc ono que solamen e necesi a 2 cables pa a ealiza la
comunicación. Uno pa a la señal de eloj y o o pa a el en ío de da os. Cada disposi i o iene
una di ección y el maes o accede a los escla os esc ibiendo en el p opio bus la di ección
del escla o del que quie e ob ene da os. Es posible dispone más de un maes o, pe o
aumen a la complejidad de la comunicación y ampoco es necesa io en es e p oyec o. A
di e encia del SPI con iene un bi de alidación en la comunicación dándole un g ado mayo
de iabilidad. Además, iene una elocidad de comunicación mucho mayo , de has a 400MHz
[11].
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
31
Diseño del esquema eléc ico del maes o
Al igual que con el escla o se diseña el esquema eléc ico del maes o.
Diseño del ci cui o imp eso del maes o
Se diseña el PCB pa a pode da po e minada la pa e de diseño de ambas placas.
Pe iodo de en ío de los ci cui os imp esos
T as habe e minado de diseña el ci cui o comple o se enca ga a un ab ican e de ci cui os
imp esos pa a que en íe el p o o ipo a la uni e sidad. Es una ase en la que hab á que
espe a a que la placa llegue y el iempo depende de los ab ican es con a ados.
Diseño del so wa e del escla o y maes o
Se diseña el p og ama necesa io pa a con ola ambas placas. Pa a ello se u iliza á el
so wa e p opo cionado po a duino, el A duino IDE.
Desa ollo del so wa e de moni o ización y análisis
Pa a mos a los alo es en el o denado se diseña á u ilizando el lenguaje de p og amación
P ocessing. El in es c ea un p og ama que pe mi a ex ae los da os del BMS y g a ica los
con el in de analiza el uncionamien o de la mo ocicle a en la ca e a.
Búsqueda de los ma e iales y componen es
Se buscan los componen es elec ónicos, ma e iales y senso es necesa ios en dis in os
p o eedo es pa a ealiza odo el ensamblaje y p uebas. La búsqueda debe á hace se una
ez e minado el diseño po comple o, pa a así e i a busca componen es
innecesa iamen e si se die an cambios en el diseño. No obs an e, es o no quie e deci que
no se aya a busca ninguna in o mación mien as se diseña la placa sino odo lo con a io,
ya que la elección del componen e es un pun o c ucial en el diseño de la placa. Es a ase a a
de encon a el p ecio más económico pa a enca ga odo el ma e ial.
Pe iodo de en ío del ma e ial
En es a ase oca espe a a que los componen es lleguen al alle . Al igual que con el enca go
del ci cui o imp eso, la du ación de es a ase depende de la elocidad de los dis ibuido es.
Ensamblaje de las placas
Ob enidas las placas elec ónicas y odos los componen es se p ocede a ensambla el
conjun o.

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
32
P uebas uncionales
Una ez ensambladas las placas se comienza a hace p uebas de cada unción especí ica,
an o del escla o como del maes o. Se p oba á a medi el ol aje, in ensidad y empe a u a
de las celdas, así como la comunicación en e escla o-maes o y el o denado . Todas es as
p uebas se ha án po sepa ado con el in de acili a la de ección de e o es en alguna de las
e apas. Ni siquie a ha á al a que los ol ajes in ensidades y empe a u as p o engan de la
ba e ía que se aya a usa en la mo ocicle a, ya que el in de es a ase es comp oba el
uncionamien o del diseño elec ónico. La p ueba de ini i a en el en o no eal es la siguien e
ase.
P uebas eales del BMS
T as habe comp obado que odos los componen es uncionan y que la placa mide las
a iables como debe ía se mon a á de ini i amen e el BMS en la mo ocicle a. Se ha á
unciona la mo ocicle a ya sea en un banco de po encia o en un ci cui o eal. De es a o ma
se pod á da po álido el p incipal obje i o del p oyec o.
Redacción del abajo
Es a ase se i á abajando a lo la go de odo el cu so, a medida que el p oyec o aya
a anzando. Se ano a á las cosas más impo an es del abajo que se aya ealizando pa a
una mejo edacción inal del abajo.
Hi os
El cumplimien o de es os hi os es undamen al pa a pode lle a a cabo el p oyec o a
iempo. Los hi os ma cados son los siguien es:
Elección del abajo de in de más e
Es el p ime hi o y el más impo an e. Simboliza que pa a esa echa el ema del abajo de
in de más e ya hab á sido escogido y que se comienza a abaja lo.
Elección de la solución
Es el momen o en que as p o undiza en los concep os eó icos se ha escogido en e cada
una de las al e na i as es udiadas. Llegado a es e pun o se empieza a diseña an o el
esquema eléc ico como el So wa e. Se da comienzo a la pa e p ác ica del p oyec o.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
33
Enca go ci cui os imp esos
Es el hi o que ma ca que an o la placa escla a como maes a ya ha sido diseñada y puede
enca ga se a una emp esa pa a su ab icación. El abajo que sigue a con inuación se á
busca los componen es eléc icos, p uebas uncionales, pues a en ma cha en la
mo ocicle a, e c.
Comp a de ma e ial y componen es elec ónicos
Se hace la comp a pa a consegui los componen es elec ónicos, senso es y demás cosas
necesa ias. Todo el abajo que queda después de es e hi o es mano pu a mano de ob a.
En ega del abajo
Es el úl imo hi o que ma ca que el abajo ha sido e minado cumpliendo cada una de las
ases plani icadas. Signi ica que el p oyec o ha sido edac ado comple amen e y es á lis o
pa a se en egado.
Equipo y ecu sos u ilizados
El equipo a u iliza pa a el diseño, p og amación y edacción del abajo es el po á il
pe sonal y un o denado ya disponible en el alle . Pa a el ensamblaje de las placas se
u iliza á un soldado , ho no, es año, pinzas y una lupa ya disponible en el alle ambién.
Se an a u iliza 4 so wa es dis in os: A duino IDE pa a la p og amación del A duino,
P ocessing pa a la p og amación del so wa e de análisis y moni o ización, Au odesk Eagle
pa a el diseño de los PCB y el MS P ojec pa a la plani icación y el Gan .
A duino IDE y P ocessing son g a ui os, mien as que Au odesk Eagle y MS P ojec no. Sin
emba go, MS P ojec es á a disponibilidad de los alumnos en los o denado es de la escuela
de o ma g a ui a y Au odesk p opo ciona licencias g a ui as a es udian es pa a sus
so wa es, en e ellos Au odesk Eagle.
El equipo necesa io pa a ealiza el ensamblaje de la placa es a disponible en el alle de la
uni e sidad y es el siguien e:
 Soldado de es año.
 Bomba de calo .
 Pas a de solda .
 Pinzas pa a coloca los componen es.
 Ho no pa a la soldadu a SMD.
 Lupa.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
34
Pa a las p uebas de pues a pun o:
 Mul íme o.
 Osciloscopio.
Los ecu sos humanos a des ina al abajo son los del p opio au o del p oyec o. La medida
de la misma se a a ealiza haciendo una equi alencia del alo del abajo de in de más e .
Como es e abajo equi ale a 24 c édi os ECTS en el más e y cada c édi o equi ale a 25h, el
iempo dedicado a es e se á de 600h a lo la go de odas las a eas.
DIAGRAMA DE GANTT
Una ez explicadas odas las a eas a ealiza e hi os a alcanza se ep esen an en un Gan
pa a ene una isión más g á ica de oda la plani icación del abajo:
Ilus ación 13. Diag ama de Gan
DISEÑO DE PLACA ESCLAVA
En el p esen e apa ado se abo da odo lo co espondien e al diseño esquemá ico de cada
una de las pa es del escla o. La explicación se di ide po bloques uncionales:
Diseño esquemá ico: A duino Nano
El uso de pines digi ales y analógicos es el siguien e:
 En adas digi ales:
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
35
o D8: Medición de empe a u as con senso Dallas.
 Salidas digi ales:
o D3 y D4: Con ol de mul iplexo es pa a medición de ol ajes.
o D5 a D7: Con ol de balanceo.
 En adas analógicas:
o A3: Senso de in ensidad
o A6 y A7: Medición de ol ajes de las celdas.
 Comunicaciones:
o D0 y D1: Comunicaciones se ie. Tienen que se es os dos pines ya que an
in e namen e conec ados en el a duino al conec o mic o USB.
o D2, D10, D11, D12, D13: Comunicaciones SPI pa a la mic o SD. Son los pines
que la placa iene ese ados pa a al in.
o A4 y A5: Comunicaciones I2C. Al igual que con el SPI, es os dos pines son los
habili ados pa a ealiza las comunicaciones I2C.
Ilus ación 14. A duino Nano en el escla o
Como se puede obse a hay pines que an a queda inu ilizados. Los que no se u ilizan
pod ían habe sido escogidos pa a ealiza alguna de las unciones que se ealiza en o o
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
36
pin. Sin emba go, se ha decidido es a disposición de pines ya que e a la que pe mi ía un
u eado más sencillo a la ho a de diseña el PCB.
Cada uno de los pines y sus unciones se de allan en los p óximos apa ados:
Diseño esquemá ico: Balanceo
El mé odo de balanceo a u iliza es el de esis encia conmu ada. Como ya se ha explicado
an e io men e se necesi a con ola la conmu ación de una esis encia en se ie po cada
celda a moni o iza . Es as conmu aciones se pueden ealiza con un mos e o ansis o . Se
ha op ado po u iliza mos e ya que ienen mejo capacidad de conducción de co ien e que
los ansis o es, siendo así mejo opción pa a el balanceo.
Se án necesa ias an as señales digi ales como mos e s, es o es, 8. El a duino iene más de
8 salidas digi ales, en conc e o 13. Sin emba go, se necesi an más de 5 pines pa a el es o de
unciones que debe cumpli la placa. Po lo an o, al no ene el núme o de salidas necesa ias
se ecu e a la opción de u iliza un shi egis e o egis o de desplazamien os. Los shi
egis e pe enecen a una amilia de chips que acep an una en ada de bi s en se ie y los
sacan en 8 pines pa alelos. Son u ilizados pa a amplia el núme o de salidas digi ales que
se dispone [12]. Funciona median e la comunicación se ie sínc ona. Es deci que usa un pin
pa a en ia los bi s en se ie (el Da a pin) y un segundo pin (el Clock pin) pa a indica cuando
hay que lee el bi .
Cuando los 8 bi s se han leído en el egis o un e ce pin (La ch pin) esc ibe es os bi s en
los pines de salida del chip y los man iene has a que se eciban nue os da os.
Se necesi a un shi egis e con las siguien es ca ac e ís icas: Vol aje de uncionamien o 5V,
8 salidas digi ales y capacidad de conduci una co ien e de al menos 10mA po cada salida
digi al pa a que el balanceo uncione co ec amen e. Un shi egis e ípico con es as
ca ac e ís icas y cos e económico es el SN74HC595D [13].

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
37
Ilus ación 15. Shi egis e
Los pines nume ados desde “BALANCEO1” has a “BALANCEO8” son las salidas digi ales del
shi egis e . El es o son pines de alimen ación y de con ol ya comen ados. El pin 10 debe
conec a se a 5V ambién pa a ac i a el uncionamien o del shi egis e .
Cada una de es as salidas digi ales no se puede conec a di ec amen e al mos e
co espondien e. Al igual que con la medición de ol ajes de las celdas no se puede hace
una conexión di ec a, ya que los 5V de la salida digi al es án e e enciados a la e e encia
del a duino y no a la de cada celda. En consecuencia, se a a u iliza el siguien e esquema
[14]:
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
38
Ilus ación 16. Ci cui o de balanceo
Cuando el ol aje en la salida digi al “BALANCEOX” ( ep esen a a cada una de las salidas del
mul iplexo ) es nulo el op oacoplado no conduce. En consecuencia, ampoco ci cula
co ien e en el lado izquie do del ci cui o y an o el led como el mos e es án en co e.
Cuando el ol aje de la salida digi al es 5V el op oacoplado conduce una co ien e que
ac i a al led D1 y gene a un ol aje su icien e pa a que el mos e de canal P en e en
sa u ación. Al es a es e en sa u ación la caída de ol aje en el mismo se á p ác icamen e
nula y casi oda la po encia de balanceo la disipa á la esis encia R3.
El led D1 si e pa a que indique cuando la celda es á balanceándose y, según su da ashee ,
una co ien e de 7mA se á su icien e pa a ilumina lo [15].
G acias a la esis encia R1 las co ien es pa ási as de Q1 consegui án e o na cuando el
ansis o del op oacoplado es é en co e. También aumen a la iabilidad del sis ema ya
que pe mi e segui uncionando el balanceo aun dándose el caso de que el led se es opea a.
Se escoge un alo de esis encia al o pa a pode cumpli su unción, pe o no excede se en
el consumo de co ien e (560 kΩ, po ejemplo). Pa iendo de los siguien es da os se ealizan
los siguien es cálculos: 𝐼=7 𝑚𝐴 (𝑑𝑎𝑡𝑎𝑠ℎ𝑒𝑒𝑡)
𝑉=1.25 𝑉 (𝑑𝑎𝑡𝑎𝑠ℎ𝑒𝑒𝑡)
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
39
𝑉= 𝑉 → 𝐼= 
 = .
.=2.23𝑥10 𝑚𝐴 ≈0 mA
𝐼= 𝐼+ 𝐼 =7 𝑚𝐴 →𝑅2= 𝑉
𝐼= 4.2−1.9
0.007 =330 Ω
El alo de R2 se ha calculado suponiendo un ol aje de 4.2V en la celda ya que es el
momen o en el que causa á una mayo ci culación de co ien e. También se ha calculado la
in ensidad que ci cula á po el op o y se á de 7mA ap oximadamen e. El op oacoplado a
u iliza es el “TLP293-4(GB-TP,E)” po dispone de 4 canales en un encapsulado compac o,
buena calidad p ecio y un “cu en ans e a io” mínimo de 100% [16], lo que ga an iza
que si se hacen ci cula 7 mA po el lado de echo del op oacoplado se ob end án al menos
los 7 mA necesa ios en el lado izquie do (según el esquema mos ado).
Pa a ga an iza esa co ien e de 7mA se ha colocado una esis encia R4. La caída de ol aje
en el op oacoplado es de 1.25 V pa a una co ien e de 7 mA según el da ashee . Po lo an o:
𝑉=5 𝑉= 𝑉+ 𝑉 → 𝑉=5 − 1.25= 3.75 𝑉
𝑅4= 
 = .
. = 535 Ω
Solamen e queda po calcula R3. La caída de ensión en es a esis encia se á como máximo
4.2 V simpli icando que el mos e iene una caída de ol aje p ác icamen e nula. Además, se
ha es ablecido como equisi o una po encia de disipación de calo máxima de 2W. Po lo
an o:
𝑃= 𝑉𝑥𝐼 → 𝐼= 𝑃
𝑉= 2
4.2=0.476 𝐴
𝑅3= 𝑉
𝐼= 4.2
0.476= 8.82 Ω
Buscando dis in as esis encias que sean capaces de disipa esa po encia en e los dis in os
amaños y alo es se ha llegado a la conclusión de u iliza una esis encia de alo 15 Ω con
una capacidad de disipación de has a 5W. Es de encapsulado ipo adial. Po lo an o, la
po encia a disipa e in ensidad de balanceo se án:
𝑉= 𝑅𝑥𝐼 → 𝐼= 𝑉
𝑅= 4.2
15=0.28 𝐴
𝑃= 𝑉
𝑅= 4.2
15= 1.176 𝑊
El mos e debe se de canal P pa a unciona en la con igu ación del esquema. Además,
debe á se capaz de sopo a 0.28 A de co ien e po el mismo, con lo que in e esa que enga
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
40
una esis encia de conducción lo más baja posible. También debe á necesi a un ol aje bajo
pa a en a en sa u ación ya que el ol aje de la celda oscila á en e 2.5 y 4.2V. Un modelo
adecuado que eúne es as ca ac e ís icas es el FDN304P.
Como acla ación cabe comen a que el ci cui o de la an e io igu a si e solamen e pa a el
balanceo de cada celda. Como en cada placa escla a hab á posibilidad de balancea has a 8
celdas simul áneamen e, es e ci cui o es a á epe ido 8 eces en cada placa.
Diseño esquemá ico: Medición de ol ajes
Como ya se ha explicado en el análisis de al e na i as se ha op ado po mul iplexa los
ol ajes de las celdas pa a educi el núme o de en adas analógicas y e apas de
acondicionamien o necesa ias. Como se ienen que medi has a 8 ol ajes y, eniendo en
cuen a que el a duino Nano dispone de 6 en adas analógicas (ya que 2 se u ilizan pa a las
comunicaciones I2C po que compa en pin), su gen las siguien es posibilidades:
 Mul iplexa las 8 señales has a 4 y u iliza 4 e apas de acondicionamien o con 4
en adas analógicas.
 Mul iplexa las 8 señales has a 2 y u iliza 2 e apas de acondicionamien o con 2
en adas analógicas.
 Mul iplexa las 8 señales has a 1 y u iliza 1 única e apa con una sola en ada
analógica.
Como las 3 soluciones son ac ibles a ni el elec ónico se ha omado la decisión en unción
del cos e económico y espacio necesa io en la placa pa a cada opción. T as una búsqueda
en el me cado pa a las dis in as posibilidades se ha is o que ap oximadamen e los
componen es de la e apa de acondicionamien o cues an el doble que cada mul iplexo . Po
lo an o, la p ime a opción ha sido desca ada po su cos e y necesi a algo más de espacio.
En e la segunda y la e ce a opción se ha decidido escoge la segunda ya que ambas enían
un cos e simila , pe o la segunda opción ha esul ado más sencilla pa a op imiza el amaño
del PCB.
Pa a escoge el modelo del mul iplexo se debe ene en cuen a p incipalmen e los
siguien es dos ac o es:
 El ol aje que son capaces de sopo a ya que el ol aje de las celdas se suma.
 El núme o de canales que iene. Exis en mul iplexo es que mul iplexan 8 señales en
1 en un solo encapsulado. También hay modelos con el mismo encapsulado que el
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
47
Ilus ación 24. Esquema del módulo Mic o SD
Diseño esquemá ico: Pan alla OLED
El módulo OLED a u iliza se á una pan alla de 0.96” ípica u ilizada en p oyec os de
a duino, dado su bajo cos e, consumo y acilidad de uso. Exis en p incipalmen e dos ipos
de módulos: Con comunicaciones SPI y con I2C. Se ha escogido el de I2C po educi el
núme o de pines y po simplicidad a la ho a de p og ama lo. La alimen ación es a 5V y su
conexión y apa iencia es la siguien e:

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
48
Ilus ación 25. Pan alla OLED
Diseño esquemá ico: Alimen aciones
Su ge la necesidad de alimen a los componen es de la placa a 2 ol ajes di e en es. Po un
lado es á el AD628ARZ de la e apa de acondicionamien o que necesi a al ededo de ±12𝑉,
mien as que el es o de componen es se alimen an a 5𝑉.
Es as ensiones deben log a se a pa i de los 12V disponibles en la mo ocicle a y hay que
ene en cuen a que la con e sión debe hace se aislada gal ánicamen e, ya que cada placa
iene su e e encia. Po lo an o, su gen dos posibilidades:
 U iliza dos egulado es DC/DC aislados pa a ob ene los ±12𝑉 y 5𝑉 a pa i de los
12V de en ada.
 U iliza un egulado DC/DC aislado pa a ob ene 5𝑉 a pa i de los 12𝑉 de en ada
y o o egulado no aislado pa a ob ene los ±12𝑉 a pa i de los 5𝑉.
Pa a ambos casos se necesi an dos egulado es, a di e encia de que en el segundo caso solo
hace al a que uno de los egulado es sea aislado. Es o o ece una en aja económica ya que
los egulado es aislados ienden a se más ca os. Elec ónicamen e hablando apenas hay
una en aja de una en e a la o a, con lo que se op a po la segunda opción.
Una ez conocido el ipo de egulado necesa io hace al a es ima el consumo de co ien e
pa a elegi de la o ma más e icien e los componen es. Pa a ello se an a enume a odos
los componen es que consuman co ien e de cada egulado y se es ima á su consumo a
pa i del da ashee co espondien e:
 La uen e de alimen ación de ±12𝑉 necesi a alimen a a:
o Ampli icado di e encial AD628ARZ: 1.6𝑚𝐴 de consumo po cada
ampli icado . Como se u ilizan 2 el consumo o al asciende a 3.2𝑚𝐴.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
49
Siendo el consumo an pequeño en los ±12𝑉 se ha decidido u iliza el con e so
MAX680CSA+. Es capaz de suminis as has a 10𝑚𝐴, con lo que iene capacidad de sob a
pa a su unción. Acep a ol ajes en e 1.5 𝑦 6𝑉, con lo que la alimen ación a 5𝑉 no le supone
ningún p oblema. El ol aje de salida es el doble al ol aje de en ada, con lo que en ealidad
se ob end án ±10𝑉, aunque eso no a a supone ningún p oblema a los ampli icado es
di e enciales que alimen a. Su conexión es la siguien e:
Ilus ación 26, MAX680
Es necesa io coloca 4 condensado es pa a pode duplica el ol aje. El alo ecomendado
pa a es os condensado es es de 4.7𝜇𝐹 según el da ashee [26], con lo que se coloca án esos
mismos alo es.
 La uen e de alimen ación de 5V necesi a alimen a a:
o A duino Nano: Como máximo puede llega a consumi unos 200𝑚𝐴, aunque
ealmen e en es e p oyec o no se aya a llega a dichos alo es pues o que
no se u ilizan odos los pines. A es e alo se le es á sumando el consumo del
módulo mic o SD.
o Pin Enable de los mul iplexo es: 0.15𝜇𝐴, p ác icamen e desp eciable.
o Aislado digi al: 7.6𝑚𝐴 de consumo máximo.
o Regis o de desplazamien o de la e apa del balanceo: Se a a consumi
ap oximadamen e 7𝑚𝐴 po cada salida que se ac i e. Suponiendo que se
ac i an odas las salidas a la ez supond ía un consumo de 56𝑚𝐴.
o Senso es de empe a u a Dallas: Ap oximadamen e unos 5𝑚𝐴 po cada
senso conec ado. Suponiendo que se conec an 4 senso es po placa, algo
muy ce cano a la ealidad, supond ía un consumo de 20𝑚𝐴.
o Pan alla OLED: 16mA según su da ashee .
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
50
o Con e so DC/DC de 5𝑉 a ±12𝑉: Pa a el consumo que end á el da ashee
es ima que la e iciencia del con e so onda el 90%. Es o supone el siguien e
consumo a 5𝑉:
𝑃=𝑉∗ 𝐼=10 ∗ 0.0032=0.032 𝑊
𝑃=𝑃
𝜂= 0.032
0.9 =0.0355 𝑊
𝐼= 𝑃
𝑉= 0.0355
5=0.007𝐴=7𝑚𝐴
Sumando odos los consumos máximos se llega a un alo de 306.6𝑚𝐴. En la ealidad
p obablemen e enga un alo meno , pe o siemp e hay que conside a el peo caso pa a
e i a sob eca gas. T as una búsqueda en e di e en es ab ican es se op a po el con e so
TMH 1205S de T aco Powe . O ece un amaño compac o pa a se un con e so aislado,
además de a un bajo p ecio y con una capacidad de suminis o de has a 400𝑚𝐴. Se ha
conec ado de la siguien e o ma:
Ilus ación 27. Alimen ación de la placa escla a
Se han in oducido condensado es y una induc ancia pa a educi el uido que pueda habe
del en o no. También se ha colocado un usible de 0.5A como medida de p o ección. La
alimen ación a la placa se in oduce median e el uso del conec o 43650-0400 de Molex.
Diseño del PCB
Pa a el diseño del ci cui o imp eso se ha u ilizado el mismo p og ama que pa a el esquema
eléc ico, el Au odesk Eagle. Una ez e minado el esquema hay que impo a odos los
componen es a un nue o a chi o que con end á el PCB. Cuando se impo a el esquema
comple o apa ece lo siguien e:
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
51
Ilus ación 28. Diseño del PCB escla o
Las líneas ama illas simbolizan odas las conexiones que hay en e dichos componen es. El
siguien e paso es coloca odos los componen es en el si io que más les con enga. Pa a ello
se siguen los siguien es c i e ios:
 Todos los componen es se coloca án en la misma ca a pa a acili a el ensamblaje
de los mismos. Es o se debe a que odos los componen es, sal o los Th ough Hole,
se án soldados a la ez en un ho no. Es e p oceso se explica en de alle en el apa ado
“Ensamblaje”.
 El es o de componen es pe enecien es a la misma e e encia se an a coloca lo
más ce ca posible pa a educi el amaño del PCB y o denados de al o ma que
acili en las conexiones. Pa a al in se ag upan los componen es en unción del papel
que desempeñan en la placa: Conec o es, alimen ación, comunicaciones, balanceo,
medida de celdas, senso es de empe a u a y A duino.
 No se necesi a un ancho de pis a excesi o ya que la mayo co ien e no se á de más
de 400mA. El c i e io a segui se á coloca un g oso de pis a que pe mi a ci cula
la co ien e sin que apenas se calien e la placa. Con as ando en di e en es
bibliog a ías y expe iencia pe sonal se concluye que un ancho de pis a de 0.5mm es
su icien e pa a co ien es de has a 2A. Po lo an o, si se cumple es a anchu a
queda á desca ado el sob ecalen amien o de la placa.
 Las esis encias que disipan la ene gía del balanceo se colocan o denados en una ila
po si se die a la necesidad de ins ala un disipado de calo . De es a o ma
colocando un único disipado ec angula se puede e ige a odas las esis encias.
Adicionalmen e se colocan dos aguje os en los ex emos izquie do y de echo pa a
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
52
acili a el ama e del disipado . En caso de que ue a necesa io se pod ía
ap o echa los aguje os pa a coloca un en ilado .
 Se colocan al menos es aguje os más pa a acili a el ama e en e las placas o a la
p opia mo ocicle a.
 La o ganización de Mo oS uden indica en el eglamen o la siguien e no ma a
cumpli : “En el caso de que cie os componen es pe enecien es al HVS y GLVS se
ins alen en una misma placa base, se coloca án en zonas cla amen e di e enciadas y
ma cadas a al e ec o sob e la placa. La sepa ación en e ambas se á de al menos, 6,4
mm sob e supe icie, 3,2 mm a a és del ai e y de 2 mm si es án bajo ecub imien o
(es as dis ancias pueden no espe a se pa a el caso de op oacoplado es cuya ensión
nominal sea igual o mayo que la ensión del HVS) “. Pues o que no se a a u iliza
ningún ipo de ecub imien o hab á que espe a las dis ancias de 6.4 y 3.2mm. Se
p es a á especial a ención a la ho a de coloca los dos conec o es que in oducen
las comunicaciones I2C y alimen ación y el aislado digi al de las comunicaciones,
ya que son los únicos componen es que an e e enciados a o a masa. Pa a
aumen a la segu idad an e a cos eléc icos se a a ealiza un co e en la placa en
las zonas que sepa an elemen os de dis in as e e encias. De es a o ma se aumen a
la dis ancia de sepa ación de componen es sob e supe icie sin habe los alejados
en e ellos.
Teniendo en cuen a lo an e io men e comen ado el esul ado es el siguien e:
Ilus ación 29. PCB escla o

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
53
Se ha log ado coloca un g an núme o de componen es, elemen os que consumen po encia
y dis in as e e encias que obligan a aumen a la sepa ación de los componen es en un
amaño educido. El PCB se esume en unas dimensiones inales de 85𝑥94𝑚𝑚.
A con inuación se enume a cada uno de los bloques uncionales de la placa y se mues a en
qué pa e es án colocados:
1. Conexión de las celdas a la placa.
2. Alimen ación de la placa escla a.
3. E apa de balanceo.
4. Comunicaciones I2C.
5. Medición de ol aje de las celdas.
6. E apa de mul iplexación del balanceo.
7. Alimen ación de ±12V.
8. Almacenamien o en mic o SD.
9. Senso es Dallas.
10. Pan alla OLED.
11. Senso de in ensidad.
12. A duino Nano.
Ilus ación 30. Bloques uncionales del escla o
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
54
DISEÑO DE PLACA MAESTRA
Diseño esquemá ico: A duino Nano
El uso de pines digi ales y analógicos es el siguien e:
 En adas digi ales:
o D6 has a D8: Supe isión de ape u a y cie e de has a 3 con ac o es.
o A0: Supe isión del IMD. En ealidad es una en ada analógica, pe o se
puede usa como en ada digi al.
 Salidas digi ales:
o A1 has a A3: Ape u a y cie e de con ac o es. Las en adas analógicas
ambién se pueden u iliza como salidas digi ales.
 En adas analógicas:
o A6 y A7: Medición de e mis o es.
 Comunicaciones:
o D0 y D1: Comunicaciones se ie. No hay nada conec ado ya que a
in e namen e en el a duino al conec o mic o USB.
o D3 has a D5: Comunicaciones blue oo h.
o D2, D10, D11, D12, D13: Comunicaciones SPI pa a la mic o SD y el CAN.
o A4 y A5: Comunicaciones I2C.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
55
Ilus ación 31. A duino Nano en el maes o
Al igual que con la placa escla a, cada uno de los pines que se ha u ilizado o dejado de u iliza
se han elegido con el in de acili a el u eado a la ho a de diseña el PCB.
Diseño esquemá ico: Con ol de con ac o es
El con ol de con ac o es se puede ealiza de dos o mas: Con o sin ci cui o de p eca ga.
Los ci cui os de p eca ga se u ilizan como elemen o de segu idad en con ac o es que
alimen an ca gas capaci i as a un al o ol aje. La ca ga capaci i a eque i ía un pico de
in ensidad an al o al ce a el con ac o que pod ía daña el con ac o .
A in de e i a es e enómeno no deseado, el ci cui o de p eca ga adecúa el ol aje de ambos
e minales del con ac o pa a que sea po debajo de un ango segu o. Exis en di e en es
opologías pa a p eca ga un con ac o , pe o no hace al a de alla lo en es e p oyec o,
simplemen e sabe que se debe añadi la posibilidad de u iliza los.
Se a a explica p ime o el ci cui o del con ol de con ac o sin p eca ga y pos e io men e
con p eca ga pa a inalmen e mos a cómo se ha implemen ado.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
56
Con ol de con ac o sin p eca ga
“CONTACTOR-1” es la salida digi al del a duino que con ola el con ac o . Como los
con ac o es pueden llega a consumi más in ensidad que la que el a duino puede da po
pin y el ol aje necesa io es de 12V en luga de 5V se debe diseña un esquema que cumpla
las necesidades. Ese esquema es el siguien e:
Ilus ación 32. Ci cui o del con ac o [20]
El con ol del con ac o se ealiza a a és del ansis o NPN “T1”. Es e cie a el ci cui o
alimen ando a 12V di ec amen e el con ac o ya que pone a masa el e minal del con ac o
que no es á a los 12V. De es a o ma se soluciona el p oblema de alimen a el con ac o a
una ensión di e en e a los 5V del a duino. Los 12V se suminis an di ec amen e de la
alimen ación de la placa maes a.
El alo de R11 se ha calculado pa a ga an iza que el ansis o deja pasa la su icien e
co ien e como pa a alimen a el elé. Se ha supues o que el con ac o que se a a conec a
consumi á como mucho 100mA a 12V. Po lo an o, el alo de R11 se á:
𝑉""= 𝑉+𝑉 (1)
󰇱𝑉=𝑅11𝑥𝐼
𝐼= 𝐼= 𝐼
ℎ󰇲 → 𝑉 =𝑅11𝑥𝐼
ℎ (2)
𝑉= 0.6 𝑉 (3)
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
63
CAN
Las comunicaciones CAN en e el a duino y o os disposi i os se ealizan median e los
con olado es MCP2515 y MCP2551 [22]. Ambos chips ealizan la con e sión del p o ocolo
CAN a SPI pa a que el a duino pueda comunica se. El esquema de conexiones es el siguien e:
Ilus ación 38. Esquema del MCP2515D
Pa a el co ec o uncionamien o del p o ocolo CAN es necesa io añadi un oscilado de
16MHz jun o con dos condensado es de 22pF. Es a pa e se enca ga de gene a la señal de
eloj necesa ia en el módulo.
Las conexiones CS, SCK, MOSI y MISO son las necesa ias pa a las comunicaciones SPI con el
a duino. El MCP2515D aduce las comunicaciones SPI a dos únicas señales, TXCAN y
RXCAN y las en ía di ec amen e al MCP2551:

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
64
Ilus ación 39. Esquema del MCP2551
El MCP2551 es el ansmiso enca gado de cumpli los equisi os de la capa ísica del
p o ocolo CAN. CANH y CANL son las señales ya en el p o ocolo CAN que i án de un
disposi i o a o o.
Ilus ación 40. Res o de esquema del CAN
La esis encia R10 de 120Ω es la esis encia e minal de las comunicaciones. Si e pa a
acili a la a ea de a e igua a e ías y se coloca al lado de CANH y CANL [23].
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
65
Adicionalmen e se han colocado 3 leds como indicado es de lo que es á ocu iendo en las
comunicaciones.
Blue oo h
Po simplicidad a la ho a de ealiza las soldadu as y conocimien os po habe ealizado
comunicaciones blue oo h en o os p oyec os se a a u iliza un módulo HC-05. Tiene la
siguien e apa iencia:
Ilus ación 41. Módulo blue oo h HC-05
El módulo blue oo h se enca ga de ealiza el enlace en e el blue oo h y el p o ocolo UART
TTL del a duino. Se alimen a a 5V y el pin “ENABLE” se conec a con el a duino pa a
posibili a la con igu ación del blue oo h median e comandos AT. El pin “STATE” no es
necesa io conec a lo.
Diseño esquemá ico: Módulo Mic o SD
El módulo mic o SD es exac amen e idén ico al de la placa escla a, con lo que no hace al a
de alla lo en el p esen e apa ado.
Diseño esquemá ico: Pan alla OLED
La pan alla OLED es exac amen e idén ica al de la placa escla a, con lo que no hace al a
de alla lo en el p esen e apa ado.
Diseño esquemá ico: Alimen aciones
La alimen ación de la placa maes a p o iene de 12V de co ien e con inua de la
mo ocicle a. Como el maes o es a á e e enciado a la misma masa que es os 12V la
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
66
con e sión no debe se aislada. Esos 12V deben adap a se a 5V y el consumo que hab á es
el siguien e:
 A duino Nano: Como mucho 200mA según el ab ican e pa a odas sus
uncionalidades. En es e consumo se ha incluido el módulo de la mic o SD y el del
CAN.
 Pan alla OLED: 16mA según su da ashee .
 Blue oo h: 50mA según su da ashee .
En o al suman 266mA de máximo consumo a 5V. Se a a u iliza la uen e TSR1-2450, que
iene una capacidad de has a 1A. Suponiendo una e iciencia de 92% supond ía un consumo
a 12V de:
0.92= 𝑃
𝑃= 5𝑉𝑥𝐼
12𝑉𝑥𝐼 → 𝐼=5𝑥266
0.92𝑥12= 120.47𝑚𝐴
Cada uno de los ci cui os de supe isión de con ac o es iene una uen e de alimen ación
aislada pa a supli los 10𝑚𝐴 que se es ima que consumi án. Se ha escogido SPU01M-12 con
una capacidad de 84mA. Es más que de sob a, pe o se ha escogido po se la opción más
económica que se ha encon ado en el momen o. Según su da ashee iene una e iciencia
ap oximada de 84%, lo que supond ía en o al un consumo de 11.90mA po ci cui o de
supe isión.
Cada uno de los con ac o es puede llega a consumi has a 100mA y, como pueden
conec a se 3, el consumo o al puede llega a 300mA. Si se le suman los 3 ci cui os de
supe isión y la pa e que alimen a a la uen e no aislada de 5V el consumo o al llega a:
𝐼 = 𝐼  +𝐼ó+𝐼=120.47+3𝑥11.9+300
=456.17𝑚𝐴
Es e consumo hab á que ene lo en cuen a a la ho a de escoge la uen e de alimen ación de
12V que alimen a á a odo el BMS.
Diseño del PCB
Pa a el diseño de la placa maes a se han seguido los mismos c i e ios de ancho de pis a y
sepa ación de e e encias de la placa escla a. Las dimensiones inales son 84x95mm,
idén icas a la placa escla a. Se ha hecho el es ue zo de encaja odos los componen es en el
mismo pequeño de placa pa a aumen a la compac ación de oda la elec ónica. El esul ado
es el siguien e:
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
67
Ilus ación 42. Diseño de placa maes a
A con inuación se enume a cada uno de los bloques uncionales de la placa y se mues a en
qué pa e es án colocados:
1. Supe isión de con ac o es.
2. Alimen ación de la placa maes a.
3. Almacenamien o en mic o SD.
4. Te mis o es.
5. Comunicaciones CAN.
6. Comunicaciones I2C.
7. Con ol de con ac o es.
8. A duino Nano.
9. Pan alla OLED.
10. Supe isión del IMD.
11. Módulo Blue oo h.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
68
Ilus ación 43. Bloques uncionales de placa maes a
SOFTWARE DEL BMS
Ambos so wa es, an o el del escla o como el del maes o, se p og ama án u ilizando el
en o no A duino IDE. Como ambas placas deben ealiza dis in as unciones y cada una de
ellas con sus p opias es icciones empo ales se ha á un es udio p e io de cada una de las
a eas po sepa ado con el in de asegu a que el so wa e inal unciona á sin p oblemas.
Se a a p og ama el a duino como si se a a a de un sis ema ope a i o de iempo eal o
RTOS (Real Time Ope a i e Sys em). Un RTOS es cualquie ac i idad de p ocesamien o de
la in o mación que debe esponde den o de un in e alo de iempo especi icable, ini o y
b e e. Pa a ealiza la ac i idad o ganiza las a eas de o ma concu en e, es o es, un
plani icado decide qué a ea se ejecu a en cada ins an e en base a cie os a ibu os, en ez
de ejecu a el código de o ma secuencial. Se u ilizan los sis emas RTOS en aplicaciones
c í icas en las que un allo del sis ema puede lle a a un acciden e, ca ás o e o cualquie
consecuencia g a e no deseable.
Aunque el p ocesado del a duino no posea los mecanismos Ha dwa e necesa ios pa a
unciona como un RTOS exis e una lib e ía que median e so wa e o ece las he amien as
necesa ias pa a consegui lo. Pa a que el plani icado de a eas ges ione el p ocesado y las
comunicaciones deben especi ica se cie os a ibu os a cada una de las a eas. Son los
siguien es:

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
69
 Tipo de a ea: Pe iódica si se ejecu a cíclicamen e o espo ádica si debe cumpli se
alguna condición pa a que la a ea se ejecu e.
 P io idad de la a ea: Es un a ibu o numé ico que se le da a cada a ea. La p io idad
de cada a ea ayuda al plani icado de a eas a decidi que se ejecu a en cada
momen o.
 Tiempo de ejecución (C): Tiempo que necesi a la a ea pa a ejecu a se
comple amen e. Se habla del iempo máximo de ejecución cuando se da el caso en el
que la a ea necesi a el iempo máximo posible pa a ejecu a se. Una a ea puede
ene di e en es iempos de ejecución a causa de bucles no aco ados, condiciones
que lle an a una sección de código, e c.
 Pe iodo de ac i ación (T): In e alo de iempo que debe pasa en e dos
ac i aciones consecu i as. Como es de espe a el pe iodo de ac i ación debe á se
igual o mayo al iempo de ejecución de la a ea.
 Plazo de espues a o “deadline” (D): Tiempo máximo que debe anscu i pa a que
una a ea se ejecu e comple amen e desde que se ha ac i ado. Es e iempo debe se
igual o mayo que el iempo de ejecución.
Como ya se ha especi icado se debe conoce el iempo máximo de ejecución. Exis en dos
o mas de hace lo: Expe imen almen e midiendo el p opio iempo median e el uso de algún
algo i mo en el código o descomponiendo el código de la p opia a ea línea a línea y
calcula lo de o ma p ecisa. El código a ejecu a pa a las a eas del BMS siemp e es el mismo
ya que son a eas es á icas y no dinámicas. Solo en algunas de ellas hab á bucles
condicionales que a íen el iempo de ejecución de la a ea. En esos casos se supond á que
se accede a odos los bucles condicionales y se calcula á ese iempo de ejecución. Po lo
an o, no esul a ningún incon enien e hace lo de o ma expe imen al ya que da á un
iempo p eciso y equie e menos es ue zo que ealiza el análisis línea a línea.
Pa a medi de o ma p ecisa el iempo anscu ido se oma el ins an e empo al absolu o
an es de comenza y al e mina la a ea. La es a de ambos iempos da el iempo exac o que
ha necesi ado pa a ejecu a se.
Se es udia p ime o el so wa e del escla o y a con inuación el del maes o.
So wa e del escla o
El escla o iene 7 a eas a cumpli : Medición de ol ajes, empe a u as, in ensidades,
balanceo, con ola la pan alla OLED, almacenamien o en mic o SD y comunicaciones. A
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
70
con inuación se de alla el uncionamien o de cada una de las a eas jun os con sus
espec i os a ibu os empo ales:
 Medición de ol ajes (Ta ea 1): Se enca ga de lee el alo de odas las celdas
conec adas a esa placa. Es la a ea que se necesi a ejecu a con mayo ecuencia ya
que es i al ene los ol ajes de las celdas ac ualizados pa a ga an iza la segu idad
de las mismas. En caso de que ocu a un co oci cui o y el ol aje de una celda caiga
es e debe se de ec ado en el mejo iempo posible. Po lo an o, se a a de una a ea
pe iódica que debe cumpli un pe iodo de ejecución de 100ms. Se conside a un
iempo de mues eo muy ajus ado en compa ación a o os BMS del me cado.
 Medición de empe a u as (Ta ea 2): Es a a ea se enca ga de medi la empe a u a
de odos los senso es Dallas conec ados a la placa. La empe a u a es una a iable
que cambia len amen e debido a los enómenos ísicos de la p opia ba e ía. En
consecuencia, no se equie e medi el alo a una ecuencia an al a y se conside a
adecuada un pe iodo de 1s pa a es a a ea pe iódica.
 Medición de in ensidad (Ta ea 3): Al igual que la medición de ol ajes, es a es una
a ea c í ica ya que de ec a á sob eca gas en la ba e ía y debe á ac ua el con ac o
lo más ápido posible. Se es ablece un pe iodo de ejecución ambién de 100ms.
 Almacenamien o en la mic o SD (Ta ea 4): No es necesa io gua da odos los da os
mues eados ya que gene a ía muchísimos da os poco ú iles y esul a ía di ícil
asegu a los plazos de ejecución de las o as a eas po el iempo que necesi a ía
es a pa a ejecu a se. Po lo an o, se ha decidido es ablece un pe iodo de 1s pa a
gua da los alo es ins an áneos de las a iables mues eadas.
 Pan alla OLED (Ta ea 5): No equie e ac ualiza se cada poco iempo ya que no hace
al a ene an a p ecisión a la ho a de isualiza los da os en la pan alla. Es a
simplemen e se u iliza á pa a e de una o ma ápida los alo es ins an áneos, no
in oluc a ninguna pa e i al de la placa. Pe iodo de 1s.
 Balanceo de las celdas (Ta ea 6): Ac úa sob e el egis o de desplazamien o pa a así
ac i a el balanceo de las celdas. Con el conocimien o de los ol ajes de las celdas
calcula cuales deben balancea se. Como la in ensidad de balanceo es muy pequeña
espec o a la in ensidad de ca ga de la ba e ía apenas se e a ec ado el endimien o
del balanceo eniendo un pe iodo de ejecución muy co o. Po lo an o, se conside a
co ec o un pe iodo de 1s pa a es a a ea semipe iódica. No se conside a como
pe iódica a pesa de que no a íe su ecuencia y ejecución ya que es a a ea solo se
ejecu a á cuando la ba e ía es é ca gándose. Se puede ca aloga como una a ea
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
71
espo ádica que iene como condición que la ba e ía se es é ca gando y que iene una
sepa ación mínima de 1s en e dos ac i aciones consecu i as.
 Comunicaciones I2C (Ta ea 7): Se enca ga de escucha al maes o y en ia le de
uel a las mediciones ac ualizadas ( ol ajes, empe a u as, in ensidades y celdas
que se es án balanceando). No se puede conside a una a ea pu amen e pe iódica,
aunque sea cíclica, ya que el inicio de la a ea depende del ins an e en el que el
maes o es ablece la comunicación y es o a su ez depende del núme o o al de
placas escla as con las que se comunica. A mayo núme o de placas escla as mayo
pe iodo de ejecución. Pa a el análisis se a a conside a un pe iodo es ic o de
200ms en e dos comunicaciones consecu i as.
Conocidos los equisi os empo ales de cada a ea se p ocede a de ini el mé odo de
plani icación, o lo que es lo mismo, la o ma en la que el plani icado epa i á los ecu sos
del p ocesado pa a ejecu a el código.
En el peo de los casos el p og ama se puede in e p e a como 7 a eas pe iódicas
independien es. Se a a ealiza una plani icación con p io idades ijas y con desalojo: Una
a ea que ha empezado a ejecu a se solo deja á de hace lo si ha e minado su ejecución o
po que una a ea más p io i a ia quie e ejecu a se.
Pa a la asignación de p io idades en es e ipo de plani icado es se sigue el c i e io RMS
(Ra e Mono onic Scheduling) ya que es óp ima pa a dicho plani icado y se cumple el
equisi o pa a u iliza la (que cada a ea enga plazo igual al pe iodo). Consis e en da mayo
p io idad a las a eas que engan meno pe iodo. Po lo an o, las asignaciones de
p io idades jun o con el es o de a ibu os se esumen en la siguien e abla:
Ta ea P C (ms)
T (ms)
D (ms)
Medición de ol ajes 3 10 40 40
Medición de in ensidades 3 2 40 40
Comunicaciones 2 20 80 80
Almacenamien o mic o SD 1 50 1000 1000
Pan alla OLED 1 20 1000 1000
Medición de empe a u as 1 10 1000 1000
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
72
Balanceo 1 0.12 1000 1000
Tabla 3. A ibu os de las a eas del escla o
La lib e ía RTOS que se a a implemen a en a duino solo pe mi e asigna p io idades en e
1 y 3, siendo la mayo p io idad el alo de 3 y la meno el 1.
Según el eo ema de Liu & Layland, pa a el modelo simple de a eas con asignación de
p io idades RMS, los plazos de ejecución es án ga an izados si:
𝑈= 𝐶
𝑇 ≤

 𝑁2
−1
Siendo N el núme o de a eas a con ola en el sis ema:
𝑈= 10
40+2
40+20
80+50
1000+20
1000+10
1000+0.12
1000=0.63
𝑁=6 →𝑈=62−1=0.734 →0.63≤0.734
Como se puede obse a se cumple el eo ema, lo que quie e deci que queda ga an izada
la ejecución de las a eas po pa e del p ocesado . A con inuación se de alla cada una de
las a eas:
Medición de ol ajes
Los ol ajes de las 8 celdas se miden a a és de las en adas analógicas 6 y 7 del a duino.
Pa a elegi que ol aje medi en cada una de las en adas hay que selecciona el canal
deseado en los mul iplexo es de la e apa de medición de ol ajes. Es os mul iplexo es se
con olan median e 2 pines digi ales, el 3 y el 4 conc e amen e. El diag ama uncional de los
mul iplexo es es el siguien e:
Ilus ación 44. Tabla de e dad de los mul iplexo es
De inidos los pines la a ea iene el siguien e bloque uncional:
Digi al 4 Digi al 3 Analógico 6 Analógico 7
LOW LOW 5 1
LOW HIGH 6 2
HIGH LOW 7 3
HIGH HIGH 8 4
Pines digi ales
de salida
Celdas medidas
en las en adas
analógicas
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
79
Comunicaciones CAN 2 10 200 200
Comunicaciones I2C 2 5 50 50
Cálculo del SOC 1 2 1000 1000
Medición de e mis o es 1 4 1000 1000
Comunicaciones Blue oo h 1 5 1000 1000
Comunicaciones se ie 1 5 1000 1000
Pan alla OLED 1 20 1000 1000
Almacenamien o mic o SD 1 100 1000 1000
Tabla 4. Ta eas del maes o.
Se p ocede a ealiza el cálculo del eo ema de Liu & Layland de la misma mane a que en el
caso an e io :
𝑈= 5
50+5
50+2
50+10
200+5
50+2
1000+4
1000+5
1000+5
1000+20
1000+100
1000=0.426
𝑁=11 →𝑈=112
−1=0.715 
→0.426≤0.715
Se cumple el eo ema, lo que quie e deci que queda ga an izada la ejecución de las a eas
po pa e del p ocesado . A con inuación se desc ibe el código de cada una de las a eas:
Con ol de con ac o es
El so wa e es mucho más sencillo que el ha dwa e pa a el caso del con ol de con ac o es.
En caso de que se quie a ab i o ce a el con ac o bas a á con cambia el es ado del pin
que con ola dicho con ac o . No es necesa io a ende a la p eca ga ya que de eso se enca ga
una placa ex e na al BMS.
Simplemen e hab á que ac ua sob e las salidas digi ales mapeadas del A1 al A3 en unción
de qué con ac o se quie e ab i o ce a . Pa a ce a un con ac o hay que pone la salida
digi al a 1 y ice e sa.

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
80
La decisión de ab i o ce a con ac o la oma á en unción de los alo es en odas las
a iables. Si es as son co ec as el con ac o se ce a á. En caso con a io o dena á que el
con ac o pe manezca abie o.
Supe isión de es ado de con ac o es
La supe isión del es ado de con ac o es es simila a la del con ol del mismo, a di e encia
que se lee una en ada digi al en ez de con ola una salida. Cada ez que se ejecu a la a ea
se lee el es ado de los pines en e D6 y D8 y la secuencia es la siguien e: Si el con ac o es á
ce ado llega á un 0 a la en ada digi al y ice e sa.
En caso de que se de ec e un caso indeseado (con ac o ce ado que no debe ía o con ac o
abie o que debe ía es a abie o) ejecu a á la a ea de con ol de con ac o es pa a
emedia lo.
Supe isión IMD
El es ado del IMD se lee a a és de la en ada digi al A0. En caso de que el alo sea 1
signi ica que los alo es medidos po el IMD son co ec os, es o es, que el aislamien o en e
el al o ol aje y el bajo ol aje en la mo ocicle a es á en e los alo es admi idos. Si no es así
el a duino lee á un 0 en la en ada digi al y el con ol de con ac o es debe á ac ua .
Medición de e mis o es
Los e mis o es son leídos en los pines A6 y A7. Una ez medido el ol aje se debe hace la
con e sión de ol ios a g ados cen íg ados. Pa a ello se pa e del modelo de S einha -Ha
[25]:
𝑇 (º𝐶)= 1
𝐴+𝐵∗𝑙𝑜𝑔(𝑅)+𝐶∗(log(𝑅))
Los pa áme os de A, B y C gene almen e ienen en el p opio da ashee del e mis o . En
caso de que no ue a así se pod ía ob ene expe imen almen e en el alle .
El alo de R es la esis encia que o ece el e mis o cuando es some ida a esa empe a u a.
Conocido el ol aje del e mis o se puede ob ene el alo de R del mismo ya que es e
e mis o es á conec ado en se ie con una esis encia. Pa a ello p ime o se ob iene la
in ensidad que ci cula po el e mis o :
5𝑉= 𝑉  + 𝑉  → 𝑉 =5𝑉−𝑉  →
10.000∗𝐼=5𝑉−𝑉  → 𝐼= 5𝑉−𝑉 
10.000
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
81
Se ha pues o un alo de 10.000Ω pa a la esis encia en se ie ya que es la que se ha colocado
en el ci cui o. El alo de R po lo an o es:
𝑅∗𝐼=𝑉  →𝑅= 𝑉 
5𝑉−𝑉 
10.000 →𝑅 =10.000∗𝑉 
5𝑉−𝑉 
Como el ol aje se mide sob e una escala de 10 bi s, en ealidad los 5V debe ía se un alo
de 1025 pa a ealiza la con e sión co ec amen e. En conclusión:
𝑅 =10.000∗𝑉 
1025−𝑉 
En conclusión, pa a ob ene la empe a u a del e mis o se debe ob ene el alo de R
median e la ó mula an e io pa a pos e io men e sus i ui la en el modelo de S einha -
Ha .
Cálculo del SOC
El cálculo del SOC (S a e O Cha ge) de una ba e ía de ion de Li io se puede ealiza de
di e sas o mas. Muchas de ellas conlle an algo i mos ma emá icos complejos en los que
hay que modeliza la ba e ía a a és de igu osos ensayos.
Exis en algo i mos más sencillos que se ob ienen a a és de las cu as de uncionamien o
a dis in as empe a u as y desca gas de la ba e ía.
El más sencillo de odos es supone que la ba e ía iene una capacidad conocida y se es ima
su capacidad es an e a a és del consumo en la misma. Es o es, si la capacidad de la ba e ía
ue a de 1Ah y se consumie a 1A du an e 30 minu os, la ba e ía es an e se ía del 50%
(suponiendo que inicialmen e es aba al 100%). El esul ado se ob iene de la siguien e
ó mula:
𝑆𝑂𝐶= 𝑆𝑂𝐶−𝐼∗𝑡
𝐶í∗3600∗100= 𝑆𝑂𝐶−𝐼
𝐶í∗36
El esul ado del SOC se ob iene en % pues o que la in ensidad se mide en ampe ios (A), el
iempo en segundos (s) y la capacidad en ampe ios ho a (Ah). Se di ide en e 3600 pa a
ealiza la con e sión en e segundos y ho as y se mul iplica po 100 pa a pone lo en
po cen aje. El iempo se ha sus i uido como 1s ya que esa in ensidad se á la in ensidad
media medida en un pe iodo de 1s.
En caso de que el SOC llega a debajo del lími e es ablecido se debe á ab i el con ac o
p incipal de la mo ocicle a.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
82
Comunicaciones I2C
El maes o pedi á una can idad de by es especí ica a cada maes o en unción del núme o
de senso es que enga conec ados. Ese núme o es conocido y se indica en la con igu ación
del p og ama, a a és de una a iable.
T as un b e e pe iodo ecibi á la ama des escla o y p ocede á a lee la. Pa a ello
simplemen e i á leyendo by e a by e y almacenándolo en las a iables que le co esponde.
Es una a ea sencilla ya que el o den es conocido de an emano. Se en ían los ol ajes,
después las in ensidades y inalmen e las empe a u as.
Almacenamien o mic o SD
Es exac amen e idén ica a la a ea que iene la a je a escla a, a di e encia de que es a
gua da los da os de odos los escla os, mien as que los escla os solo gua dan los da os de
sus p opias a iables.
Comunicaciones se ie
Las comunicaciones se ie an a ene 3 uncionalidades en el p oyec o:
 P og ama las placas escla as y maes as. No es necesa io p og ama ningún
so wa e adicional ya que la p og amación se ealiza median e el en o no a duino
IDE. Solamen e hay que conec a el a duino al o denado po USB y subi el
p og ama al mic ocon olado .
 Ex ae da os en di ec o: El maes o en ia á una ama de da os delimi ados po
coma pa a analiza los en di ec o en el so wa e de moni o ización y análisis. Los
da os se en ia án a a és de la a ea de la mic o SD. Es o se debe a que la ama que
se gua da en la mic o SD es la misma que se en ía po el pue o se ie. Gas a menos
ecu sos en ia la ama po se ie as habe la gua dado en la mic o SD, ya que la
ama que se en ía sigue gua dada en una a iable local y no es necesa io accede a
la mic o SD a lee la úl ima ama como si se hicie a desde una a ea independien e.
 Ex ae da os de la mic o SD: Exis i á es a opción adicional pa a pode ealiza un
backup de odos los da os almacenados. Es a unción se ha á a a és de un
p og ama independien e con el in de simpli ica el uncionamien o y concu encia
de a eas. El p og ama consis i á en ab i cada uno de los a chi os de ex o
almacenados en la mic o SD y en ia los al o denado .
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
83
Comunicaciones Blue oo h
El uncionamien o y p og amación de es a a ea es exac amen e idén ico al de la
comunicación se ie. Hace uso de las mismas unciones y se u ilizan en el mismo momen o
que la comunicación se ie. Cumple la misma unción que el pue o se ie, pe o de o ma
inalámb ica.
Comunicaciones CAN
El p o ocolo CAN es un poco más complejo de p og ama que la comunicación se ie o
blue oo h. Es o se debe a que las unciones que u iliza equie en de mayo conocimien o
sob e el p o ocolo que en los o os casos. Pa a en ia una ama en CAN se hace de la
siguien e o ma:
 CAN.sendMsgBu (id, ex , len, da a_bu );
o id: Es el iden i icado de la ama. Si e pa a es ablece la p io idad de la
ama.
o ex : Rep esen a el ipo de ama que se a a en ia . En CAN se pueden en ia
2 ipos di e en es: El es ánda y el ex endido. Pa a en ia una ama
es ánda se pone un 0 en es e pa áme o y un 1 pa a la ex endida.
o len: Se indica la longi ud de la ama de da os. Po cada ama se pueden
en ia has a 8 by es.
o da a_bu : A ay de has a 8 by es que con iene los da os que se an a en ia .
Pa a ecibi un mensaje se u iliza la siguien e unción:
 CAN. eadMsgBu (len, bu );
o len: Indica la longi ud de la ama que se a a ecibi .
o bu : Es la a iable en la que se gua da án la ama que se a a lee .
Pan alla OLED
El so wa e de la pan alla del maes o es exac amen e idén ico al de los escla os, pe o
mos ando odos los pa áme os, en ez de los de cada escla o. La disposición de los da os
es igual que en el caso del escla o, es o es, mues a los da os ecogidos de cada placa en una
única pan alla. Sin emba go, como iene que mos a los da os de odos los escla os,
e esca á la pan alla en cada ejecución mos ando los da os de un escla o.
La mo ocicle a, po ejemplo, end á 4 placas escla as. Po lo an o, se án necesa ias 4
ejecuciones de la a ea pa a mos a odos los da os. Como la a ea se ejecu a cada 4s, ese
se á el iempo necesa io pa a isualiza odos los da os.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
84
SOFTWARE DE MONITORIZACIÓN Y ANÁLISIS DE
FUNCIONAMIENTO
El so wa e de moni o ización y análisis es desa ollado median e “p ocessing”. P ocessing
es un lenguaje de p og amación y en o no de desa ollo in eg ado de código abie o basado
en Ja a y de ácil u ilización. Se ha escogido es e lenguaje po ene conocimien os p e ios
de Ja a y se una e sión más “ isual y sencilla” pa a ealiza en o nos g á icos. Además,
o ece una po abilidad plena a dis in as pla a o mas.
Las unciones p incipales del so wa e son las siguien es:
 Recibi los da os del BMS en di ec o.
 Ex ae los da os gua dados en la memo ia del BMS de un iempo an e io .
 Visualiza odos esos da os ya sea en di ec o o a a és de los da os ex aídos del
BMS. Pa a ello se usa án dis in os elemen os como g á icos de dos dimensiones, de
ba as, diales, animaciones, e c.
Los dis in os elemen os de la in e az pa a isualiza los da os que ienen en común los 3
modos de uncionamien o son:
 4 g á icas: Los da os a g a ica en cada una de ellas se seleccionan en las dos lis as
desplegables que hay en la pa e supe io izquie da. Pa a ca ga el da o
seleccionado en la g á ica se debe clica en el bo ón que se encuen a a la de echa
de las lis as desplegables y que iene un g á ico como icono.
 Un cuad o de ex o en el que se exponen odos los da os de los dis in os senso es.
En el modo de conexión en di ec o se mues an los da os de la úl ima ama ecibida,
mien as que en los o os dos modos se enseñan los da os del ins an e que se es á
isualizando en ese momen o.
 2 ba as e icales que mos a án los da os que se desee en la pes aña de
con igu ación del p og ama.
 2 diales que se con igu a án de la misma o ma que las 2 ba as e icales.
 1 mapa que indica la posición de la mo ocicle a en el ci cui o. Como la mo ocicle a
siemp e es a á en un ci cui o solo hace al a ca ga la imagen del ci cui o en el que
a a ci cula y la posición de la mo o en la imagen se log a in e polando las
coo denadas eales de la mo o con las que le co esponde ía en la imagen. Si se
a a a de un ehículo que ci cula a ue a del ci cui o no hab ía más que p eca ga
dis in os mapas y ealiza el mismo p ocedimien o.

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
85
 1 g á ico que mues a el ol aje de cada una de las amas en se ie de la ba e ía. Se le
ha dado un buen amaño a la g á ica ya que mues a cla amen e el es ado de la
ba e ía, el ni el de balaceo en e las celdas y la ca ga de las mismas con un solo
is azo.
 1 g á ico que mues a las empe a u as de los senso es que es án colocados en la
ba e ía. Son 14 senso es y la igu a iene la o ma de la ba e ía con el in de isualiza
de una o ma más cla a el es ado é mico de las ba e ías. Se pod á in e p e a qué
zonas se calien an más, siendo es e un da o alioso pa a u u os diseño de ba e ías.
 1 cuad o de ex o que da in o mación adicional del es ado de las celdas, así como
ol aje máximo, mínimo y medio.
 O o cuad o de ex o que da la misma in o mación que el an e io , pe o en es e caso
sob e las empe a u as de la ba e ía.
Adicionalmen e se an a coloca los siguien es elemen os en unción del modo de
uncionamien o seleccionado en el p og ama:
 1 bo ón pa a conec a y desconec a la conexión blue oo h en los dos modos que
equie e conec a se con el BMS. También hab á dos campos en los que se indica que
pue o y elocidad de asmisión se u iliza á pa a la comunicación.
 1 bo ón pa a ca ga el a chi o deseado del o denado en el modo de ca ga da os
desde el PC.
 1 bo ón que pe mi e cambia de la isualización es ánda de los g á icos a una
animación de los mismos. En el modo es ánda los g á icos, diales y ba as mues an
el da o del ins an e seleccionado del a chi o median e el uso de una ba a deslizable
que hay al lado del bo ón. En el caso de que se elija la animación se hace una ápida
ansición de la e olución empo al de los da os. La elocidad de ansición en e un
da o y o o se ealiza con la misma ba a. Es a unción pe mi e e de una o ma
cla a el desa ollo de los alo es de los senso es a lo la go del iempo.
La apa iencia del so wa e es la siguien e:
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
86
Ilus ación 47. So wa e de análisis y moni o ización
La in e acción de los es modos de uncionamien o con los dis in os elemen os se puede
ep esen a median e el siguien e diag ama uncional:
Ilus ación 48. Diag ama uncional del so wa e de análisis y
moni o ización
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
87
Como se puede obse a , una ez abie o el p og ama pa a que es e haga algo ha de
indica se qué ipo de isualización de da os se quie e ealiza . El uncionamien o de cada
uno se explica en los siguien es apa ados:
Ex ae da os en di ec o del BMS
Pa a cada uno de los ipos de análisis se ca gan sus in e aces necesa ias. En es e modo se
mues a el bo ón de conec a /desconec a y los pa áme os de con igu ación de la conexión
blue oo h y se esconde el bo ón y ba a deslizable de la animación en caso de que
an e io men e es u ie a en alguno de los o os dos modos.
Pos e io men e, se debe selecciona el pue o “COM” y la elocidad de ansmisión en la que
se a a ealiza la comunicación blue oo h. Pa a a e igua que pue o COM se a a u iliza ,
una ez empa ejado po blue oo h el BMS al o denado , se accede a la pes aña de
adminis ado de disposi i os de Windows y se e cuál es. La elocidad de asmisión debe
se la misma a la que se haya p og amado el BMS desde el A duino IDE. Ambos pa áme os
se án siemp e los mismos, siemp e y cuando no se elimine el empa ejamien o en e el BMS
y el o denado .
Una ez con igu ados los dos pa áme os se clica en el bo ón co espondien e pa a
es ablece la comunicación. Nada más clica se ab e una en ana del explo ado de a chi os
pidiendo el luga y nomb e del a chi o que se quie e u iliza o c ea pa a ealiza el
gua dado de odos los da os en an es. Si es os pa áme os son co ec os y el BMS se
encuen a en el ango de alcance del blue oo h se inicia la conexión.
A pa i de aquí el so wa e espe a á a que haya da os en an es del BMS en el bu e del
pue o. El so wa e p ocede á a lee la ama (s ing que con iene los alo es de odos los
senso es en un ins an e de mues eo), decodi ica el mensaje y isualiza odos los da os en
las dis in as in e aces. Si de ec a a algún e o en la ama de da os es a se ía igno ada.
Los da os llegan o denados según la con igu ación del BMS y es án delimi ados po comas
en e ellos. Adicionalmen e, cada ez que se en ía una ama en e a se imp ime un sal o de
línea dejando así una ama po cada ila. Se en ían de es a o ma pa a acili a su lec u a y
esc i u a como a chi os de o ma o “cs ”.
Las g á icas pueden mos a los da os de dos o mas: G a icando odos los da os ecibidos
o los que se deseen u ilizando los bo ones que ienen a su de echa. Es os bo ones pe mi es
ealiza zooms an o en el eje X como en el eje Y, desplaza se po la g á ica y es au a la
isualización a odos los da os. El es o de in e aces (g á ico de celdas, ba as, diales…)
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
88
mues an solamen e los da os de la úl ima ama, con lo que no hay nada especial que
comen a de ellas.
Mien as el so wa e unciona del modo desc i o exis e la posibilidad de que ocu an dos
e en os adicionales:
 Que se decida ce a la conexión ol iendo a clica en el bo ón. Ce a á el pue o de
comunicaciones limpiando el bu e p e iamen e (po si se decide ol e a
es ablece la conexión de nue o) y gua da á y ce a á el a chi o cs en el que es aba
haciendo odo el sal ado de da os. Pos e io men e espe a á nue a o den del
usua io.
 Que se decida cambia de ipo de análisis de da os. Es o conlle a á al cie e del
pue o de comunicaciones blue oo h y se cambia á al modo seleccionado
cambiando las in e aces que hagan al a.
Analiza un a chi o gua dado en el PC
En es e modo no es necesa io es ablece la conexión con el BMS, con lo que no es necesa io
de ini los pa áme os de comunicación ni mos a el bo ón de conexión blue oo h. En luga
de ello se mues a un nue o bo ón pa a ca ga el a chi o que se quie e lee desde el PC y el
bo ón y ba a deslizable de la animación de da os.
Cuando se pulsa el bo ón de ca ga se ab e el explo ado de Windows pa a selecciona el
a chi o a ca ga . Si el di ec o io y ipo de a chi o es co ec o es e se ab e y se colocan odos
los da os en la in e az según la con igu ación es ablecida.
La isualización de da os es la misma en los es modos de uncionamien o disponibles, a
di e encia del modo en di ec o que se da la posibilidad de ealiza la animación de da os.
Es o no es posible en median e la conexión en di ec o ya que es án llegando cons an emen e
da os nue os y, po lo an o, no iene mucho sen ido ealiza una animación.
Dos e en os adicionales pueden ocu i mien as se es á en es e modo: Que se decida
cambia de ipo de análisis de da os o que se quie a ca ga o o a chi o del PC, lo que
ol e ía a la si uación inicial de es e modo.
Ex ae da os gua dados del BMS
Es e modo es una mezcla de los an e io es dos. Tiene la misma in e az pa a isualiza los
da os de un a chi o del PC (con lo que man iene el bo ón y ba a deslizable de la animación),
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
95
o OLED con los da os de odos los escla os.
o Supe isión de con ac o es. El con ol de con ac o es si se ha podido p oba
como se explica á más adelan e.
 Comunicación del BMS con el so wa e de moni o ización y análisis: Todas las
p uebas ealizadas en es e so wa e se han hecho a a és de da os simulados, con
lo que no e a una si uación eal. Sin emba go, los da os p oceden es del BMS ienen
el mismo o ma o, con lo que se espe a que uncione sin p oblemas.
 P uebas an e allas: Medición de iempos de ape u a y cie e de con ac o an e
di e en es ipos de alla (caída de ol aje, sob eca gas, empe a u a excesi a, e c).
No se han enido los medios necesa ios en el iempo disponible.
 Tampoco se ha podido hace una p ueba de campo del BMS al comple o con la
ba e ía de la mo ocicle a.
A pesa de es e g an incon enien e, a con inuación se mues an las p uebas que si se han
podido hace :
P uebas de la placa escla a
Balanceo
El uncionamien o del balanceo se a a comp oba colocando 8 celdas desbalanceadas y
moni o izándolo en di ec o mien as se ca gan. Se ha decidido ca ga la ba e ía con una
in ensidad de 3A y su cu a de ca ga ha sido la siguien e:
Ilus ación 56. Cu a de ca ga de las celdas

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
96
El ol aje g a icado es el co espondien e a las 8 celdas en se ie. Mien as se ca gaba la
ba e ía se ha p obado el algo i mo de balanceo. Pa a comp oba la e ec i idad del mismo se
ha calculado la des iación en e el ol aje de las 8 celdas:
Como se puede obse a , la des iación se ha educido signi ica i amen e. Inicialmen e la
ba e ía mos aba una des iación de has a 10 eces mayo que la que había as inaliza la
ca ga. Se puede e ambién como ese balanceo esul a más e icaz en el comienzo de la ca ga
que al inal a causa de la cu a de ca ga de las celdas; a meno ensión una di e encia de
ol aje supone una di e encia de ca ga meno a la que hab ía en o o ni el de ca ga supe io .
Medición de ol ajes
La e apa de medición de ol ajes debe se calib ada pa a asegu a su co ec o
uncionamien o. El mic ocon olado iene una esolución de 10 bi s en sus pines
analógicos, es o es, alo es en e 0 y 1025. Es a medición debe aduci se a ol aje de las
celdas. Si la medición ue a pe ec a bas a ía con aplica una egla de es en e los alo es
de 0 y 1025 y los 0 y 5V.
Sin emba go, las medidas es án suje as a oscilaciones como el alo como el ol aje de
alimen ación del mic ocon olado , imp ecisiones en el alo de las esis encias de la e apa
de medición, empe a u as, e c. A in de ene en cuen a es as a iaciones y ob ene una
medida lo más eal posible se an a ealiza una se ie de mediciones que de e minen la
ecuación que elaciona el ol aje de las celdas con el alo ob enido en la en ada analógica.
Se a a u iliza 8 celdas conec adas en se ie pa a simula una ba e ía eal. Cada una de las
celdas se á moni o izada po el BMS en sus dis in os ni eles de ca ga y se an a ecoge los
Ilus ación 57. Des iación del ol aje en el balanceo de las celdas
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
97
da os ob enidos. Las celdas moni o izadas se colocan en se ie a a és de dos placas como
la de la siguien e imagen. Es a placa ha sido diseñada pa a es e ipo de es s:
Ilus ación 58. Placa de p uebas pa a las celdas
Pa a ob ene la ecuación se a a compa a las medidas del mic ocon olado con un
mul íme o que asegu e una medida p ecisa. Los esul ados son los siguien es:
Tabla 5. E o es en la medición de ol ajes.
En la p ime a ila se mues a el e o medio medido en cada una de las combinaciones del
escla o. Aunque los esquemas de odas las en adas analógicas sean idén icas o ecen
esul ados di e en es. Es o se debe a imp ecisiones en elemen os elec ónicos como
esis encias, longi ud de pis as, e c.
Con el in de minimiza el e o de medición se p e ende co egi la endencia que iene
cada una de las mediciones. Pa a ello se mul iplica á cada medida po una ganancia que
con a es e el e o medio egis ado en las p uebas. El ac o po el que se mul iplica cada
medida es el que se mues a en la segunda ila.
CELDA 1
CELDA 2
CELDA3
CELDA 4
CELDA 5
CELDA 6
CELDA 7
CELDA 8
E o (%) -1.56% -1.85% -1.40% -1.20% -1.47% -1.71% -1.30% -1.31%
Fac o a mul iplica 1.0156 1.0185 1.0140 1.0120 1.0147 1.0171 1.0130 1.0131
E o medio (V) 0.003 0.007 0.003 0.005 0.004 0.005 0.005 0.006
E o medio o al (V) 0.0047
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
98
Se uel e a ealiza las mismas p uebas aplicando el ac o de co ección y se ha conseguido
una p ecisión media de 0.0047V, o lo que es lo mismo, 4.7mV.
Es a calib ación se a a ealiza pa a cada una de las placas escla as ya que no odas end án
un compo amien o idén ico.
Medición de in ensidades
Pa a ob ene la ecuación que elaciona el alo analógico ob enido con la in ensidad
moni o izada se ealiza un p oceso simila al de la medición de ol ajes. Se a a some e a
las celdas a una desca ga de dis in as in ensidades, medi es as in ensidades con un
mul íme o y compa a las con el alo ob enido.
El senso de in ensidad se ha p obado midiendo la in ensidad que ci cula po una
esis encia cuando se alimen a a unos 120V, ya que es el ol aje que puede alcanza la
mo ocicle a.
Pa a a ia la in ensidad que se quie e medi se pueden hace dos cosas:
Va ia la esis encia: Es o supond ía ene an as esis encias como alo es in ensidades se
quie a medi .
Tene la misma esis encia siemp e y pasa el cable a ias eces po el senso pa a
mul iplica la co ien e. Po ejemplo, si se hacen pasa 10A po el cable y se le dan 5 uel as,
el senso de Hall medi á 50A.
La segunda opción esul a la más económica y sencilla y además no a ía la p ecisión de la
p ueba, con lo que se decide hace de esa o ma. Los esul ados son los siguien es:
In ensidad senso
(A) Vol aje a duino
(V)
Vol aje da ashee
(V)
E o
(%)
0 2.51 2.510 0.00%
8.64 2.54 2.537 0.12%
17.34 2.56 2.564 0.16%
26.07 2.59 2.591 0.06%
34.6 2.62 2.618 0.07%
43.4 2.64 2.646 0.21%
52.26 2.67 2.673 0.12%
60.69 2.7 2.700 0.01%
69.44 2.73 2.727 0.11%
78.21 2.75 2.754 0.16%
87.1 2.78 2.782 0.08%
121.66 2.89 2.890 0.01%
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
99
139.04 2.94 2.945 0.15%
156.6 3 2.999 0.02%
-156.24 2.02 2.022 0.09%
-130.65 2.1 2.102 0.08%
-104.16 2.18 2.185 0.21%
-77.67 2.26 2.267 0.32%
-52.02 2.35 2.347 0.11%
-25.98 2.43 2.429 0.05%
E o medio (%) 0.11%
Tabla 6. Mediciones de in ensidad
El e o medio ob enido es del 0.11%. Suponiendo un ango de medida máximo de ±600A,
el e o máximo se ía de 0.624A.
Medición de empe a u as
Pa a ga an iza la p ecisión que el ab ican e indica en su da ashee se an a con as a las
medidas de empe a u a ob enidas con un e móme o p eciso disponible en el alle . Se ha
podido comp oba que las medidas e an co ec as y se con ía en la p ecisión a empe a u as
más al as, ya que no se ha enido los medios pa a p oba lo en el alle .
Almacenamien o en mic o SD
En es a p ueba se an a mues ea las dis in as a iables y se an a a a de gua da en la
mic o SD al y como se ha es ipulado en apa ados an e io es. Se puede comp oba que los
da os se han gua dado co ec amen e de dos o mas dis in as:
 Se ex ae la a je a mic o SD de la placa y se in oduce en el o denado di ec amen e
median e un lec o de a je as mic o SD.
 Se comunica po pue o se ie el escla o con el o denado y el escla o le en ía los
da os que iene almacenados en la mic o SD.
No obs an e, no ha sido posible comp oba el uncionamien o y no se ha log ado sabe po
qué. Se sospecha que hay p oblemas en alguna de las soldadu as, especialmen e en el
conec o de la mic o SD, al se el componen e más di ícil de solda y menos accesible.
Se c ee que el esquema de la mic o SD es á bien diseñado ya que se ha conec ado un módulo
idén ico de o o ab ican e (pe o que u iliza el mismo esquemá ico) puen eado en el a duino
y ha uncionado co ec amen e.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
100
Pa a u u as e siones hab á que ene en cuen a que esul a más sencillo conec a un
módulo comple o de cualquie ab ican e que in en a in eg a lo a la placa, debido a
p oblemas en las soldadu as.
P uebas de la placa maes a
Con ol de con ac o es
Se a a some e un con ac o a di e en es ac i aciones y desac i aciones consecu i as. Pa a
comp oba que unciona co ec amen e se a a medi la con inuidad en los e minales del
con ac o y e que coincide con los ins an es en los que el con ac o debe es a ce ado.
Las p uebas han concluido que el ci cui o unciona co ec amen e.
Almacenamien o en mic o SD
En es a p ueba se han encon ado los mismos p oblemas que con la placa escla a, con lo
que no se ha podido es ea la mic o SD.
Comunicación blue oo h
Pa a sabe que la comunicación blue oo h unciona co ec amen e se conec a el maes o
con o o disposi i o que enga ecnología blue oo h. Dos disposi i os muy sencillos de
conec a son un elé ono mó il y un o denado . Se a a ealiza la p ueba con los dos
mé odos pa a e que no exis e ningún p oblema.
An es de es ablece la comunicación es necesa io con igu a el módulo blue oo h. Sus
pa áme os con igu ables más impo an es son el modo de uncionamien o (maes o o
escla o), con aseña, elocidad de ansmisión y nomb e del disposi i o. Pa a con igu a los
se debe en a en el modo de con igu ación o modo AT del blue oo h. Toda es a in o mación
se puede encon a de o ma ácil en in e ne .
Una ez con igu ado el sis ema se es ablece conexión an o con el mó il como con el
o denado . Se ha es ablecido la comunicación sin ningún p oblema, con lo que se da po
álido el uncionamien o del blue oo h.
Comunicación se ie con el o denado
La comunicación se ie se a a comp oba de la misma o ma que se ha comp obado el
blue oo h a a és del o denado . En es e caso se u iliza á la consola o ecida po el a duino
IDE. La comunicación a uncionado sin p oblemas.

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
101
Supe isión del IMD
Se a a o za al IMD a da alo es de uncionamien o co ec o e inco ec o en el sis ema.
Los cambios debe án obse a se en la lec u a del BMS. E ec i amen e así ha sido. Cuando el
IMD daba una señal de 10V al BMS le llegaba un HIGH en la en ada digi al, y cuando el IMD
es aba a masa le llegaba LOW.
P uebas BMS al comple o
Comunicación en e maes o-escla os
Se ha con igu ado cada escla o con una di ección di e en e y se ha subido un ske ch al
maes o pa a que se comunique con los escla os sin unciones adicionales, simplemen e
que mues e los da os leídos a a és del pue o se ie en el o denado .
La comunicación se ha ealizado con éxi o con odos los escla os simul áneamen e.
FUTURAS MEJORAS
A causa de los p oblemas su gidos po el co id-19 u o os ac o es, el diseño iene
co ecciones y mejo as a ealiza . Se a a de un p oyec o que no es á acabado
comple amen e, pe o del abajo que se ha ealizado se han de ec ado los siguien es allos:
 Placa escla a:
o Se pod ía diseña el escla o sin el mul iplexo en la e apa de balanceo y
alimen a di ec amen e a los op oacoplado es desde las salidas digi ales del
a duino. Los pines del a duino se ían su icien es pa a es a a ea y se
aho a ía el mul iplexo .
o El condensado del il o de paso bajo en la e apa de medición al e a la
medición que se quie a ealiza . Aunque se haya escogido una ecuencia de
co e supe io al cambio de señal en el shi egis e no ha sido su icien e y
se ha eliminado pa a el uncionamien o. Al qui a el condensado , ambién
sob a ía la esis encia de ese mismo il o.
o Añadi un algo i mo de balanceo que no solo enga en cuen a las 8 celdas de
la placa sino odas las que haya en la ba e ía. Es o se pod ía hace si el
maes o le dije a a odos los escla os el meno ol aje de ec ado y así los
escla os ac ua an en consecuencia.
o Se puede hace un algo i mo más e icien e de en ia los da os de los escla os
al maes o en caso de no conec a odas las celdas. En ez de en ia siemp e
la misma longi ud de bi s con algunos da os acíos se puede indica en el
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
102
p ime by e la longi ud de la ama y en unción de eso lee unas cosas u
o as. O se puede especi ica en el se up cuan as celdas, senso es, e c hay en
cada escla o pa a que sepa qué es lo que iene que lee .
o En caso de que se conec en a ios senso es Dallas en el escla o no se
mos a ían los esul ados en la pan alla OLED, ya que es á diseñada pa a un
núme o especí ico de da os. Pa a soluciona es o se pod ía mejo a la a ea
de o ma adap able, es o es, que mos a a los da os en el OLED
independien emen e del núme o de celdas y senso es que hubie a.
o La p ecisión en las mediciones analógicas depende del ol aje al que se es é
alimen ando el a duino. La p ecisión de 10 bi s en las en adas analógicas se
mide sob e ese ol aje de alimen ación, es o es, el alo 0 co esponde a 0V
y el alo 1023 co esponde a la alimen ación. Oscilaciones en la ensión de
alimen ación gene a pe u baciones p opo cionales en la medida. Se pod ía
busca una uen e más es able pa a alimen a el a duino y así hace más
es able las mediciones de los pines analógicos.
o Añadi una línea i2c adicional en o os dos pines del a duino pa a conec a
su pan alla. Con la disposición ac ual, como odas las pan allas ienen la
misma di ección, al es a en el mismo bus de I2C se g a ica ía en odas las
pan allas los mismos da os. Se ía imposible ene cada pan alla con su
in e az.
o El oo p in del OLED es á mal an o en el escla o como en el maes o. Los
pines VCC y GND es án in e cambiados, con lo que no se puede solda
di ec amen e a la placa. Tempo almen e se ha soldado la pan alla u ilizando
cables y así es como se ha p obado su uncionamien o.
o Al pode conec a an os senso es Dallas como se quie an exis e la
posibilidad de conec a an os que el so wa e no sea capaz de cumpli los
plazos. Se pod ía hace un cálculo que es ime cuan os senso es se pod ían
conec a .
 Placa maes a:
o Las esis encias de la pa e de los e mis o es y del IMD se han colocado con
un encapsulado SMD, pe o hab ía sido mejo solda lo con encapsulado THT.
De es a o ma, si se necesi a a cambia algún alo de esis encia se
cambia ía de una o ma mucho más ápida y sencilla que con SMD. También
se pod ía habe op ado po pone po encióme os.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
103
o Aún no se ha podido p oba la supe isión de los con ac o es, pe o se p e é
un posible allo en el diseño; Si el con ac o que se supe isa es u ie a
abie o y el ol aje en e e minales ue a mayo a los 12V de la uen e de
alimen ación, es e ol aje del con ac o pod ía daña a la uen e po hace
ci cula una co ien e en sen ido con a io. No se sabe ealmen e si ocu i á
es o, pe o hay una posibilidad de que lo haga. Se comp oba á cuando se
ealicen las p uebas es an es. Como al e na i a se pod ía cambia el diseño
u ilizando un senso Hall que mida la co ien e que ci cula po el con ac o .
Si midie a una co ien e dis in a a 0, signi ica ía que el con ac o es á
ce ado. Como con a es á la si uación en la que el con ac o es á ce ado,
pe o la ca ga no pide ninguna in ensidad y, po lo an o, es e ci cui o lo
medi ía como con ac o abie o.
o En el ci cui o de con ol de con ac o es se pod ía e i a uno de los leds, ya
que hay 2 que cumplen la misma unción.
o No pueden unciona las comunicaciones CAN y el almacenamien o en mic o
SD simul áneamen e po que se ha colocado el mismo pin CS pa a los dos
casos. En las comunicaciones SPI los pines MOSI, MISO y CLK son comunes
en odo el bus pa a odos los disposi i os. Sin emba go, el pin CS debe se
único pa a cada disposi i o. Es o es, al habe dos disposi i os que se
comunican po SPI el a duino debe ía ene dos pines des inados en ez de
1 [27].
o La esis encia que limi a la in ensidad en la supe isión de con ac o es
debe ía de se 921Ω según los cálculos, pe o se ha colocado una esis encia
de 120Ω. Es o se debe a una e a a a la ho a de ealiza el diseño.
o Se puede añadi un jumpe en pa alelo a cada esis encia del bus de
comunicaciones I2C pa a co oci cui a las. Se ía ú il ya que an o la placa
escla a como la maes a ienen colocadas esis encias de pull-up. Con es os
jumpe s se pod ían igno a las esis encias que se conside asen opo unas.
o Se puede puli más el código pa a mejo a la segu idad an e allas, educi
iempos de espues a y añadi uncionalidades ex a que no implica ían
cambios en el ha dwa e.
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
104
3. COSTES DEL PROYECTO
En es e apa ado se alo a económicamen e odos los elemen os y acciones que han sido
necesa ias pa a la consecución del p oyec o. Se mues an los cos es y no el p oyec o ya que
se a a de un p oyec o eal que se ha lle ado a cabo. A con inuación se mues a una abla
en la que igu a la in e sión ealizada desglosada po pa idas. Es e desglose de cos es se
encuen a de allado en el Anexo VII.
Tabla 7. Cos es del p oyec o
Los cos es se han desglosado en dos subg upos:
 Subcon a aciones: Incluye el pedido que se hizo a la emp esa alemana Mul i Ci cui
Boa ds pa a la ab icación de las placas elec ónicas. En es e concep o es á incluido
an o la ab icación como el en ío.
 Ma e iales: Ag upa odos los componen es elec ónicos del BMS, an o del escla o
como del maes o. Todos los componen es han sido enca gados a la emp esa
Mouse , a excepción de algunos, ya que no es aban disponibles o e an más
económicos y se han conseguido a a és de ebay.
No se han desglosado odos los cos es en es e apa ado con el in de simpli ica lo. Todos los
concep os lle an ya incluidos los impues os, con lo que no hay que suma le el IVA y se a a
del cos e o al.
Como se puede obse a , el cos e o al del p oyec o es de 425.71€. Compa ándolo con BMS
de ca ac e ís icas simila es disponibles en el me cado, que pueden oscila en e 700 y
1000€, supone un aho o in e esan e pa a el equipo de Mo oS uden Bizkaia. Más aún
Nº Re Can . (Ud) Concep o P ecio uni a io (€/ud.) P ecio o al (€)
1SUBCONTRATACIÓN
1.1 1 Subcon a ación ab icación PCBs 112.59 € 112.59 €
TOTAL SUBCONTRATACIONES 112.59 €
2 MATERIALES
2.1 4 Placa escla a 75.40 € 301.61 €
2.2 1 Placa maes a 75.06 € 75.06 €
TOTAL MATERIALES 376.67 €
COSTE TOTAL 489.26 €
4.7uF
2.2uH
0.5A
4.7uF 100nF
MUX509IDR
GND
VCC
MUX509IDR
GND
VCC
100k
11k
15nF
GND
GND
GND
100k
11k
15nF
GND
GND
GND
GND
VCC
GND
7. ANEXO II: Esquema eléc ico de la placa escla a
C2
L1
F1
C5 C6
IC1
S1A
S1A
S1B
S1B
S2A
S2A
S2B
S2B
S3A
S3A
S3B
S3B
S4A
S4A
S4B
S4B
A1
A1
DA DA
GND GND
VDD VDD
DB DB
EN EN
VSS VSS
A0
A0
IC2
S1A
S1A
S1B
S1B
S2A
S2A
S2B
S2B
S3A
S3A
S3B
S3B
S4A
S4A
S4B
S4B
A1
A1
DA DA
GND GND
VDD VDD
DB DB
EN EN
VSS VSS
A0
A0
R17
R19
C3
R18
R20
C4
+VIN
+VIN
-VIN
-VIN
+VOUT +VOUT
-VOUT -VOUT
TMH-1205S
CELDA8
CELDA8
CELDA7
CELDA7
CELDA6
CELDA6
CELDA5
CELDA5
CELDA4
CELDA4
CELDA4
CELDA3
CELDA3
CELDA1
CELDA1
CELDA2
CELDA2
CELDA0
CELDA0
MUX-0
MUX-0
MUX-1
MUX-1
+12V
+12V
-12V
-12V
VCELDA1-
VCELDA1-
VCELDA1+
VCELDA1+
VCELDA2+
VCELDA2+
VCELDA2-
VCELDA2-
VCELDA1
VCELDA2
1
2
3
4
MOLEX 4 PIN
CONNECTOR
Da e: 12/09/2020 16:56 Shee : 1/1
REV:
TITLE:
Documen Numbe :
BMS
+IN
-Vs
V e
C il
-IN
+Vs
Rg
OUT
AD628
+IN
-Vs
V e
C il
-IN
+Vs
Rg
OUT
AD628

3.3uF
3.3uF
3.3uF
3.3uF
VCC
GND
SI8600AC-B-ISR
GND
VCC
3k
3k
VCC
VCC
3k
3k
0.1uF
0.1uF
VCC
GND
MAX680CSA+
C10
C11
C12
C13
IC6
AVDD
1
ASDA
2
ASCL
3
AGND
4
BVDD 8
BSDA 7
BSCL 6
BGND 5
R39
R40
R29
R32
C8
C9
IC11
C1-
1
C2+
2
C2-
3
V- 4
V+ 8
C1+
7VCC 6
GND 5
1
1
2
2
3
3
4
4
5
5
1
1
2
2
3
3
4
4
5
5
TP1 TP2TP3TP4
CELDA8
CELDA8
CELDA7
CELDA7
CELDA6CELDA6
CELDA5
CELDA5
CELDA4
CELDA4
CELDA4
CELDA3
CELDA3 CELDA1
CELDA1
CELDA2 CELDA2
CELDA0
CELDA0
CELDA0
+12V
-12V
GND1
GND1
GND1
VDD1
VDD1
VDD1
VDD1
VDD1
SDA1
SDA1
SCL1
SCL1
SDA
SCL
1
2
3
4
5
6
7
8
MOLEX 8 PIN CONNECTOR
Da e: 12/09/2020 16:56 Shee : 1/1
REV:
TITLE:
Documen Numbe :
BMS
1
2
3
4
MOLEX 4 PIN
CONNECTOR
1
2
3
4
MOLEX 4 PIN
CONNECTOR
5
Jumpe s
Jumpe s
4.7k
DS18B20+
GND
VCC
VCC
VCC
GND GND
ARDUINO-NANO-3.0
VCC
GND
SN74HC595D
GNDGND
VCC
JP1
1
2
3
R41
IC10
GND
1DQ
2VDD
3
D1/TX
J1.1
D0/RX
J1.2
RST.1
J1.3
GND.1
J1.4
D2
J1.5
D3
J1.6
D4
J1.7
D5
J1.8
D6
J1.9
D7
J1.10
D8
J1.11
D9
J1.12
D10
J1.13
D11/MOSI
J1.14
D12/MISO
J1.15
VIN J2.1
GND.2 J2.2
RST.2 J2.3
5V J2.4
A7 J2.5
A6 J2.6
A5 J2.7
A4 J2.8
A3 J2.9
A2 J2.10
A1 J2.11
A0 J2.12
AREF J2.13
3V3 J2.14
D13/SCK J2.15
M1
IC9
QB
1
QC
2
QD
3
QE
4
QF
5
QG
6
QH
7
GND
8
VCC 16
QA 15
SER 14
OE 13
RCLK 12
SRCLK 11
SRCLR 10
QH' 9
CELDA8
CELDA0
MUX-0
MUX-1
CLK
CLK
LATCH
LATCH
DS
DS
SDA
SCL
SIGNALTEMPSIGNALTEMPSIGNALTEMP
SIGNALTEMP
BALANCEO1
BALANCEO2
BALANCEO3
BALANCEO4
BALANCEO5
BALANCEO6
BALANCEO7
BALANCEO8
VCELDA1
VCELDA2
SENSOR-INTENSIDAD
CS
SCKMISO
MOSI
1
2
3
MOLEX 3 PIN
CONNECTOR
1
2
MOLEX 2 PIN
CONNECTOR
Da e: 12/09/2020 16:56 Shee : 1/1
REV:
TITLE:
Documen Numbe :
BMS
USB
TLP293-4(GB-TP,E(T
560k
330
FDN304P
535
535
535
535
560k
330
FDN304P
560k
330
FDN304P
560k
330
FDN304P
GND
15151515
IC3
ANODE_1
1
CATHODE_1
2
ANODE_2
3
CATHODE_2
4
ANODE_3
5
CATHODE_3
6
ANODE_4
7
CATHODE_4
8
COLLECTOR_4 16
EMITTER_4 15
COLLECTOR_3 14
EMITTER_3 13
COLLECTOR_2 12
EMITTER_2 11
COLLECTOR_1 10
EMITTER_1 9
R14
R8
Q4
1
3 2
LED4
K
1A2
R9
R10
R15
R16
R13
R7
Q3
1
3 2
LED3
K
1A2
R12
R6
Q2
1
3 2
LED2
K
1A2
R11
R5
Q1
1
3 2
LED1
K
1A2
R42R1R2R3
CELDA4
CELDA3
CELDA3
CELDA1
CELDA1
CELDA2
CELDA2
CELDA0
CELDA0
BALANCEO1
BALANCEO2
BALANCEO3
BALANCEO4
B1+
B1+
B2+
B2+
B3+
B3+
B4+
B4+
Da e: 12/09/2020 16:56 Shee : 1/1
REV:
TITLE:
Documen Numbe :
BMS
4.2V-1.9V(LED)=2.3V
2.3V/330ohm=7mA po el Led
Necesi o que ayan al menos 7mA po el o o
lado del op o pa a cumpli el 100% de cu en ans e a io minimo que me da el op o
El op o chupa 1.25V con 7mA
5V-1.25V=3.75V iene que cae en la R
3.75V/0.007A=535ohm
560k
330
FDN304P
560k
330
FDN304P
560k
330
FDN304P
560k
330
FDN304P
TLP293-4(GB-TP,E(T
535
535
535
535
GND
15 15 15 15
R37
R28
Q8
1
3 2
LED8
K
1A2
R36
R27
Q7
1
3 2
LED7
K
1A2
R35
R26
Q6
1
3 2
LED6
K
1A2
R34
R25
Q5
1
3 2
LED5
K
1A2
IC7
ANODE_1
1
CATHODE_1
2
ANODE_2
3
CATHODE_2
4
ANODE_3
5
CATHODE_3
6
ANODE_4
7
CATHODE_4
8
COLLECTOR_4 16
EMITTER_4 15
COLLECTOR_3 14
EMITTER_3 13
COLLECTOR_2 12
EMITTER_2 11
COLLECTOR_1 10
EMITTER_1 9
R30
R31
R33
R38
R4 R21 R22 R23
CELDA8
CELDA7
CELDA7
CELDA6
CELDA6
CELDA5
CELDA5
CELDA4
CELDA4
BALANCEO5
BALANCEO6
BALANCEO7
BALANCEO8
B5+
B5+
B6+
B6+
B7+
B7+
B8+
B8+
Da e: 12/09/2020 16:56 Shee : 1/1
REV:
TITLE:
Documen Numbe :
BMS
VCC
GND
OLED_0.96_I2C
VCC
GND
4050D
4050D
4050D
4050D
4050D 4050D
+3V3
+3V3
+3V3
LP298X
+3V3
GNDGND GND GND GND GND
GND
10uF 0.1uF
1k
VCC
VCC
Módulo Mic oSD
SCL
SCL
VCC
VCC
GND
GND
SDA
SDA
U$1
IC8A
23
IC8B
45
IC8C
67
IC8D
109
IC8E
1211
IC8F
1514
IC8P
VDDVSS
8 1
CS
2
DATA_IN
3
VSS
6VDD
4
SCLK
5
DATA_OUT
7
DAT1
8
DAT2
1
CARD_DETECT
CD1
GND
MT1 GND1
MT2
CARD_DETECT1
CD2
IC12
VOUT 5
VIN
1
GND
2
EN
3BYP 4
C18 C19
R43
LED9
K
1A2
SDA
SCL
SENSOR-INTENSIDAD
CS
SCK
SCK
MISO
MOSI
1
2
3
MOLEX 3 PIN
CONNECTOR
SD & MMC
Da e: 12/09/2020 16:56 Shee : 1/1
REV:
TITLE:
Documen Numbe :
BMS

ARDUINO-NANO-3.0
GND
VCC
4050D
4050D
4050D
4050D
4050D 4050D
+3V3
+3V3
+3V3
LP298X
+3V3
GNDGND GND GND GND GND
GND
10uF 0.1uF
1k
VCC
VCC
22uF
GND
VCC
12V
0.5A
1k1k
GND
Módulo Mic oSD
Fuen e de alimen ación
no aislada
A duino Nano
8. ANEXO III: Esquema eléc ico de la placa maes a
D1/TX
J1.1
D0/RX
J1.2
RST.1
J1.3
GND.1
J1.4
D2
J1.5
D3
J1.6
D4
J1.7
D5
J1.8
D6
J1.9
D7
J1.10
D8
J1.11
D9
J1.12
D10
J1.13
D11/MOSI
J1.14
D12/MISO
J1.15
VIN J2.1
GND.2 J2.2
RST.2 J2.3
5V J2.4
A7 J2.5
A6 J2.6
A5 J2.7
A4 J2.8
A3 J2.9
A2 J2.10
A1 J2.11
A0 J2.12
AREF J2.13
3V3 J2.14
D13/SCK J2.15
M2
IC8A
23
IC8B
45
IC8C
67
IC8D
109
IC8E
1211
IC8F
1514
IC8P
VDDVSS
8 1
CS
2
DATA_IN
3
VSS
6VDD
4
SCLK
5
DATA_OUT
7
DAT1
8
DAT2
1
CARD_DETECT
CD1
GND
MT1 GND1
MT2
CARD_DETECT1
CD2
IC12
VOUT 5
VIN
1
GND
2
EN
3BYP 4
C18 C19
R43
C16
F1
R29R30
LED11
INT
CS
CS
SCK
SCK
SCK
MOSI
MOSI
MISO
MISO
TXBT
RXBT
SCL
SDA
CONTINUIDAD-1
CONTINUIDAD-2
ENABLE
CONTINUIDAD-3 CONTACTOR-1
CONTACTOR-2
CONTACTOR-3
TERMISTOR-1
TERMISTOR-2
BENDER
BENDER
USB
SD & MMC
VIN VOUT
REF
TSR 1-2450
+
1
2
3
4
MOLEX 4 PIN
CONNECTOR
Da e: no sa ed! Shee : 1/1
REV:
TITLE:
Documen Numbe :
BMSV11-Maes o
1
2
MOLEX 2 PIN
CONNECTOR
CNY17F
VCC
GND
SPU01M-12
VCC
GND
190
10k
CNY17F
VCC
GND
190
10k
CNY17F
VCC
GND
190
10k
SPU01M-12
VCC
GND
SPU01M-12
VCC
GND
Con ol de con inuidad de con ac o nº1
Con ol de con inuidad de con ac o nº2
Con ol de con inuidad de con ac o nº3
LED1
OK2
1
2 4
5
PS1
+VIN 1
-VIN 2
-VOUT 4
+VOUT 6
R3
R7
LED2
OK1
1
2 4
5
R2
R6
LED3
OK3
1
2 4
5
R1
R4
PS2
+VIN 1
-VIN 2
-VOUT 4
+VOUT 6
PS3
+VIN 1
-VIN 2
-VOUT 4
+VOUT 6
CONTINUIDAD-1
CONTINUIDAD-2
CONTINUIDAD-3
1
2
MOLEX 2 PIN
CONNECTOR
1
2
MOLEX 2 PIN
CONNECTOR
1
2
MOLEX 2 PIN
CONNECTOR
Da e: no sa ed! Shee : 1/1
REV:
TITLE:
Documen Numbe :
BMSV11-Maes o
SpiceO de 1 SpiceO de 2SpiceO de 1 SpiceO de 2
1N4004
GND
47k 1.2k
12V
GND
GND
GND
VCC
JUMPER_OPEN
190
JUMPER_OPEN
BC337
2.2k
1N4004
GND
47k 1.2k
12V
GND
GND
GND
VCC
JUMPER_OPEN
190
JUMPER_OPEN
BC337
2.2k
Con ol de
con ac o nº1
Con ol de
con ac o nº2
D1
R15 R18
LED4
J2
21
R5
LED5
J3
21
T1
R11
D2
R12 R13
LED6
J4
21
R19
LED7
J5
21
T2
R20
CONTACTOR-1
CONTACTOR-2
1
2
MOLEX 2 PIN
CONNECTOR
1
2
3
MOLEX 3 PIN
CONNECTOR
1
2
MOLEX 2 PIN
CONNECTOR
1
2
MOLEX 2 PIN
CONNECTOR
1
2
3
MOLEX 3 PIN
CONNECTOR
1
2
MOLEX 2 PIN
CONNECTOR
Da e: no sa ed! Shee : 1/1
REV:
TITLE:
Documen Numbe :
BMSV11-Maes o
SpiceO de 1 SpiceO de 2
OLED_0.96_I2C_WITHOUT_HOLES
GND
GND
VCC
VCC
1N4004
GND
47k 1.2k
12V
GND
GND
GND
VCC
JUMPER_OPEN
190
JUMPER_OPEN
BC337
2.2k
10k
VCC
GND
10k
VCC
GND
VCC
GND
3k
3k
VCC VCC
Con ol de
con ac o nº3
Pan alla OLED
Módulo Blue oo h
Comunicaciones I2C
Te mis o es
SCL
SCL
VCC
VCC
GND
GND
SDA
SDA
U$1
STATE STATE
RX RX
TX TX
GND GND
+5V VCC
KEY KEY
D3
R21 R22
LED8
J6
21
R23
LED10
J7
21
T3
R24
R25R26
R27
R28
TXBT
RXBT
SCL
SCL
SDA SDA
ENABLE
CONTACTOR-3
TERMISTOR-1
TERMISTOR-2
1
2
MOLEX 2 PIN
CONNECTOR
1
2
3
MOLEX 3 PIN
CONNECTOR
1
2
MOLEX 2 PIN
CONNECTOR
1
2
MOLEX 2 PIN
CONNECTOR
1
2
MOLEX 2 PIN
CONNECTOR
1
2
3
4
MOLEX 4 PIN
CONNECTOR
Da e: no sa ed! Shee : 1/1
REV:
TITLE:
Documen Numbe :
BMSV11-Maes o
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
127
ge Tick = xTaskGe TickCoun ();
pinMode(la chPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(da aPin, OUTPUT);
while (1)
{
by eBalanceo = 255;
// aqui hay que hace la con e sión a 4.2V po segu idad
iVol ajeMin = 1024;
o (by e i = 0; i < 8; i++)
{
i (aVol ajes[i] < iVol ajeMin)
{
iPosicionBalanceo = i;
iVol ajeMin = aVol ajes[i];
}
}
bi Clea (by eBalanceo, iPosicionBalanceo);
digi alW i e(la chPin, LOW) ; // La ch a LOW pa a que no a íe la
salida
shi Ou (da aPin, clockPin, LSBFIRST, by eBalanceo); // Aqui a
Num
digi alW i e(la chPin, HIGH) ; // La ch a HIGH ija alo es en la
salida
Se ial.p in ("By e balanceo: ");
Se ial.p in ln(by eBalanceo);
Se ial.p in ("");
TaskDelayUn il(&ge Tick, 1000 / po TICK_PERIOD_MS);
}
}
/*--------------------------------------------------*/
/*---------------------- Tasks ---------------------*/
/*--------------------------------------------------*/
// Función que se ejecu a siemp e que se eciben da os del mas e
// siemp e que en el mas e se ejecu e la sen encia endT ansmission
// ecibi á oda la in o mación que hayamos pasado a a és de la
sen encia Wi e.w i e
oid ecei eE en (in howMany)
{
o (by e i = 0; i < 8; i++)
{
// En iamos un by e
Wi e.w i e(aVol ajes[i]);
}
Wi e.w i e(in ensidad);
Wi e.w i e(in ( empC));
// Pa amos la ansmisión
Wi e.endT ansmission();
}

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
128
10. ANEXO V: So wa e de la placa maes a
// Pa a el RTOS
#include <A duino_F eeRTOS.h>
// Pa a el CAN
#include <mcp_can.h>
// Pa a la mic o SD
#include <SPI.h>
#include <SD.h>
// I2C
#include <Wi e.h>
// Blue oo h
#include <So wa eSe ial.h>
// Te mis o
#include <ma h.h>
// OLED
//#de ine __DEBUG__
//#include <Ada ui _GFX.h>
//#include <Ada ui _SSD1306.h>
/*--------------------------------------------------*/
/*---------------------- TEMPS----------------------*/
/*--------------------------------------------------*/
loa empC = 0.0;
/*--------------------------------------------------*/
/*---------------- CONTACTORES----------------------*/
/*--------------------------------------------------*/
cons in PinCon ac o 1 = A1;
cons in PinCon ac o 2 = A2;
cons in PinCon ac o 3 = A3;
cons in Supe isionCon ac o 1 = 6;
cons in Supe isionCon ac o 2 = 7;
cons in Supe isionCon ac o 3 = 8;
boolean Con ac o 1 = alse;
boolean Con ac o 2 = alse;
boolean Con ac o 3 = alse;
boolean Con ac o 1Supe isado = alse;
boolean Con ac o 2Supe isado = alse;
boolean Con ac o 3Supe isado = alse;
/*--------------------------------------------------*/
/*---------------------- TEMPS----------------------*/
/*--------------------------------------------------*/
in aTemps[6] = {0, 0, 0, 0};
cons in PinTe mis o 1 = A7;
cons in PinTe mis o 2 = A6;
/*--------------------------------------------------*/
/*-------------------- Vol ajes---------------------*/
/*--------------------------------------------------*/
// A ay de da os que con iene p ime o los ol ajes, luego
in ensidad, luego empe a u as y después bi de allo
in aVol ajes[32] = {1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024};
/*--------------------------------------------------*/
/*-------------------- In ensidad-------------------*/
/*--------------------------------------------------*/
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
129
in aIn ensidad[4] = {0, 0, 0, 0};
/*--------------------------------------------------*/
/*-------------------- SOC--------------------------*/
/*--------------------------------------------------*/
loa capacidadBa e ia=70.0;
loa SOC=1.0;
/*--------------------------------------------------*/
/*-------------------- Mic o SD---------------------*/
/*--------------------------------------------------*/
cons in chipSelec = 10;
/*--------------------------------------------------*/
/*-------------------- IMD--------------------------*/
/*--------------------------------------------------*/
cons in PinIMD = A0;
/*--------------------------------------------------*/
/*-------------------- CAN--------------------------*/
/*--------------------------------------------------*/
cons in SPI_CS_PIN = 10;
MCP_CAN CAN(SPI_CS_PIN);
/*--------------------------------------------------*/
/*---------------- BLUETOOTH------------------------*/
/*--------------------------------------------------*/
So wa eSe ial BT1(3, 4);
/*--------------------------------------------------*/
/*---------------- OLED-----------------------------*/
/*--------------------------------------------------*/
//// De ini cons an es
//#de ine ANCHO_PANTALLA 128 // ancho pan alla OLED
//#de ine ALTO_PANTALLA 64 // al o pan alla OLED
//
//// Obje o de la clase Ada ui _SSD1306
//Ada ui _SSD1306 display(ANCHO_PANTALLA, ALTO_PANTALLA, &Wi e, -1);
/*--------------------------------------------------*/
/*-------------------- Ta eas-----------------------*/
/*--------------------------------------------------*/
oid Con ac o es( oid *pa am);
oid Te mis o es( oid *pa am);
oid Supe isionCon ac o es( oid *pa am);
oid Mic oSD( oid *pa am);
oid IMD( oid *pa am);
oid I2C( oid *pa am);
oid Comunicaciones( oid *pa am);
// oid OLED( oid *pa am);
oid soc( oid *pa am);
TaskHandle_ Task_Handle_1;
TaskHandle_ Task_Handle_2;
TaskHandle_ Task_Handle_3;
TaskHandle_ Task_Handle_4;
TaskHandle_ Task_Handle_5;
TaskHandle_ Task_Handle_6;
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
130
TaskHandle_ Task_Handle_7;
//TaskHandle_ Task_Handle_8;
TaskHandle_ Task_Handle_9;
oid se up()
{
Se ial.begin(9600);
xTaskC ea e(Con ac o es, "Con ac o es", 100, NULL, 3,
&Task_Handle_1);
xTaskC ea e(Te mis o es, "Te mis o es", 100, NULL, 1,
&Task_Handle_2);
xTaskC ea e(Supe isionCon ac o es, "Supe isionCon ac o es", 100,
NULL, 3, &Task_Handle_3);
xTaskC ea e(Mic oSD, "Mic oSD", 100, NULL, 1, &Task_Handle_4);
xTaskC ea e(IMD, "IMD", 100, NULL, 3, &Task_Handle_5);
xTaskC ea e(I2C, "I2C", 100, NULL, 2, &Task_Handle_6);
xTaskC ea e(Comunicaciones, "Comunicaciones", 100, NULL, 2,
&Task_Handle_7);
//xTaskC ea e(OLED, "OLED", 100, NULL, 1, &Task_Handle_8);
xTaskC ea e(soc, "soc", 100, NULL, 1, &Task_Handle_9);
}
// Aunque no usemos el loop hay que añadi lo
oid loop()
{
}
/*--------------------------------------------------*/
/*---------------------- Tasks ---------------------*/
/*--------------------------------------------------*/
oid Con ac o es( oid *p Pa ame e s)
{
( oid) p Pa ame e s;
TickType_ ge Tick;
ge Tick = xTaskGe TickCoun ();
pinMode(PinCon ac o 1, OUTPUT);
pinMode(PinCon ac o 2, OUTPUT);
pinMode(PinCon ac o 3, OUTPUT);
while (1)
{
i (Con ac o 1)
{
digi alW i e(PinCon ac o 1, HIGH);
}
else
{
digi alW i e(PinCon ac o 1, LOW);
}
i (Con ac o 2)
{
digi alW i e(PinCon ac o 2, HIGH);
}
else
{
digi alW i e(PinCon ac o 2, LOW);
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
131
}
i (Con ac o 3)
{
digi alW i e(PinCon ac o 3, HIGH);
}
else
{
digi alW i e(PinCon ac o 3, LOW);
}
TaskDelayUn il(&ge Tick, 50 / po TICK_PERIOD_MS);
}
}
/*--------------------------------------------------*/
/*---------------------- Tasks ---------------------*/
/*--------------------------------------------------*/
oid Supe isionCon ac o es( oid *p Pa ame e s)
{
( oid) p Pa ame e s;
TickType_ ge Tick;
ge Tick = xTaskGe TickCoun ();
pinMode(Supe isionCon ac o 1, INPUT);
pinMode(Supe isionCon ac o 2, INPUT);
pinMode(Supe isionCon ac o 3, INPUT);
while (1)
{
i (!digi alRead(Supe isionCon ac o 1) && Con ac o 1Supe isado)
{
Con ac o 1 = alse;
}
else i (digi alRead(Supe isionCon ac o 1) &&
Con ac o 1Supe isado)
{
Con ac o 1 = ue;
}
else i (digi alRead(Supe isionCon ac o 1) &&
!Con ac o 1Supe isado)
{
Con ac o 1 = alse;
}
else i (!digi alRead(Supe isionCon ac o 1) &&
!Con ac o 1Supe isado)
{
Con ac o 1 = ue;
}
i (!digi alRead(Supe isionCon ac o 2) && Con ac o 2Supe isado)
{
Con ac o 2 = alse;
}
else i (digi alRead(Supe isionCon ac o 2) &&
Con ac o 2Supe isado)
{
Con ac o 2 = ue;
}
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
132
else i (digi alRead(Supe isionCon ac o 2) &&
!Con ac o 2Supe isado)
{
Con ac o 2 = alse;
}
else i (!digi alRead(Supe isionCon ac o 2) &&
!Con ac o 2Supe isado)
{
Con ac o 2 = ue;
}
i (!digi alRead(Supe isionCon ac o 3) && Con ac o 3Supe isado)
{
Con ac o 3 = alse;
}
else i (digi alRead(Supe isionCon ac o 3) &&
Con ac o 3Supe isado)
{
Con ac o 3 = ue;
}
else i (digi alRead(Supe isionCon ac o 3) &&
!Con ac o 3Supe isado)
{
Con ac o 3 = alse;
}
else i (!digi alRead(Supe isionCon ac o 3) &&
!Con ac o 3Supe isado)
{
Con ac o 3 = ue;
}
TaskDelayUn il(&ge Tick, 50 / po TICK_PERIOD_MS);
}
}
/*--------------------------------------------------*/
/*---------------------- Tasks ---------------------*/
/*--------------------------------------------------*/
oid IMD( oid *p Pa ame e s)
{
( oid) p Pa ame e s;
TickType_ ge Tick;
ge Tick = xTaskGe TickCoun ();
pinMode(PinIMD, INPUT);
while (1)
{
i (digi alRead(PinIMD))
{
Con ac o 1 = ue;
Con ac o 2 = ue;
Con ac o 3 = ue;
}
else
{
Con ac o 1 = alse;
Con ac o 2 = alse;
Con ac o 3 = alse;

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
133
}
TaskDelayUn il(&ge Tick, 50 / po TICK_PERIOD_MS);
}
}
/*--------------------------------------------------*/
/*---------------------- Tasks ---------------------*/
/*--------------------------------------------------*/
oid Comunicaciones( oid *p Pa ame e s)
{
( oid) p Pa ame e s;
TickType_ ge Tick;
ge Tick = xTaskGe TickCoun ();
while (CAN_OK != CAN.begin(CAN_500KBPS)) // ini can
bus : baud a e = 500k
{
Se ial.p in ln("CAN BUS Shield ini ail");
Se ial.p in ln(" Ini CAN BUS Shield again");
delay(100);
}
Se ial.p in ln("CAN BUS Shield ini ok!");
//inicializacion Blue oo h
BT1.begin(38400); //Inicia la comunicacion Blue oo h
unsigned cha CanMSG[8] = {0, 0, 0, 0, 0, 0, 0, 0};
in ciclos = 0;
S ing da aS ing = "";
while (1)
{
i (sizeo (aVol ajes) / 8 == 0)
{
ciclos = sizeo (aVol ajes) / 8;
}
else
{
ciclos = unc(sizeo (aVol ajes) / 8) + 1;
}
o (in j = 0; j < ciclos; j++)
{
o (in i = 0; i < 8; i++)
{
da aS ing = da aS ing + S ing(aVol ajes[(j + 1) * 8 + i]) +
",";
CanMSG[i] = aVol ajes[(j + 1) * 8 + i];
}
CAN.sendMsgBu (0x00, 0, 8, CanMSG);
}
i (sizeo (aIn ensidad) / 8 == 0)
{
ciclos = sizeo (aIn ensidad) / 8;
}
else
{
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
134
ciclos = unc(sizeo (aIn ensidad) / 8) + 1;
}
o (in j = 0; j < ciclos; j++)
{
o (in i = 0; i < 8; i++)
{
da aS ing = da aS ing + S ing(aIn ensidad[(j + 1) * 8 + i])
+ ",";
CanMSG[i] = aIn ensidad[(j + 1) * 8 + i];
}
CAN.sendMsgBu (0x00, 0, 8, CanMSG);
}
i (sizeo (aTemps) / 8 == 0)
{
ciclos = sizeo (aTemps) / 8;
}
else
{
ciclos = unc(sizeo (aTemps) / 8) + 1;
}
o (in j = 0; j < ciclos; j++)
{
o (in i = 0; i < 8; i++)
{
da aS ing = da aS ing + S ing(aTemps[(j + 1) * 8 + i]) +
",";
CanMSG[i] = aTemps[(j + 1) * 8 + i];
}
CAN.sendMsgBu (0x00, 0, 8, CanMSG);
}
BT1.p in ln(da aS ing);
Se ial.p in ln(da aS ing);
TaskDelayUn il(&ge Tick, 200 / po TICK_PERIOD_MS);
}
}
/*--------------------------------------------------*/
/*---------------------- Tasks ---------------------*/
/*--------------------------------------------------*/
oid Te mis o es( oid *p Pa ame e s)
{
( oid) p Pa ame e s;
TickType_ ge Tick;
ge Tick = xTaskGe TickCoun ();
cons in Rc = 10000; // alo de la esis encia
cons in Vcc = 5;
cons in Senso PIN = A0;
cons loa A = 1.11492089e-3;
cons loa B = 2.372075385e-4;
cons loa C = 6.954079529e-8;
loa K = 2.5; // ac o de disipacion en mW/C
loa aw = 0.0;
loa V = 0.0;
loa R = 0.0;
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
135
loa logR = 0.0;
loa R_ h = 0.0;
loa kel in = 0.0;
while (1)
{
aw = analogRead(PinTe mis o 1);
V = aw / 1024 * Vcc;
R = (Rc * V ) / (Vcc - V);
logR = log(R);
R_ h = 1.0 / (A + B * logR + C * logR * logR * logR );
kel in = R_ h - V * V / (K * R) * 1000;
aTemps[5] = ound(kel in - 273.15);
aw = analogRead(PinTe mis o 2);
V = aw / 1024 * Vcc;
R = (Rc * V ) / (Vcc - V);
logR = log(R);
R_ h = 1.0 / (A + B * logR + C * logR * logR * logR );
kel in = R_ h - V * V / (K * R) * 1000;
aTemps[6] = ound(kel in - 273.15);
TaskDelayUn il(&ge Tick, 1000 / po TICK_PERIOD_MS);
}
}
/*--------------------------------------------------*/
/*---------------------- Tasks ---------------------*/
/*--------------------------------------------------*/
// oid OLED( oid *p Pa ame e s)
//{
// ( oid) p Pa ame e s;
//
// TickType_ ge Tick;
// ge Tick = xTaskGe TickCoun ();
//
// #i de __DEBUG__
// Se ial.begin(9600);
// delay(100);
// Se ial.p in ln("Iniciando pan alla OLED");
// #endi
//
// // Inicia pan alla OLED en la di ección 0x3C
// i (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C))
// {
// #i de __DEBUG__
// Se ial.p in ln("No se encuen a la pan alla OLED");
// #endi
// while ( ue);
// }
//
// while (1)
// {
// // Limpia bu e
// display.clea Display();
//
// // Tamaño del ex o
// display.se Tex Size(1);
// // Colo del ex o
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
136
// display.se Tex Colo (SSD1306_WHITE);
// o (in j = 0; j < 2; j++)
// {
// o (in i = 0; i < 4; i++)
// {
// display.se Cu so (j * 64, i * 10);
// display.p in ("V");
// display.p in ((i + 1) * (j + 1));
// display.p in (": ");
// }
// }
// display.d awLine(0, 40, 128, 40, SSD1306_WHITE);
//
// display.se Cu so (0, 43);
// display.p in ("I:");
// display.se Cu so (64, 43);
// display.p in ("T:");
//
// display.d awLine(0, 51, 128, 51, SSD1306_WHITE);
//
// display.se Cu so (0, 52);
// display.p in ("Escla o 1");
//
// display.d awLine(60, 0, 60, 64, SSD1306_WHITE);
//
// // En ia a pan alla
// display.display();
// TaskDelayUn il(&ge Tick, 40 / po TICK_PERIOD_MS);
// }
//}
/*--------------------------------------------------*/
/*---------------------- Tasks ---------------------*/
/*--------------------------------------------------*/
oid Mic oSD( oid *p Pa ame e s)
{
( oid) p Pa ame e s;
TickType_ ge Tick;
ge Tick = xTaskGe TickCoun ();
while (!Se ial)
{
; // wai o se ial po o connec . Needed o na i e USB po
only
}
Se ial.p in ("Ini ializing SD ca d...");
// see i he ca d is p esen and can be ini ialized:
i (!SD.begin(chipSelec ))
{
Se ial.p in ln("Ca d ailed, o no p esen ");
// don' do any hing mo e:
e u n;
}
Se ial.p in ln("ca d ini ialized.");
while (1)
{
// make a s ing o assembling he da a o log:
S ing da aS ing = "";
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
143
oid se up()
{
// De ine he window size
size(displayWid h, displayHeigh );
//su ace.se Resizable( ue);
/*-----------------------------------------------------------------
---------------Inicializamos a iables-----------------------------
-----------------------------------------------------------------*/
o (in i=0; i<nume oDa os; i++)
{
da osBlue oo h[i]=0.0;
}
o (in i=0; i<4; i++)
{
ZoomsRealizadosX[i]=0;
ZoomsRealizadosY[i]=0;
}
o (in i=0; i<4; i++)
{
g a icoSeleccionado[i]= alse;
}
/*-----------------------------------------------------------------
---------SE LLAMA A TODOS LOS CONSTRUCTORES DE LOS OBJETOS---------
-----------------------------------------------------------------*/
o (in j=0; j<nume oDa os; j++)
{
da os[j] = new GPoin sA ay();
}
o (in j=0; j<4; j++)
{
indicesDa os[j]=j;
da osaG a ica [j] = new GPoin sA ay();
}
o (in j=0; j<5; j++)
{
bo onesCen a [j] = new Con olP5( his);
bo onesZoomX[j] = new Con olP5( his);
bo onesZoomY[j] = new Con olP5( his);
}
bo onG a icosDe ec o = new Con olP5( his);
// Inicializa los g a icos
o (in i=0; i<=3; i++)
{
g a icos[i]=new GPlo ( his);
}
// C eamos el selec o de modo de isualizacion de da os
guiCon olle = new GUICon olle ( his);
seleccionModoCon olle = new IFRadioCon olle ("Mode Selec o ");
modoAnalisis = new IFRadioBu on("", wid h*52/100, heigh *2/100,
seleccionModoCon olle );

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
144
modoOnline = new IFRadioBu on("", wid h*52/100, heigh *6/100,
seleccionModoCon olle );
guiCon olle .add(modoOnline);
guiCon olle .add(modoAnalisis);
modoAnalisis.se Size(wid h/60, wid h/60);
modoOnline.se Size(wid h/60, wid h/60);
// Cuad o de ex o pa a esc ibi los mensajes del blue oo h
cuad oComunicaciones = new Con olP5( his);
// Añadimos las lis as desplegables pa a escoge lo que se quie e
g a ica
lis aDesplegable1 = new Con olP5( his);
lis aDesplegable2 = new Con olP5( his);
bo onG a icos = new Con olP5( his);
bo onCa ga = new Con olP5( his);
bo onBlue oo hConnec = new Con olP5( his);
bo onBlue oo hDisconnec = new Con olP5( his);
// C eamos el obje o g a ico empe a u as
G a icoTempe a u as = new Tempe a u asBa e ia (wid h*33/40,
heigh *33/54, 0.5);
// C eamos el obje o knob del elocime o
knobVelocime o = new Con olP5( his);
// C eamos los obje os de los slide s
Slide SOC = new Con olP5( his);
Slide BMSTemp = new Con olP5( his);
slide Animacion = new Con olP5( his);
// c ea e a oggle and change he de aul look o a (on/o ) swi ch
look
oggleAnimacion = new Con olP5( his);
}
/*--------------------------------------------------------------------
---------------
-----------------------FUNCION QUE PARAMETRIZA TODOS LOS OBJETOS------
---------------
----------------------------------------------------------------------
-------------*/
oid c ea Obje os()
{
/*-----------------------------------------------------------------
---------ZONA IZQUIERDA DEL PROGRAMA (GRAFICOS)--------------------
-----------------------------------------------------------------*/
// Colocamos el ondo de pan alla
ondo = loadImage(" ondo2.jpeg");
ondo. esize(wid h, heigh );
// Colocamos el icono del equipo y la i ma
iconoETSIB = loadImage("logoe sib.png");
iconoETSIB. esize(0, heigh *10/100);
// Lis a desplegable pa a con igu a los g á icos
lis aDesplegable1.addSc ollableLis ("d opdown1")
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
145
//.se Posi ion(wid h/30, heigh /50)
.se Posi ion(wid h/9, heigh /30)
.se Size(wid h/15, heigh /10)
.se Ba Heigh (heigh /50)
.se I emHeigh (heigh /50)
.addI ems(e ique asEjeY)
//.se Type(Sc ollableLis .LIST) // cu en ly suppo ed DROPDOWN
and LIST
;
// Lis a desplegable pa a con igu a los g á icos
Lis lis aG a icos = A ays.asLis ("G a ica 1", "G a ica 2",
"G a ica 3", "G a ica 4");
/* add a Sc ollableLis , by de aul i beha es like a D opdownLis
*/
lis aDesplegable1.addSc ollableLis ("d opdown2")
//.se Posi ion(wid h/30, heigh /50)
.se Posi ion(wid h/30, heigh /30)
.se Size(wid h/15, heigh /10)
.se Ba Heigh (heigh /50)
.se I emHeigh (heigh /50)
.addI ems(lis aG a icos)
//.se Type(Sc ollableLis .LIST) // cu en ly suppo ed DROPDOWN
and LIST
;
// Bo ón que coloca a odos los g á icos una a iable po de ec o
bo onG a icosDe ec o.addBu on("bu onG a icosDe ec o")
.se Posi ion(wid h*41/200, heigh *8/100)
.se Images(loadImage("de ec o1.png"), loadImage("de ec o2.png"),
loadImage("de ec o3.png"))
.upda eSize();
// Coloca odos los bo ones de zooms y cen a g a icos
o (in j=0; j<5; j++)
{
S ing nomb eFuncionCallback="";
nomb eFuncionCallback="bu onZoomY"+j;
bo onesZoomY[j].addBu on(nomb eFuncionCallback)
.se Images(loadImage("zoomY1.png"), loadImage("zoomY2.png"),
loadImage("zoomY3.png"))
.upda eSize()
.onP ess(new CallbackLis ene ()
{ // a callback unc ion ha will be called onP ess
public oid con olE en (CallbackE en heE en )
{
S ing name = heE en .ge Con olle ().ge Name();
ZoomY(in (name.subs ing(11)));
}
}
);
nomb eFuncionCallback="bu onCen a "+j;
bo onesCen a [j].addBu on(nomb eFuncionCallback)
.se Images(loadImage("expand1.png"), loadImage("expand2.png"),
loadImage("expand3.png"))
.upda eSize()
.onP ess(new CallbackLis ene ()
{ // a callback unc ion ha will be called onP ess
public oid con olE en (CallbackE en heE en )
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
146
{
S ing name = heE en .ge Con olle ().ge Name();
bu onCen a (in (name.subs ing(13)));
}
}
);
nomb eFuncionCallback="bu onZoomX"+j;
bo onesZoomX[j].addBu on(nomb eFuncionCallback)
.se Images(loadImage("zoomX1.png"), loadImage("zoomX2.png"),
loadImage("zoomX3.png"))
.upda eSize()
.onP ess(new CallbackLis ene ()
{ // a callback unc ion ha will be called onP ess
public oid con olE en (CallbackE en heE en )
{
S ing name = heE en .ge Con olle ().ge Name();
ZoomX(in (name.subs ing(11)));
}
}
);
i (j==0)
{
bo onesZoomY[j].se Posi ion(wid h*24/100, heigh *((19*j))/100);
bo onesCen a [j].se Posi ion(wid h*24/100,
heigh *(4+(19*j))/100);
bo onesZoomX[j].se Posi ion(wid h*24/100,
heigh *(8+(19*j))/100);
}
else
{
bo onesZoomY[j].se Posi ion(wid h*44/100, heigh *(-
2+(19*j))/100);
bo onesCen a [j].se Posi ion(wid h*44/100,
heigh *(2+(19*j))/100);
bo onesZoomX[j].se Posi ion(wid h*44/100,
heigh *(6+(19*j))/100);
}
}
// Bo ón que se pulsa pa a añadi el da o seleccionada en la
g á ica deseada
// g acias a las lis as desplegables
bo onG a icos.addBu on("bu onG a icos")
.se Posi ion(wid h*20/100, heigh *3/100)
.se Images(loadImage("img a ico1.png"),
loadImage("img a ico2.png"), loadImage("img a ico3.png"))
.upda eSize();
// Inicializa los g a icos
o (in i=0; i<=3; i++)
{
g a icos[i].se Pos(wid h*3/200, heigh *(15+(19*i))/100);
g a icos[i].se Dim(wid h*38/100, heigh *13/100);
}
/*-----------------------------------------------------------------
---------ZONA DERECHA SUPERIOR DE COMUNICACIONES-------------------
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
147
-----------------------------------------------------------------*/
// Bo ón pa a conec a se po blue oo h al bms
bo onBlue oo hConnec .addBu on("bu onBlue oo hConnec ")
.se Posi ion(wid h*189/200, heigh *5/100)
.se Images(loadImage("blue oo h1.png"),
loadImage("blue oo h2.png"), loadImage("blue oo h3.png"))
.upda eSize();
bo onBlue oo hConnec .hide();
// Bo ón pa a desconec a se
bo onBlue oo hDisconnec .addBu on("bu onBlue oo hDisconnec ")
.se Posi ion(wid h*189/200, heigh *5/100)
.se Images(loadImage("blue oo h3.png"),
loadImage("blue oo h2.png"), loadImage("blue oo h1.png"))
.upda eSize();
bo onBlue oo hDisconnec .hide();
// Bo ón pa a ca ga los da os en el modo análisis
bo onCa ga .addBu on("bu onCa ga ")
.se Posi ion(wid h*94/100, heigh *5/100)
.se Images(loadImage("bo onca ga 1.png"),
loadImage("bo onca ga 2.png"), loadImage("bo onca ga 3.png"))
.upda eSize();
// Cuad o de ex o pa a esc ibi los mensajes del blue oo h
ex oCuad o = cuad oComunicaciones.addTex a ea(" x ")
.se Posi ion(wid h*82/100, heigh *13/100)
.se Size(wid h*14/100, heigh *20/100)
.se Fon (c ea eFon ("a ial", 16))
.se LineHeigh (14)
.se Colo (colo (0))
.se Colo Backg ound(colo (255))
.se Colo Fo eg ound(colo (0, 0, 255));
;
ex oCuad o.hide();
/*-----------------------------------------------------------------
---------ZONA DERECHA INFERIOR DONDE SE ANIMAN TODOS LOS DATOS-----
-----------------------------------------------------------------*/
speedKnob = knobVelocime o.addKnob("speedKnob")
.se Range(0, 200)
.se Value(0)
.se Posi ion(wid h*34/50, heigh *22/50)
.se Radius(wid h/30)
.se Colo Fo eg ound(colo (0, 76, 153))
.se Colo Backg ound(colo (51, 153, 255))
.lock()
;
pmKnob = knobVelocime o.addKnob(" pmKnob")
.se Range(0, 6000)
.se Value(0)
.se Posi ion(wid h*39/50, heigh *22/50)
.se Radius(wid h/30)
.se Colo Fo eg ound(colo (0, 76, 153))
.se Colo Backg ound(colo (51, 153, 255))
.lock()
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
148
;
Slide SOC.addSlide ("slide SOC")
.se Posi ion(wid h*31/50, heigh *45/100)
.se Size(wid h/50, heigh *5/50)
.se Range(0, 100)
.se Colo Backg ound(colo (51, 153, 255))
.se Value(100.0)
.lock()
;
Slide BMSTemp.addSlide ("slide BMSTemp")
.se Posi ion(wid h*28/50, heigh *45/100)
.se Size(wid h/50, heigh *5/50)
.se Range(0, 100)
.se Colo Backg ound(colo (51, 153, 255))
.se Value(100.0)
.lock()
;
// Colocamos el icono del mapa
mapWid h=displayWid h/8;
mapHeigh =displayWid h/7;
o igenMapaX=wid h*86/100;
o igenMapaY=heigh *37/100;
MapaLosA cos = loadImage("LosA cosRec o.png");
MapaLosA cos. esize( ound(mapWid h), ound(mapHeigh ));
image(MapaLosA cos, o igenMapaX, o igenMapaY);
// G á ico de los ol ajes de las celdas
plo C = new GPlo ( his);
plo C.se Pos( ound(displayWid h*101/200), heigh *23/38);
// Tamaño del g a ico
plo C.se Dim( ound(displayWid h*3/10), ound(displayHeigh /5));
plo C.se YLim(2.4, 5.0);
plo C.ge Ti le().se Tex ("Es ado celdas en ins an e: " + s (0));
plo C.ge Ti le().se Tex Alignmen (LEFT);
plo C.ge Ti le().se Rela i ePos(0.1);
plo C.ge XAxis().ge AxisLabel().se Tex ("Celda");
plo C.ge YAxis().ge AxisLabel().se Tex ("Vol aje (V)");
plo C.d awG idLines(GPlo .BOTH);
plo C.d awLabels();
plo C.s a His og ams(GPlo .VERTICAL);
// Slide que con ola las animaciones de odos los da os
slide Animacion.addSlide ("slide Animacion")
.se Posi ion(wid h*64/100, heigh *183/200)
.se LabelVisible( alse)
.se Size(wid h*8/100, heigh *2/100)
.se Range(1, 99)
.se Value(50)
.se DecimalP ecision(0)
;
slide Animacion.hide();
// Bo ón que ac i a o desac i a la unción de animación
oggleAnimacion.addToggle(" oggleAnimacion")
.se Posi ion(wid h*56/100, heigh *237/256)

BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
149
.se Size(50, 20)
.se Value( ue)
.se LabelVisible( alse)
.se Mode(Con olP5.SWITCH)
;
oggleAnimacion.hide();
}
/*--------------------------------------------------------------------
---------------
-----------------------FUNCION QUE COLOCA TODOS LOS TEXTOS, FONDO...--
---------------
----------------------------------------------------------------------
-------------*/
oid plan illaPo De ec o()
{
backg ound(255);
image( ondo, 0, 0);
image(iconoETSIB, wid h*30/100, heigh *1/100);
ex Size(16);
ill(0);
ex Align(CENTER);
ex ("by Ma kel Liza alde", wid h*34/100, heigh *13/100);
ex Align(LEFT);
ex ("Analiza a chi o gua dado", wid h*54/100, heigh *4/100);
ex ("Analiza da os Online", wid h*54/100, heigh *8/100);
ill(255);
// Funciones que se enca gan de dibua los con o nos de la
aplicación
con o no1(0, ue);
con o no2(0, ue);
con o no3(0, ue);
/* add a Sc ollableLis , by de aul i beha es like a D opdownLis
*/
lis aDesplegable1.show();
bo onG a icos.show();
speedKnob.show();
pmKnob.show();
Slide SOC.show();
Slide BMSTemp.show();
ex oCuad o.show();
o (in j=0; j<5; j++)
{
bo onesZoomY[j].show();
bo onesCen a [j].show();
bo onesZoomX[j].show();
}
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
150
bo onCa ga .hide();
bo onBlue oo hConnec .hide();
bo onBlue oo hDisconnec .hide();
plo C.beginD aw();
plo C.d awBackg ound();
plo C.d awBox();
plo C.d awXAxis();
plo C.d awYAxis();
plo C.ge Ti le().se Tex ("Es ado celdas en ins an e: " +
s (con ado Animaciones));
plo C.d awTi le();
plo C.d awHis og ams();
plo C.ac i a ePoin Labels();
plo C.d awLabels();
plo C.endD aw();
o (in i=1; i<=Nume oSenso esTemp; i++)
{
empe a u as[i-1] = 0.0;
}
G a icoTempe a u as.G a ica ( empe a u as);
// ex (s , x1, y1, x2, y2)
ex Size(16);
ill(0);
ex Align(CENTER, CENTER);
ex ("Tempe a u a", wid h*57/100, heigh *41/100);
ex ("mo o (ºC)", wid h*57/100, heigh *43/100);
ex ("SOC (%)", wid h*63/100, heigh *42/100);
ex ("RPM", wid h*244/300, heigh *42/100);
ex ("Velocidad", wid h*214/300, heigh *40/100);
ex ("(km/h)", wid h*214/300, heigh *42/100);
ill(255);
image(MapaLosA cos, o igenMapaX, o igenMapaY);
// ex (s , x1, y1, x2, y2)
ex Size(16);
ill(0);
ex Align(LEFT);
ex ("Tempe a u a máxima: ", wid h*86/100, heigh *90/100);
ex ("Tempe a u a media: ", wid h*86/100, heigh *92/100);
ex ("Tempe a u a mínima: ", wid h*86/100, heigh *94/100);
ex ("Vol aje máximo: ", wid h*75/100, heigh *90/100);
ex ("Vol aje medio: ", wid h*75/100, heigh *92/100);
ex ("Vol aje mínimo: ", wid h*75/100, heigh *94/100);
ill(255);
// Con o nos de la zona de animacion y con o no in e io de slide y
bo on animacion
s okeWeigh (3);
s oke(0);
noFill();
ec (wid h*74/100, heigh *88/100, wid h*24/100, heigh *7/100, 10);
}
/*--------------------------------------------------------------------
---------------
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
151
----------------
FUNCION QUE COLOCA LOS TEXTOS Y ASPECTO DEL MODO ONLINE--------------
----------------------------------------------------------------------
-------------*/
oid plan illaOnline()
{
// Bo amos odos los da os que había ya que puede que cambiemos de
modo de isualización
// Si pasamos de online a analisis no que emos que se g a iquen los
da os del online y ice e sa
o (in i=0; i<nume oDa os; i++)
{
da os[i]. emo eRange(0, da os[i].ge NPoin s());
}
o (in i=0; i<4; i++)
{
da osaG a ica [i]. emo eRange(0, da os[i].ge NPoin s());
}
// Qui amos las in e acciones con los g a icos pa a el di ec o
o (in i=0; i<4; i++)
{
g a icos[i].deac i a ePoin Labels();
g a icos[i].deac i a ePanning();
g a icos[i].deac i a eZooming();
g a icos[i].upda eLimi s();
}
oggleAnimacion.hide();
slide Animacion.hide();
ex oCuad o.show();
bo onG a icos.show();
bo onCa ga .hide();
bo onBlue oo hConnec .show();
bo onBlue oo hDisconnec .hide();
da osCa gados= alse;
}
/*--------------------------------------------------------------------
---------------
----------------
FUNCION QUE COLOCA LOS TEXTOS Y ASPECTO DEL MODO ANÁLISIS------------
----------------------------------------------------------------------
-------------*/
oid plan illaAnalisis()
{
// Bo amos odos los da os que había ya que puede que cambiemos de
modo de isualización
// Si pasamos de online a analisis no que emos que se g a iquen los
da os del online y ice e sa
o (in i=0; i<nume oDa os; i++)
{
da os[i]. emo eRange(0, da os[i].ge NPoin s());
}
o (in i=0; i<4; i++)
{
da osaG a ica [i]. emo eRange(0, da os[i].ge NPoin s());
}
BMS pa a una mo ocicle a eléc ica
Ma kel Liza alde Bilbao
152
// Ponemos a 0 es e alo pa a que las animaciones no accedan a un
indice que no exis e
// Es o pod ía ocu i po que no se ha ca gado el a chi o a lee aún
nume oMues eos=0;
// Ac i amos las in e acciones con los g a icos ya que en el modo
online es á desac i ado
o (in i=0; i<4; i++)
{
g a icos[i].ac i a ePoin Labels();
g a icos[i].ac i a ePanning();
g a icos[i].ac i a eZooming(1.1, CENTER, CENTER);
g a icos[i].upda eLimi s();
}
oggleAnimacion.show();
slide Animacion.show();
ex oCuad o.show();
bo onG a icos.show();
bo onCa ga .show();
bo onBlue oo hConnec .hide();
bo onBlue oo hDisconnec .hide();
// Con o nos de la zona de animacion y con o no in e io de slide y
bo on animacion
s oke(0);
s okeWeigh (2);
ec (wid h*51/100, heigh *90/100, wid h*22/100, heigh *5/100, 10);
s okeWeigh (1);
ex Size(16);
ill(0);
ex Align(CENTER, CENTER);
ex ("Visualización - Animación", wid h*57/100, heigh *117/128);
ill(255);
}
/*--------------------------------------------------------------------
---------------
----------------FUNCION QUE GESTIONA LA CONEXIÓN BLUETOOTH------------
---------------
----------------------------------------------------------------------
-------------*/
oid ges iona Conexion()
{
i (ConexionBlue oo h)
{
//p in ln("Blue oo h ac i ado");
i (conexionNue a)
{
p in ln("nue a conexion");
selec Ou pu ("Selecciona di ec o io pa a gua da los da os:",
" ileToW i e");
while (a chi oElegido== alse)
{
delay(1);
//i (seleccionA chi oCancelado)