-
To create your simple AI exercise timer,
you’ll train a machine learning (or ML) model.
-
This model will recognise when you’re
exercising and when you’re not exercising.
-
You’ll then combine the model with some
ready-made code for an exercise timer...
-
before downloading it to your
micro:bit and using it in real life.
-
Click ‘Open in micro:bit CreateAI’ to launch the project.
-
The project comes with 3 samples
of movement data for exercising
-
and 3 samples of movement
data for not exercising.
-
You’ll need to add more samples by
recording your own movement data.
-
micro:bit CreateAI collects movement
data samples using the accelerometer
-
(or movement sensor) on the micro:bit.
You will wear a micro:bit and battery
-
pack on your wrist or ankle, so that you can move
freely to record your own movement data samples.
-
To get started, you need to set
up the data collection micro:bit.
-
Connect the wrist-worn micro:bit to CreateAI.
If your computer has Bluetooth enabled then you
-
will just need 1 micro:bit and a USB data lead.
If you don’t have a Bluetooth connection,
-
you’ll be prompted to use 2 micro:bits.
The second micro:bit will remain connected
-
to the USB cable and act as a radio
link to the data collection micro:bit.
-
Follow the instructions on screen to connect.
-
Once your data collection micro:bit is connected
-
you’ll see the lines on the live graph
change as you move your micro:bit about.
-
You’re now ready to add your
own movement data samples.
-
As this project already includes some
data samples, we suggest you just add
-
1 more sample for each action for now, and spend
more time collecting and analysing data later.
-
Decide what ‘exercising’
action you are going to do.
-
This could be running, walking briskly,
jumping, boxing, dancing, or any other exercise.
-
Make sure the micro:bit is attached to
the wrist or ankle that will be moving.
-
To add data to a specific action,
select it by clicking on it.
-
You will get a 3 second countdown
before a 1 second recording starts.
-
Click record and start moving right away
to ensure you get a clean data sample.
-
A clean sample is one where you
are moving for the entire sample,
-
you don’t start late or finish moving early.
Next try adding an extra data sample
-
to the ‘not exercising’ data set.
Select it by clicking on the action,
-
then stay still, or only move very
slightly as you record the sample.
-
You’ll notice that the x,y,z
lines change places depending
-
on the angle at which you hold your micro:bit.
-
The project doesn’t have a lot of data right now,
-
but we have enough to train our own
machine learning model using CreateAI.
-
So click ‘Train’ to use the
current data to build an ML model.
-
The tool now builds a mathematical
model that should recognise different
-
actions when you move your micro:bit.
As soon as the model has been trained,
-
you’ll see the Testing model page.
Your data collection micro:bit can now
-
be used to test how well the model is working.
It should still be connected to the tool,
-
and you’ll see that as you move it, CreateAI
is estimating what action you are doing.
-
Try out different levels of exercising or
not exercising to see both the estimated
-
action and the certainty bar graph change.
The % on the certainty bar graph shows how
-
confident the model is that
you are doing each action.
-
You may notice your model is not estimating
some actions accurately, or maybe it is
-
working well for one action but not the other,
so after exploring how it is currently working,
-
it’s a good idea to click on ‘Edit
data samples’ and improve your model.
-
Machine learning models usually work best with
more data, so record some extra samples for each
-
of the actions, or focus on collecting more data
for the action that was problematic in testing.
-
You can record 1 sample at a time or
you can record 10 samples in sequence.
-
Clean data samples also
help an ML model work better
-
so interrogate your data set and identify any
data samples that could confuse the model.
-
You can delete these by pressing x.
Once you’ve added more data and checked
-
your data set, click Train model
again to use your amended data set.
-
Then test the model again on
the ‘Testing model’ page.
-
Once you’re happy with how
the ML model is behaving,
-
you can use it with the ready-made project code.
-
Click on 'Edit in MakeCode' to see the code blocks
in a special version of Microsoft MakeCode.
-
You can always return to CreateAI using
the arrow in the top left of the screen.
-
These code blocks use the model you
have created within an exercise timer.
-
The code uses two variables to keep track
of how long you've been exercising and how
-
long you've not been exercising.
When the program first runs it sets
-
these timer variables to 0.
The 'on ML start' blocks are
-
triggered when the ML model decides you have
started either exercising or not exercising.
-
They show different icons on the
micro:bit's LED display depending
-
on the action it has estimated you are doing.
The 'on ML stop' blocks are triggered when the
-
ML model decides you have finished an action,
in this case exercising or not exercising.
-
Code inside each block clears the screen and
adds the duration of the action that has just
-
finished to the variable storing
the total times for each action.
-
The ML model works with the code to allow you
to view the total time spent on each action.
-
Press button A to see the total time you have
been exercising and press button B to see the
-
total time you have been inactive.
The timer counts in milliseconds,
-
thousandths of a second, so the number shown
is divided by 1000 to show a time in seconds.
-
To make your simple AI exercise
timer run on your micro:bit, you
-
just need to download this code to a micro:bit.
If you don’t have another micro:bit available,
-
simply replace the code currently on the data
collection micro:bit with the project code.
-
Now test the project out in real life.
Do the correct icons display
-
when you are exercising or not?
You can test if the timer code is working
-
well with the model in 3 easy steps:
Press the reset button.
-
Exercise for 30 seconds.
Then press button A.
-
You should see the number 30
scroll across your display.
-
You’re now ready to connect to CreateAI,
collect your own data, use it to train,
-
test & improve a machine learning model.
And you can then combine this model with
-
the ready-made code and try
it out on your own micro:bit.