Mundarija:
- 1 -qadam: Fon
- 2 -qadam: kirish
- 3 -qadam: Natija
- 4 -qadam: Natijangizni tushunish
- 5 -qadam: Boshqa loyihalar
- 6 -qadam: Manba kodi
Video: Sizda mavjud bo'lgan komponentlardan foydalangan holda qarshilikka/sig'imga qanday erishish mumkin: 6 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:22
Bu boshqa ketma -ket/parallel ekvivalent qarshilik kalkulyatori emas! Ushbu dastur sizga kerak bo'lgan qarshilik/sig'imning maqsadli qiymatiga erishish uchun kerak bo'lgan rezistorlar/kondansatkichlarni qanday birlashtirishni hisoblab chiqadi.
Sizga hech qachon mavjud bo'lmagan yoki yo'q bo'lgan maxsus rezistor yoki kondansatör kerak bo'lganmi? Qo'rqma! Ehtimol, sizda mavjud bo'lgan komponentlar yordamida aniq qarshilik yoki sig'im qiymatini yaratishingiz mumkin. Millionlab turli kombinatsiyalar bilan ulkan ko'p o'zgaruvchan optimallashtirish muammosini hal qilishning o'rniga, ushbu dasturdan foydalaning!
Rezistor yoki kondansatkichni tanlang, maqsadli qiymatni kiriting, ishlatmoqchi bo'lgan komponentlarning maksimal sonini kiriting, komponentlar qiymatlari ro'yxatini kiriting va hisobni bosing! Dastur maqsadli qiymatga erishish uchun qanday komponentlardan foydalanishni va ularni qanday ulashni ko'rsatib beradi.
Kalkulyatorni sinab ko'rish uchun ushbu veb -ilovaga tashrif buyuring.
Manba kodini ko'rish uchun ushbu Github omboriga tashrif buyuring.
Iltimos, ushbu dizayn vositasidan foydalanish imkoniyatlarini yanada yaxshilash bo'yicha takliflaringiz bo'lsa, menga xabar bering!
1 -qadam: Fon
Bu veb -ilova zarurat tufayli ishlab chiqilgan. Men quradigan juda ko'p turli xil sxemalar mavjud, ular o'ziga xos rezistor yoki kondansatör talab qiladi. Ko'pincha, menda bu qiymatga ega qarshilik yoki kondansatör yo'q. Ba'zan ular hatto bu noyob qiymatga ega komponentni ham yaratmaydilar! Ideal bo'lmagan narsadan voz kechish yoki o'rnini bosishning o'rniga, men rezistorlarning har qanday kombinatsiyasini (har qanday qiymat va ular ketma -ket yoki parallel bo'ladimi) ko'rib chiqish va eng yaxshi kombinatsiyani qaytarish uchun dastur yozishga qaror qildim.
"Bantlar jangi" ko'rsatma loyihasining bir qismi sifatida mening organim sxemasini loyihalashda, ma'lum chastotaga erishish uchun kondensatorlarning eng yaxshi kombinatsiyasini qo'lda hisoblashga harakat qilishim kerak edi. Bu jarayon nihoyatda zerikarli edi va men oxir -oqibat taslim bo'ldim va har qanday tovushli chastotani ishlab chiqaradigan kondansatör kombinatsiyalaridan voz kechdim. Endi bu veb -ilova yordamida men o'z organimni ma'lum chastotaga moslab, klaviaturadagi yozuvlarga moslashtira olaman! Quyidagi tenglama ma'lum chastotani hisoblash uchun ishlatiladi va boshqa Instructables loyihasida muhokama qilinadi.
f = 1 / (0,693 × C × (R1 + 2 × R2))
R1 = 100 kOhm va R2 = 10 kOm bo'lgan bu tenglamadan foydalanib, men 27,33 nF kondansatör A4 yozuvini (chastotasi 440 Gts) ishlab chiqarishini hisobladim. Men o'z dasturimdan foydalanib, men o'zim yotib qolgan kondansatkichlar yordamida yaratishim mumkin bo'lgan.001 nF (standart kondansatordagi tolerantlikdan ancha past) ichida ekvivalent sig'im qiymatini hisoblay oldim. Olingan chiqish va konfiguratsiya quyida tasvirlangan. Men endi o'z organimni standart notalarning aniq chastotalariga ko'ra ancha samarali va samarali sozlashim mumkin. Men buni boshidanoq qilganimda edi. Mening organdagi demo qo'shig'im, ehtimol, ancha yaxshi eshitilgan bo'lardi.
Eng yaqin qiymat: 27.329 nF Farqi: 0.001 nFC Capacitor Konfiguratsiyasi: C0 = 0.068 nF || C1 = 30 nF + C2 = 300 nF
Rezistor kondansatör ekvivalent tenglamalari
Ma'lumot uchun, quyida rezistorlar va kondansatkichlarni kontaktlarning zanglashiga olib keladigan ekvivalentlik tenglamalari keltirilgan.
- Rezistorlar ketma -ket (R1 + R2): Req = R1 + R2
- Rezistorlar parallel (R1 || R2): Req = 1/(1/R1 + 1/R2)
- Kondensatorlar ketma -ket (C1 + C2): Ceq = 1/(1/C1 + 1/C2)
- Kondensatorlar parallel (C1 || C2): Ceq = C1 + C2
2 -qadam: kirish
Siz kiritishingiz kerak bo'lgan 4 ta kirish mavjud:
- Rezistor yoki kondansatör uchun qiymatni hisoblayapsizmi.
- Maqsadli qarshilik yoki sig'im qiymati va birliklar.
- Maqsadli qiymatga erishish uchun foydalanmoqchi bo'lgan komponentlarning maksimal soni (ya'ni, maqsadli qarshilik qiymatiga erishish uchun 3 dan ortiq rezistorni ishlatishni xohlamayman).
- Sizda mavjud bo'lgan rezistorlar/kondansatörler uchun qiymatlar ro'yxati. Bu qiymatlar sizning maqsadli qiymatingiz bilan bir xil bo'lishi kerak (ya'ni, agar sizning maqsadli qiymatingiz 110 nF bo'lsa, barcha qiymatlaringiz nFda ko'rsatilishi kerak).
3 -qadam: Natija
Sizning natijangiz uchun 3 ta natijaga ega bo'lasiz:
- Eng yaqin qiymat - siz parametrlar yordamida erisha olgan eng yaqin qarshilik/sig'im qiymati.
- Farq - sizning eng yaqin qiymatingiz maqsadli qiymatdan qanchalik uzoqda edi.
- Rezistor/kondansatör konfiguratsiyasi - ishlatiladigan rezistorlar/kondansatörlarning qiymatlari ro'yxati va ularning konfiguratsiyasi.
4 -qadam: Natijangizni tushunish
Konfiguratsiya chiqishi standart belgidan foydalanadi. "+" komponentlarning ketma -ketligini bildiradi va "||" komponentlar parallel ekanligini bildiradi. Operatorlar bir xil ustunlikka ega va chapdan o'ngga assotsiativ, ya'ni siz atamalarni chapdan o'ngga siljitasiz.
Masalan, quyidagi natijaga qarang:
Rezistor konfiguratsiyasi: R0 = 15 Ohm + R1 = 470 Ohm || R2 = 3300 Ohm + R3 = 15000 Ohm
Agar siz yuqorida muhokama qilingan ko'rsatmalarga amal qilsangiz, bu yuqoridagi tenglama va tasvirga teng ekanligini ko'rishingiz mumkin.
((R0+R1) || R2)+R3
5 -qadam: Boshqa loyihalar
Boshqa loyihalar uchun sahifalarimga tashrif buyuring:
- https://dargen.io/
- https://github.com/mjdargen
- https://www.instructables.com/member/mjdargen/
6 -qadam: Manba kodi
Manba kodini ko'rish uchun ushbu Github omboriga tashrif buyuring yoki quyida JavaScript -ni ko'ring.
/* --------------------------------------------------------------- */
/* r/c kalkulyatori skriptlari*//* --------------------------------------- -------------------------*/ var eng yaqin_val; // hozirgacha eng yaqin qiymat var closest_diff = 1000000.00; // val va maqsadning farqi var closest = ; // komponentlar qiymatlarini batafsil tavsiflovchi var ser_par_config = ; // ketma -ket/parallel var detallarini batafsil ko'rsatuvchi qator outputStr = ""; function calculatorClick () {// har bir yangi bosish uchun global qiymatlarni o'chirish closest_val = 0; eng yaqin_diff = 1000000.00; eng yaqin = ; ser_par_config = ; var resultDisplay = document.getElementById ("resultRow"); var exampleDisplay = document.getElementById ("exampleRow"); var calcOutput = document.getElementById ("calcOutput"); var targetTextObj = document.getElementById ('targetText'); var numCompTextObj = document.getElementById ('numCompText'); var compValsTextObj = document.getElementById ('compValsText'); var target = parseFloat (targetTextObj.value); var numComp = parseInt (numCompTextObj.value); var compValsStr = compValsTextObj.value; var compVals = ; compVals [0] = ""; var i = 0; var errFlag = 0; // agar maqsad (isNaN (target)) bo'lsa {targetStr = "" Maqsadli qiymat "kiritilishini tekshirishda xato!"} // boshqa komponentlar sonini ajratishda xato (isNaN (numComp)) {outputStr = "Xato tekshiruvi 'Komponentlar soni kiritish! "} // aks holda, agar maqsadda xato bo'lmasa yoki numComp boshqa bo'lsa (! IsNaN (maqsad) &&! IsNaN (numComp)) {while (compValsStr.indexOf (", ")! = -1) {var vergul = compValsStr.indexOf (","); var newInt = parseFloat (compValsStr.substring (0, vergul)); // komponentlar qiymatlari ro'yxatini tahlil qilishda xato, if (isNaN (newInt)) {errFlag = 1; tanaffus; } compValsStr = compValsStr.substring (vergul+1, compValsStr.length); compVals = newInt; i ++; } var newInt = parseFloat (compValsStr); // komponentlar qiymatlari ro'yxatini tahlil qilishda xato, if (isNaN (newInt)) {errFlag = 1; } compVals = newInt; if (errFlag == 0) {if (document.getElementById ("resRadio"). tekshirilgan) {qarshilik (target, numComp, compVals); } if if (document.getElementById ("capRadio"). tekshirilgan) {kondansatör (target, numComp, compVals); }} // boshqa komponentlar ro'yxatini tahlil qilishda xato {outputStr = "" Komponentlar qiymatlari ro'yxati "ni kiritishda xato!"}} calcOutput.innerHTML = outputStr; resultDisplay.style.display = "blokirovka"; exampleDisplay.style.display = "egilish"; // natija oynasini pastga aylantiring.scrollTo (0, exampleDisplay.scrollHeight); } / * Eng yaxshi qarshilik konfiguratsiyasini oladi va chop etadi * maqsad - maqsadli qarshilik qiymati * numComp - maqsadli val * compVals - qarshilik qiymatlari majmui * / funktsiyali qarshilik (maqsad, numComp, compVals) ga erishish uchun ruxsat berilgan qarshiliklarning umumiy soni { // qarshilik qiymatlarining uzunligi var num_res = compVals.length; // (var i = 1; i <= numComp; i ++) {var data = ; resCombination (compVals, num_res, i, 0, ma'lumotlar, maqsad); } var birliklari = document.getElementById ("selected_unit"). qiymati; // natijalarni chop etish outputStr = "Eng yaqin qiymat:" + closest_val.toFixed (3) + "" + birliklar + ""; outputStr + = "Farqi:" + closest_diff.toFixed (3) + "" + birliklari + ""; outputStr += "Rezistor konfiguratsiyasi:"; uchun (var i = 0; i <numComp; i ++) {if (i <eng yaqin.uzunlik) {outputStr + = "R" + i + "=" + eng yaqin + "" + birliklari + ""; if (i+1 <eng yaqin. uzunlik) {if (ser_par_config [i+1]) outputStr+= "||"; else outputStr + = " +"; }} boshqa tanaffus; }} /* Maqsadli qiymatga erishish uchun rezistorlarning eng yaxshi kombinatsiyasini hisoblab chiqadi. * res - qarshilik qiymatlarining kirish massivi * num_res - qarshilik qiymatlarining kirish massivining o'lchami * num_comb - ruxsat etilgan rezistorlar soni * indeks - taroq indeksi * taroq - joriy kombinatsiya qatori * maqsad - maqsadli qiymat * Qaytish qiymati yo'q - hozirgi eng yaxshi kombinatsiyani global qiymatlarga o'tkazadi */ resCombination (res, num_res, num_comb, index, tarak, maqsad) {// agar indeks == num_comb {var ser_par_size = Math.pow (2, son_kombi); // 2^(komponentlar soni) var ser_par = ; // har bir komponent uchun ketma -ket yoki parallel ko'rsatuvchi bool massivi var calc; // hisoblangan ekvivalent qarshilik qiymati
Tavsiya:
Ajoyib analog sintezator/organ faqat alohida komponentlardan foydalangan holda: 10 qadam (rasmlar bilan)
Ajoyib analog sintezatori/organi faqat alohida komponentlardan foydalangan holda: Analog sintezatorlar juda zo'r, lekin ularni tayyorlash juda qiyin, shuning uchun men uni iloji boricha soddalashtirmoqchi edim, shuning uchun uning ishlashi oson tushuniladi. bir nechta asosiy kichik sxemalar kerak: rezistorli oddiy osilator
BC547 tranzistoridan foydalangan holda sim o'tkazgich sxemasini qanday qilish kerak: 8 qadam
BC547 tranzistoridan foydalangan holda simni uzish sxemasini qanday qilish kerak: Do'stim, bugun men BC547 tranzistoridan foydalangan holda simni o'chirish sxemasini tuzmoqchiman, agar kimdir simni kesib tashlasa, qizil LED avtomatik ravishda yonadi va Buzzer ovoz chiqaradi
13003 tranzistoridan foydalangan holda kuchlanish nazorat qilish sxemasini qanday qilish kerak: 6 qadam
13003 tranzistorli kuchlanish nazorat qilish sxemasini qanday qilish kerak: do'stim, bugun men o'zgaruvchan kuchlanishli elektr ta'minotini ta'minlaydigan kuchlanish nazorat qilish sxemasini yaratmoqchiman. Elektron loyihalarni ishlab chiqsak, kontaktlarning zanglashiga olib kelishi uchun bizga har xil kuchlanish kerak bo'ladi. Men buni qilmoqchiman
BC547 tranzistoridan foydalangan holda velosiped shoxi sxemasini qanday qilish kerak: 8 qadam
BC547 tranzistoridan foydalangan holda velosiped shoxi sxemasini qanday qilish kerak: do'stim, bugun men BC547 tranzistoridan foydalangan holda velosiped shoxi sxemasini tuzmoqchiman, bu sxema 9V akkumulyatorni ulaganda biz chiqadigan velosiped shoxini beradi
Agar sizda analog multimetr bo'lsa, bipolyar tranzistorlarni qanday tekshirish mumkin: 4 qadam
Agar sizda analog multimetr bo'lsa, bipolyar tranzistorlarni qanday tekshirish mumkin: Biz tranzistor qanday ishlashini bilamiz, lekin ba'zilarimiz komponentni o'zi qanday tekshirishni bilmaymiz. Hozirgi vaqtda ko'pchilik raqamli multimetrlarda ularni sinab ko'rish uchun rozetkalar o'rnatilgan, lekin sizda eski analog/igna turi bo'lsa nima qilasiz? Bu sim