Ανακύκλωση του σχήματος βαθιάς ύδρευσης Kolokolov-Shchedrin Διαφορές από το αρχικό σχήμα:
1. Δεν υπάρχει ΟΧΙ κρυσταλλικός ταλαντωτής στο chip k561 .. και 32 kHz χαλαζία. Το σήμα 32 kHz δίνει το Arduino Pro Mini.
2. Τα κυκλώματα ειδοποίησης ήχου σε διάφορα μικροκυκλώματα της σειράς 561 επίσης απουσιάζουν - φωνάζουν και τους στόχους, τον Arduino (και πρέπει να πω, εξαιρετικές φωνές σε σύγκριση με το κύκλωμα του συγγραφέα).
3. Powered με μονοπολική τάση 12v (μπαταρία μολύβδου-οξέος).
4. Ρυθμίστε την ευαισθησία με τα κουμπιά. Με την κλίμακα ADC από 0 έως 1023, το όριο απόκρισης είναι ρυθμιζόμενο από 1 έως 38 (η τιμή μπορεί εύκολα να αλλάξει στο σκίτσο).
Το σημαντικότερο ήταν ότι θα ήθελα να δείξω σε αυτό το άρθρο ότι είναι δυνατή η συναρμολόγηση MD σε Arduino όχι κατώτερη από το πρωτότυπο σε ευαισθησία (αυτό εξελίχθηκε, επειδή τα πρωτότυπα του αρχικού κυκλώματος συλλέχθηκαν με τη σειρά των 10 τεμαχίων, έτσι υπάρχει υλικό για σύγκριση). Αρχικό κύκλωμα:
Όταν άρχισα να δουλεύω με τον Arduino, ήμουν τόσο ενθουσιώδης που σκέφτηκα ότι θα μπορούσα να βρω και να συναρμολογήσω οποιοδήποτε κύκλωμα ανιχνευτή μετάλλων από το Διαδίκτυο στο Arduino που θα μπορούσα εύκολα να βρω στο τεράστιο χωματερή σκουπιδιών. Κατ 'αρχήν, αποδείχθηκε έτσι, αλλά τα κυκλώματα βασίστηκαν σε έναν μετρητή συχνότητας, ο οποίος δεν επέτρεπε την επίτευξη μιας πραγματικά καλής γκάμας. Ορισμένα παιδικά παιχνίδια και μια δοκιμή του στυλό + επιχειρεί να κερδίσει χρήματα για αρχάριους. Το πρωτότυπο αυτού του MD είναι ένας πραγματικός άξονας εργασίας που σας επιτρέπει να βρείτε μεγάλα αντικείμενα σε απόσταση 2 μέτρων (δείτε το βιβλίο Kolokolov-Shchedrin στο Google). Δεν υπάρχουν στατιστικά στοιχεία για το μετασχηματισμένο md. Ελπίζω να εμφανιστεί με την υποστήριξη των οπαδών του MD και του Arduino. Το πρόγραμμα συνεργάστηκε με τους Arduino Uno και Arduino Pro Mini.
Περαιτέρω στο σύνδεσμο εκτίθεται η διαδικασία γέννησης αυτού του MD στην ιστοσελίδα του συγκολλητικού σιδήρου, η οποία διήρκεσε περισσότερο από ένα χρόνο και ώθησε τον συγγραφέα να σπουδάσει duin προγραμματισμού. Ίσως το σκίτσο να φαίνεται άθλια σε κάποιον - θα δεχθώ με χαρά τα FIXES σας.
Προς το παρόν, υπάρχει ένα σκίτσο που σας επιτρέπει να ρυθμίσετε το φράγμα ευαισθησίας (καρφίτσα 7 douins +1 στο φράγμα, καρφίτσα 8 -1 στο φράγμα). .
Arduino για μίνι 5v, 16MHz, ATmega168 και η οθόνη που χρησιμοποιούνται αυτά. Δίπλα στην κλίμακα είναι ο προσαρμογέας Mini SD
Όπως ήδη αναφέρθηκε 1602 κοστίζει 86 ρούβλια, ProMini - 82 ρούβλια. Αν θέλετε, μπορείτε γενικά να πάρετε ένα γυμνό ATmega168, να αναπτύξετε ένα σκάφος για αυτό και να γεμίσετε το σκίτσο απευθείας σε αυτό.Έτσι, για παράδειγμα, εγκατέστησα μαμά-μπαμπά στην κάρτα MD χρησιμοποιώντας τον σύνδεσμο. Η φωτογραφία δείχνει το βύσμα 6 ακίδων του Arduino, μέσω του οποίου τα σκίτσα χύθηκαν απευθείας πάνω στον πίνακα.
Sketch-MD.Rx-Tx.ProMini.SrednjajaTochkaRegBar.ino
// Αναλογική είσοδος A3 για βολτόμετρο
// Αναλογική είσοδος A4 για σήμα
// 6- συμπέρασμα του zook
// 9 - συχνότητα εξόδου 31200 Hz
#include
Υγρό κρύσταλλο lcd (12, 11, 5, 4, 3, 2).
byte z1 [8] = {// εικονίδιο μπαταρίας
0b01100, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110}.
int countleds = 0; // μεταβλητή για να αποθηκεύει την τιμή της κλίμακας
int voltag = 0; // μεταβλητή για την αποθήκευση της τιμής τάσης
int noll = 0; // μεταβλητή για να αποθηκεύει την τιμή του μεσαίου σημείου
#define NUM_SAMPLES 10 // 10 αναλογικά δείγματα για ανάγνωση σε 1 δευτερόλεπτο
int sum = 0; // σύνολο των δειγμάτων που ελήφθησαν
int sun = 0; // ίδιο, αλλά διαιρούμενο με 10
unsigned char sample_count = 0; // τρέχων αριθμός δείγματος με
τάση πλωτήρα = 0,0; // υπολογισμένη τάση
const int button1 = 7; // barrier plus button
const κουμπί int2 = 8; // barrier-minus κουμπί
int i = 5; // φράγμα
άκυρη ρύθμιση () {
lcd.begin (16,2). // αρχικοποίηση εμφάνισης
lcd.setCursor (1, 0).
lcd.setCursor (10,1).
lcd.print ("Rx-Tx").
καθυστέρηση (3000).
lcd.clear ();
TCCR1A = TCCR1A & 0xe0 | 2.
TCCR1B = TCCR1B & 0xe0 | 0x09;
analogWrite (9, 126); // στον ακροδέκτη 10 PWM = 50% f = 31200Hz
lcd.createChar (1, z1).
}}
void loop () {
πλήκτρο intState1 = HIGH; // Η κατάσταση του κουμπιού είναι μία
κουμπί intState2 = HIGH; // Κατάσταση δύο κομβίων
sample_count = 0; // επαναφέρετε το περίγραμμα του αριθμού των προσθηκών
άθροισμα = 0. // επαναφέρετε το σύνολο των 10 προσθηκών
ενώ (sample_count & lt_ NUM_SAMPLES) {
άθροισμα + αναλογικόΔιαβάστε (A4); // η επόμενη μέτρηση προστίθεται στο άθροισμα
sample_count ++; // η μονάδα προστίθεται στον αριθμό μέτρησης
sun = sum / 10;} // βρείτε τη μέση τιμή από 10 μετρήσεις
noll = αναλογικόΔιαβάστε (A3) / 2; // μεσαία ισχύ
τάση πλωτήρα = χάρτης (αναλογική ανάγνωση (A3), 0,1023,0,1500) /100,0;
// Βολτόμετρο ενσωματωμένο στην είσοδο A3
εάν (ήλιος & gt; = noll + i) {countleds = χάρτης (ήλιος, noll + i, noll * 2 - 250, 9, 14)?
// εάν το ληφθέν αποτέλεσμα είναι στο 9-15ο τμήμα της κλίμακας
τόνος (6, countleds * 100),}
αν (ήλιο & lt; = noll - i) {countleds = χάρτης (ήλιος, 116, noll-i, 0, 7)?
// αν το αποτέλεσμα που προκύπτει είναι 0-7 τμήμα της κλίμακας
τόνος (6, αρίθμηση * 50); }}
αν (ήλιο & lt; noll & amp; sun & gt; = noll - (i-1)) {countleds = 7;
noTone (6); } // νησίδα της εικονικής ZERO (7 τμήματος)
εάν (sun & gt; noll & amp; & sun 38) {i = 38}} // Το ανώτερο όριο του φράγματος
lcd.clear ();
}}
}}
Δεν είχα χρησιμοποιήσει το αυτοκίνητο. Τα τελευταία δύο στοιχεία του TL074 ήταν αδρανή. Αλλά στο κύκλωμα και στο σκάφος είναι. Μπορεί να θέλετε να τους φέρετε σε κατάσταση λειτουργίας λίγο αργότερα. Πιστεύω ότι έχω επιτύχει το στόχο μου. Η μονάδα προβολής λειτουργεί υπέροχα. Όλα τα υπόλοιπα εξαρτώνται από το MD.