Category Archives: Analogue

Aromatėtis

Šiandien po pietų su žmonėm užsukom į parduotuvę kuri vadinosi panašiai į aromamotina. Ten viską uostėm, bet niekas man netiko. Paklausiau, ar turi rimtų, vyriškų kvapų. Sakė neturi, todėl teko skubiai komplektuoti savo kolekciją.

Vienos dienos rezultatai. Po to buvo biški testų, kai kam patiko, kitiems nepatiko. Kai kurie net neprisileido, nes kai “diedas prašo kažką pauostyti, tai reiškia bus smarvė”. O kiti sakė, kad aš durnas.

Taigi, kolekcijos elementai. Kai kurie jau paruošti, kai kurie tik teorija (nes kartais neaišku kur jų gauti). Laužtiniuose skliaustuose ką žmonėms priminė.

  • Toluenas (toluolas). [modeliukų klijavimas, klijai iš esmės]
  • Acetonas. [nagų lakas, dažai]
  • Propan-2-olis (izopropilas). [rankų dezinfekcija, covidas]
  • Terpentinas. [vaškuotos grindys, batų vaksas, sakai, miškas]
  • Kamparas. [močiutė, sąnariai, mokykla]
  • Jodas kristalinis. [vaikystės žaizdos, ligoninė]
  • Etanolis denatūruotas. [samanė, keptos medžiotojų dešrelės, Rojalis]
  • Ksilenas. [dažai, autoremontas, klijai]
  • Senas benzinas. [automobiliai gazelkos, šiukšlių mašina, karburatorius, Iranas]
  • Kanifolija (labai sunku išgauti kvapą). [litavimas, sporto burelis, smuikas]

Buvo ir pasiūlymų, ką reikia įtraukti į “vyrišką kolekciją”:

  • Eugenolis. [gvazdikėliai, dantisto kabinetas mokykloje]
  • Fenolis – Karbolio rūgštis. [ligoninė]
  • Eteris. [bobutė, aviamodelizmas]
  • Naftalinas. [bobutė]
  • Kreozotas? . [pabėgiai]
  • Smala, gudronas, asfaltas. [vaikystė ir “gudrono kolaideriai” ant dviejų ratų.]
  • Degutas. [miškas, pirtis, arklys]
  • Dichloretanas. [organinio stiklo klijavimas]

Buvo ir visiškų smirdalų pasiūlymų (merkaptamas, pelėsiai, puvėsiai ir senos mazgotės), bet rinkinyje turi būti “švarūs” kvapai, o ne sudėtingi mišiniai.

Kokius smirdalus pasiūlytumėt įtraukti? Su paaiškinimu.

Germanis, silicis, npn-pnp ir žemė pliusas

Atsiuntė vienas žmogus į linką youtubėjė, kur žmogus kaip stebūklą aiškino apie germanio tranzistorius, pnp ir npn ir, o dievai, apie žemė = pliusas. Beja, kalba buvo apie Uher magiuko stiprintuvą.

Todėl trumpas bambesys- koks skirtumas (jei neimti subtilybių), koks ten žemės potencialas, iš ko padaryti tranzistoriai- germanio, silicio, galio arsenido ir kokio nors karbido1. Yra pnp ir npn tipai ir jie, supaprastintai skiriasi tik srovės tekėjimo kryptimi. Ką ir rodo ta strėliukė.

Schemos abi stiprina. Kažkiek skiriasi parametrai, bet čia jau “tiuninimas”

Senoviškuose žurnaluose netgi kartais rašydavo- “schemą galima paleisti ir su kito tipo tranzistoriais, tik reikės pakeisti maitinimo poliariškumą“.

Ar germanis geresnis? Bendriniu požiūriu tikrai ne. Ir brangesnis, ir su temperatūra nėra gerai. Ir tikrai kažkaip nesigirdi apie germanio viršenybę. Gal kažkiek, specifinėse schemose, kur reikia mažesnės įtampos ant perėjimo. Gal kaip diodas- detektorius. Gal kokie specifiniai aukšto dažnio stiprintuvai…. Ir tikrai ne “šiltas lempinis garsas”. Šito kliedesio nepakenčiu. Mano giliu įsitikinimu- stiprintuvas turi tik stiprinti. Išeinantis signalas turi atitikti įeinantį, skirtis turi tik amplitudė. Ir galimybė paimti daugiau srovės. Jei reikia “šilto lempinio garso”- tembro ir efektų filtrai jums į rankas.

Išsibambėjau 🙂

  1. Čia plačiai užsimojau. Kalbama apie paprastus tranzistorius, o ne apie laukinius (tiesa ir su anais galima analogija. O gal yra ir paprasti karbidiniai tranzistoriai? ↩︎

ARM47 ir PID dalis #4

O dabar pašnekėsim apie STM32F4 serijos variantą ir source code. Pirmiausia- kodėl 4 serija? Todėl, kad tokia PCB pasitaikė po ranka. Ir tikrai ne dėl kažkokio mistinio FPU ar net DSP. Ir dar neaišku, ar mano turimas MCU yra originalas, o ne koks nors permarkiruotas šlamštas. Šaltinis solidus, bet kodėl jie juos išmetė? Reikia surasti kur nors panaudotą procesorių ir palyginti.

Source code yra sugeneruotas su CubeMX programa, kompiliuota su gcc. Ryšiai su kubiko paprogramėm tik per callback. Ir tai tik naudojam USB biblioteką (virtualus COM portas) ir taimerių pertraukimus. ADC skaitom blokavimo režime.

Pats PID skaičiavimas, float variantas visiškai toks pats kaip ir teoriniam variante:

float pid_generic(float measured, float setpoint, float amplif)
{
float output;
float deritative;
float error;
float proportional;
 
error = (setpoint - measured)/10;
proportional = error;
 
integral=integral + error * pid_dt;
deritative = (error - old_error) / pid_dt;
old_error = error;
 
output = (PID_KP * proportional + PID_KI * integral + PID_KD * deritative) * amplif;
 
return output;
}

Atsirado papildomas parametras “amplif” – tai bendro rezultato daugiklis, kaip ir sustiprinimas (ar susilpninimas). Teoriškai tą patį galima atlikti su pagrindiniais parametrais (P, I, D), bet taip lengviau priderinti prie “krosnelės” galingumo: kaitinimas dirba su integer skaičiais, ir PID rezultatas apsiapvalina. Taip prarandam “jautrumą”. Ir dar temperatūros parodymus pasmulkinam- tik dėl koeficientų.

uint32_t CalcTemp(void)
{
uint32_t a;
a=median_filter(adc_read_blocking(ADC_CHANNEL_4));
a=median_filter(adc_read_blocking(ADC_CHANNEL_4));
//a=median_filter(adc_read_blocking(ADC_CHANNEL_4));
// 786 - max t, 0.62V ->1655
// 3529 - kambario t, 2.83V -> 283
return (4096-a)/2; //12 bitų max apverčiam ir pašalinam LSB.
}
 

Dėl ADC blogumo, matuojam kelis kartus, invertuojam (dėl schemotechnikos išėjimas mažėja didėjant temperatūrai) ir pašalinam mažiausią bitą, nes jis rodo kvailystes. Funkcija “median filter” vogta iš interneto. Tai funkcija, kuri teoriškai turi išfiltruoti sporadiškus nukrypimus: jei eina 5, 6, 4, 3, 100 – tai tas šimtas kaip ir ne į temą. Kiek veikia per daug netikrinau. Manau, reikia dar padidinti buferį.

  1. readtemp=CalcTemp();
  2. pwm=PID(readtemp, SETTEMP);
  3. SetPWM(pwm);

O čia pats pagrindinis ciklas, kuris kartojamas sistemingai: 1 – nuskaitom, 2 – paskaičiuojam. 3 – valdom kaitinimą.

Visas likęs source kodas aptarnauja kontrolerio valdymą per terminalą (galima keisti parametrus) ir duomenų išmetimą analizei. Tai tik eksperimentinis variantas- darbiniam trūksta dar visokių apsaugų, normalaus valdymo ir indikacijos. Ir aišku, išėjimas čia PWM, kad tinkama mažam rezistoriui, bet ne tikram šildytuvui. Dar nesugalvojau, kaip padaryti korektiškai proporcinį valdymą realiai rėlei ar 50Hz simistoriniam reguliatoriui. Jei užteks kantrybės, tema bus vystoma.

Pats pilnas STM32F446 PID controller source code skirtas gcc ir kartu CubeMX projekto failas (versija užrakinta posto datai, galimi patobulinimai). Prie papildų- median filter, ftoa ir usb paprogramės. Visa mano kūryba “USER” aplanke.

Pt100 nuskaitymas

PT100 tai termorezistorius, kuris gana tiksliai matuoja temperatūrą. Skaičius 100 sako, kad prie 0℃ rezistoriaus varža yra 100Ω. O raidelės Pt sako, kad pirmieji šio rezistoriaus variantai buvo padaryti iš platinos. Ar dabar ten yra tos platinos aš jau nežinau. Bet seni tarybiniai termorezistoriai viduje turi labai labai plonos platinos vielos. Keičiantis temperatūrai keičiasi ir tos vielos varža.

O kaip nuskaityti tuos varžos omus? Pirmi pasiguglinimai parodo:

schemos

Čia visdėlto blogos schemos… Schema kairėje, jungimas prie mano nemėgiamo arduino. Paduodam elektrą per rezistorių ir matuojam su ADC parodymus. Atrodo kad viskas paprasta? Bet neteisinga- pirmiausia, per Pt100 rekomenduojama srovė iki 1mA. Čia 5.5mA ir pats termistorius jau nuo srovės kaista. Antroje schemoje srovė jau pamažinta ir kad ADC kažką matytu, pastatytas operacinis stiprintuvas (su 31 karto stiprinimu). Kaip ir logiška, bet deja, ne. Pt100 termistoriaus varža kinta tik keliasdešimt omų: prie 100℃ jis 138.5. Matuojant nuo 0℃ iki 100℃ turim tik 38.5Ω pokytį.

Ir dar abi schemos turi kitą problemą:

Paskaičiuojam schemą kairėje: įtampos pokytis ADC kojoje nuo 2.75V iki 2.58V, apie 0.1658V visam šimtui laipsnių. Kad ir koks geras ADC, didžioji jo matavimo dalis bus nenaudojama, o ir rezoliucija nebus labai jau didelė.

Antra schema, atrodo kaip ir geresnė, bet čia ta pati bėda- net po sustiprinimo, darbinis diapazonas nuo 3.04V iki 4.18V, apie 1.14V šimtui laipsnių. Kodėl, o todėl, kad pastovioji dedamoji nuo didžiosios dalies varžos irgi “pasidaugina” su operacinius stiprintuvu.

Ką daryti? Ogi daryti naudojant daugiau rezistorių:

pt100 amplifier

Šis testinis chaosas tai instrumentinis operacinis stiprintuvas LT1167 ir “matavimo tiltas” (Wheatstone bridge) – viršuje, kairėje. Papildomi rezistoriai dar padaro taip, kad diferencinis signalas gautusi virš 2.5V nuo žemės- čia jau LT1167 veikimo specifika naudojant vienpoliarį maitinimą. Dar, išėjimo signalas žemiau 0.6V nenusileidžia- čia irgi specifika, nėra jis rail-to-rail. Naudojant dvipoliarį maitinimą, tokios nesąmonės visiškai nereikalingos.

Šis “tiltas” duoda vieną triuką- taip galima iš schemos magiškai pašalinti “nenaudojamus” omus. Mano tiltas buvo surinktas iš trijų 120Ω rezistorių ir Pt100 termorezistoriaus. Dabar operacinis (čia instrumentinis) stiprintuvas gali žymiai daugiau stiprinti signalą. Testinėje schemoje gavosi kažkur nuo 6V iki 0.6V keičiant temperatūrą nuo kambario (~23℃) iki kažko karšto, bet ne verdančio. Maitinimas rodos buvo nuo 15V vienpoliario, o srovė per Pt100 ribota kažkur 10kΩ varža. (Tai tik testinė plokštė, neskirta naudoti su tikru procesorium).

Dar reikia sukonstruoti tikrą stabilizuotą maitinimo šaltinį (gal su specialia mikroschema) ir galimą viską sumontuoti gražiai. Bet tikslas tikrai nėra toks, tai tik tarpinis straipsniukas prie PID kontrolerio eksperimento.

Uher report 4000 ir 4200

Tai grynas 1966 metų produktas. Tačiau jau gryni tranzistoriai. Tai Uher Report 4000 serijos reporterių magnetofonai. Blogos būklės tokie magiukai parduodami už metalo laužo kainą, geri- artėja prie 500€. Visi magnetofonai turi vieną nemalonų defektą- greičių perjungimas ir ryšis su capstan’ų atliekamas frikcionu. O per tiek metų guma suakmenėja ir nebėra gero kontakto. O dar papildomai atsiranda visokie ūžesiai ir braškėjimai. Kiti dirželiai perkami internetuose ir lengvai keičiami.

Uher report 4200
Čia “stereo” versija. Tačiau tai ne tas stereo kur visi naudoja, o “vienpusis”, nes magiukas turi galvą tik su dviem takeliais per visą juostą.
“Rankinė greičių dėžė” dešinėje aparato iš tikro ir yra rankinė greičių dėžė, čia persijungia juostos traukimo greitis ir įsijungia motoriukas.

They had four speeds: 7½ inches per second (i.p.s. or in/s), 3¾ i.p.s., 1⅞ i.p.s., and 15/16 i.p.s. [19 cm per second (cm/s), 9.5 cm/s, 4.75 cm/s, and 2.38 cm/s].

Continue reading →

Švilpiko dienos radija

Nu gal ne visai, originale tai Panasonic RC-6025, o pas mane Sanyo Sterocast RM5320, tikriausiai 1972 metų gamybos (gali būti ir su kitu brendu, kad ir Siemens alpha). Tikrai japoniška, nes visur tik “made in Japan”, ant garsiakalbio Sanyo ir panašiai.
Sanyo sterocast
Kodėl žinau, kad yra kitu brendų? Ogi todėl, kad pirmoji radija kur pirkau buvo Siemens. Bet ji ne tik su sugadintu motoriuku (plastikinis dantratis be dantų), bet ją man dar ir stiprokai sudaužė- 70-tųjų plastikas labai trapus.
Continue reading →

UP2NV – bandom remontuoti

Nutariau kiek paremontuoti jau žinomą transyverį UP2NV. Sukonstravau kiek geresnę anteną, netgi su nauja antena pagavau kelias radijo stotis dienos metu. Pradėjau nagrinėtis kaip veikia siuntimas. Pas telegrafą ateina du valdymo laidai- “siuntimas” ir “raktas”. Siuntimas eina tiesiai į rėlę, o “raktas” eina į kelis mazgus- siuntimo modulį ir monitorinimo generatorių kuris daro “pyyp” kai sujungiami kontaktai. Netgi ir nesiuntimo režime. Tačiau jis to nedarė. Tiek to. Siuntimo režime kita radija CW režime užfiksavo ne tik siuntimą, bet kad tas CW užmoduliuotas 50/100Hz. Vadinasi vėl negyvi kondensatoriai. Dar buvo pastebėta, kad relės kai kada nesuveikia. Ko pasekoje CW duoda nuspaustą “raktą” kai jis nenuspaustas- siųstuvas spjauna pilną galią.

Pradėjau lupti modulį su monitorinimo generatorium, nes pamačiau vieną palaidą laidą. Ir iškarto supratau, kad tai ne pramoninis aparatas- remontuoti labai sunku, nes laidai per trumpi. Negalima ištraukti modulį remontui. Reikia numontuoti šoninę sienelę, kad išlituoti patį moduliuką. Dar bėda- ant laidų pynės beveik neliko numeracijos. Tai dabar bus pisliavos surenkant. Ir iškarto buvo pastebėta, kad schema PCB kažkokia supaprastinta (neatitinka literatūrai). Ir dar iškarto buvo pastebėta, kad vienas tranzistorius pramuštas kiaurai per E-C:
Rusiskas tranzistorius
Continue reading →