İçindekiler:

Otomatik Windows Gölgeleri: 6 Adım (Resimlerle)
Otomatik Windows Gölgeleri: 6 Adım (Resimlerle)

Video: Otomatik Windows Gölgeleri: 6 Adım (Resimlerle)

Video: Otomatik Windows Gölgeleri: 6 Adım (Resimlerle)
Video: 1 Dakikada Windows'unuzu Sıfırlayın 💫 #shorts 2024, Temmuz
Anonim
Image
Image
Otomatik Windows Gölgeleri
Otomatik Windows Gölgeleri
Otomatik Windows Gölgeleri
Otomatik Windows Gölgeleri

bir kelime ileride

Manüel storların ve storların nasıl otomatikleştirileceğine dair pek çok eğitim gördüm, peki bu sefer elektrikli storları otomatikleştireceğiz. Akımın polaritesini tersine çevirerek açılan veya kapanan sürekli akım (DC) elektrik motorları tarafından çalıştırılan elektrik gölgelerini ele alacağız.

Elektrikli gölgelikler satın alırsanız, bir miktar otomasyon elde edersiniz, ancak otomasyonu kendi başınıza yapmanız için nedenler vardır:

* yukarı/aşağı kontrol için yanlarında sadece bir anahtarınız olabilir

* daha ucuzdur (bazı şirketler çok fazla ekstra $$ karşılığında gelişmiş otomasyon sunar)

* daha esnek, onları çeşitli durumlarda açıp kapatabilmelerini programlayabilirsiniz, python'da gölgeler bluetooth arayüzüne bağlanacak bir web sunucusu yapmayı öğreneceğiz ve gölgeleri kontrol etmek için bir API ortaya çıkaracağız, ayrıca entegre edeceğiz burada bir zaman çizelgesinde gölgeleri kontrol etmek veya sensör girişi ile kontrol etmek gibi şeyler yapabilirsiniz.

Bu bir ara eğitim olacak, lehimleme, arduino programlama, temel elektronik anlama ve bazı hizmetlerin bir sunucuya nasıl kurulacağı, çalıştırılacağı ve yapılandırılacağı gibi becerilere ihtiyacınız olacak.

Youtube videolarını beğendiyseniz buradan abone olabilirsiniz.

Adım 1: Gerekli Şeyler

Gerekli şeyler
Gerekli şeyler
Gerekli şeyler
Gerekli şeyler

İpucu: üzerlerindeki açıklayıcı etiketleri görüntülemek için resimleri büyütün

Parçalar:

1. arduino pro mini 16Mhz 5V tipi (eBay) 2$

2. HC-05 bluetooth modülü (eBay) 3.3$

3. 5 V İki kanallı röleler (eBay) 1,6$

4. En az birkaç amper için derecelendirilmiş NPN transistör, Tip142T kullandım < 1$

5. 220 ohm, 0.25W direnç <1$

6. diyot, 1N4004 <1$

7. Parçaları bağlamak için teller <1$

8. PCB (eBay) parça başına <1$

9. 2 x KF301-2P geçmeli vidalı konnektör (eBay) parça başına <1$

10. erkek-dişi atlama telleri (eBay) bir demet için 1,2$ x 2

11. L7805CV 5V regülatör (eBay) parça başına < 1$

12. 5.5mm DC Güç Fişi Jak Soketi erkek ve dişi (eBay) parça başına < 1$

13. Isıyla Daralan Makaron veya yalıtım bandı

14. Güç kaynağı, besleme 12V ve 2-3A olarak derecelendirilmelidir.

Madeni 12 V 2 A şarj cihazından (eBay) kurtardım 3.2 $

14. Terminal şeridi bloğu (eBay) 15c

15. sigorta tutucu (Aliexpress) adet başına 1$

16. sigorta (eBay) parça başına < 1$

17. erkek ve dişi pcb konektörleri (eBay) ihtiyacımız olan şey için < 1$

18. AC güç kablosu

19. plastik kutu muhafaza, benimki 6 x 19 cm

Aletler:

1. Lehimli havya

2. Tel kesici

3. Çeşitli tornavidalar

4. Kesici

5. elektrikli matkap ve 8,5 mm matkap ucu

6. arduino pro mini'yi programlamak için USB'den seri FTDI adaptörü FT232RL'ye

7. Arduino'yu programlamak için ArduinoIDE kurulu dizüstü bilgisayar

8. Isıyla Daralan Makaron kullanıyorsanız daha hafif

9. Bluetooth yazılımının kurulu olduğu bluetooth bağlantısı yapabilen bir akıllı telefon (örnekte bir android kullanıyorum)

10. İsteğe bağlı: büyüteç, multimetre, pense

Adım 2: Hazırlıklar

Hazırlıklar
Hazırlıklar
Hazırlıklar
Hazırlıklar
Hazırlıklar
Hazırlıklar

Güç kaynağını ve plastik kutuyu seçme

Birincisi, gölge motorlarının ne kadar akım ve hangi voltajda çalıştığını belirlemektir.

Bu, özellikleri okuyarak veya multimetreyi kullanarak ölçüm alarak yapılabilir. Genellikle 12 V ve 1-3 Amper çalışırlar (benimki 2,5 A ve 12 V). Gereken maksimum akımı bulmak için akımı, kaç tanesini aynı anda sürmeniz gerektiğiyle çarpın (iki tane sürüyorum). Tam olarak aynı voltajda ve ideal olarak aynı amperde veya biraz daha yüksek olan bir güç kaynağı bulmalısınız.

Bu adımda, iki adet 12 V ve 2,5 A motoru sürmek için 12 V ve 2,5 A güç kaynağı kullanarak biraz hile yaptım, bu da motorların güç kaynağının verebileceğinden iki kat daha fazla güç kullandığı anlamına geliyor. Ancak PWM adlı bir teknik kullanarak (daha fazla ayrıntı görmek için bağlantıya bakın) motoru aynı anda daha düşük bir hızda sürmeyi başardım.

Bunu yapmamın nedeni kutuda yer kazanmak (daha küçük bir kutu seçtim).

Plastik muhafazanın güç kaynağını, iki röleyi, elektronik ve kabloları olan küçük bir pcb'yi barındırması gerekecek, bu nedenle her şeyin sığacağı boyutu seçin.

Güç kaynağımın plastik bir muhafazası vardı ve bir dremel aleti kullanarak parçalara ayırdım, mevcut kabloları kestim ve bu şekilde projeme uygun ucuz ve küçük bir güç kaynağım oldu (resimlere bakın).

Motor kablolarını hazırlayın

Motor kablolarının ne kadar süreceğini, yani inşa ettiğimiz kontrol kutusuna ulaşana kadar hesaplamanız gerekiyor. Muhtemelen mevcut kablolar yeterince uzun değildir ve bunları uzatmanız, her iki kabloyu da (mevcut kanat kablosu ve uzatma kabloları) bir ucundan ayırmanız, ısıyla daralan makaronları yerleştirmeniz, telleri lehimlemeniz ve ardından ısı uygulamanız gerekecektir. yalıtmak için daha hafif.

Uzatma kablosunun ucunda erkek 5.5mm DC Güç Fişi Jak Soketi olacaktır. İki kabloyu sokete lehimlemeniz gerekiyor, sonuç resimlerdeki gibi olacak.

Dişi 5.5mm DC Güç Fişi Jakını kutuya takma

Delme makinesini kullanarak, krikonun geçebileceği kadar büyük iki delik delin. Elektrik fişi jaklarını takın, somunları kullanarak vidalayın. Daha sonra jak girişlerinin her birine kalın siyah ve kırmızı kabloları lehimleyin, ardından ısıyla daralan makaron kullanarak yalıtın. Kablolar, terminal şeridi bloğuna kolayca girecek kadar uzun olmalı, ancak çok fazla yer kaplamayacak kadar uzun olmamalıdır.

Sigorta tutucunun sigorta ile takılması

Sigorta tutucuyu yerinde tutan küçük bir somunu yerleştirmek için kutunun bir tarafına küçük bir delik açın. Ardından pense, tornavida ve somunu kullanarak yerine sıkıca vidalayın. Sigorta tutucu, güç kaynağı konumuna yakın ve kutunun içinde olmalıdır. Resimleri bir kez daha kontrol edin.

Adım 3: Elektronik ile PCB Oluşturma

Elektronik ile PCB Oluşturma
Elektronik ile PCB Oluşturma
Elektronik ile PCB Oluşturma
Elektronik ile PCB Oluşturma
Elektronik ile PCB Oluşturma
Elektronik ile PCB Oluşturma

PCB, mikrodenetleyiciyi, bluetooth iletişimini, RTC modülünü, koruma için diyotlu bir güç transistörünü ve küçük bir rezistörü, konektör kablolarını ve 5V regülatörü tutacaktır.

Fritzig şemasını ekledim, böylece işler kolay olacak. İlk resim şemanın dışa aktarılmış görüntüsünü temsil ediyor ve ayrıca sketch.fzz'yi ekledim (orijinal dosya, bu araçla açabilirsiniz)

Lehimleme adımları:

1. dişi PCB konektörlerini kesin, mikrodenetleyici için iki adet 12 pinli konektör var, ayrıca bluetooth için 6 pinli konektör ve mikrodenetleyicinin sağ tarafında 12 pinli bir konektör ve röle negatif için iki pinli konektör var ve pozitif güç

2. Tüm konektörler kesildikten sonra PCB'nin arkasına lehimlenmelidir.

3. İki KF301-2P fiş konnektörünü lehimleyin

4. L7805CV 5V regülatörünü PCB'ye yerleştirin. Bacaklarını bükün ve diğer tarafa lehimleyin, ardından kablo kesici ile fazla bacakları kesin.

5. NPN Tip142T transistörünü ve 1N4004 koruma diyotunu lehimleyin, sonra fazla bacakları kesin.

6. 220 ohm rezistörü ilgili dijital pim 5 ile transistör taban pimi arasına lehimleyin

7. Transistör ve KF301-2P fişleri arasında daha kalın teller lehimleyin (resimlerde işaretlendiği gibi kırmızı ve siyah)

8. Tüm kırmızı(+), siyah(-) ve beyaz(sinyal) ince telleri fritzig şemasına göre lehimleyin

9. Mikrodenetleyicideki erkek pimleri lehimleyin, yanlarda iki adet 12 erkek pime ihtiyacınız var

10. Mikrodenetleyicinin sağ taraftaki dişi karşılık gelen pinlerinin her biri arasında bağlantı yapın (resimlerde daha iyi açıklanmıştır). Bağlantılar sadece lehim kullanılarak yapılacaktır (pinler birbirine yakın olacaktır)

11. Opsiyonel: Büyüteç ile lehimleri kısa devre açısından kontrol edin ve kabloların PCB'nin arkasına doğru lehimlenip lehimlenmediğini kontrol edin, ayrıca pozitif ve arasında kısa devre olup olmadığını multimetre (direnç ayarı) ile kontrol edebilirsiniz. negatif bağlantılar. Başka bir test, mikrodenetleyici, bluetooth olmadan devreye güç vermektir.

12. Mikrodenetleyiciyi ve HC-05 bluetooth'u pcb'ye yerleştirin

Adım 4: Kablolama ve Montaj

Kablolama ve Montaj
Kablolama ve Montaj
Kablolama ve Montaj
Kablolama ve Montaj

Artık pcb'miz hazır, plastik kutumuz hazır, gölgelik kablolarımız ve diğer bileşenlerimiz hazır. Şimdi tek yapmamız gereken sistemi kablolamak.

1. kutunun üst tarafındaki delikten AC güç kablosunu takın, kabloyu soyun ve güç kaynağına lehimleyin (güç kaynağınızda vida varsa vidalayın)

2. Güç kaynağının çıkışını(+) sigortalardan birine kırmızı tel lehim kullanarak, açıkta kalan soyulmuş kabloyu gizlemek için bir miktar ısıyla daralan makaron kullanın.

3. sigortanın diğer tarafına başka bir kırmızı kablo lehimleyin, büzülme borusu uygulayın, telin diğer tarafı KF301-2P vidalı konektörün girişine (+) takılmalı ve vidalanmalıdır.

4. güç kaynağının çıkış (-) tarafına siyah bir kablo lehimleyin ve ardından bunu PCB girişi KF301-2P vidalı konektöre vidalayın

4. Erkek-dişi devre tahtası konektörlerini kullanarak, röle pozitif ve negatifini pcb pozitif ve negatif dişi konektörlere bağlayın. Ayrıca mikrodenetleyicinin 8 ve 9 pinlerini (PCB'nin solundaki pcb ana konektörlerini kullanarak) röle tetik pinlerine bağlayın.

5. Terminal şeridi bloğunun bir tarafını dişi 5.5mm DC Güç Fişi konektörlerinden gelen sırasıyla kırmızı siyah kablolara bağlayın. Benim yaptığım gibi birden fazla 5.5 mm dişi konektöre sahipseniz, tüm kırmızı kablolar terminal bloğunun sol üst tarafında ve tüm siyah kablolar terminal bloğunun sağ üst tarafında bitecektir (resimlere bakın).). Perdeleri çalıştıracağınız zaman, aynı yönde hareket etmezlerse, kabloları burada ters çevireceğiz (daha fazlası için)

6. KF301-2P (çıkış) vidalı konnektöründen gelen pozitif ve negatif kabloları röle terminallerinin ortasına bağlayın. Terminallerin ortasına ortak denir.

7. sol rölenin sol tarafını (gerçeğe nasıl baktığınız önemli değil) sağ rölenin sol tarafına terminal bloğunun sol alt tarafına bağlayın. Ardından sol rölenin sağ tarafını sağ rölenin sağ tarafına terminal bloğunun sağ alt tarafına bağlayın. Terminal bloğunun üst tarafı dişi 5,5 mm konektörlere bağlı olacaktır (bkz. adım 5).

Not: Terminal bloğunu, her birinin sol ve sağ tarafı olan üst ve alt taraflara sahip olarak tanımladım. Hangi tarafın ne olduğunu hatırladığınız sürece, terminal bloğunu nasıl tuttuğunuz önemli değildir. Resimleri ve özellikle fritzig şemasını inceleyebilirsiniz.

Adım 5: Arduino Kodu

Arduino Kodu
Arduino Kodu

Kodun, USB'den seri FTDI adaptörüne FT232RL kullanılarak arduino pro mini'ye yüklenmesi gerekir.

GND, VCC, Rx, Tx ve DTR pinlerini arduino pro mini'ye bağlamanız gerekecek. Ardından arduino yazılımı seçim araçlarını/bağlantı noktasını ve kullandığınız bağlantı noktasını açın. Ardından Araçlar/Board/Arduino Pro veya Pro Mini. Ardından Araçlar/Kart/İşlemci/ATmega328(5V 16Mhz).

Son olarak, aşağıdaki çizimi açın ve yükle'ye basın.

Ayarlamalar: Sketch içerisinde ayarlanabilen tek şey pwmPower'dır. Değer 0 ile 255 arasında olabilir ve kabaca güç kaynağı gücünün ne kadarının gölge motorlarına gideceğini gösterir. Temel olarak gücü hızlı bir şekilde açıp kapatıyor. Bunu çoğunlukla aşırı ısınmadan veya kapanmadan daha küçük bir güç kaynağı kullanmama izin vermek için uyguladım. Güç kaynağınız motorların çekeceğinden daha fazla güce sahipse, pwmPower'ı 255'e ayarlayabilirsiniz.

Peki bu program nasıl çalışır: önce gelen iletimler için seri hattı (ikincil bir yazılım dizisi) dinler. Bir iletim geldiğinde, mesaj bir arabellekte ";" işaretine kadar okunur. mevcut veya arabelleğin sonuna ulaşıldı. Daha sonra ayrıştırılır ve eğer doğru biçimdeyse (ör: O45;) toggleState işlevi, ilk parametre durumu ve ardından süre ile çağrılır.

Polarite anahtarını elde etmek için her iki röle de açılır veya kapatılır. Transistör, belirtilen süre boyunca PWM kullanılarak açılır ve kapatılır. O45, 45 saniye boyunca açık anlamına gelecektir.

Komut yürütüldükten sonra arabellek temizlenir.

6. Adım: Kullanım

kullanım
kullanım
kullanım
kullanım
kullanım
kullanım

Kontrolleri birden fazla şekilde kullanabiliriz

1. Bir android veya iphone bluetooth uygulaması aracılığıyla (en basit)

Demomda Bluetooth Controller adlı bir android uygulaması seçtim. Bu uygulama, seri veri gönderecek düğmeleri özelleştirmenizi sağlar. Yukarı ve Aşağı adlı iki düğme oluşturdum, Yukarı'yı "C40" koduyla ilişkilendirdim; ve "O35" ile Aşağı.

"C40;" gölgeleri 40 saniyeliğine kapatacağım (geri çekeceğim), "035" ise 35 saniyeliğine açacağım (yukarı çıkacaklar) anlamına geliyor. ";" taslağımda seçtiğim komut sonlandırıcı, yani bir komutun sonunu işaret ediyor.

2. Arka planda sürekli çalışan bir python betiği aracılığıyla

Bu, öğreticinin advaced kısmıdır. Ahududu pi veya internet erişimi olan bir dizüstü bilgisayar gibi bir sunucuda çalışacak bir python betiğim var. Kontrol kutusundaki bluetooth'a bağlanacak ve bir http API'sini ortaya çıkaracaktır. API'ye doğrudan veya şey konuşma yoluyla erişilebilir.

Adım adım ne yapmanız gerektiğini anlatacağım

a. ilk şey bluetooth'u eşleştirmek

tipte konsoldan bluetoothctl komutunu kullanacaksınız

açık

varsayılan aracıda aracıda keşfedilebilir xx:xx:xx:xx:xx:xx çiftinde taramada eşlenebilir (ve parolayı girin) güven xx:xx:xx:xx:xx:xx (şifre yoksa):

sonra bluetooth yapılandırma dosyasını açın

vim /etc/bluetooth/rfcomm.conf

içinde bluetooth cihazınızı şu şekilde yapılandırmanız gerekecek:

rfcomm1 {

evet bağla; your_bluetooth_mac_address aygıtınız 97:D3:31:21:A0:51; Kanal 1; yorum "Benim gölgelerime bağlantı bt"; }

bağla, bluetooth hizmetlerini yeniden başlat

sudo rfcomm allsudo /etc/init.d/bluetooth yeniden başlat sudo hciconfig hci0 up

B. şişeyi yükleyin, şişe temel kimlik doğrulaması:

sudo -H pip Flask Flask-BasicAuth'u kurun

C. aşağıdaki kodla bir server.py dosyası oluşturun ve sunucuyu çalıştırın:

# kullanım: python httpToBluetooth kullanıcı adı şifre bluetooth_address

# Not: kullanıcı adı, şifre kullanılır

içe aktarma işletim sistemi, bluetooth, sys, iş parçacığı

flask'tan flask_basicauth'tan flask'ı kuyruktan içe aktar BasicAuth'u kuyruktan içe aktar import Queue app = Flask(_name_) configuration = sys.argv app.config['BASIC_AUTH_USERNAME'] = configuration[1] app.config['BASIC_AUTH_PASSWORD'] = configuration[2] kuyruk = Queue() basic_auth = BasicAuth(app) sınıfı BluetoothBackground(threading. Thread): def _init_(self, bluetooth_address, tail): threading. Thread._init_(self) self._bluetooth_address = bluetooth_address self._queue = sıra self.shutdown = False def run (self): self._bluetooth = self.get_bluetooth() iken self.shutdown: mesaj = self._queue.get() self._bluetooth.send(message) self._bluetooth.close() def get_bluetooth(self): bağlantı = bluetooth. BluetoothSocket(bluetooth. RFCOMM) connection.settimeout(Hiçbiri) deneyin: connection.connect((self._bluetooth_address, 1)) İstisna hariç, e: 'Bluetooth'a bağlantı hatası' + str(e) bağlantısını yazdırın.setblocking(False) dönüş bağlantı sınıfı Webserver(threading. Thread): def run(self): port = in t(os.environ.get('PORT', 5000)) app.run(host='0.0.0.0', port=port, debug=Doğru, use_reloader=Yanlış) @app.route("/send_to_serial/") @basic_auth.required def send_to_serial(command): tail.put(command) return 'tamam' threads = threads.append(BluetoothBackground(configuration[3], kuyruk)) threads.append(Webserver()) [thread.start () thread içindeki thread için]

sunucuyu çalıştırmak için şunu çalıştırın:

python server.py kullanıcı şifresi 97:D2:31:20:A0:51

Tamam, yani server.py bizim komut dosyamızdır, kullanıcı ve şifre, kimlik doğrulamanız için kullanılan kimlik bilgileridir ve "97:D2:31:20:A0:51", bluetooth MAC adresinizdir.

NS. dünyanın herhangi bir yerinden komut göndermek için sunucunuzu kullanın

tarayıcı türünden:

- python sunucusunu başlatırken daha önce kurduğunuz kullanıcı ve şifreyi girin

- "C30;" bluetooth cihazına iletilecek olan komuttur (gölgeleri kontrol edecek kutumuz)

- 5000 numaralı bağlantı noktasının güvenlik duvarınız tarafından engellenmediğini kontrol edin (o bağlantı noktasını kullanıyoruz)

- bir yönlendiricinin arkasındaysanız (örneğin bir ahududu pi), yönlendiriciden 5000 numaralı bağlantı noktasından 5000 numaralı bağlantı noktasına bir bağlantı noktası iletme yapmanız gerekir.

e. Bir zaman çizelgesinde veya bazı kanal sensör verileri değiştiğinde gölgeleri kontrol etmek gibi şeyler yapmak içinthingspeak kullanabilirsiniz. Örneğin, düşünmek için bir ışık sensörünü (dışarıda) bağlayabilir ve ışık seviyesi bir miktar düştüğünde (akşam), gölgeleri kapatarak dışarıdaki insanların sizi görmemesini sağlayabilirsiniz.

Gölgeleri (daha önce kurduğumuz python sunucusu) ThingHTTP kullanarak Thingsspeak ile bağlayabilirsiniz.

Örnek olarak doldurulmuş verilerle birlikte ThingHTTP formunun bir resmini ve TimeControl ile bir resim ekledim.

3. Ev otomasyon uygulamam aracılığıyla

Bu biraz daha karmaşık, ev otomasyon uygulamam gölgeleri kontrol etmekten çok daha fazlasını yapıyor.

Ayrıca ışıkları, kapıyı kontrol eder, birden fazla sensöre sahiptir, anahtarlarla entegre olur ve örneğin içerideki ışık seviyesi düşükse veya sabahsa gölgelikleri açabilen karmaşık kullanıcı tanımlı kurallara sahiptir.

Github depoma bakabilirsin, soruların varsa seve seve cevaplarım.

Eğitimimi biraz yararlı bulduysanız, lütfen paylaşın veya sık kullanılanlara ekleyin. Ben de ilginç yorumlar görmek istiyorum:)

Önerilen: