Πίνακας περιεχομένων:
- Βήμα 1: Ιστορικό
- Βήμα 2: Είσοδοι
- Βήμα 3: Αποτέλεσμα
- Βήμα 4: Κατανόηση του αποτελέσματος σας
- Βήμα 5: Περισσότερα έργα
- Βήμα 6: Πηγαίος κώδικας
Βίντεο: Πώς να επιτύχετε οποιαδήποτε αντίσταση/χωρητικότητα χρησιμοποιώντας εξαρτήματα που έχετε ήδη !: 6 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:31
Αυτός δεν είναι ένας ακόμη υπολογιστής σειράς/παράλληλης ισοδύναμης αντίστασης! Αυτό το πρόγραμμα υπολογίζει πώς να συνδυάσετε αντιστάσεις/πυκνωτές που έχετε σήμερα για να επιτύχετε μια τιμή αντίστασης/χωρητικότητας που χρειάζεστε.
Χρειάστηκες ποτέ συγκεκριμένη αντίσταση ή πυκνωτή που δεν έχεις ή που δεν υπάρχει; Μη φοβάστε! Μπορείτε πιθανώς να κάνετε αυτήν τη συγκεκριμένη τιμή αντίστασης ή χωρητικότητας χρησιμοποιώντας εξαρτήματα που έχετε ήδη. Αντί να λύσετε ένα τεράστιο πρόβλημα βελτιστοποίησης πολλαπλών μεταβλητών με εκατομμύρια διαφορετικούς συνδυασμούς, χρησιμοποιήστε αυτό το πρόγραμμα!
Απλώς επιλέξτε αντίσταση ή πυκνωτή, εισαγάγετε την τιμή -στόχο, εισαγάγετε τον μέγιστο αριθμό εξαρτημάτων που θα θέλατε να χρησιμοποιήσετε, εισαγάγετε μια λίστα με τις τιμές των εξαρτημάτων που έχετε και κάντε κλικ στον υπολογισμό! Το πρόγραμμα θα φτύσει ποια εξαρτήματα πρέπει να χρησιμοποιήσετε και πώς να τα συνδέσετε για να επιτύχετε την τιμή -στόχο σας.
Για να δοκιμάσετε την αριθμομηχανή, επισκεφτείτε αυτήν την εφαρμογή ιστού.
Για να δείτε τον πηγαίο κώδικα, επισκεφτείτε αυτό το αποθετήριο Github.
Ενημερώστε με εάν έχετε προτάσεις για περαιτέρω βελτίωση της χρηστικότητας αυτού του εργαλείου σχεδίασης!
Βήμα 1: Ιστορικό
Αυτή η διαδικτυακή εφαρμογή αναπτύχθηκε από ανάγκη. Υπάρχουν πολλά διαφορετικά κυκλώματα που κατασκευάζω και απαιτούν μια πολύ συγκεκριμένη αντίσταση ή πυκνωτή. Πολλές φορές, δεν έχω αντίσταση ή πυκνωτή με τη συγκεκριμένη τιμή. Μερικές φορές δεν κάνουν καν ένα συστατικό με αυτή τη μοναδική αξία! Αντί να εγκαταλείψω ή να συμβιβαστώ με κάτι που δεν είναι ιδανικό, αποφάσισα να γράψω ένα πρόγραμμα για να εξετάσω κάθε πιθανό συνδυασμό αντιστάσεων (κάθε δυνατή τιμή και αν είναι σε σειρά ή παράλληλες) και να επιστρέψω τον καλύτερο συνδυασμό.
Κατά τον σχεδιασμό του κυκλώματος για το όργανό μου ως μέρος του έργου Μάχη των Bands Instructable, έπρεπε να προσπαθήσω να υπολογίσω τον καλύτερο συνδυασμό πυκνωτών για να επιτύχω μια συγκεκριμένη συχνότητα. Αυτή η διαδικασία ήταν απίστευτα κουραστική και τελικά παράτησα και πήγα με συνδυασμούς πυκνωτών που παρήγαγαν οποιαδήποτε ποσότητα ακουστικής συχνότητας. Τώρα με αυτήν την εφαρμογή ιστού, μπορώ να σχεδιάσω το όργανό μου για μια συγκεκριμένη συχνότητα και να το συντονίσω στις σημειώσεις ενός πληκτρολογίου! Η παρακάτω εξίσωση χρησιμοποιείται για τον υπολογισμό της συγκεκριμένης συχνότητας και συζητείται στο άλλο έργο Instructables.
f = 1 / (0,693 × C × (R1 + 2 × R2))
Χρησιμοποιώντας αυτήν την εξίσωση όπου R1 = 100 kOhm και R2 = 10 kOhm, υπολόγισα ότι ένας πυκνωτής 27,33 nF θα παράγει μια νότα Α4 (συχνότητα 440 Hz). Χρησιμοποιώντας το πρόγραμμά μου, μπόρεσα να υπολογίσω μια ισοδύναμη τιμή χωρητικότητας εντός 0,001 nF (πολύ μικρότερη από την ανοχή σε έναν τυπικό πυκνωτή) που μπορώ να δημιουργήσω χρησιμοποιώντας πυκνωτές που είχα ήδη. Η προκύπτουσα έξοδος και διαμόρφωση περιγράφονται παρακάτω. Είμαι πλέον σε θέση να συντονίσω πολύ πιο αποτελεσματικά και αποτελεσματικά το όργανο μου στις ακριβείς συχνότητες των τυπικών νότες. Μακάρι να το είχα κάνει από την αρχή. Το demo τραγούδι μου στο όργανο μάλλον θα ακουγόταν πολύ καλύτερα.
Πλησιέστερη τιμή: 27.329 nF Διαφορά: 0.001 nFC Διαμόρφωση πυκνωτή: C0 = 0.068 nF || C1 = 30 nF + C2 = 300 nF
Εξισώσεις Ισοδυναμίας πυκνωτή αντίστασης
Για αναφορά, παρακάτω είναι οι εξισώσεις ισοδυναμίας για το συνδυασμό αντιστάσεων και πυκνωτών σε ένα κύκλωμα.
- Σειρές αντιστάσεων (R1 + R2): Req = R1 + R2
- Αντίσταση παράλληλα (R1 || R2): Req = 1/(1/R1 + 1/R2)
- Πυκνωτές σε σειρά (C1 + C2): Ceq = 1/(1/C1 + 1/C2)
- Πυκνωτές παράλληλα (C1 || C2): Ceq = C1 + C2
Βήμα 2: Είσοδοι
Υπάρχουν 4 εισόδους που θα χρειαστεί να δώσετε:
- Είτε υπολογίζετε μια τιμή για μια αντίσταση είτε έναν πυκνωτή.
- Η τιμή αντίστασης ή χωρητικότητας στόχου και οι μονάδες.
- Ο μέγιστος αριθμός εξαρτημάτων που θα θέλατε να χρησιμοποιήσετε για την επίτευξη της τιμής στόχου (δηλαδή δεν θα ήθελα να χρησιμοποιήσω περισσότερες από 3 αντιστάσεις για να επιτύχω την τιμή αντίστασης στόχου).
- Η λίστα των τιμών για τις αντιστάσεις/πυκνωτές που έχετε αυτήν τη στιγμή. Αυτές οι τιμές πρέπει να είναι στις ίδιες μονάδες με την τιμή -στόχο (δηλαδή εάν η τιμή -στόχος σας ήταν 110 nF, όλες οι τιμές σας θα πρέπει να παρέχονται σε nF).
Βήμα 3: Αποτέλεσμα
Θα λάβετε 3 αποτελέσματα για το αποτέλεσμά σας:
- Closest Value - η πλησιέστερη τιμή αντίστασης/χωρητικότητας που καταφέρατε να επιτύχετε με τις παραμέτρους σας.
- Διαφορά - πόσο μακριά ήταν η πλησιέστερη τιμή από την τιμή -στόχο.
- Resistor/Capacitor Configuration - μια λίστα με τις τιμές των αντιστάσεων/πυκνωτών που πρέπει να χρησιμοποιηθούν και τη διαμόρφωσή τους.
Βήμα 4: Κατανόηση του αποτελέσματος σας
Η έξοδος διαμόρφωσης χρησιμοποιεί μια τυπική σημειογραφία. "+" σημαίνει ότι τα στοιχεία είναι σε σειρά και "||" σημαίνει ότι τα στοιχεία είναι παράλληλα. Οι τελεστές έχουν την ίδια προτεραιότητα και είναι συσχετιστικοί από αριστερά προς τα δεξιά, δηλαδή ομαδοποιείτε όρους μαζί ξεκινώντας από τα αριστερά και μετακινώντας προς τα δεξιά.
Για παράδειγμα, ρίξτε μια ματιά στο ακόλουθο αποτέλεσμα:
Διαμόρφωση αντίστασης: R0 = 15 Ohms + R1 = 470 Ohms || R2 = 3300 Ohms + R3 = 15000 Ohms
Εάν ακολουθήσετε τις οδηγίες που συζητήθηκαν παραπάνω, μπορείτε να δείτε ότι αυτό ισοδυναμεί με την παρακάτω εξίσωση και εικόνα παραπάνω.
((R0+R1) || R2)+R3
Βήμα 5: Περισσότερα έργα
Για περισσότερα έργα, επισκεφθείτε τις σελίδες μου:
- https://dargen.io/
- https://github.com/mjdargen
- https://www.instructables.com/member/mjdargen/
Βήμα 6: Πηγαίος κώδικας
Για να δείτε τον πηγαίο κώδικα, επισκεφτείτε αυτό το αποθετήριο Github ή δείτε το JavaScript παρακάτω.
/* --------------------------------------------------------------- */
/* r/c scripting calculator*//* ------------------------------------------ -------------------------*/ var closeest_val; // πλησιέστερη τιμή μέχρι στιγμής var closeest_diff = 1000000.00; // διαφορά val και στόχου var πλησιέστερο = ; // τιμές λεπτομερειών συστοιχίας εξαρτημάτων var ser_par_config = ; // πίνακας με λεπτομέρειες σειριακού/παράλληλου var outputStr = ""; λειτουργία calculatorClick () {// διαγράψτε τις καθολικές τιμές για κάθε νέο κλικ closeest_val = 0; closeest_diff = 1000000.00; πλησιέστερο = ; 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; // σφάλμα στην ανάλυση της τιμής στόχου εάν (isNaN (στόχος)) {outputStr = "Σφάλμα ελέγχου εισόδου" Target Value "!"} // σφάλμα στην ανάλυση αριθμού στοιχείων άλλου εάν (isNaN (numComp)) {outputStr = "Έλεγχος σφάλματος 'Αριθμός εισαγωγής στοιχείων! "} // αλλιώς εάν δεν υπάρχει σφάλμα στο στόχο ή numComp αλλιώς εάν (! IsNaN (στόχος) &&! IsNaN (numComp)) {while (compValsStr.indexOf (", ")! = -1) {var κόμμα = compValsStr.indexOf (","); var newInt = parseFloat (compValsStr.substring (0, κόμμα)); // σφάλμα στην ανάλυση λίστας τιμών στοιχείων, ορίστε σημαία if (isNaN (newInt)) {errFlag = 1; Διακοπή; } compValsStr = compValsStr.substring (κόμμα+1, compValsStr.length); compVals = newInt; i ++? } var newInt = parseFloat (compValsStr); // σφάλμα στην ανάλυση λίστας τιμών στοιχείων, ορίστε σημαία if (isNaN (newInt)) {errFlag = 1; } compVals = newInt; if (errFlag == 0) {if (document.getElementById ("resRadio"). επιλεγμένο) {αντίσταση (στόχος, numComp, compVals); } else if (document.getElementById ("capRadio"). επιλεγμένο) {πυκνωτής (στόχος, numComp, compVals); }} // σφάλμα κατά την ανάλυση λίστας τιμών συστατικών else {outputStr = "Σφάλμα ελέγχου" Εισαγωγή λίστας στοιχείων συστατικών "!"}} calcOutput.innerHTML = outputStr; resultDisplay.style.display = "μπλοκ"; exampleDisplay.style.display = "flex"; // μετακινηθείτε προς τα κάτω στο αποτέλεσμα window.scrollTo (0, exampleDisplay.scrollHeight); } / * Ανακτά και τυπώνει την καλύτερη διαμόρφωση αντίστασης * στόχος - τιμή αντίστασης στόχου * numComp - συνολικός αριθμός αντιστάσεων που επιτρέπεται να χρησιμοποιηθούν για την επίτευξη στόχου val * compVals - συστοιχία τιμών αντίστασης * / αντίσταση λειτουργίας (στόχος, numComp, compVals) { // μήκος τιμών αντίστασης var num_res = compVals.length; // εκτελέστε όλο τον πιθανό αριθμό στοιχείων για (var i = 1; i <= numComp; i ++) {var data = ; resCombination (compVals, num_res, i, 0, data, target); } var units = document.getElementById ("Select_unit"). τιμή; // εκτύπωση αποτελεσμάτων outputStr = "Closest Value:" + closeest_val.toFixed (3) + "" + μονάδες + ""; outputStr + = "Διαφορά:" + πλησιέστερη_διαφορά.τοΕπίλυση (3) + "" + μονάδες + ""; outputStr += "Διαμόρφωση αντίστασης:"; για (var i = 0; i <numComp; i ++) {if (i <close.length) {outputStr + = "R" + i + "=" + πλησιέστερα + "" + μονάδες + ""; if (i+1 <close.length) {if (ser_par_config [i+1]) outputStr+= "||"; else outputStr + = " +"; }} else break? }} /* Υπολογίζει τον καλύτερο συνδυασμό αντιστάσεων για την επίτευξη μιας τιμής στόχου. * res - πίνακας εισόδου τιμών αντίστασης * num_res - μέγεθος πίνακα εισόδου τιμών αντίστασης * num_comb - αριθμός επιτρεπόμενων αντιστάσεων * δείκτης - δείκτης χτένας * χτένα - συστοιχία τρέχοντος συνδυασμού * στόχος - τιμή στόχου * Χωρίς τιμή επιστροφής - περνάει τον τρέχοντα καλύτερο συνδυασμό στις καθολικές τιμές */ συνάρτηση res Συνδυασμός (res, num_res, num_comb, index, comb, target) {// ο τρέχων συνδυασμός είναι πλήρης εάν (index == num_comb) {var ser_par_size = Math.pow (2, num_comb); // 2^(αριθμός στοιχείων) var ser_par = ; // πίνακας bool που καθορίζει σειριακό ή παράλληλο για κάθε στοιχείο var calc; // υπολογισμένη ισοδύναμη τιμή αντίστασης // βήμα μέσω κάθε δυνατής σειράς/παράλληλης ρύθμισης του τρέχοντος συνδυασμού για (var j = 0; j
Συνιστάται:
Φοβερό αναλογικό συνθεσάιζερ/όργανο που χρησιμοποιεί μόνο διακριτά εξαρτήματα: 10 βήματα (με εικόνες)
Φοβερό αναλογικό συνθεσάιζερ/όργανο που χρησιμοποιεί μόνο διακριτά συστατικά: Τα αναλογικά συνθεσάιζερ είναι πολύ δροσερά, αλλά και αρκετά δύσκολο να γίνουν. Έτσι ήθελα να κάνω ένα όσο το δυνατόν πιο απλό, ώστε η λειτουργία του να είναι εύκολα κατανοητή. Για να λειτουργήσει, χρειάζονται μερικά βασικά υπο-κυκλώματα: Ένας απλός ταλαντωτής με αντίσταση
Μεγάλη έκδοση του 1 Ohm Smd Resistor που παρέχει αντίσταση 1 Ohm χωρίς χρήση ηλεκτρονικών εξαρτημάτων .: 13 βήματα
Μεγάλη έκδοση του 1 Ohm Smd Resistor που παρέχει αντίσταση 1 Ohm χωρίς χρήση ηλεκτρονικών εξαρτημάτων .: Στην πραγματική ζωή οι αντιστάσεις smd είναι πολύ μικρές διαστάσεων σχεδόν 0,8mmx1,2mm. Εδώ, θα φτιάξω μια μεγάλη αντίσταση smd η οποία είναι πολύ τεράστια σε σύγκριση με την αντίσταση smd της πραγματικής ζωής
Perfect Planter - το πιο έξυπνο φυτό που έχετε δει ποτέ: 6 βήματα
Perfect Planter - το πιο έξυπνο φυτό που έχετε δει ποτέ: Αυτή η ζαρντινιέρα είναι ίσως μια από τις πιο έξυπνες ζαρντινιέρες που έχετε δει ποτέ. Όλα σε κομψή και μοντέρνα σχεδίαση, αυτή η ζαρντινιέρα διαθέτει αισθητήρα εδάφους που ανιχνεύει πότε το χώμα σας είναι στεγνό. Όταν είναι στεγνό, ενεργοποιείται μια περισταλτική αντλία και ποτίζει αυτόματα
Πώς να αποκτήσετε μουσική από ΣΧΕΔΟΝ ΟΠΟΙΑΔΗΠΟΤΕ (Haha) Ιστοσελίδα (Όσο μπορείτε να την ακούσετε, μπορείτε να την αποκτήσετε Εντάξει, αν είναι ενσωματωμένη στο Flash που μπορεί να μην είστε σε θέση) ΕΠΕΞΕΡΓΑΣΙΑ !!!!! Προστέθηκαν πληροφορίες: 4 βήματα
Πώς να αποκτήσετε μουσική από ΣΧΕΔΟΝ ΟΠΟΙΑΔΗΠΟΤΕ (Haha) Ιστοσελίδα (Όσο μπορείτε να την ακούσετε μπορείτε να την αποκτήσετε … Εντάξει, αν είναι ενσωματωμένη στο Flash που μπορεί να μην είστε σε θέση) ΕΠΕΞΕΡΓΑΣΙΑ !!!!! Προστέθηκαν πληροφορίες: αν πάτε ποτέ σε έναν ιστότοπο και παίζει ένα τραγούδι που σας αρέσει και το θέλετε τότε εδώ είναι το διδακτικό για εσάς δεν φταίω εγώ αν μπερδέψετε κάτι (ο μόνος τρόπος που θα συμβεί είναι αν αρχίσετε να διαγράφετε πράγματα χωρίς λόγο ) κατάφερα να αποκτήσω μουσική για
Πού να βρείτε ηλεκτρονικά εξαρτήματα και να επιλέξετε LED: 5 βήματα
Πού να αποκτήσετε ηλεκτρονικά εξαρτήματα και να επιλέξετε μια λυχνία LED: Αυτό το με οδηγίες είναι να δείξει πού πηγαίνει ένας μηχανικός σχεδιασμού υλικού για να βρει ανταλλακτικά. Απευθύνεται σε άτομα που ψάχνουν να ασχοληθούν με τα ηλεκτρονικά ως χόμπι και δεν ξέρουν πού να βρουν πράγματα. Θα περάσω επίσης από ένα LED παράδειγμα για να