CSI: Kaunas

CSI (Crime Scene Investigation. Skaitant šį straipsnelį, fone turi groti grupės The Who muzika 🙂 ). Šiaip tai labai baisus eksperimentas kuriame kraujas liejasi laisvai, todėl ir tolimesnis straipsnis po “skaityk toliau” nuoroda. (Paprasčiausiai daug fotkių ir mažai teksto).
Įsivaizduojam, kad taip jau atsitiko, kad reikia paslėpti kraujo pėdsakus… 😛

CSI:Kaunas kraujas
Čia tikras žmogaus kraujas! Blemba, aš savo kraują lieju dėl šių interneto puslapių 🙂 …
Continue reading →

5400 vs 7200

Tikriausiai daugelis žino, kad 7200 apsukų kieti diskai krutesni nei 5400. Aš dar žinau, kad daugiau apsukų turintys diskai daugiau kaista. Teoriškai, viskas turi veikti žymiai greičiau, nes diskeliai greičiau sukasi, duomenys greičiau nuskaitomi. Yra visokiausių testų kurie leidžia pastebėti tą gerumą. Tačiau kaip ten gaunasi praktiškai? Gavosi tokios palankios aplinkybės, kad į mano nagus papuolė du identiški Samsung kieti diskai. Abu visiškai vienodų parametrų: terabaito dydžio, sata, 32 megai cache, 2010 metų gamybos, nenaudoti… Skiriasi tik apsukomis.

terabaitas

Čia diskų etiketės iš arčiau.
terabaitas

HD105SI tai 5400 rpm ir HD103UJ tai 7200 rpm. Testas labai paprastas- perkopijuoti visą “pornografijos” kolekciją iš esamo 500Gb disko į naują diską (įrašymo testas). “Pornografija” susideda iš dozės nedidelių failų ir gana didelės filmų kolekcijos. Manau tai atspindi “vidutinį” buitinį vartotoją. Abu diskai buvo suformatuoti naudojant standartinius nustatymus. Suformatavus diską, kompas buvo perkrautas ir kokius 15 minučių paliktas įjungtas. Antivirusas išinstaliuotas, tinklo laidas išjungtas. Buvo kopijuojama 24432 failai keliasdešimtyje direktorijų, bendra duomenų apimtis 448770015886 baitai. Duomenys buvo skaitomi iš defragmentuoto Samsung HD502IJ disko (7200 rpm). Kompas nebuvo čiupinėjamas. Nu gal buvo perstumtas langas koks ar panašiai. Joks softas testo metu nebuvo paleidžiamas. Kopijuojama buvo su xcopy komanda naudojant bat failiuką:

echo startas
time /T
xcopy /E /C /Q /R /H E:\F Y:\F
time /T
echo pabaiga

Kopijuojama “F” direktorijos turinys.

Rezutatai buvo kiek keistoki….

7200 apsukų diskas užtrūko vieną valandą ir penkiasdešimt devynias minutes (01:59) t.y. beveik dvi valandas. Tuo tarpu 5400 apsukų diskas užtrūko … vieną valandą ir penkiasdešimt dvi minutes (1:52). Lėtesnis diskas septyniom minutėms veikė greičiau…

Net nežinau kokią išvadą reikia parašyti.

Beja, 7K diskas buvo kiek šiltesnis. Ir dar pastebėjimas, direktorijų ir failų rodymas pas abu diskus veikia maždaug vienodai. Tuo tarpu, kažkada buvau pajungęs tikrą serverinį SCSI diską, 10K apsukų ir žiūrėjau kaip atsidaro direktorijos su daugybe failų… Diskas tik sutarška kaip kulkosvaidis ir akimirksniu visos ikonos atsiranda. Apie šiuos Samsungus negaliu to pasakyti.
Kompas testams yra senoviškas, 3GHz HT ketvirtas pentiumas, 2Gb RAM, 32 bitų Windows XP Pro. System cache large, nereikalingi servisai ir “dzinguliukai” išjungti.

Vėjelis Kaune

Šios nakties vėjelis mane užklupo užmiestyje- išėjau į balkona, išgirdau sausą trekštėlijimą ir iškarto pasislėpiau. O filmavimo aparatas buvo kiek tolėliau, automobilyje. Todėl filmuko nebus…
Iš ryto paaiškėjo, kad nulūžo kaimyno kieme augančios pušies viršūnė, tokia 30cm storio. Dar kiek aptrumpino kriaušę. Elektra kaip dingo škvalo pražioje tai tai ir neatsirado. Pagal kitų žmonių šnekas supratau, kad namo važiuoti kol kas neverta. Po pietų atvažiavau į Kauną. Panemunės šilas ir šilas prie hidro elektrinės atrodo įdomiai.
Kiek pavaikščiojau po savo gatvę ir ąžuolyną. Labai gaila ąžuolų. Vienas toks didžiulis senolis Perkūno alėjoje prie “aikštės” visiškai nuniokotas… Keletas sekundžių iš ąžuolyno:

Darbe nieko blogo neatsitiko, neskaitant poros liepų ir nutraukto apšvietimo. Mano www puslapiai sukasi, vadinasi kompiuterinis ir elektrinis tinklas nenukentėjo. Namie irgi viskas veikia, nors Perkūno alėja normaliai taip nukentėjo ir stulpai bei laidai ištraukalioti ir nutraukyti. Matyt kiek padėjo tai, kad mano namas yra arti 10/0.4kV trafuko.

skvalas

Senas apvalus betoninis stulpas. Jis neišlaikė nukritusio medelio. O štai apšvietimo stulpeliai lūžo kaip degtukai:

kvadratiniai

Senos akacijos jau seniai prašėsi pjuklo. Dabar Dievulis prasisuko pats ir patvarkė senus medžius. Nors ąžuolyne mačiau, kad stovi koks nors nupuvęs ąžuolas, paremtas, drevėtas, o šalia padoraus medžio tiktai drąskulos beliko.

Darbininkai tvarko užvartas labai operatyviai. Tačiau aš negaliu nepabambėti 🙂 Kažkodėl operatyviausiai smulkinamas storas ažuolas. Vyrai net suplukę krauna ąžuolines kalades į automibliuką. Tuo tarpu kitur praeiti dar negalima. Negaliu pasakyti, kad jie turi kokių blogų kėslų. Gal paprasčiausiai jie sudeda ąžuolo medieną, kad miestiečiai nenupizdintu… 🙂

Persiprašom dėl drebančio vaizdo. Labai jau piktai tie darbininkai į mane pažiūrėjo. 🙂

Gerai, gerai. Aš esu senas bambeklis. Va, elektrikai tvarko nukritusius laidus mano gatvėje. Teisingi ir geri žmonės.

Pirmadienį krausim video iš apsaugos kamerų. Gal ką pamatysim.

Sekmės!

Primityvi apsauga nuo žaibo viršįtampių

Dabar taip visur žaibuoja, poto neša man kompus pažiūrėti… atsibodo. Va greitai surinkau primityvią apsaugą. Tam panaudojau tris varistorius. Vienas S20K275, kiti kiek mažesnio galingumo (rodos S14K275).

varistoriai apsaug virsitampiu
Didesnis varistorius pajungtas tarp “L” ir “N”, tuo tarpu mažesni pajungti tarp “L” ir “PE” bei “N” ir “PE”.
Pagal datašytą, S20K275 varistorius turi štai tokius parametrus:

Vrms=275V, Vdc=350V, Imax(8/20uS)=8000A, Wmax(2ms)=151J, Pmax=1W, V(1mA)=430V, Vc,max=710V, Ic=100A.

Mažesnio galios atitinkamai maždaug per pusę mažesnės.

Pakeliui įdėjau dar nedidelę neoninę lemputę, kad šviestu ir indikuotu elektros buvimą.

varistoriai apsaug virsitampiu

Aišku, tokia nesamonė nuo rimtos bėdos apsaugoti negali, tačiau jei koks superjautrus prietaisas persikrauna nuo ištraukiamo iš rozetės “proso”, tai tai įdėjus tokį kištuką situacija turi pagerėti. O jei ir tinklai padovanos kokį nors aukštos įtampos spaiką, tai vis didesnė tikimybė kad jis bus suvalgytas šitų varistorių, nei pateks į kokį brangesnį prietaisą.

Goalstriker atrakcionas

Teko kiek remontuoti “GoalStriker” atrakcioną. Tai futbolo baudinių imitatorius: žaidėjas spiria tikrą kamuolį į projektoriaus pavaizduotus vartus ir virtualus vartininkas gaudo kamuolį.

Originali konstrukcija matyt kaupdavo prizinį fondą iš visos europos ir geriausias spirdžius 🙂 matyt laimėdavo piniginius prizus. Deja šis variantas buvo pahackintas ir jau ryšio su duomenu baze neturi. Kiek supratau, pats virtualus vartininkas visiškas durnelis ir jis yra tik atsitiktinumo faktoriaus įnešėjas- nes jis “traukia” kamuolius visiškai atsitiktine tvarka.
Tačiau mane domino tik elektroninė dalis, o ne atrakciono logika. Elektroninė dalis mano akimis žiūrint, padaryta debiliškai ir inžinieriškai neprotingai. Visa sistema atrodo maždaug taip:

goalstriker

Kairėje ir grindyse yra IR siustuvai. Čia pagrindinė inžinierinė klaida- siustuvai sriabia gana daug elektros, o jie maitinami nuo 5V maitblokių. Tai jei viename siustuvo gale buna sakysim 4.7V, tai jau kitame jau būna vos 4.2V. O jei pridėti originalaus maitblokio silpnumą ir originalius jungiamuosius laidus, tai vienas elementas maitinamas 3.4V, o kitas tik 2.9V. Siustuve stovi PIC16F627 kontroleriukai kurie generuoja pastovų 48kHz signalą, jie daugiau nieko kito nedaro. Tačiau tokia įtampa jau yra prie PICo darbo apatinės įtampos. O ir IR šviesos diodai šviečia kiek per silpnai. Mano kieme, kur įtampa ir eteris be trugdžių, sistema dar veikia. Tačiau atrakcionų parke, kur važinėja visokie elektromobiliukai, eteris jau pilnas impulsinių trugdžių…
IR signalas kerta vartų lauką ir patenka į imtuvus. Tai paprasčiausiai IR imtuvo moduliai sujungti ir skanuojami tokiais pat PIC16F627 procesoriukais. O čia jau prasideda dar vienas anti inžinierinis sprendimas. Foto detektoriaus numeris perduodamas į centrinį kompiuterį naudojant RS485 lygio signalus, tačiau pačio kamuolio atskridimo detekcija padaryta žymiai durniau- visi vartų PICai per diodinį, TTL lygio ARBA elementą, TTL lygyje perduodami ilgiausiais laidais į kamuolio detekcijos mikrokontrolerį (kuris prabangiai pavadintas Goal PSU). Šis įrenginys tai dar vienas PIC16F627 procesoriukas į kurį ateina ir kamuolio “starto” detektorius. Ką aš žinau, bet TTL lygio signalas kuris eina iš neapsaugoto PIC procesoriuko į kitą neapsaugotą PIC procesorių per ~20 metrų kabelį (kartu su 12V maitinimu) yra kiek keistokas sprendimas…
Dėl tokių nesamonių, ir dėl daviklių išdėstymo nežinojimo atrakcionas “laboratorinėse” sąlygose veikė. Tačiau atrakcionų parke jau ne. Vietiniai specialistai nepaleido, todėl teko praleisti bemiegę naktį Lietuvos pajūryje ir debuginti sistemą. Dėl įžeminimo nebuvimo (!), triukšmingo eterio ir elektros tinklo, teko pašalinti originalius 5V maitblokius ir IR siustuvus pajungti su naujais (ATX) maitblokiais ir sprindiniais laidais. Dabar siustuvas veikia žymiai ryškiau, o imtuvas pradėjau nebegaudyti impulsinių trugdžių. Gal dar kiek padėjo, kad atsijungė vienas “ground loop” per IR siustuvus ir atrakciono fermas. Ir dar kiek pamačyjo, kad atrakciono valdytojai burbuliuodami visdėlto įžemino sistemą.
Atrakcionas tikriausiai jau veiks (jei nupirks projektorių) Palangoje, Basanavičiaus prospekte.

LCD iš HP printerio su UPS051

Į rankas papuola jau ne pirmas HP spalvotas printeris su LCD ekraniuku kurio kontroleris UPS051. Kaip ne keista, internete yra šios mikroschemos datasheetas. Bėda tame, kad mikroschema kaip ir universali, o koks LCD ekraniukas įdėtas į printerį nelabai aišku. Beto mikroschema prilituota prie plokštės ir jos trasavimas nėra labai aiškus. Teko eksperimentuoti ir bandymų kelių paleidinėti ekraniuką.
Mikroschema maitinama 5V, ekrano pašvietimas su CCF lempa nuo tų pačių 5 voltų. Teko pastatyti 7805 čipą su nemenku radiatorium, nes USB portas tokios nesamonės jau nepatraukė.
Vienas išvadas buvo analoginis ir matyt lėmė ekraniuko kontrastą. Aš ji pajungiau prie Vcc ir taip netyčia invertavau LCD ekraniuko vaizdą. Tai žymiai sulėtino mano eksperimentus, nes gana daug laiko nesupratau kodėl vaizdas gaunasi toks kreivas.

LCD ekraniukas pagal visus rastus popierius išdidžiai vadinamas “480×234 color LCD”. Tačiau čia vėl kinai gudrauja. Tai individualių pikselių skaičius- kiekvienas raudonas, mėlynas ar žalias taškelis skaičiuojamas kaip individualus taškas. Iš tikrujų ekranas yra arba 160×234 arba 480×78 (pastarasis variantas pernelyg nelogiškas). Ekraną teko jungti 160×234 (480×234) režime. Spalvos taškeliai išdėlioti ekrana panašiai kaip CMOS ekranos sensoriuje, pagal Bayer spalvų filtro matricą:

GBRGBRGBRGBR…
RGBRGBRGBRGB…
GBRGBRGBRGBR…
…….

“RGB” eilutė kiek paslinkta į dešinę (rodos per pusę pikselio). Tačiau “elektriškai” jos pajungtos kaip surašiau.

UPS051 mikroschemos įpatybė- duomenis priima ir sinchroinpulso metu ir dar (bent jau šioje PCB) x koordinatė “lagina” per 160 clock impulsu. Tai prideda papildomos painiavos. Rekomenduojamas pixelclock 9.78MHz, bet tiek ekranas, tiek mikroschema puikiausiai veikia ir prie žymiai aukštesnio dažnio.

HP printer LCD UPS051
Viską “suprogramavau” ant Altera DE1 plokštės. Todėl, kad ją turiu ir joje yra Flash ROM mikroschema kurioje įrašiau tą įžymų “Your resistance only makes my penis harder!” paveiksliuką kurį visada naudoju LCD ekranų testavimui.

HP printer LCD UPS051
Čia plokštė su UPS051 mikroschema, backlight maitblokių ir kita smulkia logika reikalinga paleisti šį LCD ekraną.

Beja, yra keli neatitikimai su datasheetu arba kažkokios mano klaidos. Pirmiausia, reikia inveruoti duomenis į LCD ekraną. Antriausia, MSB bitas veikia kaip vaizdo invertavimas. Teko naudoti tik 3*7 bitus vaizdo perdavimui, paslenkant baitą per vieną bitą į LSB pusę.

Šiaip ekranas labai prastos kokybės ir turi tendencija į “burn in”. Ir tai ne mano klaidos, o matyt konstrukcijos įpatybė. Nes paleidęs ekraniuką, dar ilgai mačiau Hewlet Packard printerio logotipo vaiduoklį. 🙂

Ir pagaliau Altera Quartus programos archyvas (su “penis harder” paveiksliuko mif failu).

NiosII vs Atmega16

Vėl prisiminiau savo žaidimus su FPGA čipu. Prisiverčiau pasižaisti su virtualiu (softcore) procesorium. Juolab, kad Altera atidarė savo licenziją ir NiosIIe procesorių galima naudoti savo kūriniams nemokamai. NiosIIe procesorius tai 32 gyvis su galimybe prikomponuoti matematinį koprocesorių (FPU).
Procesorių nutariau sukišti į savo gamybos plokštę su minimaliu Cyclone II čipu (EP2C5T144). Kas įdomiausia, softas su programiškai padaryta slankiojo kablelio matematika netilpo į čipo vidinę atmintį, tačiau tilp FPU ir softas su koprocesoriaus panaudojimu :).
Kad palyginti procesoriaus greitį, panaudojau tą patį softą (C kalboje) tiek ant Atmega 16, tiek ir su NiosII procesorium. Štai jumi ir rezultatas:

Pagrindiniai parametrai:

  • ATMEGA16, veikianti 12MHz dažniu. Softas kompiliuotas su GNU C. Interfeisas su FPGA čipu per 4 duomenų bitus ir keliais kontroliniais laideliais. FPGA vidinis skaitliukas resetinamas su Atmega, vėliau paveiksliukas pumpuojamas po 4 bitus. (4 bitai, strobas, 4 bitai, strobas, FPGA padidina adresą, ir taip ratu).
  • NiosIIe, ekonominis, nemokamos licenzijos procesorius. Softas kogero irgi GNU C kompiliuojamas. Duomenų perdavimas kiek kitoks, nes viduje FPGA sujungti žymiai lengviau: 8 bitai duomenim, kelioliką bitų adresui. Kaip jau ninėjau- FPU, hardware floating point (sudėtis, atimtis ir daugyba). Procesorius veikia nuo 50MHz taktinio dažnio. Didesnio dažnio negalėjau panaudoti, nes FPGA neturi laisvo PLLo (PLLas naudojamas LVDS interfeisui).
  • NiosIIf, tas pats kaip ir NiosIIe, tik dabar “komercinė” versija, vadinama dar “fast”. Matosi, kad kiek greitesnė. Tačiau pagrindinis greitumas pasijaustu, jei softas važiuotu iš išorinės SDRAM ar DDR atminties.

Tikėjausi žymiai didesnio greičio skirtumo. Gi Mega tik 8 bitų, neturi “geležinio” slankiojo kablelio ir važiuoja nuo 12MHz (todėl, kad toks kvarcas prilituotas). Tuo tarpu Niosas 32 bitų, hardwarinis floating point, groja ant 50MHz ir naudoja vidinę FPGA atmintį kuri tikrai nestabdo.

Nemanau, kad reikia publikuoti softą (tiek C, tiek Verilog) nes hardwarė labai jau specifinė ir niekas jos nepasidarys. Jei labai labai susidominot, rašytik laiškelį, pamačysim.

Kaitintuvo oscilograma

oscilograma
Žalia didžiausia sinusoidė- įtampa ant konturo, 370V amplitudė.
Geltona sinusoidė- srovė trafo pirminėje apvijoje (nekalibruota).
Melsvas meandras- įtampa trafo pirminėje apvijoje, 160V amplitudė.
Įtampa prieš inverterį 140V DC.
Srovė į inverterį (apytikslė, šuntas parėjo) 2.7 – 3.3A
105kHz sistema.
C konturo 1.5uF (0.707 omo)
Teorinė konturo srovė (amplitudinė) 523A?
15 kondikų- 35A per kondiką?

Impulsinis maitblokis

Mano indukcinio kaitinimo aparatui reikia daug maitinimo šaltinių. Ir durniausia tai, kad reikia nepriklausomų šaltinių (float). Dabar naudoju standartinius 50Hz transformatoriukus, bet iškilo keletas problemų. Pirmiausia- standartiniai maži transformatoriukai turi vieną ar dvi išėjimo apvijas. Maži transformatoriukai labai negalingi- 5…7W. Tokios galios pilnai užtenka indikacijai ar pagrindinei plokštei. Tačiau IGBT draiveriams ir ventiliatoriui su vandens pompa tai jau per mažai. Pagalvojau pritaikyti maitblokį iš LCD monitoriaus. Viduje stovi Fairchild FSDM0565R mikroschema. Šį mikroschema teoriškai leidžia sukonstruoti 60 – 70W maitblokį. Man tiek vatų nereikės, bet rezervas nepamaišys.
Mano “aparatui” reikia šių įtampų:

  1. 12V stabilizuotos apie 1A IGBT draiveriams
  2. maždaug 12V prie 1…2A vandens pompai
  3. maždaug 12V prie 1…2A ventiliatoriams
  4. 5V stabilizuotos, 200mA (?) voltmetrui
  5. 5V stabilizuotos, 200mA (?) ampermetrui
  6. apie 15V prie 100 … 200mA pagrindinei plokštei

Kadangi visi išėjimai nepriklausomi (vandens pompa ir ventiliatorius galima užbendrinti) tai iškilo problemos su stabilizacija. Todėl nusprendžiau stabilizuoti tik IGBT draiverių maitinimo šaltinį. Ventiliatorius sėkmingai dirba ir prie 5V ir prie 15V. Voltmetras ir pagrindinė plokštė turės savo stabilizatorius (2 x 7805 ir 7812).

multi output SMPS
Gavosi va toks “šedevras”. Čia dar nesumontuoti du 7805. 7812 jau seniai stovi pagrindinėje plokštėje. Plokštės “laboratorinis” testas atliktas, veikia. Tik reikėtu nustatyti tiksliai 11..12V išėjimą. Trafuką pavyko suvynioti kokybiškai, tai kitos įtampos nelabai stipriai vaikšto apkrovus stabilizuojamą išėjimą.

multioutput SMPS
Schema pagal gamintojo datasheetą, visos detalės išluptos iš LCD monitoriaus maitblokio. Tik teko pervynioti transformatorių. Tinklo apvija 40 vijų, 12V apviją apie 10 vijų.
Skylutes po transformatorium išgrežiojau kad geriau vėdintusi, bet čia neprivalomas reikalas.

multi output SMPS
Tačiau šitą plyšį rekomenduoju išfrezuoti. Ir aukštos įtampos pusę geriau nulakuoti. Turėjau nutikimą, kad gerai veikianti impulsinio maitblokio plokštė po metų darbo susvilo vien tik dėl drėgmės ir dulkių.

Cadsoft Eagle schema ir PCB: RAR archyvas. (Ten dar yra biblioteka su mano detalėm)
High Voltage