İyi günler aşıklar DIY! Bugün üzerinde basit bir telemetre monte edeceğiz Arduino Pro Mini. Cihaz 2 ila 400 cm arasında bir mesafeyi ölçebilir Bu cihazın hatası ölçülen mesafeye bağlı olarak sadece +/- 1-5 cm'ye gelir.
Araçlar ve malzemeler
-Arduino Pro mini
Sensör HC-04
- TM1637 üzerindeki gösterge
Tel (Bende - MGTF 0.12)
-Programmator
-Plastik gövde
-Li-on pil
-Küçük anahtar
- TP4056 üzerinde şarj kartı
-Superkley
Havya
-Pripoy
-Kanifol
Matkap, matkap vb.
Birinci adım.
Şemaya göre, her şey basit, eklemeler olmadan.
İkinci Adım: Vaka Hazırlama:
İlk önce sensörü dener ve 15 mm için iki delik açarız.
Ardından, mikro usb konektörü için 3-3,5 mm'lik bir delik açın.
Anahtarın çapı ve matkap için bir matkap seçiyoruz.
Kapakta, yedi bölümlü gösterge için (işlenmeyen fotoğrafta) bir “pencere” yaparız ve tüm düzensizlikleri bir dosyayla bitiririz.
Üçüncü Adım.
Çizimde, kendiniz için ayarlanabilen değişkenler vurgulanmıştır. Tüm kodlar yorumlanmıştır.
#include // iş kütüphaneleri
#include
// ------------- Yapılandırmak için --------------------------------- --------------------------------
bool Uzun = 0; // 0 - sensörden uzunluğu ölçün
// 1 - sensöre zıt olan muhafaza duvarından uzunluğu ölçün
imzasız int corpus = 10; // sensörden karşı kasa duvarına olan mesafe (santimetre cinsinden)
#define CLK 2 // bağlanmak için pinler
#define DIO 3
#define TETİK 4
#define ECHO 5
// ------------------------------------------------ ----------------------------------------------
işaretsiz int impulse = 0; // hesaplama değişkenleri
işaretsiz int sm = 0;
GyverTM1637 disp (CLK, DIO);
void setup () {
pinMode (TRIG, ÇIKIŞ); // çıktı olarak ayarla
pinMode (ECHO, INPUT); // giriş olarak ayarla
disp. parlaklık (7); // parlaklık 0-7
disp noktası (0); // iki nokta üst üste işaretini kapat
disp.clear (); // göstergeyi temizle
}
void loop () {
digitalWrite (TRIG, YÜKSEK); // 5 volt besleme
gecikme Mikrosaniye (10); // 10 mikrosaniye gecikme
digitalWrite (TRIG, DÜŞÜK); // servis yapın 0
dürtü = pulseIn (ECHO, YÜKSEK); // darbe uzunluğunu ölçün
sm = dürtü / 58; // santimetreye dönüştür
eğer (Uzun == 1) {// ayarları kontrol edin
sm = sm + korpus;
}
if (sm <= 2) {// sıfır yanlış değer
sm = 1;
}
eğer (sm> = 405) {
sm = 1;
}
int tamsayı = sm / 10;
int ondalık = sm% 10;
ondalık = ondalık * 10;
disp.displayClock (tamsayı, ondalık); // göstergeye çıktı
gecikme (300); // gecikme 0,3 sn. değer çıkışı arasında
}
Ardından, programlayıcıyı bağlayın ve MK'yi flaş edin.
Dördüncü Adım Montaj:
Cihaz pil gücüyle çalıştığından fazladan şarj etmeye ihtiyacımız yok. Bu nedenle, Arduino kartında LED'leri ve sıfırlama düğmesini lehimliyoruz (boyutu küçültmek için).
Superglue üzerinde pili vücuda yapıştırın. Şarj kartını aküye yapıştırıyoruz, anahtarı takıyoruz ve her şeyi şemaya göre lehimliyoruz.
Sensörü kasaya yapıştırıyoruz ve her şeyi şemaya göre lehimliyoruz.İlk önce tahtayı çift taraflı bant üzerine yapıştırma fikri vardı, ancak daha sonra süper yapıştırıcıya yapıştırmaya karar verildi. Gösterge vidalanabilir veya yapıştırılabilir.
Beşinci Adım Testi:
Not: dördüncü segment her zaman 0 görüntüler. Bu, son segmentin boş olmadığından emin olmak içindir. Okumanın 270 olduğu ortaya çıkıyor, o zaman mesafe 27 cm'dir.
Emin olmak için, tanıklık cetvelle doğrulanabilir.