0x00 电路原理图分析
1、电压采样
输入电压VM为外接DC12V供电,分压电阻为18k和1k,即AD采集到的电压值为x时,实际电压y=x*19。主控连接VBUS_S的IO为PA0配置为ADC0的CH0。(确定嘛?)
2、温度采样
输入电压为3.3V,分压电阻为10k热敏电阻和3.3k电阻。热敏电阻型号为NCP18XH103F03RB,查阅数据手册得知其B值为3380。其中B值计算公式如下:
$B = \frac{(T_2 \times T_1)}{(T_2 - T_1)} \times \ln\left(\frac{R_2}{R_1}\right)$
其中$T_1$和$T_2$是两个不同的温度,$R_1$是温度$T_1$下的电阻值,$R_2$是温度$T_2$下的电阻值。主控连接M0_TEMP的IO为PB0配置为ADC1的CH2。(确定嘛?)
3、晶振电路
无源8M晶振,外壳接地,两个引脚分别接OSCIN和OSCOUT。
4、主控电路
主控芯片使用GD32C103TBU6,具体详情可以参考相应数据手册。需要注意的是3.3V电源过100nf滤波电容后接入,该接地的接地。NRST接100nf到地,BOOT0接10k电阻到地,设置从片上FLASH启动。
5、电流采样
主要元件电流感应放大器使用的是TP181A1,根据数据手册得知,其GAIN为50。输出电压$V_{OUT} = \left(I_{LOAD}\timesR{SHUNT}\right)GAIN + V_{REF}$其内部电路原理图如下图所示。 可以看到FOC电路原理图中,REF是3.3V通过两个1k电阻分压取得,可知其值为1.65V。两个TP181A1的输出分别接在主控的PA1和PA2上,分别采集B、C两路的电流值(因为三相电机定子的线圈为星形连接,通过基尔霍夫电流定律可以算出A路的电流大小,所以只需要采集两路电流即可)。两个TP181A1的输入IN+和IN-则是通过10mΩ的电阻分压电机驱动电路的PGND输出得到。
6、5V-3.3V
利用线性稳压器5V转3.3V。输入输出端接滤波电容,EN可以直接接IN。
7、电机驱动
AT8313是三路半桥集成驱动芯片,很多问题不需要自己考虑,比如低电压小电流的控制信号和高电压大电流的驱动信号如何隔离,三相电机的驱动电路如何设计,器件参数如何匹配等。芯片的外部电路可以参考数据手册搭建。示例如下图所示。 可以看出,先前的PGND输出为BLDC的电流输出端,根据数据手册描述,AT8313包含三路半H桥驱动器,半H桥的下管MOSFET的S端为各自独立管脚(PGND1、PGND2、PGND3),这样就可接3个独立的检流电阻。如果使用检流电阻,请保证此3管脚(PGND1、PGND2、PGND3)的电压不超过±500mV。电流采样电路中,检流电阻为10mΩ,考虑电机的额定电流到不了50A,基本可以保证PGND电压不会超过±500mV。AT8313的其他管脚描述如下图所示。 根据管脚描述,除了必要外围电路,控制部分将三个EN引脚拉高,使能半H桥,然后将三个IN引脚接主控芯片,主控芯片通过输出高低电位可以控制半H桥的逻辑输出。V3P3是AT8313的一个3.3V电压输出引脚,直接和NSLEEP和NRESET连接,保证芯片正常工作。OUT1、OUT2、OUT3三个引脚接BLDC的三相线。IN1、IN2、IN3分别接主控芯片的PA8、PA9、PA10。VM输入通过两个100nf和一个100uf的电容并联滤波后送入。
8、24V-5V
主要器件使用JW5026电源芯片,为DC-DC芯片。支持5V1A输出,数据手册指导外围电路如下所示。根据外围电路参数搭建即可。
9、剩余原理图
剩余部分都是接口和灯等简单电路,主要作用是引出引脚接口,供连接调试。没有什么难点。