Elektronik sistemlerin topladığı verilere göre karar vermesi ve verilen görevi otomatik olarak gerçekleştirmesine otonom olma durumu denir. Elektronik sistemlerin bulundukları ortamdan veri toplamasını sağlayan bileşenlere sensör denir. Ortamdaki ışık düzeyi, hava sıcaklığının kaç derece olduğu, su akış hızının kaç lt/dk olduğu, sesin şiddeti gibi birçok veri sensörler tarafından toplanarak PicoBricks'e elektrik sinyali olarak iletilir, yani veri. Picobricks'te çok sayıda sensör bulunmaktadır. Sensörlerden nasıl veri alınacağını ve bu verilerin nasıl yorumlanıp kullanılacağını bilmek, kitap okumak gibi proje fikirlerini geliştirecektir.
Bu projemizde PicoBricks ile hava karardığında aydınlatmanın otomatik olarak açıldığı sistemlerin çalışma sistemlerini anlamak için ışık miktarı azaldığında LED'in yanmasını sağlayacağız.
Ayrıntılar ve Algoritma
Sensörler, dış ortamdaki verileri algılayıp mikrodenetleyicilere veri gönderen elektronik bileşenlerdir. LDR sensör aynı zamanda ortamdaki ışık miktarını da algılayarak analog değerler gönderir. Projemizde öncelikle LDR sensör değerlerini okuyarak ortam aydınlık ve karanlık olduğunda gelen verileri kontrol edeceğiz, daha sonra bu verilere göre bir limit belirleyeceğiz ve ışık miktarı bu limitin altında ise ışık miktarını çevireceğiz. kapalı RGB LED'i Picobricks'in değilse LED'i kapatacağız.
Bileşenler
1X PicoBrick
Bağlantı şeması
Picobricks modüllerini kablolama olmadan kodlayabilir ve çalıştırabilirsiniz. Modülleri panodan ayırarak kullanacaksanız modül bağlantılarını grove kablolarla yapmalısınız.
PicoBricks'in MicroBlock Kodları
Projenin Microblocks kodlarına görseli Microblocks Run sekmesine sürükleyerek ulaşabilirsiniz.
PicoBricks'in MicroPython Kodları
ithalat zamanı
makineden içe aktarma Pimi, ADC
picobricks'ten WS2812'yi içe aktarın
#kütüphaneyi tanımla
ldr = ADC(Pin(27))
ws = WS2812(6, parlaklık=0,4)
#giriş ve çıkış pinlerini tanımlayın
#renkleri tanımlayın
KIRMIZI = (255, 0, 0)
YEŞİL = (0, 255, 0)
MAVİ = (0, 0, 255)
RENKLER = (KIRMIZI, YEŞİL, MAVİ)
#RGB renk Kodu
while True:#while döngüsü
print(ldr.read_u16()) #LDR sensörünün değerini ekrana yazdırın.
if(ldr.read_u16()>10000):#haydi ldr sensörünü kontrol edelim
RENKLERDE renk için:
#LDR'yi aç
ws.pixels_fill(renkli)
ws.pixels_show()
başka:
ws.pixels_fill((0,0,0)) #RGB'yi kapatın
ws.pixels_show()
PicoBricks'in Arduino C Kodları
GitHub Proje Sayfası