A Kolokolov-Shchedrin mélyvízi rendszer újrahasznosítása. Különbségek az eredeti rendszertől:
1. Nincsenek kristály oszcillátorok a k561 .. chipen és a 32 kHz kvarcon. A 32 kHz-es jel adja az Arduino Pro Mini-t.
2. Több 561-es sorozatú mikroáramkör hangjelző áramkörei szintén nincsenek jelen, Arduino szintén hangot ad a célnak (És azt kell mondanom, hogy kiváló hangjelzés, a szerző vázlatához képest).
3. A tápfeszültséget 12v egypoláris feszültség (ólom-sav akkumulátor) táplálja.
4. Állítsa be az érzékenységet a gombokkal. Az ADC skála 0 és 1023 között a válaszküszöb 1 és 38 között állítható (az érték a vázlatban könnyen megváltoztatható).
A legfontosabb, hogy meg szeretném mutatni ebben a cikkben, hogy lehetséges az MD-k összeszerelése Arduino-nál, az érzékenységnél nem alacsonyabb az eredetinél (ez azért működött, mert az eredeti áramkör eredetiit 10 darab sorrendben gyűjtötték össze, tehát van összehasonlításhoz szükséges anyag). Eredeti áramkör:
Amikor először elkezdtem dolgozni az Arduino-val, annyira lelkes voltam, hogy azt hittem, hogy bármilyen fémdetektor áramkört megtalálhatom és összeállíthatom az internetről az Arduinóban, amit könnyen megtalálhatok a hatalmas szeméttelepen. Elvileg így derült ki, de az áramkörök frekvenciaszámlálón alapultak, amely nem tette lehetővé a valóban jó tartomány elérését. Néhány gyermekjáték és a toll tesztje + próbál pénzt keresni kezdőknek. Az MD eredetije egy valódi munkás ló, amely lehetővé teszi, hogy nagy tárgyakat 2 m távolságra találjon (lásd a Kolokolov-Shchedrin könyvet a Google-ban). Nincs adat a transzformált md-ről. Remélem, hogy megjelenik az MD és Arduino rajongói támogatásával. A rendszer együttműködött Arduino Uno-val és Arduino Pro Mini-vel.
A linket ezenkívül ismerteti az MD születésének folyamata a Forrasztópáka honlapján, amely több mint egy éve tartott és a szerzőt arra kényszerítette, hogy tanulmányozza a programozási csatornát. Lehet, hogy a vázlat valakinek nyomorultnak tűnik - örömmel fogadom el a FIX-eket.
Jelenleg van egy vázlat, amely lehetővé teszi az érzékenységi akadály beállítását (a 7. tű csap +1 az akadályhoz, a 8–1 tű az akadályhoz). .
Arduino a mini 5v, 16MHz, ATmega168 körül és a kijelző ezeket használta. A skála mellett található a Mini SD-adapter
Mint már említettük, a 1602 86 rubelt, a ProMini pedig 82 rubelt fizet. Ha szeretné, általában meztelen ATmega168-at is készíthet, kidolgozhat neki egy táblát, és a vázlatot közvetlenül rá tudja tölteni.És így például a konnektor segítségével telepítettem anya-apa az MD kártyára. A képen Arduino 6 tűs dugója látható, amelyen keresztül a vázlatokat közvetlenül a táblára öntötték.
Sketch-MD.Rx-Tx.ProMini.SrednjajaTochkaRegBar.ino
// A3 analóg bemenet voltmérőhöz
// A4 analóg bemenet a jelhez
// a zook következtetése
// 9 - 31200 Hz kimeneti frekvencia
#include
Folyadékkristályos LCD (12, 11, 5, 4, 3, 2);
z1 byte byte [8] = {// elem ikon
0b01100, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110};
int országok: 0; // változó a skálaszint érték tárolására
int voltag = 0; // változó a feszültségérték tárolására
int noll = 0; // változó a középpont értékének tárolására
#defináljon NUM_SAMPLES 10 // 10 analóg mintát 1 másodperc alatt
int összeg = 0; // a vett minták összege
int nap = 0; // ugyanaz, de 10-el osztva
aláírhatatlan char minta_szám = 0; // az aktuális minta száma
úszó feszültség = 0,0; // számított feszültség
const int gomb1 = 7; // akadály plusz gomb
const int gomb2 = 8; // akadály-mínusz gomb
int i = 5; // akadály
érvénytelen beállítás () {
lcdbegin (16, 2); // a képernyő inicializálása
lcd.setCursor (1, 0);
lcd.setCursor (10, 1);
lcd.print ("Rx-Tx");
késés (3000);
lcd.clear ();
TCCR1A = TCCR1A & amp; 0xe0 | 2;
TCCR1B = TCCR1B & amp; 0xe0 | 0x09;
analogWrite (9, 126); // 10-es érintkezőn PWM = 50% f = 31200Hz
lcd.createChar (1, z1);
}
void loop () {
int buttonState1 = HIGH; // A gomb állapota egy
int buttonState2 = HIGH; // Két gomb állapot
minta_szám = 0; // alaphelyzetbe állítja a kiegészítések számának kontúrját
összeg = 0; // visszaállítja a 10 kiegészítés összegét
míg (mintaszámláló & lt; NUM_SAMPLES) {
összeg + = analogRead (A4); // a következő mérést hozzáadjuk az összeghez
minta_szám ++; // az egységet hozzáadják a mérési számhoz
sun = összeg / 10;} // 10 mérésből keresse meg az átlagértéket
noll = analogRead (A3) / 2; // középpontbeli teljesítmény
úszófeszültség = térkép (analogRead (A3), 0,1023,0,1500) /100,0;
// Az A3 bemeneten épített voltmérő
if (nap> noll + i) {megyék = térkép (nap, noll + i, noll * 2 - 250, 9, 14);
// ha a kapott eredmény a skála 9-15. szegmensében van
hang (6, megyék * 100);}
if (sun <= noll - i) {countleds = map (sun, 116, noll - i, 0, 7);
// ha a kapott eredmény a skála 0-7 szegmense
hang (6, * 50); }
if (sun & noll & sun = = noll - (i-1)) {countleds = 7;
noTone (6); } // virtuális ZERO szigete (7 szegmens)
if (sun & noll & sun; = noll + (i-1)) {countleds = 8;
noTone (6); } // virtuális ZERO-skála szigete (8 szegmens)
{lcd.setCursor (számol, 0); // állítsa a kurzort a mezők oszlopára, 0 sor
lcd.print ("\ xff"); // kitöltött ikon
lcd.setCursor (0, 1); // lépjen a 2. sorba, 0. oszlop
lcd.print (char (1)); // Akkumulátor ikon jelzése
lcd.setCursor (1, 1); // lépés a feszültség jelzésére
lcd.print (feszültség); // feszültség
lcd.setCursor (7, 0); // 8. oszlop, 1. sor
if (sun & noll) {lcd.print ("{");} // print
lcd.setCursor (8, 0); // 9. oszlop 1. sora
if (sun & noll) {lcd.print ("}");} // print
lcd.setCursor (7, 1);
lcd.print ("B =");
lcd.setCursor (9, 1); // 11. oszlop 2. sor
lcd.print (i); // akadály
lcd.set kurzor (13, 1); // 13. oszlop 2. sor
lcd.print (nap); // nyomtassa ki az ADC érték átlagértékét
késleltetés (100); // várj
buttonState1 = digitalRead (gomb1); // Olvassa el az 1. gomb állapotát
buttonState2 = digitalRead (button2); // Olvassa el a 2. gomb állapotát
if (buttonState1 == LOW) {i = i + 1; késleltetés (50);}
// A gomb megnyomásakor az akadály 1-re növekszik. Késleltetés 50
if (buttonState2 == LOW) {i = i - 1; késleltetés (50);}
// A gomb megnyomásakor az akadály 1-rel csökken. Késleltetés 50
if (i <1) {i = 1;} // Az akadály alsó határa
if (i> 38) {i = 38;} // Az akadály felső határa
lcd.clear ();
}
}
Az autó nem használt: A TL074 utolsó két eleme üresjáratban maradt. De az áramkörön és a kártyán vannak. Érdemes kicsit később üzembe helyezni őket. Hiszem, hogy elértem a célomat. A kijelzőegység csodálatosan működik. Minden más az MD-től függ.