În figura următoare sunt arătate, cu aproximație, compoziția gazelor de eșapament ale motoarelor diesel și pe benzină. [306951]
INTRODUCERE
Automobilul a [anonimizat] “calitatea vieții”. Acesta ne oferă o [anonimizat], exprimă poziția noastră socială. [anonimizat], [anonimizat] a [anonimizat].
[anonimizat] a devenit un subiect din ce în ce mai delicat. [anonimizat] a [anonimizat]-o succesiune cât mai rapidă. [anonimizat].
[anonimizat]: [anonimizat], pulberi în suspensie sau hidrocarburi. [anonimizat] o fracțiune din totalul emisiilor de gaze de eșapament.
[anonimizat], compoziția gazelor de eșapament ale motoarelor diesel și pe benzină.
Fig. 1.1 Compoziția gazelor de eșapament [1]
[anonimizat] (OBD) a [anonimizat], cer ca toate automobilele noi vândute în statul California să aibă capabilități de diagnosticare la bord. Aceste cerințe sunt denumite ca fiind prima generație de diagnoză la bord a automobilelor. Succesul acestui standard nu a fost foarte mare deoarece interfața cu echipamentul de diagnosticare nu era standardizată și fiecare constructor a situat conectorul in diferite locații. Totodată, [anonimizat] a crea un echipament de diagnosticare care să poată fi utilizat pe automobile diferite.
În 1994 [anonimizat]-2. Acestea sunt impuse tuturor automobilelor noi care vor fi vândute în California începând din anul 1996. [anonimizat].
OBD sau diagnoza la bord reprezintă capacitatea unui automobil de a își diagnostica diverse componente care au impact asupra emisiilor poluante. Principalul rol al diagnozei la bord este acela de a aprinde martorul „Check Engine” în cazul în care s-au detectat probleme de funcționare la componentele care influențează emisiile poluante.
[anonimizat], hidrocarburi și oxizi de azot nu pot fi măsurate direct. [anonimizat]. [anonimizat].
Fig. 1.2 Grafic poluare US 1975-2000 [2]
De ce a fost nevoie pentru a se implementa sistemul OBD?
Interfața de diagnosticare standardizată
Coduri de eroare standardizate pentru toți producătorii din industia automobilelor
Indicarea condițiilor în care s-a produs defecțiunea
Determinarea momentului când o defecțiune afectează emisiile de gaze
Denumiri și abrevieri standardizate ale componentelor și ale sistemelor
Obiective:
Monitorizarea tuturor componentelor care sunt responsabile pentru calitatea emisiilor de gaze
Protejarea catalizatorului
Indicarea de alarme vizuale când componentele afectează emisiile de gaze
Stocarea defecțiunilor
Capabilitatea de diagnosticare
Monitorizare:
Catalizator
Sonda lambda
Sistemul de detectare a rateurilor
Sistemul de recirculare a gazelor de eșapament (EGR)
Sistemul de purjare a rezervorului
Toți senzorii și elementele de acționare care afectează emisiile de eșapament
Transmisia automată
Fig. 1.3 Schema de principiu OBD II [2]
STADIUL ACTUAL AL CERCETĂRILOR ȘI REALIZĂRILOR PRIVIND SISTEMELE DE DIAGNOZĂ
Procentul tot mai mare de componente electronice cu care sunt prevăzute autovehiculele face ca identificarea și repararea calificată a unităților de comandă să fie una din cerințele cele mai frecvente ale posesorilor de autovehicule.
În prezent, sunt existente pe piață două mari categorii de testere de diagnoză auto. Prima categorie este reprezentată de aparatele de diagnoză profesionale, utilizate în service-urile autorizate de către producătorii sau de către importatorii oficiali ai diferitelor mărci de automobile. Aceste testere sunt, practic, niște super-computere, achiziționate la un preț exorbitant, conectate prin internet la serverele uzinelor de automobile, iar utilizarea lor necesită, pe lângă un personal instruit, o licență specifică mărcii respective, eliberată doar de uzina producătoare de automobile. A doua categorie o reprezintă uneltele de diagnoză de tip multimarcă, putând acoperi majoritatea modelelor de automobile. Aceste sisteme nu sunt atât de performante precum cele din prima categorie, fiind folosite în ateliere de reparații auto mici, sau chiar de unele persoane doar ca și hobby. Prețurile pentru aceste interfețe de diagnoză multimarcă variază în funcție de producător, de tipurile de chip-uri utilizate în procesul de fabricație dar și de performanță.
Din analiza soluțiilor existențe pe piața efectuată, atât pe plan național cât și internațional, a reieșit că pe plan național nu există nici o companie producătoare de astfel de sisteme de diagnosticare.
Fig. 2.1 Personal calificat în operația de diagnoză auto [3]
În continuare, vor fi prezentate câteva exemple din cele două categorii de sisteme de diagnoză: echipamente de diagnoză profesionale și testere multimarcă, produse pe plan internațional.
Aparate de diagnoză profesionale
Cel mai performant sistem de diagnoză profesional este de departe cel oferit de către grupul VAG (Volkswagen Aktiengesellschaft), sistemul VAS 5051. Una dintre caracteristici este că acest sistem este disponibil exclusiv pentru diagnoza tuturor mărcilor din grupul VAG: Audi, Bentley, Bugatti, Lamborghini, Porsche, SEAT, Škoda și Volkswagen, fiind însă printre singurele sisteme cu care se poate efectua diagnoza pentru modelele acestor mărci, majoritatea sistemelor de diagnoză din categoria multimarcă întâmpinând dificultăți în stabilirea conexiunii.
Fig. 2.2 Aparat de diagnoză VAS 5051 [4]
Funcții VAS 5051:
Auto-diagnosticare
Diagnosticare OBD
Instrumente de testare
Constatare asistată online a defectelor
Administrare
Aplicații
Caracteristici tehnice:
Ecran cu dimensiunea de 15’’
Compatibil cu programul ElsaWin (baza de date pentru diagnoza la grupul VAG)
Performanța deosebită a procesorului
Opțiuni de extindere prin interfețe standard: ex. Imprimantă USB
Durată de utilizare în funcție de starea de încărcare și utilizare 3 ore
Fig. 2.3 Meniu auto-diagnosticare VAS 5051 [4]
Un alt super-computer de diagnoză vine din partea Bosch, unul dintre liderii globali în domeniul pieselor și echipamentelor auto, care lansează o nouă soluție compactă, completă și mobilă pentru diagnosticarea profesionistă a oricăror disfuncționalități la unitățile de comandă ale autovehiculelor: Bosch KTS 340. Din punct de vedere al licențelor, și la acest model întâlnim restricții de marca, fiind disponibil doar pentru diagnosticarea următoarelor mărci: Audi, BMW, Mercedes Benz, Volvo.
Fig. 2.4 Aparat de diagnoză Bosch KTS 340 [5]
Caracteristici tehnice:
Sistem de operare Linux
Card SD de 8GB
Ecran color TFT, tactil, 8.4’’
Multimetru cu 2 canale si WLAN integrat
Durată de utilizare în funcție de starea de încărcare și utilizare aproximativ până la 2 ore
Protecție integrată la șocuri
Dimensiuni: 290 x 214 x 67 mm
Masa: 2kg
Cel mai inovativ aparat de diagnoză profesional, vine din partea britanicilor de la Autologic, care în 2015 au lansat aparatul de diagnoză Autologic Assist Plus, al cărui software a fost conceput special după specificațiile producătorului bavarez BMW. Autologic Assist Plus impresionează atât prin design-ul inovativ, cât și printr-o interfață cu utilizatorul și funcții foarte futuriste.
Caracteristici tehnice:
Ecran color TFT, tactil, 13.3’’
2 porturi USB A, 1 port USB B
Cameră foto/video 5MP
Posibilitate de alimentare de la automobil
Sistem de operare Microsoft Windows Embedded 8
Dimensiuni: 350 x 239 x 126mm
Fig. 2.5 Diagnosticarea modelelor BMW cu ajutorul Autologic Assist Plus [6]
Aparate de diagnoză multimarcă
Echipamentele de diagnosticare multimarcă sunt și ele de mai multe tipuri. Cele mai simple sunt cele care citesc doar codurile de eroare (DTC). Echipamentele mai complexe, pe lângă codurile de eroare, citesc și parametrii automobilului în timp real (temperatură motor, turație motor, viteză vehicul, etc.), realizează teste pe diverse componente sau testează senzorul de oxigen.
În continuare, vor fi prezentate câteva exemple din această categorie de sisteme de diagnoză care impresionează la momentul actual.
Cel mai simplu aparat de diagnoză multimarcă este produs de taiwanezii de la Innova și este reprezentat de modelul Innova CanOBD2. Acest sistem prezintă un meniu foarte simplu, iar singura funcție pe care o îndeplinește este aceea de citire și afișare a codurilor de eroare, fără a afișa însă alte detalii referitoare la codul de eroare
Fig. 2.6 Innova CanOBD2 [7]
Americanii de la Autel vin cu o gamă foarte largă de echipamente de diagnoză, de la simple cititoare de coduri de eroare, până la platforme profesionale de diagnoză auto. Pe partea de aparate de diagnoză multimarcă, la un raport foarte bun calitate-preț, Autel recomandă scannerul Autel Autolink AL619. Pe lângă funcțiile de diagnoză ale senzorilor de la motor, acest echipament oferă și diagnoză asupra sistemelor ABS și SRS. Că și puncte forte se regăsesc interfața prietenoasă cu utilizatorul, posibilitatea de upgrade a software-ului, dar și posibilitatea de a printa raporturile de diagnoză.
Fig. 2.7 Autel Autolink AL619 [8]
Caracteristici tehnice:
– Ecran color TFT, tactil
– Posibilitate de alimentare de la automobil
– Posibilitatea de upgrade a software-ului prin internet
– Dimensiuni: 199 mm x 104.5 mm x37.5 mm
– Masa: 0.3kg
Tot de peste ocean, producătorul american Actron vine cu o gamă interesantă de echipamente de diagnoză, cu un nivel mediu al performanțelor, însă cu o ergonomie demnă de apreciat. Vârful de gamă al celor de la Actron îl reprezintă sistemul de diagnoză Actron CP9690. Față de alte modele, Actron CP9690 are posibilitatea de a oferi graficele a două funcții în același timp, conține o bază de data foarte detaliată a erorilor, dar și poziția senzorilor la care se regăsesc probleme.
Fig. 2.8 Actron CP9690 [9]
Caracteristici tehnice:
– Ecran color TFT, tactil
– Posibilitate de alimentare de la automobil
– Posibilitatea de upgrade a software-ului prin USB
– Dimensiuni: 340 mm x 280 mm x 100 mm
– Masa: 1.5kg
CONSIDERAȚII TEORETICE PRIVIND SENZORII ȘI ACUTATORII DIN CADRUL UNUI AUTOMOBIL ȘI SISTEMELE DE MONITORIZARE A ACESTORA
Structura generală a senzorilor din cadrul unui automobil
Pentru a înțelege cât mai bine rolul pe care îl au senzorii în monitorizarea tuturor componentelor care sunt importante pentru calitatea emisiilor de gaze, trebuie să se cunoască mai întâi principiul motoarelor cu combustie internă, care se regăsesc astăzi montate pe majoritatea automobilelor. Următoarele diagrame arată procesul de ardere într-un motor în 4 timpi și un rezumat al componentelor de intrare și de ieșire pentru un ciclu de combustie.
Timpul I: admisia
În cadrul admisiei, aerul este indus prin filtrul de aer. În acest proces, constituenții aerului – oxigen, azot și apă – sunt transferați în camera cilindrului.
Fig. 3.1 Timpul I: admisia [10]
Timpul II: compresia
În al doilea timp, aerul din admisie este comprimat pentru a face posibilă aprinderea spontană ulterioară.
Fig. 3.2 Timpul II: compresia [10]
Timpul III: injecția si arderea
În al treilea timp, combustibilul care constă din hidrocarburi și sulf este injectat și ars.
Fig. 3.4 Timpul III: injecția și arderea [10]
Timpul IV: evacuarea
În al patrulea timp, gazele de eșapament sunt emise. Compușii chimici arși reprezintă compoziția gazelor arse de evacuare.
Fig. 3.5 Timpul IV: evacuarea[10]
Noile motoare cu combustie internă utilizate pentru propulsarea vehiculelor sunt controlate în totalitate de sisteme electronice. Partea „inteligentă” a acestor sisteme de comandă și control este reprezentată de sistemul de management al motorului. Sistemul de management al motorului, primește informații de la senzori, calculează starea motorului și acționează asupra actuatoarelor în scopul atingerii regimului de funcționare dorit. Ca si abrevieri ale sistemului de management al motorului, se întâlnesc: ECU (Electronic Control Unit), ECM (Engine Control Module), EMS (Engine Management System) sau PCM (Powertrain Controle Module).
În funcție de tipul motorului, motoare pe benzina sau motoare diesel, conectorul are un număr variabil de pini (intrări de la senzori, comanda actuatoarelor, alimentare, etc.). La un motor modern sistemul de management al motorului poate depăși ușor 100 de pini.
Fig. 3.6 Senzori motor [2]
Elemente:
Unitate de control
Lampă de avertizare bord
Interfață de diagnoză
Debitmetru
Pompă de detectare a scurgerilor
Canistră de carbon activ
Supapă de purjare
Senzori pozitie clapetă de acceleratie
Senzor captor viteză
Injector
Filtru combustibil
Senzor de detonație
Senzor turație motor
Senzor Hall
Distribuitor
Senzor temperatură lichid de răcire
Supapă EGR
19. EGR
Supapă Kombi
Sonda lambda I
Sonda Lambda II
Protocol CAN bus
Circuitele de intrare furnizează informații asupra condițiilor instantanee de operare ale motorului, care funcționează ca bază pentru comenzile care vor fi transmise de la sistemul de management al motorului către actuatorii motorului.
Sistemul combină injecția de combustibil, pregătirea unui amestec de bună calitate și un avans corect la scânteie pentru a oferi un suport viabil motorului pe orice domeni de sarcini întâlnite.
Fig. 3.7 Diagrama senzori-actuatori [2]
Unitatea de control a motorului (ECU)
Noile motoare cu combustie internă utilizate pentru propulsarea vehiculelor sunt controlate în totalitate de sisteme electronice. Partea „inteligentă” a acestor sisteme de comandă și control este reprezentată de sistemul de management al motorului. Sistemul de management al motorului, primește informații de la senzori, calculează starea motorului și acționează asupra actuatoarelor în scopul atingerii regimului de funcționare dorit. Ca si abrevieri ale sistemului de management al motorului, se întâlnesc: ECU (Electronic Control Unit), ECM (Engine Control Module), EMS (Engine Management System) sau PCM (Powertrain Controle Module).
Fig. 3.8 ECU Bosch MS4 Sport [11]
Unitatea de control a motorului este proiectată să funcționeze în condiții de solicitări mecanice și termice extreme, fiind expus la [11]:
temperaturi de la -40°C pană la 120 °C;
contaminarea cu apă, ulei, combustibil;
praf, umezeală;
solicitări și vibrații mecanice.
Principalele părți componente ale sistemului de management al motorului sunt: carcasa (2), placa de bază (1) și conectorul (3), prin care se primesc semnalele electrice de la senzori și se comandă actuatoarele.
Fig. 3.9 Unitatea de control Continental EMS3 [12]
Unitatea de control a motorului trebuie să fie robustă și pentru oscilațiile de tensiune electrică sau pentru expunerea la perturbații electromagnetice.
În funcție de tipul motorului, benzină sau diesel, conectorul are un număr variabili de pini, la un motor modern unitatea de control a motorului putând depăși 100 de pini.
Din punct de vedere funcțional o unitatea de control are următoarele componente:
blocul de alimentare de la baterie;
blocul de procesare a semnalelor de intrare;
unitatea centrală de procesare CPU;
memoria non-volatilă;
modul de monitorizare;
amplificarea comenzii actuatoarelor;
Fig. 3.10 Procesarea semnalelor în unitatea de control a motorului [13]
Microcontrolerul este componenta electronică care realizează operațiile matematice și logice ale algoritmilor de control. Acesta conține o memorie RAM, un convertor A/D, o memorie EEPROM și un modul CAN.
Informațiile din memoria RAM pot fi accesate prin specificarea adresei din memorie. Datele pot fi scrise și citite de nenumărate ori, fără limitări. La oprirea motorului conținutul memoriei RAM este pierdut, cu excepția informației salvate în memoria non volatilă.
Conținutul memoriei EPROM poate fi reprogramat în zona algoritmilor de control cât și în zona parametrizării, specificând zona de memorie ce se dorește a fi reprogramată. La reprogramare, se șterge și se rescrie tot conținutul dintr-o anumită zonă, fără sa se poată șterge individual o anume adresă de memorie.
Semnalele de intrare în unitatea de control a motorului pot fi analogice sau digitale, în funcție de tipul senzorului. Un semnal analogic de la senzori este o tensiune electrică, între 0 și 5V. Conversia acestora în valoare digitală se face cu ajutorul unui convertor analog-digital.
Senzorii de tip Hall trimit semnale digitale către unitatea de control a motorului. Acestea au două nivele logice, 0 sau 1, reprezentate de 0 sau 5V. Ele sunt procesate direct de microcontroler, fără a avea nevoie de o conversie adițională.
Modulul CAN realizează comunicarea cu restul calculatoarelor din cadrul automobilului: calculatorul de ABS (Anti-lock Braking System), calculatorul BCM (Body Control Module),dar și cu dispozitivele de diagnoză.
În cazul motoarelor cu control electronic al clapetei de accelerație, unitatea de control a motorului este prevăzută cu un modul adițional de monitorizare a anumitor parametrii ai motorului precum poziția pedalei de accelerație, presiune din rampa de combustibil, etc.
Clapeta de accelerație
Reglarea sarcinii la motorul pe benzină se face prin controlul masei amestecului aer-combustibil introdusă în motor. În funcție de cantitatea de aer care intră în motor, unitatea de control a motorului calculează masa de combustibil ce trebuie injectată. Clapeta de accelerație reglează masa de aer care intră în motor prin obturarea galeriei de admisie.
Fig. 3.11 Localizarea clapetei de accelerație la motorul 2.0 TDI [14]
Cuplul motor cerut de conducătorul auto este exprimat prin poziția clapetei de accelerație. Când utilizatorul unui automobil dorește să accelereze automobilul, practic dorește un cuplu mai mare de la motorul automobilului. În cazul clapetelor de accelerație controlate electronic, unitatea de control a motorului comandă, prin intermediul unui motor electric de curent continuu, poziția clapetei de accelerație.
Fig. 3.12 Clapetă de accelerație electronică Bosch DV-E5 [11]
Componente:
corpul clapetei de accelerație
clapeta de accelerație
angrenaj cu roți dințate
senzor de poziție clapetă
motor electric de curent continuu
conector electric
Sistemele cu clapetă de accelerație electronică se mai numesc și sisteme „drive by wire” deoarece nu există o legătura mecanică directa între pedala de accelerație și clapeta de accelerație. Pedala de accelerație are un senzor de poziție care trimite informația de poziție către unitatea de control a motorului. În funcție de informațiile primite, unitatea de control a motorului comandă motorul electric pentru a modifica poziția clapetei de accelerație.
Fig. 3.14 Moduri de acționare a clapetei de acclerație [16]
Controlul electronic al clapetei de accelerație a fost introdus in primul rând pentru a diminua consumul de combustibil. Fata de clapeta de accelerație cu comandă mecanică, clapeta de accelerație cu control electronic permite sistemului de management al motorului să optimizeze modul de funcționare al motorului pentru reducerea consumului de combustibil.
Fig. 3.15 Clapeta de accelerație – sistemul de control [16]
Senzorul de debit masic (MAF)
Senzorul de debit masic este montat în carcasa filtrului de aer și măsoară fluxul de aer în motor, care are ca scop determinarea sarcinii motorului.
Fig. 3.16 Locația debitmetrului [45]
Senzorul de masă de aer utilizează un fir încălzit pe lângă care trece aerul din admisie. Firul este încălzit datorita unui curent electric care trece prin el. Odată cu creșterea temperaturii firului crește și rezistența electrică a acestuia. Când motorul este pornit, aerul începe să treacă pe lângă fir, temperatura acestuia scăzând. Atunci când se răcește, se reduce si rezistența electrică a firului, iar curentul electric crește până când ajunge la temperatura de echilibru.
Fig. 3.17 Caracteristica debitmetru[13]
Curentul electric din fir variază în funcție de masa de aer care trece prin senzorul de debit. Acest senzor are un circuit integrat care transformă curentul electric într-o tensiune electrică cu valori între 0 și 5V. Cu ajutorul caracteristicii senzorului, sistemul de management al motorului transformă tensiunea electrică în masă de aer și o utilizează la calculul parametrilor de injecție. Senzorul de debit transmite și informația de temperatură a aerului din admisie.
Fig. 3.18 Debitmetru de tip “hot-wire” [17]
Senzorul de presiune al aerului din admisie (MAP)
La motoarele termice masa aerului admis în motor este utilizată pentru calculul cantității de combustibil ce trebuie injectată. Determinarea masei de aer se poate face în două moduri: prin utilizarea unui debitmetru masic de aer sau prin utilizarea unui senzor de presiune a aerului din admisie.
Fig. 3.19 Locația senzorului de presiune aer admisie [45]
Senzorul măsoară presiunea absolută a aerului din galeria de admisie. Utilizarea unui senzor de presiune a aerului în locul unui senzor de debbit este determinată de costul mult mai redus al senzorului de presiune.
Senzorul de presiune a aerului din admisie este poziționat după clapeta de accelerație. Dacă motorul este turbo-supraalimentat există un senzor de presiune a aerului și după compresor, care citește presiunea aerului comprimat.
Pentru calculul masei de aer din cilindri, utilizând un senzor de presiune a aerului, sistemul de management al motorului utilizează informații despre:
cilindreea motorului
densitatea aerului
presiunea absolută a aerului din admisie
turația motorului
randamentul volumetric
temperatura motorului
temperatura aerului din admisie
În cazul în care motorul este prevăzut cu sistem de recirculare a gazelor de eșapament, sistemul de management al motorului ține cont și de debitul de gaze arse reintroduse în motor.
Fig. 3.20 Senzor de presiune aer admisie – componente [18]
Componente:
capac de protecție
conector electric
element sensibil
sistem electronic de procesare a semnalului
canal de legătură cu galeria de admisie
Elementul sensibil care măsoară presiunea aerului din admisie conține un element piezorezistiv care generează o tensiune electrică proporțională cu presiunea aerului măsurat.
Senzorul de presiune a aerului din admisie poate fi utilizat atât pe motoarele aspirate cât și pe cele supraalimentate. Domeniul de măsură este situat între 0.4 și 2.5 bari. Tensiunea de alimentare pe care o necesită senzorul este de 5V.
Senzorul de poziție al arborelui cotit și al axului cu came
La motoarele moderne cu combustie internă, sistemul de management al motorului comandă deschiderea injectoarelor și producerea scânteii, în funcție de poziția pistoanelor. Sistemul de management al motorului trebuie să recunoască poziția fiecărui piston, în funcție de turația arborelui cotit și/sau poziția axului cu came.
Fig. 3.21 Locația senzorului de poziție al axului cu came [13]
Poziția pistoanelor în cilindrii se poate determina cunoscând poziția arborelui cotit și poziția axului cu came. Cu aceste informații, sistemul de management al motorului realizează recunoașterea poziției pistoanelor.
La un motor cu 4 cilindri în linie, ordinea de aprindere este pistonul 1- pistonul 3- pistonul 4- pistonul 2. În timpul funcționării motorului, când pistoanele 1 și 4 se vor afla la Puncul Mort Inferior, pistoanele 2 și 3 se vor afla la Puncul Mort Exterior.
La motoarele moderne sincronizarea nu este automată ci trebuie făcută pe baza informațiilor provenite de la senzorii de poziție.
Sincronizarea poziției pistoanelor se poate face în două moduri:
utilizând informația de poziție al arborelui cotit
utilizând atât informația de poziție al arborelui cotit cât și cea de poziție al axului cu came
Fig. 3.22 Locația senzorului de poziție al arborelui cotit [19]
Fig. 3.23 Senzor arbore cotit Bosch [11]
Avantajul primei metode este că nu necesită un senzor de poziție pe axul cu came.
Dezavantajul acestei metode îl reprezintă timpul mai mare de pornire a motorului, iar în cazul defecțiunii senzorului de poziție a arborelui cotit, pornirea motorului este imposibilă.
A doua metodă cere utilizarea unui senzor de poziție pe axul cu came. Majoritatea senzorilor funcționează pe principiul efectului Hall. Poziția arborelui cu came este citită cu ajutorul unei roți metalice fixată pe acesta.
Prin utilizarea informațiilor de la senzorul de poziție al arborelui cotit și de la senzorul de poziție al axului cu came, sistemul de management al motorului poate determina care piston se află în cursa de admisie și care este în cursa de evacuare.
Fig. 3.24 Semnale electrice generate de senzorii de poziție
ai arborelui cotit și ai axului cu came [13]
Senzorul de poziție al arborelui cotit detectează când pistoanele sunt la Punctul Mort Interior, iar cu ajutorul informațiilor de la senzorul de poziție al axului cu came (0 sau 1) se determină care din cele două pistoane este în cursa de comprimare.
Fig. 3.25 Principiul unui senzor Hall [15]
Senzorul Hall de poziție al arborelui cu came are 3 pini:
alimentare (+5 V)
masă (0 V)
semnal de poziție(+13.5 V)
Senzorul de detonație
Detonația reprezintă o auto-aprindere necontrolată a amestecului carburant care apare în anumite condiții și care este specifică motoarelor pe benzină. Fenomenul de detonație apare în cursa de comprimare o dată cu creșterea presiunii și temperaturii în camera de ardere, când local amestecul carburant atinge temperatura de auto-aprindere.
Fig. 3.26 Fenomenul de detonație [20]
Fenomenul de detonație este unul nedorit, care trebuie deci evitat. Variațiile de presiune rezultate în urmă detonației conduc la o uzură prematură a motorului, iar în cazul funcționării prelungite cu acest fenomen, se pot produce avarii serioase în cadrul motorului.
Fig. 3.27 Arderea cu detonație [20]
Motoarele care funcționează cu benzină fără plumb utilizează un senzor pentru detecția detonației. Acest senzor este un senzor pentru detectarea vibrațiilor și funcționează pe principiul piezoelectric.
Fig. 3.29 Secțiune printr-un senzor de detonație [13]
Componente:
masă seismică
carcasă
element piezoelectric
electrozi
contacte electrice
Senzorul de detonație conține un element piezoelectric și o masă seismică. La apariția detonației sunt produse vibrații puternice în cilindru, care sunt trec prin blocul motor și sunt sesizate de senzor. Vibrațiile se transmit masei seismice care apasă pe elementul piezoelectric și se produce o tensiune electrică.
Fig. 3.28 Locația senzorilor de detonație la BMW E46 [21]
Fenomenul de detonație poate avea un efect distructiv asupra motorului și acest lucru impune luarea de măsuri de siguranță în cazul în care circuitul de detecție este defect. Imposibilitatea de a detecta fenomenul de detonație poate avea ca sursă un defect al senzorului de detonație, a circuitului electric sau a sistemului de management al motorului.
Sonda lambda binară (senzorul de oxigen)
Sonda lambda are o importanță deosebită pentru reducerea emisiilor poluante de la automobile. Produs de compania Bosch, sonda lambda a fost montată pentru prima data alături de un catalizator pe un automobil Volvo la sfârșitul anilor 1970.
Fig. 3.30 Sonda lambda Volvo 240 [22]
Aplicațiile principale ale sondei lambda sunt în cadrul motoarelor pe benzină. Motivul este acela că motoarele pe benzina funcționează în jurul amestecului stoichiometric în timp ce motoarele diesel funcționează cu amestecuri de tip sărac.
Cea mai des utilizată metodă de a reduce emisiile poluante de pe un automobil este folosirea catalizatorul. Orice sistem ce utilizează un catalizator, are în componență și o sondă lambda. Eficacitatea catalizatorului depinde în întregime de buna funcționare a sondei lambda.
Pentru a asigura arderea completă a combustibilului din motor este nevoie de o anumită cantitate de oxigen, deci și de o anumită cantitate de aer. Pentru a arde complet 1 kg de benzină este nevoie de 14.7 kg de aer. Dacă acest raport se păstrează și în cilindru, putem spune că amestecul este stoichiometric. Notația utilizată în literatura de specialitate, pentru evalua acest raport este litera greceasca lambda (λ). Tipul amestecului aer-combustibil din motor poate fi:
amestec bogat (λ < 1): în acest caz combustibilul este în exces, aerul nefiind suficient pentru o ardere completă;
amestec stoichiometric (λ = 1): în acest caz raportul aer-combustibil este ideal, arderea fiind completă;
amestec sărac (λ > 1): în acest caz aerul este în exces, arderea fiind completă dar cu exces de oxigen;
Tipul amestecului aer-combustibil, influențează în mod direct nivelul emisiilor poluante. În caz unui amestec bogat rezultă emisii bogate în monoxid de carbon și hidrocarburi. În cazul amestecurilor sărace se ajunge la creșterea nivelului de oxizi de azot din gazele de eșapament. În cazul amestecului stoichiometric, emisiile sunt la un nivel mediu pentru fiecare din cele trei componente.
Fig. 3.31 Nivelul emisiilor poluante ale unui automobil în funcție de tipul amestecului aer-combustibil [13]
Eficacitatea catalizatorului este maximă atunci când amestecul aer-combustibil este stoichiometric. Rolul sondei lambda este de a informa sistemul de management al motorului care este starea amestecului aer-combustibil. Pe baza informației primite de la sondă, sistemul va ajusta injecția de combustibil astfel încât amestecul să se mențină în jurul valorii stoichiometrice.
Fig. 3.32 Controlul în bucla închisă al injecției de combustibil [13]
Schema de principiu a controlului amestecului aer-combustibil:
senzorul de masă de aer
catalizatorul primar
catalizatorul secundar
injectoarele de combustibil
sonda lambda amonte
sonda lambda aval
circuitul de alimentare cu combustibil
galeria de admisie
galeria de evacuare
Utilizând informația de la senzorul de masă de aer, calculatorul de injecție ajustează timpul de deschidere al injectoarelor reglând astfel cantitatea de combustibil injectată. Acest mod de control al injecție se numește control în bucla închisă și se bazează pe informația primită de la senzori.
Sonda lambda de după catalizator are rolul de a monitoriza activitatea catalizatorului, pentru a asigura funcționarea acestuia în parametrii normali. Cu alte cuvinte rolul sondei lambda în aval de catalizator este de a diagnostica funcționarea catalizatorului.
Clasificare după principiul de funcționare:
sonde lambda binare
cu zirconiu;
cu titan;
sonde lambda liniare
Sondele lambda binare cu zirconiu sunt primele tipuri de sonde lambda utilizate în industria automobilelor. Principiul de funcționare se bazează pe modul de funcționare al unei celule de combustie (fuel cell). Tensiunea electrică generată de sondă este produsă de diferența de molecule de oxigen din gazele de eșapament și aerul atmosferic.
Fig. 3.33 Secțiune longitudinala printr-o sondă lambda [13]
Sonda lambda se conectează pe galeria de evacuare (1) prin intermediul carcasei cu filet (2). În interiorul tubului de protecție (3) se găsește corpul ceramic din dioxid de zirconiu (4). Acesta este învelit cu doi electrozi (5), unul în contact cu gazele de evacuare iar cel de-al doilea cu aerul atmosferic. De reținut că electrodul care este în contact cu gazele de evacuare este acoperit de un material ceramic poros care permite pătrunderea gazelor și în același timp protejează suprafața electrodului de coroziune. Carcasa de protecție (6) conține orificii (8) care au rolul de a permite aerului atmosferic să intre în contact cu unul dintre electrozi. Arcul (7) asigura contactul între conectorul (9) și electrod.
În funcție de tipul amestecului aer-combustibil, sonda lambda generează o tensiune ce are forma semnalului similara cu o sinusoidă.
Fig. 3.37 Tensiunea generată de o sondă lambda binară [13]
Odată ce senzorul a ajuns la temperatura nominală de funcționare (350 °C), pentru o turație a motorului în jur de 2000 rotații/min, tensiunea generată de sonda lambda trebuie să se situeze în intervalul 0.2 și 0.9 V. Trecerea de la tensiunea de 0.2 V la 0.9 V trebuie să se producă în aproximativ 0.3 secunde. Diferența de tensiune dintre amestecul bogat și amestecul sărac trebuie să se situeze în jurul valorii de 0.45 V. Perioada semnalului trebuie să se încadreze între 0.7 și 1 secunde în cazul în care sonda lambda funcționează în parametrii nominali.
În cazul defectării sondei lambda amestecul aer-combustibil va fi neechilibrat, consumul de combustibil va creste, emisiile de fum se vor intensifica iar performanțele automobilului se vor diminua.
Fig. 3.38 Semnalul sondei lambda în cazul unei funcționări defectuoase [13]
Sistemele care conțin două sonde lambda sunt utilizate pentru a monitoriza eficiența catalizatorului. Implementarea celui de-al doilea senzor s-a făcut datorită normelor OBD-2 care cer ca fiecare componentă care este implicată direct în reducerea emisiilor poluante să fie diagnosticată. În cazul în care catalizatorul funcționează corect tensiunea sondei lambda de după catalizator are amplitudinea mai mică și aceeași frecvență cu tensiunea sondei dinainte de catalizator.
Fig. 3.39 Semnalul sondei lambda după catalizator – funcționare corectă [13]
Diferența de tensiune dintre sonda lambda din amonte și cea din aval ajută la diagnosticarea catalizatorului. Este puțin probabil ca sonda de după catalizator să se defecteze deoarece este supusă unor regimuri termice mult mai scăzute. Din această cauză, sistemul de management al motorului utilizează tensiunea produsă de sonda de după catalizator pentru a compensa abaterile de la parametrii primei sonde lambda.
Pompa de aer secundar
Motoarele cu ardere internă, mai ales în faza de pornire la rece, produc cantități importante de emisii poluante. La motorul pe benzină principalele emisii ale motorului rece sunt monoxidul de carbon și hidrocarburile.
Una din metodele clasice de tratare a emisiilor poluante o reprezintă post arderea termică. Această metodă se realizează prin injectarea de aer proaspăt în galeria de evacuare, cu scopul de a continua procesul de ardere al monoxidului de carbon și al hidrocarburilor.
Fig. 3.40 Pompă de aer secundar Pierburg [23]
La pornirea la rece, un motor pe benzină funcționează cu amestec bogat, uneori ajungându-se și la valori ale coeficientului de exces de aer de 0,6. Din acest motiv, monoxidul de carbon și hidrocarburile sunt în cantități importante în gazele de evacuare.
Sistemul de injecție de aer secundar presupune injectarea de aer atmosferic comprimat în galeria de evacuare, imediat după supape în scopul continuării procesului de ardere.
Fig. 3.41 Schema de principiu a sistemului de injecție de aer secundar [23]
Componente:
motor termic
filtru de aer
pompă de aer secundar
supapă de aer secundar
catalizator pe trei căi
Avantajele utilizării unui astfel de sistem sunt că se reduc emisiile de monoxid de carbon și hidrocarburi, iar pe de alta parte, datorită continuării arderii pe galeria de evacuare și creșterii temperaturii, catalizatorul ajunge mai repede la temperatura de funcționare.
La pornirea la rece a motorului, sistemul de management al motorului comandă releul pentru pornirea pompei de aer. Aceasta aspiră aer atmosferic pe care-l comprimă și-l furnizează supapei. Sistemul de management al motorului comandă și supapa cu solenoid care, prin intermediul vacuumului din galeria de admisie, deschide supapa pentru a permite injectarea aerului comprimat în galeria de evacuare.
Nu toți producătorii auto echipează motoarele pe benzină cu sistem de injecție de aer secundar. Grupul VAG (Volkswagen, Audi, Seat, Skoda) este unul dintre producătorii care utilizează acest sistem pentru tratarea emisiilor poluante.
Senzorul de temperatură a motorului
Senzorul de temperatură monitorizează temperatura lichidului de răcire al motorului, deci implicit temperatura medie a motorului. Informația furnizată de către senzorul de temperatură este utilizată de sistemul de management al motorului în principal pentru controlul turației și pentru controlul îmbogățirii amestecului de combustibil. Perioada dintre pornirea motorului și momentul în care acesta ajunge la temperatura funcționare (aproximativ 90 °C) este critică. Senzorul de temperatură al motorului are o influență semnificativă asupra consumului, orice defect care influențează semnalul transmis către sistemul de management al motorului are ca efect modificarea consumului de combustibil.
Principiul de funcționare al senzorului de temperatură al motorului are la bază un element semiconductor, termistorul. Majoritatea materialelor conductoare au un coeficient pozitiv de temperatură: atunci când temperatura conductorului crește, rezistența electrică crește. La polul opus se află termistorul, care are coeficient negativ de temperatură: la creșterea temperaturii, rezistența electrică a semiconductorului scade.
Fig. 3.45 Caracteristica senzorului de temperatură al motorului [13]
Senzorul de temperatură al motorului este pozitionat în blocul motor cu ajutorul unui filet prevăzut pe carcasa metalică. Contactele electrice transmit semnalul electric către sistemul de management al motorului, legătura fiind realizată prin conectorul din plastic.
Componente:
Conector
Carcasa
Termistor
Fig. 3.46 Elementele componente ale unui senzor de temperatură motor [24]
Funcționarea motorului în cazul unui defect al senzorului de temperatura sunt:
se aprinde martorul MIL (Malfunction Indicator Lamp)
pornirea motorului devine dificilă
crește consumul de combustibil:
emisii de fum datorită îmbogățirii excesive a amestecului aer-combustibil
funcționarea defectuoasă și/sau intermitentă a ventilatorului radiatorului motorului
Senzorul de presiune din rampa de combustibil
Motoarele cu injecție directă utilizează senzori de presiune care măsoară presiunea combustibilului din rampa de combustibil. Cu această informație, sistemul de management al motorului ajustează timpul de deschidere al injectoarelor astfel încât să livreze cantitatea optimă de combustibil pentru ardere.
Fig. 3.47 Sistemul de injecție directă benzină Bosch [11]
Componente:
pompă de înaltă presiune
injector
rampă comună
senzor de presiune combustibil
regulator de presiune
Senzorul de presiune din rampa de combustibil trebuie să măsoare presiunea combustibilului cu o acuratețe mare și într-un timp scurt. Informația trimisă de acest senzor este absolut necesară în procesul de injecție.
Fig. 3.49 Senzor de presiune din rampa de combustibil -componente[11]
Componente:
canal prin care pătrunde combustibilul sub presiune
corp ce conține elementul sensibil și circuitul electronic
conector electric
Funcționarea acestui tip de senzor se bazează pe efectul piezorezistiv: rezistența electrică a unui conductor variază în funcție de deformația mecanică.
Elementul sensibil al senzorului conține mai multe pelicule semiconductoare pe bază de siliciu, conectate în punte Wheatstone. Această arhitectură permite compensarea efectelor temperaturii asupra senzorului.
Senzorul de presiune din rampa de combustibil trebuie alimentat de la o sursă de tensiune de 5V. Conectorul electric conține 3 pini: masă, tensiunea de alimentare și tensiunea de ieșire.
Fig. 3.73 Senzor de presiune rampă combustibil-pini[11]
Pini:
1 – masă
2 – tensiunea de ieșire
3 – tensiunea de alimentare
Tensiunea electrică generată de senzor variază între 0 și 70 mV. Circuitul electronic integrat în senzor transformă acest semnal într-o tensiune ce variază între 0.5 și 4.5 V.
Fig. 3.50 Caracteristica senzorului de presiune rampă combustibil [13]
Controlul presiunii se face prin supapa de presiune aflată pe rampă. În funcție de semnalul primit de la senzorul de presiune din rampa de combustibil, sistemul de management al motorului comandă și controlează supapa de presiune pentru obținerea presiunii necesară în rampă.
Simptomele automobilului în cazul defectării senzorului de presiune din rampa de combustibil:
motorul nu pornește sau pornește greu;
consumul de combustibil crește;
martori aprinși în bordul automobilului (MIL);
Pompa de injecție
Sistemul de alimentare cu combustibil pentru motoarele pe benzină necesită presiuni ridicate ale combustibilului. Presiunea combustibilului pentru motoarele cu injecție variază între 5 și 130 de bari, sistemele de ultimă generație ajungand până la 200 de bari. Cu cât presiunea de injecție este mai mare, cu atât pulverizarea combustibilului este mai buna.
La un sistem de alimentare cu injecție, presiunea este clasificată în două categorii:
Joasă: generată de pompa de alimentare, presiunea combustibilului fiind între 1 și 5 bari
Înaltă: generată de pompa de injecție, presiunea combustibilului variind între 5 și 200 bari
Fig. 3.56 Sistemul de alimentare cu combustibil–schemă de principiu [24]
Componente:
rezervor combustibil
pompa de joasă presiune/alimentare (electrică)
filtru de combustibil
pompa de înaltă presiune/injecție (mecanică)
rampă combustibil
supapă de control
sensor presiune combustibil
injectoare
Fig. 3.57 Sistemul de alimentare cu combustibil Bosch [11]
Componente:
pompă de injecție
rampă combustibil
senzor presiune combustibil
injector
Funcțiile principale ale pompei de injecție sunt:
să comprime combustibilul;
să livreze permanent injectoarelor cantitatea de combustibil cerută de sistemul de management al motorului;
să limiteze presiunea combustibilului la o valoare maximă pentru a evita defecțiunile cauzate de suprapresiune.
Fig. 3.58 Pompă de injecție directă de benzină – secțiune [11]
Componente:
armătură mobilă supapă de control a presiunii
supapă de admisie
cilindru
garnitură de etanșare (o-ring)
piston
suport arc de revenire
arc de revenire
flansă de fixare
supapă de evacuare
racord evacuare (către rampa de combustibil)
supapă de siguranță
Injecția directă a permis îmbunătățirea substanțială a performanțelor de consum ale motoarelor pe benzină. Dezavantajul este costul mai mare al sistemului de înaltă presiune, care se reflectă în costul final al automobilului. Sensibilitatea componentelor de înaltă presiune la calitatea combustibilului este mai pronunțată.
Regulatorul de presiune a combustibilului
La un motor termic cu sistem de injecție cantitatea de combustibil injectată trebuie să depindă exclusiv de timpul de deschidere al injectoarelor. Astfel, la un motor cu injecție, diferența dintre presiunea combustibilului în rampă și presiunea aerului din galeria de admisie trebuie să rămână tot timpul constantă indiferent de regimul de funcționare al motorului.
Fig. 3.51 Rampă de combustibil cu injectoare și regulator de presiune [11]
Pentru a asigura această diferență de presiune, este necesară utilizarea unui dispozitiv care să ajusteze presiunea combustibilului din rampă în funcție de variația presiunii aerului din galeria de admisie. Regulatorul de presiune controlează cantitatea de combustibil ce se întoarce în rezervor astfel încât diferența între presiunea din rampă și cea din galeria de admisie să fie tot timpul constantă.
Fig. 3.52 Regulator de presiune Bosch [11]
În funcție de numărul și poziționarea racordurilor de combustibil și aer, există mai multe tipuri constructive de regulatoare de presiune. De asemenea, acestea pot fi cu retur de combustibil în rezervor sau fără retur, cele mai des utilizate fiind cele cu retur.
Fig. 3.54 Regulator de presiune cu retur-componente [13]
Componente:
canal de intrare combustibil
retur combustibil
racord aer admisie
Regulatorul este de fapt o supapă de control a presiunii, reglată pneumatic. Aceasta conține o diafragmă elastică care împarte corpul regulatorului în două camere: de combustibil și de aer. În interiorul regulatorului se află o supapă și un arc elicoidal. Supapa este ținută pe sediu datorită apăsării arcului. În momentul în care forța datorată presiunii din rampă devine mai mare decât forța de apăsare a arcului, supapa se deschide și combustibilul este refulat către rezervor prin intermediul canalului de retur.
În cazul în care regulatorul de presiune se defectează compensarea presiunii de injecție, în funcție de presiunea aerului din galeria de admisie, nu se va mai face. Din acest motiv cantitatea de combustibil injectată în cilindri nu va mai fi controlată rezultând într-o funcționare anormală a motorului.
Sistemul de recirculare a gazelor de evacuare (EGR)
Oxizii de azot sunt emisii poluante din gazele de evacuare ale unui automobil care au un efect nociv asupra sănătății populației. Atât motoarele pe benzină cât și cele diesel produc oxizi de azot în urma arderii amestecului aer-combustibil. Datorită principiului de funcționare și a caracteristicilor diferite ale combustibililor celor două motoare, nivelul emisiilor de oxizi de azot este diferit.
Motorul diesel se caracterizează prin funcționarea cu un amestec sărac, aerul necesar arderii în totalitate a motorinei fiind în exces. În plus, datorită presiunii înalte din cilindrii, temperatura la care are loc arderea este ridicată. Oxigenul în exces și temperaturile înalte sunt elementele de bază pentru producerea de oxizi de azot. Din acest motiv motorul diesel, comparativ cu motorul pe benzină, produce o cantintate mai mare de oxizi de azot.
Fig. 3.59 Limita emisiilor de oxizi de azot pentru autoturisme prevăzută de legislația europeană [13]
EGR-ul este un sistem care permite reintroducerea gazelor rezultate în urma arderii înapoi în galeria de admisie. Acest procedeu conduce la scăderea semnificativă a emisiilor de oxizi de azot, deoarece reduce cele două elemente care stau la baza producerii acestuia.
Prin reintroducerea gazelor arse în admisie, o parte din oxigenul necesar arderii este înlocuit cu gaze arse ceea ce conduce la scăderea cantității de oxigen în exces.
Fig. 3.60 Sistemul de admisie și evacuare al unui motor termic [11]
Componente:
compresor
turbină
sondă lambda
supapă EGR cu comandă electro-pneumatică
obturator admisie
galerie admsie
galerie evacuare
injector
Recircularea gazelor arse în galeria de admisie nu se face continuu în timpul funcționării motorului. Sistemul de management al motorului comandă supapa EGR pentru a permite gazelor arse să intre în admisie. Pe motoarele supraalimentate controlul debitului de gaze arse se face și cu ajutorul clapetei de accelerație, care prin închidere, scade presiunea în galeria de admisie și facilitează curgerea gazelor dinspre galeria de evacuare.
Sistemul EGR reduce semnificativ cantitatea de oxizi de azot, dar dacă gazele de evacuare sunt introduse excesiv în admisie, poate avea impact asupra creșterii emisiilor de monoxid de carbon, hidrocarburi și particule.
Utilizarea EGR-ului se face la turații mici și medii, domenii în care oxigenul este în exces. În cazul în care se dorește un cuplu ridicat de la motor sistemul EGR este dezactivat.
Fig. 3.61 Domeniul de utilizare al EGR-ului pentru motoarele pe benzină și diesel [23]
Reglarea EGR-ului trebui să se facă astfel încât să se găsească compromisul optim între emisiile poluante și performanțele dinamice ale automobilului.
Odată cu intrarea în vigoare a normelor de poluare Euro 3, EGR-ul a devenit un echipament standard pentru majoritatea automobilelor echipate cu motoare diesel.
Cu cât temperatura gazelor arse introduse în admisie este mai scăzută cu atât densitatea acestora este mai mare. Prin răcirea gazelor de evacuare, înainte de a fi recirculate, se îmbunătățește eficiența sistemului EGR deoarece cantitatea de gaze inerte în admisie crește ce rezultă într-o temperatura la sfârșitul arderii mai mică și cantitatea de oxigen în cilindru mai redusă.
Începând cu normele Euro 4 motoarele diesel cu EGR sunt prevăzute cu radiator de răcire a gazelor de evacuare și supapă de bypass.
Fig. 3.62 Sistemul EGR cu răcire intermediară [25]
Componente:
conductă prin care trece lichidul de răcire al motorului
radiator pentru răcirea gazelor de evacuare
galeria de evacuare
chiulasă
galeria de admisie
supapa EGR cu acționare electrică
unitatea de control electronică
După ce temperatura motorului ajunge la valoarea nominală, pentru a crește eficiența sistemului EGR gazele arse sunt răcite prin intermediul unui radiator. Supapa de bypass este activată atunci când motorul este rece, gazele arse ocolesc radiatorul de răcire și intră direct în motor.
Componenta principală a sistemului EGR este supapa de recirculare a gazelor arse care este numită și supapă EGR.
Primele supape EGR comercializate erau cu acționare electro-pneumatică. Acest tip de acționare avea avantajul izolării părții electronice a EGR-ului de componentele cu temperatură înaltă. Motoarele moderne cu sisteme EGR sunt dotate aproape integral cu supape acționate electric și comandate direct de unitatea de control electronică a motorului.
Fig. 3.63 Supapă EGR acționată electric [26]
Avantajul supapelor EGR cu acționare electrică cu motor electric de curent continuu, comparativ cu cele cu acționare electro-pneumatică, este timpul de răspuns mai mic. Pentru aceste supape deschiderea și închiderea se poate realiza sub 100 de milisecunde. Acest lucru este important deoarece se dorește închiderea completă a supapei EGR când este necesar un cuplul motor maxim.
PROIECTAREA SISTEMULUI DE MONITORIZARE A SENZORILOR DIN CADRUL UNUI AUTOMOBIL
Structura sistemului
După cum a fost prezentat și în capitolul 2. Stadiul actual al cercetărilor și realizărilor privind sistemele de diagnoză, există două tipuri de dispozitive de diagnosticare: de șine stătător, care pur și simplu se conectează la portul OBD al automobilului și poate fi utilizat direct pentru citirea parametrilor motorului și sisteme ce rulează pe diverse sisteme de operare (Windows, Android) și care utilizează un adaptor/decodor pentru interpretarea semnalelor venite de la calculatorul de injecție.
Fig. 4.1 Mod de diagnosticare folosind PC [29]
Fig. 4.2 Diagnosticare folosind un dispozitiv de diagnosticare de sine stătător [3]
După un studiu realizat asupra celor două tipuri de dispozitive s-a ajuns la următoarele concluzii.
În cazul efectuării diagnozei folosind un PC, dezavantajele sunt reprezentate de necesitatea unui PC, de spațiul pe care îl ocupă acesta, punându-se însă și problema duratei bateriei sau a alimentării. Totodată, pentru a diagnostica un automobil folosind PC-ul este nevoie achiziționarea de un software de diagnoză, al cărui preț nu este deloc neglijabil.
Pe de altă parte, dispozitivele de diagnosticare de sine stătătoare prezintă avantaje precum: meniu ușor de utilizat, manevrabilitate ridicată, spațiu mic de depozitare, nu necesită achiziționarea unei licențe, sunt însă dezavantajate de prețul ridicat de achiziționare.
În urma unui chestionar oferit unor potențiali utilizatori al unui echipament de monitorizare a senzorilor în cadrul unui automobil, la întrebarea „Cat de mult v-ar influența următorii factori la achiziționarea unui astfel de sistem?” a reieșit că respondenții au fost influențați cel mai mult de preț, apoi de spațiul ocupat de către sistemul de diagnoză, iar în ultimul rând de design-ul echipamentului.
Fig. 4.3 Influența factorilor în achiziționarea unui sistem de diagnoză: Preț/Design/Spațiul ocupat
Subsistemul hardware
În proiectarea sistemului de monitorizare a senzorilor din cadrul unui automobil s-a ținut cont de influența acestor factori, în ordinea importanței lor pentru potențialii utilizatori, astfel că s-a optat că punctele cheie ale sistemului să fie un preț cât mai accesibil și un gabarit cât mai mic.
Figura 4.4 este o reprezentare a schemei bloc a sistemului de monitorizare a senzorilor din cadrul unui automobil, pentru a înțelege cat mai bine modul de funcționare al acestui sistem.
Fig. 4.4 Diagrama bloc a sistemului
Termenul OBD-2 implică cerințe standardizate atât pe partea de hardware (electronică, conector) cât și pe partea de software (protocol de comunicație, parametrii măsurați). Pe scurt putem spune că standardul OBD-2 se referă la:
conector
protocol de comunicație
mod de funcționare (informații/parametrii înregistrați și puși la dispoziția utilizatorului automobilului)
Conectorul OBD-2
Standardul american SAE J1962, echivalent cu ISO 15031-3, prevede dimensiunile conectorului OBD-2 din vehiculului și pentru echipamentul de diagnosticare. De asemenea locația conectorului din vehicul este standardizată, astfel fiecare automobil ce respecta standardul OBD-2 permite accesul utilizatorului.
Fig. 4.5 Conector OBD-2 vehicul [30]
Conectorul trebuie să fie situat în habitaclu, în zona volanului a tabloului de bord sau a consolei centrale. Accesul trebuie să se facă ușor, de pe scaunul conducătorului auto, locația preferată fiind între coloana de direcție și axa longitudinală a vehiculului.
Fig. 4.6 Dimensiuni conector OBD-2 conform standardului ISO 15031-3 [31]
Accesul la conectorul OBD-2 din vehicul trebuie să se facă fără utilizarea unor instrumente speciale în cazul în care conectorul este acoperit de un capac de protecție. Amplasarea conectorului trebuie să permită montarea și demontarea echipamentului de diagnosticare cu o singură mână, în condiții de siguranță.
Fig. 4.7 Locație conector OBD-2 Renault Twingo
Setul de regulamente SAE și ISO ce definesc OBD-2 prevede o interfață hardware (conector) standard cu 16 pini. Spre deosebire de conectorul OBD-1, care poate fi găsit uneori și în compartimentul motor, conectorul OBD-2 este necesar să fie la o distanță de 0.61 m de volan Numerotarea și definiția pinilor este descrisă in figura 4.8 si in tabelul 4.
Fig. 4.8 Numerotarea pinilor la conectorul OBD-2 [31]
Tabel 4 Definiția pinilor la conectorul OBD-2 [13]
Pinii 1, 3, 8, 9, 11, 12, 13 nu sunt explicit definiți de către regulament și sunt la discreția constructorului de automobile. Utilizarea pinilor se face în funcție de protocolul utilizat. Astfel un automobil care utilizează protocolul CAN pentru OBD-2 va avea în conectorul din vehicul pinii 4 (-), 16 (+), 6 și 14. Pe de altă parte un echipament de diagnosticare (scantool) care nu depinde de un anume protocol de comunicație va avea un conector cu toți pinii, identificarea protocolului făcându-se în mod automat.
Interfața OBD-2 pentru majoritatea automobilelor poate utiliza unul din cinci protocoale de comunicație. Deducerea protocolului utilizat se poate face prin identificarea pinilor de pe conectorul OBD-2 al automobilului:
SAE J1850 PWM: Protocolul este utilizat în principal de către Ford Motor Company, viteza de transfer a datelor fiind de 41.6 kB/sec. Utilizează pinii 2 (+) și 5 (-) pentru transmiterea semnalelor.
SAE J1850 VPW: Este un protocol standard utilizat de către General Motors, viteza de transfer a datelor fiind între 10.4 și 41.6 kB/sec. De asemenea utilizează pinii 2 (+) și 5 (-) pentru transmiterea semnalelor.
ISO 9141-2: Protocol utilizat cu precădere de către producătorii de automobile europeni, asiatici și Chrysler. Viteza de transfer a datelor este de 10.4 kBaud. Pentru comunicare utilizează pinul 7 (K-line) și opțional pinul 15 (L-line).
ISO 14230 (KWP2000): Protocol similar cu ISO 9141-2. Pentru comunicare utilizează pinul 7 (K-line) și opțional pinul 15 (L-line). Viteza de transfer a datelor este cuprinsă între 1.2 și 10.4 Kbaud.
ISO 15765 (CAN): Protocolul CAN este produsul companiei Bosch și este larg utilizat în industria automobilelor. În funcție de viteza de transfer a datelor, pentru OBD-2, se poate utiliza CAN de 250 kBit/sec sau de 500 kBit/sec. Pentru transmiterea datelor se utilizează pinul 6 (CAN high) și 14 (CAN low). Începând cu 2008, toate vehiculele noi vândute în SUA sunt obligate să utilizeze protocolul CAN pentru OBD-2.
Interfața OBD-2
Pentru a citi și a interpreta valorile senzorilor și codurile de eroare provenite de la automobil prin conectorul OBD-2 este nevoie de o interfață OBD-2. Această interfață practic o punte de legătură între port-ul OBD-2 și o interfață serială RS232.
ELM 327 este o interfață de diagnoză universală, multimarcă, compatibilă cu aproape toate mărcile și modelele de mașini din pe benzină din 2000 până în prezent și cele pe motorină din 2004 până în prezent, ce dispun de mufă OBD ÎI. Interfețele ELM327 sunt dezvoltate pe microcontrolere din familia PIC18F2480, produse de cei de la Microchip Technology.
Fiind printre cele mai populare în întreagă lume ,atât datorită prețului accesibil cât și datorită versatilității, această interfață a fost aleasă și pentru acest proiect.
Fig. 4.9 Interfața ELM327 [32]
ELM 327 este echipat cu LED-uri de semnalizare: Power, OBD Tx / Rx, USB Tx / Rx. Aparatul este conceput pentru orice persoana preocupata de diagnoza , precum si pentru atelierele auto mici si mijlocii. Unitatea este proiectata profesional, dar ușor de utilizat. Elm 327 permite citirea si ștergerea DTC (coduri de eroare) si previzualizare parametri motor in timp real.
Fig. 4.10 Pinii microcontrolerului PIC18F2480 [33]
Fig. 4.11 Diagrama bloc ELM327 [33]
Platforma de procesare Arduino UNO V3
Pentru a realiza conexiunea dintre ECU și un sistem de afișare de tip LCD mai este nevoie și de o Platformă Arduino. Această, cu ajutorul unui algoritm, asigură transmiterea și interpretarea datelor primite de la ECU.
Ținând cont de numărul redus de porturi de care este nevoie, 6 porturi pentru conectarea sistemului de afișare LCD, un port de alimentare +5V și un port GND, a fost suficientă utilizarea unei platforme Arduino UNO.
Fig. 4.12 Platforma Arduino UNO V3 [34]
Caracteristici:
Microcontroler: ATmega2560
Tensiune de lucru: 5V
Tensiune de intrare (recomandat): 7-12V
Tensiune de intrare (limite): 6-20V
Pini digitali: 54 (14 au ieșire PWM)
Pini analogici: 16
Curent de iesire: 40 mA
Curent de iesire 3.3V Pin: 50 mA
Capacitate Memorie Flash: 256 KB , 8 KB pentru bootloader
Capacitate Memorie SRAM: 8 KB
Capacitate Memorie EEPROM: 4 KB
Frecvența de ceas: 16 MHz
Sistem de afișare de tip LCD cu butoane
Pentru afișarea informațiilor procesate, dar și pentru interfața cu utilizatorul a fost nevoie de utilizarea unui sistem de afișare de tip LCD având propria sa interfață cu utilizatorul. Din considerente economice, nu s-a ales un LCD color sau unul cu touchscreen, ci s-a ales un LCD 16×2, cu caractere negre, backlight verde și o tastatură format din 5 taste: select, sus, dreapta, jos și stânga, produs de către cei de la LinkSprite.
Fig. 4.13 LCD 16×2 LinkSprite [35]
Fig. 4.14 Schematic LCD [35]
Subsistemul software
Programele de funcționare pentru sistemul de monitorizare a senzorilor
Subsistemul software este format dintr-un program care se încărca pe platforma Arduino, care solicită informații de la automobil, iar apoi decodifică datele primite de la unitatea de control a motorului.
Pentru a implementa acest program, a fost nevoie de cunoașterea unor moduri de comunicare, denumite OBD PIDs (On-board diagnostics Parameter IDs), moduri de comunicare folosite pentru a solicita datele de la unitatea de control a motorului.
Standardul J/1939 definește multe coduri OBD PID, însă unii producătorii definesc, de asemenea, o serie de coduri OBD PID specifice pentru vehiculele lor.
Modul de lucru al modurilor de comunicare OBD PID:
Instrumentul de diagnosticare trimite codul PID către unitatea de control;
Un dispozitiv din cadrul unității de control recunoaște codul PID și raportează valoarea pentru codul respectiv;
Programul software citește răspunsul, îl decodifică, iar apoil îl afișează.
Modurile OBD-2 sunt numerotate de la 1 la 9 și sunt simbolizate 01, 02, …, 09. Fiecare mod are rolul de a extrage anumite informații specifice legate de automobil.
Fig. 4.15 Modurile OBD-2 [13]
Modul 01 (Read real-time data) este utilizat pentru a citi date în timp real privind funcționarea motorului. Viteza cu care se face citirea datelor depinde de protocolul utilizat. De exemplu în cazul protocolului ISO 14230 (KWP 5BAUD) se pot citi până la 9 parametrii pe secundă iar în cazul protocolului ISO 15765 până la 55 parametrii pe secundă. Parametrii pot fi calculați de unitatea de control a motorului sau pot fi măsurați de senzori.
Modul 02 (Freeze frame data) este utilizat pentru a afișa parametrii motorului înregistrați în momentul în care a apărut un defect. Acești parametrii au rolul de a îl ajuta pe cel care efectuează reparația să pună un diagnostic cât mai bun. Numărul de parametrii înregistrați depinde în mare măsură de performanțele unității de control a motorului.
Modul 03 (Read stored fault codes) returnează codul defectelor confirmate ale motorului. Un cod de defect numit DTC (Diagnostic Trouble Codes) este compus din o literă urmată de patru cifre, după cum se poate vedea in tabelul 5.
Tabel 5 Descrierea codurilor de eroare OBD 2 [13]
(1) Powertrain – Categoria Sistemelor de Propulsie include motorul, transmisia precum și sistemele auxiliare asociate trenului de rulare.
Ex. P0135 (O2 Sensor Heater Circuit) – defect al circuitului de încălzire al senzorului de oxigen
(2) Body – În această categorie, Caroserie, sunt incluse sistemele, componentele care sunt prezente în general în habitaclu. Sistemele din această categorie sunt responsabile cu asistența pasagerilor în timpul deplasării, comfortul și siguranța acestora.
Ex. B0028 (Right Side Airbag Deployment Control) – defect al sistemului de control al airbag-ului stânga
(3) Chassis – Categoria Șasiu cuprinde sistemele care sunt în afara habitaclului. În această categorie de obicei sunt incluse sistemul de frânare, sistemul de direcție și suspensia.
Ex. C0051 (Steering Wheel Position Sensor) – defect al senzorului de poziție pentru coloana de direcție
(4) Network – Categoria rețea cuprinde funcțiile care sunt comune calculatoarelor și sistemelor aflate pe un automobil. Un exemplu este rețeaua de comunicare CAN.
Ex. U0121 (Lost Communication With ABS Control Module) – defect ce reprezintă pierderea comunicării cu modulul de control al ABS.
Modul 04 (Erase fault-codes and stored values) este utilizat pentru ștergerea codurilor de eroare precum și a informațiilor asociate (freeze frame).
Modul 05 (Read Lambda sensor self test results) este utilizat pentru raportarea stării de funcționare a senzorului de oxigen (sonda lambda). Parametrii raportați sunt în număr de zece și se referă la:
$01 – nivelul de tensiune la care se face tranziția între amestec bogat și amestec sărac
$02 – nivelul de tensiune la care se face tranziția între amestec sărac și amestec bogat
$03 – tensiunea minimă utilizată pentru calculul timpului de trecere între amestec sărac și bogat
$04 – tensiunea maximă utilizată pentru calculul timpului de trecere între amestec sărac și bogat
$05 – timpul în care se face tranziția de la amestec bogat la amestec sărac
$06 – timpul în care se face tranziția de la amestec sărac la amestec bogat
$07 – tensiunea minimă (utilizată pentru testarea senzorului)
$08 – tensiunea maximă (utilizată pentru testarea senzorului)
$09 – timpul între valorile tensiunilor de tranziție
$0A – perioada semnalului
Fig. 4.16 Tensiunea electrică generată de o sondă lambda [13]
Modul 06 (Read component monitoring self test) este utilizat pentru citirea rezultatelor testelor efectuate asupra diferitelor componente, ce au impact direct asupra emisiilor poluante. Rezultatelor cuprind de obicei o valoare minimă, una maximă și nivelul înregistrat în momentul citirii.
Modul 09 (Request vehicle information) este utilizat pentru a obține informații despre vehicul precum: seria VIN (Vehicle Identification Number) sau codul unității de control a motorului.
Datorită performanței limitate a interfeței OBD-2 ELM327, care poate monitoriza doar o serie de parametrii ai motorului, pentru sistemul prezentat s-au implementat următoarele funcții:
Monitorizare senzori motor
1. Temperatura motorului, în grade Celsius
2. Sarcina motorului, în procente
3. Presiunea absolută în galeria de admisie, în kPa
4. Deschiderea clapetei de accelerație, în procente
5. Monitorizarea senzorului de oxigen de dinaintea catalizatorului, în procente
6. Monitorizarea senzorului de oxigen de după catalizator, în procente
7. Rotațiile motorului, în rotații/minut
8. Viteza, în km/h
9. Avansul aprinderii, în grade
10. Temperatura aerului din admisie, în grade Celsius
11. Distanța parcursă de când s-a aprins lampa MIL, în km
12. Tensiunea bateriei, în volți
Citirea codurilor defectelor confirmate ale motorului
Implementarea algoritmului software
Implementarea algoritmului sofware s-a făcut în mediul de programare Arduino, conceput special pentru plăcile de dezvoltare cu același nume. Limbajul de programare este asemănător cu limbajul C++, având în plus implementate diverse funcții și metode de lucru special concepute.
Funcțiile principale, specifice limbajului de programare Arduino sunt:
void setup() – Secvențele de cod scrise în această buclă, rulează o singură dată, la
începutul programului. Tot în interiorul aceste bucle, se stabilesc intrările/ieșirile
și tipul acestora;
void loop() – Codul scris în interiorul acestei bucle de program este rulat linie cu
linie în mod continuu;
pinMode(nr. pin, tip) – este folosit pentru stabilirea tipului de intrare/ieșire. Nr.
pin reprezintă numărul înscris pe platforma în dreptul pinului, iar tipul poate fi
INPUT sau OUTPUT. Se folosește doar în cazul pinilor I/O sau PWM;
digitalWrite(nr. pin, stare) – este folosit pentru setarea pinilor digitali. Starea
acestora poate fi 1 logic (1 sau HIGH) sau 0 logic (0 sau LOW);
digitalRead(nr. pin) – citește valoarea digitală a intrării (0 sau 1);
analogWrite(nr. pin, valoare) – este folosit pentru comanda PWM a ieșirilor
compatibile. Valoarea este cuprinsă între 0 – 255;
analogRead(nr. pin) – returnează valoarea analogică a intrării (0 – 1023);
Serial.begin(viteză) – este folosit pentru inițializarea comunicațiilor seriale
folosind viteze cuprinse între 300 și 115200 biți/secundă. Cea mai des utilizată
rată de transfer este de 9600 biți/secundă. Arduino Mega are 3 porturi seriale iar
pentru apelarea lor se folosește Serial1,Serial2 sau Serial3;
delay(ms) – oprește rularea programului o perioadă de timp(milisecunde);
int – numere întregi; ocupă 16biți de memorie și au valori cuprinse între 2-15 si 215; unsigned int – numere întregi, pozitive; ocupă 16 biți de memorie și au valori
cuprinse între 0 si 65535;
long – numere întregi; ocupă 32 biți și au valori cuprinse între 2-31 si 231 ;
String – definește și implementează șirurile de caractere;
În afara funcțiilor enumerate mai sus au mai fost utilizate funcțiile specifice acestui limbaj de programare, astfel încât să poată fi calculate valorile senzorilor și afișarea acestora în format zecimal.
Pentru exemplificare, în figura 4.17 este prezentată subrutina de monitorizare a turației motorului, din cadrul rutinei void loop().
Fig. 4.17 Subrutina RPM [50]
În cadrul meniului a fost implementată și o subrutină de personalizare a sistemului, denumită „Setări”, de unde se poate alege lumina de fundal a ecranului LCD.
Fig. 4.18 Subrutina Setări
Pentru un plus la capitolul interfață cu utilizatorul, la pornirea sistemului a fost introdus o rutină pentru generarea unui efect grafic.
Fig. 4.19 Rutină efect grafic [50]
REALIZAREA SISTEMULUI MECATRONIC DE MONITORIZARE A SENZORILOR DIN CADRUL UNUI AUTOMOBIL
Realizarea sistemului
Pentru realizarea sistemului de monitorizarea a senzorilor din cadrul unui automobil a fost nevoie de realizarea următorilor pași:
Înlăturarea sticker-ului de pe carcasa interfeței OBD-2
Fig. 5.1 Înlăturarea sticker-ului de pe carcasa ELM327
Desfacerea și înlăturarea celor 4 șuruburi pentru accesul la circuitul electronic
Fig. 5.2 Înlăturarea suruburilor
Pentru un acces cât mai facil la circuitul electronic, se scoate atât conectorul USB, cât și conectorul care face legătura cu pinii de pe mufa OBD-2. La scoaterea conectorului OBD-2 este indicată însemnarea acestuia, deoarece la remontaj este foarte importantă poziționarea acestuia.
Fig. 5.3 Scoaterea mufelor OBD-2 și USB
Pentru transmisia de date este nevoie de lipirea a două fire RX, respectiv TX, iar pentru alimentare este necesară lipirea a două fire: unul pentru alimentarea cu +5V a platformei Arduino și un fir pentru masă. Toate aceste fire vor avea pini pentru o conectare mai sigură și în același timp mai rapidă.
Fig. 5.4 Lipirea firelor RX,TX,+5V,GND
Pentru comanda sistemului de afișare de tip LCD, este nevoie de conectarea acestuia la platforma Arduino. Această conexiune se face prin lipirea diuntre pinii sistemului de afișare și a pinilor de pe placa Arduino.
Fig. 5.5 Lipirea pinilor sistemului de afisare LCD
Pentru protecția circuitului electronic al interfeței OBD-2 ELM327 este indicat remontajul acestuia în carcasă. Ultimul pas este conectarea firelor de alimentare (+5V, GND) și a firelor care asigură comunicația serială (RX, TX) la ansamblul Arduino-LCD.
Fig. 5.6 Conectarea firelor +5V, GND, RX si TX
Testarea sistemului
Testarea sistemului de monitorizare a senzorilor din cadrul unui automobil s-a făcut pe un automobil marca Renault Twingo, an de fabricație 2008, echipat cu conector OBD-2.
Testarea a constat în verificarea celor 2 moduri de funcționare: citirea valorilor senzorilor din cadrul motorului și efectuarea unei diagnoze pentru codurile de eroare confirmate ale motorului.
Citirea valorilor senzorilor
Pentru acest mod, sistemul are disponibile următoarele funcții:
Temperatura motorului
Sarcina motorului
Presiunea absolută în galeria de admisie
Deschiderea clapetei de accelerație
Corecția sondei lambda aflată înaintea catalizatorului
Corecția sondei lambda aflată după catalizator
Rotația motorului
Viteza de deplasare
Avansul sistemului de aprindere
Temperatura aerului din galeria de admisie
Distanța parcursă de când s-a aprins lampa de avertizare MIL
Tensiune baterie
Fig. 5.6 Valorile senzorilor afișate pe LCD în cadrul unui test
Pentru a putea da un verdict în cazul preciziei valorilor obținute , s-a realizat o monitorizare a senzorilor cu ajutorul unui PC și a unui software specializat: EOBD-Facile. După cum se poate vedea în cele două figuri (Fig. 5.6 și Fig. 5.7), valorile sunt apropiate, discrepanța fiind datorată faptului că valorile oscilează foarte rapid în anumite intervale.
Fig. 5.7 Valorile senzorilor în software-ul EOBD-Facile
Efectuarea diagnozei pentru codurile de eroare
Pentru modul de diagnoză s-a folosit același mod de lucru, iar rezultatele au fost favorabile, după cum se poate observa în figurile Fig. 5.8 și Fig. 5.9.
Fig. 5.8 Modul “Diagnoză” al sistemului realizat
Fig. 5.9 Codurile de eroare în software-ul EOBD-Facile
Calculul costului de realizare al sistemului
Pentru realizarea sistemului mecatronic de monitorizare a senzorilor din cadrul unui automobil au fost achiziționate următoarele componente:
Plaftorma Arduino UNO v3, preț 105 RON
Sistem de afișare LCD cu tastatură, preț 99 RON
Interfață OBD-2 ELM327, preț 80 RON
Kit conectori și fire conexiune, preț 16 RON
Cost total: 105 + 99 + 80 + 16= 300 RON
MĂSURI DE SIGURANȚĂ
Pentru a preveni rănirea personală sau deteriorarea vehiculului și/sau a sistemului de monitorizare a senzorilor, trebuie respectate următoarele măsuri de siguranță de fiecare dată când se lucrează la un vehicul:
Efectuați întotdeauna testarea automobilului într-un mediu sigur;
Păstrați hainele, părul, mâinile, uneltele, etc. departe de orice piese ale motorului fierbinți sau aflate în mișcare;
Testarea automobilului se face într-o zonă de lucru foarte bine ventilată: gazele de eșapament sunt otrăvitoare;
Blocați roțile care sunt antrenate și nu lăsati niciodată autovehiculul nesupravegheat în timp ce efectuați o testare;
În jurul componentelor electrice, cabluri, bujii lucrați cu o prudență deosebită: aceste componente creează tensiuni periculoase atunci când motorul este pornit;
Asigurați-vă că vehiculul este scos din viteză (neutral pentru automobilele cu cutie de viteze manuală și parking mode pentru automobilele cu cutie de viteze automată), iar frâna de mână este cuplată;
Păstrați un extinctor adecvat în apropiere;
Nu conectați și nu deconectați echipamentul de testare în timp ce contactul este cuplat sau când motorul funcționează;
Instrumentul de scanare trebuie păstrat uscat, lipsit de ulei, apă sau grăsime.
CONCLUZII FINALE, CONTRIBUȚII, PERSPECTIVE
Lucrarea de față, intitulată Proiectarea și realizarea unui sistem mecatronic de monitorizare a senzorilor din cadrul unui automobil, și-a propus realizarea unui sistem de monitorizare a senzorilor care se găsesc în motorul unui automobil, dar și de citire și afișare a eventualelor erori stocate în sistemul de management al motorului.
După cum s-a arătat și în subcapitolul 5.2 Testarea sistemului, obiectivele propuse au fost atinse, iar în continure vor fi prezentate concluziile desprinse în urma realizării acestui proiect.
Pentru început, avantajele sistemului mecatronic de monitorizare a senzorilor din cadrul unui automobil, dezvoltat în cadrul proiectului de diplomă sunt:
Cost de producție foarte mic, în comparație cu celelalte soluții existente pe piață la nivel național și internațional;
Spațiul de depozitare pe care îl necesită sistemul este unul mult mai mic față de alte sisteme de același tip;
Ansamblul de sisteme hardware și software este unul simplu, atât de realizat, cât și de utilizat;
Integrarea plăcii de dezvoltare cu microcontroller Arduino în construcția sistemului, pentru ca acesta să poată fi reconfigurabil de o persoană cu cunoștințe medii de programare;
Deoarece sistemul este alimentat de la sursa de curent a automobilului pe care îl testează, nu este nevoie de o altă sursă de curent externă.
În urma parcurgerii proiectului de diplomă s-a constatat că există unele îmbunătățiri ce trebuies aduse sistemului, pentru ca acesta să poată concura direct cu un sistem asemănător de pe piața internațională. În timpul utilizării sistemului s-au constatat mici impedimente din punct de vedere al componentelor hardware, lipsa unor cunoștințe specifice pentru realizarea anumitor subrutine în cadrul sistemului software, dar și probleme ergonomice precum lipsa unei carcase a întregului sistem sau utilizarea unor echipamente mai puțin performanțe în realizarea sistemului.
În concluzie, realizarea unui sistem de monitorizare a senzorilor din cadrul unui automobil care să se poată preta unui atelier auto profesional, este dificil de realizat cu un buget foarte redus. Pentru a ține pasul cu tehnologia este necesară monitorizarea a cât mai multor senzori în același timp, deci este nevoie de utilizarea unei interfețe OBD-2 mult mai performantă. În zilele noastre utilizatorii țin din ce în ce mai mult la partea de design și de ergonomie, așadar utilizarea unui sistem de afișare cu ecran tactil este recomandată. Odată cu creșterea costului de producție, se poate ajunge la imbunatarirea calităților din punct de vedere al performanțelor, al design-ului și al ergonomiei.
Contribuțiile personale aduse în cadrul acestui proiect sunt:
Realizarea unei analize a sistemelor similare la nivel național și internațional;
Studiul considerațiilor teoretice privind elementele senzoriale și actuatorii din cadrul motorului unui automobil;
Realizarea unui studiu de piață pentru a cunoaște cât mai bine nevoile potențialilor clienți ai sistemului;
Proiectarea și realizarea practică a sistemului;
Adaptarea algoritmului software pentru placa Arduino, astfel încât acesta să
corespundă cerințelor proiectulu;
Testarea sistemului.
Prezentul proiect de diplomă reprezintă un punct de plecare pentru dezvoltarea unui sistem de monitorizare a senzorilor din cadrul unui automobil, iar ca perspective în această direcție, se pot considera următoarele:
Utilizarea unei interfețe OBD-2 mult mai performantă, care să poată permite monitorizarea mai multor senzori;
Înlocuirea sistemului de afișare LCD cu un sistem de afișare de tip ecran tactil, care să poată permite vizualizarea mai multor parametrii și vizualizarea de grafice;
Optimizarea algoritmului software;
Utilizarea unui modul Wi-Fi pentru a primi informațiile direct pe telefonul mobil/tabletă;
Implementarea unui sistem care permite memorarea datelor pe un suport extern (exemplu: card SD);
Realizarea unei carcase a întregului sistem.
LISTA SIMBOLURILOR FOLOSITE
ABS-Anti-lock Braking System-sistem de frânare ce previne blocarea roților;
CAN-Controller Area Network-protocol de comunicație dezvoltat de Bosch;
CARB-California Air Resource Board-organizație care are ca obiect de activitate și reglemetarea nivelelor de emisii poluante ale automobilelor pentru statul California din SUA;
ECU-Electronic Control Unit- unitate electronică de control;
ECM-Engine Control Module-modulul de control al motorului;
EPROM-Erasable Programmable Read Only Memory-memorie ROM programabilă și anulabilă;
EEPROM-Electrically Erasable Programmable Read Only Memorie-memorie ROM programabilă și anulabilă electric;
EGR-Exhaust Gas Recirculation-sistem de recirculare a gazelor de evacuare;
EOBD-European On Board Diagnosis-varianta europeană a OBD;
EPA-Environmental Protection Agency-agenție din SUA ce are ca obiect de activitate protecția mediului;
ESP-Electronic Stability Program-sistem electronic de control a stabilității automobilului;
EVAP-Evaporative Emission Control System-sistem de captare și recirculare a vaporilor de benzină;
MAF-Mass Air Flow Sensor- denumirea senzorului de masă aer admisie
MAP-Manifold Absolute Pressure-denumirea senzorului de presiune aer admisie
MIL-Malfunction Indicator Lamp-martor luminos aflat la bordul automobilelor ce semnalizează un defect al componentelor ce au impact direct sau indirect asupra emisiilor poluante;
OBD-On Board Diagnosis-setul de regulamente ce definesc diagnoza la bordul automobilelor;
PCM-Powertrain Controle Module-modulul de control al grupului moto-propulsor (calculator care controlează motorul termic și cutia de viteze automată);
PWM-Pulse Width Modulation-tehnică de control a unui echipament electronic analogic prin utilizarea unei tensiuni de amplitudine constantă, forma de unda fiind dreptunghiulară și frecvență variabilă;
RAM-Random Access Memory-memorie cu acces aleator
SAE-Society of Automotive Engineers-societatea inginerilor de automobile
BIBLIOGRAFIE
[1] Documentație service Volkswagen-Audi Self-Study Programme 230: Motor Vehicle Exhaust Emissions, accesat în perioada iulie-octombrie 2015 în cadrul institutiei SC Intercar SRL;
[2] Documentație service Volkswagen Self-Study Programme 175: On-Board Diagnosis System, accesat în perioada iulie-octombrie 2015 în cadrul institutiei SC Intercar SRL;
[3] Scant Tool Center, http://scantoolcenter.com/obd2-basic/, accesat in 18.12.2015;
[4] Documentație service Volkswagen-Audi Self-Study Programme 295: Diagnosis with VAS 5051, VAS 5052 and VAS 5053, accesat în perioada iulie-octombrie 2015 în cadrul institutiei SC Intercar SRL;
[5] Bosch Diagnostics, http://www.boschdiagnostics.com/pro/, accesat în 14.11.2015
[6] Autologic, https://autologic.com/products/assistplus, accesat în 14.11.2015;
[7] Innova Electronics, http://www.innova.com/Product/, accesat în 05.12.2016;
[8] Autel, http://www.auteltech.com/autelcms/, accesat în 05.12.2016;
[9] Actron, https://actron.com/products/field_category/diagnostics-53, accesat în 05.12.2016;
[10] Documentație service Volkswagen Self-Study Programme 315: European On-Board Diagnosis, accesat în perioada iulie-octombrie 2015 în cadrul institutiei SC Intercar SRL;
[11] Bosch Auto Parts, https://www.boschautoparts.com/en/auto/, accesat în 21.01.2016;
[12] Continental Automotive, http://www.continental-automotive.com/www/automotive_de_en, accesat în 21.01.2016;
[13] E-automobile, http://e-automobile.ro/categorie-electronica.html, accesat în 21.01.2016;
[14] Documentație service Volkswagen Self-Study Programme 826803: 2.0 Liter TDI Common Rail, accesat în perioada iulie-octombrie 2015 în cadrul institutiei SC Intercar SRL;
[15] . E.S. Mausner, “Drive-By-Wire systems for commercial vehicles and passenger cars – present status and future perspective”, SAE Technical Paper No. 890478, 1989;
[16] Documentație service Volkswagen Self-Study Programme 210: Electronic Power Control, accesat în perioada iulie-octombrie 2015 în cadrul institutiei SC Intercar SRL;
[17] Documentație service Audi Self-Study Programme 941003: Engine Management Systems, accesat în perioada iulie-octombrie 2015 în cadrul institutiei SC Intercar SRL;
[18] Delphi Automotive, http://www.delphi.com/manufacturers/auto, accesat în 05.02.2016;
[19] Documentație service Volkswagen Self-Study Programme 231: Euro On-Board Diagnostic System, accesat în perioada iulie-octombrie 2015 în cadrul institutiei SC Intercar SRL;
[20] Autotehnic, https://autotehnic.wordpress.com/category/glosar-tehnic/,accesat în 06.02.2016;
[21] Pelican Parts, http://www.pelicanparts.com/BMW/index-SC.htm, accesat în 06.02.2016
[22] Wikipedia, https://en.wikipedia.org/wiki/Oxygen_sensor, accesat în 13.02.2016;
[23] MS Motorservice, www.ms-motorservice.com/en/products-catalogues/pierburg-products/, accesat în 14.02.2016;
[24] Catalog ELWE – Sensor And Actuator Technology In Vehicles – Experimental manual;
[25] Hitachi Automotive, http://www.hitachi.com/businesses/category/automotive/index.html, accesat în 25.02.2016;
[26] Mahle Group, http://www.mahle.com/mahle/en/products-and-services/passenger-cars/, accesat în 25.02.2016;
[27] Valeo, http://www.valeo.com/en/our-activities/powertrain-systems/, accesat în 25.02.2016;
[28] Wikipedia, https://en.wikipedia.org/wiki/Exhaust_gas_recirculation, accesat în 25.02.2016;
[29] Pilot Power Tuning, http://www.pilotauto.ro/tuning-magazin/category/articole-tehnice/, accesat în 25.02.2016;
[30] Car Plugs, http://www.carplugs.com/products.html, accesat în 27.02.2016;
[31] SAE Institute, http://bucharest.sae.edu/en-gb/home/, accesat în 27.02.2016;
[32] Wikipedia, https://en.wikipedia.org/wiki/ELM327, accesat în 27.02.2016;
[33] Documentație ELM Electronics: OBD to RS232 Interpreter;
[34] Robofun, https://www.robofun.ro/arduino/arduino_uno_v3, accesat în 20.03.2016;
[35] Linksprite, http://store.linksprite.com/linksprite-16×2-lcd-keypad-shield-for-arduino-v2/, accesat în 20.03.2016;
[36] C. Bell, “Beginning sensor networks with Arduino and Raspberry Pi”, Apress, 2013;
[37] “Arduino pentru Incepatori”, robofun.ro;
[38] Vasiu, D., Olteanu, C., Roșca, I., Iordache. P: Senzori și traductoare, Repografia Universității „Transilvania” Brașov, 1997;
[39] Sparkfun, https://www.sparkfun.com/tutorials/215, accesat in 09.04.2016;
[40] Dennis A., Garner C., Taylor D., „The Effect of EGR on Diesel Engine Wear”, SAE 1999-01-0839, 1999;
[41] Jack Erjavec, “Automotive technology: a systems approach”, Cengage Learning, 2005;
[42] B. Hollembeak, “Automotive fuels & emissions”, Cengage Learning, 2004;
[43] M.Luculescu, „Medii de programare pentru microcontrollere:indrumar de laborator”, Editura Universitatii „Transilvania” din Brasov, 2015;
[44] U. Seiffert, P. Walzer, „Automobile Technology of the Future”, VDI Verlag, 1989;
[45] Gilles, Tim, “Automotive Service: Inspection, Maintenance, Repair”, Cengage Learning, 2011;
[46] N. Turea, W. Thierheimer, „Diagnosticarea sistemelor autovehiculelor:suport de curs”, Editura Universitatii „Transilvania” din Brasov, 2007;
[47] N. Turea, C. Salajan, V. Enache, W. Tirheimer, M. Stanescu, A. Cojocaru, S. Bordi, „Echipamente si tehnici de diagnosticare a automobilelor : vol. 1 : Principii generale si diagnosticarea motoarelor”, Editura Universitatii „Transilvania” din Brasov, 2004;
[48] N. Turea, C. Salajan, V. Enache, W. Tirheimer, M. Stanescu, A. Cojocaru, S. Bordi, „Echipamente si tehnici de diagnosticare a automobilelor : vol. 2 : Diagnosticarea sistemelor si instalatiilor automobilelor”, Editura Universitatii „Transilvania” din Brasov, 2005;
[49] N. Turea, N. Ispas, V. Enache, M. Nastasoiu, M. Stanescu, „Diagnosticarea motoarelor : suport de curs”, Editura Universitatii „Transilvania” din Brasov, 2006;
[50] Martin Viljoen, http://techtinker.co.za, accesat în 09.04.2016
ANEXA NR. 1
#include <LiquidCrystal.h>
int CmdCount=1;
byte inData;
char inChar;
String BuildINString="";
String DisplayString="";
long DisplayValue;
long DisplayValue2;
long DisplayValue3;
long DisplayValue4;
String SentMessage="";
int ByteCount=0;
long A;
long B;
long C;
long D;
int WorkingVal;
String WorkingString="";
int RefreshCounter=0;
int RefreshCounterMax=50;
int RESETMenuName=0;
int x;
int MenuID=0;
int UpDownMenu=0;
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
void setup()
{ pinMode(10,OUTPUT);
lcd.begin(16, 2);
lcd.setCursor(0, 0);
Bootup();
lcd.setCursor(0, 0);
lcd.print("Se conecteaza…… ");
lcd.setCursor(0, 1);
lcd.print(" ");
Serial.begin(38400);
delay(2500);
}
void loop()
{
RefreshCounter++;
x = analogRead (0);
lcd.setCursor(10,1);
if (x > 600 and x < 620){lcd.print ("Select ");}
if (x > 840 and x < 860){if (MenuID>0){MenuID–;}DisplayString="Se incarca………..";delay(250);} //but. stanga
if (x > 890 and x < 910){if (UpDownMenu<3){UpDownMenu++;}delay(250);RESETMenuName=0;} //but. jos
if (x > 920 and x < 940){if (UpDownMenu>0){UpDownMenu–;}delay(250);RESETMenuName=0;} //but. sus
if (x > 800 and x < 820) {if (MenuID<13){MenuID++;}DisplayString="Se incarca………..";delay(250);} //but. dreapta
if (UpDownMenu==0)
{
if(RESETMenuName==0){lcd.setCursor(0, 0);lcd.print("Valori senzori ");lcd.setCursor(0, 1);lcd.print(" ");delay(1000);RESETMenuName=1;}
if (MenuID==0){lcd.setCursor(0, 0);lcd.print("01 Temp. motor ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 05";Serial.println("01 05");delay(50);ReadData();}}
if (MenuID==1){lcd.setCursor(0, 0);lcd.print("02 Sarcina motor ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 04";Serial.println("01 04");delay(50);ReadData();}}
if (MenuID==2){lcd.setCursor(0, 0);lcd.print("03 Presiune admisie ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 0B";Serial.println("01 0B");delay(50);ReadData();}}
if (MenuID==3){lcd.setCursor(0, 0);lcd.print("04 Clapeta acceleratie % ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 11";Serial.println("01 11");delay(50);ReadData();}}
if (MenuID==4){lcd.setCursor(0, 0);lcd.print("05 Oxygen sens1 volt ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 14";Serial.println("01 14");delay(50);ReadData();}}
if (MenuID==5){lcd.setCursor(0, 0);lcd.print("06 Oxygen sens2 volt ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 15";Serial.println("01 15");delay(50);ReadData();}}
if (MenuID==6){lcd.setCursor(0, 0);lcd.print("07 RPM ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 0C";Serial.println("01 0C");delay(50);ReadData();}}
if (MenuID==7){lcd.setCursor(0, 0);lcd.print("08 Viteza ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 0D";Serial.println("01 0D");delay(50);ReadData();}}
if (MenuID==8){lcd.setCursor(0, 0);lcd.print("09 Avans aprindere ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 0E";Serial.println("01 0E");delay(50);ReadData();}}
if (MenuID==9){lcd.setCursor(0, 0);lcd.print("10 Temp. aer admisie ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 0F";Serial.println("01 0F");delay(50);ReadData();}}
if (MenuID==10){lcd.setCursor(0, 0);lcd.print("11 Distanta MIL ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "01 21";Serial.println("01 21");delay(50);ReadData();}}
if (MenuID==11){lcd.setCursor(0, 0);lcd.print("12 Baterie ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "AT RV";Serial.println("AT RV");delay(50);ReadData();}}
}
if (UpDownMenu==1)
{
if(RESETMenuName==0){lcd.setCursor(0, 0);lcd.print("Diagnoza ");lcd.setCursor(0, 1);lcd.print(" ");delay(1000);}
if (x > 600 and x < 620){lcd.setCursor(0, 0);lcd.print("Start……….. ");RESETMenuName=1;}
if (MenuID==0){lcd.setCursor(0, 0);lcd.print("Eroare ");lcd.setCursor(0, 1);lcd.print(DisplayString);if (RefreshCounter==RefreshCounterMax){SentMessage = "03 00";Serial.println("03 00");delay(50);ReadData();}}
}
if (UpDownMenu==2)
{
if(RESETMenuName==0){lcd.setCursor(0, 0);lcd.print("Setari ");lcd.setCursor(0, 1);lcd.print(" ");delay(1000);RESETMenuName=1;}
if (MenuID==0){lcd.setCursor(0, 0);lcd.print("Aprins "); if (x > 600 and x < 620){ digitalWrite(10,HIGH);}}
if (MenuID==1){lcd.setCursor(0, 0);lcd.print("Stins "); if (x > 600 and x < 620){ digitalWrite(10,LOW);}}
}
if (RefreshCounter>=RefreshCounterMax){RefreshCounter=0;}
delay(1);
}
void ReadData()
{
BuildINString="";
while(Serial.available() > 0)
{
inData=0;
inChar=0;
inData = Serial.read();
inChar=char(inData);
BuildINString = BuildINString + inChar;
}
BuildINString.replace(SentMessage,"");
BuildINString.replace(">","");
BuildINString.replace("STOPPED","");
BuildINString.replace("SEARCHING","");
BuildINString.replace("NO DATA","");
BuildINString.replace("?","");
BuildINString.replace(",","");
//RPM
if (SentMessage=="01 0C")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
WorkingString = BuildINString.substring(10,12);
B = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = ((A * 256)+B)/4;
DisplayString = String(DisplayValue) + " rpm ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//Baterie
if (SentMessage=="AT RV")
{
WorkingString = BuildINString.substring(0,2);
A = strtoul(WorkingString.c_str(),NULL,16);
WorkingString = BuildINString.substring(3,4);
B= strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = A-6;
DisplayValue2 = B;
DisplayString = String(DisplayValue)+ "." +(DisplayValue2) + " V ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//DIAGNOZA
if (SentMessage=="03 00")
{
WorkingString = BuildINString.substring(9,10);
A = strtoul(WorkingString.c_str(),NULL,16);
WorkingString = BuildINString.substring(10,11);
B= strtoul(WorkingString.c_str(),NULL,16);
WorkingString = BuildINString.substring(12,13);
C= strtoul(WorkingString.c_str(),NULL,16);
WorkingString = BuildINString.substring(13,14);
D= strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = A;
DisplayValue2 = B;
DisplayValue3 = C;
DisplayValue4 = D;
DisplayString = "P " + String(DisplayValue, HEX) + String(DisplayValue2, HEX) + String(DisplayValue3, HEX) + String(DisplayValue4, HEX) + " " ;
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//Viteza
if (SentMessage=="01 0D")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = A;
DisplayString = String(DisplayValue) +(DisplayValue2) + " ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//Temp motor
if (SentMessage=="01 05")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = A – 40;
DisplayString = String(DisplayValue) + " C ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//sarcina motor
if (SentMessage=="01 04")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = A*100/255;
DisplayString = String(DisplayValue) + " % ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//avans
if (SentMessage=="01 0E")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = A/2 – 64;
DisplayString = String(DisplayValue) + " grade ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//dist MIL
if (SentMessage=="01 21")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
WorkingString = BuildINString.substring(10,12);
B = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = (A*256)+B;
DisplayString = String(DisplayValue) + " km ";
lcd.setCursor(0, 1);
lcd.print(DisplayString); }
//clapeta
if (SentMessage=="01 11")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = A *100/255;
DisplayString = String(DisplayValue) + " % ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//temp aer admisie
if (SentMessage=="01 0F")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = A-40;
DisplayString = String(DisplayValue) + " C ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//presiune admisie
if (SentMessage=="01 0B")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = A;
DisplayString = String(DisplayValue) + " kPa ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//Oxygen sensor 1
if (SentMessage=="01 14")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
WorkingString = BuildINString.substring(10,12);
B = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue = (B-128) * 100/128;
DisplayString = String(DisplayValue) + " % ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
//Oxygen sensor 2
if (SentMessage=="01 15")
{
WorkingString = BuildINString.substring(7,9);
A = strtoul(WorkingString.c_str(),NULL,16);
WorkingString = BuildINString.substring(10,12);
B = strtoul(WorkingString.c_str(),NULL,16);
DisplayValue =(B-128) * 100/128;
DisplayString = String(DisplayValue) + " % ";
lcd.setCursor(0, 1);
lcd.print(DisplayString);
}
}
void Bootup()
{
lcd.print(" CARDUINO");
for(int cnt=0; cnt<255; cnt++)
{ analogWrite(10,cnt);
delay(15);
}
digitalWrite(10,HIGH);
for (int i=0; i <= 1; i++)
{
for (int j=1; j <= 4; j++)// -/|\-
{
if(j==1){lcd.setCursor(0, 1);lcd.print ("-");delay(200);}
if(j==2){lcd.setCursor(0, 1);lcd.print ("/");delay(200);}
if(j==3){lcd.setCursor(0, 1);lcd.print ("|");delay(200);}
if(j==4){lcd.setCursor(0, 1);lcd.print ("\\");delay(200);}
}
}
delay(2000);
}
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: În figura următoare sunt arătate, cu aproximație, compoziția gazelor de eșapament ale motoarelor diesel și pe benzină. [306951] (ID: 306951)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
