STMicroelectronics UM2193 MotionAR აქტივობის ამოცნობის ბიბლიოთეკა
შესავალი
Motion AR არის X-CUBE-MEMS1 პროგრამის შუაპროგრამის ბიბლიოთეკის ნაწილი და მუშაობს STM32-ზე. ის უზრუნველყოფს რეალურ დროში ინფორმაციას მომხმარებლის მიერ შესრულებული აქტივობის შესახებ. მას შეუძლია განასხვავოს შემდეგი აქტივობები: სტაციონარული, ფეხით სიარული, სწრაფი სიარული, სირბილი, ველოსიპედი, ავტომობილის მართვა.
ეს ბიბლიოთეკა განკუთვნილია მხოლოდ ST MEMS-თან მუშაობისთვის.
ალგორითმი მოწოდებულია სტატიკური ბიბლიოთეკის ფორმატში და შექმნილია STM32 მიკროკონტროლერებზე გამოსაყენებლად ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 ან ARM® Cortex®-M7 არქიტექტურაზე.
იგი აგებულია STM32Cube პროგრამული ტექნოლოგიის თავზე, რომელიც ამარტივებს პორტაბელურობას სხვადასხვა STM32 მიკროკონტროლერებში.
პროგრამას მოყვება სampდანერგვა მუშაობს X-NUCLEO-IKS01A3 ან X-NUCLEO-IKS4A1 გაფართოების დაფაზე NUCLEO-F401RE, NUCLEO-L152RE ან NUCLEO-U575ZI-Q განვითარების დაფაზე.
აბრევიატურა და აბრევიატურა
ცხრილი 1. აკრონიმების სია
აკრონიმი | აღწერა |
API | აპლიკაციის პროგრამირების ინტერფეისი |
BSP | საბჭოს მხარდაჭერის პაკეტი |
GUI | გრაფიკული მომხმარებლის ინტერფეისი |
HAL | ტექნიკის აბსტრაქციის ფენა |
IDE | ინტეგრირებული განვითარების გარემო |
Motion AR Middleware ბიბლიოთეკა X-CUBE-MEMS1 პროგრამული გაფართოებაში
Motion AR დასრულდაview
Motion AR ბიბლიოთეკა აფართოებს X-CUBE-MEMS1 პროგრამული უზრუნველყოფის ფუნქციონირებას.
ბიბლიოთეკა იძენს მონაცემებს აქსელერომეტრიდან და აწვდის ინფორმაციას მომხმარებლის მიერ შესრულებული აქტივობის შესახებ.
ბიბლიოთეკა განკუთვნილია მხოლოდ ST MEMS-ისთვის. ფუნქციონალობა და შესრულება სხვა MEMS სენსორების გამოყენებისას არ არის გაანალიზებული და შეიძლება მნიშვნელოვნად განსხვავდებოდეს დოკუმენტში აღწერილისგან.
Sampდანერგვა ხელმისაწვდომია X-NUCLEO-IKS01A3 ან X-NUCLEO-IKS4A1 გაფართოების დაფებზე, რომლებიც დამონტაჟებულია NUCLEO-F401RE, NUCLEO-L152RE ან NUCLEO-U575ZI-Q განვითარების დაფაზე.
Motion AR ბიბლიოთეკა
ტექნიკური ინფორმაცია, რომელიც სრულად აღწერს Motion AR API-ების ფუნქციებსა და პარამეტრებს, შეგიძლიათ იხილოთ MotionAR_Package.chm-ში შედგენილ HTML-ში. file მდებარეობს Documentation საქაღალდეში.
Motion AR ბიბლიოთეკის აღწერა
- Motion AR აქტივობის ამოცნობის ბიბლიოთეკა მართავს აქსელერომეტრიდან შეძენილ მონაცემებს; მას აქვს მახასიათებლები:
- შემდეგი აქტივობების გარჩევის შესაძლებლობა: სტაციონარული, სიარული, სწრაფი სიარული, სირბილი, ველოსიპედით ტარება, ავტომობილის მართვა
- ამოცნობა მხოლოდ აქსელერომეტრის მონაცემებზე დაყრდნობით
- საჭირო ამაჩქარებლის მონაცემები სampლინგის სიხშირე: 16 ჰც
- რესურსების მოთხოვნები:
- Cortex-M3: 8.5 კბ კოდი და 1.4 კბ მონაცემთა მეხსიერება
- Cortex-M33: 7.8 კბ კოდი და 1.4 კბ მონაცემთა მეხსიერება
- Cortex-M4: 7.9 კბ კოდი და 1.4 კბ მონაცემთა მეხსიერება
- Cortex-M7: 8.1 კბ კოდი და 1.4 კბ მონაცემთა მეხსიერება
- ხელმისაწვდომია ARM Cortex-M3, Cortex-M33, Cortex-M4 და Cortex-M7 არქიტექტურებისთვის
MotionAR API-ები
MotionAR API არის:
- uint8_t MotionAR_GetLibVersion(char *ვერსია)
- იღებს ბიბლიოთეკის ვერსიას
- *ვერსია არის 35 სიმბოლოსგან შემდგარი მასივის მაჩვენებელი
- აბრუნებს სიმბოლოების რაოდენობას ვერსიის სტრიქონში
- void MotionAR_Initialize(void)
- ასრულებს MotionAR ბიბლიოთეკის ინიციალიზაციას და შიდა მექანიზმის დაყენებას
- CRC მოდული STM32 მიკროკონტროლერში (RCC პერიფერიული საათის ჩართვის რეგისტრში) უნდა იყოს
ჩართულია ბიბლიოთეკის გამოყენებამდე
შენიშვნა: ეს ფუნქცია უნდა გამოიძახოთ აქსელერომეტრის კალიბრაციის ბიბლიოთეკის გამოყენებამდე.
- void MotionAR_Reset (ბათილი)
- აღადგენს აქტივობის ამოცნობის ალგორითმებს
- void MotionAR_Update(MAR_input_t *data_in, MAR_output_t *data_out, int64_t
დროისamp)- ახორციელებს აქტივობის ამოცნობის ალგორითმს
- *data_in პარამეტრი არის სტრუქტურის მაჩვენებელი შეყვანის მონაცემებით
- სტრუქტურის ტიპის MAR_input_t პარამეტრებია:
- acc_x არის აქსელერომეტრის სენსორის მნიშვნელობა X ღერძში გ
- acc_y არის აქსელერომეტრის სენსორის მნიშვნელობა Y ღერძში გ
- acc_z არის ამაჩქარებლის სენსორის მნიშვნელობა Z ღერძში g
- *data_out პარამეტრი არის ინდიკატორი, რომელიც უნდა შეიყვანოთ შემდეგი ელემენტებით:
- MAR_NOACTIVITY = 0
- MAR_STATIONARY = 1
- MAR_WALKING = 2
- MAR_FASTWALKING = 3
- MAR_JOGGING = 4
- MAR_BIKING = 5
- MAR_DRIVING = 6
- დროისamp არის შედარებითი დრო ფაქტობრივი სampლე მს
- void MotionAR_ Set Orientation_ Acc(const char *acc_ ორიენტაცია)
- ადგენს აქსელერომეტრის მონაცემთა ორიენტაციას
- კონფიგურაცია ჩვეულებრივ ხორციელდება Motion AR_ Initialize ფუნქციის გამოძახებისთანავე
- *acc_ ორიენტაციის პარამეტრი არის მაჩვენებელი სამი სიმბოლოს სტრიქონზე, რომელიც მიუთითებს ამაჩქარებლის მონაცემების გამოსატანად გამოყენებული საცნობარო ჩარჩოს თითოეული დადებითი ორიენტაციის მიმართულებას, თანმიმდევრობით x, y, z. მოქმედი მნიშვნელობებია: n (ჩრდილოეთი) ან s (სამხრეთი), w (დასავლეთი) ან e (აღმოსავლეთი), u (ზემოთ) ან d (ქვემოთ)
- როგორც ქვემოთ მოცემულ სურათზეა ნაჩვენები, X-NUCLEO-IKS4A1 ამაჩქარებლის სენსორს აქვს SEU (x-South, y- East, z-Up), ამიტომ სტრიქონი არის: "seu".
სურათი 1. სენსორის ორიენტაცია მაგample
API ნაკადის სიმბოლო
სურათი 2. Motion AR API ლოგიკური თანმიმდევრობა
დემო კოდი
შემდეგი საჩვენებელი კოდი კითხულობს მონაცემებს აქსელერომეტრის სენსორიდან და იღებს აქტივობის კოდს
[...] #define VERSION_STR_LENG 35 [...] /*** ინიციალიზაცია ***/ char lib_version[VERSION_STR_LENG]; char acc_orientation[] = "seu"; /* აქტივობის ამოცნობის API ინიციალიზაციის ფუნქცია */ MotionAR_Initialize(); /* სურვილისამებრ: მიიღეთ ვერსია */ MotionAR_GetLibVersion(lib_version); /* დააყენეთ აქსელერომეტრის ორიენტაცია */ MotionAR_SetOrientation_Acc(acc_orientation); [...] /*** აქტივობის ამოცნობის ალგორითმის გამოყენებით ***/ Timer_ OR_ Data Rate_ Interrupt_ Handler() {
MAR_input_t data_ in; MAR_ გამომავალი_ t აქტივობა; /* მიიღეთ აჩქარება X/Y/Z გ */ MEMS_Read_AccValue(&data_in.acc_x, &data_in.acc_y, &data_in.acc_z); /* მიიღეთ მიმდინარე დრო ms */ TIMER_Get_TimeValue(×tamp_ქალბატონი); /* აქტივობის ამოცნობის ალგორითმის განახლება */ MotionAR_Update(data_in, data_out, timestamp_ქალბატონი); }
ალგორითმის შესრულება
აქტივობის ამოცნობის ალგორითმი იყენებს მხოლოდ ამაჩქარებლის მონაცემებს და მუშაობს დაბალ სიხშირეზე (16 ჰც) ენერგიის მოხმარების შესამცირებლად.
ცხრილი 2. ალგორითმის შესრულება
აქტივობა | გამოვლენის ალბათობა (ჩვეულებრივი)(1) | საუკეთესო შესრულება | მგრძნობიარე | პოზიციების ტარება |
სტაციონარული | 92.27% | ხელში დაჭერა და მძიმე ტექსტური შეტყობინება | ყველა: შარვლის ჯიბე, პერანგის ჯიბე, უკანა ჯიბე, თავთან ახლოს და ა.შ. | |
გასეირნება | 99.44% | ნაბიჯის სიჩქარე ≥ 1.4 ნაბიჯი/წმ | ნაბიჯის სიჩქარე ≤ 1.2 ნაბიჯი/წმ | ყველა |
სწრაფი სიარული | 95.94% | ნაბიჯის სიჩქარე ≥ 2.0 ნაბიჯი/წმ | ყველა | |
სირბილი | 98.49% | ნაბიჯის სიჩქარე ≥ 2.2 ნაბიჯი/წმ | ხანგრძლივობა < 1 წუთი; სიჩქარე < 8 კმ/სთ | შარვლის ჯიბე, მკლავის საქანელა, ხელში |
ველოსიპედით | 91.93% | გარე სიჩქარე ≥11 კმ/სთ | მგზავრის სავარძელი, ხელთათმანების განყოფილება | ზურგჩანთა, პერანგის ჯიბე, შარვლის ჯიბე |
ავტომობილის მართვა | 78.65% | სიჩქარე ≥ 48 კმ/სთ | მგზავრის სავარძელი, ხელთათმანების განყოფილება | ჭიქის დამჭერი, დაფა, პერანგის ჯიბე, შარვლის ჯიბე |
- ტიპიური სპეციფიკაციები არ არის გარანტირებული
ცხრილი 3. Cortex-M4 და Cortex-M3: გასული დროის (μs) ალგორითმი
Cortex-M4 STM32F401RE 84 MHz | Cortex-M3 STM32L152RE 32 MHz-ზე | ||||
მინ | საშ | მაქს | მინ | საშ | მაქს |
2 | 6 | 153 | 8 | 130 | 4883 |
ცხრილი 4. Cortex-M33 და Cortex-M7: გასული დროის (μs) ალგორითმი
Cortex-M33 STM32U575ZI-Q 160 MHz-ზე | Cortex-M7 STM32F767ZI 96 MHz-ზე | ||||
მინ | საშ | მაქს | მინ | საშ | მაქს |
<1 | 2 | 74 | 5 | 9 | 145 |
Sampგანაცხადი
MotionAR-ის შუალედური პროგრამული უზრუნველყოფის მარტივად მანიპულირება შესაძლებელია მომხმარებლის აპლიკაციების შესაქმნელად; როგორცampაპლიკაცია მოწოდებულია განაცხადის საქაღალდეში.
იგი შექმნილია NUCLEO-F401RE, NUCLEO-L152RE ან NUCLEO-U575ZI-Q განვითარების დაფაზე, რომელიც დაკავშირებულია X-NUCLEO-IKS01A3 ან X-NUCLEO-IKS4A1 გაფართოების დაფაზე.
აპლიკაცია ცნობს შესრულებულ აქტივობებს რეალურ დროში. მონაცემების ჩვენება შესაძლებელია GUI-ის საშუალებით. ალგორითმი ამოიცნობს სტაციონარულ, ფეხით, სწრაფ სიარულს, სირბილს, ველოსიპედის ტარებას და ავტომობილის მართვას. რეალურ დროში მონაცემების მონიტორინგისთვის საჭიროა USB კაბელის კავშირი. დაფა იკვებება კომპიუტერით USB კავშირის საშუალებით. ეს საშუალებას აძლევს მომხმარებელს აჩვენოს აღმოჩენილი აქტივობა, ამაჩქარებლის მონაცემები, დრო ქamp და საბოლოოდ სხვა სენსორული მონაცემები, რეალურ დროში, MEMS-Studio GUI აპლიკაციის გამოყენებით.
MEMS-Studio აპლიკაცია
სample აპლიკაცია იყენებს MEMS-Studio GUI აპლიკაციას, რომლის ჩამოტვირთვა შესაძლებელია www.st.com.
ნაბიჯი 1. დარწმუნდით, რომ დაყენებულია საჭირო დრაივერები და STM32 Nucleo დაფა შესაბამისი გაფართოების დაფით არის დაკავშირებული კომპიუტერთან.
ნაბიჯი 2. გაუშვით MEMS-Studio აპლიკაცია აპლიკაციის ძირითადი ფანჯრის გასახსნელად.
თუ STM32 Nucleo დაფა მხარდაჭერილი პროგრამული უზრუნველყოფით არის დაკავშირებული კომპიუტერთან, ის ავტომატურად აღმოაჩენს შესაბამის COM პორტს. ამ პორტის გასახსნელად დააჭირეთ ღილაკს Connect.
სურათი 3. MEMS-Studio – დაკავშირება
ნაბიჯი 3. როდესაც დაკავშირებულია STM32 Nucleo დაფაზე მხარდაჭერილი firmware-ით ბიბლიოთეკის შეფასების ჩანართი იხსნება.
მონაცემთა ნაკადის დასაწყებად და შესაჩერებლად გადართეთ შესაბამისი დაწყება /
გაჩერების ღილაკი ხელსაწყოს გარე ვერტიკალურ ზოლზე.
დაკავშირებული სენსორიდან მიღებული მონაცემები შეიძლება იყოს viewამოირჩიეთ მონაცემთა ცხრილის ჩანართი შიდა ვერტიკალური ხელსაწყოების ზოლზე.
სურათი 4. MEMS-სტუდია – ბიბლიოთეკის შეფასება – მონაცემთა ცხრილი
სურათი 5. MEMS-Studio – ბიბლიოთეკის შეფასება – აქტივობის ამოცნობა
ნაბიჯი 5. აირჩიეთ Save to File ჩანართი შიდა ვერტიკალური ხელსაწყოების ზოლზე მონაცემთა აღრიცხვის კონფიგურაციის ფანჯრის გასახსნელად. აირჩიეთ სენსორის და აქტივობის მონაცემების შენახვა ჟურნალში file. შეგიძლიათ დაიწყოთ ან შეწყვიტოთ შენახვა შესაბამისი Start/Stop ღილაკზე დაჭერით.
სურათი 6. MEMS-სტუდია – ბიბლიოთეკის შეფასება – შენახვა File
ცნობები
ყველა შემდეგი რესურსი თავისუფლად არის ხელმისაწვდომი www.st.com.
- UM1859: დაწყება X-CUBE-MEMS1 მოძრაობის MEMS-ით და გარემოს სენსორის პროგრამული გაფართოებით STM32Cube-ისთვის
- UM1724: STM32 Nucleo-64 დაფები (MB1136)
- UM3233: MEMS-Studio-ს დაწყება
გადასინჯვის ისტორია
ცხრილი 5. დოკუმენტის გადასინჯვის ისტორია
თარიღი | ვერსია | ცვლილებები |
10-აპრ-2017 | 1 | თავდაპირველი გამოშვება. |
26-იან-2018 | 2 | განახლებულია მე-3 სampგანაცხადი. დამატებულია მითითებები NUCLEO-L152RE განვითარების დაფაზე და ცხრილი 3. გასული დროის (μs) ალგორითმი. |
19-მარ-2018 | 3 | განახლებულია შესავალი, სექცია 2.1 Motion AR დასრულდაview და ნაწილი 2.2.5 ალგორითმის შესრულება. |
14-თებ-2019 | 4 | განახლებულია სურათი 1. სენსორის ორიენტაცია მაგample, ცხრილი 3. გასული დროის (µs) ალგორითმი და ნახაზი 3. STM32 Nucleo: LED-ები, ღილაკი, ჯუმპერი. დამატებულია X-NUCLEO-IKS01A3 გაფართოების დაფის თავსებადობის ინფორმაცია. |
20-მარ-2019 | 5 | განახლებულია განყოფილება 2.2.2 Motion AR APIs, სურათი 3. MEMS-Studio – Connect, ნახაზი 4. MEMS-Studio – Library Evaluation – Data Table, ნახაზი 5. MEMS-Studio – Library Evaluation – Activity Recognition და ფიგურა 6. MEMS-Studio – ბიბლიოთეკის შეფასება – შენახვა File. |
04-აპრ-2024 | 6 | განახლება განყოფილების შესავალი, ნაწილი 2.1: MotionAR დასრულდაview, განყოფილება 2.2.1: MotionAR ბიბლიოთეკა აღწერა, MotionAR API, განყოფილება 2.2.4: დემო კოდი, ნაწილი 2.2.5: ალგორითმის შესრულება, ნაწილი 3: სampგანაცხადი და ნაწილი 4: MEMS-Studio აპლიკაცია. |
მნიშვნელოვანი შენიშვნა - წაიკითხეთ ყურადღებით
STMicroelectronics NV და მისი შვილობილი კომპანიები ("ST") იტოვებენ უფლებას ნებისმიერ დროს განახორციელონ ცვლილებები, შესწორებები, გაუმჯობესებები, მოდიფიკაციები და გაუმჯობესებები ST პროდუქტებში და/ან ამ დოკუმენტში შეტყობინების გარეშე. მყიდველებმა უნდა მიიღონ უახლესი შესაბამისი ინფორმაცია ST პროდუქტების შესახებ შეკვეთების განთავსებამდე. ST-ის პროდუქტები იყიდება ST-ის გაყიდვის პირობებისა და პირობების შესაბამისად, რომლებიც შეკვეთის დადასტურების მომენტში არსებობს.
მყიდველები არიან მხოლოდ პასუხისმგებელი ST პროდუქტების არჩევანზე, შერჩევასა და გამოყენებაზე და ST არ იღებს პასუხისმგებლობას განაცხადის დახმარებაზე ან მყიდველების პროდუქტების დიზაინზე.
არავითარი ლიცენზია, გამოხატული თუ ნაგულისხმევი, რაიმე ინტელექტუალური საკუთრების უფლებაზე არ არის გაცემული ST-ის მიერ აქ.
ST პროდუქტების ხელახალი გაყიდვა წინამდებარე ინფორმაციისგან განსხვავებული დებულებებით გააუქმებს ST-ის მიერ ასეთ პროდუქტზე გაცემულ ნებისმიერ გარანტიას.
ST და ST ლოგო ST-ის სავაჭრო ნიშნებია. დამატებითი ინფორმაციისთვის ST სავაჭრო ნიშნების შესახებ იხილეთ www.st.com/trademarks. ყველა სხვა პროდუქტის ან სერვისის სახელი მათი შესაბამისი მფლობელების საკუთრებაა.
ამ დოკუმენტის ინფორმაცია ანაცვლებს და ცვლის ადრე მოწოდებულ ინფორმაციას ამ დოკუმენტის ნებისმიერ წინა ვერსიაში.
© 2024 STMicroelectronics – ყველა უფლება დაცულია
დოკუმენტები / რესურსები
![]() |
STMicroelectronics UM2193 MotionAR აქტივობის ამოცნობის ბიბლიოთეკა [pdf] მომხმარებლის სახელმძღვანელო UM2193 MotionAR Activity Recognition Library, UM2193, MotionAR Activity Recognition Library, Activity Recognition Library, Recognition Library, Library |