Академический Документы
Профессиональный Документы
Культура Документы
1. Conditionarea semnalelor:
Realizarea conducerii unui proces cu ajutorul unui calculator se poate face prin colectarea de
informaţii de stare din proces.
Apoi pe calculator se întocmeşte un program de conducere şi se transmit spre elementele de
execuţie comenzi.
Informaţiile de la proces sunt furnizate de traductoare.
Traductoarele sunt elemente care transformă mărimea fizică provenită din proces într-un semnal
electric, tensiune sau curent, pe care modulele calculatoarelor de proces le pot prelua şi transforma în
valori numerice.
Aceste valori pot fi folosite pentru realizarea programelor de conducere.
* De exemplu senzorii termoelectrici de temperatură convertesc temperatura într-un semnal analogic
pe care un modul de intrări analogice îl poate prelua.
Deşi toate traductoarele, indiferent de mărimea care o măsoară, trebuie să furnizeze mărimea fizică
în semnal electric, sunt cazuri în care acestea nu dau direct un semnal de tensiune sau curent şi
transformarea trebuie realizată prin intermediul unui hardware separat, inclus în traductor sau într-o
structură separată pe care o vom denumi în continuare Sistem de condiţionare a semnalelor (SCS)
provenite din proces.
SCS este realizat ca o structură separată, care este situată intre calculatorul de proces şi proces.
2. Transformarea rezistenta-tensiune:
2.1.
2.2.
2.3.
2.4.
3. Conversia tensiune-frecventa:
Convertoarele tensiune-frecvenţă se utilizează pentru conversia semnalelor analogice în semnale
numerice.
Un avantaj important este că informaţia de frecvenţă se poate transmite la distanţă, ca un semnal
imun la perturbaţii, care poate trece prin izolatoare galvanice (inductive sau optice) fără a fi afectat de
erori de frecvenţă.
;
4. Filtrarea semnalelor:
Detectarea erorilor:
- Într-o reţea P2P din care face parte portul serial datele pot fi corupte. Pentru o comunicaţie sigură
erorile trebuie detectate şi corectate.
- Detectarea erorilor utilizează conceptul de redundanţă, care înseamnă adăugarea de biţi
suplimentari pentru detectarea erorilor la destinaţie. În loc de a repeta mesajul se adaugă un grup de biţi
la sfârşitul mesajului care permit stabilirea unei erori de transmisie şi în felul acesta să ceară, numai în
acest caz, retransmiterea mesajului. Aceşti biţi sunt eliminaţi din mesaj imediat ce s-a testat acurateţea
mesajului.
- La portul serial este realizat o detectare VRC (Vertical Redundancy Check ) care se mai numeşte şi
detectarea parităţii. (Mai există verificări LRC, CRC şi Hamming).
- În cadrul VRC se utilizează un singur bit care se adaugă la sfârşitul mesajului astfel încât numărul
de biţi egali cu 1, inclusiv bitul de paritate, să fie par (paritate pară) sau ca numărul biţilor egali cu 1 să fie
impar (paritate impară).
APLICATII:
1. PARITATE
- Transmisie cu paritate pară A → B:
A doreşte să transmită: 10111010
A calculează bitul de paritate: 1^0^1^1^1^0^1^0=1
A adaugă bitul de paritate: 101110101
B recepţionează: 101110101
B calculează paritatea: : 1^0^1^1^1^0^1^0^1=0
B raportează transmisia corectă
2. CODIFICARE
Codificarea bitilor:
Codificarea NRZ:
- Codificarea Manchester bifazată:
Fig. 2.13
Fig. 2.14
8. Retele industriale: protocol comunicatie, controlul erorilor in retele industriale (CRC):
Protocol comunicatie:
- Structura de comunicatie:
Master/slave;
Multimaster;
Egal-la-egal (Peer to peer).
Controlul erorilor în reţelele industriale:
- Detectarea erorilor utilizează conceptul de redundanţă, care înseamnă adăugarea unor biţi
suplimentari, care să permită detectarea şi, eventual, corectarea erorii survenită în timpul transmisiei.
- Detectarea erorilor şi corectarea acestora este implementată în mod obişnuit la nivelul Data Link
Layer.
- Există mai multe tipuri de erori:
Eroare la un singur bit;
Eroare multiplă (Burst error), când sunt alteraţi mai mulţi biţi.
Controlul erorilor:
Repetarea mesajului
VRC (Vertical Redundancy Check) Utilizarea bitului de paritate.
LRC (Longitudinal Redundancy Check).
CRC (Cyclic Redundancy Check).
Detecţia şi corectarea erorilor cu coduri Hamming
Metoda CRC (Cyclic Redundancy Check):
- În cadrul metodei CRC (Cyclic Redundancy Check), o secvenţă de biţi redundanţi numită CRC sau
rest CRC, este înserată la sfârşitul unui mesaj astfel încât unitatea de date care rezultă să devină divizibilă
cu un număr binar predeterminat, numit polinom generator.
- La recepţie unitatea de date este împărţită cu acelaşi polinom.
- Dacă restul este egal cu 0 atunci se presupune că transmisia este corectă, iar în caz contrar
transmisia este considerată eronată.
o Pasul 1:
- Se încarcă registrul în care se calculează CRC, numit registru CRC cu valoarea iniţială;
- În cazul MODBUS şi CRC 16 registrul se încarcă cu 0xFFFF;
o Pasul 2:
- Se realizează XOR al primilor 8 biţi ai mesajului cu octetul LSB al registrului CRC;
- Se memorează rezultatul în registrul CRC;
o Pasul 3:
- Se deplasează la dreapta registrul CRC cu un bit;
- Se extrage şi se examinează bitul rezultat prin această operaţie;
o Pasul 4:
- Dacă bitul este 0, se repetă pasul 3, în caz contrar se realizează XOR dintre registrul CRC şi
polinomul generator (pentru MOBUS polinomul generator este 0xA001);
- Se memorează rezultatul în registrul CRC;
o Pasul 5:
- Se repetă paşii 3 şi 4 până se realizează 8 deplasări;
o Pasul 6:
- Se repetă paşii 2…5 pentru următorii octeţi ai mesajului.
9. Protocolul MODBUS: format cerere - raspuns, procesarea comenzii la nivel de server:
Toate cererile MODBUS şi răspunsurile sunt concepute în aşa fel încât destinatarul poate verifica
dacă un mesaj este terminat.
„Adresa slave” contine adresa unde se afla dispozitivul slave (serverul), caruia (comanda) /de la
care (raspuns) se transmite informatia (date).
Campul de date contine datele transmise/receptionate. Pentru funcţii care transportă o cantitate
variabilă de date în cerere sau răspuns, câmpul de date include un contor de registre (2 octeţi).
Existenţa unor norme de lungime explicite şi implicite şi utilizarea unui cod de verificare a erorii
CRC-32 (pe Ethernet) are ca rezultat o şansă foarte mică de a nu detecta o eroare la o cerere sau un mesaj
de răspuns.
Se foloseşte modul de reprezentare Big-Endian.
Codul funcţiei arată serverului (slave) ce acţiune urmează să efectueze. Codul funcţiei este pe un
octet. Codurile valide sunt între 1-255.