İçindekiler:

Ayakkabı Sensörlü, GPS'siz, Haritasız, Haritasız Gezinme Robotu: 13 Adım (Resimlerle)
Ayakkabı Sensörlü, GPS'siz, Haritasız, Haritasız Gezinme Robotu: 13 Adım (Resimlerle)

Video: Ayakkabı Sensörlü, GPS'siz, Haritasız, Haritasız Gezinme Robotu: 13 Adım (Resimlerle)

Video: Ayakkabı Sensörlü, GPS'siz, Haritasız, Haritasız Gezinme Robotu: 13 Adım (Resimlerle)
Video: Akıllı Bileklikte Yeni Seçenek: Xiaomi Smart Band 8 İncelemesi 2024, Temmuz
Anonim

obluobluFollow Hakkında: oblu bir iç mekan navigasyon sensörüdür oblu Hakkında Daha Fazla »

Robot önceden programlanmış bir yolda hareket eder ve gerçek zamanlı izleme için gerçek hareket bilgilerini (bluetooth üzerinden) bir telefona iletir. Arduino path ile önceden programlanmıştır ve oblu robotun hareketini algılamak için kullanılır. oblu, hareket bilgilerini düzenli aralıklarla Arduino'ya iletir. Buna dayanarak Arduino, robotun önceden tanımlanmış yolu izlemesine izin vermek için tekerleklerin hareketlerini kontrol eder.

Adım 1: KISA BİR GİRİŞ

KISA BİR GİRİŞ
KISA BİR GİRİŞ

Proje, konumlandırma için GPS veya WiFi veya Bluetooth kullanmadan, hatta harita veya yerleşim planı bile kullanmadan robotu önceden tanımlanmış bir yolda hassasiyetle hareket ettirmekle ilgilidir. Ve gerçek yolunu (ölçeğe göre) gerçek zamanlı olarak çizin. Bluetooth, gerçek zamanlı konum bilgilerini iletmek için kablo yerine kullanılabilir.

2. Adım: İLGİNÇ ARKA PLAN HİKAYESİ

İLGİNÇ ARKA PLAN HİKAYESİ
İLGİNÇ ARKA PLAN HİKAYESİ

Ekibimizin ana gündemi, ayakkabıya monte yaya navigasyon sensörleri geliştirmektir. Ancak, bir akademik araştırma grubu, robotun iç mekanda gezinmesi ve eş zamanlı olarak gerçek zamanlı konumunu izlemesi şartıyla bize yaklaştı. Kapalı bir odadaki radyasyonu haritalamak veya endüstriyel bir kurulumda tespit edilen gaz kaçağı için böyle bir sistemi kullanmak istediler. Bu tür yerler insanlar için tehlikelidir. Arduino tabanlı robotumuzun iç mekan navigasyonu için sağlam bir çözüm arıyoruz.

Herhangi bir hareket sensörü modülü (IMU) için bariz seçimimiz "oblu" idi (yukarıdaki resme bakın). Ancak buradaki zor kısım, oblu'nun mevcut belleniminin, basit bir deyişle, ayaklı iç mekan Yaya Ölü Hesaplama (PDR) veya Yaya Navigasyonu için uygun olmasıydı. oblu'nun ayaklı bir IMU olarak iç mekandaki PDR performansı oldukça etkileyici. Oblu'nun ayakkabı sensörü olarak gerçek zamanlı takibi için Android uygulamasının (Xoblu) bulunması avantaja katkıda bulunuyor. Bununla birlikte, zorluk, robotun gezinmesi ve izlenmesi için insan yürüme modeline dayanan mevcut algoritmasını kullanmaktı.

3. Adım: "oblu" KISA BİR GİRİŞ

Image
Image
SİSTEM AÇIKLAMASI
SİSTEM AÇIKLAMASI

"oblu", giyilebilir hareket algılama uygulamalarına yönelik minyatür, düşük maliyetli ve açık kaynaklı bir geliştirme platformudur. Li-ion şarj edilebilir pille çalışır ve yerleşik USB pil şarjına izin verir. Kablosuz iletişim için yerleşik bir Bluetooth (BLE 4.1) modülüne sahiptir. "oblu", gemide karmaşık navigasyon denklemlerinin çözülmesine izin veren 32 bitlik kayan noktalı bir mikro denetleyiciye (Atmel'in AT32UC3C'si) ev sahipliği yapar. Bu nedenle, kişi tüm hareket işlemlerini oblu üzerinde gerçekleştirir ve sadece nihai sonucu iletir. Bu, oblu'nun ortak sistemle entegrasyonunu son derece basit hale getirir. "oblu" ayrıca sensör füzyonuna izin veren ve hareket algılama performansını artıran çoklu IMU (MIMU) dizisini de barındırır. MIMU yaklaşımı "oblu"nun benzersizliğine katkıda bulunur.

oblu'nun dahili hesaplamaları insan yürüyüşüne dayanmaktadır. oblu, iki ardışık adım arasındaki yer değiştirmeyi ve yön değişikliğini verir. Nasıl - Ayak yerle temas ettiğinde tabanın hızı sıfırdır, yani taban durur. Bu şekilde oblu 'adımları' algılar ve bazı dahili hataları düzeltir. Ve hataların bu sık düzeltilmesi, mükemmel izleme performansı sağlar. Yani burada yakalamak yatıyor. Ya robotumuz da aynı şekilde yürürse - hareket et, dur, hareket et, dur.. Aslında oblu, hareketi normal sıfır ve sıfır olmayan momentlere sahip herhangi bir nesne için kullanılabilir. Böylece oblu ile ilerledik ve kısa sürede robotumuzu ve takip sistemimizi bir araya getirebildik.

Adım 4: "oblu"nun YARARLILIĞI NEDİR?

Zamanımızın yaklaşık %70'ini kapalı alanlarda geçiriyoruz. Bu nedenle, insan ve makinelerin iç mekan navigasyonunu gerektiren birçok uygulama vardır. En yaygın olarak kullanılan konumlandırma çözümü, dış mekan navigasyonu için iyi olan uydu tabanlı GPS/GNSS'dir. Açık gökyüzüne erişilemeyen kapalı ortamlarda veya kentsel ortamlarda başarısız olur. Bu tür uygulamalar, gecekonduların veya yoğun ağaç gölgeliklerinin altındaki alanların jeo-anketi, robotların iç mekan navigasyonu, yangınla mücadele için kurtarma ajanlarının konumlandırılması, maden kazaları, şehir savaşı vb.

oblu'nun öncülü, itfaiyecilerin konumlandırılması için çok kompakt bir ayakkabı sensörü (veya bir PDR sensörü) olarak tanıtıldı, daha sonra kolay-doğruluk arayan yapımcılar için son derece yapılandırılabilir bir geliştirme platformu olarak yükseltildi ve değiştirildi. robotların yanı sıra insanların iç mekan navigasyonu için uygun fiyatlı atalet algılama çözümü. Şimdiye kadar oblu kullanıcıları, yayaları takip etme, endüstriyel güvenlik ve kaynak yönetimi, taktik polislik, GPS'den yoksun alanın coğrafi araştırması, kendi kendine gezinen robot, yardımcı robotik, oyun, AR/VR, hareket bozukluklarının tedavisi, fiziği anlamadaki uygulamalarını gösterdiler. hareket vb. oblu, alan kısıtlaması olan uygulamalar için uygundur, örn. giyilebilir hareket algılama Yerleşik Bluetooth sayesinde kablosuz IMU olarak da kullanılabilir. Dört IMU dizisi ile birlikte yerleşik kayan nokta işleme yeteneğinin varlığı, modülün kendi içinde sensör füzyonunu ve hareket işlemeyi mümkün kılar ve bu da çok hassas hareket algılama ile sonuçlanır.

Adım 5: PROJENİN HİKAYESİ

Image
Image

Bu projenin hikayesi videoda…

Adım 6: SİSTEM AÇIKLAMASI

Robot önceden programlanmış bir yolda hareket eder ve gerçek zamanlı izleme için gerçek hareket bilgilerini (bluetooth üzerinden) bir telefona iletir.

Arduino path ile önceden programlanmıştır ve oblu robotun hareketini algılamak için kullanılır. oblu, hareket bilgilerini düzenli aralıklarla Arduino'ya iletir. Buna dayanarak Arduino, robotun önceden tanımlanmış yolu izlemesine izin vermek için tekerleklerin hareketlerini kontrol eder.

Robotun yolu, bir dizi düz çizgi parçası olarak programlanmıştır. Her bir çizgi parçası, bir öncekine göre uzunluğu ve yönü ile tanımlanır. Robotun hareketi gizli tutulur, yani düz bir çizgide, ancak daha küçük segmentlerde hareket eder (basitlik için 'adımlar' diyelim). Her adımın sonunda oblu, adım uzunluğunu ve sapma derecesini (yöndeki değişiklik) düz çizgiden Arduino'ya iletir. Arduino, önceden tanımlanmış düz çizgiden sapma bulursa, bu tür bilgileri aldığı her adımda robotun hizasını düzeltir. Programa göre, robotun her zaman düz bir çizgide hareket etmesi gerekir. Ancak düzgün olmayan yüzey, robot düzeneğindeki kütle dengesizliği, dc motorlardaki mimari veya elektriksel dengesizlik veya ön serbest dönen tekerleğin rastgele yönelimi gibi ideal olmayan durumlar nedeniyle düz çizgiden sapabilir ve belirli bir açıda veya eğik yolda yürüyebilir. Bir adım atın… istikametinizi düzeltin… ilerleyin. Robot, o belirli çizgi parçasının programlanmış uzunluğundan daha fazla seyahat ederse de geriye doğru hareket eder. Bir sonraki adım uzunluğu, o belirli düz çizgi parçasının kat edilmesi gereken kalan mesafeye bağlıdır. Robot, katedilecek mesafe daha büyük olduğunda büyük adımlar atıyor ve hedefe yakın (yani her düz çizgi parçasının sonu) daha küçük adımlar atıyor. oblu, verileri aynı anda Arduino'ya ve telefona (bluetooth üzerinden) iletir. Xoblu (Android uygulaması), telefonda gerçek zamanlı izleme için kullanılan robottan alınan hareket bilgisine dayalı olarak yolu oluşturmak için bazı basit hesaplamalar yapar. (Xoblu kullanılarak yol yapımı ikinci resimde gösterilmiştir).

Özetle, oblu hareketi algılar ve hareket bilgilerini düzenli aralıklarla Arduino ve telefona iletir. Arduino, programlanmış yola ve (oblu tarafından gönderilen) hareket bilgisine dayanarak tekerleklerin hareketlerini kontrol eder. Robotun hareketi, başlat/durdur komutları dışında uzaktan KONTROL EDİLMEZ.

oblu bellenimi için https://sourceforge.net/p/openshoe/_list/git adresini ziyaret edin.

Robotun Aurduino kodu için https://github.com/vijkumsha/oblu_Robot adresini ziyaret edin.

Adım 7: YOL MODELLEME

YOL MODELLEME
YOL MODELLEME
YOL MODELLEME
YOL MODELLEME

Robot, yalnızca düz çizgi segmentlerinde yürürse en iyi şekilde kontrol edilebilir. Bu nedenle, yol ilk önce bir dizi düz çizgi parçası olarak modellenmelidir. Resimler birkaç örnek yol ve bunların yer değiştirme ve yönlendirme açısından temsillerini içerir. Arduino'da yol bu şekilde programlanmıştır.

Aynı şekilde, bir dizi düz çizgi parçası olan herhangi bir yol, Arduino'da tanımlanabilir ve programlanabilir.

Adım 8: DEVRE MONTAJI

DEVRE MONTAJI
DEVRE MONTAJI

Üst düzey sistem entegrasyon şeması. Arduino ve oblu, donanım montajının bir parçasıdır. UART, Arduino ve oblu arasındaki iletişim için kullanılır. (Lütfen Rx/Tx bağlantısına dikkat edin.) Veri akışının yönü sadece referans içindir. Tüm donanım grubu, bluetooth kullanarak akıllı telefon (Xoblu) ile iletişim kurar.

Adım 9: DEVRE ŞEMASI

DEVRE ŞEMASI
DEVRE ŞEMASI

Arduino, oblu, motor sürücüsü ve pil takımı arasındaki detaylı elektrik bağlantıları.

Adım 10: İLETİŞİM PROTOKOLÜ:

Robota monte edilen oblu sensörü ile akıllı telefon, yani Xoblu arasındaki veri iletişiminin nasıl gerçekleştiği aşağıda açıklanmıştır:

Adım 1: Xoblu, oblu'ya BAŞLAT komutunu gönderir Adım 2: oblu, Xoblu'ya uygun ACK göndererek alma komutunu onaylar. (adım = sıfır hareket algıladığında veya durma algılandığında). Adım 4: Xoblu, oblu'ya uygun ACK göndererek son DATA paketinin alındığını onaylar. (Adım 3 ve 4, Xoblu STOP gönderene kadar tekrarlanır. STOP komutu alındığında, oblu Adım 5'i yürütür. Adım 5: STOP - (i) oblu'da işlemeyi durdur (ii) oblu'daki tüm çıkışları durdur START, ACK, DATA ve STOP detayları

Adım 11: "oblu" IMU NASIL ÇALIŞIR (isteğe bağlı):

Ayak monteli PDR sensörlerinin oblu'ya genel bakışı ve temel çalışma prensibi hakkında bazı referanslar sunmak:

oblu'nun mevcut kaynak kodu, ayaklı navigasyona yöneliktir. Ve bu amaç için en iyi şekilde optimize edilmiştir. Aşağıdaki video, temel çalışma prensibini kapsar:

Ayağa takılan PDR sensörleri hakkında birkaç basit makale: 1. Adımlarımı takip et

2. Adımlarımı izlemeye devam et

Ayak sensörleri kullanılarak yaya ölümlerinin hesaplanmasıyla ilgili ayrıntılar için bu belgeye başvurabilirsiniz.

Adım 12: "oblu.io" adresini ziyaret edin (isteğe bağlı)

Image
Image

"oblu"nun olası uygulamaları için videoyu izleyin:

----------------Lütfen görüşlerinizi, önerilerinizi paylaşın ve yorum bırakın. En İyi Dileklerimle!

Adım 13: BİLEŞENLER

1 oblu (açık kaynaklı bir IMU geliştirme platformu)

1 Akıllı Motor Robot Araba Akü Kutusu Şasi Kiti Arduino için DIY Hız Kodlayıcı

1 Lehimsiz Breadboard Yarım Boy

1 Erkek/Dişi Jumper Kablosu

2 Kapasitör 1000 µF

1 Texas Instruments Dual H-Bridge motor sürücüleri L293D

1 Arduino Mega 2560 & Genuino Mega 2560

4 Amazon Web Services AA 2800 Ni-MH Şarj Edilebilir

Önerilen: