Example showcasing 4 different Fan Blade faults (Blade Damage, Blade Imbalance, Blade Obstruction, Normal)
Involves using TI toolchains to collect the data and train the model and preview it live.
- CC1312
- CC1314
- CC1352
- CC1354
- CC2755
- CC35X1
Check the config_<device>.yaml files for device-specific configurations.
This application example showcases the following story:
- Loading your F28P55x device with a Live Data Capture Code
- Collecting a dataset on Model Composer
- Training an AI Model and Compiling it:
- on Edge AI Studio - Model Composer
- on Tiny ML Modelmaker
- Deploying the model on F28P55x device and visualising it in Live Preview Mode
- Other Tiny ML Modelmaker Features
- Release History
- This example showcases connecting the F28P55x launchpad with ADXL355-PMDZ Accelerometer
| Accelerometer Sensor | F28P55 Launchpad |
|---|---|
| Pin 1 (Chip Select) | IO.27(J6:59) |
| Pin 2 (MOSI) | IO.61(J6:54) |
| Pin 3 (MISO) | IO.60(J6:55) |
| Pin 4 (SCLK) | IO.24(J5:47) |
| Pin 10 (Data Ready) | IO.16(J6:51) |
| Pin 11 (D GND) | Any Ground Pin |
| Pin 12 (D VDD) | Any 3p3 V Pin |
-
Extract and load eAI_data_acq_dap_f28p55x.zip from CCS Studio onto the F28P55x Launchpad.
- This enables the device to communicate with the Edge AI Studio - Model Composer GUI
- Go to the TI's Edge AI Studio Model Composer and start your new project (Desktop/Web version are both okay)
- On the top:
Options-->Serial Port Settings--> Click on the appropriate COM port where the launchpad is connected- Once selected, a small dialog at the bottom should say "Hardware Connected"
- In the
Capturesection
-
In this manner, you can collect data for all your cases.
-
This example has 4 classes: Normal, Blade Damage, Blade Imbalance, Blade Obstruction
-
The entire demo setup looks somewhat like this:
-
- The dataset collected with this setup at TI can be found here
- You can use the Model Composer GUI or Tiny ML Modelmaker to train your model and compile it.
- In Model Composer, you can play with different settings that can get your model to accuracy suited to you
- For Tiny ML Modelmaker, you can use this config file and run it as follows from the
tinyml-modelzoodirectoryrun_tinyml_modelzoo.sh fan_blade_fault_classification/config.yaml
- This configuration file should give you a 100% accuracy
-
This should give you a compiled model in the
tinyml-modelmaker/data/projects/fan_blade_fault_dsi/run/<time_stamp>/<model_name>/compilation/artifacts -
And few feature extraction related artifacts are a part of:
tinyml-modelmaker/data/projects/fan_blade_fault_dsi/run/<time_stamp>/<model_name>/training/quantization/golden_vectors -
This model is ready to be deployed into the CCS project with the application code of your choice.
-
You can refer to this for how to plug and play these artifacts.
-
To run in Live Preview Mode, as shown in the TIREX above, a sample project with just 1 sensor is attached here: eAI_mfd_eval_f28p55x.zip
-
You should be able to see in the Live Preview Mode in this manner:
- config.yaml - F28P55
- config_CC1312.yaml - CC1312
- config_CC1314.yaml - CC1314
- config_CC1352.yaml - CC1352
- config_CC1354.yaml - CC1354
- config_CC2755.yaml - CC2755
- config_CC35X1.yaml - CC35X1
-
PCA graphs for feature extraction on Train and Val data: Clear cluster separation shows that the dataset classes are classifiable pretty well with the feature extraction method chosen in the config
-
Post Training AUC-ROC Curve indicates a perfect score (1.00) --> indicates model is doing excellently well at classification!
-
Histogram of class scores between each class combination shows good separability --> meaning that the AI model trained is able to distinguish between classes very clearly
[26-Mar-2025]: Compatible with v1.0 of Tiny ML Modelmaker







