本次使用的电机套件是,ULN2003 + 28BYJ-48 步进电机驱动套装,一款四相八步步进电机。使用起来相对简单,只要对IN1~IN4进行电平控制就可以驱动,参考大佬们的心得,使用如下驱动顺序:
static const uint8_t halfstep_seq[8][4] = {
{0, 1, 1, 1}, /* step 0: A */
{0, 0, 1, 1}, /* step 1: A + B */
{1, 0, 1, 1}, /* step 2: B */
{1, 0, 0, 1}, /* step 3: B + C */
{1, 1, 0, 1}, /* step 4: C */
{1, 1, 0, 0}, /* step 5: C + D */
{1, 1, 1, 0}, /* step 6: D */
{0, 1, 1, 0} /* step 7: D + A */
};| IN1 | CN9 pin 5 / D4 | PC1 |
| IN2 | CN9 pin 6 / D5 | PB4 |
| IN3 | CN9 pin 7 / D6 | PB10 |
| IN4 | CN9 pin 8 / D7 | PA8 |
| GND | CN6 pin 6/7 | GND |
| VCC | 外部 5 V | — |
| VM | 外部 5 V 或按板上开关选择 | — |
电机驱动板与 NUCLEO 必须共地。
由于H5和C5共用原理图,之前没注意,把引脚配置成了H5的,导致电机一直无法正常工作,排查了比较长的时间

最终成功采集到了需要的数据
把电机转动和停止的两组数据导出备用。
我看大家都是把3轴和电机粘在一起,其实不用这么麻烦,器件固定排线的皮筋就可以很牢固的固定3轴和电机

接下来就是进行训练了使用的是NanoEdge AI Studio。
新建项目,选择分类任务

选择对应的传感器类型和开发板。
导入采集到的数据,要分两次导入数据才会识别成两个类别。

Benchmark页面直接START
之后就可以开始训练了,由于我的电脑只有CPU上的GPU能力不行,基本都是使用的CPU资源,时间比较长


之后可以进行一下在线的测试
效果不错,状态很容易被识别出来
最后就是导出libneai.a。
最后把.a文件加入工程。
我要赚赏金
