注释
合作者
您可能已经知道这一点,但 Raspberry Pi 4 有一个驱动 GPIO 的 FPGA。这可能会成为一个不错的部署平台。 |
作者
Mitch,我不知道 Raspberry pi 4 上已经存在 FPGA。我知道存在 Zynqberry,它类似于板上有 FPGA 的 Raspberry。 |
合作者
用于 LinuxCNC 的更重要的 MESA 卡确实支持 FPGA。 |
这是一个非常好的项目。虽然看不懂,但是还是很喜欢 |
作者
感谢@chenleigang,我实际上是用PCB电机替换我的电机。这将使这项技术更便宜、更容易获得。我正在努力用 ESP32 替换树莓派。所以这也将使它更容易与这个 esp32 项目集成。 |
大家好,
我正在研究用 FPGA 控制电机。你可以在这里看到我的工作设置。
该视频不是最好的,但它显示了我的位置。可以在此处找到 FPGA 核心的代码FPGAG。
我试图使代码尽可能可读并将其分成逻辑单元。您还可以使用test virtual 虚拟测试内核。
代码是用 python 编写的,并使用 nmigen 转换为 verilog/vhdl。Yosys/Nextpnr 将代码转换为 ICE FPGA 芯片。FPGA 提供了很多优势。电机以 1 MHz 采样,最大脉冲频率为 500 KHz。
但是,这可以更改。我现在可以达到的最大值可能是 25 MHz。
我主要对 FPGA 感兴趣,因为我正在构建激光扫描仪。这让我想到了你的项目……你应该开始考虑使用 FPGA 并将其放在路线图的某个地方。
与大多数围绕微控制器、C++ 和汇编的嵌入式项目相比,这是一个范式转变。
我的板子在网上可以找到,我也找了人,有感;谁开发了带有更新的 FPGA 芯片和微控制器的电路板,请在此处查看照片和他的回购协议。
该软件由以下元素组成;
* SPI 解析器(基本上是 SPI 命令接口的扩展,具有我
项目的细节)
实际硬件
* 多项式积分器:为步进电机创建脉冲序列;基本上你发送
多项式的系数和一个段中的刻度数。
我没有实现贝塞尔曲线,因为我使用的冰芯片上没有硬件乘法器。当您发送真实位置时,贝塞尔曲线可能具有优势,因此更容易纠正错误。多项式的优点是与速度和加速度有更直接的联系。
我目前的重点是让激光扫描仪与这个框架一起工作。对于这个特定的应用程序,不需要 GCode 解析器。
我希望至少您能从我的代码中找到一些灵感或更好的下一步步骤方向。
最好,
里克