Daftar Isi:

Dashboard Sepeda Listrik (EBike) dan Monitor Baterai: 12 Langkah (dengan Gambar)
Dashboard Sepeda Listrik (EBike) dan Monitor Baterai: 12 Langkah (dengan Gambar)

Video: Dashboard Sepeda Listrik (EBike) dan Monitor Baterai: 12 Langkah (dengan Gambar)

Video: Dashboard Sepeda Listrik (EBike) dan Monitor Baterai: 12 Langkah (dengan Gambar)
Video: Bahaya baterai sepeda listrik yang meledak #shorts 2024, Juli
Anonim
Dasbor Sepeda Listrik (EBike) dan Monitor Baterai
Dasbor Sepeda Listrik (EBike) dan Monitor Baterai

Proyek ini merupakan rangkaian Arduino yang memonitor tegangan dan arus baterai dengan modul ACS 712. Pengukuran dikomunikasikan melalui Bluetooth dengan modul HC-05 ke perangkat Android. Pada dasarnya Anda memasang kembali koneksi negatif antara pengontrol dan baterai untuk melewati modul ACS712.

Aplikasi Android menampilkan status baterai serta kecepatan dan jarak saat ini yang ditempuh dari GPS Android

Android dapat dipasang ke sepeda dalam tas tahan cuaca. Sirkuit Arduino dipasang secara permanen di kotak tahan cuaca di sepeda dekat baterai.

Kode Android dan Arduino tersedia di github. (https://github.com/edj2001/BikeDashArduino dan

github.com/edj2001/BikeDashAndroid. Anda juga memerlukan perpustakaan https://github.com/edj2001/AndroidBluetoothLibrar… dan

Ada versi komersial dari produk serupa yang tersedia jika ini lebih dari yang dapat Anda tangani. Anda dapat dengan mudah menemukannya dengan googling "bluetooth 36v watt meter". Jika Anda melihat beberapa gambar, Anda akan melihat Arduino Pro Mini, catu daya DC-DC, dan modul HC-05 (atau -06) di bagian belakang.

Jika Anda pernah bertanya-tanya berapa banyak baterai yang tersisa, atau seberapa jauh Anda dapat menggunakan baterai, atau jika Anda perlu mengayuh atau mengurangi throttle untuk mencapai tujuan Anda, inilah yang Anda butuhkan.

Keuntungan potensial lainnya adalah Anda dapat memutuskan untuk melepas komputer sepeda dari setang Anda, mengosongkan beberapa ruang, meskipun sekarang telepon Anda akan dipasang di sepeda Anda sebagai gantinya.

Seperti biasa, informasi ini diberikan apa adanya tanpa jaminan dalam bentuk apa pun, tersurat maupun tersirat. Anda bertanggung jawab atas apa pun yang Anda lakukan dengan informasi ini. Saya tidak akan bertanggung jawab atau berkewajiban dengan cara apa pun atas kerusakan apa pun. Lihat bagian penafian di Persyaratan Layanan.

Langkah 1: Pembaruan yang Dapat Diinstruksikan

PeterB476 menunjukkan kepada saya bahwa saya telah lalai memasukkan langkah untuk menginisialisasi Arduino EPROM, jadi saya telah menambahkannya ke instruksi.

Saya juga telah menambahkan 2 versi baru aplikasi ke langkah selanjutnya. Mereka belum diuji secara menyeluruh tetapi Anda dapat mencobanya.

Langkah 2: Instal Aplikasi Android

Tidak ada gunanya melanjutkan sisa proyek ini jika aplikasi android tidak berfungsi di perangkat Anda. Rilis dari github memiliki apk android terlampir. File apk juga terlampir di sini. Pastikan setidaknya bagian GPS dari aplikasi berfungsi, dan Anda dapat mencoba menyambungkan ke perangkat bluetooth.

Jika Anda ingin membuat aplikasi sendiri, saya sarankan Anda memulai dengan titik "rilis" karena mungkin berhasil di beberapa titik, sedangkan cabang "master" terbaru mungkin memiliki pembaruan yang belum diuji.

Salin file apk ke perangkat Anda. Anda harus mengizinkan "Sumber Tidak Dikenal" di pengaturan Keamanan di perangkat Anda karena apk tidak berasal dari Google Play. Kemudian cukup ketuk file apk di perangkat Anda untuk menginstalnya.

Jelas aplikasi memerlukan izin bluetooth untuk berkomunikasi dengan Arduino, dan izin GPS untuk menentukan kecepatan dan jarak tempuh Anda.

Tekan tombol "jarak jauh" untuk mencoba menyambung ke perangkat bluetooth. Tekan "reset" untuk mengatur ulang jarak tempuh ke 0. Tahan baterai Ah digunakan bidang untuk mengatur ulang setelah Anda mengisi baterai Anda. Nilai Ah yang digunakan akan disimpan jika Anda mematikan dan menghidupkan baterai tanpa mengisi daya.

Langkah 3: Kumpulkan Bagian

Kumpulkan Bagian
Kumpulkan Bagian
Kumpulkan Bagian
Kumpulkan Bagian
Kumpulkan Bagian
Kumpulkan Bagian

Perhatikan bagian-bagian ini untuk baterai 36V. Jika Anda memiliki baterai 48V, Anda perlu mengubah resistor 10K menjadi 11K atau 12 K, dan Anda memerlukan konverter DC-DC yang berbeda.

1 Kandang tahan cuaca. Saya menggunakan kotak listrik PVC 4x4x2 inci.

1 buah Stripboard atau Protoboard favorit Anda

1 Arduino Pro Mini, 5V 16 MHZ. Anda juga dapat dengan mudah membuat arduino bareboard karena Anda tidak memerlukan pengatur tegangan atau antarmuka usb. Yang Anda butuhkan hanyalah ATMEGA328P, kristal 16MHZ, dan beberapa kapasitor. Anda juga bisa menggunakan Arduino Nano jika Anda memiliki ruang di kandang Anda. Nano lebih besar dari dua pilihan pertama, tetapi memiliki antarmuka USB bawaan jika Anda tidak memiliki konverter serial.

1 modul ACS712 agar sesuai dengan kisaran baterai Anda saat ini. Saya menggunakan modul 20A untuk baterai 8A saya.

1 modul bluetooth HC-05. Saya suka variasi ZS-040, jenis 6 pin dengan tombol tekan. Ini akan diberi label ZS-040 di bagian belakang.

1 50V ke 5V DC-DC power supply jika sepeda Anda memiliki baterai 36V, yang akan terisi penuh sekitar 42V. Jika Anda memiliki baterai 48V, baterai akan terisi penuh 56 atau 57V, jadi Anda mungkin memerlukan catu daya yang berbeda. Beri tahu kami apa yang Anda gunakan jika Anda menemukan sesuatu untuk 60V. Beberapa orang mengatakan bahwa sebagian besar kutil dinding usb bekerja pada 48VDC (dan lebih tinggi), tetapi saya belum mencobanya.

Resistor 1/4W: 1 x 2K, 1 x 10K, 2 x 1K (tambahkan 10K jika baterai Anda lebih dari 36V).

Dudukan sekering in-line dan sekering 2A.

Strip Header sudut lurus dan kanan

Blok terminal 5,08 mm, 2 x 2

16AWG kawat terdampar untuk interkoneksi modul.

Kawat padat 22AWG untuk sirkuit arduino

Terminal Blok Strip untuk koneksi baterai dan sepeda

Besi solder

pateri

Sebuah cara untuk memasang perangkat android Anda ke sepeda Anda.

Untuk memprogram modul Arduino dan HC-05, Anda juga memerlukan konverter serial usb ke ttl 3.3V (atau setidaknya programmer ISP) dan ide Arduino dari https://www.arduino.cc/en/Main/Software. Proyek ini dilakukan dengan versi 1.6.13, versi yang berbeda mungkin atau mungkin tidak berfungsi tanpa modifikasi.

Langkah 4: Inisialisasi Arduino EPROM

Saya lalai memasukkan langkah ini dalam instruksi asli. Area EPROM yang digunakan oleh sketsa perlu diinisialisasi agar sketsa berfungsi dengan baik. Sketsa dapat ditulis untuk melakukannya secara otomatis, tetapi pada titik ini tidak.

Jika Anda tidak bekerja dengan kode sumber arduino, Anda dapat mengunduh file hex yang dilampirkan pada langkah ini ke arduino Anda untuk menginisialisasi EPROM.

Jika Anda bekerja dengan kode sumber arduino, ada dua baris di bagian setup() yang terlihat seperti ini:

// inisialisasi EEPROM saat pertama kali program dijalankan.

//perbaruiEPROM();

Jika Anda menghapus komentar pada baris kedua sehingga terlihat seperti ini:

// inisialisasi EEPROM saat pertama kali program dijalankan.

perbaruiEPROM();

Unduh sketsa itu ke arduino dan biarkan berjalan. EPROM akan diinisialisasi. Kemudian recomment baris untuk langkah berikutnya.

EPROM digunakan untuk mengingat berapa banyak baterai yang telah digunakan sehingga Anda dapat mengendarai sepeda Anda, menghentikan dan mematikan baterai, dan ketika Anda menyalakannya kembali, itu akan mulai dari tempat Anda tinggalkan.

Langkah 5: Konfigurasi Arduino

Unduh kode Arduino (file hex terlampir) ke Pro Mini menggunakan Arduino IDE atau avrdude sendiri. Biasanya Anda akan menggunakan usb to serial converter untuk ini, tetapi Anda juga bisa menggunakan programmer ISP.

Sekali lagi, jika Anda ingin mengompilasinya sendiri, mulailah dengan "rilis". Cabang "master" terbaru mungkin memiliki perubahan yang belum teruji.

Jika Anda mengubah resistor 10K menjadi sesuatu yang lebih tinggi, Anda juga perlu mengubah konstanta pembagi tegangan baterai dalam sketsa. Ubah 11.0 di baris "double VBmultiplier = 11.0;" untuk mencocokkan apa pun yang Anda instal.

Langkah 6: Konfigurasi Modul HC-05

Konfigurasikan Modul HC-05
Konfigurasikan Modul HC-05
Konfigurasikan Modul HC-05
Konfigurasikan Modul HC-05

Anda perlu mengkonfigurasi baud rate pada modul HC-05. Ini juga bagus untuk memberikan nama yang Anda dapat dengan mudah mengenali nanti (seperti "SEPEDA").

Anda menggunakan modul konverter serial usb ke ttl untuk ini juga. Jika Anda tidak memiliki konverter serial, Anda dapat menulis sketsa untuk arduino untuk mengonfigurasinya, atau saya kira jika Anda memiliki 2 modul HC-05, Anda dapat menghubungkannya bersama-sama dan menggunakan satu untuk memprogram yang lain (mungkin).

Ada tulisan yang bagus tentang modul ini di

Anda perlu mengonfigurasi baud rate ke 4800 agar sesuai dengan sketsa Arduino, dan mengubah namanya menjadi "BIKE" atau sesuatu yang akan Anda kenali.

Setelah modul dikonfigurasi, Anda dapat memasangkannya dengan perangkat android Anda di pengaturan bluetooth Anda.

Langkah 7: Merakit Sirkuit

Saya telah melampirkan pindaian diagram pengkabelan yang digambar tangan untuk referensi, jika seseorang cukup ambisius untuk menggambar ulang dengan baik, beri tahu saya:)

Buat koneksi berikut:

(+) Baterai Sepeda ke satu sisi sekering dan pengontrol sepeda.

Sisi lain dari fuse to DC converter (+) terminal IN dan resistor 10K untuk input tegangan baterai pada Arduino.

(-) Baterai Sepeda ke (-)IN pada konverter dan satu terminal daya ACS712.

Pada titik ini pastikan bahwa Anda memiliki 5V dari konverter DC Anda ketika Anda menghidupkan baterai Anda jika Anda belum melakukannya.

Matikan kembali baterai dan selesaikan koneksi:

(+) KELUAR dari konverter Arduino 5V, HC05 VCC, ACS712 VCC.

(-)OUT dari converter ke Arduino GND, HC05 GND, ACS712 GND, Arduino pin A2.

HC05 TXD ke pin Arduino 7

HC05 RXD dari pembagi resistor bluetooth.

Arduino pin 8 ke pembagi resistor bluetooth.

ACS712 OUT ke pin Arduino A3

Pembagi Tegangan Baterai ke pin Arduino A1

(-) dari Pengendali Sepeda ke terminal daya kedua di ACS712.

Tombol reset tambahan sebenarnya tidak terlalu diperlukan, mungkin hanya nyaman ketika ingin mengunduh ke arduino setelah dipasang di sepeda Anda. Anda mungkin dapat mencapai tombol reset pada arduino, atau Anda dapat mengatur ulang dari antarmuka serial jika pro mini Anda mendukungnya.

Periksa kembali koneksi Anda.

Langkah 8: Verifikasi Awal

Pada titik ini Anda dapat menghidupkan sirkuit dan memverifikasi bahwa Anda mendapatkan pembacaan di aplikasi android.

Anda harus dapat menghubungkan bluetooth ke sepeda dan melihat tegangan baterai dan mudah-mudahan mendekati nol arus baterai. Jika Anda dapat memutar sepeda dan melihat perubahan pembacaan saat ini, maka semuanya berfungsi.

Aplikasi mengasumsikan arus positif menguras baterai, jadi jika pembacaan menunjukkan arus negatif saat Anda memutar sepeda, cukup tukar dua kabel arus pada modul ACS712.

Jika Anda tidak melihat bacaan apa pun di aplikasi, Anda dapat melihat lampu pada modul bluetooth untuk memastikannya terhubung dan mentransmisikan data. Anda dapat menginstal aplikasi terminal bluetooth pada perangkat Anda untuk melihat data yang dikirim dari sirkuit. Anda akan melihat sekitar 10 baris per detik dari pembacaan arus, dan satu baris per detik dari tegangan baterai dan jumlah baterai yang digunakan. Jika Anda tidak melihat apa-apa, periksa kembali konfigurasi modul HC05 dan koneksi antara arduino, pembagi resistor, dan terminal TXD HC05.

Terakhir, jalankan sepeda cukup lama untuk menampilkan nilai bukan nol pada tampilan baterai bekas. Kemudian tekan lama pada nomor tersebut sampai muncul roti panggang bahwa penggunaan telah diatur ulang. Jumlahnya harus kembali ke nol. Jika tidak setelah mencoba beberapa kali, periksa kembali koneksi dari terminal RXD HC05 ke Arduino.

Langkah 9: Majelis Akhir

Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir

Pasang semua perangkat keras pemasangan dan pasang sirkuit arduino ke sepeda Anda. Pasang perangkat android Anda di tas atau tempat lain dan Anda siap untuk pergi!

Gambar-gambar menunjukkan tusukan baterai di sepeda saya, dan tas untuk perangkat android saya.

Anda dapat melihat papan kecil untuk koneksi pembagi tegangan baterai dan ACS712 dipasang sehingga saya dapat mencapai sekrup blok terminal setelah memasang semuanya. Modul bluetooth HC-05 kembali berada di pojok kanan.

Strip terminal putih memiliki semua koneksi baterai dan pengontrol sepeda ke sirkuit.

Jika saya harus melakukannya lagi, saya pasti akan menggabungkan pembagi tegangan Baterai dan ACS712 pada papan anak yang sama. Saya mungkin juga mencoba memasang modul bluetooth pada papan anak di bawah arduino.

Langkah 10: Langkah Masa Depan

Aplikasi Android dapat menggunakan banyak pekerjaan. Saya ingin menambahkan beberapa perubahan warna berdasarkan rentang pengukuran. Saya juga ingin menambahkan indikasi bahwa pengukuran tidak diperbarui di aplikasi. Anda juga dapat menambahkan beberapa pengukur grafis. Bahkan ikon yang bagus akan menjadi peningkatan besar.

Fitur terbaik adalah "perkiraan kosong" yang akan memberi tahu Anda jarak yang dapat Anda tempuh dengan baterai yang tersisa, dan apakah itu lebih dari jarak ke tujuan Anda. Karena saya biasanya berkendara ke kantor atau ke rumah, pikiran saya adalah memiliki "titik arah" GPS yang disimpan di aplikasi yang memiliki sisa jarak ke rumah, dan berapa banyak baterai yang digunakan rata-rata di titik jalan itu. Anda mungkin juga dapat melakukan sesuatu dengan koneksi data, tetapi saya biasanya tidak memilikinya.

Saya ingin pindah dari perpustakaan bluetooth di aplikasi ini ke yang lebih berkembang yang memiliki koneksi ulang otomatis misalnya.

Jika Anda membangun ini, Anda dapat mempertimbangkan untuk menambahkan filter low pass perangkat keras pada arus terukur dan mengukurnya secara terpisah untuk digunakan dalam perhitungan total biaya yang digunakan. Pada beban rendah, kurang dari 4A atau lebih, pengukuran sangat bervariasi, +/-1A. Saya tidak yakin apakah itu hanya masalah pengukuran atau arus berubah sebanyak roda berputar. Bagaimanapun, pengukuran terpisah dari arus rata-rata selama satu atau dua detik mungkin membantu dengan akurasi. Anda bisa saja mengambil sampel arus lebih cepat dan melakukannya dalam perangkat lunak, tetapi saya tidak tahu seberapa cepat Anda harus mengambil sampel. Saya kira meletakkan osiloskop pada sinyal dapat membantu mengetahui seberapa cepat untuk mengambil sampelnya.

Anda dapat menambahkan hal-hal seperti tabung pitot untuk mengukur kecepatan angin (sudah ada instruksi untuk itu).

Anda dapat menambahkan kontrol throttle loop tertutup dari arduino.

Jika Anda selalu menginginkan sumber daya USB di sepeda Anda, Anda dapat dengan mudah menjalankan kabel dari konverter 5V DC untuk arduino hingga ke mana pun Anda memerlukan sambungan daya USB.

Langkah 11: Pertanyaan dan Komentar

Jika Anda memiliki pertanyaan umum tentang salah satu item di sini, sebaiknya Anda mencarinya di Google daripada mengajukan pertanyaan di sini. Tak satu pun dari item yang penting, Anda hampir pasti dapat mengganti sesuatu yang lain dan menyelesaikan pekerjaan.

Jangan minta saya untuk mengirimkan kodenya, semuanya ada di github. Dapatkan dari sana. Anda bahkan tidak memerlukan akun github.

Tolong jangan tanya saya bagaimana melakukan sesuatu di Android Studio atau di Arduino. Saya mungkin tidak tahu. Sekali lagi, googling saja.

Jangan tanya saya tentang produk Apple apa pun, saya tidak tahu.

Jika aplikasi tidak berfungsi di perangkat Anda, saya minta maaf. Tapi saya mungkin tidak tahu bagaimana cara memperbaikinya sehingga bisa. Ini berfungsi di ponsel saya, hanya itu yang saya butuhkan.

Meskipun saran untuk perbaikan dipersilakan, saya mungkin tidak akan pernah menerapkannya, saya memiliki hal-hal lain untuk dilanjutkan. Saya mungkin tidak akan pernah menerapkan saran saya sendiri. Taruhan terbaik Anda adalah memotong kode di github dan menambahkannya sendiri. Jika ya, beri tahu orang-orang di sini agar mereka dapat menggunakan kode Anda alih-alih kode saya.

Jika Anda telah membuat versi yang lebih baik sendiri, harap kirimkan referensinya di sini sehingga orang lain akan mengetahuinya. Saya tidak akan tersinggung. Saya akan dengan senang hati mengambil versi Anda dan mulai menggunakannya.

Langkah 12: Pembaruan Aplikasi untuk Pengujian

Ini adalah versi aplikasi yang diperbarui.

Angkanya jauh lebih besar. Ada ikon baru. Tidak ada tombol "sambungkan" lagi. Gunakan opsi "sambungkan - aman" dari menu pojok kanan atas.

Versi ini juga harus berfungsi kembali ke Android versi 2.3 gingerbread. Ini bekerja pada lg P500 Optimus One saya.

Versi "app-settings-debug.apk" memiliki menu pengaturan untuk memungkinkan mengatur kapasitas baterai Anda sehingga persentase perhitungan yang tersisa benar. Itu belum sepenuhnya diuji.

Direkomendasikan: