JMT1808介绍——51单片机也能跑无刷电机FOC控制
正如标题所述,这是一块51内核的国产单片机,这期我们简单认识下这个片子,以及分享一波“搜刮”来的芯片和板子资料,包含FOC的源码哦。早前,下图所示的这个板子在淘宝上以58元一块的价格在售(这块是官方研发的2.0版本,可以自动识别有感、无感并切换相应的控制算法),它的上一代版本则相对简陋些(38元一块)。不过现在已经买不到了,好像他们本来没有做多少。
扯远了,说回芯片本身,即便它是一块主频高达73MHz的51单片机,但也是很难跑这个FOC控制的。江苏宏云,也就是做这个单片机的公司,他们还设计了一个DSP核进去,如此一来,跑这个FOC算法也不在话下。不过DSP部分的开发用的是汇编,51核则是C语言开发,官方提供了完整的源代码以及原理图等资料,这样一来想摸透还是可行的。

简单认识一下JTM1808。这是一块MCU+DSP架构的单片机,其中MCU是51内核,我们平常用的编译器都可以兼容,DSP为自定义指令集的JMT018,16位编码、16位运算以及40位乘累加,MCU和DSP共享32KB的Flash。芯片工作电压在2.45~5.5V,宽工作电压,内置73MHz的RC振荡器可以简化最小系统设计。芯片内置CORDIC(数学运算加速),支持正弦余弦计算,支持反正切、模的计算。外设接口部分,有SPI、I2C以及UART,含2个独立的PWM(每个PWM具有3路互补输出,支持正交解码以及霍尔传感器解码),含2个独立的ADC和PGA。






对于芯片,我们大概认识到这里,接下来就JMT1808用于无刷电机FOC控制进行一个简要说明。
首先,官方提供了他们设计的评估板的原理图,这样即便没有现成板子买我们也可以复刻了。(清晰的原理图等资料见文末的链接吧,这里就意思一下。)

FOC算法主要是用DSP核跑的,这部分的代码也都是汇编写的。当然,对于FOC算法,用汇编其实也不影响观感。

FOC算法的介绍。






官方提供的demo在DSP核部分也有适当的注释说明。下面是他们给的对于DSP核跑FOC算法性能评估。结论呢就是JMT1808在FOC应用中,性能不错,PWM可达40KHz。这样在平衡车(带传感器)应用中,就可以用1片JMT1808芯片控制两个电机 @16KHz。


最后,附上JMT1808芯片资料以及FOC评估板的原理图核源代码,需要自取。后面有时间,我准备入坑玩一玩,感觉挺有意思的。
链接:https://pan.baidu.com/s/1kCdBOnXxKS3bC-xoo_SzHA?pwd=231e
提取码:231e
官网:http://www.macrocloudtec.com/
演示视频:
1、JMT1808 无传感器FOC启动
http://v.youku.com/v_show/id_XMTU5Mzk1ODE3Mg==.html
2、JMT1808 无传感器FOC运行情况
http://v.youku.com/v_show/id_XMTU5Mzk2MTA5Ng==.html