Mündəricat:

Bağlı oriyentasiya qolbağı: 6 addım
Bağlı oriyentasiya qolbağı: 6 addım

Video: Bağlı oriyentasiya qolbağı: 6 addım

Video: Bağlı oriyentasiya qolbağı: 6 addım
Video: Renka rəqs edərkən ilan onu boğdu 2024, Noyabr
Anonim
Bağlı oriyentasiya qolbağı
Bağlı oriyentasiya qolbağı

Bağlı oriyentasiya bilərziyi olan bu akademik layihə Polytech Paris-UPMC mühəndislik məktəbinin dörd tələbəsi tərəfindən həyata keçirildi: Sebastien Potet, Pauline Pham, Kevin Antunes və Boris Bras.

Layihəmiz nədir?

Bir semestr ərzində bir idmançının istifadə edəcəyi əlaqəli bilərzik yaratmalı olduq. Yarış kursu, etiketləyəcəyi bir neçə nöqtəyə yönəldiləcək və bu, gedişatını qeyd etməyə imkan verəcəkdir. Bu məlumatlar real vaxtda bir buludda saxlanılacaq.

Bu məhsul temperatur, rütubət və oriyentasiya verə bilər. Üstəlik, qaçıcının problemi olduğu təqdirdə GPS mövqeyi göndərən üç düyməmiz var (SOS düyməsi), buna görə də real vaxtda ehtiyacımız var. İkincisi, aşağı gücü olan bir məhsul istədiyimiz üçün bilərziyi etiketləməyə və sonuncunun bilərziyi söndürməsinə imkan verir.

120 avroluq bir səhvimiz vardı. Bağlı bir oriyentasiya bilərzikini həyata keçirmək üçün dərsimizi izləyin!

Addım 1: Lazım olan material

Lazımi material
Lazımi material
Lazımi material
Lazımi material
Lazımi material
Lazımi material

Komponentlərin siyahısı:

- STM32L432KC-Nucleo Ultra Aşağı Güc

- SigFox TD1208 modulu

- RFID oxucu 125 kHz

- HTU21D temperatur/rütubət sensoru

- 3 oxlu ADXL345 akselerometr modulu

- Kompas modulu 3 oxlu HMC5883L

- Ekran OLED ADA938

- GPS modulu Grove 31275

- Batareya 1.5 V LR6

- Gərginlik tənzimləyicisi Pololu 3.3V U1V11F3

- Bəzi nəzarət düymələri

Addım 2: Proqramlaşdırma Bölümü

Proqramlaşdırma Bölümü
Proqramlaşdırma Bölümü

Hər şeydən əvvəl, hər bir komponenti mbed geliştirici saytı ilə proqramlaşdırdıq. Bunun üçün aşağı istehlakı olan bir mikro nəzarətçi STM32L476RG-Nucleo istifadə etdik.

Ekran, temperatur/rütubət sensoru və kompas I²C rabitəsində işləyir. RFID oxuyucusu və akselerometr Serial ünsiyyətdə işləyir. Hər bir komponent üçün öz kitabxanasını əlavə etməlisiniz.

İstilik/rütubət sensoru, kompas və akselerometr üçün məlumatları əldə etmək üçün kitabxanalarında müəyyən edilmiş funksiyanı axtarmalısınız.

RFID oxuyucusu seriyalı ünsiyyət üzərində işləyir, "getc ()" funksiyasından istifadə etməlisiniz, çünki etiket məlumatları char -ə qaytarır.

OLED ekranın kodundan başqa bütün kodlar fayl şəklində mövcuddur.

Addım 3: Elektron Quraşdırma

Elektron montaj
Elektron montaj

Hər bir komponenti proqramlaşdırdıqdan sonra bir labdec lövhəsi götürdük və onları STM32L432KC-Nucleo-ya bağladıq. Bütün komponentləri bir araya gətirmək üçün bağlantı sxemini izləyin və ya hər bir PIN kod yığımında ətraflı göstərilmişdir.

Üç 10 Kilo ohm rezistansı olan üç düyməni əlavə etdik: biri təhlükə vəziyyətində GPS mövqeyini göndərir, birini açmaq/söndürmək üçün, sonuncusu isə qaçıcının nöqtəni etiketləməsinə imkan verir. SOS düyməsini basdığınız zaman bir səs siqnalı əlavə etdik.

Əlavə olaraq "braceletOrientation" faylı Fritzing ilə bağlı layihəmizdir. Bu, komponentlərimizin və labdecdəki, eləcə də PCB -dəki naqillərimizin xülasəsidir. Bundan əlavə, bütün komponentlərin montaj kodunu əlavə etdik.

Addım 4: Məlumat Alınması

Məlumat əldə etmə
Məlumat əldə etmə
Məlumat əldə etmə
Məlumat əldə etmə
Məlumat əldə etmə
Məlumat əldə etmə

Aktyor lövhəsi

Actoboard, tablosuna əsaslanan bir vasitədir. Sigfox Modulu tərəfindən göndərilən bütün məlumatları göstərir. Daha sonra verilənlər bazasına daxil olmaq üçün bu məlumatları nodered URL ünvanına göndərəcək.

Məlumatları göndərin:

Məlumatı kodunuzla göndərmək üçün əvvəlcə Sigfox modulunun PIN kodunu (Tx, Rx) bəyan etməlisiniz (bunu kodumuzda görə bilərsiniz). Bundan sonra bu əmr sayəsində: "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 nümunə GPS məlumatlarını Actoboard -a göndərir.

Məlumatları alın:

Məlumat mənbələrinizi Sigfox modulunuzla əlaqəli qurduqdan sonra məlumatlarınızı kodunuzdan almaq üçün məlumat formatınızı təyin etməlisiniz. Əvvəlki ilə eyni nümunə üçün (GPS) məlumat formatını belə qurmalısınız: "lat_deg:: uint: 8 long_deg:: uint: 8 lat_10s:: uint: 8 long_10s:: uint: 8 lat_100s:: uint: 8 long_100s:: uint: 8 ".

Bit növünə və sayına diqqət yetirin, eyni uzunluğa sahib olmalısınız. Buna görə məlumatlarınızı kodunuza belə atmağı tövsiyə edirəm: "lat_deg = (int8_t) lat_deg;".

Rəqəm sayı ilə də diqqətli olun, bu nümunədə yalnız maksimum 2 rəqəmdən ibarət məlumat ötürürük. Ancaq "%04X" kimi daha böyük bir məlumat ötürmək istəyirsinizsə, bilirsiniz ki, Actoboard rəqəmi tərsinə çevirəcək. Məsələn, 0x3040 ötürürsünüzsə, Actoboard 0x4030 anlayacaq. 2 rəqəmdən artıq olan məlumat formatını göndərməzdən əvvəl rəqəmi tərs çevirməlisiniz.

İdarəetmə Paneli:

Verilənlərinizi Actoboard -dakı Tablosuna düzəltmək üçün sadəcə bir widget əlavə etməlisiniz. Bir widget siyahısı var, sisteminiz üçün ən uyğun olanı seçməlisiniz. Və yalnız hansı məlumatın hansı widgetı dolduracağını seçməli olduqdan sonra.

Nodedə göndərin:

Actoboard -da əldə etdiyiniz bütün məlumatları URL vasitəsilə kodlaşdırmaq üçün parametrlərinizdəki "yönləndirmə url" qutusunu düymələnmiş layihə URL ilə doldurmalısınız. Məsələn, qutunu "https://noderedprojet.mybluemix.net/projet" ilə doldurmalıyıq.

Addım 5: Məlumat Bazası

Məlumat bazası
Məlumat bazası
Məlumat bazası
Məlumat bazası
Məlumat bazası
Məlumat bazası
Məlumat bazası
Məlumat bazası

Bluemix

  • Nodered:
  • Actoboard məlumat formasını alın

Actoboard məlumat formasını əldə etmək üçün "POST" metodunu qurmalı və URL -ni göstərməli olduğunuz "websocket" girişini əlavə etməlisiniz (şəkildəki nümunə).

Məlumatların formatlanması

Veritabanınıza əlavə etmək istədiyiniz məlumatları (buludlu) çıxarmaq və formatlaşdırmaq lazımdır. Bunun üçün "funksiya" bloku əlavə etməlisiniz. Bunu necə edəcəyinizi başa düşmək üçün fotoşəkilə baxın.

Xəritəyə geomtry şeyləri əlavə edə bilərsiniz, məsələn, xəritədə GPS koordinatı ilə bir nöqtə əlavə edən və əlaqələndirən bir funksiyamız var. Yarış yaratmaq üçün bu funksiyanı istifadə edirik və sonra RFID TAG -ı yoxlasanız, nöqtədə çoxbucaqlı yaradacaq başqa bir funksiyanı dəyişirik.

Buluda göndərin

Məlumatlarınız formatlandıqdan sonra onları buludlu məlumat bazanıza göndərməlisiniz. Bunun üçün "buludlu" bir saxlama bloku əlavə etməlisiniz və Məlumat Bazanızın adı kimi parametrləri göstərməlisiniz, "daxil et" əməliyyatı nümunəmizdə əlavə olunur.

Sisteminizin işləməsi üçün noded olduğunuz "Deploy" etməyi unutmayın.

Bulud:

Buludlu Veritabanınızda, sigfox ilə göndərdiyiniz bütün məlumatları qırmızı node ilə görə bilərsiniz. "Tarix, cihaz, TAG RFID, GPS" kimi görmək istədiyiniz məlumatları seçə bilərsiniz.

Və "gps coğrafi indekslər" menyusundakı düymələnmiş funksiyada yaratdığınız geomtry şeylərini görüntüləyə bilərsiniz.

Addım 6: Nümayiş

Xülasə etmək üçün, dörd düymə ilə idarə olunan dörd insan interfeysinə sahibik.

Əsas interfeys temperaturu, rütubəti, etiketin nömrəsini, xronometrini və maqnit istiqamətini göstərir.

Düymə hərəkətlərindən birində əsl interfeys kompası tapa bilərsiniz. Ekranda yaxşı bir istiqamətdə bir dairə çəkiləcək.

Başqa bir düymə hərəkətində, yerinizi məlumat bazasına göndərən bir SOS mesajı göndərəcəksiniz. Üstəlik, Morse kodunda bir SOS mesajı eşidəcəksiniz.

Əlavə olaraq, son düymə hərəkətində RFID etiketini oyandıracaqsınız. Bundan sonra keçid nöqtənizi etiketləmək üçün beş saniyəniz var. Sonra bir bip səsi eşidəcəksiniz. Bu hərəkət ekrandakı sayğacı artırır və məlumat bazamızdakı vaxtı göstərən etiketi göndərir. Nəhayət, bütün etiketlər gəzintini xəritəyə çəkəcək.

Saatımızın avtomatizmi təxminən 4h30 (təxminən 660mA/saat) təşkil edir. Yoxlanan etiket nömrəsindən asılıdır.

Yarışdan sonra yekunlaşdırmaq üçün bütün məlumatları bluemix məlumat bazamızda tapa bilərsiniz.

Tövsiyə: