Documente Academic
Documente Profesional
Documente Cultură
Canal de comunicaie
Interfa binar
(digital)
Interfa binar
(digital)
Mesaj
Transmitor
Reacie- mesaj de
confirmare pe calea de
retur
Receptor
Pentru transmisia unui mesaj, fiecrui grup de bii trebuie s i corespund un caracter (liter,
cifr, semn special). Cel mai cunoscut este codul ASCII (American Standard Code for
Information Interchange).
Emitor
D0
D1
D2
D3
D4
D5
D6
D7
Receptor
La transferul paralel informaia este transmis pe mai multe linii (8, 16, 32, 64, 128 ...), cu un
numr de bii transmis la un impuls de tact egal cu numrul de linii, cuvintele fiind transmise
succesiv, figura 1.2.
Diagrama de timp comprimat a transferului este dat n figura 1.3.
n aceast carte vor fi prezentate transferurile paralele prin magistrala extern i prin porturile
paralele de I/O de uz general, dar i alte cteva aplicaii cum ar fi de exemplu circuitul de
conversie USB- paralel FTDI.. Magistralele i interfeele paralele sunt n scdere de pia,
fiind nlocuite de cele seriale, de aceea i ponderea lor n aceast carte este mai sczut.
D0-D7
t
Perioada de timp n
care se transmit 8
bii
Timp de
tranziie
La transferul serial informaia este transmis bit dup bit, pe mai puine fire (minimum 2 fire,
dintre care unul de referin, masa electric), figura 1.4. Pentru transmisia datelor acestea
trebuie codificate. n aceast carte se vor descrie transmisii cu codificare NRZ, Manchester,
8B10B etc. Avantajele interfeelor seriale legate de preul mai mic au dus la rspndirea
acestor interfee n majoritatea aplicaiilor.
Emitor
DATE
Receptor
n perioada actual numrul, viteza i calitatea interfeelor seriale cresc, cucerind din ce n ce
mai multe segmente de pia.
Dac datele seriale vin la receptor pe un singur fir, presupunem prin codare NRZ, receptorul
le poate citi cu o anumit frecven i s obin datele de pe fond gri din figura 1.5 sau cu alt
frecven i s se obin datele din chenarul de jos. Acest lucru arat importana ca datele s
fie recepionate cu acelai tact cu care au fost trimise.
Tensiune
1 1
0 1
Pentru a se asigura la receptor tactul corect de recepie exist mai multe variante, prezentate n
figura 1.6:
Emitor
Date
Tact
GND
Emitor
Receptor
Receptor
Date
Tact
GND
Tact
a
Emitor
Date
Receptor
Generare tact din
datele citite
GND
Tact
mare datorit faptului c ntre tactele standard exist diferene. Cteva exemple tratate n carte
sunt interfaa serial asincron RS232 i LIN.
3.Refacerea tactului din datele emise este cea mai modern metod folosit la cele mai multe
aplicaii actuale. Se pot asigura distane mari, costuri mici, viteze mari. Circuitul care reface
tactul din date se numete bucl PLL i nu poate reface datele dect dac exist variaii
permanente de nivel, figura 1.6 c. Exemple n aceast carte sunt USB, CAN, FlexRay,
IEEE1394b (2002), dar i Ethernet, SATA etc. care nu sunt tratate aici. Transmisiile wireless,
de exemplu Bluetooth i ZigBee pot fi asociate cu transmisiile seriale pe un singur fir cu
refacerea tactului.
Un grup de cuvinte binare formeaz un cadru (pachet sau bloc) de date. Protocoalele seriale
pot fi orientate pe cuvnt sau pe cadru. Un cuvnt respectiv un bloc de date reprezint entiti
de informaie care se trateaz unitar la receptor, adic sunt acceptate sau respinse n ntregime.
n transferul asincron (RS232, LIN) se transmit cuvinte i informaia de sincronizare este
ataat cuvntului dar n cele mai multe tipuri de transfer (USB, CAN, IEEE1394b, Ethernet,
Bluetooth, ZigBee) informaia de sincronizare este ataat cadrului.
Bibliografie
B
4
B
5
B
n
exist dou semnale de comand - RD i WR care stabilesc sensul transferului. Dac spaiul
de adresare este diferit pentru memorie i IO atunci exist patru semnale- IORD, IOWR,
MEMRD, MEMWR. O diagram de timp pentru un transfer tipic pe o magistral sincron
simpl cu spaiu comun pentru memorie i IO n care sunt prezentate un ciclu de citire i unul
de scriere [2] este dat n figura 2.2.
CLK
Adrese
/RD
/WR
Date
Date scrise
Date citite
Citire
Scriere
Figura 2.2: Diagrama de timp pentru un ciclu de citire urmat de un ciclu de scriere
Semnalul de tact este reprezentativ pentru magistralele sincrone. Activarea semnalului de /RD
nseamn c datele sunt citite de pe magistral ntr-un registru al UC iar activarea semnalului
/WR nseamn c datele sunt scrise n memorie sau ntr-un dispozitiv de I/O. n aceast
diagram se remarc faptul c liniile de adres i de date sunt diferite.
CLK
ALE
/RD
/WR
Adrese/ date
AD0-AD7
Date scrise
Adrese
Citire
Date citite
Scriere
Adrese
Figura 2.3: Diagrama de timp pentru un ciclu de citire urmat de un ciclu de scriere n cazul
unei magistrale de adrese i date multiplexate
De regul, n microcontrollere nu se poate accepta un numr att de mare de linii din cauza
costurilor, de aceea liniile de adrese i date sunt multiplexate. Aceasta nseamn cuplarea unui
latch de adrese n exteriorul microcontrollerului care s fie ncrcat cu adrese, comanda latchului fiind realizat cu semnalul ALE (Address Latch Enable). O diagram de timp n acest caz
este dat n figura 2.3.
i Slave
Magistrala de
date
Magistrala de
adrese A0-A15
0000H
3FFFH
4000H
A14
A0-A13 CS
MEM1
A15
7FFFH
8000H
A0-A13 CS
MEM2
MEM1
MEM2
BFFFH
C000H
FFFFH
0000H
3FFFH
4000H
DCD
A0-A13 CS
MEM1 A0-A13
MEM2
CS
0,0
A0-A13 CS
MEM3 A0-A13
MEM4
A15, A14
0,1
1,0
CS
1,1
7FFFH
8000H
BFFFH
C000H
MEM1
MEM2
MEM3
MEM4
FFFFH
Magistrala de
adrese A0-A15
0000H
A2-A15
0180H
0183H
DCD
FFFFH
0180H
A0 A1
CS
I8255
A11 10 9 8
0 0 0 1
DCD0
A7 6 5
1 0 0
DCD1
0
4
0
DCD2
1
A3 2
0 0
DCD3
AND
CS
Figura 2.7: Conectarea unui circuit interfa paralel I8255 pe magistral
Dac conectm acelai circuit la porturi paralele obinem schema bloc din figura 2.8.
MC
P0.1-P0.7
DCD
CS1,2,3
D0-D7
I8255
A0 A1 CS
RD WR
Figura 2.8: Conectarea unui circuit interfa paralel I8255 la porturi paralele
Portul 0 al MC este folosit pentru transferul de date pe 8 bii, bidirecional. Liniile 0 i 1 din
portul P1 sunt folosite pentru selectarea registrelor interne ale I8255. Liniile 2 i 3 prin
decodificare pot selecta unul din patru circuite conectate cu liniile de date la portul 0 al MC.
Liniile 3 i 4 ale portului 1 stabilesc sensul transferului. Se poate observa din schema bloc
faptul c o conectare la porturi paralele este mai simpl dect una pe magistral, mai ales dac
numrul de circuite conectate este mic.
Pentru un transfer de un octet se pune octetul pe magistrala de date apoi se selecteaz portul
intern al I8255 prin punerea unui cuvnt pe portul 1, apoi se trimite un RD sau WR, ceea ce
nseamn un cuvnt pe portul 1 care face RD sau WR 1, urmat de un cuvnt care face RD sau
WR 0. Din aceast succesiune de cuvinte de comand se poate deduce c transferul este de cel
puin 4 ori mai lent dect dac I8255 este conectat pe magistral.
ALE
/PSEN
/RD
Date
PORT 0
PORT 2
A0-A7 din RI (8 bii)
sau DPL (16 bii)
Figura 2.9: Diagrama de timp la un ciclu de citire dintr-o memorie extern de date
O aplicaie de conectare la un MC din familia MCS 51 a unei memorii externe EPROM de
64koctei pe magistral i a unui afiaj LCD pe un port paralel [5] este dat n figura 2.10.
Pentru a adresa memoria EPROM se folosesc 16 bii de adres, cei mai puin semnificativi la
portul P0, cei mai semnificativi la portul P2. Un impuls pe linia ALE ncarc biii de adres
din portul P0 n latch-ul 74HC573. Se activeaz PSEN pentru c n EPROM sunt stocate
instruciuni (memorie extern de program), datele fiind pe liniile de date din portul P0 putnd
fi citite (/RD activ) sau scrise (/WR activ).
10
XMEM va detecta un acces la memoria extern i nu va ine cont de setrile de direcie ale
porturilor PA i PC. Viteza de transfer a datelor este mare, de aceea se impun condiii de
vitez pentru latch-ul de adrese. Programarea i controlul modului de lucru se face cu
registrele: MCUCR (MCU Control Register), XMCRA i XMCRB (External Memory
Control Register A i B). Pentru c memoriile au timpi diferii de acces se pot defini 4
variante de lucru cu memoria extern prin inserarea a 0, 1 sau 2 stri de WAIT.
O diagram de timp pentru accesul la memoria extern pe 16 bii, la citire este dat n figura
2.12.
CLK (tact CPU)
ALE
Adrese
anterioare
Adrese
/RD
Adrese A15-A8
Adrese/ date
AD0-AD7
Date anterioare
Adrese
Date citite
12
13
Port I/O (8 bii) sau /WRH (16 bii) pe linia P33, activ doar la magistrala pe 16 bii, Write.
HRQ pe linia P34 cerere ctre MC de intrare n HOLD.
/HAK pe linia P35 rspuns de confirmare la cererea de intrare n HOLD.
RDY pe linia P36
CLK pe linia P37.
Magistrala
extern
F2MC16LX
AD07-AD00
A15-A08
A21-A16
ALE
/RD
/WR
/HAK
HRQ
RDY
CLK
Regitrii de comand pentru lucrul cu magistral extern selecteaz dac liniile porturilor au
semnificaia de linii de magistral sau linii IO i comand inserarea a 1, 2 sau 3 stri de WAIT
pentru accesul pe magistral.
14
Magistrala de date poate fi pe 32/16/8 bii, lrgime care poate fi diferit pentru bank-uri
diferite.
Se pot transfera date prin DMA.
I-BUS, 32 bii, Harvard, (magistrala de instruciuni)
F-BUS 32
bii,
magistral
unic de date
i instruciuni
RAM
ROM
CPU FR
D-BUS 32
bii, Harvard,
(magistrala de
date)
Controller de
magistral
Convertor 32 bii- 16
bii
Real BUS
(magistral
extern)
Acces
Scriere date
Acces
Magistral extern de
date, 32 de bii
Buffer de adrese
Magistral extern de
adrese 32 de bii
Generare CS
CS0X-CS7X
ASR
AMR
CLK, RDY, BGRNTX,
BRQ, RDX, WR0XWR3X
Generare semnale
de control
15
Generarea semnalelor de CS poate fi activat sau invalidat, zonele de adrese selectate fiind
programabile prin nscrierea unui registru de programare. Semnalele WR0X, WR1X, WR2X,
WR3X sunt semnale de strob de scriere, cu legtur cu lrgimea magistralei de date. Astfel la
transferul pe octet se activeaz WR0X, la un transfer pe 16 bii WR0X i WR1X, iar la
transferul pe 32 de bii se activeaz toate 4. Ordinea n care se transfer datele din regitrii
interni este Big Endian, figura 2.17.
Transfer pe 32 de bii
Registru intern
D31
D23
D15
D07
Transfer pe 16 bii
D31
BB
BB
D23
CC
CC
D15
AA
DD
DD
D00
(La scriere)
Transfer pe 8 bii
D07
D00
AA
BB
AA
BB
DD
D31
D23
D15
CC
D07
DD
Activ WR0X-WR3X
CC
AA
Magistral extern
00 01 10 11
AA BB CC DD
BB
CC
DD
D00
16
CLK
Tactul de magistral
AS
Strob de adrese
A31:0
32 linii de adres
D31:0
/RDX
/WR0-3
/CSnX
/CSmX
GDC
SDRAM opional
Date 32 de bii
Magistrala
extern
Date
32 de bii
Adrese
32 de bii
RESET
WRX
CSX
RDX
RDY
CLK
INT
DREQ
DACK
Adrese 12 bii
Comenzi i stri 8 bii
RDisplay
Ganalogic
B
Video
input
Sursa de alimentare
5V 3,3V 2,5V
17
Bibliografie
[1] Gerigan C., Ogruan P., Tehnici de interfaare, Ed. Transilvania Braov, 2000, 315p.,
ISBN 973-9474-94-2
[2] Borza P., Gerigan C., Ogruan P., Toace Gh., Microcontrollere. Aplicaii, Editura
Tehnic Bucureti, 2001, ISBN973-31-1577-6, 220p
[3] Ogruan P., Gerigan C., Banciu N., Memorii, interfee i periferice. Interfee specializate,
Ed. Transilvania Braov, 2003, 190 pagini, ISBN 973-635-118-1
[4] Ogrutan P., Microcontrollere si controllere grafice Fujitsu, Ed. Universitatii Transilvania
Brasov, 2006, 182 pag, ISBN 973-635-621-3
[5] Lipnharski W., 8051+LCD+EPROM, [online], www.ustr.net
[6] Fleury P., Interfacing a HD44780 Based LCD to an AVR, 2003, [online],
http://jump.to/fleury
18
rata de transfer este de 1,5 Mbps la USB 1.0 (Low Speed), 12Mbps la USB 1.1 (Full
Speed), 480Mbps la USB 2.0 (Hi Speed) i 4,8Gbps la USB 3.0 (Super Speed);
conecteaz pn la 127 de dispozitive la un calculator gazd, dar nu se pot conecta
dispozitive USB fr gazd ca la IEEE 1394;
configurarea este automat, adic se poate conecta un dispozitiv USB fizic n mers
(Hot Plug In). Se remarc creterea complexitii software fa de partea hardware;
cablul conine linii de alimentare, aa c dispozitivele USB pot fi alimentate de la
gazd (bus powered device) sau pot avea alimentare proprie (self powered device).
Din acest motiv cablurile au conectori diferii pentru conectarea spre gazd (upstream)
i spre dispozitiv (downstream);
distana de conectare este de maximum 5m, distana se poate mri prin inserarea de
hub-uri.
Specificaiile acestei magistrale descriu atributele de magistral, definesc protocolul, tipurile
de tranzacii, administrarea magistralei (bus management) i totodat furnizeaz informaii
necesare pentru construirea unui sistem n acest standard.
Magistrala USB definete trei categorii de dispozitive fizice:
gazda USB (USB Host)
funcii USB (USB function)
distribuitoare USB (USB Hub)
Dispozitivele USB sunt conectate ntr-o topologie de tip stea multipl. Topologia USB este
reprezentat n figura 3.1. n nodul fiecrei stele se gsete un hub.
19
Gazda USB
Root hub
Funcie
USB
Hub 1
Dispozitiv compus
Funcie
USB
Hub 2
Endpoint
Funcie
USB
Funcie
USB
Funcie
USB
Funcie
USB
VBUS
VBUS
D+
D+
D-
DGND
GND
Figura 3.2: Cablu USB
3.1.2.Protocolul USB
USB folosete un protocol bazat pe pachete de date (Data Packet). Un pachet de date este o
colecie de cadre de date (Data Frame). Numrul de bii dint-un cadru nu are o valoare fix.
21
Majoritatea sistemelor folosesc cadre de 4 pn la 8 bii de date. Biii sunt trimii spre
magistral astfel: primul bit este cel mai puin semnificativ bit (LSB) din cadru, urmat de bitul
mai semnificativ pn la trimiterea celui mai semnificativ (MSB) bit din cadrul respectiv.
Protocolul USB definete patru tipuri de pachete de date:
pachet de semnalizare (Token Packet)
pachet de date
(Data Packet)
pachet de dialog
(Handshake Packet)
pachet special
(Special Packet)
Toate pachetele conin la nceputul lor un cmp de sincronizare, numit SYNC care permite
buclei PLL pentru refacerea tactului din receptor s se sincronizeze, i un cmp identificator
de pachet, numit PID (Packet Identifier).
SYNC este primul cmp din orice pachet USB. Cmpul de sincronizare este constituit dintr-o
serie de bii care produc un ir dens de tranziii utiliznd schema de codificare NRZI cerut de
standardul USB. Cmpul apare ca o serie de trei tranziii 1/0 urmat de o marc cu limea a
dou impulsuri. Datele din cmp au succesiunea de valori 0000 0001. Cmpul PID urmeaz
cmpului SYNC ntr-un pachet USB i are lungimea de 8 bii. Primii patru bii indic tipul
pachetului, iar urmtorii patru sunt n ordine primii patru complementai (complement fa de
1) i sunt folosii ca bii de verificare pentru a confirma acurateea primilor patru.
Orice transfer ncepe prin trimiterea de ctre gazd a unui pachet de semnalizare. Un pachet
are 32 de bii mprii n cinci cmpuri. Structura pachetului este reprezentat n figura 3.3A.
Informaia propriu-zis este transferat n sistemele USB sub forma unor pachete de date.
Structura acestui pachet este dat n figura 3.3B. Dup cmpurile SYNC i PID urmeaz
cmpul de date care este compus dintr-un numr ntreg de octei, de la 0B la 1023B.
Corectitudinea cmpului de date este asigurat prin cmpul de verificare ciclic de 16b aflat la
sfritul pachetului.
Pachetele handshake sau de dialog sunt folosite pentru a raporta starea unui transfer de date,
pentru a indica recepia cu succes a datelor sau pentru a ntoarce valori care indic acceptarea/
respingerea unei comenzi sau o stare de HALT la dispozitiv. Acest tip de pachet este compus
doar din dou cmpuri; SYNC i PID. Structura este reprezentat n figura 3.3C.
Cmpul PID definete trei categorii de pachete handshake:
22
SYNC
PID
Cmp
adres
Endpoint
8b
8b
7b
4b
SYNC
PID
DATA
CRC
8b
8b
0-
16b
SYNC
PID
8b
8b
CRC
5b
B
23
FT245BM
3,3V
D+
D-
Timer
Generator al
tensiunii de 3,3V
Motor serial
USB
Emitor/
Receptor USB
Generarea
protocolului
Buffer de
recepie FIFO
128 octei
Buffer de
emisie FIFO
384 octei
Control
FIFO i
interfa
paralel
D0D7
RD
WR
TxE
RxF
x8
EEPROM serial
Scrierea datelor se face cnd TxE este n stare 0 logic. Dup memorarea octetului n bufferul
de transmisie TxE devine din nou 0 logic, figura 3.5. La recepia datelor se folosete RxF care
n stare 0 logic anun c s-a recepionat un caracter, figura 3.5.
D0D7
RxF
RD
WR
TxE
D0D7
24
Circuitul
FT232BM are o
schem
bloc
asemntoare,
diferena
fiind
blocul de interfa
care este n acest
caz
serial.
Semnalele sunt cele
de la RS232: TxD,
RxD, RTS, CTS,
DTR, DSR, DCD,
RI i n plus
TxDEN un semnal
de
validare
transmisie necesar
la
standardul
RS485.
Dou semnale care
arat c se transmit
sau
se
recepioneaz date
TxLED i RxLED
pot s fie folosite la
comanda
unor
indicatoare
luminoase
de
activitate.
Protocoalele
permise sunt cele
hard DTR sau CTS
i soft Xon-Xoff.
Un
circuit
generator de rat de
Baud asigur tactul
standard
necesar
transmisiei.
25
26
Uurina implementrii unei interfee USB a condus la realizarea unui proiect prin care a fost
realizat o lucrare de laborator [4]. Proiectul a constat n realizarea unei plci de interfa
USB paralel cu circuitul FT245BM. La partea paralel a circuitului a fost conectat o bar 8
de LED-uri ca ieire i 8 ntreruptoare ca intrare, figura 3.8. Sensul datelor a fost stabilit de
un microntreruptor. Circuitul FT245BM a fost lipit pe partea din spate a plcii. Studenii au
primit software-ul de lucru i au avut ca sarcin aprinderea LED-urilor i citirea
ntreruptoarelor.
Viteza este de 1,5 Mbps la USB 1.0 (Low Speed), 12Mbps la USB 1.1 (Full Speed);
Conine 7 endpoint-uri cu dimensiunile de 64 octei (endpoint 0, de control), 256
octei (endpoint 1) i cte 64 octei celelalte;
Conine o memorie dual port DPRAM de 832 de octei pentru endpoint-uri.
Schema bloc a interfeei USB integrate este dat n figura 3.9.
27
tact
Regulator
tensiune
2MHz
Interfaa USB
D+
DPLL
refacere
tact
D-
Prescalare tact
24x
DPRAM
USB
VBUS
VC
VC
VBUS
VBUS
VBUS
D+
D+
D+
D-
D-
D-
b
Figura 3.10: Modurile de lucru ale MC
28
Comand
alimentare
Gazd
USB
Pipe 6
Endpoint 6
Buffer
Program
client
Endpoint 1
Buffer
Endpoint 0
Buffer
Pipe 0
Mod Idle, n care CPU este oprit, repornirea fiind posibil la orice ntrerupere USB;
Mod Power Down, n care CPU i periferia sunt oprite, repornirea fiind posibil doar
la anumite ntreruperi USB;
Mod Freeze Clock, n care tactul pentru USB este oprit. Intrarea n acest mod se poate
comanda printr-un bit ntr-un registru de comand USB. Repornirea este posibil doar
la anumite ntreruperi USB.
Modul de lucru ca gazd USB sau dispozitiv USB este determinat de valoarea logic a unui
pin (UID) sau software prin poziionarea unui pin ntr-un registru USB. Modul de lucru Low
Speed sau Full Speed se poate selecta prin valoarea logic a doi pini externi. Valorile logice
de comand pot fi stabilite local cu rezistoare sau de la distan.
29
n funcie de modul de lucru ales pentru interfaa USB, software-ul trebuie s comande
urmtoarele aciuni:
1.Pornirea interfeei USB
pornirea regulatorului de tensiune;
configurarea PLL, validarea PLL i comanda unui ntrzieri pentru ca PLL s se
sincronizeze;
validarea i configurarea interfeei USB prin alegerea vitezei, configurarea endpointurilor etc.;
ataarea unui dispozitiv USB.
2.Oprirea interfeei USB:
detaarea dispozitivelor USB;
invalidarea interfeei USB, a circuitului PLL i a regulatorului de tensiune.
Intrarea n modul de lucru cu economie de energie se face astfel: se oprete tactul, se oprete
bucla PLL, se valideaz ntreruperile care scot interfaa din acest mod de lucru, se oprete
CPU. Reintrarea n modul de lucru se face cu aceleai operaii n ordine invers. Ca exemplu
de transfer de date prin USB, n figura 3.12 se arat diagrama de timp pentru un transfer de
date de scriere:
Linia USB
SETUP
OUT
OUT
IN
RXSTPI
RXOUTI
TXINI
CONFIGURARE
DATE
STARE
30
3.2.IEEE 1394
IEEE 1394 este o interfa serial cunoscut sub numele de FireWire (Apple), i.LINK (Sony)
i LYNX (TI). Interfaa a fost adoptat de HANA (High Definition Audio-Video Alliance) ca
interfa standard disponibil i wireless, pe fibr optic sau pe cablu coaxial. Dezvoltarea
interfeei a nceput n 1980 i a fost ncheiat n 1995. IEEE 1394 a fost aplicat i n aviaia
militar ca magistral pentru F-22 Raptor i F-35. Navetele spaiale NASA au folosit IEEE
1394 pentru anumii senzori. n industria auto a fost implementat o versiune numit IDB
1394. Cu toate c IEEE 1394 nu are rspndirea pe care o are USB, majoritatea camerelor
digitale sunt echipate cu o astfel de interfa.
Ca i n majoritatea comunicaiilor seriale transferul de date este bazat pe pachete. Canalul
comun de date este conceput s poat fi folosit pe rnd de fiecare dispozitiv care l solicit.
Exist un interval de timp specificat (numit fairness interval) n cadrul cruia un dispozitiv are
accesul la canalul de date comun. Dup ce dispozitivul a trimis un pachet de date se ateapt
scurgerea unui timp de separare (numit sub-action gap) dup care un alt dispozitiv poate
31
trimite un pachet. Dac dup scurgerea timpului de separare nici un dispozitiv nu are de
transmis vreun pachet, urmeaz o secven de reset.
Pentru a face posibil funcionarea dispozitivelor care necesit flux de date n timp real,
IEEE-1394 folosete un mod special de transfer, modul izocron, ca i USB. Un dispozitiv ce
necesit date izocrone emite la fiecare 125s un pachet special de temporizare prin care
asigur prioritatea transferului. Aceast schem de arbitrare garanteaz un minim de buffer-e
pentru date audio sau video (1 byte la dispozitive audio, pn la 6 bytes la dispozitive video).
Perioada de 125s coincide cu perioada de eantionare din sistemul de telefonie digital,
astfel interfaa IEEE-1394 poate fi plasat n sistemul ISDN (Integrated Service Digital
Network).
IEEE 1394 este asemntoare cu USB, aa nct este util o comparaie:La IEEE 1394 nu este
nevoie de un calculator gazd;
IEEE 1394 asigur o vitez efectiv de transfer mai mare dect USB ( dovedit pe
sistemul de operare MAC OS X dar cu rezultate contradictorii sub Windows);
Implementarea IEEE 1394 are costuri mai mari: licena Apple (0.25$/sistem) i
hardware mai scump cu 1-2$;
Fiecare dispozitiv IEEE 1394 are un identificator propriu unic, (IEEE EUI-64) care
este o adres asemntoare cu adresa MAC de 48 de bii.
32
Se poate implementa o reea de calculatoare prin legturi IEEE 1394 n mod IPv4 sau IPv6.
Sistemele de operare care include suport pentru acest tip de reea sunt MAC OS X, Windows
ME, 2000, XP i Server 2003. Windows Vista i Server 2008 nu mai conin acest suport.
n figura 3.14 este dat un tabel cu conexiunile la conectorii IEEE 1394 cu 4, 6 i 9 pini i
structura unui cablu IEEE 1394.
4 pini
6 pini
9 pini
Funcie
Descriere
Vcc
30V nestabilizat
Mas
TPB-
semnal diferenial B
TPB+
semnal diferenial B
TPA-
semnal diferenial A
TPA+
semnal diferenial A
ecran A
ecran B
Perechea A,
torsadat
Alimentare
Ecran
Perechea B,
torsadat
Figura 3.14: Tabel cu conexiunile la conectorii IEEE 1394 (sus) i structura unui cablu IEEE
1394 (jos)
Codificarea datelor D/S este de fapt o codificare NRZ cu transmiterea tactului i necesit 2
linii de semnal, una de date i una de strob. Un SAU Exclusiv ntre cele 2 semnale
reconstituie tactul, figura 3.15. Petru transmisia datelor este nevoie de ambele perechi
FireWire, deci este posibil doar un transfer half duplex. Codificarea este aplicat la FireWire
400. Codificarea 8B10B a fost imaginat de Al. Widmer i P. Franaszek de la IBM n 1983 i
IBM a obinut un patent. Rspndirea codificrii a luat avnt dup expirarea patentului.
Aplicaiile dovedesc eficiena codificrii: PCI Express, SATA, SAS, Fibre Channel, IEEE
1394b, Gigabit Ethernet (mai puin la 1000BaseT), DVI, HDMI, USB 3.0 i seamn cu
codificarea folosit la CD (Eight to Fourteen Modulation).
33
Data
Strob
Data
XOR
Strob
34
n figura 3.16 sunt prezentate dou spaii de lucru unite cu un bridge. Cele 2 spaii sunt izolate
din punctul de vedere al traficului de date. Spaiul 1 de lucru ocup mare parte a benzii din
cauza traficului video, dar n spaiul de lucru 2 calculatorul are ntregul control al traficului.
Este posibil ca i calculatorul 2 s solicite date video, chiar dac calculatorul 1 este oprit.
Este figurat un repetor care mrete distana de conectare i un splitter care adaug 2 porturi
unui port IEEE 1394.
Spaiul 1
Imprimant
Splitter
Bridge
Repetor
Calculator 1
Spaiul 2
Calculator 2
Camer digital
Imprimant
Pentru a transmite date n mod asincron dispozitivul IEEE 1394 compune un cadru care
conine adresele sursei i destinaiei, apoi date i CRC. Cnd receptorul accept datele un
cadru de confirmare este trimis la transmitor. Transmitorul are posibilitatea s trimit nc
63 de cadre continuu pentru a mri viteza de transfer. Dac cadrul de confirmare returneaz o
eroare se aplic o metod de reacie la eroare.
n mod izocron emitorul solicit un canal izocron iar dac receptorul l accept i se asigur
un interval de timp de transfer pentru a asigura banda necesar transferului. Se pot defini pn
la 64 de canale izocrone. n exemplul din figura 3.17 n pachetul de date de 125s sunt
definite 2 intervale de timp pentru 2 transferuri izocrone. Timpul rmas liber se poate folosi la
transferuri asincrone.
35
Canal izocron 2
Figura 3.17: Transferuri izocrone pentru a asigura un flux de date n timp real
Nivel tranzacie
Nivel legtur
LLC TI
TSB12
Nivel fizic
PHY TI
TSB41
TI
TSB43C
Audio/
video
Nivelul bus-management
definete funciile de baz de control precum i registrele de control i de stare necesare
dispozitivelor conectate pentru a-i face porturile operaionale. Acest nivel se ocup i de
asigurarea canalelor, de arbitrare, mastering i de erori.
Nivelul de tranzacie
mediaz operaiile de scriere i citire. Standardul permite la acest nivel operaii cu cuvinte de
lungime variabil.
36
Nivelul de legtur
realizeaz controlul logic n legtura IEEE 1394. Acest nivel realizeaz formarea cadrele la
transmisie i extragerea informaiei din cadrele recepionate.
Nivelul fizic
presupune att protocolul transferului ct i mediul efectiv de transfer. Partea de protocol
controleaz accesul la legtur, iar partea de mediu este constituit din cabluri i conectori. La
acest nivel se realizeaz codarea i decodarea datelor, se asigur nivelele de tensiune necesare
i se face arbitrarea magistralei.
Circuitele IEEE 1394 au un grad de complexitate mai mare dect cele USB, unul dintre
motive fiind acela c pot lucra i independent de calculatorul gazd. Multe circuite sunt
realizate cu magistral PCI pentru a fi utilizate n calculatoare PC. n figura 3.18 sunt date
cteva exemple de circuite i plci i nivelele OSI pe care le acoper. A fost figurat un circuit
care acoper nivelul fizic (PHY Pysical Layer Controller) i unul care acoper nivelul de
legtur (LLC Link Layer Controller). Unele circuite, aa cum este TSB43C de la Texas
Instruments acoper mai multe nivele i ncorporeaz blocuri de prelucrare audio video, un
alt motiv pentru complexitatea mai mare a circuitelor.
Placa SedNet de la Averna [6] este un sistem de dezvoltare IEEE 1394 cu microcontroller
Motorola i arat ca n figura 3.19.
Acest sistem de dezvoltare este o soluie hardware i software complet pentru gestionarea
unei comunicaii IEEE 1394 ntre aplicaia unui client care ruleaz pe un microcontroller care
se conecteaz cu aceast plac prin intermediul unor linii de I/O sau o aplicaie client care
ruleaz pe microcontrollerul plcii SedNet. Partea software se numete Micro-Stack, ruleaz
pe microcontrollerul plcii i realizeaz nivelele bus-management i tranzacie din
comunicaia IEEE 1394. Exist i varianta de a cumpra sursa programului Micro-Stack i de
a o porta pe un alt microcontroller pentru a dezvolta o soluie hardware proprie. Alimentarea
plcii este realizat cu alimentator propriu sau prin cablul IEEE 1394, dar n al doilea caz
acest caz nu este posibil izolarea galvanic ntre controllerul de nivel fizic i restul plcii.
Schema bloc a plcii SedNet este dat n figura 3.20.
37
SedNet
1
2
Controller
de nivel
fizic
TSB41
PHY
Izolare
galvanic
Link
Controller
TSB12
LLC
Motorola
MCore
MMC2107
3
Date
direct
3 porturi
IEEE 1394
256k RAM
static
Conectori I/O
Figura 3.20: Schema bloc a plcii SedNet
Microcontrollerul MMC2107 are ncorporat 128k FLASH iar pentru testare i debugging
portul JTAG este scos la pinii de I/O. Accesul este posibil de la distan prin IEEE 1394 la
toate resursele plcii.
Se pot conecta maximum 62 dispozitive IEEE 1394, cu viteze de transfer posibile 100, 200 i
400Mbps. Placa suport att transferuri izocrone ct i asincrone, datele putnd fi preluate
direct, fr intermediul microcontrollerului MMC2107 de la controllerul de nivel legtur.
Legtura direct este recomandat pentru transferul datelor cu volum mare, cum ar fi cele de
la dispozitivele video. Semnalele de legtur cu microcontrollerul sunt cele obinuite - un port
RS232, SPI, JTAG, semnale de ntrerupere, reset, tact, linii de I/O etc. Placa a fost special
conceput pentru aplicaii nglobate care nu conin PC pentru c nu are interfa PCI.
38
TPA0+
TPA0-
Port 0
TPB0+
TPB0TPA1+
TPA1-
Port 1
Decodare
date
Arbitrare i
controlul
liniei
Interfaa
spre
nivelul de
legtur
Date D0-D7,
Semnale de
comand i
stare
TPB1+
TPB1TPA2+
TPA2-
Port 2
Codare date
TPB2+
TPB2-
TPBIAS0
TPBIAS1
TPBIAS2
Generare
tensiune
Generator tact,
multiplicare PLL
Circuitul admite lucrul cu izolare galvanic spre controllerul LLC. Pentru aceasta, n cazul
validrii izolrii galvanice furnizeaz date n mod diferenial spre LLC pentru ca s poat
trece printr-un transformator.
Datele sunt transmise ntre PHY i LLC n format paralel pe 2, 4 sau 8 bii, funcie de viteza
de transfer cerut i sunt stocate ntr-un buffer. Dup codarea datelor ele sunt transmise serial
pe linie cu tactul de 392,216MHz, 196,608MHz sau 98,304MHz ceea ce realizeaz vitezele
de transfer S400, S200 sau S100. Datele codate sunt transmise diferenial pe perechea TPA
iar tactul pe TPB. La recepie transmitoarele de linie sunt invalidate i se face recepia
datelor i decodificarea lor cu aceleai variante de tact. Datele sunt refcute cu ajutorul strobului, codificarea fiind D/S, apoi sunt grupate pe 2, 4 sau 8 bii n format paralel, resincronizate
i transmise ctre LLC cu tactul de 49,152MHz.
Fiecare port IEEE 1394 este prevzut cu comparatoare a tensiunii comune preluate cu divizor
rezistiv cuplat ntre liniile difereniale. Informaia oferit de comparatorul de pe liniile TPA
este folosit n timpul arbitrrii pentru stabilirea vitezei urmtorului pachet de date.
Comparatorul de pe liniile TPB stabilete dac exist o conexiune. Impedana liniei de
39
transmisie este de 110 i liniile sunt adaptate la capete cu cte 2 rezistoare serie de cte
56. Tensiunea este de 1,86V i este generat de PHY pentru fiecare port.
Circuitul LLC TSB12LV32 este un circuit care acoper nivelul legtur. Circuitul este
ncapsulat ntr-o capsul de 100 de pini. Schema bloc a circuitului este dat n figura 3.22.
Nucleul LLC
Controller
PHY
Interfaa
microcontroller
FIFO
2k ATF
2k GRF
Adrese 7 bii
Adrese 7
bii
Date 32 bii
Date 16
bii,
comenzi,
stri
D0-D15
Control,
tact
Circuitul LLC asigur transmisia i recepia cadrelor de date la viteza de maximum 400Mbps
prin intermediul celor 2 FIFO de 2koctei. Circuitul formeaz /descompune cadrele,
calculeaz i ataeaz CRC-ul. Circuitul poate administra magistrala (bus manager) i poate
conduce transferuri izocrone (Isochronous Resource Manager IRM).
Interfaa cu
microcontrollerul este paralel pe 8/16 bii la frecvena de maximum 60MHz. Cele 2 FIFO de
2k la recepie (General Receive FIFO GRF) i transmisie (Asynchronous Transmit FIFO
ATF) sunt accesibili de ctre microcontroller. Portul direct de date (Data Mover Port DM)
poate recepiona i transmite date izocrone, asincrone i streaming cu tact de maximum
25MHz i la port se conecteaz de regul o memorie de capacitate mare.
Ca i microcontroller gazd se pot folosi microcontrollere din familia Motorola 68000 sau
Freescale ColdFire fr hardware suplimentar. Microcontrollerele i microprocesoarele
Freescale folosesc o arhitectur particular a magistralei externe, numit FlexBus cu varianta
Mini-FlexBus [7], pentru conectarea n exterior a memoriei sau altor circuite, asemntoare
cu magistrala prezentat n capitolul 2.
Ultimul circuit amintit aici este TSB43CA43A, care include att controllerul PHY ct i cel
LLC, precum i funcii audio video. Circuitul se bazeaz pe un nucleu ARM7, are 176 pini i
este destinat ca soluie single chip pentru interfaarea dispozitivelor audio video prin IEEE
1394. Cele 3 porturi IEEE 1394 care echipeaz circuitul pot asigura o rat de transfer de
maximum 400Mbps. Circuitul are schema bloc din figura 3.23.
40
Blocul audio video se interfaeaz cu sursa de semnal prin dou canale seriale HSDI (High
Speed Data Interface) prin care pot circula date standard MPEG2-DVB (Digital Video
Broadcasting, care este un mod de transmisie digital compresat al semnalului video ntr-un ir
MPEG, datele fiind modulate OFDM, Orthogonal Frequency Division Multiplexing). Alte
standarde admise sunt DV (Digital Video), DSS (Direct Satellite System, sistem proprietar al
DirecTV, SUA, cu codare QPSK i cadre de 127 octei), audio DAC etc.
TSB43CA43A
ARM7TDMI
1
2
Controller
de nivel
fizic
Link
Controller
256ko
program
3
Criptare / decriptare
HSDI
Interfa
paralel 16
bii
UART
JTAG
Linii I/O
Date
audio/
video
n 1998 5 firme (Hitachi, Intel, Matsushita, Sony i Toshiba) au creat o asociere pentru a
asigura protecia datelor audio video transmise prin cablu, protecie numit DTLA Digital
Transmission Content Protection. Circuitul TSB43 conine un bloc DTLA (Digital
Transmission Licensing Administrator) care asigur criptarea /decriptarea datelor cu ajutorul
unui cifru realizat de Hitachi numit M6, prevzut pentru fiecare canal HSDI. Calculele
matematice sunt efectuate pe 160 bii.
Unitatea central este ARM7 la 50MHz cu mod de funcionare pe 32 de bii i 16 bii, cu
256koctei memorie de program i suport JTAG pentru test i punere la punct. Interfaa cu
exteriorul este printr-o interfa paralel de 16 bii n mod sincron sau asincron la care se
poate conecta o memorie extern sau un alt circuit. Un port UART asigur transferul de date
la viteze mici. 11 linii de I/O de uz general completeaz posibilitile de conectare a
circuitului cu exteriorul.
41
Bibliografie
[1] Filatova
A.,
USB
3.0
Poised
for
Success,
2009,
[online],
http://exectweets.com/2009/11/30/superspeed-usb-poised-for-success/
[2] www.ftdichip.com, [online]
[3] Stedman I., PIC USB Interface, [online],
http://www.ianstedman.co.uk/Projects/PIC_USB_Interface/pic_usb_interface.html
[4] Gerigan C., Ogrutan P., USB Controller- Educational aspects, The 10 International
Conference on Optimization of Electrical and Electronic Equipment, Optim 2006, ISBN
973-635-702-3, Brasov
[5] Teensy++ USB Development Board, [online]
[6] http://www.averna.com/en/products/ieee1394/hardware.php
[7] Lobdell M., Using the Mini-FlexBus External Bus Interface for ColdFire Microcontrollers
AN3854/2009, Freescale Semiconductor
42
Tabel. 4.1: Niveluri admise la intrare pentru 3 configurri ale pinilor de intrare (tensiunea de
alimentare VCC=5V)
Tip de nivel pentru nivel
High la intrare
Nivel CMOS cu histerezis
Nivel TTL
Nivel auto
Obinerea tactului intern prin multiplicarea tactului extern cu bucl PLL are 2 avantaje
majore:
Tactul extern poate fi de valoare mai mic, ceea ce nseamn o generare de perturbaii de
valoare mai mic.
Este posibil alegerea factorului de multiplicare prin software, deci pentru aplicaii care
accept viteze mai mici se obine un consum mai mic de la sursa de alimentare.
Pentru mrirea siguranei n funcionare, anumite modele de MC au integrat un tact de rezerv
RC integrat i un supervizor de tact. Atunci cnd supervizorul de tact detecteaz dispariia
tactului principal sau a subtactului comut pe tactul de rezerv (cu frecvena, precizia i
stabilitatea mai mic dect tactul principal sau subtact) i MC execut un program de urgen
(salvare date, comunicarea strii de defect etc.). Modulaia tactului are rolul de a reduce
interferenele electromagnetice (EMI) prin mprtierea spectrului semnalului de tact.
Modulele electronice care echipeaz un autovehicul au cteva sarcini care pot fi grupate n
urmtoarele categorii:
Preiau mrimi neelectrice prin intermediul senzorilor, prelucreaz valorile electrice dup
conversia analog numeric, comand elemente de execuie i eventual afieaz rezultate.
Comunic ntre ele pentru a se informa reciproc despre evenimentele din sistem.
Interfeele care echipeaz MC utilizate n auto trebuie s ndeplineasc n principal cteva
condiii importante:
Sigurana n funcionare (pentru c la viteza de rulare o eroare poate duce la pierderea de
viei omeneti)
Consum redus de energie (pentru c alimentarea se face de la baterie)
44
Pentru comunicaii ntre module trebuie folosite ct mai puine fire (cablajele sunt scumpe
i nesigure).
De regul, toate MC utilizate n prelucrarea mrimilor neelectrice trebuie s conin n
structur convertoare ADC, minimum 8 canale de conversie, cu aproximri succesive avnd
rezoluia de 10 bii. Toate aceste canale pot fi folosite i cu o rezoluie de 8 bii. Modul de
funcionare trebuie s permit conversii continue i baleierea unui grup de canale de achiziie
n mod continuu. Grupul de canale poate fi definit software. De asemenea achiziia poate fi
declanat software, printr-un semnal extern sau periodic, determinat de un timer. Timpul de
conversie de cteva microsecunde face posibil achiziia oricror semnale din domeniul auto.
Precizia i acurateea rezultatelor este mbuntit de posibilitatea de programare a timpilor
de eantionare i de meninere. Unele MC sunt echipate cu convertoare DAC, de regul
canale de 10 bii pentru a putea comanda sisteme analogice.
Multe din elementele de execuie sunt construite pe baza motoarelor pas cu pas i mai puine
pe baza motoarelor de curent continuu. Motoarele pas cu pas ofer precizie de poziionare i
simplitate de comand la costuri mici. Astfel, multe MC sunt echipate cu interfee specializate
pentru comanda motoarelor pas cu pas i a celor de curent continuu. Pot fi comandate att
motoarele pas cu pas unipolare ct i cele bipolare. Comanda fazelor cu un semnal PWM face
posibil controlul precis al curentului prin nfurare. Conectarea unei nfurri ntre 2 module
de control permite comanda cu cureni n ambele sensuri n nfurare, deci o comand
bidirecional pentru un motor de curent continuu. Driverele integrate permit comanda
nfurrilor cu curent mare, aa nct motoarele de mic putere pot fi conectate direct la MC.
De exemplu indicatoarele de bord (vitez, turaie) sunt realizate actual cu motoare pas cu pas.
Multe elemente care trebuie afiate sunt mai bine acceptate dac sunt afiate pe LCD. Multe
MC din familiile pe 8, 16 i 32 de bii conin interfee pentru comanda unui LCD n mod
caracter. La MC care echipeaz bordul auto este important semnalizarea auditiv pe lng
cea vizual. De aceea unele MC au integrat o interfa de generare sunete, cu posibiltatea
reglrii volumului i posibilitatea generrii tonurilor cu volum descresctor.
Interfeele specifice comunicaiilor de date n domeniul auto sunt:
1.LIN (Local Interconnect Network) este o interfa care realizeaz o comunicaie serial
asincron punct la punct pe un singur fir. Rata maxim de transfer este de 4 MBd i distana
de transmisie, n funcie de transceiverul folosit este de civa metri. Unul dintre circuitele
conectate la LIN trebuie s fie master, iar celelalte slave. Masterul genereaz un nivel space
pe perioada 13-16 bii urmat de un cuvnt 55H. Ca i slave, interfaa LIN detecteaz trecerea
liniei n space i calculeaz viteza de transmisie din cuvntul 55H recepionat. Ca avantaje se
poate meniona simplitatea interfeei, uurina de programare, viteza mare de transfer,
transferul pe un singur fir. Distana de transfer este suficient pentru aplicaii n interiorul
autovehiculului. Un dezavantaj major este lipsa siguranei n funcionare, nu se face nici
mcar verificarea corectitudinii transferului cu bit de paritate, de aceea aplicaiile trebuie s se
rezume la aplicaii care nu afecteaz sigurana autovehiculului.
45
2.CAN (Controller Area Network) este o magistral serial introdus de Robert Bosch GmbH
n 1986 pentru comunicaia de date ntre 3 module electronice pentru automobilele Mercedes,
deoarece interfaa UART nu putea lucra dect punct la punct. Magistrala CAN a fost dedicat
industriei auto dar s-a rspndit rapid i n alte domenii: automatizri, sisteme integrate etc.
Transmisia se face pe 2 fire, half duplex, cu mare vitez (pn la 1MBps) pe distane de
ordinul zecilor de metri. Arbitrarea magistralei se face prin detectarea coliziunilor iar un
sistem complex i eficient de detectare i tratare a erorilor face ca magistrala s fie extrem de
sigur. Fiecare interfa CAN conine cte un registru de erori pentru recepie i transmisie
care se incrementeaz cu 1 la o eroare minor i cu 8 la o eroare grav. Un numr de erori
mare face ca interfaa s fie exclus din comunicaie. Transmisia se realizeaz cu cadre i
fiecare mesaj conine un identificator care arat prioritatea mesajului. Interfeele receptoare
recepioneaz toate mesajele i le rein pe acelea cu prioritate mare sau cele care le sunt
destinate.
Avantajele nete pe care le are CAN fa de LIN au dus la rspndirea CAN, cu toate c preul
unui MC cu CAN este mai mare dect al celui cu LIN. Preul mai mare al CAN este justificat
de suprafaa mare de siliciu ocupat de aceast interfa, figura 4.1.
Figura 4.1: Chip de MC echipat cu 2 interfee CAN (sursa Fujitsu Microcontroller Seminar,
2003)
Se observ comparativ suprafaa ocupat de cele 2 interfee CAN fa de memorie. Multe MC
sunt echipate cu 2 canale CAN pentru a putea lucra n acelai timp cu CAN High Speed i
Low Speed.
Au fost standardizate mai multe tipuri de niveluri fizice de transfer pentru CAN. Un MC cu
interfa CAN poate lucra n oricare dintre aceste standarde fiind programat corespunztor i
avnd adugat n exterior transceiverul CAN potrivit. Standardele sunt:
ISO 11519 (CAN Low Speed) standardizeaz transmisia diferenial pe 2 fire. Cablul
este torsadat, ecranat sau neecranat, cu impedana caracteristic de 120 +/- 10%. La
captul liniei nu este nevoie de rezistene de adaptare pentru c viteza maxim de
transfer de 125kbps nu d natere la reflexii pe linie.
ISO 11898 (CAN High Speed) se folosete acelai tip de cablu, dar linia se adapteaz
cu rezistene de 120 pe fiecare fir. Lungimea de transmisie depinde de rata de
46
transfer. Astfel la 40 metri se poate obine 1Mbps iar la 6 km rata de transfer nu poate
depi 10kbps.
ISO 11898-3 (CAN High Speed tolerant la erori) este folosit ndeosebi n industria
auto. Linia este scurt de aceea nu este nevoie de adaptare, iar viteza maxim este
125kbps. Ca urmare topologia poate fi i alta dect cea liniar iar consumul de putere
este mai redus. Este de asemenea posibil transmiterea asimetric a datelor (pe un
singur fir) dac o linie se defecteaz. Pentru acest standard se folosesc transceivere
speciale cu comutatoare pentru transmisia simetric sau asimetric.
SAE J2411 standardizeaz transmisia CAN pe un singur fir i asigur o vitez de
83,3kbps (High Speed) i 33,3kbps (Low Speed). Transferul de date este dedicat
pentru zone mici, cum ar fi interiorul motorului. Firul de transmisie poate fi neecranat.
47
Controlul corpului
mainii
Control bord
CAN / LIN
CAN
-control motor
-control asiu
-control direcie
control frnare
-bord
-sistem navigaie
-ecran de
informare
-control confort
-clima
-ui
-iluminare
-trap
J1752/3, alte teste folosesc norme militare, MIL-STD-883 iar pentru unele teste se definesc
condiii specifice, descrise n AEC-Q100.
Rata de defectare timpurie se determin printr-o ncercare accelerat, supunnd probele la
cicluri de supra temperaturi urmate de reveniri la temperatura camerei, un timp de 48 de ore la
temperaturile maxime admise conform gradului declarat de productor sau 24 de ore la
temperaturi mai mari (cu 25 de grade pentru grad 0 i cu 20 de grade mai mari pentru grad 1,
2, 3 i 4).
start
D0
D1
D2
D3
D4
D5
D6
Parit
D7
stop
stop
start
D0
D1
D2
D3
D4
D5
D6
D7
Parit
Stop
D4
D5
D6
D7
D0
D1
D2
Stop
Date cu separare
Un bit de stop poate s lipseasc.
Tactul este prezent permanent.
D0
D1
D2
D3
Date fr separare
Tactul este generat doar cnd se transmit date, altfel linia este n stare mark.
Ca i slave, LIN UART recepioneaz trecerea liniei n space i trebuie s calculeze rata de
Baud din cuvntul 55H. Aceasta se realizeaz cu circuitul de captur care este legat intern la
LIN UART i care msoar timpul de recepie pentru octetul 55H. A opta parte a acestui timp
este timpul de bit. Conectarea circuitelor n mod LIN se face cu circuite transceiver LIN, ca n
figura 4.6.
50
Transceiver
LIN
Transceiver
LIN
TxD
TxD
RxD
RxD
Bus bidirecional
pe un fir LIN
Modulul LIN UART funcioneaz astfel: datele seriale de intrare sunt eantionate, se
detecteaz biii de start i stop i cnd este recepionat un cuvnt se verific paritatea (dac s-a
programat transfer cu paritate). Cuvntul recepionat este transformat n format paralel cu
tactul dat de generatorul de rat de Baud. Cnd s-a terminat recepia unui caracter se poate
cere o ntrerupere de recepie. Traseul este invers la transmisie, se serializeaz caracterul i se
insereaz biii de paritate, start i stop.
Comunicarea ntre 2 circuite cu LIN are loc astfel:
Se programeaz LIN UART
La transmisie se trimite un cuvnt n registrul de transmisie (la o ntrerupere de
registru gol)
La recepie se citete registrul de recepie (la o ntrerupere de registru de recepie plin
sau prin testarea unui flag).
n mod master slave, master-ul trimite un cuvnt care conine adresa slave-ului, ceea ce este
semnalizat de bitul A/D (ultimul bit nainte de stop, inserat n cuvntul transmis). Fiecare
slave verific adresa, dac mesajul i este adresat. Transferul are loc astfel:
Se programeaz LIN UART
La transmisie se trimite un cuvnt n registrul de transmisie cu adresa (bitul A/D=1)
Se trimite adresa slave-ului
Se trimite un cuvnt cu A/D=0
Se trimite cuvntul de date n registrul de transmisie
La recepie se verific bitul A/D
Dac A/D=1 se verific adresa
Dac adresa coincide se verific bitul A/D
Dac A/D este 0 se recepioneaz date prin citirea registrului de recepie.
51
Magistrala
LIN
ATA 6612
MC
ATmega88
LIN
ATA6624
Vbat
EN
WAKE
Ieire din
sleep sau
silent
KL-15
Protecie
subtensiune
Regulator
Watchdog
Vcc
NRES
NTRIG
TxD
RxD
Control
fronturi
Filtru
LIN
Detecie
supracurent i
supratemperatur
52
Ieirea din mod Sleep sau Silent i intrarea n mod Normal se face prin starea de Fail Safe, o
stare intermediar n care comunicaia LIN este oprit pn la restabilirea parametrilor
normali de lucru.
Blocul de protecie la scurtcircuit i supratemperatur comand intrarea n mod Sleep sau
Silent dac linia LIN este scurtcircuitat la mas sau la Vcc pn cnd circuitul se rcete.
Blocul de protecie la subtensiune verific tensiunea de +5V i comand un RESET al MC
prin semnalul NRES la scderea tensiunii sub o anumit limit.
Watchdog-ul ateapt un semnal de redeclanare pe pinul NTRIG ntr-un interval de timp
Twd i dac semnalul nu este primit se genereaz un RESET pe pinul NRES. Frecvena
oscilatorului pentru watchdog este ajustabil printr-un rezistor extern. n modurile Sleep i
Silent watchdog-ul este oprit. Diagrama de timp pentru un RESET generat de o subtensiune i
de watchdog este dat n figura 4.9.
Twd
Twd
Vcc
NTRIG
NRES
RESET (4ms) datorit
subtensiunii
53
Schema electric a unui nod LIN slave dat n figura 4.10 arat simplitatea constructiv n
aplicaii i numrul mic de componente care se folosesc.
4.3.Magistrala CAN
4.3.1. Descriere
CAN (Controller Area Network) este o magistral serial introdus de Bosch. Transmisia se
face pe 2 fire, half duplex, cu mare vitez, n condiii de siguran mare de funcionare. CAN
poate lega teoretic 2032 dispozitive dar practic se pot conecta maximum 110 noduri. Modurile
de detectare i tratare a erorilor fac ca aceast magistral s fie preferat pentru medii
perturbate sau pentru aplicaii auto, unde funcionarea sigur este important.
CAN folosete protocolul CSMA/CD+AMP (Carrier Sense Multiple Access/ Collision
Detection + Arbitration on Message Priority). nainte de a trimite un mesaj transmitorul
CAN verific dac magistrala este liber, ncepe s transmit, apoi verific existena unei
coliziuni. Acelai principiu este aplicat i la Ethernet, unde ca reacie la apariia unei coliziuni
transmitoarele abandoneaz transmisia i rencearc dup perioade aleatoare de timp, ceea
ce face ca transmisia s aib probleme la un numr mare de dispozitive cuplate pe linie. La
CAN este aplicat un alt principiu de reacie dup detectarea unei coliziuni. Fiecare mesaj
54
CAN conine un identificator (11 sau 29 bii) i toate nodurile receptoare recepioneaz
mesajul i i aplic un test de acceptan. Dac identificatorul este recunoscut ca relevant
mesajul este procesat, dac nu este ignorat. Prioritatea unui mesaj este dat de identificator, cu
ct identificatorul reprezint un numr mai mic, cu att prioritatea este mai mare. Mesajele cu
prioritate mai mic ateapt eliberarea magistralei pentru a fi trimise.
Linia de transmisie fiind unic pentru toate nodurile (dispozitivele cuplate), nivelul de 0 se
numete dominant i nivelul 1 recesiv. Dac 2 noduri transmit simultan unul valoarea 0 i
unul valoarea 1, linia trece n 0 (de aceea nivelul 0 se numete dominant). n acest mod se
poate detecta o coliziune, cnd un transmitor transmite un nivel de 1 i citete pe linie un
nivel de 0 nseamn c mai multe transmitoare transmit simultan. n acest caz transmitorul
cu prioritate mai mic abandoneaz transferul.
Dou noduri nu pot transmite mesaje cu acelai identificator. Dac acest lucru se ntmpl
totui i transmiterea este simultan nu se poate detecta coliziunea. Coliziunea este detectat
mai trziu, n cmpul de date i se utilizeaz mecanismul de gestionare a erorilor CAN i nu
mecanismul de arbitrare.
Cadrele CAN pot fi de 2 feluri:
Cadre de date
Cadre de cerere de informaie (Remote Frame). Un nod poate cere informaii transmind
un astfel de cadru. Nodul care dispune de aceast informaie trebuie s rspund.
Magistrala CAN poate fi:
CAN standard (Versiunea 2.0 A) cu identificator pe 11 bii
CAN extins (Versiunea 2.0 B) cu identificator pe 29 de bii.
Structura unui cadru CAN 2.0A este dat n figura 4.11.
SOF
Cmp de control
Cmp de arbitrare
Identificator 11 bii
Bus liber
RTR
R1
R0
Nivel 0 logic
(dominant)
DLC
Date
Cmp
CRC
ACK
EOF INT
CRC
Nivel 1 logic
(recesiv)
55
CRC- cmp de 15 bii de verificare a corectitudinii datelor prin cod ciclic. Cmpul CRC se
termin cu un bit recesiv.
ACK- este un cmp de confirmare format din 2 bii, primul este un bit dominant trimis de
toate nodurile care au primit mesajul iar al doilea bit este recesiv i este un bit de delimitare.
EOF- (End of Frame) este format din 7 bii recesivi
INT- (INTermission) const n 3 bii recesivi dup care magistrala se consider liber.
Cadrul de date CAN 2.0B este la fel cu cadrul de date 2.0A cu excepia cmpului de arbitrare
care este reprezentat n figura 4.12 i care conine 2 zone, una cu identificatorul pe 11 bii i
una cu restul de 18 bii de identificare:
Cmp de arbitrare
Identificator de 11 bii
SRR IDE
Identificator de 18 bii
RTR
Controllerele 2.0B (numite active) pot transmite sau recepiona mesaje cu ambele
structuri.
Controllerele 2.0A obinuite, la recepia unui cadru 2.0B vor genera o eroare.
Exist controllere 2.0A (numite pasive) care pot recepiona cadre 2.0B dar le vor
ignora.
Cadrul de cerere de informaie are structura unui cadru de date cu bitul RTR recesiv i fr
cmp de date, figura 4.13.
SOF
Cmp
CRC
Cmp de arbitrare
RTR
Identificator 11 bii
ACK
EOF INT
CRC
56
PROP
FAZA1
FAZA 2
Erori de bit
1. Eroare de mpnare (bit stuffing). Codarea datelor se face NRZ cu mpnare de
bii prin adugarea unui 1 dup 5 bii consecutivi de 0 sau un 0 dup 5 bii
consecutivi de 1. Nodul de recepie detecteaz un numr mai mare de 5 bii
consecutivi cu aceeai valoare logic.
2. Eroare de bit, cnd un transmitor care citete tot ce transmite detecteaz o
nepotrivire ntre ceea ce a transmis i ceea ce a recepionat (n alt parte dect
57
Erori de mesaj
1. Eroare de sum de control CRC
2. Eroare de cadrare. n cadrul CAN se transmit anumii bii cu valori predefinite.
Dac receptorul detecteaz un astfel de bit eronat se genereaz o eroare
(Frame, Format sau Form Error).
3. Eroare de confirmare, dac transmitorul determin c mesajul nu a fost
recepionat (nu s-a recepionat ACK).
Un modul CAN poate fi din punctul de vedere al gestionrii erorilor n una dintre 3 stri:
Stare activ, care este modul de operare normal n care apariia unei erori
poziioneaz un bit de eroare
Stare pasiv, este un mod n care poate opera normal, n condiiile n care nodul a avut
probleme dese de transmisie sau recepie a mesajelor.
Blocat, nu se pot transmite sau recepiona mesaje. Nodul poate iei din aceast stare
printr-un RESET comandat de calculatorul gazd.
Numrtorul de erori se modific n urmtoarele condiii:
La o recepie eronat numrtorul rx_count se incrementeaz cu 1
La recepia unui bit dominant dup transmiterea unui bit de eroare, rx_count se
incrementeaz cu 8.
Cnd un transmitor trimite un bit de eroare tx_count se incrementeaz cu 8.
Dup recepia cu succes a unui cadru rx_count se decrementeaz cu 1.
Nodurile accept maximum 7 bii dominani dup transmisia unui bit de eroare. Dac
se transmit / recepioneaz mai mult de 14 bii dominani sau 8 bii dominani urmai
de un bit de eroare rx_count se incrementeaz cu 8.
Cadrul de eroare este reprezentat n figura 4.15.
Cadru de eroare
Flag de
eroare
Delimitator
Observaie: acest cadru nu respect regula de codare CAN cu bit stuffing pentru c
delimitatorul este format din 8 bii recesivi.
Un cadru de eroare este transmis cnd un nod detecteaz o eroare. Cadrul transmis nu permite
altor noduri s accepte mesajul eronat. Dup transmisia cadrului de eroare toate nodurile
detecteaz violarea de cod i transmit cadre de eroare. Dup acest pas transmisia de cadre se
reia. Dac cadrul de eroare este pasiv (6 bii recesivi) magistrala nu se blocheaz.
Tipuri de CAN:
1. Basic CAN echipeaz controllerele mai ieftine. Conine 2 buffere de recepie de tip
FIFO i unul de transmisie. La recepie n timp de MC citete un mesaj, un altul se
poate recepiona n FIFO. Mesajele recepionate sunt verificate cu un filtru de
acceptan de 2 octei pentru a se identifica mesajele care trebuie preluate. Verificarea
identificatorilor este hardware i se face pe mai puini bii pentru a mri viteza.
Verificarea final a identificatorilor se face software. Cadrele de cerere de informaie
nu sunt generate hardware, ele trebuie generate prin program.
2. Full CAN conine un set de buffere de cadre numite csue potale. La iniializare
fiecrei csue potale i se asigneaz un identificator. Cadrele de cerere de informaie
sunt gestionate hardware. Filtrele de acceptan verific n ntregime identificatorii i
recepia se face n csua potal de destinaie.
4.3.2.Transceiver CAN Microchip MCP2551
Circuitul transceiver CAN este o interfa ntre semnalele digitale de la nivelul MC i
semnalul diferenial de magistral CAN. Transceiverul protejeaz MC de vrfurile de tensiune
prezente pe magistrala CAN datorit EMI sau descrcrilor electrostatice. Principalele
caracteristici ale circuitului sunt:
Implementeaz standardul ISO 11898 pentru nivelul fizic de transmisie
Viteza maxim de transfer este 1Mbps
Panta semnalului emis pe magistral poate fi ajustat extern ceea ce reduce spectrul de
frecven al perturbaiilor generate
Detecteaz erorile de mas (permanent dominant) i decupleaz driverul de ieire
Curentul de funcionare poate fi redus prin intrarea n starea de standby
Are protecie la scurtcircuit, la supratensiune i la supratemperatur
Se pot conecta pn la 112 noduri
Gama de temperaturi de funcionare poate fi cea industrial (I) 40C la +85C sau cea
extins (E) 40C la +125C
Capsula este PDIP cu 8 pini
Schema bloc a circuitului este dat n figura 4.16.
Starea logic dominant este atunci cnd ntre CANH i CANL tensiunea diferenial este mai
mare dect un prag (1,2V) iar starea recesiv cnd tensiunea diferenial este mai mic dect
un prag (0V). Circuitul poate fi comandat s intre ntr-o stare cu consum redus (standby)
printr-un nivel High pe pinul Rs. n mod standby circuitul citete magistrala CAN (mesaje
59
Protecie termic
TxD
Rs
CANH
CANL
Control driver
RxD
Vref
Referin
Receptor
MCP2551
Vss
Panta semnalelor emise pe magistral poate fi controlat cu un rezistor ntre pinul Rs i mas
(control posibil n modul de lucru cu vitez mic). n modul High Speed CAN, pinul Rs se
leag la mas. Dac durata inerii n 0 a magistralei depete 1,2ms (20 de bii dominani
consecutivi) driverul de ieire este decuplat de la linie.
Dac circuitul se supranclzete (mai mult de 165C) circuitul de protecie decupleaz
driverul de ieire pn le revenirea temperaturii la normal. Tensiunea de alimentare Vdd este
de +5V (ntre 4,5V i 5,5V) iar tensiunea de referin este Vdd/2.
60
61
Csua potal
Buffer
date 14
Message
Object 14
Canal CAN
Message
Object 1
Buffer
date 0
Message
Object 0
RX
TX
Timpul de bit
FCAN
TSYNC
TPRS
TPHS1
TPHS2
Punct de
eantionare
Punct de
transmisie
63
Canal A
Canal B
Sloturi statice
Segment dinamic
Minisloturi
64
Simbol
Cadrul conine:
Un bit de gestionare a reelei
Un bit care indic un cadru gol
Un bit de cadrare
Identificator de cadru pe 12 bii
Lungimea cadrului (n octei) codificat pe 7 bii
CRC pentru antet pe 11 bii
Identificator de mesaj (opional) pe 16 bii
Date, lungime variabil
CRC pentru date pe 24 de bii
Antet pe 5
octei
Date 0-254
octei + CRC
Modulul de ataare /
separare protocol separ
antetul de date i trimite
datele ctre gazd la
recepie i adaug
informaia de protocol la
transmisie.
Gazda
Interfaa cu gazda
Generarea protocolului
Transmisie
Recepie
1
Canal A
Canal B
Cadru 1
Cadru 2
Cadru 1
Cadru 2
Slot static 1
Numrtor de sloturi
Slot static 2
Segment static
+1
+2
+3
Cadru m
Numrtor de sloturi A
Cadru m+3
Canal B
Cadru m+3
m
+1
+2
Numrtor de sloturi B
+3
66
Rezultatele testelor sunt comunicate gazdei care poate decide excluderea nodului din
comunicaie.
n cazul n care comunicaia este iniiat de un eveniment extern (Event Triggered Mode)
cadrul curent este abandonat, figura 4.26.
Slave-ul abandoneaz cadrul
dup recepia simbolului
Segment static
Segment dinamic
Pauz
Simbol
Eveniment
extern
Segment static
Masterul
abandoneaz
cadrul curent
Cadrul abandonat
Cadrul iniiat de
eveniment
Microcontroller
gazd
Port A
RAM A
Port B
RAM B
Gestionare
mesaje
Interfaa cu
microcontrollerul
Suport DMA
i ntreruperi
RAM pentru
mesaje
Buffere de date
Gestionarea
erorilor
Gestionarea
tactului i a
timpului
Gestionarea
erorilor
68
MB91F465XA
Modulator de
tact
Supervizor
de tact
CPU 32 de bii
Core FR70
Tact 100MHz
FlexRay A
FlexRay B
Flash 544k
CAN A
CAN B
SRAM 32k
Module integrate:
-2 timere de 8 canale,
16 bii
-PPG 12 canale
-11 canale cerere
ntrerupere
-5 canale DMA
-Ceas de timp real
-Watchdog hardware
-17 canale ADC
-8 canale Input
Capture
-6 canale Output
Compare
LIN A
LIN B
LIN C
I2C
Figura 4.29: Schema bloc a microcontrollerului Fujitsu MB91F465XA
La
Automotive
Engineering
Exposition
n
(http://jp.fujitsu.com/microelectronics/events/exhibition/2007aee.html) n 2007
prezentat un demonstrator al modului de lucru cu magistrala FlexRay, figura 4.30.
69
Japonia
a fost
Driver de
anten
ATA5286
n pneu
Wake-up
125kHz
Receptor
wake-up
ATA5283
Microcontroller
cu transmitor
868MHz
ATAR862
Receptor
T5743
Date
868MHz
sau
433MHz
Senzor de presiune
Senzor de temperatur
Alimentare
70
ATAR862 este un circuit care conine 3 module n aceeai capsul: transmitor UHF (n
gama de frecvene 868-928MHz) cu modulare ASK/FSK, un microcontroller de 4 bii i o
memorie EEPROM de 512 bii. Circuitul este ncapsulat ntr-o capsul mic de 24 de pini
SSO24. Alimentarea este ntre 2-4V, fcnd posibil alimentarea cu o baterie Li cu o singur
celul, curentul absorbit fiind de 8,5mA. Gama de temperaturi este cea solicitat de domeniul
auto, fiind astfel posibil montarea n anvelop. Debitul maxim de informaie este 32kBaud.
Schema bloc a circuitului ATAR862 este dat n figura 4.32.
Enable
ATAR862
PLL
Amplificator anten
Microcontroller
Port 1
(2 linii)
CPU 4 bii
ROM 4kx8bii
RAM 256x4bii
EEPROM
32x16bii
Port 2
(4 linii)
Port 4
(4 linii/ funcii alternative)
Interfa
serial
Port 5
(3 linii/ funcii alternative)
Port 6
(2 linii/ funcii alternative)
Timer 1
(Watch dog)
Timer 2
8/12 bii
Timer 3
(8 bii)
71
Tact
SC
SO
TO3
1
T5743
Control
DEMOD
MC
AMP
LNA
FTB
PLL
VCO
72
Circuitul receptor ATA5283 este folosit pentru trezirea circuitului ATAR862 din modul
Sleep. Circuitul are 8 terminale i conine un amplificator de intrare pentru amplificarea
semnalului emis pe frecvena 125kHz i modulat n amplitudine (ASK). Dac nu exist
purttoare circuitul ateapt n stand by. Circuitul conine un bloc de detecie a unui preambul
(192 perioade nentrerupte ale purttoarei) i dup recepia acestui preambul circuitul devine
activ.
704 perioade
Semnal
ASK
Wakeup
Date
Antene de
emisie
wakeup i
recepie date
Emitor pentru
wakeup i MC
ATAR862, pentru
montare n pneuri,
alimentare cu
baterie
Receptor de
date i
driver de
anten
73
74
rezultatele obinute fiind n final comparate. De asemenea s-a adugat la sistemul de msurare
un senzor mecanic auxiliar de detecie a poziiei orizontale cu scopul de calibrare a senzorului
principal.
Sistemul de test a fost implementat cu un sistem de dezvoltare Fujitsu echipat cu un
microcontroller pe 16 biti MB90F352.
y
Operation
mode
Detection
mode
Operation
Detection
75
Vout
V cc
Unull
10
15
T(ms)
Semnal eantionat
Zp+2
Zp+1
Zp
1 cuant
Zp-1
1 ms
Zp-2
Zp-3
Zp valoare de nul
Smpl_cntr = 0;
Acc = 0;
NR_SMPL = 10;
Acc += ADC_Data;
Smpl_cntr++;
nu
Smpl_cntr <
NR_SMPL
da
76
Dup rularea ctorva teste s-a constatat c la fluctuaii de alimentare a modulului valoarea de
nul Zp nu este constant. Valoarea de nul se determin prin citirea ieirii convertorului analog
digital cnd senzorul se afl n stare nemicat. Pentru obinerea corect a valorii de nul s-a
implementat o procedur de calibrare software cu eantionare multipl i mediere, figura 4.41.
Prin parametrul NR_SMPL se definete numrul de eantioane din care se calculeaz prin
rotunjire valoarea de nul Zp .
Senzor
giroscopic
Sistem
de
dezvoltar
RS232
Figura 4.43: Afiarea unghiului de nclinare n mod grafic (stnga) i n mod caracter
(dreapta), i o fotografie a afiajului
Afiarea n mod grafic const din micarea (rotirea) unui obiect pe afior, acesta practic
urmrind orizontul in funcia datelor furnizate de senzorul giroscopic. Afiarea grafic a fost
creat din dou pri, fundalul nemicat si dou indicatoare care urmresc poziia orizontal i
indic unghiul de nclinaie curent. Pe fundal sunt marcate unghiul de nclinaie. Punctele de
77
marcare sunt puse din zece in zece grade pn la 40 de grade, poziia orizontal fiind
marcat cu puncte mai mari.
Peste fundal se suprapun indicatoarele specifice pentru fiecare unghi. Se reprezint
indicatoarele cu rezoluia de cinci grade. Din motive de economie a memoriei ocupate partea
de afior grafic s-a mprit in 4 cadrane, desennd indicatoare doar pentru un cadran. Prin
operaii de oglindire pe orizontala si verticala s-au alctuit imaginile aferente pentru celelalte
cadrane. Astfel din desenele realizate pentru cadranul 1 printr-o operaie de oglindire verticala
se ajunge la o imagine n cadranul 2, printr-o operaie de oglindire orizontala la cadranul 4 i
prin aplicarea ambelor operaii la cadranul 3. Afiarea n mod caracter a fost realizat prin
stocarea n memoria microcontrollerului a imaginilor grafice ale cifrelor, ceea ce asigur o
vitez mare de afiare cu un consum de memorie mare.
Avnd n vedere c sistemul conine ca element traductor un senzor giroscopic, la pornirea
sistemului nu se cunoate unghiul de nclinare, ceea ce este un dezavantaj al acestui sistem.
Prin rularea ctorva teste s-a constatat de asemenea c apar erori, iar calcularea unghiului de
nclinare are la baz adunri succesive a eantioanelor curente, ca urmare se poate ajunge la
rezultate incorecte prin acumularea erorilor de msurare.
Pornind din acest neajuns al acestui senzor s-a constatat necesitatea implementrii unui senzor
auxiliar de detecie a poziiei orizontale care are rolul de calibrare a senzorului principal n
momentul n care unghiul de nclinare este zero.
Metoda de testare static a sistemului de msurare a nclinaiei const din msurri succesive
ale semnalului furnizat de senzorul giroscopic n stare fix i trimiterea datelor la calculator
pentru analiz prin interfaa RS232., datele fiind recepionate de un program specializat de
citire a portului serial.
n figura 4.44 pe coordonata vertical este prezentat valoarea eantionului curent furnizat de
convertorul analog digital (stnga), precum i nivelul de tensiune al eantionului (dreapta).
Prima msurtoare a avut datele reprezentate n figura 4.44 i arat c peste semnalul util care
ar trebui s fie constant i egal cu valoarea de nul, se suprapun deviaii de la valoarea de nul
de mrimea a 7 LSB ceea ce este echivalent unei variaii de 34,16mV aceasta fiind
inacceptabil n cazul acestui sistem.
78
S-a realizat un sistem de testare dinamic a stabilitii sistemului de msurare prin micarea
senzorului de nclinaie cu un motor pas cu pas, figura 4.46.
Pentru implementare s-a ales un motor unipolar cu unghiul de pas de 1,8. Motorul pas cu pas
a fost comandat cu acelai sistem de dezvoltare cu care se face i achiziia i prelucrarea
semnalului de la senzorul giroscopic. nfurrile motorului au fost comandate prin
intermediul circuitului specializat ULN2003A.
Sistemul pornete dintr-o poziie fix i prin acionarea motorului face 50 de pai ceea ce este
echivalent cu 90 (50*1,8) schimb direcia de micare fcnd tot 50 de pai repetnd aceste
operaii de mai multe ori. Starea prezent a sistemului este afiat pe 2 afioare cu 7
segmente, precum i pe afiorul grafic, putnd verifica n orice moment corectitudinea
msurtorilor.
79
n graficul din figura 4.47 sunt prezentate dou seturi de msurtori, fiecare reprezentnd cte
o serie de pai fcui de motorul pas cu pas, una n sensul ceasului iar cellalt n sens invers.
Msurtorile au fost fcute separat, pe rnd, reprezentarea grafic s-a fcut pe un singur grafic
suprapunnd cele dou rezultate pentru o vizualizare mai bun.
n cazul ideal cnd sistemul a parcurs un ciclu de testare i se rentoarce n starea iniial
valoarea unghiului calculat trebuie s fie egal cu zero. Prin rularea multipl a ciclului de
testare s-a observat acumularea informaiilor eronate. Astfel se justific implementarea unui
sistem de calibrare a valorii unghiului de nclinaie calculat.
n figura 4.48 este prezentat dispozitivul mecanic cu motor pas cu pas pentru micarea
senzorului.
Calibrarea senzorului unghiular s-a realizat prin introducerea n sistemul de msurare a unui
senzor auxiliar de detecie a poziiei orizontale. Astfel cnd senzorul detecteaz poziia
orizontal a sistemului reseteaz valoarea unghiului de nclinaie calculat.
80
Figura 4. 48: Motorul pas cu pas i senzorul (stnga) i o fotografie a sistemului de test
(dreapta)
Dispozitivul de detecie a poziiei orizontale este alctuit dintr-un fotocomutator i un pendul
care indic poziia vertical, astfel cnd modulul se afl n poziie orizontal pendulul
obtureaz lumina, figura 4.49.
Pendul
81
propune o metod de compensare n timp real a erorilor. Cea mai bun soluie este folosirea
unui senzor de unghi absolut, cum este cel prezentat n [6].
3
2.5
2
1.5
1
0.5
96
91
86
81
76
71
66
61
56
51
46
41
36
31
26
21
16
11
Figura 4.49. Evoluia erorii n grade la o mie de cicluri de micare ale senzorului giroscopic
Cele mai multe aplicaii ale giroscopului sunt n domeniul navigaiei aeriene i spaiale.
Extinderea aplicaiilor ctre autoturisme se face n cadrul constrngerilor de pre. Micorarea
erorilor trebuie s fie realizat prin metode software n limita puterii de calcul a unui procesor
cu pre mic. n acest studiu metodele software nu au fost suficiente, de aceea s-a implementat
o metod de reset a erorilor la detecia poziiei orizontale. Pentru a se testa comportarea
dinamic a fost implementat un sistem de micare periodic a senzorului i msurare a datelor
care a dovedit eficiena determinrii poziiei orizontale [7]. n prezent sistemul este testat n
condiii reale pe autoturisme, unde apar erori suplimentare datorate vibraiilor, iar resetul
erorilor nu se face periodic.
82
Timer de baz
Cuar sau
generator
Cuar sau
generator
Generare tact
principal
Divizare
cu 2
Modulare tact
Generare
subtact
Divizare
cu 2 sau 4
Selecie
tact
Tact
PLL
Interfee
CPU
DMA
Tact
main
Watch Timer
Watchdog
Timer
Figura 4.50: Schema bloc a generatorului de tact tipic pentru microcontrollerele Fujitsu
Tactul de la bucla PLL poate fi modulat n 2 feluri:
modulaie n faz, semnalul modulator fiind un semnal triunghiular
modulaie n frecven, semnalul modulator fiind un semnal pseudo aleator.
Modulatorul poate fi validat sau invalidat cu un registru de comand, se poate alege tipul de
modulaie i se pot programa limitele de variaie ale frecvenei sau fazei. n general
comportarea cea mai bun din punct de vedere EMI se obine la variaia maxim a frecvenei
/fazei tactului, dar aceasta nu este o regul i n cele mai multe cazuri este nevoie de ncercri
experimentale.
La modelul MB90350 pe 16 bii tactul de la bucla PLL este modulat cu un semnal
triunghiular. Comanda modulatorului se realizeaz cu registrul CMCR (Clock Modulator
Control Register) care valideaz modularea. Limea impulsului de tact modulat variaz cu
+/- 0,8ns, ceea ce nseamn la frecvena maxim a tactului PLL de 24MHz o frecven
maxim a tactului main modulat de 25,45MHz. Interfeele care nu au tact PLL (Timerul de
baz, Watchdog Timer) nu pot avea ca tact tactul modulat. De asemenea cnd se utilizeaz
interfaa CAN nu se poate folosi tactul modulat.
Modelul MB90390 pe 16 bii admite ambele variante de modulaie. La modulaia n frecven
variaia ntre Fmax i Fmin este definit n 7 grupe, 1 fiind varianta cu variaia cea mai mic i 7
cu variaia cea mai mare. n figura 4.51 sunt date spectrele generate n gama de frecvene
150kHz-500MHz furnizate de Fujitsu n catalog pentru procesoarele de 32 de bii. Se observ
c prin modularea tactului se obine un spectru cu armonici superioare de amplitudini mai
mici.
83
V[dB/V]
50
V[dB/V]
50
40
40
30
30
20
20
10
10
-10
-10
0.1
50
450 f[MHz]
0.1
50
450 f[MHz]
Figura 4.51: Spectrul de frecven radiat n cazul unui tact nemodulat (stnga) i modulat
(dreapta)
La microcontrollerele pe 32 de biti semnalul de tact generat de PLL este modulat cu un
semnal pseudoaleator. La tactul modulat se poate modifica gradul de modulare i rezoluia de
variaie a frecvenei ntre Fmin i Fmax. Se pot programa 3 grade de rezoluie. Modulatorul
poate lucra cu tact ntre 16MHz i 48MHz, de aceea circuitul de modulare trebuie calibrat.
Calibrarea poate fi lansat hardware sau software. Semnalul de tact poate fi observat n
exterior la pinul MONCLK. Modulul CAN nu poate lucra cu tact modulat de aceea tactul este
furnizat direct printr-un circuit de prescalare.
4.7.1.Simularea modulrii tactului
Cteva simulri n MATLAB dovedesc utilitatea modulrii tactului. Un semnal
dreptunghiular a crui frecven variaz total aleator are armonicile superioare foarte mici, un
semnal a crui frecven variaz aleator ntre 2 limite are armonici mai mari iar un semnal cu
frecvena fix are armonici i mai mari.
Semnalul nemodulat are forma n timp i spectrul de frecvene date n figura 4.52.
Primul program realizeaz simularea unui semnal dreptunghiular a crui frecven variaz
periodic. Forma semnalului modulator este cea triunghiular sau cea dreptunghiular. Se
genereaz un semnal triunghiular cu funcia SAWTOOTH.
84
85
aleatoare se folosete funcia RANDOM, n care parametrul EXP specific distribuia folosit.
Semnalul dreptunghiular generat i spectrul sunt date n figura 4.55. Se poate observa c n
acest caz spectrul este cel mai redus, armonicile superioare fiind foarte mici. Din pcate acest
semnal dreptunghiular nu se poate folosi ca tact din motive funcionale.
86
Semnalul de tact vizualizat la pinul MONCLK este reprezentat n figura 4.57, la frecvena de
16MHz. La frecvenele de 32 i 48MHz aspectul semnalului este sinusoidal, datorit benzii de
trecere limitat a osciloscopului. n figura 4.57a este reprezentat tactul nemodulat iar n figura
4.57b tactul modulat n durat (PWM) i se poate observa uor aspectul diferit.
Figura 4.58 Spectrul de frecven msurat n cazul tactului de 16 MHz nemodulat (stnga) i
modulat (dreapta)
88
Un proiect realizat mpreun cu studenii din anul terminal, supervizat de compania Fujitsu a
fost un regulator de tensiune electronic cu microcontroller. Pentru testarea acestui modul a
fost realizat un stand de prob, figura 4.59.
Alternator
Sistemul integrat de
comanda
Baterie
89
Infurare
de excitaie
Energia motorului
mainii
ALTERNATOR
Microcontroller
FUJITSU 8FX
PWM
Input Capture
ADC1
ADC2
UART
Baterie (acumulator
auto) 12V
Sarcina variabilconsumatori
90
3. Daca turaia este peste limita aleas se msoar tensiunea pe baterie i se modific
factorul de umplere corespunztor cu valoarea msurat.
4. dat la 10-100 msurtori se msoar temperatura i se corecteaz factorul de umplere.
Programul a fost scris n C i assembler i a fost testat n mediul Softune Workbench 8FX pus
la dispoziie de Fujitsu.
n afar de sistemul de dezvoltare Concerto au fost folosite mai multe module de interfaare
cu procesul controlat:
Alimentarea microcontrollerului i a circuitelor anexe se realizeaz de la tensiunea
bateriei printr-un stabilizator serie clasic.
Valorile tensiunii pe baterie sunt 12V+/-1V cnd alternatorul nu se rotete i 14,4V+/0.2V cnd generatorul se rotete. Preluarea tensiunii de la baterie n vederea msurrii
a fost realizat prin decalarea tensiunii cu o diod Zenner (varianta low cost) sau cu un
montaj cu AO.
Msurarea frecvenei se face prin transformarea semnalului pulsatoriu preluat de la
diodele de redresare ale alternatorului n semnal dreptunghiular i limitarea tensiunii la
4.7V.
Comanda nfurrii de excitaie se face cu un canal PWM din microcontroller,
semnalul fiind amplificat de un tranzistor NMOS de tip IRF540.
Montajul format din sistemul de dezvoltare i circuitele de adaptare este artat n figura 4.61.
91
Se remarc cderea de tensiune de scurt durat din dreapta graficului. n graficul din figura
urmtoare se vd rezultatele aceluiai test n cazul utilizrii unui regulator electronic clasic. Se
poate constata o mai mic gam de timp n care regulatorul funcioneaz eficient precum i
comportarea la scurtcircuit, mult mai dezavantajoas.
92
60
50
40
30
20
10
0
1
Gunoi
nclzire
Casnice
Automobile
Pe primul loc se afl automobilele (51%), apoi aparatura casnic, (ex. frigider) (26%),
sistemele de nclzire i aer condiionat (18%) i gunoiul (5%). Este unanim acceptat c
emisia de bioxid de carbon este legat de consumul de combustibil i msurile de reducere a
consumului reduc i emisiile. Firmele constructoare de autovehicule cerceteaz intens
posibilitatea implementrii msurile de reducere a consumului, dar i utilizatorii pot avea o
contribuie semnificativ. Astfel, site-ul [17] ofer sfaturi de micorare a consumului.
n acest capitol un prim exemplu de aplicaie care are ca urmare economia de combustibil a
fost monitorizarea presiunii n pneuri. O alt aplicaie care, pe lng efectul principal urmrit
are i un efect benefic asupra mediului este direcia asistat electric.
93
Senzor de
poziie
Senzor poziie
Intrri digitale:
-temperatura motor
-tensiune baterie
........................
Validare
Software
94
Viteza de reacie a unui sistem EPS trebuie s fie mare, de aceea sistemul de control este
implementat cu dou microcontrollere pe 32 de bii, unul pentru preluarea datelor de la
senzorul de la volan i pentru comanda motorului iar cellalt pentru supervizare i
comunicaia cu calculatorul autoturismului. Microcontrollerul de comand a motorului are
nglobate interfee specifice de comand PWM (Pulse Width Modulation), canalele numite de
Fujitsu PPG (Programmable Pulse Generator), iar microcontrollerul de supervizare i
comunicaie are ncorporate interfee pentru cuplarea pe LIN (Local Interconnect Network),
CAN (Controller Area Network) i FlexRay. Un senzor de poziie a motorului verific dac
acesta a executat comanda dat de micarea volanului. Microcontrollerul de supervizare
valideaz funcionarea motorului i este informat dac acesta are erori de poziionare.
Resursele microcontrollerului de supervizare permit i achiziia i verificarea unor parametrii
auxiliari: temperatura motorului electric i temperatura motorului mainii, tensiunea bateriei
etc.
Bibliografie
[1]
[2]
[3]
Dong L., Zheng Q., Zhiqiang G., On Control System Design for the Conventional Mode
of Operation of Vibrational Gyroscopes, Sensors Journal, IEEE, 2008, Volume: 8 ,
Issue: 11, page(s) 1871 1878, ISSN: 1530-437X
[4]
Haipeng Z., Jiancheng F., Research Periodic Error Characteristics of Quartz MEMS
Gyroscope in Navigation System, Electronic Measurement and Instruments, 2007.
ICEMI '07. 8th International Conference on, 2007, page(s): 1-430 - 1-435, ISBN: 9781-4244-1136-8
[5]
Haipeng Z., Jiancheng F., Xiangdong X., Real time Compensation of Quartz MEMS
Gyroscope Drift Periodic Error, Electronic Measurement and Instruments, 2007.
ICEMI '07. 8th International Conference on, 2007 page(s): 1-392 - 1-397, ISBN: 978-14244-1136-8
[6]
Piyabongkarn D., Rajamani R., The development of a MEMS gyroscope for absolute
angle measurement, American Control Conference, 2002. Proceedings of the, Volume
3, page(s): 1960 - 1965 ISSN: 0743-1619, ISBN: 0-7803-7298-0
[7]
Nagy L., , Building a digital clinometer with the FAR-S1bg gyro sensor, Fujitsu
Application Note, 2006
95
[8]
Chen W.T.; Hsu J.C., Lune H.W., Su C.C., A spread spectrum clock generator for
SATA-II, Circuits and Systems, 2005. ISCAS 2005. IEEE International Symposium on,
23-26 May 2005 Page(s):2643 - 2646 Vol. 3
[9]
Ko J., Lee S., Kim D., Kim K., Chang K.E., Spread spectrum clock generator for
reducing Electro-Magnetic Interference (EMI) noise in LCD driver IC, Circuits and
Systems,
2007.
MWSCAS
2007.
50th
Midwest
Symposium
on
5-8 Aug. 2007 Page(s):1106 1109
[10] Kim J., Jun P., Dithered timing spread spectrum clock generation for reduction of
electromagnetic radiated emission from high-speed digital system, Electromagnetic
Compatibility, 2002. EMC 2002. IEEE International Symposium on, Volume 1, 19-23
Aug. 2002 Page(s):413 - 418 vol.1
[11] http://www.arm.com/markets/embedded_solutions/armpp/429.html
[12] Kitagawa Y., Takahashi S., Yaguchi Y., US Patent 6563359, Semiconductor integrated
circuit including clock modulation circuit, 2003
[13] F2MC-8FX Fujitsu Semiconductor Data Sheet (Preliminary)
[14] Gal P., Microcontroller- driven Alternator Voltage Regulator, Application Note, Fujitsu
ME, 2006
[15] http://www.epa.gov/climatechange/science/recentac.html
[16] Ristoiu D., Tahas S.V., Cosma C., nclzirea global i efectele ei asupra climatului
terestru, ENVIRONMENT & PROGRESS, 6, 2006, P.489 496
[17] http://www.fueleconomy.gov/
[18] http://en.wikipedia.org/wiki/Power_steering
[19] http://www.indiacar.com/infobank/epc.htm
[20] 32-bit Microcontroller with Built-in FlexRay for Automotive Control Systems, Find, vol.
25, No. 4, 2007, p.1-4
96
Traductor
de vitez
Convertor
D/A
Poziia
actual
SERVOMECANISM
Traductor de
poziie
MCC
SARCINA
t
Accelerare
Viteza
ta
constant tc
Frnare
tf
97
Timpul de deplasare este td= ta+ tc +tf iar timpul de poziionare este suma dintre timpul de
deplasare i timpul de stabilire (de amortizare a oscilaiilor sistemului de poziionare dup
atingerea poziiei finale), tp= td+ ts
Pentru a obine viteza variabil este suficient s aplicm o tensiune variabil. Tensiunea
variabil poate fi aplicat n mai multe feluri:
informaia numeric este convertit ntr-o informaie analogic i este aplicat unui
tranzistor (pentru comanda ntr-un sens) sau la doi tranzistori (pentru comanda n
ambele sensuri). Tensiunea variabil astfel obinut se aplic motorului de c.c. Un
dezavantaj este folosirea unui convertor D/A i puterea pierdut n tranzistorii care
lucreaz n zona liniar.
informaia numeric creeaz un semnal PWM, cu frecvena destul de mare ca motorul,
datorit ineriei, s integreze impulsurile. Motorul va avea o vitez proporional cu
factorul de umplere. Acest mod de comand este mult mai simplu i tranzistorul, fiind
n regim de comutaie nu disip inutil.
Dificultatea acionrilor cu motor de curent continuu este partea de traductor de poziie care,
mai ales la precizia cerut n aplicaiile noi sunt dificil de implementat.
n diagrama urmtoare (figura 5.3) se arat comanda PWM n ambele sensuri:
PWM1P0=1
PWM2P0=0
PWM1P0=0
MCC
PWM2P0=1
MCC
PWM1P0
PWM2P0
Tensiunea
pe motor
Factorul de umplere este egal la cele 2 canale PWM i
motorul nu se rotete pentru c tensiunea la bornele lui
este 0
Cuplnd un motor de curent continuu ntre PWM1P0 i PWM2P0 se poate obine o rotire cu
vitez variabil n ambele sensuri ale motorului. Motorul de curent continuu se rotete cu o
vitez proporional cu tensiunea aplicat. Dac tensiunea aplicat este sub form de
impulsuri motorul se rotete proporional cu valoarea medie a tensiunii.
98
Figura 5.4: Model SIMULINK pentru simularea funcionrii motorului de curent continuu
Rezultatele simulrii sunt reprezentate n figura 5.5. n stnga sus este reprezentat forma
curentului prin motor i jos turaia obinute pentru factor de umplere de 90% respectiv 10%.
Se observ c acestea au aceeai form de variaie. n dreapta sunt reprezentate aceleai curbe,
dar cu factor de umplere 10% respectiv 90%. Se vede c motorul se rotete n sens contrar.
99
Din punct de vedere constructiv motoarele de curent continuu pot fi cu perii la care rotirea
cmpului magnetic este realizat prin comutarea curentului prin nfurri cu un sistem
colector i perii. Aceste motoare sunt asociate cu un nivel mare de perturbaii
electromagnetice generate. n figura 5.61 este reprezentat un motor de acionare a hrtiei la o
imprimant HP lng o urubelni pentru a putea aprecia dimensiunea. Se poate observa
tubul de ferit de pe cablu care are rolul de a micora perturbaiile.
Figura 5.7: Motorul electrodinamic cu bobin lung (stnga), cu bobin scurt (mijloc) i
fotografia unui motor
n acest capitol majoritatea fotografiilor sunt ale unor subansamble din colecia autorilor
100
SERVOMECANISM
SARCINA
MPP
Se poate observa din schema bloc c traductorul de poziie poate lipsi pentru c, n aplicaii
mai simple motorul va executa numrul de pai comandat i va ajunge n poziia dorit. Se
ctig astfel o simplificare a schemei dar se pierde la performan. Comanda cu traiectorie de
vitez este posibil prin variaia frecvenei impulsurilor dar schema de acionare se complic.
Motoarele pas cu pas pot fi motoare unipolare sau bipolare. La motoarele bipolare comanda
pailor se face prin inversarea curentului prin nfurri. Principiul comenzii seamn cu cel
de la comanda motorului de curent continuu, cu diferena c n acest caz de regul sunt 2
nfurri, figura 5.9.
PWM1P0
PWM2P0
Tensiunea pe
nfurarea
1a-1b
+V
0
-V
Factorul de umplere al PWM1P0 este > dect
al PWM2P0, tensiunea aplicat este pozitiv
MPP unipolare folosesc o priz median legat la alimentare, inversarea curentului obinnduse prin legarea la mas succesiv a terminalelor extreme ale nfurrii, ca n figura 5.11.
V
V
I
102
Secvenele digitale pentru comanda unui motor pas cu pas unipolar cu 4 faze n varianta cea
mai simpl sunt date n figura 5.13 [5].
TACT
FAZA 1
FAZA 2
FAZA 3
FAZA 4
Meninere
Figura 5.13: Secvenele digitale pentru comanda unui motor pas cu pas unipolar
Pentru exemplificare se alege un port paralel pentru microcontrollerelor compatibile x86, linia
D0 este cel mai puin semnificativ bit i un motor pas cu pas cu 3 faze. Un pas nseamn
parcurgerea tuturor fazelor. Schema de conectare i programul care genereaz un pas ntr-un
sens sunt date n figura 5.14.
Port paralel,
adresa adr
F1 F2
F3
D0
D1
D2
D3
........
Figura 5.14: Schema de conectare a unui motor pas cu pas la un port paralel i programul
Programul din acest exemplu este dat pentru a arta principiul de comand. Este necesar
introducerea unei ntrzieri pentru meninerea alimentrii fazei un timp suficient pentru
acionarea electromecanic, timp care depinde de motor. Schema mai trebuie completat cu
amplificatoare de curent i/sau tensiune pentru acionarea motorului. Un exemplu de motor
pas cu pas modern, comandat cu dou semnale (asigurarea semnalelor pentru faze sunt create
intern) este dat n figura 5.15.
Motor bipolar pas cu pas
Tensiunea de alimentare +12 - 24 VDC
Curentul de pas pe faz 0.25 - 2.0 Amperi
Pasul 1,8 grade
Se poate comanda cu semnale: Pas, Directie, Validare,
decuplate optic
Protecie la depirea temperaturii de lucru i la subtensiune
103
Observaie
Un canal PWM poate fi folosit pentru a comanda o faz a motorului pas cu pas pentru a
obine un curent variabil. Semnalul PWM nu asigur succesiunea fazelor ci valoarea medie a
tensiunii de alimentare a unei faze. Conectarea ieirilor PWM la fazele unui motor unipolar
este dat n figura 5.16.
PWM1P0 conectat la 1a
PWM1M0 conectat la 2a
PWM2P0 conectat la 1b
PWM2M0 conectat la 2b
Figura 5.16: Comanda PWM a fazelor unui motor unipolar
Un modul de comand poate controla un motor pas cu pas asigurnd un curent bine definit
prin nfurri. Acest tip de comand creeaz de exemplu posibilitatea de a comanda motorul
cu un curent mai mare la pornire sau permite realizarea unor traiectorii optime de vitez
(regim accelerat- frnat).
104
dimensiuni mai mari (50mm) dar firul poate atinge lungimea de 1270mm. Senzorul LX-EP
[2] este un senzor cu fir de oel dar principiul de detecie a poziiei este optic iar ieirea este
digital, oferind la ieire dou semnale defazate (encoder). Lungimea maxim a firului este de
1270mm.
1mm
Roata
dinat de
antrenare
Zona
traductor
Ruleta
gradat
Figura 5.17: Traductor optic de poziie, circular (stnga), un detaliu (mijloc) i liniar (dreapta)
Figura 5.18: Senzor de poziie M150 (stnga) i SP1 (mijloc) i LX-EP (dreapta)
n funcionarea anumitor motoare se urmrete obinerea unei viteze constante i nu a
poziionrii precise (de exemplu la motoarele imprimantelor LASER). n aceste situaii se pot
utiliza traductori Hall sau spirale pe cablaj n care se induce o tensiune proporional cu viteza
de rotaie, figura 5.19.
n figura 5.19 dreapta se poate remarca structura intern a unui motor de curent continuu fr
perii n care cmpul nvrtitor este realizat prin mai multe bobine. La acest motor rotorul este
exterior i este un magnet permanent.
105
Senzor Hall
fixat pe cablaj
Magnet fixat pe
rotor
Un traductor Hall este de exemplu cel produs de Infineon, TLE4921. Traductorul const n 2
senzori Hall la 2,5mm distan formnd un traductor diferenial utilizat pentru determinarea
poziiei i turaiei. Piesa mobil poate fi un magnet permanent dar poate fi i din material
feromagnetic, caz n care pe senzor trebuie montat un magnet permanent. Traductorul conine
sisteme de protecie la supratensiune i alimentare invers i poate fi alimentat n gama 030V. Ieirea este digital. Traductorul i o schem de conectare sunt date n figura 5.20.
Pentru acionarea motoarelor care absorb un curent de comand mai mare dect cel generat de
microcontroller se pot folosi amplificatoare de curent. Un circuit integrat preferat n proiectele
noastre este ULN2003, figura 5.21. Circuitul conine apte tranzistoare Darligton integrate
care asigur un curent mediu de 500mA i un curent de vrf de 600mA la o tensiune de
maxim 50V. Pentru mrirea curentului se pot folosi dou canale n paralel. Intrrile sunt
comandabile TTL /CMOS. Intrrile i ieirile sunt pe pri diferite ale capsulei, uurnd astfel
proiectarea cablajului. Cte o diod pe fiecare canal asigur protecia n cazul sarcinilor
inductive.
106
Un circuit driver mai sofisticat prin care se pot comanda motoare de curent continuu
bidirecional cu un singur canal PWM i 2 semnale linii de semnal ajuttoare este circuitul
Allegro A3950. Acesta poate asigura cureni de pn la 2,8A la o tensiune de 36V. Circuitul
are protecie la scurtcircuitul motorului, la subtensiune i la supratemperatur. Circuitul
conine o punte Full Bridge prin care curentul poate fi furnizat bidirecional. Circuitul poate fi
comandat ntr-o stare de economie de energie cu un semnal de SLEEP. Diagrama de timp
pentru comanda bidirecional este dat n figura 5.22.
ENABLE
PHASE
IMOTOR
Figura 5.22: Diagrama de timp pentru comanda bidirecional a unui motor de curent
continuu cu Allegro A3950
Dac semnalul PWM este aplicat la intrarea ENABLE motorul va fi comandat ntr-un sens
dac semnalul PHASE este 1 logic i n sensul contrar dac semnalul PHASE este 0 logic.
Diversitatea driverelor este foarte mare, aa cum de fapt este diversitatea motoarelor. Pe
pagina Sanyo (http://semicon.sanyo.com/en/motor/index.php) exist prezentate multe modele
de drivere grupate du tipul motoarelor la care se folosesc dar i dup domeniul de
aplicabilitate: uz casnic, auto, echipamente periferice, aparate foto etc.
107
108
intern
Numrtor de 16 bii 0/1
FRK0
Selecie tact
FRK1
Registru de comparare
0/2/4/6
OUT0
OUT2
OUT4
OUT6
Registru de comparare
1/3/5/7
OUT1
OUT3
OUT5
OUT7
IN0
IN2
IN4
IN6
Registru de captur
0/2/4/6
IN1
IN3
IN5
IN7
Registru de captur
1/3/5/7
TCCSL
IVF IVFE STOP
TCDT0/1
Numrtor pe 16 bii
Divizare
Tact
intern
FRCK
ECKE
109
TCCSL0/1 (Control Status Register of Free Running Timer) este un registru de 8 bii care
conine: IVF este un flag de cerere de ntrerupere, IVFE valideaz cererea de ntrerupere,
STOP oprete numrtorul, MODE stabilete modul de iniializare (cu nivel H numrtorul se
iniializeaz prin comparare i egalitate cu regitrii de comparare), CLR iniializeaz
numrtorul cu 0000H, 3 bii CLK stabilesc factorul de divizare al tactului.
TCCSH0/1 (Control Status Register of Free Running Timer) este un registru de 8 bii din
care este folosit un singur bit (ECKE) care selecteaz tactul intern sau tactul extern de la pinul
FRCK.
O diagram de timp arat evoluia numrtorului i iniializarea prin depire (figura 5.25a) i
iniializarea prin egalitate cu registrul de comparare (figura 5.25b).
Pentru analiza evoluiei unui timer sunt utile diagramele de timp cu reprezentare analogic a
valorii digitale din numrtor. Modulul de comparare const n 2 regitrii de 16 bii, 2 pini de
comparare de ieire i un registru de control. n MB90350 sunt integrate 4 module de
comparare separate (dar acelai numrtor la 2 module).
Valoare numrtor
Valoare numrtor
FFFFH
FFFFH
BFFFH
BFFFH
7FFFH
7FFFH
3FFFH
3FFFH
0000H
0000H
Registrul de
comparare
este BFFFH
timp
/RESET
INT
timp
/RESET
INT
Figura a
Figura b
Pentru fiecare modul regitrii de comparare pot fi utilizai independent. n funcie de modul de
operare regitrii pot comanda pinii de ieire. Valoarea iniial a fiecrui pin poate fi
programat separat. Fiecare modul poate genera un semnal PWM folosind ambii regitrii de
comparare. Schema bloc a modulului de comparare este dat n figura 5.26.
110
OUT0
Valoare numrtor
OUT1
CST1
OCCP (Registru de comparare, Output Compare Register) de 16 bii conine valoarea cu care
se compar valoarea numrtorului. Acest registru trebuie ncrcat nainte de a valida
operarea.
OCS0/2/4/6 (Control Status Register of Output Compare Low) sunt regitrii de 8 bii n care
ICP este o cerere de ntrerupere la egalitate (cte una pentru fiecare registru de comparare),
ICE sunt bii de validare a cererii de ntrerupere iar 2 bii (CST) valideaz operaia de
comparare.
OCS1/3/5/7 (Control Status Register of Output Compare High) sunt regitrii de 8 bii n care
2 bii (CMOD0 i CMOD1) valideaz modul de operare al pinilor de ieire (nivelul lor logic
se schimb sau nu la egalitate), 2 bii valideaz pinii de ieire iar 2 bii schimb valoarea
logic a ieirilor.
Funcionarea poate fi fr schimbarea valorii logice a pinilor de ieire la egalitate
(CMOD0/1=00B) i funcionarea cu schimbarea valorii logice a ieirii OUT0 i OUT1 la
egalitatea OCCP0 cu OCCP1 (CMOD0/1=01B). De asemenea ieirea poate s schimbe sau
nu valoarea logic la iniializarea numrtorului. Generarea a 2 semnale PWM este
exemplificat n figura 5.27.
111
Valoare numrtor
FFFFH
BFFFH
7FFFH
OCCP0=BFFFH
OCCP1=7FFFH
3FFFH
0000H
timp
/RESET
OUT0
OUT1
112
Selecie tact
PWM1
Selecie ieire
Registru de
comparare PWM1
PWM1P0
PWM1M0
Registru de
selecie PWM1
PWM2
Selecie ieire
Registru de
comparare PWM2
PWM2P0
PWM2M0
Registru de
selecie PWM2
PWM1/2 Compare Register (16 bii) specific limea impulsului PWM (formatul de scriere
este pe 8 sau 10 bii). O valoare de 000H indic un factor de umplere de 0% iar o valoare de
3FFH indic un factor de umplere de 99,9% (99,6% pentru formatul pe 8 bii). Pentru a putea
stoca valori pe 10 bii regitrii de comparare sunt pe 16 bii. Trei variante de semnale cu factor
de umplere diferit sunt artate n figura 5.29.
Registru de comparare
8 bii
10 bii
00H
000H
80H
200H
FFH
3FFH
Ciclu PWM
PWM1/2 Selection Register controleaz pinii de ieire. Un bit asigur sincronizarea ieirilor
n sensul c orice modificare n configurarea canalelor PWM nu se reflect la ieire dect
dup ce acest bit este setat. Cte 3 bii selecteaz tipul de semnal de ieire la ieirile
PWM1P0, PWM1M0, PWM2P0, PWM2M0- semnal n stare L, H, impedan ridicat sau
PWM.
113
Interfaa cu
microprocesorul
AD0/DB0
........
AD5/DB5
DB6
DB7
/ALE
/CS
/OE
R//W
RESET
Port de
comand a
motorului
MC0
............
LIMIT
STOP
Flaguri urgene
INIT Flaguri de stare
PROF
MC7
Generator de profil
Port PWM
REGISTRE
INTERNE
Comutator
Reacie
CHA
CHB
/SYNC Timer
EXTCLK
INDEX
PULSE
SIGN
PHA
PHB
PHC
PHD
114
HCTL 1100 are 64 de registre interne pe 8 bii din care 35 utilizabile din exterior. Aceste
registre sunt adresate pe liniile de adres AD0-AD5.
Traductorul optic de poziie i de sens este format dintr-un disc cu orificii dreptunghiulare
dispuse pe circumferin. Orificiile sunt sesizate de dou sisteme optice decalate. Din formele
de und generate de cele dou sisteme decalate se poate deduce sensul rotaiei, (figura 5.31).
FOTO 1
FOTO 2
SENS
FOTO 1
SENS
FOTO 2
Figura 5.31: Formele de und generate de traductorul de poziie i sens
i un traductor optic cu disc
Pe disc mai este realizat un orificiu pentru impulsul de INDEX. La o rotaie se genereaz un
impuls INDEX. Impulsurile de la traductoare sunt sensibile la perturbaii, de aceea se impun
msuri specifice EMC de protecie. Aceste semnale pot constitui att semnale pentru stabilirea
poziiei (prin numrarea impulsurilor), a sensului prin verificarea defazajului ct i a vitezei,
printr-un convertor tensiune/frecven.
+5V
CD/A
Io
vo
+
Conv. I-U
MC7
115
Datele se stocheaz n registrul 08H al HCTL pe 8 bii. Pentru a putea comanda motorul n
ambele sensuri, se consider tensiuni negative n intervalul de comand 00H-7FH i valori
pozitive n intervalul 80H-FFH, figura 5.33.
U
+5V
2,5V
00H
40H
80H
C0H
-2,5V
-5V
Factor de umplere
50%
80H 9CH
SIGN=1
00H
32H
registrul 09H
64H
SIGN=0
Figura 5.34: Programarea HCTL 1100 pentru comanda unui motor de c.c. cu modulaie PWM
116
U4
1
SYNC
U4
AT90S1200
Y1
2MHz
5
30pF
C4
xtal2
reset
C3
xtal1
30pF
pb0
pb1
pb2
pb3
pb4
pb5
pb6
pb7
pd0
pd1
pd2
pd3
pd4
pd5
pd6
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
2
3
6
7
8
9
11
37
40
39
38
36
AD0
AD1
AD2
AD3
AD4
AD5
AD6
AD7
MC0
MC1
MC2
MC3
MC4
MC5
MC6
MC7
R/W
OE
CS
ALE
RESET
SIGN
PULSE
CHA
CHB
INDEX
R6
1
10K
PHA
PHB
PHC
PHD
VCC
34
EXT CLK
PROF
INIT
LIMIT
STOP
26
27
28
29
18
19
20
21
22
23
24
25
17
16
31
30
33
12
13
14
15
C6
1uF
HCTL1100
117
.device AT90S1200
rjmp start
short_delay:
;total 1+80*(1+1/2)-1+4=124
;o ntrziere de 124 perioade de tact
ldi r26,80
;1 tact
sd:
dec r26
;1 tact
brne sd
;1/2 tact
ret
;4 tact
;#################################################################
;PROCEDURA RESET HCTL-1100
;#################################################################
rst:
cbi $12,4
;bitul de reset din portul D
rcall short_delay
;se menine pinul de reset in 0 logic
sbi $12,4
;reset ncheiat
ret
;#################################################################
;PROCEDURA CITIRE
;#################################################################
cit:
clr r16
out $17,r16
sbi $12,0
ldi r17,0b00000001
out $18,r17
cbi $12,3
sbi $12,3
cbi $12,2
sbi $12,2
;portul B intrare
;comand read
;s-a selectat un registru din HCTL
;puls pe ALE
;puls pe CS
rcall short_delay
cbi $12,1
;OE=0
in r18,$18
;citire propriu zis din HCTL1100
sbi $12,1
;OE=1
ret
;#################################################################
;#################################################################
;PROCEDURA SCRIERE IN HCTL1100
;#################################################################
scr:
ser r16
out $17,r16
;portul B ieire
ldi r17,0b000000001 ;selecie latch din HCTL1100
out $18,r17
cbi $12,3
sbi $12,3
;puls ALE
cbi $12,0
;selecie R/W pe scriere
ldi r18,0b1111111
;date de trimis n HCTL1100
118
out $18,r18
;scrierea propriu zis
cbi $12,2
sbi $12,2
;puls CS
sbi $12,0
;revenire la modul citire din HCTL1100
ret
;#################################################################
start :
ser r16
out $11,r16
;portul D ieire
rcall short_delay
rcall rst
rcall cit
rcall scr
Exist dou moduri de cuplare a lui HCTL-1100 la MC 8051, i anume legarea la magistrala
de adrese/date/control sau la portul I/O. Alegerea uneia dintre metode sau a celeilalte depinde
de modul n care este folosit MC 8051. Dac MC 8051 folosete bus-ul n aplicaia dat se
recomand cuplarea lui HCTL pe bus. Este necesar hard suplimentar (dou circuite TTL). La
legarea pe bus se pot cupla pn la 4 circuite HCTL. Dac circuitul nu folosete bus-ul, adic
nu are conectat nici un fel de memorie exterioar se recomand legarea lui HCTL la portul
I/O, soluie care nu necesit hard suplimentar. n figura 5.37 se arat modul de legare la portul
de I/O.
U4
1
Vcc
SYNC
U5
31
C7
22pF
19
Y2
2MHz
C8
18
22pF
Vcc
C9
10uF
R7
10K
12
13
14
15
39
38
37
36
35
34
33
32
EA/VP
X1
X2
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
RESET
INT0
INT1
T0
T1
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
RD
WR
PSEN
ALE/P
TXD
RXD
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
9
21
22
23
24
25
26
27
28
37
40
39
38
36
AD0
AD1
AD2
AD3
AD4
AD5
AD6
AD7
PHA
PHB
PHC
PHD
MC0
MC1
MC2
MC3
MC4
MC5
MC6
MC7
R/W
OE
CS
ALE
RESET
SIGN
PULSE
CHA
CHB
INDEX
17
16
29
30
11
10
34
EXT CLK
PROF
INIT
LIMIT
STOP
26
27
28
29
18
19
20
21
22
23
24
25
17
16
31
30
33
12
13
14
15
HCTL1100
8051
119
;##############################################################
;PROCEDURA RESET
;##############################################################
RS1100:
ORL P2,#0FH
;Seteaz liniile de R/W la citire, OE=1, CS=1, AE=1
MOV P0,#0FFH
;Seteaz P1=HIGH
CLR P2.4
;Seteaz RESET pe LOW
NOP
;ntrziere corespunztoare unui impuls de 5s
NOP
NOP
NOP
SETB P2.4
:Readuce linia RESET n HIGH
RET
;################################################################
;################################################################
;PROCEDURA CITIRE (Citete registrul lui HCTL)
;################################################################
RD1100
SETB P2.0
;Seteaz liniile R/W pentru citire
MOV P1,B
;Adresa de LATCH
CLR P2.3
:Se genereaz un puls ALE
SETB P2.3
MOV P1,#0FFH
CLR P2.2
;Se genereaz un puls CS
SETB P2.2
NOP
;ntrziere corespunztoare unui impuls de 4s
NOP
NOP
CLR P2.1
;Seteaz OE=0
MOV A,P0
;Se iau datele din HCTL 1100
SETB P2.1
;Seteaz OE=1
RET
;################################################################
;PROCEDURA SCRIERE (Scrie n registrul lui HCTL)
;################################################################
WR1100
MOV P1,B
;Adresa de LATCH
CLR P2.3
:Se genereaz un puls ALE
SETB P2.3
MOV P1,#0FFH
CLR P2.0
;Seteaz liniile R/W pentru scriere
MOV P1,A
;Se emit datele
CLR P2.2
;Se genereaz un puls CS
SETB P2.2
SETB P2.0
;ntoarcere la modul de citire
MOV P1,#0FFH
RET
;###############################################################
120
5.6.Exemple de implementare
+5V
PWMA1
Motor de c.c.
cu perii
OSC2
+5V
Vdd
Oprit
Cretere vitez
Scdere viteza
PC0
PC1
PC2
Vss
Figura 5.38: Schema bloc de control a unui motor de c.c. cu perii realizat de MC68HC705
Un program simplificat la maxim, care sugereaz modul n care se comand motorul este:
PORTA
PORTC
DRDA
DRDC
PWMAD
CTLA
EQU
EQU
EQU
EQU
EQU
EQU
$00
$02
$04
$06
$10
$14
Start
EQU
CLR
LDA
STA
LDA
STA
CTLA
#$20
PWMAD
#$00
DDRC
adr
BRSET 0,PORTC,adr1
BSR adr_off
adr1
BRSET 1,PORTC,adr2
...........................................................
121
BRA
adr
Adr_off
LDA #$00
se trimite 00h n portul de date PWM
STA PWMAD
Dezavantajul acestei scheme de control este c permite micarea motorului doar ntr-un sens.
Pentru a fi posibil schimbarea sensului este nevoie de un bit suplimentar pentru comanda
schimbrii polaritii tensiunii de alimentare a motorului.
Comanda PWM a unui motor pas cu pas folosind un MC Motorola 6805 poate fi realizat ca
n figura 5.39. Bobinele trebuie alimentate ntr-o anumit succesiune pentru a obine sensul de
rotaie dorit. Majoritatea motoarelor sunt echipate cu traductoare de poziie (Hall sau optice).
Un astfel de motor poate fi comandat cu vitez variabil prin modificarea factorului de
umplere (PWM), dar n acest caz trebuie modificat i viteza de comutaie.
MC68705
OSC1
OSC2
+5
V
ULN
2003
PWMA1
PWMA2
PWMA3
Vdd
nfurri
stator
Traductori
Hall
PA0
PB7
PB6
Motor
Vss
Figura 5.39: Comanda PWM a unui motor pas cu pas folosind un MC Motorola 6805
Acest sistem asigur performane de reglare superioare, avnd o complexitate mai mare.
Secvena de acionare pentru comanda motoarelor este transmis prin intermediul unui
amplificator de putere. Semnalele digitale de la traductoare sunt citite pe 3 intrri digitale.
Aplicaia este detaliat n nota de aplicaii Motorola AN1702/D, (http://mcu.motsps.com ).
122
83C51FA
L293
(Driver)
P1.3
P1.4
Traductor Hall
cu ieire digital
Generator de tact
P1.3
P1.4
Tensiunea u
la bornele
motorului
Figura 5.41: Diagrame de semnal pentru comanda PWM a motorului n ambele sensuri
Cnd P1.3 i P1.4 sunt egale diferen de potenial la bornele motorului este zero. n cazul (a),
P1.3 este mai mult n 1 i motorul este alimentat cu +5V de la P1.3 la mas (P1.4) i se rotete
ntr-un sens. n cazul B el este alimentat de la P1.4 i se rotete n cellalt sens. Viteza poate fi
comandat prin variaia factorului de umplere a celor 2 canale PWM, fiind proporional cu
diferena lor.
Bucla de feedback se poate nchide montnd pe rotorul motorului 2 piese magnetice,
diametral opuse i formnd 2 impulsuri, la fiecare rotire a motorului, cu un traductor Hall cu
ieire digital. Semnalul este preluat de MC la un pin I/O de uz general, sau poate fi preluat la
un canal al PCA n mod numrtor (cum s-a realizat n acest caz), sau poate genera o
ntrerupere.
123
Pentru c motorul cu perii este foarte perturbator, se impun msuri de protecie. Se recomand
conectarea unor condensatori de 6,8F ntre bornele motorului i mas i de 0,33F ntre
bornele motorului. De asemenea se recomand decuplarea tensiunii de alimentare cu
condensatori de 50F, 6,8F i 100nF n paralel, diode pentru eliminarea vrfurilor de
tensiune de la fiecare born a motorului la mas i +5V.
Cteva elemente din programul de comand sunt prezentate n continuare:
MOV CMOD,#06
MOV CCAPM0,#42H
MOV CCAPM1,#42H
MOV CCAP0L,#0H
MOV CCAP1L,#0H
Dup iniializarea acestor registre de comenzi trebuie pornit timerul, ceea ce se realizeaz prin
poziionarea bitului 6 (CR) din registrul de control CCON.
SETB CR
Rotirea cu vitez maxim ntr-un sens se comand cu secvena:
MOV CCAP0L,#0FFH
MOV CCAP1L,#0H
SETB CR
Rotirea cu vitez maxim n cellalt sens se comand cu secvena:
MOV CCAP0L,#0H
MOV CCAP1L,#0FFH
ETB CR
Traductorul de vitez d impulsuri canalului 4 programat n mod de captur. La primirea unui
impuls pe P1.6 se ncarc coninutul timerului n registrele CCAP3H i CCAP3L, coninutul
acestor registre fiind proporional cu timpul scurs ntre 2 impulsuri ale traductorului.
MOV CMOD,#0
MOV CCAPM3
SETB IP.6
MOV IE,0C0H
SETB CR
f PWM =
f OSC
,
2 ( PWMO + 1) 255
Numrtor
PWMC
Comparator
PWM1
Registru de comparare
PWM0
125
Cu acest tip de microcontroller a fost construit un dispozitiv de comand a unui motor de c.c.
Rotirea n ambele sensuri este realizat prin conectarea lui la un montaj n punte, figura 5.43.
MOV A,#55
CPL A
MOV PWM0,A
A fost realizat un program de test care comand motorul astfel nct s se roteasc pn la
viteza maxim posibil i apoi s descreasc turaia pn cnd se oprete.
; semnalul pornete ca fiind 100% din timp 1 logic, scade, apoi crete, operaia
; se repet.
PWMP
equ
0FEh
PWM0
equ
0FCh
PWM1
equ
0FDh
ORG 8000h
LJMP MAIN
ORG 8090h
MAIN:
MOV A,#20
; se incarca acumulatorul cu #XX pentru
; frecventa semnalului de XkHz=11,059MHz/(2*(1+A)*255)
MOV PWMP,A
MOV A,#0FFh
; in A este valoarea imediata 00h de start
CLR SENS
; pentru a stabili CRESTEREA/DESCRESTERA turaiei
126
ROTESTE:
CPL A
; se complementeaza deoarece iesirea PWM este negata
MOV PWM0,A
; ncrcare registru de comparare
MOV R2,#4
DELAY:
MOV R1,#0F0h
DELAY1:
MOV R0,#0FFh
DJNZ R0,$
DJNZ R1,DELAY1
DJNZ R2,DELAY
; verificare si apoi stabilirea noului sens daca este nevoie
CPL A
JB
SENS,DIRECT
INVERS:
SUBB A,#10h
CJNE A,#0Fh,ROTESTE
SETB SENS
; se schimba sensul
SJMP ROTESTE
DIRECT:
CJNE A,#0FFh,CRESTE
CLR SENS
; se schimba sensul
SJMP ROTESTE
CRESTE:
ADD A,#10h
; factorul de umplere creste
SJMP ROTESTE
STOP:
SJMP $
BSEG AT 20H
SENS: DBIT 1
; 1/0- factorul de umplere pozitiv creste/scade
END
5.6.3.Detectorul de stare zero
O aplicaie de comand a motoarelor poate s ofere surprize n faza de proiectare sau chiar de
implementare. Un exemplu de astfel de surpriz este cea care a aprut la nlocuirea
indicatoarelor de bord clasice auto cu indicatoare comandate cu motoare de curent continuu.
Dac cheia este decuplat n timpul micrii mainii sistemul electronic nu mai este alimentat
i indicaia de vitez, respectiv turaie rmn la valorile din momentul scoaterii cheii. Pentru
rezolvarea acestei probleme trebuie ca sistemul electronic s mai rmn alimentat un timp.
Oricum, la mainile noi dup scoaterea cheii geamurile electrice se pot ridica, oglinzile se
rabat etc. Pentru a uura comanda motorului n acest caz au aprut microcontrollere care au un
bloc intern de feedback.
127
Logica de analiz
Numrtor de 8 bii
Rezultat
Registru ZPD0
+
-
PWM2M0
1/9 AVCC
Validare/
invalidare
alimentare
Aceast funcie a controllerului este patent al Siemens VDO Automotive AG i poate fi folosit doar cu
acordul proprietarului.
128
129
I
ON
VS
A2
OFF
VS
Prezena grupului RC este indispensabil n cazul sarcinilor inductive, la care ieirea din
conducie a triacului se poate produce n apropierea maximului unei alternane a tensiunii de
alimentare. Valorile R i C sunt date de regul n foile de catalog ale triacului.
Logica de
comand
220V
Sarcina
Figura 6.2: Schema electric a unui etaj de comand cu triac alimentat direct de la
reea
Tensiunea reelei este redresat monoalternan i filtrat. Alternana pozitiv este aplicat
diodei Zener i alimenteaz partea digital. Curentul de alimentare poate fi mrit prin
modificarea valorii rezistorului serie dar, n aceast schem curentul nu poate fi prea mare
deoarece crete disipaia pe rezistena serie.
130
6.1.2.Comanda n faz
Se poate obine o valoare efectiv variabil a tensiunii pe sarcin prin amorsarea triacului
dup un anumit timp de la trecerea sinusoidei reelei prin zero, adic cu un anumit unghi de
faz. Pentru a demonstra funcionarea triacului n acest mod a fost realizat un model
Simulink, figura 6.4.
131
Figura 6.6: Tensiunea pe triac (linia gri) i curentul prin unul din tiristoare (linia
neagr)
Prin triac curentul are i alternana negativ. Simularea a fost realizat n cazul unei sarcini
rezistive. Dac sarcina are i componente inductive i capacitive atunci apar probleme datorit
defazajului ntre curent i tensiune. De exemplu, n figura 6.7, R=100, L=20mH, C=100F
se poate observa deformarea formei tensiunii pe sarcin. Pentru alte valori ale inductivitii i
132
/4
Figura 6.8: Explicativ la amorsarea cu ntrziere a triacului
133
Aceast ntrziere permite o eroare maxim teoretic de detectare a trecerii prin zero de 25%
sau rularea unui numr de instruciuni n perioada de 2,5ms, adic sute de instruciuni. De
exemplu, la un microcontroller RISC care execut multe instruciuni ntr-un singur tact, cu
tact de 1MHz, se pot executa o mie de instruciuni ntr-o ms. Pentru a putea asigura o valoare
efectiv ct mai mare ntrzierea detectrii trecerii prin zero trebuie s fie ct mai mic.
Detectarea trecerii prin zero poate fi realizat prin mai multe metode:
Msurarea tensiunii reelei cu un canal de conversie A/D, tensiunea reelei fiind
preluat cu redresare i fr separare galvanic;
Acelai mod de preluare dar cu separare galvanic cu transformator (apare un defazaj
de care trebuie inut cont) sau optic (apare o neliniaritate care introduce o ntrziere
n amorsarea triacului);
Preluarea tensiunii cu blocul comparator analogic al microcontrollerului cu sau fr
separare galvanic.
n figura 6.9 este prezentat o variant de detectare a trecerii prin zero cu decuplare optic
(stnga sus).
Optocuplor
R1 CNY17
220V
c.a.
R2
+5V
MC
ADC0
GND
MC
R1
220V
c.a.
R2
AIN0
AIN1
Figura 6.9: Variant pentru schema de detectare a trecerii prin zero i simulare SPICE
134
diodei LED este de 630s, ceea ce este admisibil. Aceast variant asigur detectarea trecerii
prin zero pentru alternana pozitiv. Pentru alternana negativ se poate deduce c trecerea
prin zero va fi dup timpul de 10ms sau, prin redresarea bialternan a tensiunii reelei se pot
detecta trecerile prin zero la fiecare alternan. n stnga jos este prezentat o variant fr
decuplare optic. n varianta prezentat n stnga sus microcontrollerul detecteaz trecerea
prin zero cu un canal de conversie AD. O alt variant (stnga jos) este prin folosirea
comparatorului analogic (ATMEL RISC, Atmega8, Atmega16, AT90xx). Comparatorul
analogic compar valorile de intrare de pe pinul pozitiv (AIN0) cu valorile de pe pinul negativ
AIN1. Cnd tensiunea de pe pinul pozitiv AIN0 este mai mare dect tensiunea de pe pinul
negativ AIN1, bitul ACO al comparatorului este setat. Ieirea comparatorului poate fi setat
astfel nct s declaneze funcia Input Capture a unui timer, astfel se poate genera
ntrzierea necesar nainte de generarea impulsului de amorsare a triacului. n plus
comparatorul poate declana o ntrerupere. Utilizatorul poate selecta declanarea ntreruperii
pe frontul cresctor sau descresctor. Este posibil s se selecteze oricare dintre pinii ADC7-0
(intrare analogic pentru convertorul ADC) pentru a nlocui intrarea negativ a
comparatorului. Pentru a utiliza aceast opiune se utilizeaz multiplexorul ADC (ADC
trebuie s fie oprit).
135
Condensator
permanent
Condensator
de pornire
Intrerupator
centrifugal
Alimentare
220V c.a. Infasurare
Rotor
stator
Infasurare de
pornire
dac motorul nu pornete din anumite motive (de exemplu o sarcin excesiv)
nfurarea de pornire rmne cuplat tot timpul i pune n pericol integritatea
motorului
136
Curentul absorbit
(simulare 1,8s de la
pornire)
Turaia
137
Alimentare 220V
c.a.
K
Motor
asincron
monofazat
R1
R2
Traductor de
temperatur
Trad.
curent
MICROCONTROLLER
FUJITSU
Condensator i
nfurare de pornire
curentul nu scade sub valoarea de prag n 3s se consider c este indeplinit condiia de avarie
i comutatorul K este deschis. Dup pornirea motorului se msoar temperatura carcasei la
intervale de timp constante i comutatorul K se deschide dac temperatura crete peste o
anumit limit.
Sistemul de dezvoltare cu care a fost realizat aplicaia a fost sistemul Concerto care conine
un microcontroller Fujitsu pe 8 bii din familia F2MC-8FX (Basoon). Aceste microcontrollere
conin 71 de linii de I/O, 7 canale timer, 12 linii de conversie A/D, 12 linii de ntrerupere
extern. Mediul de dezvoltare a prii software a fost Softune Workbench pus la dispoziie de
Fujitsu care conine: compilator ANSI C, macro asamblor, editor de legturi, simulator,
emulator, verificator C, analizor C.
O fotografie cu modulele experimentale este dat n figura 6.14.
Circuit de
putere:
Traductor
Hall de curent
Triac cu
radiator i
ventilator
Modulul de
dezvoltare
Concerto
Redresor de
precizie cu AO
i decuplare
optic
Motorul i
placa de prob
139
Traductorul de curent folosit a fost un traductor cu efect Hall de tip LEM LA100P care are un
factor de divizare de 2000:1. Msurarea curentului se face fr ntreruperea circuitului,
conductorul prin care trece curentul intr ntr-un orificiu al traductorului Hall. Traductorul
este alimentat cu tensiuni continue de + i 12V, i ieirea este bipolar. De aceea pentru a
putea conecta intrarea unui convertor A/D la ieirea traductorului Hall este nevoie de o
redresare. Pentru ca precizia unui redresor cu diod nu este suficient s-a folosit o redresare
de precizie cu amplificator operaional fr prag. Acest traductor a fost folosit la msurarea
curentului cu precizie, dar este un traductor scump aa nct se recomand ca n producia de
serie s fie nlocuit cu o spiral nfurat pe conductorul parcurs de curent sau cu un
transformator de msur.
Separarea galvanic a fost realizat pentru ncercrile n laborator furniznd impulsurile de
amorsare pentru triac prin intermediul unui optotriac MOC 3020. Pentru msurarea tensiunii
s-a folosit de asemenea decuplare optic cu optocuplor. Cel mai complicat a fost alegerea unui
sistem de alimentare pentru microcontroller, de mici dimensiuni i ieftin. A fost ales un
convertor AC-DC n comutaie al firmei Rohm care este un circuit hibrid de mici dimensiuni
care convertete direct tensiunea alternativ de 220V n tensiune continu de 5V.
Apa
2,6%
Neglijen 25,7%
Foc 8,2%
Vandalisme 8.,9%
Izolaie 27,9%
Supratensiuni 26,6%
Furtuni 0,1%
140
141
Senzor Hall de
curent i senzor
de tensiune
Comanda triac
pentru
decuplarea
tensiunii
Microcontroller
Sursa de
alimentare
Convertor AD
Port I/O
Transmisia
datelor prin
Internet
Sistem cu
microcontroller
pentru
ntreruperea
tensiunii la
apariia unei
supratensiuni sau
scurtcircuit
142
Observaii:
1. Sursa de alimentare trebuie s poat suporta creterile de tensiune pe linie pentru ca
dispozitivul de protecie s nu se defecteze;
2. Curentul de scurtcircuit trebuie s nu depeasc curentul maxim nerepetitiv prin triac (de
circa 10 ori mai mare dect curentul maxim repetitiv).
Schema electric a dispozitivului este dat n figura 6.18.
Plus15V
D4
D2
R1 56K
C4
4700uF/25V
R2
10K
T1
12
DIODE
D1
1
1N4001
U1
L7805
2x6V
1
10
220V~
VIN
VOUT
2
3
3
6
1
7
D3
1N4001
C1
4700uF/25V
D
N
G
6
7
Minus15V
8
D5
R8
319K
C5
9
12MHz
4700uF/25V
10
11
C2
30pF
C3
30pF
12
13
R7
R LIM (0,8)
P1
0-10K
14
R6
SARCINA
(RESET)PC6
PC5(ADC5)
(RXD)PD0
PC4(ADC4)
(TXD)PD1
PC3(ADC3)
(INT0)PD2
PC2(ADC2)
(INT1)PD3
PC1(ADC1)
(XCK/T0)PD4
PC0(ADC0)
VCC
GND
GND
AREF
(XTAL)PB6
AVCC
(XTAL2)PB7
(T1)PD5
PB5(SCK)
PB4(MISO)
(AIN0)PD6
PB3(MOSI/OC2)
(AIN1)PD7
PB2(SS/OC1B)
(ICP)PB0
PB1(OC1A)
28
27
26
25
24
23
22
21
20
19
18
17
16
15
ATmega8
R9
21.7K
+15V
-15V
BLOC DETECTOR
DE VARF
HALL
LEM LA 100-P
R4
R5
Q1
BTA41/600B
1 470
370
U4
MOC3020
1
2
3
4
BLOC DECUPLARE
143
Se blocheaz
tensiunea
144
Curentul
atinge limita 1
Curentul depete
a 2-a limit
Se testeaz meninerea
supracurentului
n ipoteza unui supracurent cu vitez mic de cretere sunt vizibile cele 2 etape. Pe graficul de
sus, n momentul 8 apare un supracurent i triacul este comandat cu un unghi de faz pentru
reducerea tensiunii medii pe sarcin. Curentul crete n continuare i n momentul 12 triacul
este blocat, protejnd sarcina. n momentul 15 se testeaz meninerea supracurentului sau
scurtcircuitului. Se poate observa c timpul maxim de blocare a triacului n cazul unui
scurtcircuit este de 10ms. Pe graficul de jos pot fi vzute impulsurile de amorsare a triacului.
145
Tensiunea crete
treptat
Recuplarea
sarcinii
146
Microcontroller
Conexiune
Ethernet
Web server
(Site player)
147
prin modem GSM, comunicaia fiind asigurat prin SMS sau GPRS;
prin INTERNET, cu un dispozitiv de tip web server care preia datele de la
microcontroller i le posteaz pe un site.
Componentele sistemului:
1. Modulul cu microcontroller i circuite anexe;
2. Modulul de putere care conine triacul i traductorii de curent i tensiune;
3. Modulul web server (Site Player) conectat la Internet care creaz o pagin pe care sunt
afiate evenimentele din reea precum i o diagram a consumului.
Bibliografie
[1] www.national.com/ms/CN/CN-6.pdf, [online], Triac Control Using the COP400
Microcontroller Family
[2] Magdun O., Covrig M., The numerical simulation in Matlab-Simulink of an electrical
drive with two-phased induction motor, Advanced Topics in Electrical Engineering
ATEE 2002, Bucharest, 29 November, 2002
[3] F2MC-8FX Fujitsu Semiconductor Preliminary
[4] AN 887, AC Induction Motor Fundamentals, Microchip, 2004
[5] AN900, Controlling 3- Phase AC Induction Motors using the PIC 18F4431, Microchip,
2004
[6] Stoian C., Misca T., Soluii privind protecia la supratensiuni atmosferice si de comutaie,
http://www.eximprod.ro/produse/supratensiuni.pdf
[7] http://www.obiectivbr.ro/component/content/article/38027.html
[8] www.dehn.de [online]
[9] Ogrutan P., Munteanu R., Suciu L., Dispozitiv de protecie la scurtcircuit i
supratensiune pentru receptori de energie electric, Brevet de inventie nr. 122067/2008
148
149
alegerea unei transmisii WLAN, costurile fiind ns mai mari ca la variantele anterioare. n
consecin, principalele criterii de alegere a metodei de transmisie sunt:
Distana de transmisie;
Debitul de informaie;
Restricii determinate de conectarea la o reea existen;
Poziia geografic;
Costurile admisibile.
7.2.Transmisii simple
Pentru a realiza o transmisie simpl de date la distane de civa metri, cu debit mic de
informaie i care nu trebuie s fie interconectat printr-un anumit standard ntr-o reea de date
se pot folosi module sau interfee cu protocol proprietar. Consultnd pagina web a unei firme
de componente (www.adelaida.com) se pot gsi multe asemenea module, cu preuri variind
ntre 6 i 50 de dolari la cumprarea unei buci.
7.2.1.Module RF
Perechea de circuite RFM01 (receptor) i RFM02 (emitor), figura 7.1 sunt echipate cu
interfa SPI, lucreaz n banda 433MHz iar debitul de informaie maxim este de 115,2Kbps
la o distan de maximum 300m. Preul unui asemenea modul este de aproximativ 8 dolari.
150
dolari. Un proiect realizat cu aceast pereche de circuite este dat n [1], datele seriale
transmise fiind codate Manchester de un microcontroller PIC12F509. Schema este extrem de
simpl.
O alt variant este circuitul HM-TR (figura 7.5) construit de Hope Microelectronics Co. Ltd.
[2] care conine un receptor i un transmitor pe aceeai plac care pot asigura comunicaia
half duplex ntre dou puncte, interfaa fiind RS232.
152
Anten
Filtru
de
intrare
RX
Filtru
Filtru
Demodulator
TX
Comutator
SINTETIZATOR
Modulator
Controlul
puterii de
emisie
Circuit de control
Adrese, comenzi, stri
Interfa serial sincron
Date digitale
Toate celulele receptorului sunt concepute s poat lucra ntre 400-1000MHz. Amplificarea
primei celule este programabil prin registrul CTRL1. Comutatorul RX/TX protejeaz
intrarea receptorului de excursia mare de tensiuni a emitorului (pn la 10V vrf la vrf la o
tensiune de alimentare de 5,5V). Comutatorul este comandat de un bit de control.
Demodulatorul este format dintr-un oscilator care oscileaz la frecvena Fin (a semnalului de
intrare), frecvena liber de oscilaie fiind F0. Faza semnalului de ieire din oscilator este
proporional cu diferena ntre Fin i F0. Un circuit SAU EXCLUSIV transform diferena de
faz n factor de umplere, apoi un filtru trece jos o transform n tensiune. Dac Fin = F0
factorul de umplere este 50% i tensiunea de ieire este VDD/2. Chiar i primul bit poate fi
detectat corect aa nct nu mai este nevoie s se insereze un ir de bii 010101 pentru
sincronizarea receptorului. Tensiunea de ieire este convertit n nivele CMOS cu un
comparator cu rezoluie mare. Tensiunea de comparaie se extrage din valoarea medie a
semnalului analogic demodulat. Pentru un cod de tip Manchester cu un numr de zerouri
aproape egal cu cel de unu, schema este eficient. Tensiunea de comparaie este scoas la un
pin exterior. O alt posibilitate este de a fixa tensiunea de comparaie din exterior la VDD/2 cu
un divizor rezistiv. Astfel sunt posibile i codri NRZ. Pentru a permite comparaii foarte
exacte, tensiunea de comparaie se poate modifica n jurul valorii VDD/2 prin program. Este
implementat un DAC de 4 bii, programarea fcndu-se n registrul DTR.
Amplificatorul de putere de ieire poate genera 10dBm (10mW) n 3 canale foarte utilizate
(434MHz, 868MHz i 915MHz) (la 2,4V alimentare). Puterea maxim poate fi mai mare dac
tensiunea de alimentare este mai mare, astfel n canalul 400MHz, la 4V, puterea poate fi pn
la +19dBm. n banda 868MHz circuitul poate genera 14dBm, ceea ce reprezint nivelul
maxim admis n Comunitatea European. Curentul absorbit de circuit pentru a obine aceste
puteri de ieire este de 39-46mA, funcie de canal. Controlul puterii se poate face n 2 moduri:
Un rezistor extern stabilete puterea maxim, funcie de reglementrile legale n ara
respectiv;
Cu 2 bii din registrul de control CTRL1 se pot stabili 8 nivele de putere, sub puterea
maxim.
Stabilirea puterii prin soft este util la economia de energie. Astfel, 2 circuite care se afl n
legtur radio pot comunica nivelul de putere i l pot micora pn la nivelul la care
comunicaia se mai poate desfura corect. Etajul de putere are integrat o bucl de control a
puterii pentru a micora sensibilitatea puterii de ieire la modificarea temperaturii sau a
tensiunii de alimentare. Cu ct excursia tensiunii de ieire este mai mare, cu att i eficiena
etajului de putere este mai mare. Cu o alimentare de 3V, tensiunea de ieire este de +5V vrf
la vrf sau 1,77V valoare eficace. Pentru a emite cu 10mW (10dBm) rezistena de sarcin este
RS=314 . Impedana antenei fiind de 50 este nevoie de un filtru pentru adaptarea de
impedan. Filtrul trebuie realizat cu atenie, cu componente SMD de suprafa mic, cu mase
bune pentru a nu radia armonici superioare. Filtrul, n afar de rolul de adaptare de impedane
poate micora nivelul de armonici superioare generate n anten, conform cu reglementrile
din ara respectiv.
154
AT86RF
MC AVR
DataMsg
DataClk
Wakeup
SDATA
SCK
SLE
Px.4
Int1
Int0
Px.1
Px.2
Px.3
AT86RF
DataMsg
DataClk
Wakeup
SDATA
SCK
SLE
Figura 7.8: Conectarea prin UART (stnga) i la porturi paralele de uz general (dreapta)
n stnga este prezentat o variant de conectare a radio modemului la interfaa UART a
microcontrollerului. Liniile RxD i TxD sunt unite pentru c DataMsg este bidirecional.
Canalul UART trebuie programat half duplex. Semnalul Wakeup generat de modem comand
pe o linie de ntrerupere ieirea din stand by a microcontrollerului. Pentru comenzi se folosesc
trei linii dintr-un port paralel, SDATA fiind o linie bidirecional, toate liniile fiind comandate
software. Dac nu este disponibil un port UART se poate folosi varianta din figura 7.8
155
dreapta, toate semnalele provenind din porturi paralele de uz general. Tactul pentru date
DataClk este generat de modem la mijlocul bitului de date.
Modem
GPRS
Controller
de staie
Staie GSM
(Base
Station)
PCU
HLR
...
...
...
GPRS
SGSN
GGSN
Internet
156
transmisie ntre acestea din urm. Prin interfaa dintre BS i SGSN circul pachete de date,
SMS-uri n mod GPRS i semnalizri. Astfel, SGSN verific HLR (registrul de localizare),
aloc o adres IP, deschide un canal logic pentru transmisia datelor ctre PCU i i cere
acestuia alocarea i gestionarea resurselor necesare pentru stabilirea comunicaiei ntre staia
mobil i BS.
Sistemul de transmisie GPRS este pus la dispoziie de operatorii de telefonie mobil i datele
achiziionate sunt trimise la un server al utilizatorului. Fiecare modul GPRS trebuie s aib un
card SIM furnizat de operatorul de telefonie mobil cu un tip de abonament sau n sistem prepltit pentru transferul de date. Tarifele sunt de regul funcie de traficul realizat.
n aplicaiile realizate au fost folosite dou tipuri de module GPRS, produse de TELIT [4],
modelul GM862-GPRS i modelul EZ10. Ambele modele sunt echipate cu interfee RS232,
figura 7.10.
157
Interfaa
USB
Modulul
TELIT
Interfaa
RS232
Cupl de
alimentare
7.3.2.Comenzi AT
Conexiunea modulului TELIT cu microcontrollerul se face prin interfaa serial RS232,
comunicaia fiind bazat pe comenzi AT. Comenzile AT sunt iruri de date care ncep cu
prefixul AT i pot fi trimise modulului cu un program cum este de exemplu Hyper-Terminal
din Windows dac modulul este conectat la un PC prin interfaa RS232 sau direct de la
microcontroller. Conectarea la un PC este util n faza iniial de punere la punct a prii
software. Dup ce programul a fost pus la punct se programeaz microcontrollerul care
comunic cu modulul GPRS tot prin interfaa serial RS232, cu aceleai comenzi AT.
La activarea conexiunii GPRS trebuie specificai parametrii reelei i numrul de telefon
apelat i se stabilete o conexiune ntre modem i un server de date (nu se poate stabili o
conexiune ntre dou modemuri GPRS). Conectarea cu o aplicaie aflat pe un server se
realizeaz astfel:
Cu o comand AT se seteaz proprietile GPRS pentru a permite modemului GPRS
activeze conexiunea GPRS ori de cte ori este nevoie de un transfer de date;
Cu o comand AT se seteaz parametrii de autentificare, nume utilizator i parol care
vor fi folosii pentru validarea conectrii;
Cu o comand AT se definesc portul de conectare la server i protocolul UDP sau
TCP-IP;
Se pornete conexiunea cu o comand de formare a numrului i conectare.
Cteva dintre comenzile utilizate la conectare sunt:
AT- Comand vid, va ntoarce ntotdeauna rspunsul OK , folosit sub forma AT
AT#USERID[=<user>] se trimite numele reelei pentru autentificare, folosit sub
forma AT#USERID="net.vodafone.ro (autentificare)
AT#PASSW= <pwd> - se trimite parola pentru autentificare, folosit sub forma
AT#PASSW="vodafone" (parol)
AT+CPIN[=<pin> [,<newpin>]] se trimite codul PIN, folosit sub forma
AT+CPIN=2649 (cod PIN)
AT+CREG=? - Dupa ce se introduce codul PIN al cartelei SIM se asteapta pn cnd
se efectueaz conectarea. Comanda a fost folosita n forma: AT+CREG?
AT+CGDCONT=1 - Se utilizeaz o conexiune IP prin serverul GGSN cu numele
net.vodafone.ro fr o compresie a datelor sau a header-ului pachetelor. Comanda a
fost folosit n forma: AT+CGDCONT=1,"ip","net.vodafone.ro","0.0.0.0",0,0
AT#GPRS[=[<mode>]] activare GPRS cu 1, dezactivare cu 0, transmisia a fost
activat cu AT#GPRS=1 . AT#GPRS? interogheaz starea modemului
159
AT#SKTD=0 - Tipul socketului folosit este TCP, numrul portului pe care ascult
serverul este 2222, adresa de IP a serverului este 86.125.93.184 iar conexiunea se
nchide cnd serverul nchide portul. Comanda a fost folosit n forma:
AT#SKTD=0,2222,"86.125.93.184",0Programul arat astfel:
at
OK
at+cpin=2649
OK
at++CREG: 0,1
OK
at#userid="net.vodafone.ro
OK
at#passw="vodafone" OK
at+cgdcont=1,"ip","net.vodafone.ro","0.0.0.0",0,0
OK
at#gprs=1
+IP: 172.23.65.136
OK
at#sktd=0,2222,"86.125.93.184",0
CONNECT
Dup aceast secven urmeaz transmiterea datelor. Practic tot ce primete modulul prin
USART va fi transmis ctre server urmnd ca dup nchiderea conexiunii modulul s fie
trecut n stare oprit. O list complet a comenzilor AT se poate gsi n documentaiile
TELIT, de exemplu n [5]. Oprirea sa se va face hardware. Transferul de date ntre modulul cu
microcontroller i modemul GPRS are loc n aplicaiile realizate astfel:
1. Unitatea de procesare selecteaz prin intermediul circuitului de selecie ieirea
USART-ului ctre modemul GPRS.
2. Unitatea de procesare activeaz modemul.
3. Unitatea de procesare iniializeaz nregistrarea n reeaua GSM a modemului i
conectarea la GPRS.
4. Unitatea de procesare transmite efectiv pe USART datele de transmis. Aceste date vor
fi transmise prin intermediul modemului la server-ul cu o anumit adres IP. Pe acest
server este rulat un program ce ascult i primete pe portul 2222 pachete prin TCP/IP.
Aceste pachete conin ca identificator codul IMEI (International Mobile Equipment
Identity Identitatea Internaional a Echipamentului Mobil) al modemului, cod ce
este unic. Ca msur de siguran, acest cod este cutat ntr-o list n care se afl toate
codurile IMEI ale echipamentelor ce vor fi utilizate, iar dac codul IMEI nu se afl n
lista echipamentelor va nchide conexiunea.
5. Unitatea de procesare dezactiveaz modemul;
Principala dificultate n aceste aplicaii este faptul c se utilizeaz de regul mai multe canale
USART. Astfel la primele aplicaii s-au folosit module GPRS i GPS diferite, deci dou
canale USART folosite. EZ10 realizeaz o transmisie GPRS i GPS pe acelai canal, dar a
160
Microcontroller
TX
MAX232
MUX
MAX232
RX
PI/O (selecie)
7.4. Bluetooth
Prin Bluetooth se realizeaz transferuri de date pe distane scurte ntre un calculator i diverse
echipamente periferice, de exemplu cti, telefoane mobile, playere, imprimante, camere
video, GPS etc. Numele provine de la numele unui rege danez, Blatand din secolul 10 care a
unit triburile scandinave. Modulaia datelor este asemntoare cu cea de la WLAN, adic
mprirea spectrului alocat n mai multe canale i o modulaie GFSK (Gaussian FrequencyShift Keying) a datelor pe fiecare canal. n modul de transmisie de date salturile de frecven
sunt 1600/s, iar n modul de descoperire poate fi de 3200/s pentru a micora timpul de
conectare. Spectrul alocat este situat n banda de 2,4GHz, ntre 2,402GHz i 2,480GHz.
Distana de transmisie este de uzual de 1m, viteza fiind de 1Mbps, dar exist unele dispozitive
cu putere mai mare de emisie care asigur distane pn la 100m. Conectarea unui dispozitiv
161
AMP
SPI
UART
USB
PCM
PIO
FLASH
PVcc
7.4.1.Interfee Bluetooth
Interfaa Bluetooth de la Rayson BTM222. figura 7.14 conine un nucleu BlueCore4 cu
interfee de conectare SPI, UART, USB i o interfa PCM (Pulse Code Modulation) pentru
conectarea unui modul audio. De la nucleu datele sunt emise printr-un amplificator de putere
prin anten, iar datele recepionate sunt amplificate cu un LNA. Alimentarea de putere i cea a
nucleului sunt diferite.
Interfaa asigur transfer Bluetooth versiunea 2 cu EDR (Enhanced Data Rate) de pn la
3Mbps. Sunt posibile moduri de lucru cu economie de energie. Alimentarea este ntre 3V i
3,6V, puterea de emisie fiind de 18dBm.
Acest tip de modul Bluetooth admite comenzi AT. Comenzile AT sunt formate din prefixul
AT, o liter care reprezint tipul comenzii, apoi parametri:
162
ATEX stabilete ecoul la o transmisie USART, X=0 fr ecou, X=1 cu ecou, X=? se
interogheaz starea curent
ATF? caut dispozitive timp de 60s i afieaz numele lor
ATHX seteaz permisiunea de descoperire, X=0 nu poate fi descoperit, X=1 poate
fi descoperit, X=? se interogheaz starea curent
ATI? interogheaz versiunea software
ATKX stabilete numrul de bii de Stop la transmisia serial
ATLX - stabilete viteza de transfer la transmisia serial
ATMX stabilete controlul de paritate
ATN=xxx. stabilete un nume dispozitivului, maximum 16 caractere
ATO comand de conectare automat
ATP=xxxx trimite codul PIN
ATQX seteaz trimiterea confirmrii execuiei unei comenzi
ATRX stabilete modul master sau slave
ATU=parola permite accesul cu parol la upgrade de firmware
ATZ restaureaz setrile iniiale
Un alt modul de inetrfa Bluetooth este modulul Erissson ROK 101 008, echipat cu interfee
serial USART, PCM i I2C, figura 7.15 [8].
Modulul conine un transceiver radio PBA313 construit pe baza unui circuit ASIC de la care
datele sunt transmise prin circuite BALUN (BALanced UNbalanced) prin amplificatoare spre
anten. La recepia datelor este folosit o bucl PLL. Microcontrollerul este un ARM7 cu
capacitatea de prelucrare voce de tip ROP101. Un tact de 13MHz cu acurateea de 20ppm este
montat pe plac. O schem electric tipic de utilizare pentru transferul de date i voce, n
pricipiu valabil pentru ambele module prezentate este dat n figura 7.16.
163
Pentru comanda modulului i transferul datelor se folosesc comenzile HCI (Host Control
Interface) conform standardului Bluetooth v1.0B. Ericsson are cteva comenzi HCI proprii,
aa cum este de exemplu cea de stabilire a vitezei de comunicaie prin RS232. Ericsson pune
la dispoziia dezvoltatorilor un sistem de dezvoltare n care intr HCIdriver, un driver pentru
folosit de gazd (PC), L2CAP , RFCOMM pentru emularea unui port serial i SDP (Service
Discovery Protocol) pentru identificarea serviciilor disponibile la un dispozitiv Bluetooth.
Vcc
MC ARM7
I2C
UART
PCM
FLASH
Transceiver radio PBA313
BALUN
ASIC
BALUN
PVcc
Vcc
RS232
MAX3232
UART
CODEC
ROK101
sau
BTM222
PCM
Figura 7.16: Schema electric tipic de utilizare pentru transferul de date i voce
Codul instruciunii
OCF (10b)
12
OGF (6b)
16
20
24
Numrul de
parametri
28
31
Parametrii
165
7.4.2.Microcontroller Bluetooth
Un microcontroller complex Bluetooth este Atmel AT76C551 bazat pe un nucleu ARM7.
Microcontrollerul prototip este echipat cu interfee USB, UART i PCMCIA i se folosete la
punerea la punct a aplicaiilor. Pentru producia n serie se fabric microcontrollere cu una
dintre interfee. Microcontrollerul poate fi folosit la realizarea adaptoarelor USB Bluetooth
pentru calculatoare desktop, adaptoare PCMCIA pentru notebook-uri, adaptoare USB pentru
imprimante, adaptoare pentru camere digitale, telefoane mobile, PDA etc.
O schem bloc simplificat a acestui microcontroller este dat n figura 7.19.
Microcontrollerul are o structur complex, capsula prototipului fiind LQFP 176. Arhitectura
microcontrollerului se bazeaz pe nucleul ARM7TDMI, toate interfeele i memoria SRAM
intern de 32k fiind conectate printr-o magistral intern pe 32 de bii. Frecvena este de
24MHz i este posibil oprirea oricrei interfee pentru economia de energie. Nucleul ARM
este un procesor RISC pe 32 de bii care poate executa instruciuni pe 32 de bii sau un subset
de instruciuni compresate pe 16 bii n modul Thumb.
166
Datele de la interfeele USB i PCMCIA pot fi stocate n memoria intern dar i ntr-o
memorie extern organizat n cuvinte de 8 sau 16 bii, de tip SRAM sau Flash cu capacitate
maxim de 512ko la organizare pe 8 bii i 1Mo la organizare pe 16 bii. Memoria extern
este accesibil prin dou porturi, unul dedicat nucleului ARM i unul interfeelor USB sau
PCMCIA. Interfaa PCMCIA 2.1 este o interfa pe 8 bii cu posibilitatea de acces la memoria
intern i extern i care conine regitri pentru programarea, citirea strii i schimbul de date
cu interfaa Bluetooth.
Nucleu ARM7
Regitri
Controller
USB
Bluetooth
Controller
2x64k RAM
64k RAM
Interfa
PCMCIA
UART
32k RAM
Controller de memorie
Voice Codec
2x32k RAM
RAM intern
64k
DAC
ADC
Controller de
ntreruperi
Memorie extern
RAM/FLASH
2xTimer
MSB
DATA
CLOCK
168
7.5.Zigbee
Transmisia ZigBee este o transmisie wireless mai ieftin dect Bluetooth, asigur un consum
mai redus de energie i dimensiuni mici dar asigur i un debit mai mic de date. Numele se
pare c provine de la zborul n zig zag al albinelor care i transmit date referitoare la poziia
sursei de hran. Acest tip de transmisie se preteaz la aplicaii de tip reea de senzori (reele
mesh). Prima apariie a ZigBee a fost n 1998, ca urmare a nevoii de o interfa mai ieftin
dect Bluetooth pentru aplicaii cu muli senzori n care reeaua se auto-configureaz la
intrarea sau ieirea unor senzori din activitate. Ca aplicaii se pot meniona sisteme de senzori
n domeniul casnic (incendiu, fum etc.), industrial, medical pentru urmrirea datelor provenite
de la un pacient, n telecomunicaii etc. Banda alocat este 2,4GHz, dar i alte 2 benzi folosite
n diferite ri. Modulaia este n cuadratur, QPSK.i asigur 250kbps la o distan uzual pn
la 70m. Intervalul de band folosit este ntre 2,405GHz i 2,480GHz, mprit n canale de
5MHz. Modulele ZigBee pot lucra n modul punct la punct sau punct la multipunct i o reea
de astfel de dispozitive necesit un dispozitiv cu funcia de coordonator. Reeaua mesh
permite conexiuni radio de date ntre dispozitive mai ndeprtate dect raza de aciune radio
prin interpunerea unor noduri ZigBee intermediare iar defectarea unui nod poate fi
transparent prin preluarea sarcinilor de alt nod. Zigbee a fost standardizat de IEEE cu
numele IEEE 802.15.4.
rencercare. Puterea de emisie este de maximum 50mW (17dBm) la 2,4GHz. Pentru legtura
cu senzorii modulul are 10 pini de I/O i un canal de conversie A/D pe 10 bii. Tensiunea de
alimentare poate fi ntre 2,1V i 3,3V, curentul maxim (n cazul transmisiei) fiind de 295mA.
Exist i variante de module cu consum mic i raz de transmisie mai mic.
Aceste module pot realiza o reea mesh i astfel se pot implementa reele cu proprieti de
descoperire a noilor dispozitive, eliminarea dispozitivelor defecte etc. Astfel modelul XBeePRO asigur doar o comunicaie punct la punct iar XBee Znet poate fi interconectat ntr-o
reea mesh.
Un transceiver ZigBee care se poate conecta cu uurin la un microcontroller este
transceiverul MRF24J40 de la Microchip, compatibil cu speciicaiile IEEE.15.4. Pe lng
protocolul ZigBee transceiverul poate implementa i MiWi sau protocoale proprietare. Pentru
conectarea cu microcontrollerul se folosete o interfa SPI cu 4 fire. Structura i
performanele circuitului sunt asemntoare cu ale unui transceiver Bluetooth. Circuitul are
integrate dou generatoare de tact, unul de 20MHz care poate fi folosit i ca tact pentru
microcontroller i unul de 32,768kHz. Curentul absorbit este mai mic de 22mA la emisie i
18mA la recepie, fiind tipic de 2A n modul adormit. Capsula este mic, 40 de pini QFN.
Schema bloc simplificat a circuitului este dat n figura 7.22.
RF
MAC
Formare pachete
Modul
securitate
Interfaa SPI
Reset
ntreruperi
GPIO
170
A5 A4 A3
A2
A1 A0 1
D7 D6
D5 D4 D3 D2 D1 D0
171
Intr n
calculul
CRC
Tip cmp
Preambul
nceput cadru
Lungime cadru
Control cadru
Numr secven
Adresa destinaiei
Adresa sursei
Date
CRC
Lungime (octei)
4
1
1
2
1
0, 4, 10
0, 2, 4, 8, 10
0-122
2
Intr n calculul
lungimii
cadrului
GTS2
GTS1
Spaiu rezervat
pentru cadrul de
semnalizare
Cadre de semnalizare
Figura 7.25: Structura unui supercadru
Coordonatorul emite un cadru de semnalizare prin care stabilete structura cadrelor i foreaz
nodurile care au date de trimis s le trimit n perioada rezervat dup cadrul de semnalizare.
172
Urmeaz apoi o perioad rezervat accesului liber al nodurilor prin CSMA-CA, dac nu este
n curs o alt transmisie. Partea a doua a supercadrului este alocat transmisiilor de date care
au nevoie de o band garantat, GTS. Alocarea unui slot de timp transferurilor care au nevoie
este un concept ntlnit i la USB i la IEEE 1394. La recepia cadrelor fiecare cadru este
verificat conform cu filtrul de acceptan definit. Dac cadrul este adresat circuitului
respectiv, dac tipul cadrului este corect, eventual dac CRC este corect (dac circuitul este
programat n acest sens) cadrul este stocat n RxFIFO i microcontrollerul gazd este anunat
printr-o ntrerupere.
Cadrul rmne n RxFIFO pn gazda l citete. Se poate defini un mod de citire numit mod
de eroare n care se citesc toate cadrele cu preambul i delimitatori coreci, chiar dac nu au
trecut celelalte condiii de acceptan. MAC adaug n RxFIFO doi octei, unul LQI (Link
Quality Index) i RSSI (Receive Signal Strenght Indicator) pentru a putea fi citii de gazd.
7.5.2.Microcontroller ZigBee
O soluie ZigBee pe un singur chip de la ST este microcontrollerul SN250 [13], un circuit
mic, cu 48 de pini. Microcontrollerul include o unitate central XAP2b pe 16 bii i un
transceiver IEEE 802.15.4, figura 7.26.
Transceiverul conine blocul de recepie cu filtre concepute pentru a evita interferenele cu
WLAN i Bluetooth i blocul de emisie cu puterea de 3dBm. Memoria integrat este de
128koctei Flash i 5koctei SRAM. Dou controllere seriale asigur standardele de interfa
I2C, UART i SPI. Ca circuite de timp sunt integrate dou timere de 16 bii i un watchdog.
Un convertor ADC sigma delta de 12 bii asigur achiziia de semnale analogice i 17 linii de
I/O de uz general cu semnificaii duble asigur interfaa cu procesele digitale. Circuitul poate
lucra n moduri cu economie de energie, n mod Sleep consumnd 1A cu tact generat intern
cu un circuit RC. Este posibil i conectarea unui tact extern de 32,768kHz pentru moduri
Sleep care necesit acuratee temporal. Microcontrollerul este livrat cu software numit ZNet
pentru implementarea stivei ZigBee.
Microcontrollerul este mprit n dou domenii de alimentare, unul alimentat tot timpul care
conine blocul GPIO, un canal serial, watch dog-ul i alte cteva blocuri eseniale pentru
controlul funcionrii i un domeniu care poate avea alimentarea ntrerupt pentru economia
de energie.
Microcontrollerul poate fi utilizat n dou moduri de acces. Primul, mod sistem asigur
accesul la toate resursele interne- MAC, RF, Power Management, Watch dog, PTI (Packet
Trace Interface). Pentru a proteja software-ul ZNet de eventuale erori, n al doilea mod numit
mod aplicaie designer-ul de aplicaii nu are acces la toate resursele.
173
Emitor
RF
SRAM
MAC
IEEE
802.15.4
Receptor
Alimentate
permanent
Timer
UART
Unitate central
XAP2b
Encriptare
Packet
Trace
Interface
FLASH
Controller
ntreruperi
Canal
serial 2
Watch
dog
ADC
Oscilator
RC intern
CLK
MISO
MOSI
LOAD
GPIO 0-16
174
Un modul special PTI (Packet Trace Interface) poate fi folosit la diagnosticarea reelei. Acest
modul monitorizeaz toate cadrele Tx i Rx printr-o interfa asincron de 500kbps
unidirecional, doar de citire a cadrelor.
Unitatea central XAP2b a fost dezvoltat de Cambridge Consultants i are o arhitectur
Harvard pe 16 bii, att pentru date ct i pentru instruciuni. Adresarea este pe 15 bii pentru
date, deci un spaiu adresabil de 32k i de 16 bii pentru instruciuni, deci 64k. Unitatea
central are un sistem de protecie care permite programului ZNet s aib acces la toate
resursele n mod sistem, iar programul utilizator care ruleaz n mod aplicaie are anumite
restricii. Scrierea unor regitri sau zone de memorie protejate n mod aplicaie va determina o
eroare n etapa de punere la punct a programului n mediul de dezvoltare.
Memoria Flash de 128k integrat este mprit n 8 pri de 16k i este accesibil o parte n
zona de date i una n zona program. O zon numit EEPROM simulat este accesibil n
modul aplicaie. O zon de 1024 octei este rezervat datelor de identificare ale circuitului,
inclusiv date de calibrare. Accesul la memoria RAM i EEPROM este permis la citire i
scriere n mod sistem, iar n mod aplicaie este permis la citire n toat memoria i la scriere
doar n anumite zone, dedicate aplicaiei. n memorie este implementat i acceleratorul de
encriptare AES (Advanced Encryption Standard).
n modul aplicaie este posibil accesul la modulele GPIO, controllerele seriale, timere i ADC.
Liniile de I/O sunt comandate de cte doi regitri de citire date, scriere date, direcie, validare
rezistoare de pull up i validare rezistoare de pull down. Prin intermediul pinilor cu
semnificaii duble din GPIO pot fi accesate unele module interne. Un registru de control
configureaz semnificaia acestor pini.
Controllerul serial UART realizeaz transmisia asincron UART i sincron SPI sau I2C dar
nu simultan. Schema bloc modulului este dat n figura 7.27.
ntreruperi
Unitate
central
UART
Canal
DMA
SPI
I2C
Figura 7.27: Schema bloc a controllerului serial UART
175
TxD, RxD,
RTS, CTS
MISO,
MOSI, CLK
SCL, SDA
Transferul datelor are loc prin DMA, datele fiind stocate n buffere de 4 octei. Al doilea canal
serial are o schem bloc asemntoare, lipsete ns interfaa UART.
Convertorul ADC este un convertor sigma delta cu frecvena de eantionare programabil,
maximum 1MHz, figura 7.28. Timpul de eantionare poate fi ales ntre 32s i 4096s n
registrul de configurare al ADC. Sursele de semnal analogic pot fi 4 intrri ADC ADC0ADC3 unipolare sau difereniale ADC0-ADC1 i ADC2-ADC3, iar pentru test se pot alege ca
surse tensiunea de alimentare la intrare (2,1V-3,6V, se poate astfel monitoriza starea bateriei
de alimentare), sursa de alimentare pentru nucleu (1,8V) sau Vref. Tensiunea Vref este
realizat din tensiunea de alimentare, este de 1,2V i se poate folosi pentru calibrarea
convertorului. Dup validarea funcionrii convertorului cu un bit n registrul de configurare
convertorul va realiza conversii continuu, dup fiecare conversie activnd un semnal de
ntrerupere. Bitul de ntrerupere trebuie ters pentru ca terminarea unei noi conversii s l
poat seta din nou.
SN250
ntreruperi
Unitate
central
Convertor
ADC0
ADC1
ADC2
ADC3
Generare
Vref
Vdd
Figura 7.28: Schema bloc a convertorului sigma delta
SN250 conine dou timere pe 16 bii cu urmtoarele caracteristici:
Tact configurabil, tact principal 12MHz, 32,768kHz, tact RC 1kHz, sau de la o surs
extern, toate aceste tacte avnd posibilitatea de divizare;
Regitri de numrare pot fi ncrcai;
Fiecare timer are asociai 2 regitri de comparare la ieire i 2 de captur la intrare;
Timerele pot fi configurate pentru a genera semnale PWM;
Funcionarea poate fi cu o singur numrare sau continu.
n modul numrare timerul admite numrare nainte, napoi i alternant (nainte, napoi,
nainte). La numrarea nainte numrarea continu pn la atingerea unei valori stocate ntr-un
registru, iar cea napoi pn la zero. n modul de comparare, se introduc 2 regitri
suplimentari CMP A i CMP B de comparare. n modul captur la intrare exist 2 regitri care
rein valoarea numrat la apariia unui semnal de declanare din exterior.
n figura 7.29 se dau ca exemplu formele de und pentru modul de comparare la ieire.
176
Validare timer
Valoare contor
INT zero
INT A
INT B
INT maxim
Figura 7.29: Funcionarea timerului n mod comparare la ieire
177
O interfa special conceput de Cambridge Consultants este interfaa SIF, serial sincron
destinat diagnosticului i programrii circuitului SN250. Prin aceast interfa se pot citi i
scrie regitri din memorie n timp real, fr a afecta funcionalitatea circuitului. Aceast
interfa se folosete la testarea n stadiul de producie a circuitului i n stadiul de producie a
plachetei echipate, precum i pentru dezvoltarea de programe. Interfaa este de tip SPI cu un
semnal suplimentar de LOAD care trezete circuitul din modul de lucru cu economie de
energie.
O schem electric a unei aplicaii tipice este dat n figura 7.30. Un Balun (Balanced
Unbalanced) adapteaz impedanele ntre SN250 i anten pentru Tx i Rx. Un cristal de
24MHz asigur tactul de baz pentru circuit iar cristalul de 32,768kHz (opional) asigur
tactul pentru modul de lucru cu economie de energie.
7.6. RFID
Identificare prin frecven radio (Radio-Frequency Identification sau RFID) este o metod de
identificare automat care se bazeaz pe stocarea i regsirea datelor la distan, folosind
dispozitive numite etichete RFID ( tag RFID) i transmitoare RFID. Tehnologia necesit o
cooperare a unui aparat cititor de RFID cu eticheta RFID. O etichet RFID este un obiect mic
sau foarte mic (sub 1 mm x 1 mm) care poate fi aplicat sau ncorporat ntr-un produs, animal,
sau chiar persoan, cu scopul de identificare i urmrire, folosind undele radio. Unele etichete
pot fi citite de la muli metri deprtare, chiar mult peste 50 m, iar eticheta se poate afla i n
afara razei de vedere a cititorului.
O istorie a RFID scris de unul dintre cei care au dezvoltat aceast tehnologie este [15]. H.
Stockman a scris n 1948 prima lucrare care prevede posibilitatea RFID Communication by
Means of Reflected Power. n 1960 R. F. Harrington studiaz teoretic RFID dar primul
patent a fost acordat lui H.W. Cardullo n 1973 pentru o etichet RFID cu memorie [16]. n
1970 guvernul SUA a nceput cercetrile la Los Alamos pentru un sistem de urmrire a
materialelor nucleare, avndu-l ca membru pe J. Landt. Preluarea ideii de RFID n comerul
retail a constat n eticheta de un bit- articol pltit sau nu, n 1960. Dup Los Alamos
cercettorii au fondat propria companie pentru dezvoltarea de aplicaii comerciale. Primele
etichete au fost realizate cu funcionare la 125kHz, dar frecvena a crescut ulterior pentru a
extinde raza de aciune. n 1999 a fost fondat la MIT Auto-ID Center de cteva companii
importante pentru a realiza tag-uri ieftine care se pot ataa pe orice produs. La Auto-ID Center
s-au alipit peste 100 de companii pn n 2003 i au dezvoltat EPC (Electronic Product Code)
i o arhitectur de reea cu acces Internet pentru gestionarea datelor.
Cele mai multe etichete (tag-uri) RFID conin cel puin dou pri, figura 7.31.
un circuit integrat pentru stocarea i prelucrarea de informaii, modulare i
demodulare a unui semnal de radio-frecven (RF), i alte funcii de specialitate
(transponder RFID);
o anten pentru recepionarea i transmiterea de semnale radio.
178
Din cauza miniaturizrii permanente a tag-urilor, ajuns pn acolo nct ele sunt din ce n ce
mai greu de vzut i recunoscut, a aprut i o problematic grav - cea a potenialului pentru
spionaj aproape invizibil, n cele mai diverse domenii.
n figura 7.32 se observ cititorul (stnga) care genereaz un cmp electromagnetic pentru
alimentarea transponderului din eticheta RFID. Aceeai bobin este folosit ca anten pentru
transferul de date.
Cititor
RFID
Energie
Transponder
Controller
Memorie
Date
179
Etichetele pot fi pasive (ca n figura 7.32, cazul cel mai frecvent), ele folosesc energia
furnizat de cititor, fiind astfel mai mici, mai ieftine i avnd o via mai lung. Pentru
extinderea razei de funcionare etichetele pot fi active, avnd o surs de alimentare proprie.
Frecvena de lucru poate fi 125kHz care asigur un pre sczut dar o rat mic de transfer i o
etichet de dimensiuni mai mari. O alt frecven este de 13,56MHz care elimin
dezavantajele de la 125kHz dar costurile sunt mai mari. Alte frecvene utilizate n prezent sunt
cea de 869MHz 950MHz (funcie de zona geografic) i 2,4GHz, banda ISM n care se
aglomereaz aproape toate tipurile de comunicaii de raz scurt. O aplicaie RFID la
frecvena de 125kHz cu etichet activ a fost descris n capitolul de aplicaii auto la
monitorizarea presiunii n pneuri.
Din punctul de vedere al iniierii transferului exist dou situaii, cnd eticheta iniiaz
transferul cnd intr n zona de aciune a cititorului (TTF, Tag Talks First) cu dezavantajul c
intrarea simultan a mai multe etichete duce la apariia unor ntrzieri i a doua situaie cnd
cititorul interogheaz continuu zona de aciune i identific eticheta care intr n zon (RTF,
Reader Talks First).
Rx
Tx
GND
port 2
port 1
RS232
CALCULATOR
SAU MC GAZD
Lungime
cadru
Comand
Parametri
(1..n)
CRC
1 octet
1 octet
1 octet
n octei
2 octei
180
Tabelul 2
Adresa
modulului
Lungime
cadru
Rspuns
Parametri
(1..n)
Confirmare
CRC
operaie
1 octet
1 octet
1 octet
n octei
1 octet
2 octei
Fiecare etichet are o adres, dac adresa pus de cititor este 00H nu va rspunde nici un
modul, dac este FFH vor rspunde toate modulele aflate n raza de aciune. Parametri exist
sau nu n funcie de tipul comenzii. Confirmarea operaiei specific n rspuns corectitudinea
execuiei.
Transponderul HITAG1 din etichet este vzut de cititor ca o memorie organizat n 16
blocuri, fiecare bloc are 4 pagini, fiecare pagin are 4 octei, deci un total de 256 octei n 64
de pagini. Blocurile 0 i 1 sunt rezervate pentru configurare. Unele blocuri sunt publice, iar
altele sunt protejate la citire.
Pentru exemplificare se descriu cteva comenzi i rspunsuri care pot fi trimise de
calculatorul gazd spre HIM-005 prin interfaa serial n formatul din Tabelul 1 respectiv
Tabelul 2:
Scriere n etichet - codul instruciunii este A0H, parametri sunt 4 octei de scris i
adresa paginii (sunt 64 de pagini, adresa este ntre 00H i 3FH). Codul rspunsului
este A1H, ca parametri este dat adresa etichetei i confirmarea operaiei care este
FFH dac s-a scris cu succes;
Citirea din etichet - codul instruciunii este A2H, parametru este adresa paginii.
Codul rspunsului este A3H, ca parametri este dat adresa etichetei, cei 4 octei de
date citii i confirmarea operaiei care este FFH dac s-a citit cu succes;
Comanda de cuplare / decuplare a cmpului electromagnetic generat de anten - codul
comenzii este 10H /12H, fr parametri, rspunsul are codul 11H /13H i confirmarea
operaiei ntotdeauna FFH;
Scrierea / citirea unui bit din liniile de I/O locale ale HIM-005- codul comenzii este
E0H / E2H, parametru este numrul portului i bitul de scris, codul rspunsului este
E1H / E3H, parametru bitul citit i confirmarea operaiei ntotdeauna FFH;
Setarea amplificrii receptorului - codul comenzii este F0H, parametru este
amplificarea (0,1,2 sau 3), codul rspunsului este F1H i confirmarea operaiei
ntotdeauna FFH.
n figura 7.34 este artat un model experimental de sistem RFID cu Netronix HIM-005
realizat ca i proiect de licen. n stnga este modulul electronic cu HIM-005 i un
microcontroller ca i sistem gazd, cu antena cuplat i o etichet HITAG1 n partea de jos a
fotografiei. n dreapta este o captur de ecran a softului pus la dispoziie de Netronix pentru
citirea / scrierea etichetei.
181
7.6.2.Eticheta RFID
O etichet RFID la frecvena de 125kHz poate fi implementat cu transponderul Atmel
U3280M. Acest transponder conine n principal o memorie EEPROM de 256 bii organizat
n 32x16 bii, o interfa serial pe 2 fire pentru comunicaia cu un microcontroller gazd cu
un debit de maximum 10kBd, un modul de codificare / decodificare a datelor n cod bifazic
sau Manchester, permite modularea datelor n amplitudine i gestionarea alimentrii din
cmpul electromagnetic sau de la baterie. Utilizri posibile sunt la sisteme de acces, senzori
de poziie wireless, etc. Schema bloc a unei etichete cu U320M este dat n figura 7.35.
Energie
Transponder U320M
Emisie /
Recepie
Redresor
Date
EEPROM
512 bit
Interfa
serial
Detecie
cmp
Modulator
bifazic
Extragere
tact
FC NGAP
Gestionare
energie
MOD
182
Senzori,
elemente de
execuie
MC gazd
Vdd
SDA
SCL
Circuitul de intrare preia energia i semnalul din cmpul electromagnetic prin circuitul
oscilant LC i l redreseaz. Circuitul de gestionare a energiei comut alimentarea pe o
baterie extern (opional) sau pe energia cmpului, dac acesta exist. Tensiunea de
alimentare este scoas la un pin astfel nct s poat fi alimentat i microcontrollerul gazd.
Un condensator asigur existena tensiunii pe perioada n care cmpul este folosit pentru
comunicare. Pentru comunicare se poate modula intensitatea cmpului (cu pinul MOD) iar un
circuit de intrare detecteaz lipsa cmpului (gap) i genereaz semnalul NGAP. Un circuit
extrage tactul din cmp i formeaz semnalul FC, figura 7.36. Pentru ca microcontrollerul s
fie trezit la apariia cmpului semnalul NGAP trebuie conectat la o cerere de ntrerupere.
MOD
Tensiunea
pe anten
NGAP
FC
Front folosit pentru
wake-up
START Octet control ACK Octet date ACK Octet date ACK
183
Condiia de START este un front descresctor al SDA cnd SCL este 1 logic iar STOP un
front descresctor cnd SCL este 1 logic. Biii de date apar cnd SCL este 0 logic. Pentru
confirmarea ACK master-ul insereaz un tact SCL n plus i slave-ul pune linia n 0 dac
transmisia a fost corect i n 1 dac nu a fost corect.
Octetul de control conine adresa de rnd a memoriei EEPROM organizat n 32x16 cuvinte.
Bitul R/W arat dac este vorba de o citire sau scriere. n urma acestei comenzi un buffer de
date de 16 bii se umple cu informaia citit din EEPROM sau transmis prin serial pentru a
fi scris n EEPROM. Cei doi bii de control permit definirea octetului care se citete / scrie
primul, cel mai semnificativ sau cel mai puin semnificativ. Se poate defini i un mod de citire
cu incrementarea automat a adresei.
Cu o combinaie a biilor de control se poate programa cu octetul de control modulareabifazic sau Mancheste i modul de lucru cu comutarea automat de la alimentarea de la
baterie la cea din cmpul elctromagnetic. Dup alegerea modulrii se pot trimite/ recepiona
date de la modulator prin interfaa serial, figura 7.38.
STOP
184
ZigBee
GPRS
Aplicaii
Monitorizare
i control
Durata
bateriei
Bluetooth
Protocoale
proprietare
Reele
Internet
internaionale
de date i voce
Conectivitate
ntre
dispozitive
Conectivitate
ntre
dispozitive
Ani
Sptmni
Sptmni
Sptmni
Luni
Viteza
250kps
2Mbps
54Mbps
(300Mbps
la n)
720kbps
115kbps
Raza
100m
Km
100m
100m
200m
Avantaje
Comoditate
Pre i consum
mic, simplitate
Reea
Posibil
Posibil
Greu de
implementat
Acces Internet
802.11
Posibil
Prin analiza acestui tabel se pot deduce variantele optime de transmisie radio pentru fiecare
aplicaie. Dup alegerea principiului de transmisie se trece la alegerea variantei constructive.
n acest capitol sunt prezentate de regul cte trei variante constructive. Prima, cea mai
simpl, care optimizeaz timpul de realizare a unei aplicaii este folosirea unui modul
specializat. A doua, un compromis ntre timpul necesar dezvoltrii i costului este folosirea
unui circuit de interfa conectat la microcontrollerul aplicaiei. A treia, care asigur costul cel
mai redus al aplicaiei este utilizarea unui microcontroller care conine integrat interfaa de
comunicaii aleas. Totui, n aceast variant mai trebuie adugat de regul un circuit
transceiver (partea de RF).
Bibliografie
[1]
[2]
[3]
[4]
[5]
[6]
http://www.coolcircuit.com/project/rf_remote/
http://www.hoperf.com/
Ogruan P., Gerigan C., Banciu N., Memorii, interfee i periferice. Interfee
specializate, Ed. Transilvania Braov, 2003, 190 pagini, ISBN 973-635-118-1
http://www.telit.com/en/
www.semiconductorstore.com/pdf/newsite/Telit/GM862-GPS/GM862GPS_Software_User_Guide_r4.pdf
Gerigan C., Ogruan P., Pan Gh., Connecting More Measurement Devices to the
Serial Assynchronous Interface, Proceedings of the 8th International Conference on
Optimisation of Electric and Electronic Equipment, Braov, May16-17 2002, ISBN
973-635-012-6,Vol III ISBN 973-635-015-0, pp 711-716
185
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
[18]
[19]
http://en.wikipedia.org/wiki/Bluetooth
www.adelaida.ro
www.farnell.ro
Gerigan C., Ogruan P., Tehnici de interfaare, Ed. Transilvania Braov, 2000, 315p.,
ISBN 973-9474-94-2
www.temic.com
http://www.digi.com/
www.st.com
Ogrutan P., Microcontrollere si controllere grafice Fujitsu, Ed. Universitatii
Transilvania Brasov, 2006, 182 pag, ISBN 973-635-621-3
Landt J., The history of RFID,
http://www.transcore.com/pdf/AIM%20shrouds_of_time.pdf
http://www.rfidjournal.com/article/view/1338/1/129
www.netronix.pl
Ogrutan P., Romanca M., Kertesz C.Z., A Multisensor GPRS-Based Security System
for Intelligent Building, Acta Technica Napocensis, Electronics and
Telecommunications, vol.48, Nr. 3, 2007, ISSN 1221-6542, pp. 45-48
Alexandru, M., Romanca, M., Ogrutan, P., Remote temperature recording using
Bluetooth
technology,
Acta
Technica
Napocensis,
Electronics
and
Telecommunications, vol.48, Nr. 3, 2007, ISSN 1221-6542, pp. 27-30
186
Camera de
ionizare
Linie telefonic
analogic/ digital
Etaj analogic de
amplificare camera
de ionizare
Camera de detecie
cu element
fotosensibil
Unitate central cu
microcontroller
Atmega 16
Etaj analogic de
amplificare
camera de detectie
Sursa de alimentare
Intrare 12V DC
Ieiri 250V DC/ 5VDC /3,3V
Modem GPRS
(opional)
Modem de linie
telefonica (opional)
Antena
GPS/GPRS
188
8.2.Traductori
8.2.1.Camera de ionizare
Camera de ionizare este o incint nchis, de diferite forme (apropiate de forma cilindric) n
care se gsesc doi electrozi plan paraleli i aer n condiii normale sau cu circulaie forat.
Electrozii formeaz un condensator plan. Atomii de Radon vor produce prin descompunere
ionizarea aerului iar particulele ionizate vor produce n circuitul exterior un curent msurabil.
Schema camerei de ionizare este dat n figura 8.2.
Ion negativ
Incinta nchis cu aer
Ion pozitiv
V =
Q
= 0.96.10 3 V sau aproximativ 0,1mV/MeV
C
n urma ionizrii produse ionii pozitivi i cei negativi pot interaciona cu moleculele de aer i
pot aprea noi ioni pozitivi i negativi. Atunci cnd la electrozii camerei se aplic o tensiune
continu, n interiorul camerei apare un cmp electric care direcioneaz ionii ctre electrozi.
n lipsa cmpului electric ionii au o micare dezordonat. Ionizarea produs de
descompunerea unei particule radioactive produce n exterior apariia unui curent mic care d
natere unei tensiuni pe rezistena R. Apare un impuls de tensiune care poate fi vizualizat sau
achiziionat i nregistrat cu un sistem electronic de msurare.
Pentru msurarea numrului de particule de Radon din aer este necesar realizarea unei surse
de polarizare a camerei de ionizare cu tensiune variabil pentru a se putea stabili tensiunea
optim pentru detecie. n anumite condiii limea impulsului de tensiune msurat pe R va
putea oferi informaii despre energia particulei radioactive care a produs ionizarea, deci se va
putea stabili natura particulei.
189
8.2.2.Camera de detecie
Fante laterale
pentru intrarea
aerului
Element
fotosensibil
LED pentru
autotest
Catod, 250VDC
Semnal de
ieire
Figura 8.3: Camera de detecie
n interior se creeaz un cmp electric puternic. Particulele radioactive lovesc suprafaa
fotosensibil i dau natere unui semnal electric la ieire. nainte de utilizare se face un
autotest al funcionrii prin aprinderea unui LED (intensitate luminoas foarte mic) i
msurarea semnalului de ieire. Se compar valorile citite cu cele de referin i dac sunt n
gama de precizie acceptat ncepe msurtoarea. Dac nu, se afieaz un cod de eroare. n
lipsa iluminrii semnalul citit trebuie s fie apropiat de zero (ntr-un interval programat), dac
nu, zgomotul aprut poate fi datorat interferenelor electromagnetice. Se afieaz un cod de
eroare i se indic utilizatorului ndeprtarea surselor de cmp electromagnetic
Comportarea particulelor ncrcate n cmp electric este descris de ecuaia de micare a
electronilor n cmp electric uniform [7]:
m
dv
= qE unde m este masa electronului i q sarcina electric
dt
(8.1)
v = Et + M
Dup a doua integrare se obine r =
E.t 2
2
190
q
m
Considerm cmpul electric paralel cu axa Oy i electronii intr n cmp cu viteza v0 care
face unghiul cu axa Ox. Din ecuaia (8.1) rezult:
dv x
=0
dt
dv y
dt
= .E
v x = v 0 .t. cos
v y = .E y .t + v0 .t. sin
Dup a doua integrare, cu condiiile iniiale la t=0, x=0 i y=0:
x = v0 .t. cos
y == .E.
t2
+ v0 .t. sin
2
x2
y = .E
+ x.tg
2.v02 . cos 2
(8.2)
y = K.
x2
+ x.tg
cos 2
K=
unde
.E
2.v
2
0
q.E
2.10 6
2.m.v02
Se observ din aceste simulri c electronii vor fi direcionai ctre fotoelement / electrod
indiferent de unghiul de inciden. Simulrile sunt valabile pentru comportarea particulelor
ncrcate i n camera de ionizare i n camera de detecie.
0
210
3.99710
y ( x) 1 .10
210
10
y ( x) 1 .10
10
2 .10
2 10
10
50
100
100
10
10
2 .10
10
50
100
100
Figura 8.4: Traiectoria electronului n cmp electric pentru un unghi de intrare de 0 (stnga)
i 90(dreapta)
191
0
410
7.99410
y ( x) 1 .10
2 10
10
10
y ( x) 1 .10
10
10
10
2 .10
2 10
0
50
100
10
2 .10
100
50
100
100
Figura 8.5: Traiectoria electronului n cmp electric pentru un unghi de intrare de 0 (stnga)
i 90(dreapta) pentru un cmp cu intensitate dubl
Traductorul fotoelectric este o celul fotovoltaic, adic o jonciune pn cu concentraii relativ
mari de impuriti pentru a micora rezistena electric. Regiunea supus iluminrii este
subire pentru a permite luminii s ajung la regiunea de trecere. Dac celula se afl n
ntuneric la bornele ei nu apare nici o tensiune, celula fiind n echilibru termodinamic. Dac
lumina cade pe suprafaa celulei fotonii penetreaz zona subire i genereaz perechi electroni
gol care datorit cmpului electric intern E din regiunea de trecere sunt orientai- golurile spre
regiunea p i electronii spre n. La polarizarea invers a dispozitivului curentul printr-o
rezisten de sarcin R este puternic influenat de aciunea radiaiei luminoase. Acesta este
domeniul n care dispozitivul funcioneaz ca fotodiod. Caracteristicile statice permit
realizarea unui model simplificat, figura 8.6.
RS
If
Cb
Figura 8.6 Modelul celulei fotovoltaice
Pentru a putea realiza o modelare simplificat a fenomenelor care au loc la apariia unei
particule alfa n camera de detecie se consider c o particul alfa genereaz prin ciocniri
circa 600 de electroni, ceea ce nseamn 18keV iar zgomotul de fond se consider generat de
200 de electroni, adic 7keV. Cu relaia I=dQ/dt se poate face o apreciere a ordinului de
mrime al curentului generat de intrarea unei particule alfa care rezult 10-7 A pentru o durat
a impulsului de 10-9 s. Nivelele de curent care trebuie msurate sunt extrem de mici n
prezena unui zgomot de valoare important (10-8 A)
Msurarea nivelului de radiaie, deci a numrului de particule radioactive poate fi realizat n
dou feluri:
prin integrare, se msoar nivelul tensiunii la ieirea unui integrator care este proporional
cu numrul de particule din incint;
prin numrarea vrfurilor de tensiune, deci a numrului de particule.
192
8.3.Metode de msurare
8.3.1.Msurarea prin integrare
n figura 8.9 sunt prezentate rezultatele dup integrare (perioada 10ms, durata impulsului
10s). Valoarea final a tensiunii este 1,06.10-3, cu o eroare de 6% introdus de zgomot. n
stnga este prezentat tot intervalul de timp de integrare iar n dreapta intervalul de timp final.
Figura 8.9: tensiunea dup integrator (perioada 10ms, durata impulsului 10s)
n figura 8.10 sunt prezentate diagrame de timp ca i cele din figura 8.9 dar cu o perioad de
10 ori mai mic (o particul/1ms, deci perioada 1ms i aceeai durat a impulsului). Se poate
observa forma n timp a tensiunii pe integrator care este mai apropiat de cea ideal. Eroarea
scade la 1%.
Figura 8.10: Tensiunea dup integrator (perioada 1ms, durata impulsului 10s)
Ultimul exemplu este prezentat n figura 8.11, n cazul a 10 particule/ms, adic o perioad de
0,1ms i aceeai durat a impulsului, eroarea fiind n acest caz de 0,1%.
Figura 8.11: Tensiunea dup integrator (perioada 0,1ms, durata impulsului 10s)
194
n cazul unei concentraii i mai mici de gaz, adic o particul la 100ms eroarea este deja de
60%, inadmisibil de mare. Eroarea este cu att mai mare cu ct frecvena impulsurilor este
mai mic (mai puine particule n timp). De asemenea eroarea este cu att mai mare cu ct
durata i amplitudinea impulsurilor sunt mai mici (evident eroarea depinde de energia
impulsurilor).
Pentru a constata cum se manifest influena tensiunii reelei la intrare se nsumeaz un
semnal sinusoidal cu frecvena de 50Hz i amplitudinea de 10% din cea a semnalului util.
Semnalul este figurat fr integrare i cu integrare n figura 8.12.
IIN
-
Vo
+
195
1
C INT
IN
(t ).dt
TINT
C INT
Dup perioada de integrare tensiunea la ieirea circuitului este proporional cu IIN (curentul
de intrare).
Ca i integrator se poate folosi circuitul integrat IVC102 de Burr-Brown care este un
amplificator integrator de precizie comutat. Ca i aplicaii sunt menionate n catalog
msurrile de cureni mici preluai de la camere de ionizare sau fotodiode. Circuitul are
integrate 3 capaciti de integrare care se pot conecta n paralel dar se pot conecta i
capacitoare exterioare. La intrare se pot msura att cureni pozitivi ct i negativi, curentul de
polarizare la intrare fiind de maximum 750fA. Circuitul IVC 102 are doi pini de mas, unul
pentru masa analogic la care este conectat intrarea neinversoare a amplificatorului
operaional i unul pentru masa digital. Cei doi pini de mas ntre care diferena de potenial
poate fi de maximul 100mV se unesc la sursa de alimentare. Cablajul este recomandat de
furnizor.
8.3.2.Msurarea prin numrarea impulsurilor
Dac impulsurile date de traductor nu se integreaz ele pot fi amplificate i numrate direct de
un microcontroller. n acest caz nu se poate determina tipul de descrcare radioactiv din
incinta de detecie. Variante de msur care determin i tipul descrcrii sunt:
Amplificarea impulsurilor i achiziia lor cu un convertor analog digital integrat n
microcontroller. Microcontrollerul calculeaz aria (energia) impulsului din amplitudinea i
durata lui, ceea ce este dificil deoarece necesit o vitez mare a convertorului i o putere de
calcul mare a microcontrollerului.
Amplificarea impulsurilor i realizarea unei conversii durat numr de impulsuri de ieire
respectiv amplitudine numr de impulsuri de ieire, ceea ce nseamn c microcontrollerul
poate deduce energia impulsului din numrul de impulsuri de ieire.
Circuitul de amplificare este aezat n apropierea camerei de detecie / camerei de ionizare. La
intrare circuitul are un amplificator operaional de instrumentaie AD712. Amplificatorul de
instrumentaie este urmat de dou etaje construite cu amplificatorul operaional cvadruplu
LM324 care asigur semnalul necesar pentru ca ieirea etajului s poat fi conectat la
intrarea digital a microcontrollerului. Etajul de amplificare cu LM324 este un etaj neliniar
format din dou ramuri. Ramura superioar d la ieire un numr de impulsuri proporional
cu amplitudinea semnalului i ramura inferioar d impulsuri doar dac amplitudinea
semnalului este mai mare dect o valoare de prag. Valoarea de prag poate fi astfel aleas nct
amplificatorul s semnalizeze cu un impuls dat de ramura inferioar o eroare, adic apariia
196
unui impuls cu o valoare energetic anormal de mare care nu poate proveni dintr-o descrcare
ci datorit interferenei electromagnetice. A fost implementat o variant simplificat a
ramurii de sus care nu d un singur impuls la fiecare impuls de intrare, fiind astfel imposibil
determinarea naturii gazului radioactiv, figura 8.14.
Microcontroller
PWM
Amplificator de
instrumentaie
LED
Comparator 1
ADC canal 1
Fotoelement
Prag 1
Camera de
detecie
Comparator 2
ADC canal 2
Surs 250V
DC
Prag 2
197
Zgomot
Impuls de
descrcare
198
8.4.Unitatea de prelucrare
8.4.1. Alegerea microcontrollerului
serial RS232, datele fiind primite de un program specializat de citire a portului serial. i la
microcontrollerul Atmel s-a pstrat modul de lucru n faze, gen sample-hold-send, practic se
iau cte 1000 de eantioane n lipsa conexiunii cu calculatorul, dup care se realizeaz
conexiunea ctre calculator dup care se realizeaz transmisia datelor. Dup preluare datele
sunt salvate ntr-un fiier text i pot fi reprezentate grafic.
Analiza semnalului analogic furnizat de senzor arat c zgomotul aprut la intrarea
convertorului poate fi micorat prin ecranarea traseului de intrare. Se constat c mrimea i
frecvena impulsurilor nedorite este mult redus. Aezarea n imediata vecintate a
traductorului este esenial n acest tip de aplicaie.
Ca i filtrri software, cea mai simpl este filtrarea prin mediere care const n eantionarea
semnalului cu o frecven mrit i calcularea eantionului curent prin medierea mai multor
eantioane preluate timp de o milisecund.
yj = (xj*N+1 + xj*N+2 + xj*N+3 + .+ xj*N+N) / N
Unde :
N numrul eantioanelor luate timp de o milisecund
Y semnalul de ieire din filtrul de mediere
X semnal de intrare n filtru
Semnalul de ieire este calculat din N eantioane luate anterior, prin efectuarea unei medieri
aritmetice asupra lor. La valori mari ale N algoritmul necesit putere mare de procesare. De
exemplu pentru valoarea N=50 rezultatele sunt prezentate n figura 8.18, rata erorilor fiind
mult redus, doar 4-5 eantioane eronate. Sigur aceast performan poate fi atins doar la
folosirea la maxim a resurselor sistemului de procesare, lucru care este inacceptabil n
majoritatea aplicaiilor, sistemul avnd i alte taskuri de executat n paralel. Pentru aplicaii
diferite se pot lua n considerare metode diferite de eliminare a zgomotului. De exemplu la
achiziia semnalelor de la traductoare de Radon prin metoda integrrii se pot face medieri
software pentru c achiziia se face doar la sfritul perioadei de integrare. Se poate spune c
principiul de msurare prin integrare este superior din punctul de vedere antiperturbativ i prin
faptul c permite o achiziie lent i prin urmare microcontrollerul are timp s efectueze
operaia de mediere.
Un avantaj din punctul de vedere al zgomotului introdus de msurtoare este ca traductorul s
fie n apropierea sistemului de msur. n cazul aparatului propus apropierea este realizat
pentru camera de detecie care este montat n interiorul carcasei. Camera de ionizare fiind de
mari dimensiuni este montat n exterior i semnalul este preluat cu cabluri ecranate. Este
posibil ca s fie nevoie s se monteze partea analogic direct pe camera de ionizare.
Valorile achiziionate pentru un semnal constant la ieire sunt n cazul unui microcontroller
Fujitsu date n figura 8.18.
200
280
275
270
265
260
255
250
245
240
1000
2000
3000
4000
5000
6000
7000
8000
380
375
370
100
200
300
400
500
600
700
800
900
1000
Figura 8.19: valorile eantionate pentru o tensiune continu constant la intrare (Atmega16)
(1000 de eantioane)
Dac la Fujitsu erorile erau de 4 bii, la Atmega16 erorile sunt de 1 bit, ceea ce justific
alegerea familiei ATMEL. Folosind o mediere software erorile scad, doar 4 eantioane
eronate din 3000. Dezavantajul medierii este creterea timpului de achiziie.
201
PIN MCU
NUME
SEMNAL
DESCRIERE
P40
CS1
P41
CS2
P65
RS
P4
R/W
P67
semnal de validare
P66
RSTB
P10-P17
Schema electric a unitii centrale cu microcontroller i a interfeei cu afiajul LCD este dat
n figura 8.20.
Ciclul de scriere a unei comenzi sau date n modulul LCD ncepe prin aplicarea la intrarea
modului a semnalelor de selecie CS1 si CS0 precum i a semnalului de R/W care specific
tipul operaiei. Dup un timp bine definit se aplic semnalul de validare E, timp n care datele
trebuiesc s fie stabile. Durata ciclului de scriere este bine definit i se gsete n foaia de
catalog a modulului LCD. Modulul LCD dispune de un registru de intrare n care se
stocheaz datele primite de la microcontroller nainte sa fie afiate. La activarea semnalului E
datele se scriu n registrul de intrare, dup care printr-o operaie intern ele sunt transferate n
memoria intern i afiate.
202
8.4.3.Software
203
204
Se ateapt un impuls pe
linia de ntrerupere 1
Apare un impuls
Se verific dac exist
impuls pe linia de
ntrerupere 2
da
Se ignor impulsul de
pe linia 1 considerat
perturbaie
nu
Se verific dac impulsul
are durata standard
nu
Se ignor impulsul de
pe linia 1 considerat
perturbaie
da
Se numr impulsul prin
incrementarea unui
registru
205
3. Procedura de atenionare
Procedura de atenionare este implementat pentru a trimite mesaje de avertizare dac
concentraia de Radon n aer depete repetat valorile anterioare, figura 8.24. Se
programeaz n microcontroller numrul N1 de citiri din care se face media de referin (o
medie a concentraiei de Radon pe N1 ore), numrul N2 de citiri care depesc media de
referin i D procentul de depire pentru care se emite avertizarea. N1, N2 i D se stabilesc
experimental.
Se introduc valorile N1, N2 i D
nu
da
Se incrementeaz registrul de
valori care depesc cu D media
N1
nu
Se golete registrul de
valori care depesc cu D
media N1
da
S-au citit N2 valori care depesc
cu D media N1
da
Se genereaz o avertizare
Transmisia la ore exacte poate fi realizat prin folosirea unui timer din microcontroller. n
acest caz nu se transmite i poziia aparatului. Poziia i timpul pot fi aflate cu mare exactitate
folosind sistemul GPS.
GPS (Global Positioning System) este un sistem de determinare a poziiei care se bazeaz pe
recepia unor semnale de la o reea de 24 de satelii plasai pe orbit. Acest sistem a fost
folosit iniial pentru aplicaii militare dar din 1980 s-a putut folosi i n aplicaii civile.
Receptorul GPS trebuie s recepioneze semnale de la minim 3 satelii pentru o poziionare
2D (latitudine i longitudine) i de la minim 4 satelii pentru o poziionare 3D (latitudine,
206
longitudine i altitudine). Precizia de determinare a poziiei este de 10-15m dar exist metode
de a mbunti precizia pn la 2-5m.
Receptorul folosit este EZ10 de la Telit. Cteva dintre caracteristicile tehnice eseniale ale
receptorului sunt:
Acuratee: n modul autonom de funcionare modulul are o acuratee de detectare a
poziiei de 10m, n modul WAAS (Wide Area Augmentation System) acurateea este
sub 5m, iar folosind DGPS (Differential GPS) sub 2,5m.
Receiverul dispune de 12 canale de recepie, astfel c se pot urmri pn la 12 satelii
simultan.
Rata maxim de mprosptare a informaiei este de 10Hz.
Protocolul folosit este NMEA (National Marine Electronics Association)
Ca ieire de date modulul folosete o comunicaie serial RS232 la 4800 b/s (standard
NMEA-0183 versiunea 2.2 [8])
Mesajele NMEA pot fi vizualizate cu orice program standard de comunicaie serial, cum ar fi
Windows Hyper-Terminal. Modulul transmite cinci tipuri de propoziii: GGA, GSA, RMC,
VTG i GSV. Dintre acestea cinci, doar propoziiile GGA si RMC conin att date despre
timp ct i poziie (latitudine i longitudine).
$GPGGA,235948.999,0000.0000,N,00000.0000,E,0,00,50.0,0.0,M,,,,0000*33
$GPRMC,235948.999,V,0000.0000,N,00000.0000,E,0.00,,171101,,*05
Se poate vedea indicaia de timp, achiziia a nceput la ora 23.59.48,999. Indicaia despre
poziie nu a fost actualizat pentru c sistemul a fost testat ntr-o cas unde pereii au ecranat
semnalul GPS de poziionare.
Software-ul pentru server a fost realizat de un grup de studeni pasionai condus de dl.
Marius Moga. Radon Data Manager este un sistem software care permite preluarea de mesaje
predefinite de la echipamentele implicate n msurarea concentraiei de Radon conectate n
sistemul GPRS, interpretarea acestora i transmiterea datelor rezultate ctre un server
MySQL, n vederea stocrii ntr-o baz de date. Sistemul software nglobeaz trei interfee,
interconectate:
Interfaa grafic - permite utilizatorului s comunice cu sistemul software;
Interfaa server ( serverul ) reprezint legtura aplicaiei cu echipamentele care trimit
mesaje predefinite serverului, utiliznd stiva de protocoale TCP-IP i diferite
tehnologii de acces la internet;
Interfaa client MySQL asigur nregistrarea i actualizarea datelor n baza de date,
prin tranzacii ntre interfa i un server MySQL 5.0 .
Radon Data Manager 1.0 permite la nivel de interfa grafic operaiuni de control al
serverului i al conexiunii cu serverul MySQL, gestiunea echipamentelor implicate n
procesul de msurare i supravegherea activitii sistemului software prin mesaje furnizate de
metodele aplicaiei.
207
La nivelul serverului sistemul accept orice conexiune TCP-IP adresat acestuia pe un port de
comunicaie dedicat, care poate fi setat de ctre utilizatorul sistemului, de regul pot fi alese
porturi cuprinse in intervalul 1024 65535, deoarece valorile mai mici de 1024 sunt
rezervate pentru servicii predefinite ( FTP, HTTP, SMTP, etc.). Conexiunea ntre client si
server poate fi realizat numai dac respectivul client utilizeaz acelai port de comunicaie
pentru care serverul accept conexiuni, astfel nct odat ce este modificat portul de
comunicaie al serverului, trebuie modificate i porturile de comunicaie ale tuturor clienilor.
n momentul acceptrii unei conexiuni, serverul va atepta sosirea mesajului predefinit. Dac
dup stabilirea conexiunii clientul conectat la server nu trimite date sau trimite mesaj
incomplet, conexiunea va fi ntrerupt dup un timp de ateptare care poate fi setat de ctre
utilizatorul sistemului. ntreruperea conexiunii cu respectivul client nu afecteaz preluarea
unei noi conexiuni, iar dac mai muli clieni solicit o conexiune la server, serverul va
accepta i trata pe rnd fiecare conexiune n parte, n ordinea sosirii cererilor, clienii
ateptnd acceptarea conexiunii. Numrul maxim de cereri de conexiune este fix ( nu poate fi
modificat de utilizator ), cel mult 50 de cereri pot fi stocate n coada de ateptare. Sistemul de
operare va respinge oricare a 51-a cerere de conexiune. Un ecran al programului care arat un
raport al conexiunilor i datele preluate este capturat n figura 8.25.
208
Clientul MySQL asigur tranzaciile ntre Radon Data Manager i serverul MySQL utiliznd
mai multe metode implementate n sistemul software. Autentificarea la serverul MySQL este
realizat printr-o metod complex ce asigur n acelai timp crearea bazei de date n cazul n
care aceasta nu exist, preluarea datelor de autentificare dintr-un fiier binar, permind astfel
autentificarea automat la serverul MySQL n momentul pornirii sistemului software, fr a
mai fi necesar intervenia utilizatorului. La prima utilizare a sistemului RadonDataManager,
este necesar introducerea de ctre utilizator a datelor de autentificare. Acestea vor fi stocate
n fiierul binar autentif.bin, imediat dup stocare se va declana automat procedura de
autentificare pentru verificarea corectitudinii datelor de autentificare, n cazul n care datele
sunt incorecte, fereastra pentru setarea datelor de autentificare va rmne deschis pentru
introducerea altor date.
Pentru funcionarea sistemului este necesar ca aplicaia software s ruleze pe un calculator
conectat permanent i dedicat la Internet prin diverse tehnologii de acces oferite de furnizorii
de servicii. O conexiune dedicat la Internet implic o adres IP fix oferit prin contract de
ctre un Internet Service Provider. Conexiunea permanent poate fi susinut de un serviciu
de acces la Internet cu un parametru QoS ( Quality of Service ) ct mai bun.
Sursa de alimentare de tensiune mare are rolul de polarizare a camerei de ionizare sau a
camerei de detecie. Circuitul integrat care st la baza acestei aplicaii este LM 3524, un
generator de semnal PWM. Schema din figura 8.26 arat principiul unui convertor pentru
ridicarea tensiunii de alimentare (Step Up) i formele de und.
tOFF
VIN
tON
V1
L1
D1
LM 3524
tOFF
Vo
Vo
V1
PWM
tON
Co
IL
RL
IL+
IL-
V .t
VL .T
, deci I L + IN ON
L
L1
tranzistorului Q1
la fel I L
IL+=IL- deci
L1
209
ca urmare se obine relaia care arat c se poate obine creterea valorii tensiunii de ieire n
funcie de factorul de umplere:
t
VO = VIN 1 + ON
t OFF
Pentru o mrire a tensiunii de la 5V la 250V este nevoie ca factorul de umplere tON/tOFF s fie
49. Pentru a asigura precizia i stabilitatea unui astfel de factor de umplere este nevoie de un
circuit specializat, aa cum este LM3524.
t
PO = I O .VO = I O .VIN 1 + ON
t OFF
i PO=PIN
t
astfel c I IN = I O 1 + ON
t OFF
Se remarc faptul c, aa cum ne ateptam, dac tensiunea de ieire este de 50 de ori mai
mare, curentul de ieire este de 50 de ori mai mic.
Sursa de polarizare cu circuitul integrat LM 3524 are schema dat n figura 8.27, care este o
schem tipic de convertor Step Up. Circuitul genereaz o tensiune de referin de 5V cu
precizia de 1% iar curentul furnizat la ieire este de maxim 200mA la o tensiune maxim de
60V. Circuitul admite sincronizare extern i are performane ridicate n mediu industrial.
210
Impulsurile gri provin de la descrcri ale particulelor de Radon iar impulsurile negre sunt
impulsuri de eroare. Se vede din grafic c pe perioada unei zile nu au aprut impulsuri de
eroare suficient de mari pentru ca aparatul s semnalizeze o eroare. Viteza convertorului
DAQ-USB de 10ks/s nu permite conectarea direct la ieirea camerei de ionizare /detecie
pentru c impulsurile generate sunt prea rapide. Un impuls din graficul din figura 8.28 este
prezentat n detaliu n figura 8.29.
Se observ din figur forma dreptunghiular a impulsului (a crui energie nu este
proporional cu energia impulsului de intrare) i se mai observ i ieirea a doua a
amplificatorului unde tensiunea variaz foarte puin.
211
Camera de
detecie
Amplificator
analogic
Unitate central cu
microcontroller
Sursa de
alimentare
Afiaj LCD
212
213
3,0
2,5
2,0
1,5
1,0
0,5
0,0
5
15
25
35
45
55
65
75
85
ora
dezintegrari/ora
pCi/L
214
Prima valoare real a concentraiei este afiat dup 5 ore, valorile de mai nainte fiind
calculate din prea puine eantioane.
Cele dou variante de aparate realizate sunt prezentate n figura 8.34. Sus stnga este
prezentat varianta cu camer de ionizare (mijloc) n timpul verificrii msurtorilor prin
comparaie cu SAFETY SIREN 2 (dreapta) i un contor Geiger Muller (stnga). Modemul
GPRS/GPS este pus pe aparat. Un detaliu al camerei de ionizare este prezentat n figura 8.34
dreapta. Figura 8.34, jos, arat aparatul cu camer de detecie montat i echipat cu modemul
GPRS/GPS EZ10 i antene.
215
Camera de detecie este mult mai mic ca i dimensiuni dect camera de ionizare i n
bibliografie se pare c este mai utilizat n aplicaiile moderne. Totui, un dezavantaj al
camerei de detecie este faptul c primele rezultate sunt date cu mai mare ntrziere dect
camera de ionizare. Dimensiunile fiind mai mici, dureaz mai mult pn aerul intr n incinta
de msurare. Aparatele cu camer de detecie se preteaz la aplicaii portabile.
Cu toate c nu exist o limit teoretic a sensibilitii se apreciaz c sensibilitatea este
0,1pCi/l (4Bq/m3) datorit faptului c nu au existat mijloace tehnice de a verifica aparatul la
un coninut mai mic de Radon. n lucrarea [9] se arat un sistem de msurare a Radonului care
detecteaz i o concentraie de 18mBq/m3 (o descrcare/24ore) cu o camer de detecie de 70l
polarizat cu 1500V i o fotodiod PIN. Aceast lucrare din 2006 arat corectitudinea liniei
alese n acest proiect de a insista pe varianta constructiv cu fotoelement.
Concepia de realizare a fost considerat original, a fost prezentat n [10]. a fost nregistrat
o cerere de invenie [11 ], iar cercetrile ulterioare publicate [12].
Bibliografie
[1] Cosma C., Jurcut T., Radonul i mediul nconjurtor, Editura Dacia 1996
[2] Ogruan P., Documentaie proiect CEEX 747/2006, Cercetri privind cartarea naional
a Radonului (n interior i n diferii factori de mediu) pentru protecia populaiei n
conformitate cu cerinele normelor internaionale i ale UE
[3] Yamamoto, S.; Yamasoto, K.; Iida, T., Development of a real-time radon monitoring
system for simultaneous measurements in multiple sites, Nuclear Science Symposium,
1998. Conference Record. 1998 IEEE , Volume 2, 8-14 Nov. 1998 Page(s):1052 - 1055
vol.2
[4] Roca, V.; Boiano, A.; Esposito, A. et all A monitor for continuous and remote control of
radon level and environmental parameters Nuclear Science Symposium Conference
Record, 2004 IEEE , Volume 3, 16-22 Oct. 2004 Page(s):1563 - 1566 Vol. 3
[5] Noto, N.; Ohsumi, H.; Kobayashi, S.; Performance of the electrostatic collection type
radon and toron detector Nuclear Science Symposium Conference Record, 2002 IEEE ,
Volume 1, 10-16 Nov. 2002 Page(s):429 - 434 vol.1
[6] Radio Communications & Supply SRL, office@rcsco.com, reprezentant TELIT,
documentaie tehnic TELIT EZ10
[7] Sandu D. D., Electronica fizica, Editura Didactica si Pedagogica, Bucuresti, 1973
[8] http://www.nmea.org, GPS
[9] Nachab A., Radon reduction and Radon Measurements at the Modane Underground
Laboratory, 2nd Workshop in Low Radioactivity Techniques, 2006, Aussois
[10] Morariu Gh., Ogrutan P., Kertesz Cs., Alexandru M., A Novel Procedure and Apparatus
for Measuring the Radon Concentration in Air, Proceedings of the 11-th International
Conference on Optimization of Electrical and Electronic Equipments, Brasov, 2008,
OPTIM 2008, IEEE Catalog Number 08EX1996C, ISBN1-4244-1545-4
[11] Purghel L., Morariu Gh., Ogrutan P., Alexandru M., Kertesz Cs., Suciu L., Metoda si
aparat pentru masurarea concentratiei de Radon in aer si transmiterea datelor la
distanta, cerere nr. OSIM A/00259 9.04.2008
[12] Ogrutan P., Romanca M., Gerigan C., Morariu Gh., Aciu L.E., Real Time and Multiple
Location Radon (222Rn) Monitoring System, Advances in Electrical and Computer
Engineering, ISSN: 1582-7445, Volume 10, Number 4, 2010, pp. 155 160
216
Generator de
secvene
Model
Gold Unit
Compactor
Circuit sub
test DUT
Compactor
Comparator
217
Rezultat
test
O secven de test este aplicat circuitului de testat i unui model (o plac martor sau un
model matematic). Dac secvena de ieire este identic cu cea de referin atunci circuitul
testat se poate considera fr defecte. Prin compactare se micoreaz lungimea secvenei de
ieire i comparaia dureaz mai puin. Avantajul este umbrit de posibilitatea apariiei unor
defecte nedetectabile.
Pentru testarea funcional a unui modul se aplic secvene de test la intrare i se citesc
rspunsurile att la ieirile plcii ct i n nodurile interioare pentru care s-a implementat
principiul vizibilitii i poate fi:
1. Testarea funcional static i propune detectarea defectelor statice PP0, PP1 i
scurtcircuite;
2. Testarea dinamic, la frecvena de lucru, detecteaz de exemplu impulsuri parazite;
3. Testarea funcional n sistem, cu 2 subvariante:
Placa funcioneaz n testor i se simuleaz funcionarea n sistem;
Placa funcioneaz n sistem, testorul culege informaii (ex. analizor logic)
La testarea n circuit aciunea testului este fixat asupra unui singur chip. Secvena se aplic
direct pe pinii chip-ului testat i se citesc rspunsurile chip-ului. Accesul se face prin pat de
cuie- bed of nails. Testorul trebuie s rezolve problemele:
1. Izolarea circuitului prin dezactivarea ieirii tri state, inhibarea generatoarelor de
semnal, ntreruperea buclelor de reacie;
2. Protecia ieirilor cuplate n nodurile forate prin limitarea valorilor curenilor injectai.
Defectul este o imperfeciune fizic sau logic care apare n cadrul unei componente
hardware sau software iar Eroarea este o manifestare a defectului i reprezint o deviaie de
la corectitudinea de execuie a funciilor.
Cauzele defectelor pot fi:
1. Specificaii de proiectare greite
2. Implementri greite
3. Componente defecte
4. Perturbaii exterioare
Caracteristicile defectelor sunt:
1. Cauzele defectelor
2. Natura- hardware sau software
3. Durata defectelor- permanente, tranzitorii sau intermitente
4. Extinderea defectelor- generale sau locale
5. Valoarea defectului (la cele parametrice).
Defectele logice sunt:
1. Puneri pe 0 (PP0) i puneri pe 1 (PP1)
2. Scurtcircuite, care pot fi ntre un traseu de semnal i una din bornele de alimentare,
figura 9.2 sau ntre dou trasee de semnal, figura 9.3. Aceste defecte se pot detecta
indirect prin msurarea curentului absorbit i compararea lui cu un curent al unei plci
bune sau prin msurarea temperaturii chip-urilor de pe plac.
218
Vcc
Q1
D
Q2
PP0
Figura 9.2: Scurtcircuit ntre un traseu de semnal i una din bornele de alimentare
Vcc
R
Q3
Q1
Q4
Q2
Poarta 1
Poarta 2
Figura 9.3: Scurtcircuit ntre dou trasee de semnal
Apariia sistemelor structurate pe magistrale a dus la necesitatea unor noi moduri de testare. n
1973 a fost introdus de ctre HP analizorul logic. Analizorul logic este dedicat activitii de
laborator n etapele de proiectare i punere la punct a sistemului. Cerinele necesare pentru un
analizor logic sunt:
1. S urmreasc i s vizualizeze mai multe semnale de intrare n acelai timp;
2. S dispun de frecvene de eantionare mai mari dect cel mai rapid semnal din
sistem;
3. S dispun de un nivel de intrare de prag adaptabil la diferite tipuri de familii logice;
4. S memoreze secvene de date;
5. S dispun de posibiliti de declanare care s permit captarea unor blocuri de date
dintr-un flux de date;
6. S asigure moduri variate de vizualizare.
219
Bloc de
eantionare
Tact de eantionare
Memorie
Vizualizare
Trigger 1- semnal de
declanare a memorrii
Trigger 2- semnal de oprire
a memorrii
A0
A1
D0
D1
IOR
Tact de eantionare
220
Unitate de
testat
Nod
Analizor de semntur
Date
START
STOP
Bloc de
selecie
fronturi
Memorie
tampon
Comprimare
Afiare
TACT
TACT
START
STOP
DATE
MEMORAT
1 0 0
1 1
0 1
Fereastra de analiz
Figura 9.7: Diagrama de semnal preluat de analizorul de semnturi
Comprimarea se realizeaz prin coduri ciclice. Schema de implementare a unei comprimri
bazate pe cod ciclic se realizeaz prin registre cu reacie. De exemplu dac ecuaia reaciei
este G=x16+x12+x7 atunci schema de implementare este cea din figura 9.8.
221
IS
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SAU
EXCLUSIV
Date
222
9.2.Structura SCAN
Un circuit care conine att componente combinaionale ct i componente secveniale poate
fi redesenat astfel, figura 9.9.
Intrri combinaionale
primare
Intrri combinaionale
secundare
Circuite combinaionale
Ieiri combinaionale
primare
Ieiri combinaionale
secundare
Q D
CLK
Q D
CLK
Q D
CLK
CLK
223
Intrri combinaionale
primare
Intrri combinaionale
secundare
Circuite combinaionale
Ieiri combinaionale
primare
Ieiri combinaionale
secundare
Q D
CLK
Q D
CLK
I0
I1
S
Q D
SO
CLK
CLK
SI
I0
I1
I0
I1
S
S
T/N
224
n structura BOUNDARY SCAN fiecrui pin de I/O al unui chip i s-a ataat o celul
specializat care separ logica intern de exteriorul chip-ului, figura 9.11.
1. T/N pe poziia normal, D0 identic cu DI i circuitul realizeaz funcia pentru care a
fost proiectat;
2. T/N pe poziia test, bistabilii pot fi ncrcai serial prin intrarea SI i n n/2 impulsuri
de CLK se poate ncrca un vector de test la pinii de intrare, apoi se pot citi
rspunsurile circuitului citind ieirile. Tot pe poziia test, bistabilii pot fi ncrcai
paralel cu vectorul de test prezent la intrare, cu semnalul SHIFT/ LOAD (S/L) pe
poziia LOAD (L). Ieirile pot fi testate deplasnd serial vectorul de intrare la ieiri.
DI SO DO
S/L
T/N SI
DI SI DO
S/L
T/N SO
Logica intern
DI SO DO
S/L
T/N SI
DI SI DO
S/L
T/N SO
DI SO DO
S/L
T/N SI
DI SI DO
S/L
T/N SO
SI
S/L
CLK
T/N
225
SI
SO
0
SO
SI
SO
SI
226
Circuitele cu JTAG cuprind n arhitectura lor un port de testare TAP (Test Access Port) care
permite:
1. Testarea funciilor circuitului;
2. Testarea conexiunilor cu alte circuite;
3. Excluderea circuitului din procesul de testare la nivelul plachetei;
4. Operaii de autotestare executate de circuit (opional).
n schema bloc a unui modul JTAG (figura 9.13) se poate observa structura bazat pe regitrii.
Registre de date de test
Registru BOUNDARY SCAN
TDI
Registru BYPASS
MUX
TDO
Registru IDENTIFICARE
Registru UTILIZATOR
Decodificator
Registru Instruciuni
TMS
TCK
TRS
Controller TAP
227
Ieiri
analogice
ABM
DAC
ADC
DBM
DBM
DBM
Seciune digital
DBM
Ieiri
digitale
Intrri
digitale
DBM
DBM
TDI
TMS
TCK
TAP 1149.1
228
TDO
Modulele DBM au structura prezentat n figura 9.14. Pentru a se putea testa partea analogic
care a fost separat se introduc modulele ABM care conin convertoare AD i DA de un bit.
Se pot astfel unifica vectorii de test i rspunsul circuitului n forma digital. La prima vedere
pare c se poate testa o valoare analogic prin comparare cu un singur prag (n convertorul
AD de un bit), ceea ce este un nivel srac de informaie. De fapt pragul poate fi programat i
se pot face comparaii succesive cu mai multe nivele, ceea ce mrete precizia testrii dar
prelungete i timpul de testare. Transformarea din digital n analogic i invers are loc n
celula ABM, figura 9.15.
+5V GND VH VL
SDO
ABM
Referin
K1
Magistral intern
analogic de test
Pin extern
de intrare
Circuit
intern
Analog
Test
Access
Port
229
IEEE 1532 a fost introdus n anul 2000 pentru a standardiza programarea PLD i FPGA,
indiferent de productorul circuitului. Algoritmul care programeaz, terge, citete i verific
circuitul se afl ntr-un fiier BSDL (Boundary Scan Description Language).
230
Dup instruciunea PROG_ENABLE pe linia TDI se introduce o secven 1010 0011 0111
0000 (A370H) numit semntura de programare pentru a valida programarea n
Programming Enable Register. Dup terminarea programrii registrul trebuie resetat.
Dup validarea programrii, cu instruciunea PROG_COMMANDS se introduce n registrul
Programming Command Register o comand care realizeaz citirea/ scrierea/ tergerea
memoriei, a biilor fuzibili i a biilor de blocare. Comenzile sunt date n foile de catalog a
MC. De exemplu citirea memoriei Flash se face prin introducerea n ordine pe linia TDI, dup
instruciunea PROG_COMMANDS:
0100011 00000010 pe TDI este comanda de citire Flash;
0000111 aaaaaaaa pe TDI este adresa, octetul superior;
0000011 bbbbbbbb pe TDI este adresa, octetul inferior;
0110010 00000000 pe TDI comanda de citire a locaiei;
0110110 00000000 pe TDO apare octetul inferior n forma xxxxxxxx oooooooo;
0110111 00000000 pe TDO apare octetul superior.
La fel exist secvene pentru citirea /scrierea Flash, citirea/scrierea EEPROM, citirea/scrierea
biilor fuzibili i ai celor de blocare.
9.4.2.Debugging prin JTAG
Debugging-ul prin JTAG se bazeaz pe existena unei ci de scanare ntre CPU i modulele
interne existnd posibilitatea inserrii de maximum 4 Break Point-uri. Ca i instrument
software se poate folosi AVR Studio, modul debug fiind posibil att n limbaj de asamblare
ct i n C. Pentru a lucra n modul debug trebuie ca bitul JTAGEN s fie programat i nici
un bit de blocare s nu fie programat. Orice bit de blocare programat duce la blocarea
sistemului de debug din raiuni de securitate.
n mod debug utilizatorul poate executa un program pas cu pas, poate trece peste anumite
instruciuni, poate executa un program pn la atingerea unei anumite stri, poate opri sau
reseta execuia. Instruciunile JTAG pentru debug (8H, 9H, AH, BH) sunt considerate private
i sunt documentate doar pentru firmele care vnd software pentru Atmel.
Pentru a uura munca de debugging Atmel a creat un emulator n circuit numit JTAGICE
mkII, figura 9.16.
USB
/RS232
JTAG/
debugWIRE
JTAGICE
Placa cu
MC AVR
JTAGICE permite accesul la toate resursele microcontrollerelor din familia AVR. Locul
acestui dispozitiv este dat n figura 9.16 dreapta, ntre un PC care ruleaz AVR Studio i placa
pe care este plasat microcontrollerul. Interfaa cu PC-ul poate fi RS232 sau USB. Pentru MC
cu numr mic de pini a fost introdus ca interfa de testare debug/WIRE n care comunicaia
se face pe un singur pin, cel de Reset. JTAGICE poate realiza:
1. Emularea tuturor funciilor analogice i digitale ale MC AVR de la ATmega 16 la
ATmega 6490 prin JTAG i de la Attiny 13 la ATmega 168 prin debug/WIRE. La
apariia unor modele noi de MC, prin descrcarea unei noi variante de AVR Studio
JTAGICE va putea lucra i cu modelele noi;
2. Programarea MC clasic sau prin JTAG;
3. Mod debug n care se pot introduce Break Point-uri, cnd programul ajunge la o
adres sau ntr-o gam de adrese, cnd datele sunt citite/ scrise la o adres sau ntr-un
interval de adrese, la schimbarea fluxului de citire a programului din memoria
program;
4. Monitorizarea tuturor resurselor interne ale MC.
Conectorii de acces pe plac sunt recomandai de Atmel cu configuraia pinilor dat n figura
9.17, acces SPI i debug prin debug/WIRE (stnga) i JTAG (dreapta).
O schem bloc simplificat a unui pin de I/O testabil JTAG (schema complet este dat n
foile de catalog) este dat n figura 9.18.
EXTEST
Vcc
MUX
Celul n
calea de
scanare
Output Control
MUX
Output Data
MUX
Pin
exterior
Input Data
Semnale De la celula
JTAG
anterioar
Figura 9.18: Schema simplificat a unui pin testabil JTAG
Multiplexoarele comand funcionarea normal sau testarea JTAG. Celula de testare este
conectat n lanul JTAG. Calea de testare la un ATmega 64 are 205 bii i poate fi gsit n
foile de catalog. De exemplu, primii bii din lan sunt alocai portului F astfel:
233
Bit
0
1
2
3
4
4
.....
Pin
PF0
PF0
PF0
PF1
PF1
PF1
.....
Semnificaie
Pullup Enable
Control
Data
Pullup Enable
Control
Data
......
234
Toate aceste variante pot avea 1 pn la 4 controllere TAP i pot fi prevzute cu pini de I/O
pentru preluarea semnalelor (de exemplu cel montabil n dulap are 256 pini de I/O).
Figura 9.19: Controllere JTAG- JT 37x7/TSI independent, JT 3705/USB cel mai ieftin, JT
37x7/RMI montabil n dulap standard de 19
n [3] este prezentat un aparat de testare AEROFLEX de mare productivitate, figura 9.20
stnga, prevzut pe lng JTAG cu 2048 de canale de testare prevzute cu pini. n [4], figura
9.20 dreapta este prezentat aparatul Digital Test cu 1400 de canale de testare. Cu aceste
aparate se pot face teste automate la ieirea de pe linia de producie i se pot implementa
strategii de testare. De regul, n activitatea industrial de mare productivitate testarea JTAG
este combinat cu testarea cu pat de ace.
erorile de sintax i de semantic. De asemenea se poate crea un fiier BSDL dac exist
circuitul fizic.
Bibliografie
[1] www.polarinstruments.com
[2] www.jtag.com
[3] http://www.aeroflex.com/ats/products/product/ATE/Test_Systems/
[4] http://www.digitaltest.de/digitaltest.php?loadtype=products&lang=en&filename=mts180
236