An application designed for monitoring the status of the fan, which utilizes an accelerometer sensor attached to the fan to check if the fan is operating in a normal condition. Application is based on FRDM-MCXA156 with 96MHze Cortext-M33, 1M Flash and 128KB SRAM inside
The Appliccation is powered by IKM(Incremental KMeans for anomaly detection) model, which is trained and generated by eIQ Time Series Studio and support on-device learning as well. Model size is 7 KB and RAM requirement is 4 KB Model inference during is 6ms
How to train the model, please refer to AN14549 from nxp.com.
Below charts are the block of system and software workflow.
- Download SDK_2_16_0_FRDM-MCXA156
- Download and install MCUXpresso IDE V11.9.0 or later.
- MCUXpresso for Visual Studio Code: This example supports MCUXpresso for Visual Studio Code, for more information about how to use Visual Studio Code please refer here.
- Download and install eIQ Toolkit 1.13.1
- FRDM-MCXA156
- PAR-LCD-S035
- ACCEL-4-CLICK
- FAN
- Type-C USB cable
-
Connect board with LCD
-
Mounting ACCEL-4-CLICK to the FAN
-
Connect board with ACCEL-4-CLICK
-
Connect debug port
-
whole system
Import "dm-tss-powered-on-device-learning-fan-anomaly-based-on-mcxa156" from Application Code Hub
-
Import project in MCUXpresso IDE
-
Import project in VS code
-
Build project and download to the board
-
Notice: please erase the whole flash before download the firmware
-
Turn on the Fan, then normal state is detected,Switch the speed of Fan, the state of Fan remain normal
-
Knock on the Fan than anomaly is detected
-
Disrupting the operation of the Fan blades, anomaly is detected
-
Modify the mounting angle of ACCEL-4-CLICK by rotating it 90 degrees in the counterclockwise direction. An anomaly has been detected.
-
Enter Trainer window, click start button ensure that don’t move the Fan during the training procedure
-
Return to main after training is complete
-
If the model fails to accurately recognize other speeds, then conduct the training once more.
Insufficient on-device training epoches will lead to a significant decline in model accuracy. Solution: Increase the number of training epoches to achieve better accuracy.
If want to use the default model, click the button "Default" in the Trainer
Questions regarding the content/correctness of this example can be entered as Issues within this GitHub repository.
Warning: For more general technical questions regarding NXP Microcontrollers and the difference in expected functionality, enter your questions on the NXP Community Forum
Version | Description / Update | Date |
---|---|---|
1.0 | Initial release on Application Code Hub | November 27th 2024 |
LA_OPT_NXP_Software_License v58
if applicable - note components your application uses regarding to license terms - with authors / licenses / links to licenses, otherwise remove this section