Controlul motorului termic cu căldură reziduală dezvoltat de Echogen Power Systems utilizând software şi hardware National Instruments
Autor: Darryn R. La Zar – Wineman Technology Inc.
Domeniu: Industria energetică
Produse
Modulul Real-Time, Biblioteca Modbus pentru LabVIEW, LabVIEW, Internet Toolkit, cRIO-9114, Modulul FPGA, NI 9476, NI 9219, NI 9265, NI 9203, NI 9213, NI 9144, NI 9426, PID şi Fuzzy Logic, NI 9208
Provocarea
Dezvoltarea unei aplicaţii Real-Time pentru controlul şi monitorizarea unui motor termic Echogen Power Systems şi o aplicaţie în sistemul de operare Windows pentru supravegherea locală şi de la distanţă a stării de funcţionare şi a datelor operaţionale ale întregului sistem.
Soluţia
Dezvoltarea unei soluţii personalizate cu ajutorul NI LabVIEW pentru a controla motorul termic cu căldură reziduală EPS250TDEMO de la Echogen Power Systems, prin utilizarea platformei NI CompactRIO pentru a asigura un control deterministic al sistemului cu bucle multiple de control de tip PID şi prin configurarea sistemului pentru a colecta date de la o varietate de intrări de senzori şi numeroase I/O analogice şi digitale.
„Am optat pentru controlerul în timp real CompactRIO pe fondul nevoii de sincronizare avansată a intrărilor şi ieşirilor.”
Motorul termic EPS250TDEMO cu căldură reziduală, un sistem proprietar dezvoltat de Echogen Power Systems, poate recupera energia termică provenită de la o varietate de surse şi vizează în principal valorificarea căldurii reziduale industriale. Motorul termic EPS250TDEMO utilizează dioxid de carbon în stare supercritică, sau în combinaţie cu alte fluide de lucru, pentru crearea unui ciclu generator de energie. Această tehnologie este mult mai eficientă, deoarece generează putere la punctul de utilizare. Un alt avantaj al sistemului este că prin lipsa transferului de energie pe distanţe lungi, se elimină pierderile de transmisie şi se reduc emisiile de carbon. Wineman Technology Inc. a ajutat la dezvoltarea controlerului şi a sistemului de monitorizare a stării de funcţionare a unităţii, pentru motorul termic EPS250TDEMO de 250 kW putere netă nominală (Figura 2). Unitatea iniţială urmează să devină operaţională la unul dintre principalii furnizori de utilităţi la nivel naţional din Statele Unite în 2010.
Motorul termic EPS250TDEMO în curs de brevetare, este compus din cinci elemente principale: schimbătoare de căldura, fluide de lucru, pompe, un dispozitiv de expansiune şi un generator, care îi permit să producă energie în mod exclusiv, de la o varietate de surse de căldură. Fluidul de lucru este pompat în jurul unei bucle închise prin intermediul unei pompe primare de circuit. Un schimbător de căldură adaugă energie termică la fluidul de lucru înainte ca lichidul să fie introdus în dispozitivul de expansiune, care transformă energia din fluidul de lucru în energie electrică prin intermediul generatorului. Schimbătoarele de căldură suplimentare condensează fluidul înainte de a-l returna în pompa de circuit şi reciclează căldura în interiorul sistemului.
Am optat pentru controlerul în timp real CompactRIO pe fondul nevoii de sincronizare avansate I/O. EPS250TDEMO este o unitate concepută în primul rând pentru testare; printre cerinţele sistemului se numără achiziţia de date de la peste 75 de senzori şi controlul a peste 40 de dispozitive via Modbus, prin semnale analogice şi digitale. În plus, am folosit mai multe PID-uri pentru a controla sistemul pe baza unor specificaţii diverse, inclusiv presiunea circuitului, căldura fluidului, masa sistemului, debitul şi sarcina turbinei în diferite locaţii în cadrul circuitului.
Cerinţele suplimentare includ o monitorizare a mai mult de 50 de semnale digitale de feedback; monitorizarea, înregistrarea şi acţionarea a 90 de alarme de proces; colectare de date pentru mai mult de 150 de semnale; arhivare de date; comandă manuală; comunicare Modbus la o unitate de transmisie cu frecvenţă variabilă (variable frequency drive-VFD); senzorul de măsurare al debitului masic şi controlul sarcinii turbinei; şi o execuţie de calcule în timp real a mai mult de 25 de parametri de proces.
Aplicaţii LabVIEW pentru sistemul de operare Windows
Noi am proiectat sistemul ca să funcţioneze de la distanţă, dar am conceput o interfaţă om-maşina (HMI) pentru controlul şi monitorizarea locală. Am dezvoltat o aplicaţie Windows pentru a permite unui operator să interacţioneze cu controlerul motorului termic de la un PC, printr-o conectare la reţea. Cu ajutorul interfeţei HMI specifică acestei aplicaţii, utilizatorul poate vizualiza starea curentă şi semnalele achiziţionate de la controler şi să seteze variabile de intrare definite de utilizator. Interfaţa HMI permite controlul manual al motorului termic (Figura 3).
De asemenea, am dezvoltat o a doua aplicaţie Windows pentru a permite vizualizarea de la distanţă a datelor colectate de la controlerul în timp real. Funcţia HMI în cazul acestei aplicaţii constă într-o interfaţă multi-tab care grupează în mod corespunzător specificaţiile în funcţie de canalele şi controalele similare. Am implementat o serie de variabile partajate disponibile în reţea pentru procesul de comunicare a datelor (schimb de date) şi o comunicare bazată pe mesaje (comenzi de trimitere) prin conexiune Ethernet, între controler şi PC-urile Windows care rulează aplicaţiile personalizate LabVIEW. Utilizarea variabilelor partajate în funcţionarea unui motor asupra controlerului în timp real, a redus în mod semnificativ timpul de dezvoltare.
Aplicaţia LabVIEW în timp real
Aplicaţia LabVIEW Real-Time care rulează la nivelul controlerului CompactRIO se compune din procese cheie multiple, precum procesul de comandă, logica de control, controlul de tip PID, comunicarea prin reţele de porţi logice reconfigurabile (FPGA), comunicarea Modbus, verificarea valorilor limită, colectarea şi arhivarea datelor.
Procesul de comandă
Având o memorie tampon activă, variabilele partajate disponibile în reţea creează un buffer FIFO (primul intrat, primul ieşit), care este utilizat drept strat de transport pentru comenzile date de HMI controlerului. Prin încorporarea datelor necesare la nivelul comenzii, îi putem asigura coerenţă şi putem evita competiţia între procese („race condition”). Comanda primită de la gazdă trece la o buclă de control logic prin intermediul unei cozi de aşteptare.
Logica de control şi controlul de tip PID
Utilizând o arhitectură bazată pe un automat de stare, am conceput o procedură extensibilă şi uşor de gestionat pentru a efectua pornirea automată, oprirea controlată şi de urgenţă, cât şi operarea manuală. Trecerea prin logica de control este determinată din coada de aşteptare alimentată în bucla de comandă a procesului, iar starea actuală a sistemului este transmisă până la interfaţa HMI Windows pentru afişare.
Cu ajutorul setului de instrumente LabVIEW PID şi Fuzzy Logic Toolkit, am controlat cu uşurinţă peste cinci PID-uri în mod simultan. Parametrii PID de control sunt încărcaţi dinamic dintr-un fişier de configurare păstrat de Echogen dintr-o altă aplicaţie personalizată de configurare LabVIEW.
Comunicarea FPGA
Pentru semnalele care necesită timp de eşantionare mai mare de 1 kHz, am utilizat reţeaua de porţi logice reconfigurabile pentru a achiziţiona şi a transmite datele la controlerul în timp real, prin acces direct la memorie (DMA). De asemenea, am utilizat FPGA-ul ca un coprocesor pentru a analiza semnalele complexe, eliberând în acest timp procesorul aplicaţiei în timp real pentru alte fire critice de execuţie. În cazul semnalelor care nu necesită viteze mari de eşantionare, am utilizat NI Scan Engine, economisind astfel semnificativ timpul de dezvoltare, întrucât majoritatea semnalelor erau compatibile cu NI Scan Engine. Modul hibrid CompactRIO ne-a conferit avantajul unor viteze ridicate de achiziţie prin utilizarea FPGA şi al unui timp de dezvoltare redus cu ajutorul Scan Engine.
Comunicarea Modbus
Utilizând biblioteca Modbus pentru LabVIEW de la NI, am comunicat uşor cu dispozitivele externe ale clientului nostru. Datele achiziţionate prin Modbus au fost transmise la logica de control şi la buclele de prelucrare a datelor, prin intermediul variabilelor partajate la un singur proces, cu buffere FIFO în timp real.
Verificarea limitelor
Am verificat valorile limită ale fiecărui alias I/O în raport cu numeroase serii definite de utilizator, menţinute în aplicaţia de configurare. Fiecărei serii îi corespunde o acţiune definită de utilizator care variază din punct de vedere al gravităţii. Atunci când s-a depăşit o valoare limită, o acţiune corespunzătoare a fost trimisă la bucla de control logic pentru procesare. Întrucât alias-ul I/O conţine toate informaţiile de gradare, utilizatorul a putut defini valorile limită în unităţile de inginerie. Mai mult, prin utilizarea alias-urilor I/O, dispozitivele fizice au putut fi schimbate în cadrul sistemului, fără modificarea codului.
Colectarea de date
Toate datele monitorizate şi calculate sunt scrise într-un fişier creat la începutul fiecărei zile. Având un segment de cod care închide automat fişierul existent şi creează altul nou, la un interval definit de utilizator, acesta poate accesa fişierele scrise în prealabil, înainte ca aplicaţia sa fie finalizată.
Arhivarea datelor
Toate fişierele de date create anterior sunt arhivate şi transferate prin FTP la un server acţionat de la distanţă pentru analiză, depozitare, şi/sau scriere la un server SQL. Acest lucru a fost uşor de realizat cu ajutorul IV-urilor FTP incluse în setul de instrumente LabVIEW Internet Toolkit. În plus, folosirea acestei metode de arhivare a minimizat gradul de utilizare a hard disk-ului.
Valorificarea energiei caracteristică tehnologiei NI
Pentru a accesa datele citite şi scrise în diferite bucle de-a lungul aplicaţiei, am utilizat variabile partajate la un singur proces, cu buffere FIFO în timp real. Variabilele partajate la un singur proces au reprezentat o soluţie mai simplă şi mai iscusită decât administrarea unor referinţe FIFO în timp real. Prin utilizarea NI Distributed System Manager în timpul dezvoltării, am obţinut o locaţie centrală pentru sistemele de monitorizare din reţea, gestionând datele publicate şi accesând variabilele partajate disponibile în reţea şi variabilele I/O fără a fi necesară o aplicaţie personalizată LabVIEW. De asemenea, este posibilă scrierea la variabilele disponibile în reţea pentru a regla şi ajusta de la distanţă setările de proces, fără nevoia explicită pentru o interfaţă dedicată utilizatorului. În cele din urmă, utilizând toolkit-urile şi modulele de la National Instruments, ne-am adaptat repede sistemul la cerinţele din ce în ce mai avansate ale clientului nostru.
SC National Instruments Romania SRL
B-dul Corneliu Coposu, nr. 167A, et.I, Cluj Napoca, CP 400228
Tel.: 0800 894 308
E-mail: ni.romania@ni.com
www.ni.com/romania