The trouble with the Mesa FPGA design is that it depends on a computer with good real-time performance. It can generate steps but I don't thing you can run a position or velocity PID control loop on the FPGA.
You asked about "my controler". No this is not my idea, this is how most current designs work today. You "push" the real-time control down stram as close to the physical motor as possible. In the old days computers where expensive and you wanted to minimize their number but tocay a 32-bit computer with floating point math, RAM and quita a lot of peripheral hardware cost as littel as $1. I buy these $3 PCBs for controlling up to two servo motors with quadarue feedback ebay.com/itm/1pcs-STM32F103C8T6-ARM-STM32-Minimum-System <https://www.ebay.com/itm/1pcs-STM32F103C8T6-ARM-STM32-Minimum-System-Development-Board-Module-For-Arduino/183440464510?epid=10003269727&hash=item2ab5e75a7e:g:klEAAOSwi1pboKF~> The above part sells for under $2 and there is a CAD drawing and a schematic if you scroll down. This will run a couple motors and encoders and talk over USB all at the same time. For $20 you can get something 100X more powerful. Or in a larger project use several of the above. Last order I bought ten of these. So how complex is the controller? Very complex. It is an entire 32-bit computer with FLASH memory and USB running an RTOS. It is not at all like a 1980's vintage microprocessor. These old chips needed special programming hardware and were not easy to use. Today we program FLASH via the built-in USB interface. Yes the thing is complex but today such a machine costs $1.78 with free shipping and is very easy to use. You can buy them by the dozen. There are four or five development platforms. The Arduino platform works for simple stuff. You can set up Eclipse and GCC, "mbed" is easy to use and STM has a very good and professional level system too that is free. As a reference, I have a few quadcopter racing drones. These use four three-phas brushless motors that must be controled VERY accuratly using an 8000 Hz PID loop. The main controler PCB is 32mm square and ha a high-end STM32 microcontroller. There are four high speed serial interfaces to fur motor drivers and each drive has another STM32 microcontroller to do motor commutation and feeds back power used to the man computer. The main computer runs an RTOS and talks to the two digital radio, IMU and GPS. Fits in a 32mm space and costs maybe $30. Again VERY complex but they are easy to use. On Thu, Jan 23, 2020 at 6:54 AM Les Newell <les.new...@fastmail.co.uk> wrote: > PCs are cheap, easily available and easy to code on. They provide huge > amounts of processing power for little money and are very well suited to > GUI applications. However they are not designed for hard real time work. > LinuxCNC does a good job but even then it tends to be a bit touchy if > not paired with some form of control hardware to take over the really > tight timing. Mesa's FPGA cards are a good example. I do a fair amount > of repair an maintenance on a variety of CNC machines. The majority of > them go the same route and use a PC for the front end and some sort of > custom hardware or PLC for motion control. > > How complicated does your controller have to be? Mesa's FPGA boards for > example are pretty dumb and need feeding every 1ms, which LinuxCNC > handles quite easily on most PC hardware. How much do you gain by moving > more of the motion control to external hardware? > > Les > > > > > _______________________________________________ > Emc-users mailing list > Emc-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/emc-users > -- Chris Albertson Redondo Beach, California _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users