一片FPGA能实现十个直流电机的位置和速度控制吗?
最近要控制十个直流电机的位置和速度,想把PCB板做的很小,集成度高,于是想到了FPGA,一片FPGA能实现十个直流电机的位置和速度控制吗? 可以,小意思。 先说目前的控制算法需要多少资源呗,比如什么内核处理器,需要多少Flash,多少RAM,多高的频率,什么外设,etc。如果每路的运算能力需求在100MHz的Cortex M3左右;RAM+Flash需需求在几十到几百KiB;那目前的FPGA可以提供单芯片的解决方案。
如果所需的计算能力继续提高,纯粹的FPGA就比较难提供软核了,只能使用类似Zynq这样的FPGA+AP结构。
用快点的单片机也不困难吧! dr2001 发表于 2015-12-1 08:53
先说目前的控制算法需要多少资源呗,比如什么内核处理器,需要多少Flash,多少RAM,多高的频率,什么外设, ...
准备不嵌入软核,直接用Verilog语言实现,位置和速度控制精度不高,只想加一个简单的PID算法,实现位置和速度的双闭环控制 dyjhy 发表于 2015-12-1 08:54
用快点的单片机也不困难吧!
您有何好的方法,用一个单片机如何实现十路电机的位置和速度双闭环。我看了STM32能读正交编码信号的定时器才5个,那也是说做多能控制五个呀,而且还是在没有复杂算法的情况下? ahong2hao 发表于 2015-12-1 08:48
可以,小意思。
我想还加一个位置和速度双闭环控制的PID算法,不知可不可以? PID计算单元一个就够了,轮询10个控制输出和反馈输入 3DA502 发表于 2015-12-1 10:24
PID计算单元一个就够了,轮询10个控制输出和反馈输入
FPGA如何实现浮点数运算? 心染红尘 发表于 2015-12-1 10:44
FPGA如何实现浮点数运算?
PID不需要浮点啊,定点就好了 心染红尘 发表于 2015-12-1 09:51
您有何好的方法,用一个单片机如何实现十路电机的位置和速度双闭环。我看了STM32能读正交编码信号的定时 ...
一个定时器可以几路共用的呀,计算单元也是多路共用,轮询就行。只是控制响应速度上是否能达到要求就另当别论了。 心染红尘 发表于 2015-12-1 10:44
FPGA如何实现浮点数运算?
你这样问,你想要一个什么样的答案,你自己准备好接受什么样的答案 3DA502 发表于 2015-12-1 11:38
你这样问,你想要一个什么样的答案,你自己准备好接受什么样的答案
比如PID参数整定,如果想把Kp、Ki、Kd设成小数,在不嵌入核的情况下,那如何用FPGA实现呢? 心染红尘 发表于 2015-12-1 11:44
比如PID参数整定,如果想把Kp、Ki、Kd设成小数,在不嵌入核的情况下,那如何用FPGA实现呢? ...
浮点计算软核altera的qsys里就有 但是浮点计算比较耗时altera的软核8个clk才能计算完一个浮点,占用400多个le 楼主,我正在用fpga调pid呢,不过我的是伺服电机,麻烦点
pid,肯定要浮点,不然别玩了
另外你想节省资源,速度不快,就用一个pid单元轮询 楼主只是觉得STM32的编码器输入接口不够用而已,可以单独用FPGA实现这个部分
直流电机做双闭环,难度完全不关心H桥的电流?
正在做一个类似的项目,4个电机双闭环且要求同步,速度不快 Flyback 发表于 2015-12-1 18:13
楼主只是觉得STM32的编码器输入接口不够用而已,可以单独用FPGA实现这个部分
直流电机做双闭环,难度完全 ...
电机目前不承受负载,所以其电流应该是很小的 Flyback 发表于 2015-12-1 18:13
楼主只是觉得STM32的编码器输入接口不够用而已,可以单独用FPGA实现这个部分
直流电机做双闭环,难度完全 ...
你也用的FPGA吗 心染红尘 发表于 2015-12-2 08:16
你也用的FPGA吗
我驱动的是4个电机,只需要4路编码器接口,一个STM32妥妥的 正好也遇到这个,之前是两片stm32控制6个电机,也正想考虑fpga是否好用 大笨蛋1990 发表于 2015-12-4 10:28
正好也遇到这个,之前是两片stm32控制6个电机,也正想考虑fpga是否好用
STM32 可以控制六个吗 浮点可以先定点化 心染红尘 发表于 2015-12-8 09:26
STM32 可以控制六个吗
两片控制6个,一片控制3个
页:
[1]