Nadzornik meritev

Leta 2005 sem za podjetje TPV d.d. (podružnica Brežice) izdelal aplikacijo za nadzor tipalnih senzorjev, ki so merili elemente avtomobila. Aplikacija je preko serijskih vrat komunicirala z mikrokontrolerjem, omogočala kalkulacije, predelavo, arhiviranje in grafični prikaz podatkov. Program se (je) uporabljal v serijski proizvodnji. Nazadnje je bil nameščen na nov računalnik leta 2013.

Opis programa “Nadzornik”

Uvod

  • Program je napisan v programskem jeziku Java.
  • Program se vedno starta na enak način – pojavi se kontrolno okno z imenom “Kontrolna plošča-meritve“. Komunikacija z mikrokontrolerjem ni vzpostavljena.
  • V glavnem meniju imamo pod opcijo Program na voljo štiri opcije:
    • Spremljaj meritve
    • Določi vrednosti
    • Etalon in kontrola tipal
    • Uporabniška gesla

Kontrolna plošča – meritve

kontrolna-plosca-meritve[1]

  • Navadni uporabnik mora za začetek dela v oknu “Kontrolna plošča-meritve” najprej izbrati svoje ime in priimek.
  • Nadalje vpiše svoje uporabniško geslo.
  • Če je geslo pravilno, lahko vzpostavi komunikacijo z mikrokontrolerjem s pritiskom na gumb Poženi.
  • Program ob pritisku na gumb “Poženi” začne komunicirati preko serijskih vrat z mikrokontrolerjem po protokolu RS232 z 19200 bps. Ta mu pošilja 11 meritev, katere program uporabi pri izračunavi rezultatov.
  • Glede na to, kako pravilen je rezultat, utripajo okenca ob narisanem objektu (kjer se izpisujejo sprotne meritve) v različnih barvah(pravilnost označuje legenda ob risbi objekta).
  • Ko program od mikrokontrolerja prejme sporočilo o hranjenju, program rezultate meritvev, ime nadzornika in čas meritve shrani v datoteko.
  • Po končanem delu mora program ustaviti s pritiskom na gumb Ustavi.

Določi vrednosti

vrednosti[1]

  • Da bi program pravilno deloval, moramo najprej nastaviti prave atributepodatkovnih tabelah. V osnovnem meniju kliknemo:
    Program->Določi vrednosti.
    Nato vpišemo geslo administratorja in če je to pravilno, lahko vpišemo nastavitve.
  • Nastavitve tabel “Podatkovna tabela upogibov” , “Tabela sestavljenih meritev”,  “Tabela radijev” ter polja COM vratshranimo, s pritiskom na gumb Shrani. S tem bodo privzete tudi ob naslednjem zagonu programa.
  • V tabeli “Podatkovna tabela operatorjev ter odstopanj za posamezne predele” določimo v stolpcih Mnozitelj(A), Delitelj(B), Pristevek(C) vrednosti, s pomočjo katerih se bodo preračunavali rezultati v milimetrih. Formula za to pretvorbo je: Rezultat[i]=Meritev*Mnozitelj/Delitelj+Pristevek, kjer je meritev številka, ki jo je poslal mikrokontroler, Rezultat[i] pa trenuten rezultat.
  • V stolpcu “Test meritve” se pojavijo preračunani rezultati meritev, če pritisnemo na gumb Testiraj.
  • V stolpcih Rumena – , Rumena + , Zelena -, Zelena + določimo vrednosti za odstopanja izmerjenih rezultatov od sredinske (idealne) vrednosti. V stolpcu Sredina določimo to sredinsko vrednost.
  • V prvi in drugi vrstici ter v šesti in sedmi vrstici ne moremo določati vrednosti za odstopanja neposredno. Te vrednosti se prepišejo avtomatsko, ko določimo radije odstopanj v tabeli “Tabela radijev”.
  • V tabeli “Tabela sestavljenih meritev” nastavimo odstopanja za seštevek oziroma odštevek določenih meritev: 3. – 4. meritev, 8. – 9. meritev, 3. + 8. meritev, 4. + 9. meritev.
  • Če pustimo vrednosti prazne, se privzame, da so vse številčne vrednosti v tabeli 0, imena predelov pa se označijo z [i], kjer je i vrstica tabele.
  • Nastaviti moramo tudi pravilna serijska vrata. Privzeta so COM2. Določimo lahko še imena nadzornikov-delavcev, ki bodo arhivirana.
  • Vpis novega nadzornika: “Uredi seznam delavcev” => “Vpisi novega” => pojavi se tekstovno polje, kamor vpišemo ime in priimek delavca => vpis potrdimo s pritiskom na ENTER na tipkovnici.
  • Na začetku ima vsak novo vpisani delavec privzeto uporabniško geslo. To geslo naj kasneje sam spremeni. (glej rubriko Uporabniška gesla).
  • Imena nadzornikov lahko tudi izbrišemo: Uredi seznam delavcev => Izbrisi obstojecega => Izberi delavca => “Janez Kranjski” => Potrdi izbris.
  • Ob vpisu novega imena ali izbrisu bilokaterega imena delavca se podatki o delavcih avtomatsko shranijo v datoteko.
  • Tu sta še dve opciji:
    • s klikom na gumb “Počisti” se nastavijo vse vrednosti tabel na 0, tekstovna polja pa se izpraznejo
    • s klikom na gumb “Obnovi” se nastavijo zadnje nastavitve, ki so veljale preden smo zagnali program.
  • OPOZORILO: program moramo vedno ugasniti tako, da kliknemo na “x” v zgornjem desnem kotu programa, ali pa tako, da v meniju Program izberemo “Ustavi”. Če tega ne storimo, se zadnje vrednosti ne bodo shranile v rezervno datoteko => obnavljanje ne bo delovalo tako kot treba. Po drugi strain pa je ta način delovanja varnostni mehanizem… če se zmotimo in napačno definiramo vrednosti v tabelah Vrednosti ter jih shranimo, potem pa to šele čez čas ugotovimo, lahko program prekinemo s Ctrl + ‘ x ‘ in po ponovnem zagonu programa kliknemo na gumb “Obnovi”. Tako bomo dobili nazaj prvotne vrednosti pred zadnjim nastavljanjem.

Etalon in kontrola tipal

etalon[1]

  • Če izberete Program => Etalon in kontrola tipal, se pojavi novo okno z naslovom Etalon. V njem sta dve tabeli.
  • Stolpca “Mere etalona” in “Minimalni premik” lahko ureja le administrator. Da bo urejanje omogočeno, pritisnite na gumb Administrator in vpišite pravilno geslo.
  • Tudi shranjevanje je omogočeno le administratorju. Če želite podatke v tabelah shraniti… tako, da se bodo ob ponovnem zagonu programa upoštevali, potem pritisnite na gumb Shrani in vpišite geslo administratorja.
  • Gumb Etaloniraj je namenjen navadnem uporabniku. Ko nanj pritisnete, se avtomatsko izračunajo vrednosti stolpca Pristevek (C) po formuli:
    Pristevek[i]=Mera etalona [i]- trenutna meritev,
    kjer je trenutna meritev število, ki ga je poslal mikrokontroler pomnoženo z Mnozitelj (A) in deljeno z Delitelj (B) .
  • Te vrednosti se avtomatsko prepišejo tudi v stolpec Pristevek (C) v tabeli “Podatkovna tabela operatorjev ter odstopanj za posamezne predele” v oknu Vrednosti.
  • Ko senzorji – tipala ne merijo nobenega kosa, se pojavi možnost, da se kako tipalo zatakne. Zato po vsaki opravljeni meritvi preverimo, ali so tipala v ustreznem stanju. Temu je namenjena tabela “Kontrola tipal“.
  • V stolpcu “Minimalni premik“ določimo ustrezne dovoljene odmike tipal. Če so premiki ustrezni, ugotovimo takole:
    razlika = trenutna meritev – Sredina
    Če velja: razlika > MinimalniPremik,
    potem je tipalo OK,
    sicer pa je s tipalom nekaj narobe
  • Recimo Sredina = 55, Minimalni premik= 1, Trenutna meritev = 57
    V tem primeru vidimo, da je tipalo skočilo v nevtralni položaj.
  • Če pa Sredina=55, Minimalni premik=1, Trenutna meritev=55.5,
    potem ugotovimo, da vzmet tipala ni potisnila v nevtralni položaj. Pri naslednji meritvi kosa bi lahko prišlo do tega, da bi bila dejanska oddaljenost 56, tipalo pa bi še vedno kazalo 55.5. Take primere seveda zaznamo in javimo napako.

Uporabniška gesla

menu-in-uporabniska-gesla[1]

  • Vsak uporabnik naj bi določil svoje uporabniško geslo in si ga za stalno zapomnil. S tem geslom bi se kot nadzornik prijavljal v sistem.
  • To stori vsak sam s klikom na Program => Uporabniška gesla
  • V meniju Izberi uporabnika izbere svoje ime, nato pa vnese staro in novo geslo, ki mora biti daljše od štirih znakov. Spremembo moramo potrditi s pritiskom na gumb “Potrdi spremembo”. S tem bodo gesla veljavna tudi ob ponovnem zagonu programa.

Arhiv – shranjevanje rezultatov meritev

  • Velja, da se ob vsakem zagonu programa ustvari nova datoteka, poimenovana s trenutnim datumom (npr. 16Aug2005Tue.txt), pod pogojem, da še ne obstaja. Sicer se novi podatki dopisujejo v isto datoteko.
  • Datoteko najdete v direktoriju C:/Nadzornik/Arhiv
  • V to datoteko se shranjujejo po vrsti (vse gre v eno vrstico):
    • naziv nadzornika
    • [M9] inf
    • [M11] inf
    • [M2] inf
    • [M4] inf
    • [M17 inf]
    • [M8] inf
    • [M10] inf
    • [M1] inf
    • [M3] inf
    • [M 16]
    • [M5]
    • Radij [M9; M11]
    • Radij [M8; M10]
    • [ M2 ] – [ M4]
    • [ M1 ] – [ M3 ]
    • [ M2 ] + [ M1 ]
    • [ M4 ] + [ M3 ]
    • Var (levi)
    • Var (desni)
    • Dober/Slab kos
    • Datum

    Primer:

    Primož Šercelj  229.93  16.01  37.24  37.25  -0.21   230.09   16.40  36.73   36.69   -0.54   0.15   0.32    0.7    0.01   0.04   364.02    364.04   true    true   true    06:11:27

    • Števila se zapisujejo do drugega decimalnega mesta natančno(ko do tega pride) , medtem ko je samo preračunavanje “preveč” natančno (tip Double pri programskem jeziku Java).
    • Vsaka meritev se shrani sproti, tako da so podatki varno shranjeni po vsaki opravljeni meritvi.
%d bloggers like this: