Bu cihaz, hızlanma, açı ve yönler gibi sağlık durumlarının yanı sıra antrenmanlar ve oyunlar sırasında oyuncuların hareketleri hakkında gerçek zamanlı veriler sağlayabilir. Oyunu daha iyi anlamaya, oyuncuların performansını artırmaya ve becerileri öğrenmeye yardımcı olabileceğinden hem oyuncular hem de spor izleyicileri için yararlı olabilir.
Bu cihaz hem WiFi hem de Bluetooth ağını destekler. Bu, farklı cihazlardan toplanan bir oyunun gerçek zamanlı verilerinin bir cihaz bulutuna gönderilebileceği ve her yerden erişilebileceği anlamına gelir.
Gerekli Bileşenler
- Parçacık Argon gibi WiFi ve Bluetooth mesh özellikli cihaz (Mesh için bu cihazın birden fazlasına ihtiyacınız var)
- Bir MPU6050 sensörü
- Bir Max30100sensor
- Bluetooth HC 05 (Bluetooth seri bağlantı noktası üzerinden canlı veri almak istiyorsanız isteğe bağlı)
- 3-5 V şarj edilebilir pil
Bileşenleri topladığımızdan, şimdi projeye başlayabiliriz.
Kodlama
Önce ağ ağı için argon cihazını kurun ve o ağda çalışmak istediğiniz diğer tüm cihazları ekleyin. Bunu yapmak için, parçacık uygulamasını akıllı telefonunuza indirin ve uygulamadaki talimatları izleyin. Cihazımız için parçacık Web IDE’sinde veya Vs Workbench’te kod oluşturabiliriz. Burada parçacık IDE’sinde kodlama yapacağız, çünkü bu, firmware’i OTP üzerinden kablosuz olarak herhangi bir yerden güncellememize izin veriyor.
Kodumuzun ilk bölümünde, sensörler için gerekli kütüphaneleri ve diğer değişkenleri içereceğiz. Burada max30100 ve mpu6050 sensör kitaplıklarını kullanıyoruz. Daha sonra sistem modunu otomatik olarak ve cihazımız için sistem iş parçacığını etkinleştireceğiz. (Bakınız şekil 1).
Şekil 1. Partikül kodu
Ardından, Bluetooth, USB Hata Ayıklama ve test işlemleri için seri bağlantı noktası ayarladığımız kodumuzun kurulum işlevi oluşturulur. Burada iki seriyi, “Serail.begin (baudrate)” kullanarak USB için, diğeri “Serial1.begin (baudrate)” kullanarak Bluetooth üzerinden canlı veri almak için Bluetooth HC 05 series için iki seri kurduk. (Bakınız Şekil 2.)
Şekil 2. Parçacık kodu ayarlama işlevi
Bundan sonra döngü içinde sürekli çalışan bir döngü fonksiyonu oluşturduk. Burada döngüde sensörlerden veri alıyor ve daha önce yarattığımız değişkenlere aktarıyoruz. Sonra bu verileri seri portlara gönderdik. (Bakınız Şekil 3).
Şekil 3. Verileri göndermek için parçacık kodu.
Mesh Ağı oluşturma ve cihaz bulutuna bağlanma
Kodun bir sonraki bölümünde, cihazı cihaz bulutuna bağladık ve bir ağ oluşturduk. Bu bölüm iki adımdan oluşur: İlk olarak bir etkinlik oluşturma ve tüm verileri cihaz bulutunda yayınlama; ikincisi bir yerel ağ oluşturma ve tüm verileri yerel bağlı cihaza yayınlama.
Yerel ağ ağı için “Mesh.publish” kullanarak ağ oluşturduk ve bulut bağlantılı için “Parçacık” ı kullandık. Yayınla”.
Burada kod snippet’inde, oyuncuların sağlık, hareket açısı ve ivme verilerini mesh ağına veren üç mesh etkinliği “Health”, “ang” ve “acc” oluşturduk. (Bakınız Şekil 4).
Mesh.publish (“Sağlık”, Dize (BPM) + ”bpm =” + Dize (sp) + ”%” + Dize (t) + ”C”);
Mesh.publish (“ang”, Dize (x) + ”x“ + ”y =” + Dize (y) + ”z =“ + Dize (z)); Mesh.publish (“acc”, Dize (ax) + ”= x” + Dize (ay) + ”= y” + Dize (az) + ”= z”);
Şekil 4. Partikül ağ ağı.
Mesh Ağı Etkinliği
Şimdi “Mesh.subscribe” ve “Particle.Subscribe” ekleyerek mesh ağımızdaki diğer tüm cihazların olaylarını elde edebiliriz. Seçimimize göre bir köprü veya tekrarlayıcı olarak kullanabiliriz. Başka bir kod bloğu (aşağıda verilmiştir) mesh ağındaki olayların verilerini işler. Böyle bir kodu, oyuncuların verilerini cihaz bulutuna yayınlayan ve verileri her yerden canlı olarak alan bir dizi parçacık argon cihazına yükleyebiliriz.
Mesh.subscribe (“Sağlık”, myHandler1);
Mesh.subscribe (“ang”, myHandler2);
Şekil 5. Mesh etkinliğiŞekil 6. Mesh olay işleyicisi
Bağ
Şimdi, prototipimiz için sensörleri bağlamamız gerekiyor. Bileşenleri bağlamak için aşağıdaki talimatları izleyin.
Parçacık Pimi | MPU ve MAX Sensör Pimi |
3V | VCC |
GND | GND |
SCL | SCL |
SDA | SDA |
pil | Akü bağlantı portu |
Parçacık Pimi | Bluetooth HC O5 |
3v | VCC |
GND | GND |
RX | Teksas |
Teksas | RX |
Test yapmak
Şimdi, Wi-Fi yönlendiricinizi açın ve cihazımızın buluta bağlı olduğunu gösteren MAVİ ışığın yanmasını bekleyin. Ardından parçacık web IDE’sindeki bağlantı durumu çevrimiçi olarak gösterilecektir.
Şimdi cihazı seçin ve kodu OTA parçacığına çevirin. Kod güç parçacığını pille başarıyla güncelledikten sonra, Wi-Fi ağına ve cihaz bulutuna bağlanmasına izin verin.
Test 1. Bluetooth üzerinden Kablosuz canlı sensör verisi alma
PC’nizdeki Arduino IDE’yi açın ve Bluetooth HC 05’i PC’nizin Bluetooth’una bağlayın. Bundan sonra Bluetooth COM PORT numarasını kontrol edin ve bağlantı noktasını Arduino IIDE’deki bu bağlantı noktası numarasına değiştirin. Şimdi araçlar menüsüne gidin ve sensör verilerinin canlı grafiğini görebileceğiniz seri çiziciyi açın (oyuncuların kalp atışı, kan oksijen yüzdesi, kolun veya sensörün bağlı olduğu diğer vücut parçalarının hızlanması). (Bakınız Şekil 6.). Şimdi seri çiziciyi kapatın ve veri değerini görmek için seri bağlantı noktasını açın. Bakınız şekil 7.
Şekil.6Şekil 7.
Test 2. Mesh ağı ve Device cloud üzerinden veri alma.
Verileri cihaz bulutuna almak için konsolu açın ve URL’yi kopyalayıp herhangi bir tarayıcıya yapıştırın. Birkaç saniye sonra tüm sensör verilerini olay adıyla göstermeye başlar. Bu verilere, cihazdan ne kadar uzakta olursanız olun internet üzerinden her yerden erişilebilir. Bakınız şekil 8,9, 10. Sensörlerin canlı verilerine parçacık uygulamasından da erişilebilir.
Şekil 8. Konsolda göstermeŞekil 9. uygulamada gösteriliyorŞekil 10. Web’e veri akışı
https://drive.google.com/file/d/14fi6WtXLEIuWqlhm8l3vZYLuQY-GQ-vJ/view?usp=sharing