İçindekiler:
- Adım 1: Gerekli Malzeme
- Adım 2: Programlama Bölümü
- Adım 3: Elektronik Montaj
- 4. Adım: Veri Toplama
- Adım 5: Veri Tabanı
- Adım 6: Gösteri
Video: Bağlantılı Yön Bileziği: 6 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Bağlantılı oryantasyon bileziği olan bu akademik proje, Polytech Paris-UPMC mühendislik okulundan dört öğrenci tarafından gerçekleştirildi: Sébastien Potet, Pauline Pham, Kevin Antunes ve Boris Bras.
Projemiz nedir?
Bir dönem boyunca, bir koşucu tarafından kullanılacak bağlantılı bir bilezik oluşturmamız gerekti. Yarış rotası, işaretleyeceği birkaç nokta tarafından yönlendirilecek ve bu, rotasını kaydetmesine izin verecektir. Bu veriler gerçek zamanlı olarak bir bulutta depolanacak.
Bu ürün sıcaklık, nem ve yön verebilir. Ayrıca, koşucunun bir sorunu olması durumunda GPS konumu gönderen biri dahil olmak üzere üç düğmemiz var (SOS düğmesi), bu yüzden gerçek zamanlı olarak ihtiyacımız var. İkincisi etiketlemeye izin verir ve sonuncusu düşük güçlü bir ürün istediğimiz için bileziği kapatmaya izin verir.
120€'luk bir bütçemiz vardı. Bağlı bir oryantasyon bileziğini gerçekleştirmek için öğreticimizi takip edin!
Adım 1: Gerekli Malzeme
Bileşenlerin listesi:
- STM32L432KC-Nucleo Ultra Düşük Güç
- SigFox modülü TD1208
- RFID okuyucu 125 kHz
- Sıcaklık/nem sensörü HTU21D
- İvmeölçer modülü 3 eksenli ADXL345
- Pusula modülü 3 eksenli HMC5883L
- Ekran OLED ADA938
- GPS modülü Grove 31275
- Pil 1,5 V LR6
- Tansiyon regülatörü Pololu 3.3V U1V11F3
- Bazı kontrol düğmeleri
Adım 2: Programlama Bölümü
Öncelikle mbed geliştirici sitesi ile her bir bileşeni programladık. Bunun için düşük tüketimli bir mikrodenetleyici STM32L476RG-Nucleo kullandık.
I²C iletişiminde ekran, sıcaklık/nem sensörü ve pusula çalışır. Seri iletişimde RFID okuyucu ve ivmeölçer çalışır. Her bileşen için kendi kitaplığını eklemeniz gerekiyordu.
Sıcaklık/nem sensörü, pusula ve ivmeölçer için, verileri almak için kitaplıklarında tanımlı bir işlevi çağırmanız gerekir.
RFID okuyucu seri iletişimde çalışır, etiket char cinsinden veri döndürdüğü için "getc()" işlevini kullanmanız gerekir.
OLED ekran kodu hariç tüm kodlar dosya olarak mevcuttur.
Adım 3: Elektronik Montaj
Her bileşeni programladıktan sonra bir labdec plakası aldık ve bunları STM32L432KC-Nucleo'ya bağladık. Tüm bileşenleri monte etmek için ekteki kablo şemasını izleyin veya her PIN kod tertibatında ayrıntılı olarak açıklanmıştır.
Üç adet 10 Kilo ohm dirençli üç düğme ekledik: biri tehlike durumunda GPS konumunu gönderir, biri açma/kapama için ve sonuncusu koşucunun noktayı etiketlemesine izin verir. SOS düğmesine bastığınızda sesli uyarı ekledik.
Ekteki "braceletOrientation" dosyası Fritzing ile ilgili projemizdir. Bu, bileşenlerimizin ve PCB'nin yanı sıra labdec üzerindeki kablolamamızın bir özet dosyasıdır. Ayrıca tüm bileşenlerin montaj kodunu ekledik.
4. Adım: Veri Toplama
Aktoboard
Actoboard, gösterge tablosu tabanlı bir araçtır. Sigfox Modülü tarafından gönderilen tüm verileri görüntüler. Daha sonra veritabanına eklenmek için bu verileri URL aracılığıyla nodered'e gönderir.
Verileri gönderin:
Verileri kodunuz üzerinden göndermek için öncelikle Sigfox modülünün PIN'ini (Tx, Rx) bildirmeniz gerekir (kodumuzda görebilirsiniz). Daha sonra bu komut sayesinde: "sigfox.printf("AT$SF=%02X%02X%02X%02X%02X%02X \r\n", lat_deg, long_deg, lat_10s, long_10s, lat_100s, long_100s);", bu örnek GPS verilerini Actoboard'a gönderir.
Verileri alın:
Veri kaynaklarınızı Sigfox modülünüzle ilgili olarak ayarladıktan sonra, kodunuzdan veri almak için Veri biçiminizi ayarlamanız gerekir. Öncekiyle aynı örnek için (GPS) veri biçimini şu şekilde ayarlamanız gerekir: "lat_deg::uint:8 long_deg::uint:8 lat_10s::uint:8 long_10s::uint:8 lat_100s::uint:8 long_100s::uint:8".
Bitlerin türüne ve sayısına dikkat edin, tam olarak aynı uzunluğa sahip olmanız gerekir. Bu yüzden, verilerinizi şu şekilde kodunuzda yayınlamanızı tavsiye ederim: "lat_deg = (int8_t)lat_deg;".
Rakam sayısına da dikkat edin, bu örnekte sadece maksimum 2 haneli veri iletiyoruz. Ancak "%04X" gibi daha büyük bir veriyi aktarmak istiyorsanız, Actoboard'un rakamı ters çevireceğini biliyor olabilirsiniz. Örneğin 0x3040 iletirseniz, Actoboard 0x4030'u anlayacaktır. Bu nedenle, 2 rakamı aşan bir veri formatı göndermeden önce rakamı tersine çevirmelisiniz.
Kontrol Panelini Düzenle:
Actoboard'daki bir Gösterge Tablosunda verilerinizi düzenlemek için bir widget eklemeniz yeterlidir. Bir widget listesi var, sisteminize en uygun olanı seçmelisiniz. Ve sonra hangi verinin hangi widget'ı dolduracağını seçmeniz gerekiyor.
Noded'a ilet:
Actoboard'da aldığınız tüm verileri URL üzerinden nodered'e aktarmak için, ayarlarınızdaki "forwarding url" kutusunu düğümlü proje URL'niz ile doldurmanız yeterlidir. Örneğin kutucuğu "https://noderedprojet.mybluemix.net/projet" ile doldurduk.
Adım 5: Veri Tabanı
Bluemix
- düğümlü:
- Actoboard veri formunu alın
Actoboard veri formunu almak için, yöntemi "POST" ile ayarlamanız ve URL'nizi belirtmeniz gereken bir "websocket" girişi eklemeniz gerekir (fotoğraftaki örnek).
Veri formatlama
Veritabanınıza (bulut) eklemek istediğiniz verileri çıkarmanız ve biçimlendirmeniz gerekir. bunun için bir "işlev" bloğu eklemelisiniz. Bunu nasıl yapacağınızı anlamak için ekteki fotoğrafa bakın.
Bir haritaya geometrik şeyler ekleyebilirsiniz, örneğin, bir harita üzerinde GPS koordinatıyla bir nokta ekleyen ve bunları birbirine bağlayan bir fonksiyonumuz var. Yarışı oluşturmak için bu fonksiyonu kullanıyoruz ve ardından bir RFID TAG'ı kontrol ederseniz, noktanın etrafında çokgen oluşturacak olan başka bir fonksiyona geçiyoruz.
cloudant'a gönder
Verilerinizi biçimlendirdikten sonra bunları cloudant DataBase'inize göndermeniz gerekir. Bunun için bir "cloudant" depolama bloğu eklemeniz ve Veritabanınızın adı, "insert" işlemi gibi ayarları belirtmeniz gerekir, ekteki örneğimize bakın.
Sisteminizin çalışması için düğümünüzü "Dağıtmayı" unutmayın.
Bulutlu:
Bulutlu Veritabanınızda, artık sigfox ve biçimlendirme ile gönderdiğiniz tüm verileri düğüm kırmızısında görebilirsiniz. "Tarih, cihaz, TAG RFID, GPS" gibi hangi bilgileri görmek istediğinizi seçebilirsiniz.
Ve oluşturduğunuz geometrik şeyleri "gps Geospatial Indexes" menüsündeki nodlu işlevde görselleştirebilirsiniz.
Adım 6: Gösteri
Özetlemek gerekirse, dört butonla kontrol edilen dört İnsan-Makine Arayüzümüz vardı.
Temel arayüz, sıcaklığı, nemi, etiket numarasını, bir kronometreyi ve manyetik yönü gösterir.
Basmalı düğme hareketlerinden birinde gerçek bir arayüz pusulası bulacaksınız. Yön iyi konumlandırılmış olarak ekranda bir daire çizilecektir.
Başka bir basma düğmesi eyleminde, konumunuzu veri tabanına göndereceği bir SOS mesajı göndereceksiniz. Ayrıca mors kodunda bir SOS mesajı duyacaksınız.
Ek olarak, son basma düğmesi eyleminde RFID etiketini uyandıracaksınız. Bundan sonra, geçiş noktanızı etiketlemek için beş saniyeniz var. Sonra bir bip sesi duyacaksınız. Bu eylem, ekrandaki bir sayacı artırır ve veri tabanımıza zamanla etiketi gönderir. Son olarak, tüm etiketler yolculuğu bir harita üzerinde çizecektir.
Saatimizin otonomu yaklaşık 4h30 (yaklaşık 660mA/h) civarındadır. Kontrol edilen etiket numarasına bağlıdır.
Yarıştan sonra, tüm koşu hareketlerini bluemix veri tabanımızda bulacaksınız.
Önerilen:
Dijital Pusula ve Yön Bulucu: 6 Adım
Dijital Pusula ve Yön Bulucu: Yazarlar: Cullan Whelan Andrew Luft Blake Johnson Teşekkür: California Denizcilik Akademisi Evan Chang-SiuGiriş: Bu projenin temeli, rota izleme özelliğine sahip dijital bir pusuladır. Bu, kullanıcının uzun mesafeler boyunca bir başlığı takip etmesini sağlar
Arduino Kullanarak DC MOTOR El Hareketi Kontrolü Hız ve Yön: 8 Adım
Arduino Kullanarak DC MOTOR El Hareketi Kontrolü Hız ve Yön Kontrolü: Bu eğitimde, arduino ve Visuino kullanarak el hareketleriyle bir DC motoru nasıl kontrol edeceğinizi öğreneceğiz. Videoyu izleyin! Şuna da göz atın: El hareketi Eğitimi
Akış Yön Sensörü: 16 Adım
Akış Yönü Sensörü: één dimensie meten içinde sensör zal de stromingsrichting, naar rechts'in naar bağlantılarını isimlendiren stroming. Sensörü en iyi şekilde kullanabilirsiniz. Beide buizen hebben een klepje die opengaat als er stroming
Oryantiring Yarış Bileziği: 11 Adım
Oryantiring Yarış Bileziği: Oryantiringin bir sonraki aşamasına geçmeyi hiç denediniz mi? Gerekli tüm bilgiler elinizde mi? Burada harika bir etkinliği teknolojiyle nasıl geliştirdiğimizi göreceksiniz. Size birçok bilgi verecek bir oryantasyon bileziği oluşturacağız
Sarılma Zamanı Bileziği: 6 Adım
Sarılma Zamanı Bileziği: Kızıma, ona Sarılma Zamanı olduğunu söyleyen, böylece Troller'deki karakterlerden biri gibi davranabilmesi için takabileceği bir bilezik yapmak istedim. Bilmeyenler için, troller tüm zamanlarını şarkı söyleyerek ve dans ederek geçirirler