Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion

Proiect
7/10 (1 vot)
Domeniu: Calculatoare
Conține 50 fișiere: docx, bmp, cpp, h, exe, txt, dsp, dsw, opt, rc, plg, clw, ncb, rc2, pdb, pch
Pagini : 9 în total
Cuvinte : 2391
Mărime: 2.34MB (arhivat)
Puncte necesare: 8
Facultatea de automatica, calculatoare si electronica Sa se implementeze un system de monitorizare a combustibilului din rezervoarele unui avion. In cazul in care se detecteaza o diferenta intre cantitatea continuta, sa se avertizeze pilotul prin aprinderea unui led pe consola de comanda a avionului si sa se porneasca un sistem de redresare automat care sa echilibreze avionul. Atunci cand pericolul este indepartat, sistemul se opreste, impreuna si cu ledul de avertizare.

Extras din proiect

Cerintele problemei

Sa se implementeze un system de monitorizare a combustibilului din rezervoarele unui avion. In cazul in care se detecteaza o diferenta intre cantitatea continuta, sa se avertizeze pilotul prin aprinderea unui led pe consola de comanda a avionului si sa se porneasca un sistem de redresare automat care sa echilibreze avionul. Atunci cand pericolul este indepartat, sistemul se opreste, impreuna si cu ledul de avertizare.

Descrierea modului de implementare

Programul este bazat pe un sistem de timere, trei mai precis, unul face achizitia evenimentelor de pe placa 3780 (verifica activitatea switchurilor la 300ms), un al doilea care executa in mod constant, la interval de 1s si scade cantitatea de combustibil din rezervoare, si un al 3-lea care porneste doar in cazul in care este pusa in stare true variabila „problem” care inseamna ca s-a gasit o discrepanta in cantitatea de combustibil din rezervoare, si trebuie pornit sistemul de echilibrare. Acest ultim timer scade combustibil din celelalte rezervoare si adauga aceasta cantitate in rezervorul „problema”.

Diagrama Workflow

Functii principale si functionalitatea lor

Arhitectura de baza a programului este un proiect standard MFC dialog-based, deci vom avea doua clase de baza, „Cproiectsctr” si „CproiectsctrDlg”, pe langa care vom avea o a treia clasa, CprogressBar, clasa adaugata automat de Visual Studio pentru a genera handlerele componentelor ProgressBar V6.00

Sistemul de timere este instantiat in functia OnInitDialog() :

BOOL CProiectsctrDlg::OnInitDialog(){

CDialog::OnInitDialog();

//load the status bitmaps

grn.LoadBitmap(IDB_BITMAP1);

red.LoadBitmap(IDB_BITMAP2);

//advantech var sets:

read_operation_PCM3718 = FALSE;

read_operation_PCM3780 = evet_count_flag = TRUE;

lDevNum1 = 0; lDevNum2 = 2;

//arm the cards:

OpenAndConfigureBoards();

// Set the icon for this dialog. The framework does this automatically

// when the application's main window is not a dialog

SetIcon(m_hIcon, TRUE); // Set big icon

SetIcon(m_hIcon, FALSE); // Set small icon

// TODO: Add extra initialization here

srand(static_cast<unsigned>(time(NULL)));

for (int i=0; i<4; i++) tanks[i] = 29250;

totalDrainSpeed = 12;

drainSpeed = totalDrainSpeed/4;

problem = false;

//fill up dialog components with data

m_tank1.SetValue(tanks[0]);

m_tank1val.Format("%.0f",tanks[0]);

m_tank2.SetValue(tanks[0]);

m_tank2val.Format("%.0f",tanks[1]);

m_tank3.SetValue(tanks[0]);

m_tank3val.Format("%.0f",tanks[2]);

m_tank4.SetValue(tanks[0]);

m_tank4val.Format("%.0f",tanks[3]);

//get 3780 ready to monitor for events

ReadEventOnDI();

SetTimer(IDT_TANKS, 1000, NULL);

SetTimer(IDT_MONITOR, 500, NULL);

SetTimer(IDT_SWITCH, 300, NULL);

UpdateData(FALSE);

return TRUE; // return TRUE unless you set the focus to a control}

Preview document

Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion - Pagina 1
Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion - Pagina 2
Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion - Pagina 3
Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion - Pagina 4
Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion - Pagina 5
Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion - Pagina 6
Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion - Pagina 7
Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion - Pagina 8
Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion - Pagina 9

Conținut arhivă zip

  • Debug
    • progressbar.obj
    • proiect sctr.exe
    • proiect sctr.ilk
    • proiect sctr.obj
    • proiect sctr.pch
    • proiect sctr.pdb
    • proiect sctr.res
    • proiect sctrDlg.obj
    • StdAfx.obj
    • vc60.idb
    • vc60.pdb
  • Include
    • 839p.h
    • COMM.H
    • DEVICE.H
    • DNET.H
    • Driver.h
    • EVENT.H
    • OS.H
    • PARAS.H
    • USBErrorCode.h
  • Lib
    • Ads839p.lib
    • Ads841.lib
    • Adsapi32.lib
    • adsapi32bcb.lib
    • ADSCOMM.LIB
    • ADSDEV.LIB
    • adsdnet.lib
  • res
    • green.bmp
    • proiect sctr.ico
    • proiect sctr.rc2
    • red.bmp
  • progressbar.cpp
  • progressbar.h
  • proiect sctr.aps
  • proiect sctr.clw
  • proiect sctr.cpp
  • proiect sctr.dsp
  • proiect sctr.dsw
  • proiect sctr.h
  • proiect sctr.ncb
  • proiect sctr.opt
  • proiect sctr.plg
  • proiect sctr.rc
  • proiect sctrDlg.cpp
  • proiect sctrDlg.h
  • ReadMe.txt
  • resource.h
  • Sistem de Monitorizare a Combustibilului din Rezervoarele unui Avion.docx
  • StdAfx.cpp
  • StdAfx.h

Alții au mai descărcat și

Arhitectura calculatoarelor - Intel vs AMD

Rezultatele din testul 3DS Max 7 SPECapc Test Testul alaturat consta in crearea modelelor 3D, modificarea si randarea scripturilor. Conform...

Autentificarea prin semnătură digitală

Introducere O semnatura digitala reprezinta o informatie care il identifica pe expeditorul unui document. Semnatura digitala este creata prin...

Placa de Bază

Caracteristici generale ale placii de baza Placa de baza este un dizpozitiv ‘de baza’ un ‘pamânt’ pe care ‘se planteaza’ celelalte componente ....

Sistem de Prognosticare a Unei Avarii

Acest sistem calculeaza gradul de avariere a unei cladiri în cazul unui cutremur, precum si posibila necesitate a reconstructiei cladirii (partiala...

Ai nevoie de altceva?