Sisteme ncorporate Curs 14 1 Sisteme ncorporate 5

  • Slides: 32
Download presentation
Sisteme Încorporate Curs 14 1

Sisteme Încorporate Curs 14 1

Sisteme Încorporate 5. 3. Embedded Internet n n n Înseamnă conectarea de produse şi

Sisteme Încorporate 5. 3. Embedded Internet n n n Înseamnă conectarea de produse şi servicii la Internet prin intermediul sistemelor încorporate; Internet of Things; Avantaje: q q q n n Posibilitate de comandă la distanţă; Posibilitate de actualizare automată a unor baze de date (de exemplu preţuri, produse etc. ); Posibilitate de monitorizare de la distantă; Comunicare între diferite aplicaţii (diverse protocoale se înlocuiesc cu TCP/ IP); Uniformizarea interfeţei cu utilizatorul pentru diferite aplicaţii; Completează suportul pentru “ubiquitous, pervasive and wearable computing”; Aplicaţii în diverse domenii: domestic, industrial, ştiinţific, comerţ, medical, automotive etc. 2

Sisteme Încorporate n Modelul clasic server – client: n Modelul server – client cu

Sisteme Încorporate n Modelul clasic server – client: n Modelul server – client cu microcontrolere: 3

Sisteme Încorporate n Modalităţi de implementare: q q n În primul caz: q q

Sisteme Încorporate n Modalităţi de implementare: q q n În primul caz: q q q n Prin conectare directă a sistemelor cu microcontrolere la Internet; Prin conectarea sistemelor cu microcontrolere la un PC care va avea rol de poartă la Internet. Au aceleaşi poziţii şi ponderi ca sistemele mai mari (PC – urile); Soluţia cere scrierea unei stive TCP/ IP proprii sau a unui subset al acesteia precum şi rezolvarea conectării fizice la Internet; Soluţia este relativ ieftină, permite conectarea unor sisteme de dimensiuni mici la Internet dar resursele acestor sisteme sunt limitate. În al 2 – lea caz: q q q Sistemele cu microcontrolere sunt grupate, sub controlul unui calculator cu rol de poartă la Internet; Acesta gestionează toate sistemele, răspunde la cererile lor, poate asigura securitatea sistemelor, monitorizare şi evaluare automate pentru sisteme şi chiar conexiuni multiple, la un moment dat; Sistemele cu microcontrolere pot comunica cu poarta utilizând diferite standarde: RS 232, RS 485, I 2 C, wireless etc. 4

Sisteme Încorporate n Prima modalitate este cea mai răspîndită; Cere implementarea protocolului Internet la

Sisteme Încorporate n Prima modalitate este cea mai răspîndită; Cere implementarea protocolului Internet la nivelul sistemelor cu microcontrolere; Protocolul Internet comparat cu modelul OSI: n Nivelul Network access: n n q q q Se ocupă de conectarea şi comunicarea nodului cu mediul; Soluţii răspîndite: Ethernet, fără fir, prin modem la reţeaua telefonică; Standardele IEEE 802. X controlează acest nivel, de ex. 802. 3 pentru Ethernet şi 802. 11 pentru comunicarea fără fir; 5

Sisteme Încorporate n Nivelul Network/ routing: q q q Se ocupă de rutarea mesajelor

Sisteme Încorporate n Nivelul Network/ routing: q q q Se ocupă de rutarea mesajelor între diferite noduri; Echipamentele care realizează rutarea: gateways sau routers; Principalul protocol la acest nivel este IP (“Internet protocol”): asigură: n n Nivelul Transport/ service: q q q n Adresarea în reţea, prin adresele IP; Controale în vederea detectării de erori; Fragmentarea şi reordonarea pachetelor; Se ocupă de transferul de informaţii între 2 noduri; Protocolul TCP asigură transferul cu răspuns; stabileşte o conexiune virtuală între cele 2 noduri, pe toată durata sesiunii de transfer; Protocolul UDP transferă doar pachete, ca blocuri individuale de informaţie şi nu asigură răspuns; Nivelul Application: q Oferă suportul pentru diferite operaţii: transfer de fişiere, e-mail-uri, emulare de terminale etc. 6

Sisteme Încorporate n Implementarea Network access: q q n n Prin controlere; Prin microcontrolere;

Sisteme Încorporate n Implementarea Network access: q q n n Prin controlere; Prin microcontrolere; Controlere Internet: RTL 8019 S, CS 8900, LAN 91 C 96, LAN 91 C 9111, DP 83840 A, DP 8390, Am 79 C 874 etc. Alt exemplu: S-7600 A: 7

Sisteme Încorporate n Conectarea la linie: n Din punctul de vedere al programatorului transferul

Sisteme Încorporate n Conectarea la linie: n Din punctul de vedere al programatorului transferul de date prin un controler Internet este similar celui prin un controler UART: q q q Este necesară programarea circuitului; La scriere, este încărcat tamponul circuitului, după care serializarea şi transferul informaţiei au loc fără intervenţia procesorului; La citire, procesorul este anunţat, fie prin un semnal fie prin un rang în octetul de stare, că tamponul de recepţie este plin; 8

Sisteme Încorporate n Operaţiile necesare pentru iniţializarea unui asemenea controler sunt: q q q

Sisteme Încorporate n Operaţiile necesare pentru iniţializarea unui asemenea controler sunt: q q q q Iniţializarea circuitului, fie prin un semnal extern fie prin setarea unui rang dintr – un registru de control; Deconectarea transmiţătorului de la linie; operaţia este necesară pentru a evita situaţia în care date nedorite sunt plasate pe linii în timpul fazei de iniţializare; Iniţializarea zonelor DMA şi a indicatorilor precum şi alocarea zonelor RAM pentru transmiterea şi recepţia datelor în format Ethernet; în unele cazuri alocarea se poate face şi dinamic; Programarea controlerului prin încărcarea adreselor în registrele interne; multe controlere pot încărca aceste adrese în mod automat din o memorie de tip EEPROM; Memorarea datelor iniţiale: viteză, număr de biţi, moduri de operare etc. ; Activarea întreruperilor (dacă sunt utilizate); Reconectare a transmităţorului pe linii şi setare a rangurilor Tx/ Rx; plasează controlerul pe linie şi activează transmisia şi recepţia. 9

Sisteme Încorporate n Transmisia unui format: q q q q Se presupune că procesorul

Sisteme Încorporate n Transmisia unui format: q q q q Se presupune că procesorul a pregătit format valid, inclusiv cîmpurile de adresă şi tip de protocol; Alocare tampon de transmisie; unele controlere au o zonă fixă alocată iar la altele alocarea se face înaintea transmisiei; Verificare a alocării; se verifică dacă alocarea a reuşit; Plasare a datelor în tamponul DMA; formatul va include adresa, tipul şi datele; controlerul va adăuga header – ul şi controlul de erori; Generare o comandă de transmisie, setînd un indicator în unul din registre; formatul va fi plasat în coada de transmisie şi controlerul îl va transmite dacă linia este liberă sau va încerca mai tîrziu, dacă linia este ocupată; Aşteptare pentru încheierea transmisiei, fie prin citirea unui indicator fie prin o cerere de întrerupere; este necesară verificarea stării şi tratarea eventualelor erori; Eliberare a memoriei alocate pentru tampon; 10

Sisteme Încorporate n Recepţia unui format: q q q n Sesizarea preluării unui format,

Sisteme Încorporate n Recepţia unui format: q q q n Sesizarea preluării unui format, fie prin citirea unui indicator fie prin o cerere de întrerupere; controlerul anunţă procesorul că un format a fost preluat fie datorită potrivirii adresei fie dacă formatul are o adresă de tip “broadcast”; Formatul memorat în tamponul controlerului este transferat, prin DMA, în memorie; Eliberarea resurselor de recepţie; Întreruperile pot fi generate de controler la: q q Transmisie; Recepţie: fie la recepţia unui format fie la recepţia mai multor formate, în funcţie de resursele hardware (memorie tampon) ale controlerului; în ultimul caz rutina de tratare va putea transfera mai multe formate, rezultînd cîştig de timp; Erori: recepţia unui format eronat sau ilegal; Cererea este conectată la o intrare de întrerupere a procesorului; dacă procesorul conţine controlerul, cererea va fi internă; 11

Sisteme Încorporate n Conectarea unui controler Ethernet în spaţiul de memorie: 12

Sisteme Încorporate n Conectarea unui controler Ethernet în spaţiul de memorie: 12

Sisteme Încorporate n Conectarea unui controler Ethernet în spaţiul de I/ E: 13

Sisteme Încorporate n Conectarea unui controler Ethernet în spaţiul de I/ E: 13

Sisteme Încorporate n Controlere: q q n Ethernet: se conectează direct la mediul Ethernet;

Sisteme Încorporate n Controlere: q q n Ethernet: se conectează direct la mediul Ethernet; Internet: se leagă la alte medii; Ex. : conectarea unui microcontroler la Internet, prin S-7600 A: 14

Sisteme Încorporate n n Microcontrolerul DS 80 C 400: Microcontroler de reţea: q q

Sisteme Încorporate n n Microcontrolerul DS 80 C 400: Microcontroler de reţea: q q q n Oferă suport hardware pentru conectare directă la mediul Ethernet; Include stivă TCP/ IP şi suportă adresare de tip IPv 4 sau IPv 6; Asigură maxim 32 conexiuni TCP simultane şi o rată de transfer maximă de 5 Mbps; Aplicaţii: q q q q Automatizări, control industrial; Monitorizarea spaţiului înconjurător; Comerţ; Automatizări domestice şi de birou; Terminale pentru tranzacţii financiare; Achiziţii de date de la distanţă; Convertoare de date: n n Serial – Ethernet; CAN – Ethernet; 15

Sisteme Încorporate n Caracteristici: q q q q Nucleu 8051, frecvenţă de 75 MHz

Sisteme Încorporate n Caracteristici: q q q q Nucleu 8051, frecvenţă de 75 MHz şi spaţiu de memorie de 16 Mo; Suport pentru In – system programming; Cicluri externe la memorie multiplexate sau nemultiplexate; Include controler Ethernet 10/ 100 şi stivă TCP/ IP; Include interfaţă CAN 2. 0 B, 1 – Wire şi 3 interfeţe seriale; Include sistem de întreruperi cu 16 surse din care 6 sunt externe; Alte module periferice interne: Watchdog Timer, 4 contoare/ numărătoare pe 16 biţi, tact intern programabil pentru comandă de modul Ir. DA, detector pentru defectarea modulului de tact, 64 pini de I/E; Gestionare avansată a consumului: n n n Alimentare la 3. 3 V, nucleul la 1. 8 V; poate lucra şi la 5 V; Moduri de lucru cu consum redus selectabile prin program; Mod de lucru de conservare la comunicarea pe Ethernet sau pe CAN; Anunţ a unei iminente căderi a tensiunii de alimentare; Reset automat la revenirea tensiunii de alimentare; 16

Sisteme Încorporate n Schema bloc: 17

Sisteme Încorporate n Schema bloc: 17

Sisteme Încorporate n Controlerul Ethernet: q q q n Compatibil IEEE 802. 3, la

Sisteme Încorporate n Controlerul Ethernet: q q q n Compatibil IEEE 802. 3, la rată de transfer de 10/ 100 Mbps; În modul de lucru half – duplex se conectează la mediul Ethernet împreună cu alte module; pentru acces foloseşte metoda CSMA/ CD (Carrier – Sense Multiple Access with Collision Detection); În modul de lucru full – duplex se leagă direct la o altă staţie; nu există riscul de coliziuni; Schema bloc: 18

Sisteme Încorporate n Modulul TINI: q q q Sistem bazat pe microcontroller Dallas orientat

Sisteme Încorporate n Modulul TINI: q q q Sistem bazat pe microcontroller Dallas orientat pe aplicaţii de tip web server; Microcontrollerul include interfeţe Ethernet, RS 232, I 2 C, CAN, 1 – Wire; Oferă suport pentru limbajul Java; Include API – uri pentru comunicările seriale; Schema bloc: 19

Sisteme Încorporate n Aplicaţie 1: monitorizarea/ comanda unui termostat: n Aplicaţie 2: monitorizarea temperaturii

Sisteme Încorporate n Aplicaţie 1: monitorizarea/ comanda unui termostat: n Aplicaţie 2: monitorizarea temperaturii mediului extern q q q Se foloseşte un modul TINI şi senzor 1 - Wire Dallas 1820 sau 1920; Senzorul include facilitate de alarmă la supra sau subdepăşirea unor nivele de temperatură; Mai mulţi senzori se pot lega la acelaşi fir, fiecare avînd propria adresă; Modulul TINI va implementa un web server; Modulul TINI conţine funcţii pentru comunicarea de tip 1 – Wire; Diagrama următoare arată comunicarea client – server TINI; 20

Sisteme Încorporate 21

Sisteme Încorporate 21

Sisteme Încorporate 22

Sisteme Încorporate 22

Sisteme Încorporate n Modulul Ethernut q q q q q Bazat pe microcontroler Atmel

Sisteme Încorporate n Modulul Ethernut q q q q q Bazat pe microcontroler Atmel AT 91 R 40008, cu nucleu ARM 7 TDMI; Include controler Ethernet compatibil IEEE 802. 3, cu rata 10/ 100 Mbps şi conector RJ - 45; Include interfaţă RS 232 şi conector DB 9; Conţine 256 Ko memorie SRAM şi 4 Mo memorie Flash ROM, programabilă In – system şi 512 O memorie EEPROM programabilă In – system; Periferie internă: Watchdog, 3 contoare/ numărătoare pe 16 biţi, ceas de timp real, 24 linii de port; Dimensiunea plăcii: 80 x 100 mm; Alimentare: 5 – 24 VDC; LED – uri pentru alimentare şi comunicare pe Ethernet; Software: RTOS numit Nut/OS, stivă TCP/IP proprie numită Nut/Net, compilator de C şi biblioteci C; Include aplicaţii: un web server, o poartă RS 232 – TCP/IP etc. 23

Sisteme Încorporate n Modulul: 24

Sisteme Încorporate n Modulul: 24

Sisteme Încorporate n Schema bloc: 25

Sisteme Încorporate n Schema bloc: 25

Sisteme Încorporate n Nivelele Physical + Data Link (OSI) = Network access (Internet): n

Sisteme Încorporate n Nivelele Physical + Data Link (OSI) = Network access (Internet): n Sarcinile nivelului Data Link: q q Gestionarea erorilor; Accesul la mediul de transfer; Adresarea: fiecare nod conectat la reţea are propria adresă fizică; nivelul asigură ca o staţie să sesizeze existenţa altor staţii în reţea şi facilităţi prin care o staţie să acceseze adresele altor staţii conectate la reţea; Transferul datelor: asigură ca datele transferate de la nivelele superioare să ajungă la mediu iar datele sosite de la nivelul fizic să fie transferate spre nivelele superioare după eliminarea header – ului, a tactului şi după efectuarea primei verificări de erori; 26

Sisteme Încorporate q n Subnivelul MAC din cadrul nivelului Data Link are sarcinile: q

Sisteme Încorporate q n Subnivelul MAC din cadrul nivelului Data Link are sarcinile: q q n n Dimensionarea datelor: asigură partiţionarea datelor în formate; dacă datele de transmis sunt sub forma unui bloc de dimensiune mare, acest nivel îl va partiţiona în blocuri de dimensiunea unui format, le va trimite la nivelul fizic şi va fi răspunzător de reasamblarea formatelor în blocul original, la recepţie; Gestionează suprapunerile mai multor reţele care utilizează acelaşi mediu: operaţia poate fi necesară în cazul transferurilor fără fir; Sprijină gestionarea locală a erorilor: prin retransmisia formatelor, prin transmiterea răspunsurilor de tip ACK; Controlează accesul la reţea: prin criptare şi parole; Adresare dinamică: în cazul suprapunerilor de reţele; Subnivelul LLC din cadrul nivelului Data Link se ocupă de transferul datelor între nivele, gestionînd transferul cu sau fără răspuns; Subnivelul PHY este răspunzător de conectarea fizică la mediu; există mai multe posibilităţi; 27

Sisteme Încorporate n Nivelul Network/ routing: q q q Se ocupă cu rutarea mesajelor

Sisteme Încorporate n Nivelul Network/ routing: q q q Se ocupă cu rutarea mesajelor între diferite reţele locale; Se bazează pe conceptul de adresă de reţea unică pentru fiecare staţie legată la mediu; adresa este alocată permanent sau la nivel de sesiune de lucru; Protocolul utilizat la acest nivel este IP; rolul şi poziţia sa: 28

Sisteme Încorporate n Un pachet IP este format dintr – un header şi datele

Sisteme Încorporate n Un pachet IP este format dintr – un header şi datele de transferat: q q q n Header – ul: 20 – 60 octeţi, conţine şi adresa IP a sursei şi a destinatarului; Adresa IP este pe 32 biţi (128 biţi în varianta IPv 6) şi se notează în formă zecimală, de ex. : 192. 23. 11. 3; Adresele IP sunt alocate centralizat de către Internet Network Information Centre; sunt grupate în clase, identificate prin cîmpurile din adresă; Protocolul TCP (Transmition Control Protocol): q q q Asigură comunicare punct la punct între doar 2 noduri la un moment dat; Stabileşte o cale între cele 2 noduri care va fi eliberată doar după încheierea comunicării; Fiecare pachet conţine, pe lîngă datele utile, informaţie de control a erorilor şi pentru refacerea mesajului final, la destinatar; Asigură un mecanism prin care destinatarul certifică primirea datelor; Este utilizat de majoritatea aplicaţiilor: FTP, TELNET, HTTP, e-mail. 29

Sisteme Încorporate n n Nivelul Application: Telnet: q q q n stabileşte o cale

Sisteme Încorporate n n Nivelul Application: Telnet: q q q n stabileşte o cale între 2 staţii pentru comunicare directă (similară unei căi de tip RS 232); poate fi o soluţie pentru comunicarea PC – SI legat la Internet; caracterele acţionate la tastatura unei staţii pot ajunge direct la cealaltă staţie; caracterele se transferă sub forma codului lor ASCII; E – mail: q q q Asigură transferul unui mesaj între o sursă şi un destinatar; Calea este: staţia sursă – server – ul local al staţiei destinaţie – staţia destinaţie; server – ele memorează temporar mesajele; Pentru transmisia unui mesaj se foloseşte protocolul SMTP (“Simple Mail Transfer Protocol”) sau protocolul POP 3 (“Post Office Protocol 3”) iar pentru recepţie, ştergere, enumerare, ordonare se foloseşte protocolul POP 3; SMTP este mai simplu, se recomandă în cazul SI. 30

Sisteme Încorporate n HTTP (“Hyper. Text Transfer Protocol”): q q q Este metoda de

Sisteme Încorporate n HTTP (“Hyper. Text Transfer Protocol”): q q q Este metoda de bază pentru transferarea de către un server web a paginilor, imaginilor, sunetelor şi altor tipuri de fişiere; Comunicarea se face conform modelului client – server; Protocolul HTTP este folosit de browser – e pentru a accesa pagini memorate în servere; Un SI poate fi web server sau client şi va comunica prin HTTP; O tranzacţie a unui client, implementat de un SI, are structura: n n n n Pentru a contacta un host, clientul contactează întîi ISP; ISP va răspunde cu o secvenţă PPP prin care acesta va identifica clientul şi îi va aloca un IP pentru toată durata tranzacţiei; Clientul deschide o conexiune TCP; După deschiderea conexiunii, clientul trimite o comandă specifică (GET) împreună cu parametri de identificare a paginii cerute; Clientul aşteaptă sosirea paginii şi o memorează; Serverul sau clientul închid conexiunea HTTP; Clientul va prelucra pagina primită; 31

Sisteme Încorporate n FTP (“File Transfer Protocol”): q q n TFTP (“Trivial File Transfer

Sisteme Încorporate n FTP (“File Transfer Protocol”): q q n TFTP (“Trivial File Transfer Protocol”): q q n Protocol pentru alocarea dinamică a IP – urilor; RTP (“Real Time Transport Protocol”): q n Variantă mai simplă a FTP; cere o singură conexiune TCP; Controlul de erori este limitat dar suficient pentru aplicaţii ale SI; DHCP (“Dynamic Host Configuration Protocol”): q n Protocol pentru a transfera fişere între o sursă şi un destinatar; Cere deschiderea a 2 conexiuni TCP; nu se recomandă pentru SI din cauza resurselor limitate; Util pentru SI întrucît este orientat pe transferuri în timp real; NTP (“Network Time Protocol”): q q Asigură sincronizarea tacturilor calculatoarelor legate la Internet; Folosit la accesarea orelor naţionale şi internaţionale şi în aplicaţii bazate pe diseminarea frecvenţelor. 32