Daftar Isi:

Windows Shades Otomatis: 6 Langkah (dengan Gambar)
Windows Shades Otomatis: 6 Langkah (dengan Gambar)

Video: Windows Shades Otomatis: 6 Langkah (dengan Gambar)

Video: Windows Shades Otomatis: 6 Langkah (dengan Gambar)
Video: TUTORIAL MEWARNAI DENGAN BENAR #tutorialprocreate #ipadpro #procreate 2024, Juli
Anonim
Image
Image
Nuansa Windows Otomatis
Nuansa Windows Otomatis
Nuansa Windows Otomatis
Nuansa Windows Otomatis

Sebuah kata di depan

Saya telah melihat banyak tutorial tentang cara mengotomatiskan nuansa dan tirai manual, baik dalam hal ini kita akan mengotomatisasi nuansa listrik. Kami akan membahas nuansa listrik yang dijalankan oleh motor listrik arus kontinu (DC) yang membuka atau menutup dengan membalikkan polaritas arus.

Meskipun jika Anda membeli kap listrik Anda akan mendapatkan beberapa otomatisasi, ada alasan untuk melakukan otomatisasi sendiri seperti:

* Anda mungkin hanya memiliki sakelar di dekat mereka untuk kontrol atas/bawah

* lebih murah (beberapa perusahaan menawarkan otomatisasi tingkat lanjut untuk banyak tambahan $$)

* lebih fleksibel, Anda dapat memprogramnya untuk membuka atau menutup pada berbagai keadaan, kita akan belajar tentang membuat server web dengan python yang akan terhubung ke antarmuka bluetooth nuansa, dan mengekspos API untuk mengontrol nuansa, kami juga akan mengintegrasikan dengan thingspeak dan di sana Anda dapat melakukan hal-hal seperti mengontrol nuansa pada jadwal waktu atau mengontrolnya melalui input sensor

Ini akan menjadi tutorial menengah, Anda akan memerlukan keterampilan seperti menyolder, pemrograman arduino, pemahaman elektronik dasar, dan beberapa cara menginstal layanan di server, menjalankan dan mengonfigurasinya.

Jika Anda menyukai video youtube, Anda dapat berlangganan di sini.

Langkah 1: Hal-hal yang Diperlukan

Hal yang Diperlukan
Hal yang Diperlukan
Hal yang Diperlukan
Hal yang Diperlukan

Tip: perbesar gambar untuk melihat label deskriptif pada gambar

Bagian:

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

2. Modul bluetooth HC-05 (eBay) 3.3$

3. 5 V Relai dua saluran (eBay) 1,6$

4. Tranzistor NPN yang memiliki rating minimal beberapa amp, saya telah menggunakan Tip142T < 1$

5. 220 ohm, rezistor 0,25W <1$

6. dioda, 1N4004 <1$

7. kabel untuk menghubungkan bagian <1$

8. PCB (eBay) <1$ per potong

9. 2 x KF301-2P plug in konektor sekrup (eBay) <1$ per potong

10. kabel jumper pria-wanita (eBay) 1,2$ x 2 untuk banyak

11. L7805CV 5V regulator (eBay) < $1 per buah

12. 5.5mm DC Power Plug Jack Socket pria dan wanita (eBay) < $1 per potong

13. Heat Shrink Tubing atau pita isolasi

14. Catu daya, catu daya harus diberi peringkat 12V dan 2-3A.

Saya telah menyelamatkan milik saya dari pengisi daya 12 V 2 A (eBay) 3.2 $

14. Blok terminal strip (eBay) 15c

15. pemegang sekering (Aliexpress) $1 per potong

16. sekering (eBay) < $1 per buah

17. konektor pcb pria & wanita (eBay) <1$ untuk apa yang kita butuhkan

18. Kabel daya AC

19. kandang kotak plastik, milik saya berukuran 6 x 19 cm

Peralatan:

1. Besi solder dengan solder

2. Pemotong kawat

3. Berbagai obeng

4. Pemotong

5. bor listrik dan mata bor 8,5 mm

6. USB ke adaptor FTDI serial FT232RL untuk memprogram arduino pro mini

7. Laptop dengan ArduinoIDE diinstal untuk memprogram arduino

8. Lebih Ringan jika Anda menggunakan Heat Shrink Tubing

9. Sebuah smartphone yang mampu koneksi bluetooth (saya menggunakan android dalam contoh) dengan perangkat lunak bluetooth diinstal

10. Opsional: kaca pembesar, multimeter, tang

Langkah 2: Persiapan

Persiapan
Persiapan
Persiapan
Persiapan
Persiapan
Persiapan

Memilih catu daya, dan kotak plastik

Hal pertama adalah menentukan berapa banyak arus dan tegangan apa yang dioperasikan motor nuansa.

Hal ini dapat dilakukan dengan membaca spesifikasi atau melakukan pengukuran menggunakan multimeter. Biasanya mereka beroperasi 12 V dan 1-3 Amps (milik saya 2,5 A dan 12 V). Kalikan arus dengan berapa banyak dari mereka yang Anda butuhkan untuk mengemudi secara bersamaan (saya mengemudi dua) untuk mengetahui arus maksimum yang dibutuhkan. Anda harus menemukan catu daya yang tegangannya sama persis dan idealnya dengan arus listrik yang sama atau sedikit lebih tinggi.

Pada langkah ini saya sedikit curang, menggunakan catu daya 12 V dan 2,5 A untuk menggerakkan dua motor 12 V dan 2,5 A yang berarti motor menggunakan daya dua kali lebih banyak dari yang dapat diberikan catu daya. Tetapi menggunakan teknik yang disebut PWM (periksa tautan untuk melihat lebih detail) saya telah berhasil menggerakkan motor secara bersamaan pada kecepatan yang lebih rendah.

Alasan saya melakukan ini adalah untuk menghemat ruang di dalam kotak (saya telah memilih kotak yang lebih kecil).

Kandang plastik perlu menampung catu daya, dua relai, PCB kecil dengan elektronik dan kabel, jadi pilihlah ukurannya sehingga semuanya pas.

Catu daya saya memiliki penutup plastik yang telah saya sobek menggunakan alat dremel, saya telah memotong kabel yang ada dan dengan cara ini saya mendapatkan catu daya yang murah dan kecil yang cocok untuk proyek saya (lihat gambar).

Siapkan kabel motor

Anda perlu menghitung berapa panjang kabel motor, yaitu sampai mencapai kotak kontrol yang kami bangun. Kemungkinan kabel yang ada tidak cukup panjang, dan Anda harus memperpanjangnya, lepaskan kedua kabel (kabel bilah yang ada dan kabel ekstensi) di salah satu ujungnya, pasang tabung heat shrink, solder kabel, lalu panaskan dengan lebih ringan untuk diisolasi.

Di ujung kabel ekstensi akan ada Soket Colokan Listrik DC 5.5mm laki-laki. Anda perlu menyolder kedua kabel ke soket, hasil akhirnya akan seperti pada gambar.

Memasukkan Jack Steker Listrik DC 5.5mm perempuan ke dalam kotak

Dengan menggunakan mesin bor, bor dua lubang yang cukup besar untuk dilewati dongkrak. Masukkan jack steker listrik, sekrup menggunakan mur. Kemudian solder kabel hitam dan merah tebal ke masing-masing input jack, setelah itu isolasi menggunakan tabung heat shrink. Kabel harus cukup panjang untuk masuk ke blok strip terminal dengan mudah, tetapi tidak terlalu panjang untuk menempati terlalu banyak ruang.

Memasang dudukan sekering dengan sekering

Di satu sisi kotak bor lubang kecil untuk meletakkan mur kecil yang menahan dudukan sekering. Kemudian dengan menggunakan tang, obeng dan mur, kencangkan pada posisinya. Dudukan sekering harus berada di dekat lokasi catu daya, dan harus berada di dalam kotak. Sekali lagi periksa gambar.

Langkah 3: Membangun PCB Dengan Elektronik

Membangun PCB Dengan Elektronik
Membangun PCB Dengan Elektronik
Membangun PCB Dengan Elektronik
Membangun PCB Dengan Elektronik
Membangun PCB Dengan Elektronik
Membangun PCB Dengan Elektronik

PCB akan menampung mikrokontroler, komunikasi bluetooth, modul RTC, tranzistor daya dengan dioda untuk perlindungan dan rezistor kecil, kabel konektor, dan regulator 5V.

Saya telah melampirkan skema fritzig sehingga semuanya menjadi mudah. Gambar pertama mewakili gambar skema yang diekspor dan saya juga melampirkan sketch.fzz (file asli, Anda dapat membukanya dengan alat ini)

Langkah-langkah menyolder:

1. potong konektor PCB female, ada dua konektor 12 pin untuk mikrokontroler, ada juga konektor 6 pin untuk bluetooth dan konektor 12 pin lainnya di sisi kanan mikrokontroler dan konektor dua pin untuk relay negatif dan kekuatan positif

2. Setelah semua konektor dipotong harus disolder di bagian belakang PCB

3. Solder dua konektor steker KF301-2P

4. Pasang regulator L7805CV 5V pada PCB. Tekuk kakinya dan solder di sisi lain lalu potong kelebihan kaki dengan pemotong kabel

5. Solder tranzistor NPN Tip142T dan dioda proteksi 1N4004, potong kelebihan kaki setelahnya

6. Solder rezistor 220 ohm antara pin digital 5 yang sesuai dan pin basis tranzistor

7. Solder kabel yang lebih tebal antara tranzistor dan colokan KF301-2P (merah dan hitam seperti yang ditandai pada gambar)

8. Solder semua kabel tipis merah (+), hitam (-), dan putih (sinyal) sesuai dengan skema fritzig

9. Solder pin jantan pada mikrokontroler Anda memerlukan dua 12 pin jantan di sampingnya

10. Buat koneksi antara masing-masing mikrokontroler sisi kanan pin yang sesuai (dijelaskan lebih baik dalam gambar). Sambungan akan dibuat hanya dengan menggunakan solder (pin akan ditutup)

11. Opsional: dengan kaca pembesar, periksa solder untuk hubungan pendek, dan periksa apakah kabel disolder dengan benar di bagian belakang PCB, Anda juga dapat memeriksa dengan multimeter (pengaturan resistansi) jika ada hubungan pendek antara positif dan koneksi negatif. Tes lain adalah menyalakan sirkuit tanpa mikrokontroler, bluetooth

12. Tempatkan mikrokontroler dan bluetooth HC-05 pada pcb

Langkah 4: Pengkabelan dan Perakitan

Pengkabelan dan Perakitan
Pengkabelan dan Perakitan
Pengkabelan dan Perakitan
Pengkabelan dan Perakitan

Sekarang kami telah menyiapkan PCB kami, kotak plastik kami menyiapkan kabel warna, dan komponen kami yang lain disiapkan. Yang perlu kita lakukan sekarang adalah menghubungkan sistem.

1. melalui lubang sisi atas di dalam kotak masukkan kabel daya AC, lepaskan kabel dan solder pada catu daya (jika catu daya Anda memiliki sekrup maka kencangkan)

2. menggunakan kabel merah solder output(+) dari catu daya ke salah satu sisi sekering, gunakan sedikit tabung panas menyusut untuk menyembunyikan kabel dilucuti terbuka.

3. solder kabel merah lain ke sisi lain dari sekering menerapkan tabung menyusut, sisi lain dari kabel harus dimasukkan dan disekrup ke input (+) dari konektor sekrup KF301-2P

4. solder kabel hitam ke sisi output (-) catu daya dan kemudian pasang pada konektor sekrup KF301-2P input PCB

4. Menggunakan konektor papan tempat memotong roti pria-wanita, sambungkan relai positif dan negatif ke konektor PCB positif dan negatif wanita. Hubungkan juga pin 8 dan 9 mikrokontroler (menggunakan konektor induk PCB di sebelah kiri PCB) ke pin pemicu relai

5. sambungkan satu sisi blok strip terminal ke masing-masing kabel hitam berwarna merah yang berasal dari konektor Steker Listrik DC 5.5mm perempuan. Jika Anda memiliki lebih dari satu konektor perempuan 5,5 mm seperti yang saya lakukan, maka semua kabel merah akan berakhir di sisi kiri atas blok terminal, dan semua kabel hitam di sisi kanan atas blok terminal (lihat gambar). Saat Anda akan mengoperasikan tirai jika tidak bergerak ke arah yang sama, kami akan membalikkan kabel di sini (lebih lanjut tentang itu nanti)

6. sambungkan kabel positif dan negatif yang berasal dari konektor sekrup KF301-2P (keluar) ke bagian tengah terminal relai. Bagian tengah terminal disebut umum.

7. hubungkan sisi kiri relai kiri (tidak peduli bagaimana Anda menghadapi sebenarnya) ke sisi kiri relai kanan ke sisi kiri bawah blok terminal. Kemudian sambungkan sisi kanan relai kiri ke sisi kanan relai kanan ke sisi kanan bawah blok terminal. Blok terminal akan memiliki sisi atas yang terhubung ke konektor perempuan 5,5 mm (lihat langkah 5).

Catatan: Saya telah menggambarkan blok terminal memiliki sisi atas dan bawah masing-masing memiliki sisi kiri dan kanan. Tidak masalah bagaimana Anda memegang blok terminal selama Anda ingat sisi apa. Anda dapat memeriksa gambar dan terutama skema fritzig.

Langkah 5: Kode Arduino

Kode Arduino
Kode Arduino

Kode perlu diunggah ke arduino pro mini menggunakan USB to serial FTDI adapter FT232RL.

Anda harus menghubungkan pin GND, VCC, Rx, Tx dan DTR ke arduino pro mini. Kemudian buka perangkat lunak arduino pilih alat/port dan port apa pun yang Anda gunakan. Kemudian Tools/Board/Arduino Pro atau Pro Mini. Kemudian Tools/Board/Processor/ATmega328(5V 16Mhz).

Terakhir, buka sketsa di bawah ini, dan tekan unggah.

Penyesuaian: Satu-satunya hal yang dapat disesuaikan dalam sketsa adalah pwmPower. Nilainya bisa antara 0 dan 255 dan secara kasar mewakili berapa banyak daya catu daya yang akan masuk ke motor nuansa. Ini pada dasarnya menyalakan dan mematikan daya dengan cepat. Saya telah menerapkannya sebagian besar untuk memungkinkan saya menggunakan catu daya yang lebih kecil tanpa terlalu panas atau mati. Jika catu daya Anda memiliki daya yang lebih besar daripada yang akan ditarik oleh motor, Anda dapat mengatur pwmPower ke 255.

Jadi bagaimana cara kerja program ini: pertama ia mendengarkan saluran serial (serial perangkat lunak sekunder) untuk transmisi yang masuk. Ketika transmisi tiba, pesan dibaca dalam buffer sampai tanda ";" hadir atau akhir buffer tercapai. Kemudian diurai dan jika dalam format yang benar (mis: O45;) fungsi toggleState dipanggil dengan status parameter pertama, dan kemudian durasinya.

Untuk mencapai sakelar polaritas, kedua relai dibuka atau ditutup. Transistor dinyalakan dan dimatikan menggunakan PWM selama durasi yang ditentukan. O45 berarti terbuka selama 45 detik.

Setelah perintah dijalankan, buffer dibersihkan.

Langkah 6: Penggunaan

Penggunaan
Penggunaan
Penggunaan
Penggunaan
Penggunaan
Penggunaan

Kita dapat menggunakan kontrol di lebih dari satu cara

1. Melalui aplikasi bluetooth android atau iphone (paling sederhana)

Dalam demo saya, saya telah memilih aplikasi Android bernama Bluetooth Controller. Aplikasi ini memungkinkan Anda menyesuaikan tombol yang akan mengirim data serial. Saya telah membuat dua tombol bernama Atas dan Bawah, saya telah menghubungkan Atas dengan kode "C40;" dan Bawah dengan "O35;".

"C40;" berarti saya akan menutup (menarik kembali) bayangan selama 40 detik, "035" berarti akan membuka (menaikkan) selama 35 detik. ";" adalah terminator perintah yang saya pilih dalam sketsa saya, yang berarti itu menandakan akhir dari sebuah perintah.

2. Melalui skrip python yang terus berjalan di latar belakang

Ini adalah bagian lanjutan dari tutorial. Saya telah membuat skrip python yang akan berjalan di server seperti raspberry pi atau laptop dengan akses internet. Ini akan terhubung ke bluetooth pada kotak kontrol, dan itu akan mengekspos http API. API dapat diakses secara langsung atau melalui thingspeak.

Saya akan menjelaskan langkah demi langkah apa yang perlu Anda lakukan

A. hal pertama adalah memasangkan bluetooth

anda akan menggunakan perintah bluetoothctl dari konsol, ketik di dalam

nyalakan

dapat ditemukan pada agen pada agen default yang dapat dipasangkan pada pemindaian pada pasangan xx:xx:xx:xx:xx:xx (dan masukkan kata sandi) percaya xx:xx:xx:xx:xx:xx (jika tidak ada kata sandi):

selanjutnya buka file konfigurasi bluetooth

vim /etc/bluetooth/rfcomm.conf

di dalam Anda perlu mengonfigurasi perangkat bluetooth Anda seperti:

rfcomm1 {

mengikat ya; perangkat your_bluetooth_mac_address sesuatu seperti 97:D3:31:21:A0:51; saluran 1; komentar "Koneksi ke nuansa saya bt"; }

ikat, mulai ulang layanan bluetooth

sudo rfcomm bind allsudo /etc/init.d/bluetooth restart Sudo hciconfig hci0 up

B. instal flask, auth dasar flask:

sudo -H pip install Flask Flask-BasicAuth

C. buat file server.py dengan kode berikut dan jalankan server:

# penggunaan: python httpToBluetooth username password bluetooth_address

# Catatan: nama pengguna, kata sandi digunakan

impor os, bluetooth, sys, threading

dari flask import Flask dari flask_basicauth import BasicAuth dari antrian import Queue app = Flask(_name_) configuration = sys.argv app.config['BASIC_AUTH_USERNAME'] = konfigurasi[1] app.config['BASIC_AUTH_PASSWORD'] = konfigurasi[2] antrian = Queue() basic_auth = BasicAuth(app) class BluetoothBackground(threading. Thread): def _init_(self, bluetooth_address, queue): threading. Thread._init_(self) self._bluetooth_address = bluetooth_address self._queue = antrian self.shutdown = False def run (self): self._bluetooth = self.get_bluetooth() sementara tidak self.shutdown: message = self._queue.get() self._bluetooth.send(message) self._bluetooth.close() def get_bluetooth(self): koneksi = bluetooth. BluetoothSocket(bluetooth. RFCOMM) connection.settimeout(None) try: connection.connect((self._bluetooth_address, 1)) kecuali Pengecualian, e: print 'Error connection to bluetooth' + str(e) connection.setblocking(False) mengembalikan kelas koneksi Webserver(threading. Thread): def run(self): port = in t(os.environ.get('PORT', 5000)) app.run(host='0.0.0.0', port=port, debug=True, use_reloader=False) @app.route("/send_to_serial/") @basic_auth.required def send_to_serial(command): queue.put(command) return 'ok' threads = threads.append(BluetoothBackground(configuration[3], queue)) threads.append(Webserver()) [thread.start () untuk utas dalam utas]

untuk menjalankan server, jalankan:

python server.py kata sandi pengguna 97:D2:31:20:A0:51

Oke, jadi server.py adalah skrip kami, pengguna dan kata sandi adalah kredensial yang digunakan untuk otentikasi Anda, dan "97:D2:31:20:A0:51" adalah alamat MAC bluetooth Anda.

D. gunakan server Anda untuk mengirim perintah dari mana saja di dunia

dari jenis browser:

- masukkan pengguna dan kata sandi yang telah Anda atur sebelumnya saat memulai server python

- "C30;" adalah perintah yang akan diteruskan ke perangkat bluetooth (kotak kami yang akan mengontrol nuansa)

- periksa apakah port 5000 tidak diblokir oleh firewall Anda (kami menggunakan port itu)

- jika Anda berada di belakang router (misalnya raspberry pi), Anda perlu membuat penerusan porta dari router dari port 5000 ke port 5000

e. Anda dapat menggunakan thingspeak untuk melakukan hal-hal seperti mengontrol bayangan pada jadwal waktu atau ketika beberapa data sensor saluran berubah. Misalnya Anda dapat menghubungkan sensor cahaya (di luar) ke thinkpeak dan ketika tingkat cahaya turun ke jumlah tertentu (malam hari), Anda dapat menutup tirai sehingga orang di luar tidak melihat Anda.

Anda dapat menghubungkan nuansa (server python yang telah kami siapkan sebelumnya) dengan thingspeak menggunakan ThingHTTP.

Saya telah menyertakan gambar formulir ThingHTTP dengan data yang diisi sebagai contoh dan gambar dengan TimeControl Jadi untuk fleksibilitas maksimum, thingspeak harus melakukan apa pun yang Anda butuhkan.

3. Melalui aplikasi otomatisasi rumah saya

Ini sedikit lebih rumit, aplikasi otomatisasi rumah saya melakukan lebih dari sekadar mengontrol nuansa.

Ini juga mengontrol lampu, pintu, memiliki banyak sensor, terintegrasi dengan sakelar dan memiliki aturan yang ditentukan pengguna yang kompleks yang misalnya dapat membuka tirai jika tingkat cahaya di dalam rendah, atau jika pagi hari.

Anda dapat memeriksa repositori github saya, dan jika Anda memiliki pertanyaan, saya akan dengan senang hati menjawabnya.

Jika Anda menemukan tutorial saya agak berguna, silakan bagikan atau tambahkan ke favorit. Dan saya ingin melihat beberapa komentar menarik juga:)

Direkomendasikan: