Skip to content

활동

AI sports data logger

고급 | MakeCode | LED, 가속도 센서, 데이터 로깅 | AI 이해하기, 데이터 수집, 데이터 정리, 머신 러닝, 성능 평가 도구

Make an AI sports data logger with micro:bit CreateAI that logs how much time you and others spend running, walking and being still. 

프로젝트 단계별 가이드

1단계: 이해하기

How does it work?

In this project, you’ll train a machine learning (ML) model to recognise when you’re running, walking and being still.

You’ll combine that model with a MakeCode program that uses the micro:bit’s data logging function to record what action you are doing every second.

This project could be useful in sports such as football or netball where you need to analyse how active certain players are. You could also use it to monitor how much time you have spent running or walking during school breaks or a during a workout.

기계 학습이란?

기계 학습(ML)은 컴퓨터가 데이터 기반으로 학습하고 판단하는 일종의 인공지능(AI)입니다.

예를 들어, ML 모델은 사용자가 micro:bit를 다양한 방식으로 움직일 때 다양한 '행동'을 인식하도록 결정하는 도움을 주기 위해 학습됩니다.

제작 방법

AI 시스템은 사용자가 설계, 구축, 테스트, 사용합니다. You'll collect data to train an ML model, test it, improve it, and combine it with computer code to make a smart device that uses AI. 이를 위해 사용자는 micro:bit와 micro:bit CreateAI 웹사이트를 사용합니다.

2단계: 만들기

준비물

  • A micro:bit V2, USB cable, and a battery pack with 2 x AAA batteries
  • A computer (e.g. desktop, laptop, or Chromebook) with access to the micro:bit CreateAI website, using a Chrome or Edge web browser
  • 블루투스를 사용할 수 없는 컴퓨터인 경우 micro:bit V2가 하나 더 필요합니다.
  • A strap and holder, or another way to attach the micro:bit to your wrist (e.g. flexible craft stems or elastic bands)
  • You may also find our micro:bit CreateAI teaching tips useful

데이터 샘플 수집

When you open the project in micro:bit CreateAI, you’ll see we’ve given you some data samples for ‘running’, 'walking’ and ‘still’ actions:

You can add your own movement samples using the micro:bit's movement sensor or accelerometer.

micro:bit CreateAI에서 '연결(Connect)' 버튼을 클릭하여 데이터 수집 micro:bit를 연결하고 지시를 따릅니다.

Attach the data collection micro:bit to your left wrist like a watch, with the logo at the top. Click on the first action, ‘walking’, and click 'Record' to record your own data samples. 실수한 경우 원하지 않는 샘플은 삭제할 수 있습니다. micro:bit의 B 버튼을 눌러 기록을 시작할 수도 있습니다.

If you would like to record continuously for 10 seconds to get 10 samples, click on the three dots next to the record button and select that option.

Now record your own data samples for the ‘running’ action, then the ‘still’ action, making sure for ‘still’ that you collect samples in different positions, such as facing up and down.

모델 훈련 및 테스트

'모델 훈련(Train model)' 버튼을 클릭하여 모델을 훈련한 후 테스트하세요. Try walking and see if ‘walking’ is the estimated action, then running to see if ‘running’ is the estimated action. Keep still and see if ‘still’ is estimated. Give your micro:bit to someone else to wear (making sure they put it on the same wrist and in the same orientation) and see if it works as well for them.

모델 개선

대부분의 모델은 데이터가 많을수록 더 개선될 수 있습니다. If the model needs improving, click on ‘← Edit data samples’.

You can delete any data samples which you think don’t fit or add more samples from yourself and other people.

모델을 한 번 더 훈련하고 다시 테스트합니다.

모델과 코드를 micro:bit에 넣습니다.

micro:bit CreateAI의 ‘MakeCode에서 편집(Edit in MakeCode)’을 클릭하면 MakeCode 편집기에서 프로젝트 코드를 볼 수 있습니다.

You can modify the code or just try it out as it is. Attach your micro:bit using a USB cable, click on the ‘Download’ button in the MakeCode screen, and follow the instructions to transfer your AI model and the code blocks to it.

Attach a battery pack to the micro:bit and put it on, ready to test out.

Collect your data

First press buttons A and B together to delete any old data logs from your micro:bit. Reset the timer by pressing the reset button on the back of the micro:bit. Press button A to start logging and button B to stop logging. 

Your data will stay on your micro:bit even if you disconnect the battery or press the reset button.

데이터 분석

배터리 팩을 분리하고 micro:bit 를 다시 컴퓨터에 연결합니다. micro:bit 는 MICROBIT이라는 USB 드라이브처럼 보입니다. micro:bit 는 MICROBIT이라는 USB 드라이브처럼 보입니다.

Data table from AI sports data logger

The time stamps in the log represent the amount of time that has passed since your micro:bit was powered on or reset.

Click on Visual preview to see a graph of your data:

Graph generated by CreateAI sports data logger

You can also click on the Copy button and then paste your data into a spreadsheet.

코드 블록 작동 방식

This program uses a variable called ‘logging’. A variable in a computer program is a container for storing data which can be accessed and updated while the program is running. In this program, the variable ‘logging’ controls if the micro:bit is logging or not and can be set to ‘true’ or ‘false’. Variables that can be set to these two values are called ‘Boolean’ variables.

When the program starts, the variable ‘logging’ is set to false. A show icon block is used to display a ‘no’ icon on the LED display to indicate the micro:bit is not logging. The set columns and set timestamp blocks create labels for the data logging table your micro:bit will produce.

The on button A pressed block is used to set logging to ‘true’ and show a ‘yes’ icon on the LED display. The on button B pressed block is used to set logging to ‘false’ and show a ‘no’ icon on the LED display. And the on buttons A + B pressed block sets logging to ‘false’, displays a skull icon, and deletes any log.

Finally, an ‘every’ block is used to check every 1,000 milliseconds or second if the micro:bit is logging. If it is, an ‘if then else’ block is used with ‘is ML detected’ and ‘log data’ blocks to record a 0 if you are still, a 1 if you are walking and a 2 if you are running in your data logging table. If the micro:bit cannot detect what you are doing, it records a -1 in the table. Bigger numbers are used for more active actions, so the resulting data logging graph gives you a clear visual record of how active you have been.

평가

How accurate is the AI sports logger in tracking your movements? How could you improve its accuracy? Who would find this device particularly useful? How does it compare to the Step counter or the Movement data logger projects?

3단계: 확장하기

  • Add a fourth action such as ‘throwing’ for sports like netball or tennis.

Data from the AI sports data logger in an Excel spreadsheet containing a formula to count activity 1 (walking)

Excel spreadsheet with formula to count certain activity cells

  • Add up how much time you spent on each activity. You could do this saving your data as a CSV file, opening it in a spreadsheet and using a formula such as =COUNTIF(B2:B70,1) Where B2:B70 is the range of the activity cells, and 1 is the activity number meaning ‘walking’.