Buongiorno amanti fai da te! Oggi assembliamo un semplice telemetro Arduino Pro Mini. Il dispositivo è in grado di misurare una distanza da 2 a 400 cm. L'errore di questo dispositivo raggiunge solo +/- 1-5 cm, a seconda della distanza misurata.
Strumenti e materiali
-Arduino Pro mini
Sensore HC-04
- Indicatore su tm1637
-Wire (ho - MGTF 0.12)
-Programmator
-Custodia in plastica
Batteria ricaricabile
-Piccolo interruttore
- Scheda di ricarica su TP4056
-Superkley
-Saldatura
-Pripoy
-Kanifol
Trapano, trapano, ecc.
Primo passo. Schema:
Secondo lo schema, tutto è semplice, senza aggiunte.
Passaggio 2. Preparazione del caso:
Per prima cosa proviamo il sensore e facciamo due fori per 15 mm.
Quindi, praticare un foro per un connettore micro-usb con un trapano da 3-3,5 mm.
Selezioniamo un trapano per il diametro dell'interruttore e trapano.
Sul coperchio creiamo una "finestra" per l'indicatore a sette segmenti (nella foto senza elaborazione) e finiamo tutte le irregolarità con un file.
Passaggio 3. Firmware:
Nello schizzo, le variabili che possono essere regolate per te sono evidenziate. Tutto il codice è commentato.
#include // librerie per il lavoro
#include
// ------------- Per configurare --------------------------------- --------------------------------
bool Long = 0; // 0 - misura la lunghezza dal sensore
// 1 - misura la lunghezza dalla parete dell'alloggiamento, che è opposta al sensore
unsigned int corpus = 10; // distanza dal sensore alla parete della cassa opposta (in centimetri)
#define CLK 2 // pin da connettere
#define DIO 3
#define TRIG 4
#define ECHO 5
// ------------------------------------------------ ----------------------------------------------
unsigned int impulse = 0; // variabili per il calcolo
unsigned int sm = 0;
GyverTM1637 disp (CLK, DIO);
void setup () {
pinMode (TRIG, OUTPUT); // imposta come output
pinMode (ECHO, INPUT); // imposta come input
disp.brightness (7); // luminosità 0-7
disp.point (0); // spegni i due punti
disp.clear (); // cancella l'indicatore
}
void loop () {
digitalWrite (TRIG, HIGH); // fornisce 5 volt
delayMicroseconds (10); // ritardo di 10 microsecondi
digitalWrite (TRIG, LOW); // serve 0
impulse = pulseIn (ECHO, HIGH); // misura la lunghezza dell'impulso
sm = impulso / 58; // converti in centimetri
if (Long == 1) {// controlla le impostazioni
sm = sm + corpus;
}
if (sm <= 2) {// zero valori falsi
sm = 1;
}
if (sm> = 405) {
sm = 1;
}
int intero = sm / 10;
int decimale = sm% 10;
decimale = decimale * 10;
disp.displayClock (intero, decimale); // output all'indicatore
ritardo (300); // ritardo 0,3 sec. tra valore in uscita
}
Quindi, collegare il programmatore e flash MK.
Fase quattro: assemblaggio:
Poiché il dispositivo funziona a batteria, non è necessario alcun costo aggiuntivo. Pertanto, sulla scheda Arduino, abbiamo saldato i LED e il pulsante di ripristino (per ridurne le dimensioni).
Incollare la batteria sul corpo sulla supercolla. Incolliamo la scheda di ricarica sulla batteria, installiamo l'interruttore e saldiamo tutto secondo lo schema.
Incolliamo il sensore sulla custodia e saldiamo tutto secondo lo schema: prima c'era l'idea di attaccare la scheda su nastro biadesivo, ma poi si è deciso di incollarla sulla supercolla. L'indicatore può essere avvitato o incollato.
Passaggio 5. Test:
Nota: il quarto segmento visualizzerà sempre 0. Questo per garantire che l'ultimo segmento non sia vuoto. Si scopre che se la lettura è 270, ciò significa che la distanza è 27 cm.
A dire il vero, la testimonianza può essere verificata con il sovrano.