Software apps and online services
I made a watch to your movement and cheer.
My name is Cheering watch!!
The acceleration of M5StickV is imaged.Acceleration is entered in 8x8 RGB with x = R, y = G, z = B.This is necessary because KPU only supports images.
The data output from the MPU needs to be converted because the minus is a complement.
accel = i2c.readfrom_mem(MPU6886_ADDRESS, MPU6886_ACCEL_XOUT_H, 6)
accel_x = (accel<<8|accel)
accel_y = (accel<<8|accel)
accel_z = (accel<<8|accel)
The dynamic motion of acceleration appears as moire.After proceeding 8 dots in the X direction, proceed in the Y dot direction.Interference fringes occur due to the number of vertical and horizontal pixels in the image, the sampling rate of the sensor, and the periodicity of hand movement.
Save image data to SD card.
Install TensorFlow / Keras for Ubuntu
This session use Ubuntu18.04 or Windows Subsystem for Linux.
Install Miniconda and create a Python environment. The Miniconda installer is downloaded from the Miniconda website.
Install Python, TensorFlow, Keras, etc. on Miniconda.
conda create -n ml python=3.6 tensorflow=1.14 keras pillow \
numpy pydot graphviz
conda activate ml
nncase converts learning data created with Keras or TensorFlow into KPU learning data kmodels.
nncase github: https://github.com/kendryte/nncase/
tar -Jxf ncc-linux-x86_64.tar.xz
A model of acceleration is created by deep learning. Acceleration images are classified into M5StickV SD cards for each activity. Learn with Keras from classification and images at CNN. The learning results are saved with Kmodel.
Run the PYTHON program on Ubuntu as follows command.
"my_model.kmodel"file named A is generated.
Write m5stickv firmware and kmodel with tools.
A friendly face is displayed to help you.This face rotates like a gimbal to the tilt. In addition, audio is output according to the motion.
m5stickv cannot be connected to the Internet. So connect it to M5StickC and connect to the Internet. Send motion data to an ambient cloud service in Japan.
The m5stickc software creates programming with arduino.Receive from URT and send to AMBIENT.It also gets the current time from the network and displays the time.