» elektronik » Arduino »Arduino'da kapasitif rölelerin yazılım uygulaması

Arduino'da Kapasitif Röle Yazılım Uygulaması





Instructables'ın yazarı ShaneCunningham takma adı altında kapasitif bir röle uygulamayı teklif ediyor Arduino yazılımı. Ek parçalardan sadece kapasitif sensörler ve dirençler kendileri gerekli olacaktır. Harici donanım üreteçleri yok. Yazılımda ev yapımı yer bu ve bu üçüncü taraf gelişmeler.

Kapasitif sensörler - iki katmanlı, üç pimli. Usta onları yapar kendin yap. 300 mm kenarlı bir karton kare folyo ile yapıştırılır - bu, ortak tele bağlı çıkış olacaktır. Üstüne 100 mm kenarlı, ayrıca folyo ile yapıştırılmış bir karton kare yerleştirilir. Üzerinde, folyo tabakası dikdörtgen darbelerin bir osilogramına benzer bir kontur boyunca iki kısma ayrılır. Bunlar iki sonuç daha olacak.





Üretilen sensörlerin her biri 1 MΩ dirençle donatılmıştır. Bir sensör varsa, aşağıda gösterildiği gibi bağlayın. Bunlardan birkaçı varsa, Arduino sonuçlarını - sensör başına iki tane - kullanmanız ve bunu çizimde dikkate almanız gerekecektir.



Sihirbazın yaptığı şey:






Seri arayüz aracılığıyla sensörden alınan verileri gönderen bir çizim oluşturur:

///////////////////////////////////////

void loop () {
uzun toplam1 = cs_4_2. kapasitif Sensör (30);

Serial.println (toplam 1);

/////////////////////////////////////////

Seri Üzerinden İşleme ile İletişim Kodu

* /

int vall = 0;

int val2 = 0;

int val3 = 0;

int inByte = 0;

Kapasitif Sensör cs_4_2 = Kapasitif Sensör (4.2); // 4 ve 2 pinleri arasında 1M direnç, pin 2 sensör pinidir, istenirse bir tel ve folyo ekleyin

Kapasitif Sensör cs_4_6 = Kapasitif Sensör (4.6); // 4 ve 6 pinleri arasında 1M direnç, pin 6 sensör pinidir, bir tel ve folyo ekleyin

void setup () {

cs_4_2.set_CS_AutocaL_Millis (0xFFFFFFFF); // kanal 1'deki otomatik kalibrasyonu kapat - tıpkı örnek olarak

cs_4_6.set_CS_AutocaL_Millis (0xFFFFFFFF);

Serial.begin (9600);

pinMode (2, INPUT);

pinMode (6, GİRİŞ);

// pinMode (8, INPUT);

installContact (); // alıcı yanıt verene kadar iletişim kurmak için bayt gönder

void loop () {

// geçerli bir bayt alırsak, girişleri okuyun:

eğer (Seri.available ()> 0) {

// gelen baytı al:

inByte = Seri.read ();

// uzun başlangıç ​​= milis ();

uzun toplam1 = cs_4_2. kapasitif Sensör (30);

toplam uzun2 = cs_4_6. kapasitif Sensör (30);

// uzun toplam3 = cs_4_8.KapasitifSensör (30);

// gecikme (10);

val1 = harita (toplam1, 700, 2300, 0, 255); // kalibrasyondan gelen sensör değerleri buraya eşlenir - 700'de (4 "uzakta) insan yakınlığını tespit etmeye başlar, el neredeyse sensöre 2300'de dokunmaya başlar

val2 = harita (toplam2, 30, 175, 0, 255);

// val3 = harita (toplam3, 0, 13000, 0, 255);

Serial.write (val1);

Serial.write (val2);

//Serial.write(val3);

//Serial.print(val1);

// gecikme (50);

}

void kurulmasıContact () {

while (Serial.available () <= 0) {

Serial.print ('A');

gecikme (300); }


Sihirbaz, İşleme ortamında bir PC'ye gelen bilgilerin daha ayrıntılı analizini organize eder.












Ancak bu sadece deneyin başlangıcıdır. Gelecekte, Arduino sensörlerinden gelen sinyalleri işlemek için kullanabilirsiniz - aynı şey veya kaynakları yeterli değilse, bir tane daha.
0
0
0

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

Okumanızı tavsiye ederiz:

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