Projemin hareket edip etmediğini belirlemek için hangi sensörü kullanmalıyım?


9

Ne kadar hareket ettiğini, ne kadar hızlı veya hangi yönde olduğunu bilmiyorum, sadece Arduino tabanlı projemin hareket edip etmediğini bilmesini istiyorum (böylece bisikletim sabitken yüksek akım tahliye LED'lerini kapatabilirim pilimi koru.)

Bir ivmeölçer, jiroskop veya başka bir sensör ister miyim?


3
Proje neye bağlı? Çok sabit / kararlı doğrusal hareketin algılanması daha zor olabilir, ancak otomobiller / bisikletler vb. İçin normalde oryantasyon ve titreşimdeki değişiklikleri kolayca tespit edebilirsiniz.
PeterJ

Cihazınız nasıl? Terran, demiryolu, su, hava aracı veya başka bir şey mi? Ayrıca 'hareketli' terimini nasıl tanımlarsınız? Örneğin. taşıma ile taşınırken hareket etmeyi düşünüyor veya almıyor mu?
Vovanium

Bisiklete binen projeyi belirtmek için düzenleyin. Raylarda değil ;-).
Robert Atkins

@LeoR Bir ivmeölçer muhtemelen gitmek olacağını düşünüyordum ama sonra bu cevabı buldum: electronics.stackexchange.com/questions/105826/… (tüp içi titreşim sensörü.) Aşırı mı düşünüyorum? Anahtarın en son temasından sonra 30-60 saniye boyunca bir Arduino pinine "yüksek" bildirmesi için buna birkaç pasif ekleyebilir miyim?
Robert Atkins

2
Geçersiz kılma ekleyin: ışıklarınızın trafik ışıklarında ölmesini istemeyebilirsiniz!
Brian Drummond

Yanıtlar:


10

Eğer bir bisiklette kullanılacaksa, tekerleğin tekerlek teli üzerinde düşük güçlü bir opto algılama devresi kullanırdım. Bunun çeşitli varyantları vardır ve önemlisi, gücü korumak için LED'i titreştirme yeteneğidir, böylece bir konuşmacı saniyede 10 kez geçerse (minimum hızı gösterir), LED'i en az 0,1 güç vermeniz gerekir. saniye ve bir ışın kesintisi için "arayın" - bu hareketi gösterir. Sadece bir fikir.

Bir eyer anahtarını da düşünebilirsiniz, böylece birisi eyere oturmazsa ve herhangi bir hareket algılanmazsa, LED tamamen kapanır.


5
Geleneksel olarak bir bisiklet hız göstergesi bir kamış anahtarı ve tekerlek teli birine bağlı bir mıknatıs kullanır. Bir bisiklet tekerleği (yerle temas halinde ve insan gücü altında) 20hz'den daha hızlı dönemez veya ucuz bir kamış anahtarı gidebilir. Kullanılmadığında güç yok, açıkken bir aşağı direnç direnci yükü. Bir çift madeni para hücresinde yıllarca kablosuz bir tane çalıştırdım.
Phil

7

Çoğu durumda bir ivmeölçer uygun olacaktır. Teknik olarak hızlanma sabit bir hızda 0 olacaktır, ancak uygulamada projeniz bir tür istisnai derecede düşük titreşim rayına monte edilmedikçe, hareket sırasında dalgalanan hızlanmalar göreceksiniz. Her eksende hareketli ortalama kullanmak ve varyasyon belirli bir eşiğin üzerinde olduğunda cihazı "hareketli" olarak değerlendirmek oldukça basit olmalıdır. Cihaz sabitken biraz rastgele hızlanma algılanacaktır, ancak eşikleme bununla başa çıkmalıdır.

Birçok hobici elektronik tedarikçiden I2C ivmeölçerlere sahip panoları alabilirsiniz. Onlarla konuşma prosedürü çipe bağlı olarak biraz değişecektir, ancak genellikle bir arduino'dan I2C cihazlarıyla konuşmak oldukça kolaydır.


Sadece hızlandırmayı tek başına kullanmaya dikkat edin, sabit bir hızda seyahat ederken 0 hızlanma da göreceksiniz.
helloworld922

7
Asla sabit bir hızda hareket eden hareketli bir araç gördüğümü sanmıyorum. İvmeölçerlerle her oynadığımda, "hareket" ve "sabit" arasında oldukça net bir şekilde ayrım yapabilirsiniz, çünkü hareket halindeyken en az bir eksen rasgele titreşimler ve sarsıntılarla dalgalanırdı.
LeoR

Çalışan ortalamanın varyasyonunu kullanmalısınız. Bu, örneğin, bisikleti yana koymanıza ve yerçekimi nedeniyle hızlanma nedeniyle sürekli tetiklemenize izin vermez.
Samuel

Akselerometreyi gidonlara monte etmeniz yeterlidir. Bu muhtemelen LED'e zaten yakın ve gidon asla sürüş sırasında sabit değil.
MSalters

7

Hedefiniz olarak 'hareket edip etmediğini görme' seçeneğini belirtirken. Bisikletin hareket halinde olup olmadığını kontrol etmek için farklı bir önlem önerebilirim. İvmeölçerlerin yakaladığı gürültü şaşırtıcı derecede şaşırtıcı olabilir - durumunuz, 'kullanımda ve hareket halinde' ve 'kullanıcıda değil ve hala hareket halinde (hafifçe)' arasında net bir tanımlama olacak gibi olabilir. Olsa da böyle olmasını beklemem.

Eğer bisiklet sık sık hareket eden bir yapıya takılırsa / park edilirse (başkaları bisikletlerini, trenlerini veya araçlarını yakın bir yerde, çılgın bir HVAC pompasının yakınında, biri yürürken ahşap / kabarık zeminlerde iç mekanda takılır veya çıkarır. ..) sonra bisikletiniz hareket ettiğinde ışıklarınız yanacaktır. Gerçekten istediğin bu değil. Bir sürücü (siz) bisikleti hareket ettirirken ışıkların yanmasını istiyorsunuz. Bu amaçla bir yakınlık sensörü (sadece bisiklet üzerindeyken engellenir) veya bir hız sensörü / kamış anahtarı gibi bir şey işe yarayacaktır. Bir kamış anahtarı kullanan bir Arduino bisiklet hız göstergesi için bir öğretici: http://www.instructables.com/id/Arduino-Bike-Speedometer/ Bunun bonusu, hızlı bir okuma elde etmeniz ve ışıklar için bir tetikleyici eklemek oldukça önemsiz olacaktır (bisikletin ışıklar / trafik ve benzeri için hareket etmediği dönemler için gecikmeli kapanma ile).


5

Diğerlerinin önerdiği gibi ivmeölçerler, özellikle tüm kütüphaneler ve kesme tahtaları bulunan bir Arduino'da kullanımı oldukça kolaydır. Bakmaya değer başka bir şey de şu anda Sparkfun'dan şu anda 2,95 $ karşılığında mevcut olan bir Piezo Titreşim Sensörüdür:

resim açıklamasını buraya girin

Sadece voltaj çıkışının ne kadar yüksek olabileceğine dikkat edin, voltajı azaltmak için bir direnç bölücü ve bir ADC pimi kullanmanızı önerirler. Bir AVR'de dahili diyot kelepçelerini kullanmaya o kadar da hevesli olmasam da, başlangıçta düşük akım verildiğinde 1K serisi akım limit direncini söylerseniz, bir dijitale bağlanmak için çok fazla probleminiz olduğunu göremiyorum giriş yeterli hassasiyet sağlıyorsa ve Vcc'deki hafif artış kelepçeler geçerli olana kadar başka sorunlara neden olmaz.

Her neyse, bir göz atmak ilginç olacak başka bir sensör olabilir. Regülatörde ve özel projenizde nispeten yüksek durgun akıma sahip bir Arduino için muhtemelen çok önemli olmasa da, birçok proje için temiz olabilirler. Sıfır güç çekerler ve bir mikrodenetleyiciyi derin bir uykudan uyandırmak için kullanılabilir, bu da bir mantık yüksek seviyesini tetiklemek için yeterli titreşime sahip olduğunuzu varsayar.


Bu mikro uyanma olasılığı için +1!
Seidleroni

4

Üzerinde hareket ettiği yüzeyin birçok fotoğrafını (saniyede yüzlerce veya binlerce karede ) çeken ve bunları gerçek zamanlı olarak yerleşik bir işlemci ile karşılaştıran bir tür düşük çözünürlüklü yüksek hızlı kamera ve optik hareket ölçmek. Tercihen hepsi uygun bir MCU arayüzü ile bir çip üzerinde.

Başka bir deyişle, bir optik fare sensörü. resim açıklamasını buraya girin

Ne yazık ki, Avago parçaları artık dağıtımda stoklanmıyor gibi görünüyor, ancak size optik ve aydınlatma LED'i de verecek olan optik bir fareyi hackleyebilirsiniz (uygun bir mesafe elde etmek için optikleri değiştirmeniz gerekebilir). Sensörlerin birçoğu Tayvan'daki Pixart'a ait gibi görünüyor ve veri sayfaları mevcuttur (genellikle doğru değildir).


2

Bu yanıtların çoğu aşırı karmaşıktır ve büyük olasılıkla yanlış pozitiflere ve / veya yanlış negatiflere neden olacaktır. Bisiklet hareket ettirilirse ivmeölçerler söner ve sabit bir hızda hareket ederseniz ateşlemez. Yerin optik görüntülerini çekmek işlem pahalıdır ve sensör o kadar da iyi değilse inanılmaz derecede güvenilir değildir. Birisi bisikletinizi çarptığında veya herhangi bir şekilde sallandığında titreşimi ölçmek ateşlenecektir.
Doğru cevabı bulmak için sormanız gereken çok basit bir soru var: Bisiklete binen bir binici ile onu hareket ettiren başka bir şey arasındaki fark nedir? Cevap aynı derecede basit: tekerlekler dönüyor.
Öyleyse çözümünüz, çarkı dönme ekseninde ölçen, belki de Spehro'nun fare fikri gibi bir şey kullanmaktır.
Bu, sisteminizin yalnızca bir sürücü hareket etmesine neden oluyorsa ateşlemesini sağlar.


Bir adım daha ileri gidip "bir kişinin bisikleti kullanıp kullanmadığını nasıl anlayabilirim?" Diye sorardım.
hoosierEE

2

Veya bir sürücünün bisiklette olduğunu hissedebilirsiniz, örneğin:

  • süspansiyon hareketi (örn. ön çataldaki opto-kesici)
  • lastik basıncı (bisiklet lastiği boyutu göz önüne alındığında zor)
  • çerçeve esnek (çelik çerçeveler için alüminyum veya karbondan daha iyi)
  • temas noktalarındaki basınç sensörleri (tutma yerleri, sele, pedallar; mantıksal VEYA birlikte)
  • Kickstand anahtarı

2

Ne tür bir hareketin gerçekleştiğini umursamıyorsanız, yuvarlanan bir top anahtarı uygulanması en kolay çözümdür. Sadece bir dijital giriş ve bir düşük geçiş filtresi gerektirir.

Bunun bir örneği Signalquest SQ-SEN-200. Aynı teknolojinin (SMD ve açık delik) daha küçük ve daha büyük varyantları vardır.


Bir döner top anahtarının "yukarı" nosyonu olması gerekiyor mu? Olduğu gibi, projemi alıp önceki yöne göre baş aşağı yerleştirdim, bir kez mi hareket etti yoksa anahtara göre sürekli mi hareket ediyor?
Robert Atkins

Eğim, titreşim veya titremeyi tetikleyebilen bu tür anahtarın birkaç varyasyonu vardır. Bileşenin içindeki toplar sonunda bir dinlenme konumuna gelir, bu nedenle üretilen verilerle ne yapılacağına karar vermek programcıya bağlıdır.
Lior Bilia

0

Sadece nesnenin hareket ettiğini tespit etmek için bir çeşit sarkaçlı bir fotosel kesiciyi öneririm. Böyle bir şey alın ve algılama alanında hareket eden bir "mekanik şey" oluşturun. http://se.farnell.com/sharp/gp1s53vj000f/photointerrupter-compact/dp/9708065

Muhtemelen tüm parçaları bir tekerlek düğmesi veya top hareket dedektörü ile bir bilgisayar faresinden kurtarabilirsiniz.


2
Bu mekanik bir ivmeölçer. Bir MEMS ivmeölçer daha ucuzdur
Scott Seidman

Vay, bugünlerde MEMS devreleri gerçekten ucuz.
Dejvid_no1

Kesinlikle. Dijital çıkışlı 3-D MEMS ivmeölçer, bugünlerde mütevazı miktarlarda yaklaşık 1.50 $ çalışıyor (10 gibi)
Scott Seidman

2
15 yıl önce, bugünkü 1.50 $ beni alacak yetenekleri olan ivmeölçerler için yaklaşık 1.500 $ ödüyordu
Scott Seidman

1
@ScottSeidman Bu doğru ama bugünün güç dengesi ivmeölçerleri hala DC ila ~ 100Hz için en iyi MEMS'den daha iyi bir büyüklük sırasıdır! Ne yazık ki iki büyüklük sırası daha pahalı.
Phil
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.