Sensor apa yang harus saya gunakan untuk menentukan apakah proyek saya bergerak?

9

Saya tidak peduli berapa banyak itu bergerak, seberapa cepat atau ke arah mana, saya hanya ingin proyek berbasis Arduino saya tahu apakah itu bergerak atau tidak (jadi saya bisa mematikan LED drain arus tinggi ketika sepeda saya diam untuk hemat baterai saya.)

Apakah saya ingin akselerometer, giroskop, atau sejenis sensor lainnya?

Robert Atkins
sumber
3
Proyek apa yang dilampirkan? Gerakan linier yang sangat konstan / stabil bisa lebih sulit dideteksi tetapi untuk mobil / sepeda dorong dll Anda biasanya dapat mendeteksi perubahan orentasi dan getaran dengan cukup mudah.
PeterJ
Apa jenis perangkat Anda? Itu terranean, kereta api, air, kendaraan udara atau yang lainnya? Juga bagaimana Anda mendefinisikan istilah 'bergerak'? E. g. Perangkat saat dibawa dengan transportasi dianggap bergerak atau tidak?
Vovanium
Edit untuk menunjukkan proyek yang dipasang di sepeda. Ini bukan di rel ;-).
Robert Atkins
@LeoR Saya berpikir akselerometer mungkin akan digunakan, tetapi kemudian saya menemukan jawaban ini: electronics.stackexchange.com/questions/105826/… (sensor getaran pegas-dalam-tabung). Apakah saya terlalu banyak berpikir? Dapatkah saya menambahkan beberapa pasif ke ini sehingga akan melaporkan "tinggi" ke pin Arduino selama 30-60 setelah terakhir kali saklar membuat kontak?
Robert Atkins
2
Tambahkan override: Anda mungkin tidak ingin lampu mati di lampu lalu lintas!
Brian Drummond

Jawaban:

10

Jika itu untuk digunakan pada sepeda maka saya akan menggunakan rangkaian pendeteksian opto berdaya rendah pada jari-jari roda. Ada beberapa varian dari hal ini dan yang terpenting adalah kemampuan untuk menggerakkan LED untuk menghemat daya, jika sebuah bilah lewat 10 kali per detik (menunjukkan kecepatan minimum) maka Anda harus menyalakan daya LED setidaknya 0,1 detik dan "lihat" untuk gangguan balok - ini menunjukkan pergerakan. Hanya sebuah ide.

Anda juga dapat mempertimbangkan sakelar pelana sehingga jika seseorang tidak duduk di atas pelana dan tidak ada gerakan yang terdeteksi maka LED dimatikan sepenuhnya.

Andy alias
sumber
5
Secara tradisional speedometer sepeda menggunakan saklar buluh dan magnet yang melekat pada salah satu jari-jari. Sebuah roda sepeda (bersentuhan dengan tanah dan di bawah tenaga manusia) tidak dapat berputar lebih cepat dari 20 hz atau lebih sebuah saklar buluh murah bisa pergi. Tidak ada daya saat tidak digunakan, tarikan beban resistor saat dinyalakan. Saya memiliki nirkabel yang berjalan selama bertahun-tahun pada sepasang sel koin.
Phil
7

Accelerometer akan cocok dalam banyak kasus. Secara teknis akselerasi akan 0 pada kecepatan konstan, tetapi dalam praktiknya kecuali proyek Anda dipasang pada semacam rel getaran yang sangat rendah Anda akan melihat percepatan berfluktuasi selama gerakan. Seharusnya cukup sederhana untuk menggunakan rolling average di setiap sumbu dan menganggap perangkat sebagai "bergerak" ketika variasi berada di atas ambang batas tertentu. Akan ada sedikit akselerasi acak yang terdeteksi ketika perangkat tidak bergerak, tetapi pengurasan harus menghadapinya.

Anda bisa mendapatkan papan dengan akselerometer I2C yang terpasang padanya dari banyak pemasok elektronik penghobi. Prosedur untuk berbicara dengan mereka akan sedikit berbeda tergantung pada chip, tetapi umumnya berbicara dengan perangkat I2C dari arduino cukup mudah.

LeoR
sumber
Hati-hati dengan hanya menggunakan akselerasi saja, saat bepergian dengan kecepatan konstan Anda akan melihat 0 akselerasi juga.
helloworld922
7
Saya tidak berpikir saya pernah melihat kendaraan yang bergerak yang benar-benar bergerak dengan kecepatan konstan. Setiap kali saya bermain dengan akselerometer, Anda dapat dengan jelas membedakan antara "bergerak" dan "diam" karena saat Anda bergerak setidaknya satu sumbu akan berfluktuasi dengan getaran dan sentakan acak.
LeoR
Anda harus menggunakan variasi rata-rata berlari. Ini akan memungkinkan Anda untuk, misalnya, mengatur sepeda pada sisinya dan tidak terus-menerus memicu karena percepatan karena gravitasi.
Samuel
Pasang saja accelerometer pada setang. Itu mungkin dekat dengan LED, dan setang tidak pernah stabil saat berkendara.
MSalters
7

Saat Anda menentukan 'melihat apakah itu bergerak' sebagai tujuan Anda. Saya mungkin merekomendasikan ukuran yang berbeda untuk memeriksa apakah sepeda sedang bergerak. Jumlah penangkapan akselerometer kebisingan sangat mencengangkan - bisa jadi situasi Anda sedemikian rupa sehingga akan ada penggambaran yang jelas antara 'digunakan dan bergerak' dan 'tidak dalam pengguna dan masih bergerak (sedikit)'. Saya tidak akan mengharapkan hal itu terjadi.

Patut dipertimbangkan bahwa jika sepeda terpasang / diparkir dalam struktur yang sering bergerak (orang lain menempel atau melepaskan sepeda, kereta atau kendaraan di dekatnya, di dalam ruangan di dekat pompa HVAC yang gila, di dalam ruangan di lantai kayu / goyang ketika seseorang melintas. ..) maka lampu Anda akan menyala setiap kali sepeda bergerak. Ini bukan yang Anda inginkan. Anda ingin lampu menyala ketika pengendara (Anda) menggerakkan sepeda. Untuk itu sensor kedekatan (yang diblokir hanya ketika Anda berada di sepeda) atau bahkan sesuatu seperti sensor kecepatan / buluh akan bekerja. Berikut ini adalah tutorial untuk speedometer sepeda Arduino menggunakan saklar buluh: http://www.instructables.com/id/Arduino-Bike-Speedometer/ Bonus dari ini adalah Anda mendapatkan pembacaan cepat dan itu akan cukup sepele untuk menambahkan pemicu untuk lampu (dengan mematikan mematikan untuk periode ketika sepeda tidak bergerak untuk lampu / lalu lintas dan sejenisnya.)

Nahkki
sumber
5

Accelerometer seperti yang disarankan orang lain cukup mudah digunakan terutama pada Arduino dengan semua perpustakaan dan papan breakout tersedia. Hal lain yang mungkin patut dilihat adalah Sensor Getaran Piezo seperti ini yang tersedia dari Sparkfun seharga $ 2,95 saat ini:

masukkan deskripsi gambar di sini

Hanya berhati-hatilah untuk mencatat seberapa tinggi output tegangan, mereka menyarankan menggunakan pembagi resistor untuk mengurangi tegangan dan menggunakan pin ADC. Sementara saya tidak tertarik secara pribadi dalam menggunakan klem dioda internal dalam AVR jika Anda menggunakan mengatakan resistor batas arus seri 1K mengingat arus rendah untuk memulai dengan Saya tidak dapat melihat Anda akan memiliki terlalu banyak masalah menghubungkan ke digital masukan jika itu memberikan sensitivitas yang cukup dan sedikit kenaikan Vcc tidak akan menyebabkan masalah lain sampai klem mulai berlaku.

Pokoknya itu mungkin sensor lain yang akan menarik untuk dilihat. Meskipun mungkin tidak terlalu penting bagi Arduino yang memiliki arus diam yang relatif tinggi pada regulator dan proyek khusus Anda, mereka bisa rapi untuk banyak proyek. Mereka menarik daya nol dan dapat digunakan untuk membangunkan mikrokontroler dari tidur nyenyak dengan asumsi Anda mendapatkan getaran yang cukup untuk memicu logika tingkat tinggi.

PeterJ
sumber
+1 untuk kemungkinan membangunkan mikro!
Seidleroni
4

Beberapa jenis kamera kecepatan tinggi beresolusi rendah dan optik yang mengambil banyak foto (pada ratusan atau ribuan frame per detik ) dari permukaan tempat ia bergerak, dan membandingkannya secara real time dengan prosesor yang dibangun khusus untuk mengukur gerak. Lebih disukai semuanya menggunakan chip, dengan antarmuka MCU yang nyaman.

Dengan kata lain, sensor mouse optik. masukkan deskripsi gambar di sini

Sayangnya, sepertinya bagian Avago tidak lagi tersedia dalam distribusi, tetapi Anda dapat meretas mouse optik, yang akan memberi Anda optik dan LED penerangan juga (Anda mungkin harus memodifikasi optik untuk mendapatkan jarak yang sesuai). Banyak sensor tampaknya berasal dari Pixart di Taiwan, dan lembar data tersedia (sering kali tidak benar).

Spehro Pefhany
sumber
2

Banyak dari tanggapan ini yang terlalu rumit dan kemungkinan besar akan menghasilkan positif palsu dan / atau negatif palsu. Accelerometer akan padam jika sepeda digerakkan sama sekali, dan tidak akan menyala jika Anda bergerak dengan kecepatan konstan. Mengambil rekaman optik dari tanah adalah proses yang mahal dan tidak terlalu dapat diandalkan jika sensornya tidak terlalu bagus. Mengukur getaran akan menyala jika seseorang menabrak sepeda Anda atau terguncang dengan cara apa pun.
Ada pertanyaan yang sangat sederhana yang harus Anda tanyakan untuk menemukan jawaban yang benar: Apa yang berbeda antara pengendara yang mengendarai sepeda, dan yang lainnya menggerakkannya? Jawabannya sama sederhananya: roda berputar.
Jadi solusi Anda, maka, adalah dengan menggunakan sesuatu yang mengukur roda pada sumbu rotasi, sesuatu seperti ide mouse Spehro, mungkin.
Ini akan memastikan bahwa sistem Anda menyala jika dan hanya jika pengendara menyebabkannya bergerak.

Kesempatan
sumber
Saya akan melangkah lebih jauh dan bertanya "bagaimana saya bisa tahu apakah seseorang menggunakan sepeda?"
hoosierEE
2

Atau Anda bisa merasakan ketika pengendara menggunakan sepeda, seperti:

  • travel suspensi (mis. opto-interruptor di garpu depan)
  • tekanan ban (rumit mengingat ukuran ban sepeda)
  • frame flex (lebih baik untuk rangka baja daripada aluminium atau karbon)
  • sensor tekanan pada titik kontak (pegangan, sadel, pedal; logis ATAU keduanya bersamaan)
  • Sakelar kickstand
hoosierEE
sumber
2

Jika Anda tidak peduli gerakan seperti apa yang terjadi, maka saklar bola bergulir adalah solusi termudah untuk diterapkan. Ini hanya membutuhkan input digital dan filter low pass.

Salah satu contoh adalah Signalquest SQ-SEN-200. Ada varian lain yang lebih kecil dan lebih besar dari teknologi yang sama (SMD dan melalui lubang).

Lior Bilia
sumber
Apakah saklar bola bergulir perlu ada gagasan "naik"? Seperti pada, saya mengambil proyek saya dan meletakkannya terbalik relatif terhadap orientasi sebelumnya, apakah itu bergerak sekali atau apakah itu bergerak terus menerus sesuai dengan saklar?
Robert Atkins
Ada beberapa variasi sakelar semacam itu, yang dapat memicu kemiringan, getaran, atau goncangan. Bola-bola di dalam komponen akhirnya datang ke posisi diam, jadi terserah programmer untuk memutuskan apa yang harus dilakukan dengan data yang dihasilkan.
Lior Bilia
0

Untuk hanya mendeteksi bahwa objek bergerak saya sarankan pengganggu foto dengan pendulum. Ambil yang seperti ini dan bangun "benda mekanis" yang bergerak di area pendeteksiannya. http://se.farnell.com/sharp/gp1s53vj000f/photointerrupter-compact/dp/9708065

Anda mungkin dapat menyelamatkan semua bagian yang diperlukan dari mouse komputer dengan tombol roda atau detektor gerakan bola.

Dejvid_no1
sumber
2
Itu accelerometer mekanik. Sebuah accelerometer MEMS lebih murah
Scott Seidman
Wow, sirkuit MEMS benar-benar murah saat ini.
Dejvid_no1
Benar. Akselerometer 3-D MEMS dengan output digital mencapai sekitar $ 1,50 hari ini dalam jumlah sedang (seperti 10)
Scott Seidman
2
15 tahun yang lalu, saya membayar sekitar $ 1.500 untuk akselerometer dengan kemampuan yang $ 1.50 akan dapatkan hari ini
Scott Seidman
1
@ScottSeidman Itu benar tetapi accelerometer keseimbangan gaya hari ini masih lebih baik daripada MEMS terbaik untuk DC hingga ~ 100Hz! Sayangnya mereka dua pesanan besarnya lebih mahal.
Phil