Você está na página 1de 38

U

UUN
NNI
IIV
VVE
EER
RRS
SSI
IID
DDA
AAD
DD N
NNA
AAC
CCI
IIO
OON
NNA
AAL
LL D
DDE
EE R
RRI
IIO
OO C
CCU
UUA
AAR
RRT
TTO
OO
F
FFa
aac
ccu
uul
llt
tta
aad
dd d
dde
ee I
IIn
nng
gge
een
nni
iie
eer
rr
a
aa
C
CC
t
tte
eed
ddr
rra
aa d
dde
ee S
SSi
iis
sst
tte
eem
mma
aas
ss E
EEl
lle
eec
cct
ttr
rr
n
nni
iic
cco
oos
ss D
DDi
iig
ggi
iit
tta
aal
lle
ees
ss
A
AA
o
oo 2
220
000
009
99





P
PPr
rr
c
cct
tti
iic
cco
oo F
FFi
iin
nna
aal
ll:
:: C
CC8
880
005
551
11F
FF1
112
220
00
C
CCo
oon
nnt
ttr
rro
ool
ll d
dde
ee P
PPl
lla
aan
nnt
tta
aa d
dde
ee P
PPr
rri
iim
mme
eer
rr O
OOr
rrd
dde
een
nn





A
AAg
ggu
uui
ii r
rrr
rre
ee,
,, E
EEm
mmi
ii l
ll i
ii a
aan
nno
oo E
EEz
zze
eeq
qqu
uui
ii e
eel
ll
D
DDN
NNI
II 2
229
99.
..8
883
333
33.
..9
998
884
44
C
CCl
ll a
aar
rra
aa,
,, C
CCa
aar
rrl
ll o
oos
ss E
EEn
nnr
rri
ii q
qqu
uue
ee
D
DDN
NNI
II 3
331
11.
..7
774
444
44.
..6
664
446
66
G
GGu
uua
aal
ll t
tti
ii e
eer
rri
ii ,
,, D
DDa
aav
vvi
ii d
dd O
OOs
ssv
vva
aal
ll d
ddo
oo
D
DDN
NNI
II 3
330
00.
..1
115
558
88.
..9
996
669
99
I
IIn
nng
gg.
.. e
een
nn T
TTe
eel
ll e
eec
cco
oom
mmu
uun
nni
ii c
cca
aac
cci
ii o
oon
nne
ees
ss
C
CCa
aal
ll i
ii f
ff i
ii c
cca
aac
cci
ii
n
nn (
(( _
___
___
___
___
___
___
___
___
___
___
__ )
))


_
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
___
__
F
FFi
ii r
rr m
mma
aa d
dde
eel
ll D
DDo
ooc
cce
een
nnt
tt e
ee

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
2





























Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
3
Contenido
S SU UM MA AR RI IO O
1
11 P
PPR
RRI
II M
MME
EER
RRA
AA P
PPA
AAR
RRT
TTE
EE 4
44

1.1 Objetivos 4
1.2 Problema Final 5

2
22 S
SSE
EEG
GGU
UUN
NND
DDA
AA P
PPA
AAR
RRT
TTE
EE 7
77

2.1 Diagrama de Bloques del Microcontrolador C8051F120 7
2.1.1 Conversor Analgico Digital (ADC0 12 Bit) 8
2.1.2 Conversor Digital Analgico (DAC0 12 Bit) 11
2.1.3 Voltage de Referencia de los Conversores 12
2.1.4 MAC0 14
2.1.5 Timer 2 16
2.1.6 Timer 1 19
2.1.7 Interrupciones 21
2.1.8 Configuracin del Crossbar 24
2.1.9 UART1 26
2.1.10 Oscilador 28
2.1.11 Fuente de Reset 29
2.2 Diagrama Flujo del Problema 30
2.3 Estructura de la Placa Multipropsito 31
2.4 El Estndar RS-232 32
2.5 El Chip MAX232 33
2.6 Protocolo de Comunicacin para Transmisin Serie 35

3
33 T
TTE
EER
RRC
CCE
EER
RRA
AA P
PPA
AAR
RRT
TTE
EE 3
337
77

3.1 Experiencia 37

4
44 B
BBI
II B
BBL
LLI
II O
OOG
GGR
RRA
AAF
FFI
II A
AA 3
338
88










Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
4
Primera Parte
1
11.
.. 1
11 O OB BJ JE ET TI IV VO OS S
Para poder establecer los objetivos finales que se quieren lograr con el desarrollo del
presente proyecto, se lleva a cabo un breve anlisis de los objetivos que los docentes de la
materia Sistemas Electrnicos Digitales esperan obtener por parte de los alumnos una vez
finalizado el curso:

Capacitar al alumno en el manejo de los microcontroladores y los
perifricos asociados.
Transmitir conocimientos sobre los aspectos prcticos de la
implementacin de hardware dedicado a sistemas de control sobre la base de estos
dispositivos.
Complementar la formacin del alumno en el rea de tratamiento
digital de seales analgicas.
Complementar la formacin del alumno en el rea de programacin
introducindolo en la programacin de lenguajes de alto nivel.
Los estudiantes tienen que, poder disear la interfaz con los
dispositivos externos, utilizar las interrupciones, inicializar los registros de la CPU para
programar los perifricos internos. Considero ms importante disear en detalles, usando
cualquier procesador particular, que disear una aplicacin generalizada.

Puede apreciarse que el texto resaltado son los objetivos que se han alcanzado
parcialmente. Parcialmente por el hecho de que es muy difcil llevarse todos los conceptos
vistos y repasados bajo el brazo. El tiempo y la experiencia van a determinar cuanto se sabe y
cuanto ms falta aprender. La necesidad y la adrenalina hacen que los estudiantes puedan ir
ms all de lo que se creen capaces.
Los logros estn a la vista y el esfuerzo nunca es en vano.
Se espera poder seguir por este camino y seguir cosechando logros, con esfuerzo, razn
e inteligencia.


Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
5
1
11.
.. 2
22 P PR RO OB BL LE EM MA A F FI IN NA AL L
Se propone la resolucin del control de una planta de primer orden por medio de un
sistema de control a lazo cerrado utilizando un controlador PI, implementndolo en la placa con
el microcontrolador C8051F120.













Donde:
T
s
Perodo de muestreo (0.01 [s])
SP Valor de ajuste de estado estacionario
X
n
Muestra discreta de X
(t)

E
n
Error de lazo = SP X
n


El algoritmo del controlador proporcional integral (PI) podra ser como:

(

- + - =
i
i
s
n c n
E
T
E K Y
t
] 1 [ ] [

para i = 0 n1

T
i
Tiempo de integracin
K
c
Ganancia proporcional

Para la realizacin del sistema de control se propone el siguiente esquema:




Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
6

La planta esta formada por un circuito RC donde R=10[K] y C=1[uF]. Los valores de
referencia y la sintonizacin del controlador (K
c
y T
i
) son establecidos por una PC mediante
comunicacin serial RS232.

Nota:
Las operaciones matemticas deben ser realizadas en punto fijo mediante el uso de la
MAC (Mquina de Multiplicacin y Acumulacin) del uC. Es decir no podrn usarse libreras de
punto flotante ni definiciones directas de variables como: float, double, etc.















Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
7
Segunda Parte
2
22.
.. 1
11 D DI IA AG GR RA AM MA A D DE E B BL LO OQ QU UE ES S D DE EL L M MI IC CR RO OC CO ON NT TR RO OL LA AD DO OR R C C8 80 05 51 1F F1 12 20 0

A partir de este diagrama, se detallan los perifricos y dispositivos utilizados y
configurados en el desarrollo del presente trabajo:
Conversor Analgicos Digital (ADC0 12 Bit)
Conversor Digital Analgico (DAC0 12 Bit)
Voltage de Referencia
MAC0
Timer 1 y Timer 2
Interrupciones
Configuracin del Crossbar
UART1

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
8
Oscilador
Fuente de Reset

2
22.
.. 1
11.
.. 1
11 C Co on nv ve er rs so or r A An na al l g gi ic co o D Di ig gi it ta al l ( (A AD DC C0 0 1 12 2 B Bi it t) )















El ADC0 trabaja con 12 bits. Consiste de nueve canales analgicos de entrada,
un Multiplexor Analgico (AMUX0), un Amplificador de Ganancia Programable (PGA0),
un Registro de Aproximaciones Sucesivas ADC de 12 bits con un sistema de trabajo
continuo y un registro de comparacin (Programmable Window Detector).
Estos registros son todos programables por software, bajo los SFRs
correspondientes.
Como su nombre lo indica, este dispositivo toma la salida de la Planta de
Primer Orden (circuito RC en este caso) en cada overflow del Timer 2 y lleva a cabo el
proceso de digitalizacin correspondiente. El resultado se almacena en 12 bits, en los
registros denominados ADC0H y ADC0L.

Registros de Configuracin
Pgina de SFR: 0x00
- - AMX0CF

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
9
Este registro permite la configuracin de las entradas del Multiplexor
Analgico. Las entradas analgicas pueden ser tomadas en modo
diferencial o simple.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 0 0 0 0

Bit 7 4
No se usan. Cargados con 0 lgico.

Bit 3 0: AIN67IC AIN45IC AIN23IC AIN01IC
Entradas analgicas en modo simple.

- - AMX0SL
Este registro permite seleccionar la entrada analgica.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 0 0 0 0

Bit 7 4
No se usan. Cargados con 0 lgico.

Bit 3 0: AMX0AD3 AMX0AD2 AMX0AD1 AMX0AD0
A travs de una tabla (pgina 61) se seleciona la entrada analgica
correspondiente. En este caso, se selecciona la AIN0.0.

- - ADC0CF
Este registro permite la seleccin de la Ganancia del PGA0
(Amplificador de Ganancia Programable) y el Sistema de Clock del
12 Bit SAR ADC, a partir de una ecuacin (pgina 62).
El valor de ganancia es unitario. Por lo tanto, se cargan los bits
menos significativos con 000.


Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
10
Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 1 0 0 1 0 0 0

Bit 7 3: AD0SC4 AD0SC3 AD0SC2 AD0SC1 AD0SC0
SAR Conversion Clock Period Bits.
1
2
0
0

-
=
SAR
CLK
SYSCLK
SC AD

El valor de CLKSAR0 es 1.225 [MHz]. Esto genera un valor de
AD0SC de 9, es decir, 01001 en binario.

Bit 2 0: AMP0GN2 AMP0GN1 AMP0GN0
Ganancia del PGA0 igual a 1.

- - ADC0CN
Este registro permite la habilitacin del ADC, guarda las banderas de
inicio de conversin, tipo de justificacin y modos se comienzo de
conversin, entre otras cosas.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

1 0 0 0 1 1 0 0

Bit 7: AD0EN
Habilita el dispositivo ADC.

Bit 6: AD0TM
El proceso de conversin est continuamente en proceso.

Bit 5: AD0INT
Bandera que determina el fin del proceso de conversin. Se activa en
el flanco descendente de AD0BUSY. Inicia en 0 lgico.

Bit 4: AD0BUSY

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
11
Bandera que determina el inicio del proceso de conversin. Inicia en
0 lgico.

Bit 3 2: AD0CM1 AD0CM0
El proceso de conversin se inicia con el overflow del Timer 2.

Bit 1: AD0WINT
Bandera que se determina si un proceso de comparacin es
verdadero. No se tiene en cuenta.

Bit 0: AD0LJST
Bandera que determina la justificacin del resultado del ADC. Es
decir, se utiliza el byte ADC0L y el nible menos significativo del byte
ADC0H. En total, 12 bits. En este caso, la justificacin se denomina
derecha.

2
22.
.. 1
11.
.. 2
22 C Co on nv ve er rs so or r D Di ig gi it ta al l A An na al l g gi ic co o ( (D DA AC C0 0 1 12 2 B Bi it t) )











Este dispositivo lleva a cabo el proceso inverso al ADC. Es decir, en cada
overflow del Timer 2 lleva a cabo un proceo de conversin del dato digital a analgico
(a valor de tensin) al pin corespondiente del puerto.
El mismo tiene una salida que puede variar de 0 Volt a [V
Ref
1LSB], para un
rango de entrada de cdigo desde 0x000 a 0xFFF.

Registro de Configuracin
Pgina de SFR: 0x00

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
12
- - DAC0CN
Este registro permite la configuracin del dispositivo, como es el
modo de de inicio de conversin, la habilitacin y formato de los
nmeros, entre otros.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

1 0 0 0 0 0 0 0

Bit 7: DAC0EN
Habilita el dispositivo DAC.

Bit 6 5
No se usan. Cargados con 0 lgico.

Bit 4 3: DAC0MD1 DAC0MD0
El proceso de conversin se inicia con la escritura del registro
DAC0H.

Bit 2 0: DAC0DF2 DAC0DF1 DAC0DF0
Formato de justificacin de los bits de entrada en los registros de
DAC. En este caso, la justificacin se denomina derecha. Similar al
caso del ADC.

2
22.
.. 1
11.
.. 3
33 V Vo ol lt ta ag ge e d de e R Re ef fe er re en nc ci ia a d de e l lo os s C Co on nv ve er rs so or re es s
El microcontrolador C8051F120 incluye un circuito interno de referencia de
voltage, que consiste de 1.2 [Volt] y un amplificador duplicador de ganancia, entre otras
cosas.

Registro de Configuracin
Pgina de SFR: 0x00
- - REF0CN
Este registro permite la configuracin del control de referencia. En
este caso, permite seleccionar la fuente de voltage de referencia
interna para el ADC0 y el DAC0.

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
13

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 0 1 1 1

Bit 7 5
No se usan. Cargados con 0 lgico.

Bit 4 3: AD0VRS AD2VRS
Permite seleccionar la referencia de voltage. En este casi, selecciona
la referencia del pin VREF0.

Bit 2: TEMPE
Habilita el sensor de temperatura. En este caso no se utiliza.

Bit 1: BIASE
Bandera que habilita los 1.2 [Volt] de referencia interna hacia el
amplificador.


Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
14
Bit 0: REFBE
Bandera que habilita el amplificador de ganancia de voltage. Cuando
este es seteado, el voltage de referencia interna es manejado por el
pin VREF.

2
22.
.. 1
11.
.. 4
44 M MA AC C0 0




















Este dispositivo permite llevar a cabo una ingeniera de multiplicacin y
acumulacin la cual puede ser usada para llevar a cabo operaciones matemticas de
una manera muy rpida.
Con este dispositivo se llevan a cabo las operaciones de acumulacin y
multiplicacin para resolver el algoritmo del dispositivo PI. La MAC0 contiene un
multiplicador de 16 por 16 bits y un acumulador de 40 bits. Se pueden llevar a cabo
operaciones con nmeros enteros y fraccionarios.
Una lgica que permite interpretar los valores numricos es el trabajo de
nmeros con IQ. Es decir, un trabajo de IQ8 indica que en una variable de 16 bits, 8
bits corresponden a la parte entera del nmero y los otros 8 bits se corresponden con

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
15
la parte fraccionaria del mismo. La interpretacin se lleva a cabo por parte del usuario,
el dispositivo solo maneja bits en modo entero para este caso. Por lo cual, al mismo no
le afecta esta consideracin.

Registros de Configuracin
Pgina de SFR: 0x03
- - MAC0CF
Este registro permite la configuracin del dispositivo en sus
diferentes modos y opciones.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 0 0 0 0

Bit 7 6
No se usan. Cargados con 0 lgico.

Bit 5: MAC0SC
Modo de registro de desplazamiento.

Bit 4: MAC0SD
Direccin del registro de desplazamiento.

Bit 3: MAC0CA
Limpia el acumulador.

Bit 2: MAC0SAT
Saturacin del registro de redondeo.

Bit 1: MAC0FM
Modo fraccional o entero. En este caso, el modo a utilizar para
interpretar nmeros con IQ8 es entero.

Bit 0: MAC0MS
Modo de operacin del dispositivo: 0, Multiplicacin y Acumulacin
1, Multiplicacin.

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
16
- - MAC0STA
Este registro permite configurar las banderas de resultados.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 0 1 0 0

Bit 7 4
No se usan. Cargados con 0 lgico.

Bit 3: MAC0HO
Bandera de Overflow de resultado por hardware.

Bit 2: MAC0Z
Bandera de resultado Cero.

Bit 1: MAC0SO
Bandera de Overflow de resultado por software.

Bit 0: MAC0N
Bandera de resultado negativo.

2
22.
.. 1
11.
.. 5
55 T Ti im me er r 2 2












Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
17
El Timer 2 se trabaja como timer de 16 bits y no como contador. El modo de
trabajo es captura, y no en modo autorecarga. Esto quiere decir que en cada overflow
del timer, es necesario volver a cargar los registros de conteo (TMR2H:TMR2L).
Este dispositivo se lo utiliza para que genere un overflow cada 0.015 segundos.
Este valor se lo utiliza para poder llevar a cabo el proceso de digitalizacin e
interpolacin del sistema de control. Lo importante de este perifrico es que permite
llevar a cabo un paso de tiempo exacto y setear una bandera que genere este alerta.
En el modo de captura, cuando el bit Timer External Enable (EXEN2) es
seteado a 1, una transicin de alto a bajo en la entrada del pin T2EX causa que el valor
de 16 bit asociado al timer (TH2,TL2) puede ser cargado en los registros de captura
(RCAP2H,RCAP2L). Si una captura es obtenida en el timer, el Flag Timer External
puede ser seteado a 1 y una interrupcin puede ocurrir, si las mismas estn
habilitadas. En este caso, esta parte no se utiliza para este proyecto, debido a que
solamente se utiliza el Timer 2 como timer interno para el suceso de los conversores.
Como el registro del timer se incrementa y hace overflow en TMR2H:TMR2L, el
Flag TF2 (Timer Overflow/Underflow) es seteado a 1 y la interrupcin sucede si est
habilitada.

Registros de Configuracin
Pgina de SFR: 0x00
- - TMR2CF
Este registro permite la configuracin del dispositivo en sus
diferentes modos y opciones.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 0 0 0 0

Bit 7 5
No se usan. Cargados con 0 lgico.

Bit 4 3: T2M1 T2M0
Permite seleccionar el modo de clock del timer. En este caso, el
Sistema de Clock del microcontrolador es dividido por 12. Es decir, la
frecuencia de trabajo del timer es con referencia a 2.041666 [MHz].


Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
18
Bit 2: TOG2
Modo de salida Toggle. En los timer, esto permite que
(aproximadamente) que dos timers se conviertan en uno.
Esto se realiza para aumentar el rango de conteo de los mismos.

Bit 1: T2OE
Habilita la salida del timer hacia el pin del puerto directamente.

Bit 0: DCEN2
Utilizado para la funcin de contador del timer. No utilizado.

- - TMR2CN
Este registro permite la configuracin del control del dispositivo.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 1 0 0 1

Bit 7: TF2
Bandera de Overflow del timer.

Bit 6: EXF2
Bandera externa del timer. Seteada cuando se genera una captura.

Bit 5 4
No se usan. Cargados con 0 lgico.

Bit 3: EXEN2
Habilita la transisin de alto a bajo para el registro de captura T2EX.

Bit 2: TR2
Comienza a correr el timer.

Bit 1: C/T2
Habilita el dispositivo como timer.


Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
19
Bit 0: CP/RL2
Se configura el Timer en moco captura.

2
22.
.. 1
11.
.. 6
66 T Ti im me er r 1 1
La diferencia del Timer 1 con el Timer 2 para el uso que se le da en este
proyecto es la configuracin de los respectivos registros. Adems, este timer se lo
utiliza como generador de Baud Rate del perifrico Serial.
Este dispositivo se lo configura como timer de 8 bits en modo autorecarga. El
valor de carga est consignado en la pgina 305, en la respectiva tabla. En la misma
puede observarse que para generar el Baud Rate deseado para el perifrico Serial, el
valor de recarga del Timer 1 es 0x96, con un Sistema de Clock afectado en 12 veces.

Registros de Configuracin
Pgina de SFR: 0x00
- - TMOD
Este registro permite la configuracin del dispositivo en sus
diferentes modos y opciones.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 1 0 0 0 0 0

Bit 7: GATE1
El timer se habilita cuando est seteado el TR1.

Bit 6: C/T1
Selecciona el dispositivo como timer.

Bit 5 4: T1M1 T1M0
Selecciona el modo del timer. En este caso, es 8 bits con
autorecarga.

Bit 4 0: GATE0 C/T0 T0M1 T0M0
Similar al Timer 1, pero para el Timer 0.


Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
20
- - TCON
Este registro permite la configuracin del control del dispositivo.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 1 0 0 0 0 0 0

Bit 7: TF1
Bandera de Overflow del timer.

Bit 6: TR1
Comienza a correr el timer.

Bit 5: TF0
Bandera de Overflow del timer.

Bit 4: TR0
Comienza a correr el timer.

Bit 3: IE1
Interrupcin externa. Seteada por hardware.

Bit 2: IT1
Selecciona el tipo de interrupcin.

Bit 1: IE0
Interrupcin externa. Seteada por hardware.

Bit 0: IT0
Selecciona el tipo de interrupcin.

- - CKCON
Este registro permite la configuracin del Control de Clock del
dispositivo.


Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
21
Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 0 0 0 0

Bit 7 5
No se usan. Cargados con 0 lgico.

Bit 4 3: T1M T0M
Selecciona la fuente de clock para el timer. Usa el clock predefinido
por el prescalado de bits (SCA1:SCA0).

Bit 2
No se usan. Cargados con 0 lgico.

Bit 1 0: SCA1 SCA0
Estos bits controlan la divisin de la fuente de clock para la
configuracin del timer. En este caso, el Sistema de Clock est
dividido por 12.

2
22.
.. 1
11.
.. 7
77 I In nt te er rr ru up pc ci io on ne es s
Registros de Configuracin
Pgina de SFR: 0x00
- - IE
Este registro permite habilitar las fuentes de interrupcin para el
dispositivo.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

1 0 1 1 0 0 0 0

Bit 7: EA
Habilita todas las fuentes de interrupcin.

Bit 6: IEGF0
Bandera de propsito general.

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
22
Bit 5: ET2
Habilita la fuente de interrupcin del Timer 2.

Bit 4: ES0
Habilita la fuente de interrupcin Serial 0.

Bit 3: ET1
Habilita la fuente de interrupcin del Timer 1.

Bit 2: EX1
Habilita la fuente de interrupcin Externa 1.

Bit 1: ET0
Habilita la fuente de interrupcin del Timer 0.

Bit 0: EX0
Habilita la fuente de interrupcin Externa 0.

- - IP
Este registro permite habilitar las prioridades para cada una de las
fuentes de interrupcin.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 1 0 0 0 0 0

Bit 7 6
No se usan. Cargados con 0 lgico.

Bit 5: PT2
Bandera de prioridad de la interrupcin del Timer 2.

Bit 4: PS0
Bandera de prioridad de la interrupcin del Serial 0.

Bit 3: PT1

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
23
Bandera de prioridad de la interrupcin del Timer 1.

Bit 2: PX1
Bandera de prioridad de la interrupcin Externa 1.

Bit 1: PT0
Bandera de prioridad de la interrupcin del Timer 0.

Bit 0: PX0
Bandera de prioridad de la interrupcin Externa 0.

- - EIE2
Este registro permite habilitar las fuentes de interrupcin extendidas
para el dispositivo.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 1 0 0 0 0 0 0

Bit 7
No se usa. Cargado con 0 lgico.

Bit 6: ES1
Habilita la fuente de interrupcin Serial 1.

Bit 5
No se usa. Cargado con 0 lgico.

Bit 4: EADC2
Habilita la fuente de interrupcin End of Convertion del ADC2.

Bit 3: EWADC2
Habilita la fuente de interrupcin Window Comparision ADC2.

Bit 2: ET4
Habilita la fuente de interrupcin del Timer 4.

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
24
Bit 1: EADC0
Habilita la fuente de interrupcin End of Convertion del ADC0.

Bit 0: ET3
Habilita la fuente de interrupcin del Timer 3.

2
22.
.. 1
11.
.. 8
88 C Co on nf fi ig gu ur ra ac ci i n n d de el l C Cr ro os ss sb ba ar r




















La mayora de los perifricos pueden ser relacionados a los puertos segn el
grado de prioridades que el fabricante le da a los mismos. Para ello es necesario llevar
a cabo la configuracin de tres registros especficos.
En este caso, la configuracin del Registro de Control de Crossbar permite al
usuario seleccionar los puertos de entrada o salida relacionado a los perifrico segn
sus necesidades.

Registros de Configuracin
Pgina de SFR: 0x0F

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
25
- - XBR0
Este registro permite configurar el Crossbar para los puertos de
entrada y salida. Registro 0.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 0 0 0 0

- - XBR1
Este registro permite configurar el Crossbar para los puertos de
entrada y salida. Registro 1.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 0 0 0 0

- - XBR2
Este registro permite configurar el Crossbar para los puertos de
entrada y salida. Registro 2.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 1 0 0 0 1 0 0

Bit 7: WEAKPUD
Deshabilita el Weak Pullups generalmente.

Bit 6: XBARE
Habilita el registro de Control de Crossbar.

Bit 5: CNVST2E
Comienzo de Conversin Externa.

Bit 4: T4EXE
Habilita entrada externa del Timer 4.


Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
26
Bit 3: T4E
Habilita entrada del Timer 4.

Bit 2: UART1E
Habilita entrada del Serial 1.

Bit 1: EMIFLE
Habilita interface de memoria externa.

Bit 0: CNVST0E
Comienzo de Conversin Externa del ADC0.

2
22.
.. 1
11.
.. 9
99 U UA AR RT T1 1



















El UART1 es un puerto serie full duplex y asncrono. El Baud Rate para la
transmisin serial es llevada a cabo por el Timer 1, a travs de la tabla que figura en la
pgina 305. En la misma puede observarse que para generar el Baud Rate deseado

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
27
para el perifrico Serial 1, el valor de recarga del Timer 1 es 0x96, con un Sistema de
Clock afectado en 12 veces. Por lo tanto, la velocidad de transmisin de los datos es
de 9600 bps.
Mediante la lectura del registro SBUF1 se obtienen los datos recibidos a travs
de dispositivo serial. El mismo conlleva un tiempo de byte recibido, antes que el
mismo sea cargado con el siguiente valor recibido.








Registros de Configuracin
Pgina de SFR: 0x01
- - SCON1
Este registro permite configurar el registro de control del puerto Serial
1.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 1 0 0 0 0

Bit 7: S1MODE
Modo de Operacin del Puerto Serial 1.

Bit 6
No se usa. Cargado con 0 lgico.

Bit 5: MCE1
Habilitador de Comunicacin Multriprocesador.

Bit 4: REN1

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
28
Habilitador de Recepcin.

Bit 3: TB81
Noveno Bit Transmitido.

Bit 2: RB81
Noveno Bit Recibido.

Bit 1: TI1
Bandera de Interrupcin de Transmisin.

Bit 0: RI1
Bandera de Interrupcin de Recepcin.

2
22.
.. 1
11.
.. 1
110
00 O Os sc ci il la ad do or r
El dispositivo incluye un oscilador interno programable y un circuito oscilador de
manejo externo. El oscilador interno puede se habilitado, deshabilitado y calibrado
usando los registros OSCICN y OSCICL.

Registros de Configuracin
Pgina de SFR: 0x0F
- - OSCICN
Este registro permite configurar el control del oscilador interno.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

1 1 0 0 0 0 1 1

Bit 7: IOSCEN
Habilita el Oscilador Interno.

Bit 6: IFRDY
Determina si el oscilador interno se encuentra corriendo y a la
frecuencia seleccionada.


Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
29
Bit 5 2
No se usa. Cargado con 0 lgico.

Bit 1 0: IFCN1 IFCN0
Determina el control de la Frecuencia del Oscilador Interno. En este
caso, se divide la frecuencia del sistema por 1. Es decir, el
microcontrolador trabaja en 24.5 [MHz].

- - CLKSEL
Este registro permite seleccionar el sistema de clock.

Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0

0 0 0 0 0 0 0 0

Bit 7 6
No se usa. Cargado con 0 lgico.

Bit 5 4: CLKDIV1 CLKDIV0
Estos bits permiten preescalar el Sistema de Clock para los pines
externos.

Bit 3 2
No se usa. Cargado con 0 lgico.

Bit 1 0: CLKSL1 CLKSL0
Permite derivar el Sistema de Clock del Oscilador Interno, y escalarlo
por el registro IFCN en OSCICN.

2
22.
.. 1
11.
.. 1
111
11 F Fu ue en nt te e d de e R Re es se et t
El microcontrolador C8051F120 incluye un Watchdog Timer (WDT)
programmable corriendo fuera del sistema de clock. Un overflow de este registro puede
forzar al microcontrolador a un estado de reset. Para prevenir este reset, el WDT puede
ser deshabilitado. Para ello, se debe escribir en el registro WDTCN de manera
consecutiva los valores 0xDE y 0xAD.


Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
30
2
22.
.. 2
22 D DI IA AG GR RA AM MA A D DE E F FL LU UJ JO O D DE EL L P PR RO OB BL LE EM MA A
A partir de una consigna clara, el diseo de un diagrama de flujo es el primer paso a
seguir. Para ello, se debe analizar el problema al cual se enfrenta. En este caso, es
importante destacar que toda la implementacin es con fines didcticos, lo cual hace razonar
an ms la situacin problemtica a la que se somete.































ESPERO INT DEL
TIMER
INICIO
DIGITALIZO X(t)
SACO Y(n)
SP-X(n)=E(n)
ACTUALIZO
Eant Y Etot
E(n)>0 Etot>0 Etot>0 NO SI
SEtot
SEtot>7FFF
SEtot=7FFF SEtot
NO
SI
SI NO
SEtot<8000
SEtot=8000 SEtot SEtot
NO
NO SI
SI
Yn=[(Ts/Ti)xEtot]+Eant
Yn<0
COMPLEMENTO
Yn
Kc x Yn=Yn
Yn-CPL(Yn)
Kc * Yn=Yn
Yn<0000
Yn Yn=0000
Yn>0FFF
Yn Yn=0FFF
SI NO
NO SI
NO SI
NO
ESPERO INT
SERIAL
ENTRADA DE
DATOS

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
31
2
22.
.. 3
33 E ES ST TR RU UC CT TU UR RA A D DE E L LA A P PL LA AC CA A M MU UL LT TI IP PR RO OP P S SI IT TO O




































Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
32














2
22.
.. 4
44 E ES ST T N ND DA AR R R RS S- -2 23 32 2
El puerto serie RS-232, presente en todos los ordenadores actuales, es la forma ms
comnmente usada para realizar transmisiones de datos entre ordenadores.
Consiste en un conector tipo DB-25 de 25 pines, aunque es normal encontrar la versin
de 9 pines DB-9, ms barato e incluso mas extendido para cierto tipo de perifricos (como el
ratn serie del PC). En cualquier caso, los PCs no suelen emplear ms de 9 pines en el
conector DB-25. Las seales con las que trabaja este puerto serie son digitales, de +12 [Volt]
(0 lgico) y -12 [Volt] (1 lgico), para la entrada y salida de datos, y a la inversa en las
seales de control. El estado de reposo en la entrada y salida de datos es -12 [Volt].
Dependiendo de la velocidad de transmisin empleada, es posible tener cables de hasta 15
metros.
Cada pin puede ser de entrada o de salida, teniendo una funcin especifica cada uno de
ellos.
El ordenador controla el puerto serie mediante un circuito integrado especifico, llamado
UART (Transmisor-Receptor-Asncrono Universal).
El RS-232 puede transmitir los datos en grupos de 5, 6, 7 u 8 bits, a unas velocidades
determinadas (normalmente, 9600 bits por segundo o mas). Despus de la transmisin de los
datos, le sigue un bit opcional de paridad (indica si el numero de bits transmitidos es par o
impar, para detectar fallos), y despus 1 o 2 bits de Stop. Normalmente, el protocolo utilizado
ser 8N1 (que significa, 8 bits de datos, sin paridad y con 1 bit de Stop).
Una vez que ha comenzado la transmisin de un dato, los bits tienen que llegar uno
detrs de otro a una velocidad constante y en determinados instantes de tiempo. Por eso se

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
33
dice que el RS-232 es asncrono por caracter y sncrono por bit. Los pines que portan los
datos son RXD y TXD.
Tanto el aparato a conectar como el ordenador (o el programa terminal) tienen que usar
el mismo protocolo serie para comunicarse entre si. Puesto que el estndar RS-232 no
permite indicar en que modo se esta trabajando, es el usuario quien tiene que decidirlo y
configurar ambas partes. Como ya se ha visto, los parmetros que hay que configurar son:
protocolo serie (8N1), velocidad del puerto serie, y protocolo de control de flujo.

Conexin de un Microcontrolador al Puerto Serie del PC
Para conectar el PC a un microcontrolador por el puerto serie se utilizan las seales Tx,
Rx y GND. El PC utiliza la norma RS232, por lo que los niveles de tensin de los pines entn
comprendidos entre +15 y -15 voltios. Los microcontroladores normalmente trabajan con
niveles TTL (0-5v). Es necesario por tanto intercalar un circuito que adapte los niveles:









Uno de estos circuitos que se utiliza mucho, es el MAX232.

2
22.
.. 5
55 E EL L C CH HI IP P M MA AX X2 23 32 2
El puerto serie RS-232, presente en todos los ordenadores actuales, es la forma ms
comnmente usada para realizar transmisiones de datos entre ordenadores.
En muchas ocasiones resulta muy til que algn circuito basado en un microcontrolador
pueda comunicarse con una computadora, ya sea para recibir datos o instrucciones de ella o
bien para enviarle datos o el estado de algn proceso; dicha comunicacin puede realizarse
utilizando los puertos de la computadora ya sea el puerto paralelo o el puerto serie, en el caso
del puerto serie existe el inconveniente de que un microcontrolador trabaja con niveles de
voltaje TTL y el puerto serie de la computadora trabaja con niveles de voltaje de acuerdo a la
norma RS232. Estas diferencias en los niveles de voltaje hacen que sea imposible realizar
una conexin directa de un microcontrolador al puerto serie de la computadora.

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
34
Para poder establecer comunicacin entre el puerto serie de una computadora y un
microcontrolador es necesario construir un mdulo adaptador de RS232 a TTL, dicho mdulo
debe ser capaz de convertir los niveles de voltaje de RS232 a TTL para realizar una
transmisin de datos (desde la computadora) y de TTL a RS232 para realizar una recepcin
de datos (desde el microcontrolador). En el mercado se encuentra un circuito integrado que
realiza esta tarea, especficamente el MAX232, este circuito integrado es muy popular debido
a que para un funcionamiento adecuado slo necesita de cuatro capacitores electrolticos y
una fuente de alimentacin de 5V.
En la siguiente figura se muestra el diagrama esquemtico del Mdulo Adaptador
RS232-TTL.
El Mdulo Adaptador de RS232 a TTL es un circuito muy sencillo ya que, como se mencion
anteriormente, el circuito integrado MAX232 (IC1) realiza la tarea de cambiar los niveles de
voltaje de RS232 a TTL, en el caso de una transmisin de datos y de TTL a RS232 en el caso
de una recepcin de datos. El MAX232 (IC1) necesita para funcionar slo de cuatro
capacitares electrolticos y de una fuente de alimentacin de 5V, internamente el MAX232
(IC1) tiene dos fuentes conmutadas, la primera de ellas en conjunto con los capacitores
electrolticos C3 y C2 adaptan el nivel de voltaje tomado de la alimentacin de +5V a +10V,
la segunda fuente conmutada y los capacitores electrolticos C1 y C4 invierten los niveles de
voltaje para que se puedan obtener -10V, estos niveles de voltaje son utilizados para realizar
la adaptacin de los voltajes RS232 y se encuentran dentro de los rangos permitidos por la
norma RS232.
El circuito integrado MAX232 (IC1) tiene dos terminales para conectar seales con
niveles de voltaje TTL que sern adaptadas en seales con niveles de voltaje RS232, y otras
dos terminales para conectar seales con niveles de voltaje RS232 que sern adaptadas a
seales con niveles lgicos TTL.
En el diagrama se observa que no todas las terminales del circuito integrado MAX232
(IC1) estn conectadas, esto debido a que slo se utilizan la seal de la terminal 2 del
conector DB9 (Rx) y la seal de la terminal 3 del conector DB9 (Tx), estas seales se utilizan
para hacer la recepcin y la transmisin de datos respectivamente. En el caso de la recepcin
de datos la seal con niveles de voltaje TTL, procedente de un microcontrolador o cualquier
dispositivo que maneje niveles de voltaje TTL, entra por la terminal 11 del MAX232 (IC1), en el
MAX232 se adaptan los niveles de voltaje de TTL a RS232 y la seal con niveles de voltaje
RS232 sale por la terminal 14 del MAX232 (IC1) a la terminal 2 del conector DB9 (Rx); en el
caso de la transmisin de datos, la seal de la terminal 3 del conector DB9 (Tx) con niveles de
voltaje RS232 entra por la terminal 13 del MAX232 (IC1) en el MAX232 se adaptan los niveles
de voltaje de RS232 a TTL y la seal con niveles de voltaje TTL sale por la terminal 12 del

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
35
MAX232 (IC1), esta seal puede ser conectada a la terminal receptora de un
microcontrolador.
Tambin se
observa que las
terminales 1,4 y 6
del conector DB9
estn
cortocircuitadas
entre s, as como
las terminales 7 y 8
del conector DB9
tambin estn
cortocircuitadas,
esto es necesario
cuando la
computadora
maneja la transmisin y recepcin de datos por el puerto serie con algn mtodo de control de
flujo, ya que permite simular una terminal receptora que emite las seales de control de flujo
necesarias para establecer la comunicacin, en el caso de que la computadora maneje los
datos sin ningn mtodo de control de flujo no es necesario realizar ninguna conexin entre
las terminales del puerto serie, aunque si la computadora no maneja los datos con algn
mtodo de control de flujo y dichas conexiones se encuentran hechas, no afectan la
comunicacin entre la computadora y el microcontrolador.
Para comprobar el correcto funcionamiento del Mdulo Adaptador RS232 TTL, es
posible utilizar el programa de computadora Hyperterminal (o Hrcules, en su defecto) que
est incluido con el sistema operativo Windows.

2
22.
.. 6
66 P PR RO OT TO OC CO OL LO O D DE E C CO OM MU UN NI IC CA AC CI I N N P PA AR RA A T TR RA AN NS SM MI IS SI I N N S SE ER RI IE E
Un protocolo es un conjunto de normas o reglas que establecen la forma de la
transmisin de los datos.
Son funciones de los protocolos: encapsulamiento, segmentacin y ensamblado, control
de la conexin, entrega en orden, control de flujo, control de errores, direccionamiento,
multiplexacin, servicios de transmisin, entre otras.
Para el presente proyecto, se lleva a cabo un protocolo de comunicacin sencillo y poco
efectivo, ya que no lleva a cabo control de errores ni avisos de entrega correcta (CRC o ACK,
por ejemplo).

Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
36
Los comandos de comunicacin tienen una parte que se refiere a la sentencia
relacionada y otra que hace referencia a su valor. Existen tres comandos que permiten el
traspaso de datos desde una pc hacia el dispositivo.

SP 0x53 Byte Alto de SP Byte Bajo de SP

Cte 0x54 Byte Alto de Cte Byte Bajo de Cte

K 0x4B Byte Alto de K Byte Bajo de K

Entonces, el proceso de comunicacin Serial interpreta en primera instancia el
comando, es decir, necesita hacer referencia a una de las tres variables.
El usuario puede interpretar enviar el comando y tiempo despus los valores. Todo el
proceso de control se lleva a cabo a partir de la activacin de distintas banderas, con valores
que se incrementan hasta tres, momento en el cual se enva el ltimo byte en la transmisin
de la variable, y se hacen los ajustes entre las variables temporales.
En todos los casos intermedios de transmisin, los valores de las variables se
almacenan en variables intermedias hasta que el envo de los mismos est completo.




















Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
37
Tercera Parte
3
33.
.. 1
11 E EX XP PE ER RI IE EN NC CI IA A
En la realizacion del presente trabajo, se presentaron varias dificultades,entre las ms
significativas se pueden nombrar el desarrollo del algoritmo PI, ya que en esta carrera no se
cuenta con ninguna materia que se refierra a este tema. Otra de las dificultades fue no saber
ningun lenguaje de programacin, de todas maneras y con gran esfuerzo se pudo realizar la
tarea pedida, en tiempo y forma esperando cumplir todas las espectativas del cuerpo docente.
Como primer paso, despues de un arduo anlisis se lleg a un diagrama de flujos que a
entender de los integrantes, es el ms conveniente para realizar el control de la planta de
primer orden pedida en la consigna. Luego se realiz las configuraciones del Timer 2, el DAC0
y el ADC0; una vez que estos fueron probados exaustivamente y se comprob que el
funcionamiento era correcto, se procedi a ensamblarlos en un solo bloque. Para la
configuracionres mencionadas se encontraron diversas dificultades. Entre ellas, una de las
ms comunes era que cada vez que se configuraba un registro se deba, por lo general,
cambiar de pgina siendo esto muy fcil de olvidar. Otra de las dificultades fue que el
microcontrolador es totalmente nuevo y no se conoca ninguno de los registros, por lo que a la
hora de configurarlos nos debamos remitir al manual.
Una vez realizado lo anterior, se procedi al desarrollo del algoritmo PI que como ya se
mencion present una gran dificultad por no tener los conocimientos previos. Dentro de este
algoritmo se debi configurar la MAC0, la cual no present gran dificultad. Despus de esto se
configur el puerto serie para el ingreso de los datos de manera externa, el cual tampoco trajo
grandes inconvenientes.
Se puede decir que al finalizar el curso de Sistemas Electronicos Digitales los
integrantes del grupo se llevan una gran cantidad de cosas importantes. Se ha demostrado
que materias de este tipo permiten afianzar los conocimientos de manera ms permanente y
efectiva.





Sistemas Electrnicos Digitales Prctico Final C8051F120: Control de Planta de Primer Orden
38
Bibliografa
Hoja de Datos C8051F120 Silicon Laboratories
The 8051 Microcontroller 2nd Edition Scott MacKenzie
Apuntes de Ctedra
Diversas Pginas Web de Electrnica y Microcontroladores

Você também pode gostar