» elektronik » Arduino »Arduino'da basit telemetre

Basit Arduino Uzaklık Ölçer


İ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.
8
8.3
7.6

Yorum ekle

    • gülümsegülümsemelerxaxatamamdontknowyahoonea
      patronçizikaptalevetevet-evetagresifgizli
      üzgünümdansdance2dance3pardonyardımiçecekler
      Durarkadaşlariyigoodgooddüdükbaygınlıkdil
      dumanzırıltıcraybeyanalaycıDon-t_mentionindir
      ısıöfkelilaugh1mdatoplantımoskingnegatif
      Not_ipatlamış mısırcezalandırmakokumakkorkutmakkorkutuyorarama
      alaythank_youbuto_clueumnikakutanlaşmak
      kötübeeeblack_eyeblum3kızarmakövünçcan sıkıntısı
      sansürlüşakasecret2tehdit etmekzaferyusun_bespectacled
      shokrespektlolPrevedkarşılamaKrutoyya_za
      ya_dobryiyardımcıne_huliganne_othodiFludyasakyakın
3 yorumlar
Konuk George
Proje "AlexGiver" çalındı, bu yüzden yazar "sıçan" !!!
ilk
Ek ücret ödememize gerek yoktur. Bu nedenle tahtada Arduino LED'leri lehimleyin
, ama sonra aptalca çok daha fazla tasarruf ettik
dördüncü segmentte daima 0 görüntülenir.

Emin olmak için, tanıklık cetvelle doğrulanabilir.
Peki sonuçlar ne?

Sunulan formdaki projenin kendisi sadece eğitim amaçlıdır, pratik önemi yoktur.
Aslan burcu
Bu sensörle çok şey denedim, maalesef ölçümünün doğruluğu büyük ölçüde ölçüm düzleminin cihazın düzlemine dik olmasına bağlıdır.

Okumanızı tavsiye ederiz:

Akıllı telefon için verin ...