Kiniško termometro TM-902C brokas 2021.12.27 at 12:48

Prieš kurį laiką užsisakiau ir gavau pigų visom prasmėm temperatūros matuoklį TM-902C iš AliExpress. Išvaizda negudri:

Bet temperatūrą matuoja. Tik pastebėjau, kad baterija išsikrauna labai greitai, ta prasme realiai greitai, keletas dienų netgi išjungus prietaisą ir baigta. Keistumas paaiškėjo pamatus srovę esant išjungtam prietaisui – pasirodo, kažkas valgo elektrą net kai jungiklis išjungtoje padėtyje. Teko ardyti ir aiškintis toliau. Schemą perpaišyti tingiu, bet ten ir taip viskas aišku, kokiam girtam narkomanui iš Kinijos susišvietė padaryti jungiklį ne tarp baterijos ir prietaiso, o tarp stabilizatoriaus ir prietaiso, t.y. stabilizatorius visada prijungtas prie baterijos ir pastoviai valgo, kad ir tuščios eigos, bet srovę.

Netgi iš foto matosi, kad takelis, prie kurio prilituotas raudonas laidas eina į 7530-1 stabilizatoriaus vidurinį kontaktą, įtampos įėjimą. Išėjimas yra trečias kontaktas ir akivaizdu, kad įtampa iš jo eina į jungiklį. Kaip ? Kokios minčių vingrybės susisukt turėjo, kad taip padaryti ? Nesuprantama… Nors yra ir teigiamų dalykų – nors čia pigus kiniškas išradimas, bet, jeigu tik ne padirbtas, stabilizatorius yra visai kilmingas, Holtek firmos 100 mA ir atitinkamos įtampos (čia 3V) stabilizatorius. Sprendžiant iš blokinės schemos aprašyme:

šitas daiGtas dirba linijiniame režime, pagal bendro kolektoriaus/užtūros schemą, kai tranzistorius valdomas tolygiai atidarant arba pridarant jį kokiu nors atraminiu valdymo įtampos šaltiniu, pavyzdžiui stabilitronu. Šiuo atveju operacinio stiprintuvo pagalba pasiekiamas žymiai geresnis išėjimo įtampos reguliavimo tikslumas. Nesistebiu, kad stabilizatorius gali tiekti tik 100 mA, nes prie maksimaliai galimos įėjimo įtampos (26 V), o išėjime turint 3 V, jis ten turėtų būti kaip reikiant karštas. Paskaičiuojam, tarkim maitinam ne nuo 9 V Kronos, o nuo maksimalios įtampos, išėjime turim tuos pačius 3 V ir 100 mA:

Pkarščio=(26 V – 3 V) × 0,1 A = 2,3 W

Tokiam korpusėliui tai jau rimtas iššūkis būtų :D. Prie 9 V generuotų 0,6 W šilumos, tai irgi gan dideli nuostoliai. Ir dar – beskaitydamas aprašymą radau, kad standartinis tuščios eigos apetitas prie 5 Vin yra tik 2,5 µA, kas būtų labai nedaug. Bet kai matavau tikrai buvo daugiau, gaila nebeprisimenu kiek. Ir tai leidžia daryti išvadą, kad visgi stabilizatorius padirbtas :(. Bet čia gal kaip kam pasiseks :D, baigėsi originalai, deda padirbtus :D. O bet tačiau, vis tiek reikia kažką daryti. Paprasčiausias būdas – peiliu pavandalizuoti takelius, pridėti truputį laido, ir padaryti taip, kad jungiklis atjungtų bateriją nuo stabilizatoriaus.

Štai, mano fantazijos vaisius – raudonas laidas nuo baterijos eina į jungiklio dešinį kontaktą, iš centrinio grįžta į schemą. Vidurinis kontaktas atkeltas, į jo vietą ant PCB prilituotas laidukas iš stabilizatoriaus išėjimo (takelis perpjautas). Kairys jungiklio kontaktas prilituotas tik dėl jungiklio montavimo tvirtumo, nes jungiklis laikosi tik už kontaktų, tam išskutinėjau paduką ant PCB, nors greičiausiai buvo galima tiesiog praskusti laką ir prilituoti. Kas supranta, kodėl galima buvo neizoliuoti to kontakto nuo bendro takelio 🙂 ?

Štai ir viskas :).

2021 -> 2022 at 10:20

Su šventėmis visus, Kūčiom, Kalėdom ir Naujaisiais metais. Kad elektronai skrietų teisinga kryptimi, kuo mažiau bet kuo efektingesnių sprogimų be pasekmių būtų ir kad viskas būtų kaip sviestu patepta :). Gerų ir rezultatyvių 2022 !

LED žibinto X-Vision Domibar X remontas 2021.12.23 at 15:31

Atvažiavo va toks stebuklas į remontą:

Vadinasi X-Vision Domibar X. „X“ matyt dėl to, kad gabaritinis pašvietimas turi X formą. Gamintojas neturi nei normalaus puslapio nei aprašymo, bent jau man nepavyko aptikti, nors pats žibintas kainuoja taip nuo 150 € iki 250 €. Techninė charakteristika, kokią pavyko rasti tokia:

• 128W (16 x 8W Osram LED)
• Šviesos srautas 9000lm
• Įtampa: 9-32V
• Reference mark: 37,5 
• Spalvinė temperatūra 6250K
• X simbolio apšvietimo galia (15,2W)
• Aliuminio korpusas
• 220 cm kabelis su DT-3 jungtimi
• Matmenys: 558 x 73,5 x 79,1mm (P x A x G)
• IP67
• Galima naudoti EU
• E-, R112- ja R7-approved
• Svoris 3,5 kg

128 LEDiniai vatai yra visai įspūdingas skaičius, turėtų gerai šviesti, jeigu vatai ne mažiukai, kiniški… Bet bėda – tas X simbolio pašvietimas neveikia. Pagrindinė žibinto dalis veikia. Ardymas ne baisiai sudėtingas, kiti LED žibintas būna gerokai smarkiau suklijuoti, o šitas tik varžtukais…

Atsidarius iš karto matosi daug korozijos, principe visos esančios detalės daugiau ar mažiau padengtos koroziniais žalėsiais.

Taigi, visą tą gėrį reikia gerai išvalyti, naudojant tinkamą chemiją. Tą padarius gedimo paieška nebuvo baisiai sudėtinga – tiesiog reikėjo atrestauruoti nupuvusius takelius, ir gabaritinis apšvietimas vėl pradėjo veikti. Dar tuo pačiu ir porą nupuvusių LED emiterių iš pagrindinio šviestuvo teko pakeisti. Štai, keletas „prieš ir po“:

LED žibinte yra keletas atskirų montažinių plokščių – maitinimo plokštė, pagrindinio LED švietuvo plokštė su LEDais ir gabaritinio apšvietimo blokelis, tas kur užžiebia X. Maitinimo plokštėje sumontuota daug DC-DC keitiklių su srovės stabilizavimu LED maitinimui, dabar jau nepamenu, 6 ar 8 moduliukai. Visą šitą plokštę nupurškiau specialiu, elektronikai skirtu, laku – kad nepasikartotų korozija. Arba bent jau ne taip greitai. Pagrindinės LED plokštės nelakavau, ten buvo kita bėda – originaliai ji su lašiuku termopastos perduodavo šiluma į korpusą, blogis tame, kad tas lašiukas buvo tik per kokius 5 cm, o toliau temperatūros perdavimas buvo paliktas „на ура“. Taigi, visa šita plokštė buvo teisingai sutepta gera termopasta, šitie galingi LED kaista tikrai stipriai, o mes visi žinom, kad nuo per didelės temperatūros jie greitai degraduoja ir miršta. Beliko tik surinkti ir ištestuoti veikimą. Kadangi viskas gerai, tai pasibarsiu ant marketingo – visi rasti aprašymai sako, kad pagrindiniame šviestuve sumontuoti 16 x 8W Osram LEDai. Ir spėkit ką – ogi Osram negamina jokių 8W LED emiterių 😀 Tokiam formate maksimaliai radau berods 3W. O gal 4W. Nu bet vis tiek kosmiškai mažai, palyginus su reklama. O man juk reikia dviejų naujų LED. Teko verstis per galvą, bet šiaip ne taip sugaudžiau info, kad čia visgi Osram, modelis GW PUSTA1.PM. Dar aišku šokiai su būgnais, kad gauti originalų Osram’ą, bet viskas pavyko ir LED BARas pilnai sutvarkytas.

HT12E enkoderio emuliatorius 2021.11.22 at 12:51

Tęsiame eksperimentus su HT12E, dabar bandysime sumesti jo emuliatorių. Kad jau reikia greitai, paprastai ir suprantamai net lameriams – jamam Arduino Uno. Beje, pasigirsiu, kai tik gausiu NUCLEO-F446RE pereisiu prie Kūbo ir STM32F446RE. Kažkurias savo programas gal išportinsiu iš Arduino į normalų C, bet ir savarankiškai jas perrašyti yra labai paprasta. O šitų bandymų rezultatas jau realizuosis, greičiausiai, su STMu. Ok, važiuojam. Pradžiai sumaniau pabandyti koks gali būti maksimaliai greitas meandras pas Uno:

Štai, apie 3,4 us, tai beveik 100 kartų greičiau negu mums reikia, panaudojant D2 arba PD2 kontaktą. Nepabandžiau dedikuoto PWM išėjimo, kitą kartą… O kol kas reikia pristabdyti Atmegą panaudojant delayMicroseconds(Pause) funkciją, kur Pause yra laikas mikrosekundėmis. Rašome 328 us, nors reiktų 330 us – 2 us paliekam prievado junginėjimo laikui. Oscilografas patvirtina sprendimą:

Štai, loginis 1 turėtų trukti 330 us, dėl tikslumo paėmiau 5 loginius 1 ir 5 loginius 0, trukmė 3,340 ms = 3340 us, vieno bito trukmė 3340/10 = 334 us, panašiai :). Kadangi jau sureguliavom bito trukmę, sumetam bitbanginimui programėles:

void one () {

digitalWrite (Data_Out, LOW);
delayMicroseconds(Pause);
digitalWrite (Data_Out, LOW);
delayMicroseconds(Pause);
digitalWrite (Data_Out, HIGH);
delayMicroseconds(Pause);

}

void zero () {

digitalWrite (Data_Out, LOW);
delayMicroseconds(Pause);
digitalWrite (Data_Out, HIGH);
delayMicroseconds(Pause);
digitalWrite (Data_Out, HIGH);
delayMicroseconds(Pause);

}

void one () padarys vienetuką, t.y. išsiųs 001, o void zero () padarys nuliuką, t. y. išsiųs 011.

Dešinėje loginio 1 trukmė, nors ir nuliai ne iš tos pusės – 990 us, idealu.

Kairėje HT12D signalas, dešinėje sugeneruotas programiškai, visi loginiai 1. Jau galima jungti maketinę plokštė ir paduoti į ją mūsų signaliuką.

Pajungiau, niekas nesprogo, net nekaista, netgi veikia. Tuoj padarysiu video kaip mirksi LEDukai.

Programėlė labai paprasta, visų pirma inicializuojam LEDus, t. y. siunčiam visų LED užgesinimo signalą (arba uždegimo, priklausomai nuo SINK ar SUORCE pasirinkimo). To reikia, nes HT12E atsimena siųstus duomenis, taigi, jeigu tarkim buvo įjungtas pirmas LED ir nutraukiam duomenų siuntimą – jis lieka šviesti. Šiaip, principe, kol kas nesvarbu kokia LED būklė buvo prieš sekantį duomenų paketą, bet dėl tvarkos tiesiog inicializuojam ir tiek. Po inicializavimo luktelname 1 sekundę ir pradedam junginėti po vieną LED iš eilės. 5 mm žalias LED mirktelna, kad Transmission Valid (VT). Perjungus trumpiklius LED veikimas invertuojamas. Taip yra todėl, kad HT12D pagal komandą paduoda arba pliusą, arba minusą, t. y. srovę tiekia arba priima, jei taip galima sakyti, o vienas LED prijungtas prie pliuso, o kitas prie minuso. Kadangi HT12D nemoka pakabinti išėjimo ore, neduoti nei pliuso nei minuso, gaunasi, kad LED visada turi maitinimą, tik jeigu į LED ateina iš abiejų pusių pliusai arba abu minusai – LED neveikia. Toliau greitaveikos bandymas. Kaip mes visi žinome, visokie NOP, Pause, Delay ir panašūs dalykai yra blogis, kurio reiktų vengti, bet tokiai paprastai programėlei arba pritaikymui bus gerai. Greitaveikai nelabai turi įtakos normalūs kontrolerio veiksmai (čia tik vienas toks – digitalWrite, rašymas į prievadus), tai to nepatestuosim, bet užtai yra nemažai laukimo (delay ir delayMicroseconds), o tuos būtų galima mažinti. Aišku, jeigu taip parašyti programą Asembleriu, būtų galima patiuninguoti ir rašymą į prievadus bei visą kitą inicializaciją. Bet nafik, vis tiek HD12x bus didesni stabdžiai, net naudojant standartines Arduino komandas. Kaip žinome, kad kažkas atsitiktų, reikia 4 žodžių, taigi, bus laikas tarp žodžių. Pats žodis generuojamas programiškai, taigi, bus 1 ir 0 trukmė. Iš HT12E bandymų žinome, kad bito trukmė yra 330 us (programoje 328 us), o laikas tarp žodžių 10 ms. Bandymai parodė, kad vis dar stabiliai veikia prie 90 us bito trukmės ir 2 ms pauzės tarp žodžių. Sumažinus labiau – arba veikia nestabiliai arba neveikia.

Arduino programa yra čia.

Dar vienas PC iš lobio :) 2021.11.21 at 17:36

Buvęs pirminiame remonte D530 SFF jau padėtas į lentyną, kai turėsiu laiko reikės pabaigti, nes jis toks keistesnis – nesvarbu kiek RAM bebūtų įdėta ir kokias RAM konfigūracijas bedaryčiau, visada mato 8 MB mažiau, nors iš SPD nuskaito teisingą RAM kiekį. IR dar lyg ir vidinė kolonėlė kartais ūžia, pagal kompiuterio darbą… Gal būti biškį blogai su pagrindine plokšte, tai palieku ateičiai, ilgėlesnis remontėlis. O dabar iš krūvos paėmiau HP Compaq DC5800 SFF. Kad buvo pilnas dulkių ir taip aišku, tai nefotografavau, bet išpūtus dulkes pasirodė visai gražus vaizdas:

Gėris tame, kad nėra blogų kondensatorių. Vienas toks įtartinas, bet labiau dėl to, kad kietoki laidai įsirėmę į jį ir gal truputį išvertė :D. Bet gal ir viskas OK. Bet jei darant bandymus bus kokių keistumų – jau signaliukas bus buvęs. Jame jau buvo įmontuotas CPU Intel Core 2 DUO SLA94:

Intel® Core™2 Duo Processor E4600
2M Cache, 2.40 GHz, 800 MHz FSB

Integruotas video ir RAM kontroleris Intel LE82Q33, ir čipsetas NH82801IB.

Visa tai sumontuota į Intel P70130D9VVZPGI pagrindinę plokštę:

Video kontroleris nekeičiamas, todėl tik nuvaliau seną termopastą, sutepiau tradicine Thermal Grizzly termopasta ir uždėjau aušintuvą. Reikės įsivertinti ir esamų karlsonų keliamą triukšmą, gal reiks pakeisti naujais. Procesorių bandysiu dėti maksimaliai palaikomą, ir, kaip visada, maksimalus kiekis RAM. Tikrai bus daugiau kaip 4 GB, reikės pasirūpinti 64 bitų operacine sistema. Prie čipseto matosi lydvietės specialiems radiatoriaus laikikliams (tokie, kaip video čipo) – sumontuosim ten tokius pat laikiklius ir čipsetas gaus savo asmeninį pasyvų aušintuvą.

Palaikomi procesoriai:

– Intel Celeron: 420, 430, 440, 450

– Intel Celeron Dual-Core: E1200, E1400, E1500, E1600

– Intel Pentium Dual-Core: E2180, E2200, E2220, E5300, E5400

– Intel Core 2 Duo: E4500, E4600, E4700, E6550, E6750, E7200, E7300, E7400, E7500, E8300, E8400, E8500, E8600

– Intel Core 2 Quad: Q6600, Q6700, Q8200, Q8300, Q9300, Q9400, Q9650

Maksimalus: Intel® Core™2 Quad Q9650, SLB8W – jeigu veiks, tai tikrai ryškus pagerėjimas bus. Maksimalus FSB dažnis pas Q9650 yra 1333 MHz, o VIDEO/RAM kontroleris palaiko 1333MHz / 1066MHz / 800MHz, taigi, turėtų veikti pilnu pajėgumu.


Palaikomi RAM:
PC2-6400 (DDR2-800 MHz) Non-ECC DIMM Memory, pagal RAM valdiklio aprašymą, palaikoma tik DDR2 667/800 MHz dažnio 8 GB RAM per du atminties kanalus. Bet Internetuose randu, kad veikia ir 16 GB, reikės pabandyti.

Galbūt dar bus įmontuota PCIx video korta, bet reiks ieškoti žemo profilio, o tai riboja pasirinkimą. SVARBU – nepamirštam, kad PC maitinimo blokas ne begalinės galios 😀 – tik 240W. Bet – aprašymas sako, kad gamykliškai yra buvę ir 300W maitinimo blokas, būtų gerai tokį gauti. Pasirodo, įmontuotas vietoje 3,5″ FDD diskasūkio atminties kortelių skaitytuvas – originalus, tokia gamyklinė opcija :).

Banymam naudosiu „sportinius“ Corsair XMS2 RAmus, kuriuos kažkada esu gavęs dovanų :). Tik 4 GB, bet primai pradžiai užteks. Pirma – atnaujinam BIOSą (buvo
01.04 2008.01.31, tapo
01.60 2015.10.26), bet BIOSas keikiasi, kad batareika nusėdus, reiks pakeisti.

Pratęsimas bus kai bus padaryti sekantys darbai.

HT12E enkoderio duomenų srauto savybių tyrimas 2021.11.19 at 14:44

Rašiau apie HT12x enkoderio ir dekoderio maketinę plokštę, toliau tęsiu savybių tyrimą reikiamam tikslui pasiekti. Visų pirma HT12E, enkoderio, arba dar jį vadinsime siųstuvu, nors tai nėra visai tikslu – galutiniam prietaise siųstuvas bus RF transyveris, t.y. radijo dažnio siųstuvas su duomenų kodavimo funkcija (dėl atsparumo trukdžiams, ne dėl šifravimo paranojos), o HT mikroschema tik suformuoja signalą kurį reikia siųsti… Nu gerai, gana beletristikos, dirbam.

Pradedam nuo nulio, t. y. – siųstuvas nedaro nieko, t.y. visi adresai loginiam 0, mygtukai nepaspausti. Vienintelis įjungtas dalykas – TE (Transmission Enable), nes be jo čia būtų tik tiesi linija ties nuline įtampos padala. Beje, TE įjungtas trumpam, tik suliečiu trumpiklį ir paleidžiu.

Taigi, siųstuvas išspjauna 8 duomenų blokus, bendra trukmė ~180 ms, vieno bloko trukmė ~13 ms, pauzė turbūt 10 ms. Kodėl turbūt – paaiškės vėliau. Teorija tokia – gavęs TE signalą siųstuvas siunčia 4 žodžius (word) duomenų arba kol TE signalas yra siuntimas vyksta nenutrūkstamai:

Įprastai žodžio (word) dydis yra nusakomas maksimaliu bitų skaičiumi, kuriuos gali apdoroti procesorius vienu metu. Kompiuteriams tai 32 arba 64 bitai. Aprašymas sako, kad turi būti 4 žodžiai, t. y. 4 bitų paketai, tačiau mūsų oscilogramoje jie 8. Kodėl ? Čia reiktų žiūrėti į siuntimo grafiko dešinę dalį, kur parodyta TE ilgesniame žemame lygyje (žemas = aktyvuotas). Reikalas tame, kad nors aš ir trumpai pyptelnu trumpiklio kontaktus, visgi siuntimas yra greitesnis ir spėja pradėti antrą siuntimo ciklą. Dėl to, manyčiau, oscilogramoje matome ne 4 žodžius, o 8. Kadangi jau žinome, kad turi būti 4 žodžiai, ir jie turi būti vienodi (kartojimas duoda atsparumą trugdžiams, perdavimo patikimumą ir t.t.), galime analizuoti tik vieną žodį:

Taigi, turime 13 aukštų lygių ir, panašu, kad po du loginius 0 tarp jų. Vėliau susitikrinsime su aprašymu, o dabar lyg ir duomenų eilutė tokia:

Impulsų trukmės:
Loginis 1 ~ 330 us
Loginis 0 ~ 330 us
1 sąlyginis bitas ~ 990 us

Taigi, vienas duomenų blokas arba žodis yra toks, primenu, kai adresai 0, mygtukai nepaspausti, TE = 1:

1001001001001001001001001001001001001

Toliau žiūrim aprašymą:

Taigi, loginis 1 arba 0 sudaromi iš trijų bitų, arba trijų osciliatoriaus ciklų. 001 = loginis 1, 011 = loginis 0. Tada mūsų eilutę galima parašyti taip:

001 001 001 001 001 001 001 001 001 001 001 001 001 = 1 1 1 1 1 1 1 1 1 1 1 1 1

Tą žinoti gerai, bet rašant programą valdikliui, reikės turėti galvoje, kad siųsti turim 3 bitus, o ne 1. Raudonai pažymėjau anksčiau nepaminėtus nuliukus. Pasirinkus kurį nors adresą arba paspaudus mygtuką, atitinkamose vietose keičiasi ir reikšmės. Štai, pasirinkti A0 ir A1 adresai, visa kita neaktyvu:

Akivaizdžiai matosi, kad loginių 1 yra dviem daugiau. O kad būtų visai paprasta, pasitelkiame skaičiuoklę:

Skaičuoklę galima parsisiųsti iš čia. Tereikia surašyti bitų eilę pilkuose ir žaliuose langeliuose ir gausime jų reikšmes bei oscilogramą. Principe, tiek žinant jau galima būtų rašyti programą, bitbanginančią reikiamus duomenis vietoje HT12E, ką mes padarysime sekančiame straipsnelyje. Svarbiausia nepamiršti, kad signalai čia tokie invertuoti, nes kai jungikliai nesujungti išėjime turim loginį 1 (nes visi įėjimai pull-up’inti), tai sakant, kad išėjimas įjungtas realiai turime loginį 0.

HT12E – HT12D bandymų plokštė – nuotolinio valdymo pradžia 2021.11.17 at 15:01

Čia toks senesnis projektukas, bet lyg nerašiau tai štai.

Iš tikrųjų dabar jau yra daug visokių gatavų moduliukų, kurie iš karto moka belaidžiu ryšiu valdyti nuotolinę relytę ar kokį kitą prietaisiuką, netgi gražus pultelis jau įeina į komplektą. Bet mano tikslas – turėti specifinį ir tik tai paskirčiai dedikuotą prietaisą, o tam gatavi moduliukai netinka, nebent juos ardyti, panaudoti jų schemas su čingliš datašytais ir bandyti kapstytis… Todėl pasirinkau kiek lengvesnį kelią – senas geras Holtek’o HT serijos mikroschemas, enkoderius, kurie formuoja perduodamą signalą. Jį po to reikia dar paversti RF signalu, o kitoje pusėje RF pagauti ir perduoti HT mikroschemai, kuri jį dekoduos. Su tais HT12x ten yra toks niuansas, kad reikia išorinio rezistoriaus dažniui nustatyti. Ta vieta man truputį neaiški, todėl sugalvojau sukurti maketinę plokštę, kurios pagalba galima išbandyti visus variantus, tuo pačiu pasitikrinant perdavimą, matuojant signalo formas (galbūt siunčiantį HT pakeisti valdikliu, formuojančiu tą signalą).

Kaip enkoderį pasirinkau HT12E – maitinimas nuo 2,4V iki 12V, nedidelis apetitas kei nesiunčia duomenų (0,1 µA prie 5V), adresuojamas. Išvadų reikšmės:

Plačiau apie išvadų reikšmes pakalbėsim kai aiškinsimės schemą.

Taigi, tikslas yra valdyti 4 atskirus arba 2 atskirus kanalus po 2 nesusietus prietaisus, tarkim lemputes. Tam reikėtų vieno enkoderio išsiuntimui ir 4 dekoderių signalo priėmimui. Pagal nustatytus adresus galima būtų atskirai valdyti visus keturis imtuvus. Bet naudojant HT12E enkoderį reiktų sugalvoti, kaip keisti adresus prieš siunčiant duomenis, todėl reikės bandyti nenaudoti pačio HT12E, bet naudoti jo siuntimo protokolą. Tada siunčiantis mikroprocesorius galėtų nesudėtingai formuoti duomenų paketą kuriame jau bus reikalingi adresai. Pradeda maketinės plokštės kūrimą. Tik pupt ir štai jau schema yra (didinasi):

Kaip visada, analizuoti pradedame iš kairės į dešinę. J1 – maitinimo lizdas. Galima naudoti, o galima ir nenaudoti, nes yra JP2 jungtis, į kurią irgi galima paduoti maitinimą. JP1 ir JP4 skirti pasiimti maitinimą papildomai įrangai, priklausomai nuo bandymo (valdikliui, RF įrangai ir t.t.). Toliau IC1 – enkoderis HT12E. Išvadai su Ax skirti adresavimui, koks bus nustatytas čia, toks pat turi būti ir dekoderyje. Išvadai turi vidinius pritempimus prie teigiamo maitinimo poliaus (pull-up), taigi išorėje jie jungiami prie minuso. Paprastam adresavimo pasirinkimui dedam mažų jungikliukų bloką. Sujungtu JP3 trumpikliu gaunamas „Transmission Enable“, leidimas siųsti duomenis. Tarp OSC1 ir OSC2 išvadų jungiamas reikiamo nominalo rezistorius, bet bandymo tikslais rezistoriaus nelituosiu, vietoje jo bus naudojamas precizinis dviejų kontaktų lizdas JP5. Ten bus galima lengvai dėti įvairius rezistorius bandymui. Ir belieka AD11, AD10, AD9 ir AD8. Šiuos išvadus naudojam kaip signalo perdavimo įėjimus, prikabinant prie jų po mygtuką, sujungiantį su minusu. Elektrinių parametrų lentelė iš datašyto:

Kol kas viskas paprasta, tuo labiau, kad panaudota standartinė schema iš aprašymo:

Čia reikia žinoti, kad siuntimas vyksta visą laiką, kol TE yra žemame lygyje, bet man to ir reikia. Ir dar trumpai apie Rosc. Jo parinkimas yra susijęs su dekoderio osciliatoriaus dažniu, todėl formulė yra tokia:

f(OSC dekoderio) ≈50 × f(OSC enkoderio HT12E)

O tada grafikas rezistoriaus nominalui:

Vėliau pabandysim pamatuoti ir parodyti, kad teorija atitinka praktiką.

Ok, važiuojam toliau. O toliau – JP6. Šito trijų kontaktų trumpiklio paskirtis – atjungti arba sujungti perduodamą signalą naudojant 2 ir 3 kontaktus, o 1 kontaktas paliekamas oscilografo arba kokios kitos įrangos pajungimui. Štai ir dekoderis HT12D.

Čia irgi viskas paprasta, Ax skirti adresavimui, jis, natūralu, turi būti toks, kaip ir enkoderyje, taip pat jungiklių pagalba prijungiami prie minuso adreso nustatymui, išvadas taip pat gali būti laisvas ir jam nereikia išorinio patempimo link maitinimo pliuso. OSC1 ir OSC2 irgi skirti rezistoriui, o DIN reiškia „Data IN“, duomenų įėjimas. Makete jis bus tiesiai iš enkoderio, bet atjungus JP6 ir į trečią kontaktą galima būtų paduoti signalą iš kitų šaltinių (pvz., valdiklio). D8-D11 išėjimai, suveikiantys atitinkamai AD8-AD11. Išėjimui suveikus gaunamas loginis 0, kitu atveju loginis 1. Išvadas VT – „Valid Transmission“, išėjimas, pažymintis, kad teisingai gauti duomenys. Pas mus jis mirktels LEDuką LED1, bet gali būti naudojamas ir imtuvo valdikliui. LED1 gali būti atjungiamas JP7 trumpikliu, prie to pačio trumpiklio patogu ir prisijungti oscilografą arba valdiklį. O toliau elektrinių parametrų lentelė:

Taigi, ir čia panaudota standartinė schema:

Ir rezistoriaus parinkimo lentelė:

O skaičiavimo formulė ta pati:

f(OSC dekoderio) ≈50 × f(OSC enkoderio HT12E)

Taigi, mūsų atveju R(enkoderio) = 1 MΩ, R(dekoderio) = 51 kΩ, Umait =3,6VDC. Enkoderio lentelėje gauname panašiai 2,75 kHz dažnį. f(OSC dekoderio) ≈50 × 2,75 kHz = 137,5 kHz. Žiūrim į dekoderio lentelę, toks dažnis prie 3,6 VDC…

Man gaunasi labiau 47 kΩ, bet datašyte rekomenduojama prie 1 MΩ naudoti 51 kΩ. Bet čia gal neatitikimas dėl grafiko skalės netikslumo ir apytikslių verčių, veikia ir su 47 kΩ. Štai turim ir abu rezistorius. Toliau indikacija – tam parinkti 0805 dvigubi LED emiteriukai, per balastinius rezistorius prijungti tiesioginiu ir priešingu poliarumu, išėjimui iš enkoderio indikuoti pasirenkant srovės priėmimą arba tiekimą (sink arba suorce) į LED. Poliatumas pasirenkamas trumpikliais JP9-JP12. Tai turbūt tiek tos teorijos. Schemą jau turim, belieka sutrasuoti plokštę.

Užsakymas gamybai, gamyba, surinkimas ir štai finalinis produktas:

Belieka tik nuplauti fliusą ir pradėti bandymus. AutoCAD Eagle failiukai čia.

Ruduo… 2021.11.11 at 16:39

Beveik prieš 2 savaites pasidarėm iškylą į gamtą, oras gražus tai ir ruduo gražus, tik pasidalinu keliais vaizdeliais.

Senuko PC gaivinimas iš „lobio“ arba man reikia „pyrago“ at 16:30

Visų pirma apie kompiuterį, čia vienas iš to lobio, HP Compaq D530 SSF. O pirmas jis todėl, kad toks pats jau sukasi pas mane ant stalo. Nusprendžiau, kad reikia atgaivinti, patobulinti ir padėti į archyvą :). Atsidarius vaizdelis dulkėtas:

Visa tai pučiam, plaunam, dar pučiam ir po to įdėmiai apžiūrim, gal dar kas blogo išlįs.

Nagi nagi, jau matau, kad kondensatoriai papūsti…

Štai jie, broliai šaunuoliai:

Dar prasiardžiau ir maitinimo bloką – jame esantys kondensatoriai irgi mėgsti pūstis, bet su kondensatoriais viskas gerai. Maitinimo blokas nors ir tokios pat formos, kaip mano turimam senuke – šitas jau naujesnis, patobulintas (arba papigintos gamybos) – korpusas be vyriukų, viskas sutvirtinta tik varžteliais. Karlsono „ortakis“ toks irgi iš didelio rašto išėjęs… O bet tačiau, kondensatoriai geri, ventiliatorius ūžia – keičiam :). Beje, nepirkite prašmatnių ventiliatorių su integruotomis apsaugomis, minkštais paleidimas ir kitais monais – nesuveikia. Paprastas elementarus ventiliatorius, gal tik su prabangesniais guoliais tipo MagLev bus idealu.

Kad jau užsiėmiau ventiliatoriumi, tai tuo pačiu pasikeičiam guolius ir CPU aušinimo ventiliatoriuje:

Seni žemiau, vienas jų pakeitęs spalvą, kaitęs 😀 Taigi, dedam naujus. Šiaip ar taip ventiliatorius truputį burzgia, bet net akimis matosi, kad reikia balansuoti. Kažin, daro kas tokį dalyką Lietuvoje :D?

Viską patikrinus ir pakeitus, pradedamas surinkimas. Kompiuteris buvo be RAM, taigi gavo originalius, vardinius ir gal net kilmingus HP RAM kauliukus, kondensatoriai irgi prabangesni – OST gamybos.

Kadangi jau pridėjau maksimaliai palaikomą greičiausia RAM, esamas procesorius Pentium 4 2,4 GHz 512 KB L2 atminties ir 533 KHz šynos dažnio, D1 versija irgi norėtų būti pakeistas, šitas ne pats galingiausias šiai pagrindinei plokštei. Todėl užsakiau porą Intel Pentium 4 SL6WG 3.20GHz/512KB/800MHz Socket/Sockel 478 Hyper-Threading CPU. Porą, nes pasikeisiu ir darbiniam kompiukui, bus raketa :D. O šitas dar gaus ir Crucial MX500 512GB SSD (yra SATA). Gražu pažiūrėti.

O dabar apie pyragą, stringančius darbus ir t.t. Tas posakis, kad reikia pyrago, atsirado po filmo „Žmonės juodais drabužiais“, trečios dalies. Va ta ištrauka apie pyragą:

O pyrago esmė – kai kažkas nesiseka reikia padaryti pertraukėlę, kad ir pyragui. Smegenys pailsi, mintys persijungia nuo užsiciklinusio neveikiančio sprendimo, atsipalaiduoja, o po to tik pyst ir dingteli teisinga mintis ar atsiranda koks naujas požiūris į problemą ir panašiai. Tai va, kad truputį pabėgti nuo nesisekančių darbų reikėjo man tokio pyrago, kuriuo šiuo atveju buvo to kompiuko perrinkimas. Ir emocijos geros, kad veikia, dar Win XP instaliuot išbandyt – vien malonumai. Po tokios terapijos galima bus vėl kibti į sunkumus :).

Blogumas – kompiuteris nemato 8 MB iš bet kokio įdėto RAM.

Onkyo TX-NR3008 remontas 2021.11.08 at 09:06

Nors paskutiniu metu ir užsivertęs su rimtais darbais, vis dėl to pasirašiau pažiūrėti ir šitą žaisliuką. Nes didelis, geras ir tikėjomės, kad tiesiog galinukai prašauti.

Dangčio nuėmimas nėra sudėtingas, o vat išmontuoti radiatorių su galinių tranzistorių ir draiverių blokais viename (pažymėjau raudonai) – jau buvo nemažai laiko suvalgęs iššūkis.

Aštuonis viršuje esančius tranzistorius pamatuoti nebuvo sudėtinga, bet jų komplementarinės poros sumontuotos apačioje, po visa konstrukcija… Ir dar nors kad būtų bent vienas sudegęs – ne, tiek galiniai, tiek ir draiveriai matuojasi teisingai. Teko viską gražiai surinkti atgal ir įjungti smegenis. Bet pirma reikia pajungti maitinimą resyveriui. Bandymas parode, kad niekas nepasikeitė – budintis maitinimas pasileidžia, bet pirminio maitinimo relė vis dar spragsi ~1Hz dažniu, tuo pačiu užsidega ir „Zone 2“ LED indikatorius. Ok, kadangi nieko nesugadinom stiprintuvinės dalies ardymo-testavimo-surinkimo procedūra, dabar jau teks galvoti. Taigi, pirminį maitinimą įjungia pagrindinis procesorius:

Čia pirminio maitinimo šaltinio schemos dalis. Per jungties JL901A pirmą kontaktą paduodamas signalas MPOWER (Main Power?) į Q9200 tranzistoriaus bazę, tranzistorius atsidaro ir įjungia RL9200 relę. Ji permeta tinklo įtampą į pirminio maitinimo transformatorių T904. Normaliai viskas taip ir turėtų likti įjungta. Bet tas MPOWER signalas tai yra, tai jo nėra, tai vėl yra, tai vėl nėra – ir taip relė spragsi be sustojimo. Toks keistas procesoriaus elgesys įprastai yra ženklas, kad jam biškį negerai su galvele. Ir tai pats blogiausias remontas – procesorių pakeisti galbūt dar ir galima, bet programos jam tai jau tikrai niekur negausi. O paskutinis bandymas pradangino ir likusią vilties kibirkštėlę – atjungiau visus galus, apsaugas, nu ir „на пролом“, kad užsikurtų tik procesorius, displėjus ar bent jau nespragsėtų relė. Spragsi. Ties ta vieta jau kaip ir tenka pripažinti, kad pagrindinis procesorius muštas, bet tas neatsako į klausimą kodėl ir kaip visada lieka abejonė, o gal kažkas kitas. Taigi, važiuojam toliau. Pirminio maitinimo transformatorius gamina 3 įtampas, kurias, per P9301A jungtį pašeria į nuolatinio maitinimo formavimo modulį U0065:

Kaip visada, iš kairės paduodamas maitinimas, tie patys 6 kontaktai su 3 maitinimo įtampų porom. DSP_AC1 ir DSP_AC2 po saugiklio ir tiltelio dar skirstosi į du maitinimus. Vienas +9VDC bėga tiesiai į jungtį, o kitas stabilizuojamas Q9350 į 5,9VDC. Abu šitie maitinimai geri, vietoje 9V turim apie 8,6V, o 5,9V tokie ir yra – DC/DC konverteris SI8008TM veikia teisingai. Pereinam prie apatinės schemos dalies. FLAC1 ir FLAC2 nėra ką matuoti – kaip ateina iš transformatoriaus, taip be pakeitimų ir nueina toliau. O vat spėkit, kokia įtampa yra tarp +3.3VMPU ir -VP? Logiška būtų manyti, kad 3,3V, nu taip, logiška 😀 bet yra tai apie 45V. Ne ne, kablelio nepamiršau, keturiasdešimt penki voltai. Ties ta vieta apėmė negera nuojauta, tas +3.3VMPU greičiausiai išsišifruoja taip – 3,3V maitinimas MikroProcesoriams (taip, jų juk čia ne vienas – pagrindinis, DSP, displėjaus ir dar krūvelė kitų. Ir taip, visi žinome, kad procesoriai maitinami 3,3V įtampa, nu galbūt atlaikytų dar kokius papildomus 0,2-0,5V, bet jau tikrai ne papildomus daugiau kaip 40V. O dabar sąrašiukas, kurie procesoriai, valdikliai ar panašūs, kritiniai veikimui, daikčiukai maitinasi nuo tos įtampos ir bus išėję į vėsių temperatūrų, tikslių signalų ir amžino teisingos įtampos maitinimo lankas:

Q7502 — M66005-0001AHP — Slave upper
Q7501 — M66005-0001AHP — Master lower
Q8701 — MPD70F3740GC-UEC-AX — Vienas iš video procesorių
Q7500 — HNA-16SL04T — panašu į fluorescencinio displėjaus valdiklį
Q7016 — µPD70F3746GJ-GAE-AX — video procesorius


Turbūt dar ne visi, plius dar sauja operacinukų ir kitos smulkmės… Gaila, panašu, kad laikas sugaištas, pastangų įdėta, o rezultatas – pšššt, neremontuotinas. Principe tektų keisti visas PCB su tais procesoriaus į naujas/kitas, o jos taip nesimėto pakampėm, net eBay kukliai tyli. O ir kaina, nujaučiu, bus netoli naujo resyverio.

O dabar, kad gyvenimas neatrodytų toks paprastas – mįslė. Pagal schemą tranzistoriaus bazę valdo ir galutinę įtampą nustato du stabilitronai, a.k.a. Zenerio diodai – UDZS16B ir UDZS30B. Pagal datašytą jų įtampos 16V ir 30V, kadangi sujungti nuosekliai, tai stabilizacija būtų 46V. Panašiai tiek ir turime išėjime. Tai kas čia vyksta 😀 ? Kodėl gamykliškai visi 3,3V procesoriai maitinami 46V ? O vat štai procesoriaus maitinimo lentelės:

Taigi, absoliutus maitinimo maksimumas +4,6V, standartinis darbinis maitinimas 2,85-3,6V, t.y. 3,3V pats tas.

Taigi – tęsiam teisybės paieškas 😀 Dėl visa ko užmečiau akį į kai kurias montažines plokštes, kur galėtų būti tų 46V konvertavimas į 3,3V. Nėra…