Arduino tabanlı RGB kitabı. Bir arduinoya bir fotodirenci ve bir ışık sensörü Robimo "akıllı lamba" olan bir robotu bağlama

Elbette, bir çocuğun derisinin bir hayali vardı (bir değil). Sanki gecenin bir saatinde bir çocuğun ruhunu yeniden ele geçirmek istercesine bu duyguları tahmin etmeye çalışabilirsiniz, çünkü gözlerdeki o uzak, tanıdık parıltı...

Şu anda BDUIR'in 4. dersinde çalışıyorum ve bize devreden bir ders projesinin kağıt üzerinde değil, bir lazyaku üzerinde yapılabileceğini söyleseler, aklıma geldi: bir kitap, benim için çok sıcak. bir çocuk, kendin yapabilirsin. Üstelik karanlık saatte odayı aydınlatan sadece bir nesne değil, her türlü ruh hali için kolayca kontrol edilebilen bir eklentidir. Neden? Ellerin yardımıyla renk değiştirme olasılığını eklemeye çalıştım: el komodine ne kadar yaklaştırılırsa, renklerden biri (RGB) daha parlak yanacaktır. Ayrıca uzaktan kumanda paneli yardımıyla bir tamirci ile bakmak istedim.

Bu fikri cxem.net'te gördüğümü biliyorum. Kısaca, hangi popoda bir RGB matrisi vardı, ek bir ses kaydı için olduğu gibi, ultrasonik sensörler kuruldu. Ale, matrisin tek gagada sonuna kadar parlaması gerektiğini düşündüm, kitabın her tarafı aydınlatsın istedim.

Şema öğesi hazırlama


Arduino mikrodenetleyicisine saygımı iade ettim. UNO benim fikrim için tek uygun seçenek çünkü platform en popüler ve pin sayısı çok fazla değil, Mega'nın üstüne başka bir şekilde hayatın sesini bağlayabilirsiniz, benim durumumda 12V, üstte Nano, üçüncü bir şekilde… sanırım iki noktada zupinit yapabilirsiniz. Platform, basitliği ve programlama kolaylığının yanı sıra mimari ve yazılım kodunun tanınması için tüm dünya arasında büyük popülaritesi ile bilinir.

Bu ücret hakkında daha ayrıntılı bilgi internette kolayca bulunabilir, bu nedenle makale aşırı pahalı değildir.

Otzhe, sisteme ana yardım. Gerekli:
- sensörler, sistem tarafından keruvannya'ya geçmek için yakі vіdstezhuvatimut vіdstan';
- uzaktan kumanda panelinden sinyalleri okumak için bir sensör;
- svitlodiody, yakі zabezpechuvatimu nebhіdnu işlevselliği svіllennya;
- Keruyuchiy bloğu, tüm sistemle keruvatime gibi.

Sensörler projeye uygun olduğundan, gerekli uzak dünyalar, her türlü şarkı rengi için kaplamalar: kırmızı, yeşil, mavi. Sensörler eli gece ışığına yaklaştırır, el şarkı sensörüne ne kadar yakın hareket ederse, renk o kadar güçlü, dünya o kadar uzaklaşır. Öncelikle el verirseniz renge daha az voltaj uygulanır ki bu da sensörün göstergesidir.

Şu anda en popüler uzak dünya Sharp GP2Y0A21YK ve HC-SR04'tür. Keskin GP2Y0A21YK Vіk-vipromіnjuvachem ve іk-priymachem'i donatırken: ilki benim için bir başkasını yakalamak için kullanılan bir dzherelom. Sensörün bu IR değişimi ile insan gözüyle görünmez ve böyle bir yoğunluk için kısa ömürlü değildir.

Ultrasonik sensör HC-SR04'e benzer şekilde, bu sensörde hem fazla hem de yetersiz olabilir. Zaferden önce tarafsızlık ve titrememe görülebilir. Ve nedolіki - aralarında daha küçük bir di ve zalezhnіh yarıçapı, aralarında - bazı aydınlatma türleri.

Yak sensörleri, vikoristan ultrasonik uzak HC-SR04 projesi için kullanılır.
İlke dії HC-SR04, ekolokasyon fenomeninin iyiliğine dayanmaktadır. Bu titreşimli titreşim, geçişe girdikten sonra sensöre dönen ve alıcıya kayıt olan akustik bir sinyal oluşturduğunda. Alandaki ultrason genişliğinin genişliğini bilerek (yaklaşık 340 m/s) sinyal ile alınan sinyal arasındaki o saatlik gecikmeyi akustik geçişe açmak kolaydır.

TRIG girişi, mikrodenetleyicinin çıkışına bağlanır. Bu visnovok'a 10 µs süreli darbeli bir dijital sinyal uygulamak gerekir. TRIG girişindeki sinyalde, sensör bir paket ultrasonik darbe gönderir. Giriş sinyalini aldıktan sonra, sensör, frekansı geçişle orantılı olan ECHO çıkışında bir darbe sinyali oluşturur.

IR sensörü. Bu sensörden, uzaktan algılama için gerekli olan bir sinyalin okunduğunu ve kodunun çözüldüğünü anlıyorum. TSOP18 kendi aralarında sadece frekans için titreşir. Proje için VS1838B TSOP1838 sensörü seçilmiştir.

Proje, aydınlatmanın alınacağı 3 ana renge ihtiyaç duyanlar hakkında konuşmak gerekirse, uygulamayı renk olsun, aydınlatma fikrine dayanıyordu: kırmızı, yeşil, mavi. Bu nedenle, belirlenen görevlere mucizevi bir şekilde uyan bir SMD 5050RGB ışık diyot modeli seçildi.

Ten ışığına uygulanan voltajın büyüklüğüne bağlı olarak, koku bu aydınlatmanın yoğunluğunu değiştirir. Svіtlodiod, bir direnç üzerinden buti bağlantılarından suçludur, aksi takdirde sadece yoga değil, Arduino'yu da kullanmak risklidir. Işık diyotundaki strumu makul bir değerde çevrelemek için direnç gereklidir. Sağda, ışık diyotunun dahili opiri zaten düşük olduğundan ve direnci kırmamak için böyle bir ses, ışığı yakan ışık diyotundan ve denetleyiciden geçecektir.

Projede galip gelen ışık yayan diyotlu kalaslar 12V'da yaşıyor.

Bağlantıda, "kablolu" olan ışık diyotlarındaki voltajın daha fazla 6V olması ve ömrü 5V hareket ediyormuş gibi düzenlemek gerekir, anahtar modunda devreye transistörler eklemek gerekir. BC547c modeline düşüyorum.

Unutanlar için n-p-n transistörünün çalışma prensibine kısaca bir göz atalım. Bu yüzden voltaj vermeyin, sadece tabanın ve emitörün kablolarını alın ve kapatın, sarmayın ve kısa devre yapmayın, ancak Om çıkışındaki bir direnç aracılığıyla, görüyorsunuz, tabanın voltajı- emiter sıfıra eşittir. Baba, temel yok. Transistör kapalı, kollektör gövdesi önemsiz derecede küçük, aynı koçanı. Ve burada transistörün istasyonda değiştirildiği görülüyor. Ön plandaki değirmene nasichennya denir: transistör tekrar bozulursa, başka bir yerde patlar. Böyle bir aşamada, döşemenin yayıcısı olan toplayıcının çalışması küçüktür, bu nedenle transistörü kollektör mızrağında gezinme olmadan açmak imkansızdır, anında yanar. Bu çok yüksek olduğunda, kollektör üzerindeki voltaj 0,3 ... 0,5V'nin altına düşebilir.

Bu iki istasyon en önemli ve en önemlisidir, bu durumda, transistör, rölenin ilk kontağı ile aynı anda anahtar modunda çalışıyorsa, galip gelirler. Böyle bir rejimin ana hissi, küçük taban strumunun, taban strumundan düzinelerce kat daha büyük olan büyük toplayıcı strum'u kontrol etmesidir. Toplayıcının büyük sesi, enerjinin dış dzherelinin rahunokunun ötesine geçer, ancak her şey є olarak adlandırılan strumdan daha güçlüdür. Cihazımız 12V ile çalışan 3 adet ışık diyotlu şerit olmak üzere 5V çalışma voltajına sahip mikro devrelidir.

Anahtar kademesinin çalışma modu bozuk. Işık diyotunun tam yoğunlukta yanması için tabanın payındaki direncin değerini gevşetmek gerekir. Rozrahunka yaparken bir akla sahip olmak gerekir, böylece strum'un mukavemet katsayısı, tabanın mümkün olan minimum strumunda toplayıcının mümkün olan maksimum strumunun özel rozpodil tipine göre daha büyük veya daha iyi olacaktır:

Bu nedenle, çubuklar 220V çalışma voltajı ile çalıştırılabilir ve taban rayı 5V voltajlı bir mikro devre ile kontrol edilebilir. Transistör kollektörde böyle bir voltajla korunursa, ışık sorunsuz yanacaktır.
Baz-verici geçişindeki voltaj düşüşü akılda 0,77V'dir, taban sesi 5mA'dır, kollektör sesi 0.1A'dır.
Baz direnç stoğundaki voltaj:

Ohm Yasası için:

Standart bir destek sırası için 8,2 kOhm'luk bir direnç seçilir. Rozrahunok kimin üzerinde bitti.

Dikkatimi, tesadüfen rastladığım bir soruna çevirmek istiyorum. IRremote Arduino kütüphanesini kullanırken mavi renk ayarı bir saat askıda kalıyordu. İnternette uzun bir araştırmadan sonra, Arduino modeli için zamanlayıcı 2'yi kilitlemek için kütüphanenin galip geldiği ortaya çıktı. Keruvannya için zamanlayıcılar, PWM çıkışları ile yenilir.

Zamanlayıcı 0 (sistem saati, PWM 5 ve 6);
Zamanlayıcı 1 (PWM 9 ve 10);
Zamanlayıcı 2 (PWM 3 ve 11).

Elimin tersinde mavi rengi ayarlamak için PWM 11 kullandım. Bu nedenle, onları yenebilecekleri için PWM, zamanlayıcılar ve üçüncü taraf kitaplıklarla çalışırken dikkatli olun. Github'un ana sayfasında bu nüans hakkında hiçbir şey söylenmemiş olması şaşırtıcı. Zamanlayıcı 1 ile satırı yorumlayabilir ve 2 yorumunu yapabilirsiniz.

Breadboard'daki bağlantı elemanları şöyle görünür:

Düzen üzerinde yapılan testlerden sonra “Elemanların tahtaya yerleştirilmesi” ve “Havya ile robot” aşamaları başladı. Bitmiş ödemenin ilk testinden sonra, bir düşünce sürünür: bir şeyler ters gitti. Ve burada iyi bilinen zengin aşama “Bir testçi ile biraz çalışma” başlıyor. Bununla birlikte, arızalar (birbirine lehimlenmiş kontakların serpilmesi) çabucak bozuldu ve son camın damarlarının ekseni beshketny bir ampul oldu.

Sağdaki Dali sadece gövdenin arkasında duruyordu. İlk sürüşten itibaren sensörlerimiz için açıklıkları olan kontrplak yapıldı. Arka kapak özel olarak znіmnoy idi, böylece bazhannya için ortanın manzarasının keyfini çıkarabilirsiniz, böylece çalışabilirsiniz. Ayrıca, yeniden programlamaya açık o yemeği ödeyin.

Gövde, iki bileşenli bir epoksi yapıştırıcı ile yapıştırılmıştır. Varto, daha önce incelememiş olanlar için bu yapıştırıcının özelliğinden bahsediyor. Bu yoldaş, iki okremikh єmnosti'de, zmіshuvannі vіstu yakіh vіdbuvaіє mittєva khіmіchna rektsіya ile sağlanır. Zmіshuvannya dіyati hızlı bir şekilde getirildikten sonra, en fazla 3-4 whilins. En uzak zafer için, yeni bir kısım eklemeliyiz. Peki nasıl tekrar etmeye çalışırsınız, benim için zevk, küçük porsiyonlarda zmіshuvat ve daha hızlı dіyati, düşünmek için bir saat o kadar zengin olmayacak. Bu varto için, vücudun nasıl yapıştırılacağını düşünmek için çok geç. Üstelik, bir kerede onu öldüremezsiniz.

Plakaları hafif diyotlarla sabitlemek için, kayanın üst kapağına bir tüp yerleştirildi, tüm dartlar mucizevi bir şekilde yak içinden geçti.

Yemek bir abajurun arkasında içildiyse, çocuklukta onu basit bir iplikten nasıl soyduğumu, temel olarak hizmet ettiği için o ovuşturulmuş torbayı nasıl yapıştırdığımı tahmin ettim. Abajurun aynı alma prensibi, bagatohedron'u prote sarım daha katlanabilir, daha düşük torbaydı. Rahunok'un arkasında, yapıdaki ipliklerle savaşmaya çalışan mengene yandı, ses çıkarmaya ve iplikler düşmeye başladı. Acilen, eller tutkalla, canavarın tasarımını yapmak mümkün oldu. Burada bir CD'nin yardımına geliyorum. viishov'un sonucu aşağıdaki takma isme sahiptir:

Sonuç olarak ne söylemek istersiniz?

Projeyi neden değiştirdim? TRIG sinyalini istasyondaki sensörlere uygulamak için Arduino'nun üç yerine bir çıkışını seçebilirsiniz. Bu yüzden, ne yazık ki hala vücutta olan IR sensörünün (unuttuğum) açıklığını kendim değiştirirdim, ancak elbette uzaktan kumandadan gelen sinyalleri okumak imkansız. Ancak, hiçbir şeyi lehimleyemeyeceğinizi ve delemeyeceğinizi kim söyledi?

Bunun bir sonraki dönem olduğunu ve kağıt üzerinde çalışmamaya çalışmanın mucizevi ihtimalini bilmek istiyorum, neden rüyamdaki çocuğun maddesine bir onay işareti koyayım. Ve yeni şeyleri sorunsuz bir şekilde deneyeceğinizi nereden biliyorsunuz ve önümüzde ne yapacağınızı bilmiyorsanız, endişelenmeyin. Bagatların kafasında bir düşünce uçuşuyor: Neden buradan başlıyorsunuz ve nasıl çalışmaya başlayabilirsiniz? Hayatın bir sürü suçu var, bunun için onu mahvedebilirsin, ama denemek zorunda değilsin, hatırladığın gibi, gözlerinde bir ateşle yakabilirsin, birinin denemesine izin ver.

Yaklaşan bir proje için bir fotodirenç kullanacağız. Ve karanlıkta otomatik olarak açılan ve aydınlık olduğunda kapanan yatak odasında bir komidin uygulamasına bakalım.

Fotorezistörün Opir'i, sanki yenisine harcanmış gibi ışıkta yatmak. 4,7 kOhm'luk oldukça büyük bir dirençli bağlantıdaki Vykoristovuyuchi fotodirenç, gerilimin dilatörünü alıyoruz, çünkü fotodirençten geçen gerilim, aydınlatma seviyesine bağlı olarak değişiyor.

Dilnik'ten gelen voltaj, Arduino ADC'nin girişine beslenir. Orada şarkı söyleme eşiğinin ve vmikaemo'nun veya lambanın vimikaemo'nun önemini taklit ederiz.

Dilnik'in prensip şeması aşağıda gösterilmiştir. Aydınlatma artarsa ​​fotodirenç opiri düşer ve dilnik çıkışında (iADC girişi) voltaj yükselir. Hafiflik düşerse herşey navpaktır.

Aşağıdaki fotoğraf, bir devre tahtası üzerinde seçilmiş bir devreyi göstermektedir. 0V ve 5V voltajları Arduino'dan alınmıştır. ADC'nin girişi olarak daha düşük A0 seçilir.

Arduino taslağı aşağıdadır. Bu derste, sadece Arduino kartının sahip olduğu yanıp sönen bir LED var. Daha büyük parlak LED ışık, 13. bacağa kadar bağlayabilirsiniz (~220 Ohm'luk bir direnç aracılığıyla). Şalteri ısıtma lambası gibi daha yoğun bağlarsanız, röle veya tristör üzerinden bağlamanız gerekir.

Programın kodları, zenginleştirmeye hizmet ettikleri için dosyaları yorumladı. ADC değerini kontrol edebilirsiniz (0'dan 1024'e kadar). Bu nedenle, koddaki 500 değerini (açma ve kapatma eşiği), net bir yol seçtikçe aydınlatmayı değiştirerek bunlara değiştirmek gerekir.

/* ** Kitap ** ** www.hobbytronics.co.uk */ int sensörPin = A0; // ADC unsigned int sensorValue için giriş ayağını ayarla = 0; // fotorezistörün dijital değeri void setup() ( pinMode(13, OUTPUT); Serial.begin(9600); // verilerin seri olarak okunmasını başlat (test için) ) void loop() ( sensorValue = analogRead(sensorPin); // okunabilir fotodirenç değeri if(sensorValue<500) digitalWrite(13, HIGH); // включаем else digitalWrite(13, LOW); // выключаем // Для отладки раскомментируйте нижеследующие строки //Serial.print(sensorValue, DEC); // вывод данных с фоторезистора (0-1024) //Serial.println(""); // возврат каретки //delay(500); }

bir ek için

    1 tane daha svetlodiod

    Nominal değeri 220 Ohm olan 1 direnç daha

    2 dart daha

Şematik diyagram

Breadboard üzerinde şema

saygıyı iade et

    Tüm deneyler için, canlı ve analog giriş, tobto arasına bir fotodirenç kuruyoruz. voltaj dilatör devresinde R1 konumunda. Bizim için gerekli, böylece aydınlatmadaki bir değişiklikle analog girişte daha az voltaj çıkardık.

    Bileşenleri, ışığın fotorezistörü aydınlatmaması için yaymaya çalışın.

Kroki

p050_night_light.ino #define LED_PIN 13 #define LDR_PIN A0 #define POT_PIN A1 void setup() ( pinMode(LED_PIN, OUTPUT) ; ) void loop() ( // Ayrıştırılmış aydınlığın okunması. Konuşmadan önce, sağır // bu değeri aynı anda değiştirebilir ve uygulayabilirsiniz int hafiflik = analogRead(LDR_PIN) ; // potansiyometreden ayarlanabilen değeri oku // akıllı karanlık ve aydınlık arasındaki sınır değeri int eşik = analogRead(POT_PIN) ; // Değerine atanan sağır edici mantıksal değişiklik // "şimdi karanlık". Mantıksal değişiklikler, vіdminu üzerinde // tsіl_snyh, yalnızca bir veya iki değerden intikam alabilir: // Doğru (eng. true) veya saçmalık (eng. false). böyle bir anlam // Boolean da denir. boolean tooDark = (hafiflik< threshold) ; // programın vikoristovuemo silinmesi: işlemci vikonaє one // gelecekte koddaki iki blok eski. // Yakshcho (İngilizce "if") çok karanlık... if (çokKaranlık) ( // ...aydınlatmayı aç digitalWrite(LED_PIN, YÜKSEK); ) Başka ( // ...ve artık ışığa gerek yok - vimikaєmo yogo digitalWrite(LED_PIN, DÜŞÜK); )

Kodun açıklaması

    Yeni bir değişiklik türü kazanırız - yalnızca true (true, 1) veya false (saçma, 0) değerlerini kaydeden boolean. Qi değeri, mantıksal virüslerin hesaplanmasının sonucudur. Kimin uygulaması mantıklı viraz - hafiflik< threshold . На человеческом языке это звучит как: «освещенность ниже порогового уровня». Такое высказывание будет истинным, когда освещенность ниже порогового уровня. Микроконтроллер может сравнить значения переменных lightness и threshold , которые, в свою очередь, являются результатами измерений, и вычислить истинность логического выражения.

    Bu mantıklı virazı sadece doğruluk için pruvada aldık. Daha okunabilir kod yazdığınızdan emin olun. Diğer türlerde, kemerler, zvichaynіy aritmetiğinde olduğu gibi, bir büyüklük sırasına kadar ekleyebilir.

    Deneyimizde, hafiflik değeri eşik değerinden küçükse, o zaman operatör mantıksal ifade doğru olacaktır.< . Мы можем использовать операторы > , <= , >= , == , != , yani “fazla”, “birden az”, “birden fazla”, “eşit”, “iyi değil” anlamına gelir.

    Mantıksal == operatörüne özellikle dikkat edin ve = atama operatörü ile karıştırmayın. Birinci tip için, tersinin değeri eşit derecede önemlidir ve diğer tip için mantıksal değer (doğru veya anlamsız) eşit derecede önemlidir, sağ işlenenin değeri sol işlenene eklenir. Derleyici isimlerimizi bilmiyor ve bir af göremiyoruz, ancak istemeden bir değişikliğin anlamını değiştirebiliriz ve sonra uzun bir süre için bir af yaparız.

    Akıllı if ifadesi (“yakscho”) en önemli programlama yöntemlerinden biridir. Bu yardımla, zhorstko'nun eylemlerin sırasını nasıl verdiğini vikonuvat yapabiliriz ve ardından algoritmanın hangi yöne gitmesi gerektiğine karar verebiliriz, bayat zihinler.

    Mantıksal ifadenin hafifliği vardır< threshold есть значение: true или false . Мы вычислили его и поместили в булеву переменную tooDark («слишком темно»). Таким образом мы как бы говорим «если слишком темно, то включить светодиод»

    İşte bu başarı ile “ışık eşik değerinden az ise ışığı açın” diyebiliriz. tüm mantıksal ifadeyi if'ye iletin:

eğer (hafiflik< threshold) { // ... }

    Akıllı if ifadesinin ardından, mantıksal ifadenin gerçeğinden farklı olarak blok kod gelir. Kıvırcık kemerlere zarar vermeyi unutmayın ()!

    Gerçeğin zamanına gelince, daha fazla vikonatiye ihtiyacımız var. 1 talimat, kıvrık yaylar olmadan if (...) 'den hemen sonra yazabilirsiniz:

eğer (hafiflik< threshold) digitalWrite(LED_PIN, HIGH) ;

    if ifadesi, else ("next") yapısıyla genişletilebilir. Kod bloğu ya onu takip eden tek bir talimattır, if yanlış olabilir, “saçmalık” için mantıksal bir ifade olarak artık yazmaya gerek kalmayacaktır. Kıvırcık yayların durduğu kurallar aynıdır. Deneyimizde “çok karanlık, ışığı aç, yoksa ışığı kapat” yazdık.

Herkese merhaba! Ben Artem Luzhetsky ve "Akıllı Ev" ve IoT'ye (Nesnelerin İnterneti, Konuşma İnterneti) adanmış bir dizi makale yazıyorum. Çeşitli müştemilatlarla, sanki özerk bir şekilde ama yardım eden bir kişinin arkasında çalışacaklarmış gibi bir ev ortamı yaratmanın harika yollarını biliyoruz. Peki ne? Haydi Yapalım şunu!

İlk makale önemli, daha fazla kişinin IoT perakendecilerini deneyebilmesi için en geniş panolar ve modüllerle çalıştığımı anlamanızı istiyorum.

Otzhe, koçan için iki mikrodenetleyiciye ihtiyacımız var, bu yüzden kazanacağız: i.

Arduino UNO'su

Sizi bir ücret karşılığında tanımaya gerek yok bence, ilk kez başlayanlar ve kendin yap chaneller arasında zaten popüler. Sadece https protokolü ile çalışamayanlar ATmega328P mikrodenetleyiciye güvenmeyin diyeceğim, eğer mikrodenetleyici ve https protokolü ile çalışacak olursak ESP8266'yı programlayacağız.

ESP8266

Ben Troyka-Module ESP8266 VID Kompanії "Ampeka" ile bir Pricewatim, Ale can Schockino Vicerovyvati І Zvitch ESP Modül 8266, Vonya haberin başındaki işareti yutmayı mümkün kılmaz. 5 volt üzerinden bağlanmak veya devreye bir voltaj dengeleyici bağlamak gerekir veya 3,3 voltluk bir voltaj kaynağı ile pimi bükmek kolaydır.

Danimarkalı mikrodenetleyici, küresel pazardaki Espressif serileri arasında en güçlü değil, ancak en popüler ve en geniş olanlardan biridir. Vіn, IoT geliştirmelerimizin temeli olacak.

Ek detaylar

Ayrıca tüm doslidivleri oluşturmamız gerekiyor:

  1. Svіtlodiody
  2. fotodirenç
  3. termistör
  4. ultrasonik uzak dünya
  5. P'ezodinamik
  6. Mini servo sürücü
  7. IC - sensör
  8. ІЧ - uzaktan kumanda

IoT ile çalışmak için tüm bu modüllere sahip olmak gerekli değildir, ancak gelecekteki tüm projeleri inşa etmek için arada sırada onları bulmamız gerekecek.

Programlar ve kütüphaneler

İlk olarak - Arduino IDE'de çalışmayı kolaylaştırmak için kütüphaneyi edinin, böylece ESP8266'yı kazanabilirsiniz - http://wiki.amperka.ru/_media/iot-m:iot-m- libs.zip

Öte yandan, IoT'yi kısaca anlamak için, bize onlardan veri alma yeteneği veren web sitelerine ihtiyacımız var.

  1. www.dweet.io
  2. maker.iftt.com
  3. narodmon.ru
  4. ve benzeri.

Üçüncüsü, bir akıllı telefonu ek bir telefon için yönetebilmemiz için Android'de de farklı programlara ihtiyacımız var.

  1. açık hub
  2. Goz kirpmak
  3. ve benzeri.

Olağan şekillerde, programlarda ve sitelerde bildirilir, bunu zaten en yakın projelerde biliyoruz.

2. Robimo "Lambayı düşüneceğim"

Ben zaten zmusiv sen nudguvati? Basit lambadan en iyi şekilde yararlanacağım, sanki içeri giriyormuş gibi, oda karanlık.

Aslında bu tür bir navigasyon için UNO'ya gerek yok, ayarlayabileceğiniz bir dijital fotoğraf sensörünü ayarlayabilirsiniz, ancak gelecekte bu projeyi tanınmaz hale getireceğiz, bu bir nedenden dolayı olacak.

Elektrikle 220 volt kullanmaya hazır olduğunuzdan emin değilseniz, çakmağı en büyük ışıkla çırpın. Koçanın üzerinde eski TLI-204 lambamı aldım, bu yüzden her mağazada (kapının arkası dahil) pratiktir.

Lambanın açmak istediğim iki tür çalışması var (parlamak / parlamamak), işlevselliğini artırmak, tekrar açma ve tekrar kapatma yeteneğinden mahrum etmek istiyorum.

Başka bir jumper kullanmadan lansyug'a paralel olarak bir röleye bir fotodirenç bağlayın, bu yüzden üç konumlu geçiş anahtarına sahip iki konumlu bir jumper için bir yedek koyacağım.

Tam bir elektrik devresi şöyle görünebilir:

Her şey doğruysa, jumper'ın üçüncü konumunda, mikrodenetleyiciden röleye bir jet sağlayarak lambayı açabilirsiniz.

Arduino fotodirencine bağlanın. Diyagram şöyle görünür:

3. "Akıllı lamba" kodu

Şimdi röleye bir akış gönderecek bir kod yazalım, böylece odanın yakınında karanlık olacak.

#define SHINE 5 //PIN TO FOTORESISTOR #define REL 13 //PIN TO RÖLE void setup()( pinMode(SHINE, INPUT); pinMode(REL, OUTPUT); Serial.begin(9600); ) void loop()( if (analogRead(SHINE)<600) // Если света в комнате мало, то включаем лампу { digitalWrite(REL, HIGH) } else // если много, то выключаем { digitalWrite(REL, LOW); } Serial.printIn(analogRead(SHINE)); selay(500); }

Her şeyi bağlıyorsanız, ışıklı foto sensörünü çıkarmayı unutmayın, aksi takdirde ışık kontrolü yapılır. Her şey kazanılabilir.

Bir dahaki sefere kodu basitleştirmeye ve birkaç fonksiyon eklemeye çalışıyoruz. Yakında görüşürüz!

pratik yapma