Isi kandungan:

Langsir Rumah Automatik - Projek Mini Dengan MakerChips’BluChip (nRF51 BLE) Modul: 7 Langkah (dengan Gambar)
Langsir Rumah Automatik - Projek Mini Dengan MakerChips’BluChip (nRF51 BLE) Modul: 7 Langkah (dengan Gambar)

Video: Langsir Rumah Automatik - Projek Mini Dengan MakerChips’BluChip (nRF51 BLE) Modul: 7 Langkah (dengan Gambar)

Video: Langsir Rumah Automatik - Projek Mini Dengan MakerChips’BluChip (nRF51 BLE) Modul: 7 Langkah (dengan Gambar)
Video: DIY Batang / Rod Langsir / Tirai Guna Paip PVC 2024, Julai
Anonim
Tirai Rumah Automatik - Projek Mini Dengan Modul BluChip MakerChips (nRF51 BLE)
Tirai Rumah Automatik - Projek Mini Dengan Modul BluChip MakerChips (nRF51 BLE)

Bayangkan bangun dan ingin mendapatkan sinar matahari melalui tingkap anda, atau menutup tirai supaya anda dapat tidur lebih jauh, tanpa usaha untuk mendekatkan diri dengan tirai melainkan dengan sentuhan butang pada telefon pintar anda. Dengan Sistem Tirai Rumah Automatik, anda dapat mencapainya dengan komponen yang harganya tidak lebih dari $ 90!

Lihat tutorial ini di Github

Langkah 1: Reka Bentuknya

Rekaan
Rekaan

Inti Sistem Tirai Rumah Automatik adalah modul BluChip MakerChips.

The BluChip adalah modul Bluetooth 16.6x11.15mm kecil yang dapat berfungsi sebagai periferal untuk telefon pintar melalui BTLE.

Klik di sini untuk pengenalan kepada Bluetooth Low Energy (BTLE).

Modul ini terdiri daripada nRF51 SoC by Nordic Semiconductors, platform yang bagus untuk aplikasi BLE kerana menyokong banyak ciri bersepadu pada aplikasi Android dan Apple.

Langkah 2: Kit Penjelajah BluChip

Kit Penjelajah BluChip
Kit Penjelajah BluChip
Kit Penjelajah BluChip
Kit Penjelajah BluChip
Kit Penjelajah BluChip
Kit Penjelajah BluChip

Untuk membina projek ini, saya mendapat Kit Penjelajah BluChip dari MakerChips yang tiba dalam 2 kotak berasingan, satu untuk pengaturcara CMSIS-DAP dan satu lagi kotak yang berisi BluChip pada papan roti dengan 2 LED RGB, perintang foto dan bateri CR2032.

Seperti yang anda perhatikan, modul BluChip sangat kecil, menjadikannya sempurna untuk projek Bluetooth berkuasa rendah tertanam kecil. Ini sesuai dengan jejak hanya 6x4 0.1 "header di papan roti dan mempunyai tambahan 0.05" header di bahagian atas papan, cukup mengagumkan untuk pakej FCC yang diperakui secara komersial!

Berikut adalah beberapa ciri utama BluChip dari laman web MakerChips:

  • 14 Pin GPIO yang Boleh Diakses
  • Pemproses ARM Cortex M0 32bit dan flash 256KB dan RAM 32KB
  • 16,6 mm x 11,15 mm Modul Bluetooth ® papan roti terkecil tersedia
  • Bekalan kuasa menyokong 1.8V - 3.6V
  • Ciri Bluetooth

    • BTLE - Tenaga Rendah Bluetooth - (BLE, BT 4.1)
    • Bluetooth® dan Jepun, FCC, IC berkelayakan
    • Jam Sistem 32 Mhz bersepadu
    • Kuasa output: + 4dBm khas
    • Kekerapan: 2402 hingga 2480 MHz

      Antena corak prestasi tinggi bersepadu

    • Slave / Master Smart Bluetooth Mod Tunggal
  • Antara muka yang disokong: SPI, UART, I2C dan 8/9 / 10bit ADC
  • Dua set pin pengaturcaraan

    • Header.05 "untuk gandingan mudah ke peranti CMSIS-DAP dan J-Link
    • .1 "header untuk berinteraksi dengan papan roti
  • Perisian LED merah yang dikawal

Langkah 3: Aplikasi NRF Connect

Image
Image
Aplikasi NRF Connect
Aplikasi NRF Connect
Aplikasi NRF Connect
Aplikasi NRF Connect

Sebaik sahaja anda membuka kotak penjelajah BluChip, anda melihatnya hidup dengan LED berkelip, pemandangan yang cukup menarik, bukan?

Untuk melihat apa yang ada dalam modul BLE ini, mari teruskan dan pasang aplikasi nRF Connect dari Google Play atau App Store.

Kami akan menyambung ke BluChip dengan telefon kami, jadi buka aplikasi nRF Connect, telusuri skrin selamat datang, dan ketuk Aktifkan untuk menghidupkan Bluetooth. Seterusnya, ketik Imbas dan anda akan segera mengetahui bahawa peranti BluChip anda disenaraikan di bawah tab Pengimbas.

Sebelum kita benar-benar menyambung ke BluChip, mari dapatkan LED dan letakkan di papan roti di sebelah pin 026 (+ ve) dan 021 (-ve). LED harus segera menyala kerana pin 026 output 3.3V (tahap logik TINGGI) sedangkan pin 021 adalah logik RENDAH (Tanah).

Teruskan dan ketuk sambungkan untuk menjalin hubungan antara telefon pintar anda dan BluChip, yang kemudian membawa anda ke tab klien peranti di aplikasi.

Tab klien BluChip memaparkan semua perkhidmatan yang tersedia pada peranti anda. Apa yang kami minati di sini ialah Perkhidmatan GPIO BlueChip (disenaraikan sebagai Perkhidmatan Tidak Dikenal). Ketuk dan kemudian tekan pada anak panah menghadap ke atas di sebelah Karakteristik Modulasi GPIO (disenaraikan sebagai Karakteristik Tidak Diketahui).

Muncul pop timbul nilai tulis, memberi anda pilihan untuk mengirim data ke peranti BluChip anda. Dalam kes kami, kami ingin mematikan LED, jadi ketuk anak panah di sebelah BYTE ARRAY dan ubah format data menjadi UINT 8. Kami akan menghantar nombor pin sebagai nilai pertama, jadi masukkan 21 untuk pin021. Ketuk nilai tambah untuk menghantar sekeping data seterusnya, keadaan pin yang akan ditetapkan (format BYTE hex). Untuk mematikan LED, kita akan menetapkan pin 021 hingga 3.3V (tahap logik tinggi), jadi masukkan 01 kemudian ketuk Kirim.

LED mati seketika! Untuk menghidupkan kembali LED, hantarkan nilai 0x00 (tahap logik RENDAH) ke pin021. Seperti yang dilihat di bawah ciri yang disenaraikan, nilai yang dihantar (0x) 15-01 akan dipaparkan. {[(perpuluhan UINT8) 21 = (hex BYTE) 0x15] + (hex BYTE) 0x01 => (hex BYTEs) 0x1501}

Sekiranya anda memilih menyimpan nilai ini pada pop timbul Nilai tulis dengan memberikan namanya dan kemudian mengetuk simpan, anda boleh memuatkannya pada masa akan datang sebagai pratetap untuk modulasi GPIO yang mudah!

Langkah 4: Memprogram BluChip

Mengaturcara BluChip
Mengaturcara BluChip
Mengaturcara BluChip
Mengaturcara BluChip
Mengaturcara BluChip
Mengaturcara BluChip

Anda akan menyedari dari video di atas bahawa nama peranti BluChip di telefon saya berbeza dari nama anda, jadi bagaimana kita mengubahnya mengikut keinginan kita sendiri?

Firmware aplikasi yang berjalan di BluChip berfungsi sebagai peranti Periferal (hamba) di atas peranti BLE hingga Pusat (master) seperti telefon pintar yang disambungkan kepadanya. Untuk menukar nama peranti kami, mari masuk ke firmware aplikasi yang berkelip ke BluChip kami.

Termasuk dalam kit BluChip Explorer adalah Programmer ARM (CMSIS-DAP). MakerChips telah memberikan panduan How-To yang rapi mengenai perincian flashing firmware ke BluChip dengan CMSIS-DAP.

Untuk menyusun firmware ke dalam fail hex dan mem-flashnya, kita memerlukan Keil, Kit Pembangunan Perisian nRF51 (SDK), dan firmware BluChip. Teruskan dan muat turun dari pautan di bahagian "Perisian" di halaman MakerChips 'Memprogram BluChip dengan CMSIS-DAP dan Keil.

Pasang Keil, kemudian ikuti langkah 1-3 di bahagian "Membuat Fail Hex".

Pada ketika ini, anda boleh meneruskan ke Langkah 4, Membangun Semula Semua Fail Sasaran.

Sekiranya anda mendapat ralat mengenai "core_cm0.h", anda perlu menambahkan jalannya ke projek untuk menyusunnya.

Kita hanya perlu mencari fail tersebut, dan mencari direktori, iaitu "\ components / toolchain / gcc".

Mari sertakan jalan ini ke projek kami. Klik Pilihan untuk Sasaran, pergi ke tab C / C ++ kemudian sertakan jalan seperti yang ditunjukkan pada Gambar 16.

Setelah memasukkan kebergantungan yang diperlukan, projek kami menyusun dan kini kami dapat melihat output yang disusun, fail hex tersuai di nRF51_SDK_10.0.0_dc26b5e / example / ble_peripheral / ble_app_ahc-master / bluchip / s110_with_dfu / arm4 / _buildnrf51422_xxac_s110.

Untuk mem-flash fail hex ke BluChip, ikuti langkah 1-8 di bahagian "Memindahkan Fail Hex".

Setelah anda memuatkan firmware ke BluChip dengan nama Peranti tersuai, jalankan aplikasi nRF Connect dan imbas peranti anda. Anda akan menyedari bahawa ia sekarang dinamai dengan apa yang anda tetapkan dalam DEVICE_NAME dalam firmware!

Pada langkah seterusnya, kami akan mula menyiapkan perkakasan, elektronik & perisian Sistem Tirai Rumah Automatik kami.

Langkah 5: Membina Tirai Automatik

Image
Image
Membina Tirai Automatik
Membina Tirai Automatik
Membina Tirai Automatik
Membina Tirai Automatik
Membina Tirai Automatik
Membina Tirai Automatik

Setelah meninjau proses menyusun dan mem-flash firmware kami, mari kita terus membina tirai bluetooth kita sendiri!

Motor stepper akan digunakan untuk menggerakkan timing belt yang menggerakkan tirai terbuka dan ditutup. Motor stepper dipacu oleh IC pemandu Half-H yang akan dikendalikan oleh BluChip.

Untuk kuasa, kami akan menggunakan pengatur voltan AC-DC 12V yang dimasukkan ke motor, bersama-sama dengan pengatur voltan DC-DC LM317 untuk turun 12V hingga 3.3V yang akan memberi kuasa kepada IC Pemacu BluChip dan Stepper.

Anda boleh mendapatkan modul BluChip anda sendiri dari kedai baru MakerChips di Tindie, atau dari Laman Web MakerChips.

Mari dapatkan bahagian yang disenaraikan di bawah sebagai tambahan kepada Kit Penjelajah BluChip untuk mula memasang tirai automatik:

  • Penyesuai Kuasa 12V 1A $ 3.40
  • Barel Jack $ 0.68
  • Pengatur Voltan LM317T $ 0.80
  • Perintang (200 & 330 Ohm) $ 1.69
  • Pemandu Stepper L293D $ 1.63
  • Unipolar Stepper Motor $ 8.00 (atau $ 1.66 <= ubah unipolar yang lebih kecil ini menjadi stepper bipolar)
  • Timing Belt 6mm $ 7.31
  • Gear 6mm $ 0.54 (atau dicetak 3D dari Thingiverse)
  • Pulley 6mm $ 1.17 (atau dicetak 3D dari Thingiverse)
  • Limit Switch x2 (pilihan) $ 1.34
  • Kotak Penutup Projek (pilihan) $ 1.06
  • Kawat Jumper Breadboard $ 2.09
  • Wayar Dupont Jumper $ 2.80
  • Jalur Getah $ 1.13
  • Putar Ikatan $ 3.22
  • 22 AWG Wire (pilihan) $ 1.22
  • Ikatan zip (pilihan) $ 0.63
  • Susut tiub (pilihan) $ 1.97

Alat (pilihan):

  • Hot Glue Gun $ 3.75
  • Besi Pateri $ 6.79

Muat turun Bil Bahan dari GitHub (Amazon)

Gambar 20 menunjukkan bagaimana anda akan memasang sistem, bergantung pada ciri apa yang anda pilih untuk ditambahkan. Sekiranya anda mahukan pergerakan yang lebih tepat, anda akan menambahkan suis had pada projek.

Suis had adalah titik akhir ke tirai yang memberitahu BluChip ketika dibuka atau ditutup. Tanpa Switch Limit, anda perlu mengkonfigurasi firmware untuk menunjukkan sejauh mana tirai anda bergerak di bahagian "Firmware Configuration" yang akan datang.

Gambar 20 juga merangkumi perintang foto pilihan yang memungkinkan untuk mengesan siang dan malam, juga dapat dikonfigurasi di bahagian "Firmware Configuration".

Mulakan pemasangan perkakasan dengan memasang motor stepper, pulley & timing belt ke bahagian atas langsir anda. (Gambar 21)

Ketatkan tali masa untuk sementara waktu dengan tali getah. Kemudian, sebelum menyelesaikan projek, anda akan mengikatnya bersama-sama untuk memegangnya secara kekal.

Untuk melekatkan langsir ke tali pinggang masa anda, gelung Ikatan Kawat di sekitar tali pinggang dan cangkuk tirai.

Untuk mendapatkan idea yang lebih baik tentang cara memasang tirai ke tali pinggang, ikuti Gambar 22. Anda akan mengikat tirai kiri ke belakang tali pinggang masa dengan tali dawai, dan tirai kanan ke bahagian depan tali pinggang masa dengan tali leher.

Sebaik sahaja tali pinggang diikat dan tirai diikat, tanggalkan motor stepper sehingga kita dapat mula memasang dan menguji litar elektronik yang akan menggerakkannya. Mulakan membina elektronik dengan meletakkan Bluchip, L293d IC dan LM317t Voltage Regulator di papan roti mengikut hingga Gambar 20.

Masukkan perintang 200 & 330 ohm mengikut Rajah 20. Perintang menyesuaikan output LM317 sehingga memberikan ~ 3.3V. (Gambar 24)

Masukkan wayar pelompat kemudian bicu tong berwayar seperti yang ditunjukkan dalam Rajah 26.

Mari pasangkan penyesuai kuasa kami ke soket dinding, dan pasangkan penyesuai ke soket tong untuk menguji voltan seperti yang ditunjukkan pada Gambar 27.

Setelah voltan yang betul dipastikan, lepaskan soket kuasa dan mulailah meletakkan wayar pelompat papan selebihnya mengikut Gambar 20.

Selanjutnya, kita akan memasang motor stepper bipolar kita ke IC L293d.

Pertama, pasangkan wayar jumper Dupont ke dalam penyambung motor stepper seperti yang ditunjukkan dalam Rajah 29.

Untuk mengetahui wayar ke mana, ikuti skema dalam Rajah 30.

Seperti yang dilihat dalam skema, petunjuk dari satu gegelung menuju ke Pin2 & Pin6 dari L293D. Memimpin dari gegelung lain menuju ke Pin11 & Pin14.

Motor stepper bipolar 28BYJ-48 yang diubahsuai mempunyai empat wayar berwarna yang boleh digunakan seperti yang dilihat pada Rajah 31.

Kami memasang biru ke Pin3, kuning ke Pin6, oren ke Pin11 dan merah jambu ke Pin14 di L293d.

Litar asas kini selesai!

Sekiranya anda mahu melaksanakan suis had, kawat NO & C ke wayar 22AWG. Di hujung yang lain, pasangkan jumper DuPont untuk membentuk petunjuk yang sesuai dengan papan roti. (Gambar 32)

Anda boleh memasangnya ke rel tirai seperti yang ditunjukkan pada Gambar 33 dengan gelang getah, atau jika anda mempunyai pistol lem panas di tangan, anda boleh mengikatnya ke rel kemudian pasangkan sejumlah gam panas untuk memastikannya tidak bergerak sekitar.

Untuk mendapatkan idea di mana meletakkannya, rujuk Gambar 34.

Suis had satu dipasang pada hujung paling kiri rel tirai, antara cangkuk rel pertama dan yang kedua, sehingga apabila tirai membuka cangkuk menekan sakelar dan mengaktifkannya. Suis had yang lain diletakkan terus di tengah rel, menghadap ke kiri. Dengan cara ini, ia akan diaktifkan apabila tirai ditutup.

Masukkan had suis had ke papan roti mengikut Gambar 20.

Akhirnya, jika anda mahu tirai anda terbuka ketika matahari terbit dan ditutup ketika terbenam, anda perlu memasang wayar perintang foto seperti yang ditunjukkan dalam Gambar 36, dan memasangnya dekat dengan tempat yang mempunyai akses ke cahaya matahari pada waktu subuh.

Setelah anda selesai mengatur rangkaian papan roti, bersiaplah dan sambungkan pengaturcara anda ke BluChip untuk mem-flash firmware. Muat turun firmware dari GitHub dan ekstrak ke dalam direktori SDK anda seperti yang anda lakukan sebelumnya.

Muat turun ble_app_ahc.zip dari Github.

Buka projek, kemudian kompilasi dan muat naik firmware ke BluChip.

Sebelum mengujinya, kami akan memasukkan papan roti ke dalam kotak dan membuat lubang untuk wayar dan LED Status Tirai kami.

Letakkan papan roti ke dasar kotak penutup dan buat bukaan untuk wayar. Pembukaan juga berfungsi sebagai titik untuk BluChip berkomunikasi dengan peranti lain melalui antena. (Gambar 37)

Bor lubang ukuran LED di sisi kandang dan pasang LED di atasnya. Kabel LED mengikut Rajah 20.

Cari tempat yang sesuai untuk memasang kotak kandang di sebelah kiri rel tirai, berhampiran dengan soket elektrik. Pasang semula motor dan lakukan ujian ketegangan terakhir pada timing belt, pastikan tidak ada kendur. (Gambar 39)

Kini tiba masanya untuk menguji sistem pemasangan kami. Masukkan penyesuai kuasa dan jalankan aplikasi nRF Connect anda. Anda akan menemui peranti bernama Curtains. BluChip.

Sambungkannya, hantarkan nilai UINT8 1 (Buka langsir) ke Karakteristik Tidak Dikenal di bawah Perkhidmatan tidak diketahui, dan saksikan tirai terbuka!

Sekarang setelah anda berjaya menguji sistem anda, mari kita lihat konfigurasi beberapa kod yang menjalankan rancangan di BluChip.

Langkah 6: Konfigurasi Firmware BluChip

Konfigurasi Firmware BluChip
Konfigurasi Firmware BluChip
Konfigurasi Firmware BluChip
Konfigurasi Firmware BluChip
Konfigurasi Firmware BluChip
Konfigurasi Firmware BluChip

Projek firmware Tirai Rumah Automatik terdiri terutamanya daripada 4 fail: main.c, ahc.c, ble_ahc_service.c & ble_ahc_service.h.

Semasa membina elektronik & perkakasan, kami mempunyai pilihan untuk memilih apakah kami menginginkan suis had untuk meningkatkan ketepatan sistem automatik kami.

Dalam kod dari ahc.h, kita dapat melihat #definisi untuk LIMIT_SWITCHES.

Menyusun dan mengedipkan kod dengan #define LIMIT_SWITCHES membolehkan penggunaan kedua suis had untuk mengesan kapan tirai dibuka dan ditutup.

Menamakan semula menjadi #undef LIMIT_SWITCHES diperlukan jika anda memilih untuk tidak memasukkan suis had untuk projek anda. Dalam kes ini, anda perlu menyesuaikan jarak perjalanan tirai anda dalam pemboleh ubah CURTAIN_OPEN_STEPS dan CURTAIN_CLOSE_STEPS. Laraskan nilai-nilai ini untuk memanjangkan atau memendekkan jarak perjalanan tirai.

Pilihan lain, menambahkan photoresistor, boleh diaktifkan dengan mengubah #undef LDR menjadi #define LDR. LDR bermaksud perintang yang bergantung pada cahaya, juga dikenali sebagai photoresistor. Apabila kami mengaktifkan LDR, photoresistor mengetahui waktu di luarnya terang atau gelap, dan membantu anda menutup atau membuka tirai pada awal atau akhir hari.

Selain mengkonfigurasi Limit Switches dan Photoresistor, mari kita lihat beberapa blok utama kod lain yang membolehkan anda membuka dan menutup tirai secara automatik.

Fail ble_ahc_service.c & ble_ahc_service.h mengandungi kod yang menghantar data dari telefon anda ke BluChip.

Apabila BluChip menerima data, ia menguraikannya sesuai jika 0 atau 1 dihantar. Ia kemudian mengaktifkan LED status, melakukan pergerakan motor, dan kemudian mematikan penyelesaian isyarat LED.

Fungsi ahc_init () dari ahc.h dijalankan pada awal gelung utama, memulakan semua pin pada BluChip.

Langkah 7: Ringkasan

Sebagai kesimpulan, ini adalah projek yang sangat menyeronokkan dan cukup mudah untuk mempelajari asas-asas BLE. Fakta bahawa modul pelarian BluChip sesuai pada papan roti menjadikannya sangat mudah untuk membuat prototaip dengan cepat pada papan roti apa pun yang mungkin anda miliki.

Saya akan mengatakan bahawa setelah membina langsir automatik saya, saya sudah memikirkan pelbagai perkara lain untuk menghubungkan BluChip, termasuk neopixel pintar, OLED untuk membuat jam digital, robot terkawal telefon pintar, dan banyak projek elektronik berkuasa rendah yang lain. idea yang memerlukan komunikasi tanpa wayar yang padat!

Sesiapa yang berminat dengan elektronik dan pengaturcaraan akan terkejut dengan apa yang ditawarkan oleh BluChip, serta kemudahan menyiapkan dan melaksanakan BLE untuk mengubah projek menjadi projek yang lebih sejuk.

Mulai sekarang, saya akan kembali menikmati Tirai Rumah automatik saya yang berguna.

Disyorkan: