FPGA (field programmable gate array) programmed for linuxcnc motion

More
28 Jun 2018 20:53 - 28 Jun 2018 20:54 #113029 by Grotius
Hi there,

I was wondering someone ever used a FPGA chip and programmed this chip for ultra fast motion and i/O for Linuxcnc?
I have seen some youtube video's about FPGA's, but it looks like an FPGA can be implemented in a Mesa product or
stand alone motion controller with much i/o etc. It looks like you can do anything with a FPGA.... even make your own CPU.



I am amazed of the FPGA possibilities. It looks like one FPGA chip beats a GPU in bitcoin hashes multiple times. So i am
thinking to order a FPGA test board and do some research about this.
Last edit: 28 Jun 2018 20:54 by Grotius.

Please Log in or Create an account to join the conversation.

More
28 Jun 2018 22:37 #113036 by cmorley
Mesa boards and Pico systems board used in linuxcnc, use FPGAs.

Mesa offers a hardware based open-source motion controller.

It's not linuxcnc's mandate to offer the most efficient controller within current technology. Linuxcnc's building-block system, a relatively low bar for modification, use of consumer grade processors, and not hard-locking capabilities to hardware are more important.

At one time someone in Machinekit was talking about a HAL-style system for programming FPGA boards - which after some thought does seem like a great idea to lower the bar for custom FPGA use. I'm not sure if they ever did it.

Chris M

Please Log in or Create an account to join the conversation.

More
29 Jun 2018 00:38 #113044 by andypugh

I am amazed of the FPGA possibilities. It looks like one FPGA chip beats a GPU in bitcoin hashes multiple times. So i am
thinking to order a FPGA test board and do some research about this.


Why not buy a Mesa card and hack with that? Then when you have finished experimenting you still have a Mesa card.
The following user(s) said Thank You: tivoi

Please Log in or Create an account to join the conversation.

More
29 Jun 2018 03:09 #113049 by InMyDarkestHour
The old DE0-soc-nano board can and is being used with MK(I'm helping some get one going) one incarnation has it working as a 5i25.....I believe the DE0 has been replaced by the DE10

Please Log in or Create an account to join the conversation.

More
29 Jun 2018 18:59 - 29 Jun 2018 19:38 #113107 by Grotius
If you look at the pricing of a test board, it is 50 dollar. Then you have 80 pin's for a free programmable fpga.


At one time someone in Machinekit was talking about a HAL-style system for programming FPGA boards

Hi Chris, I think if someone makes a good tutorial and example code / program for linuxcnc for a cheap test board it will be easy
for users to change the code to their needs. Brenda is talking about poorly linux documatation, but that succes depends on the person who is writing the document.
I did here a tutorial for a modbus example device in python : modbus analog and digital i-o device

Hi Andy,

Why not buy a Mesa card and hack with that? Then when you have finished experimenting you still have a Mesa card.

I would like to start from nothing. If i start with Mesa i push myself in a certain direction i maybe not want to. Mesa flashing on youtube i have seen by the german man.

If i search for the fpga chips and choose a very good one, also very good for crypto mining, then i start with this fpga chip.
In a bakery oven i can make the chip to the break out board, if the marked has this product not available.

Hi Ozzy,

I'm helping some get one going

That sounds good. The problem for Mesa is that if cheaper fpga board's are available with examples, Mesa can be improve their
product's with free programmable kits with more hal i/o command's etc.. Just like Chris talked about.
But if you think about possibilities, mesa can make a kit, that could be free programmable for anything.

Intel always looks nice on your board :woohoo: :



Same chip in other environment :

Last edit: 29 Jun 2018 19:38 by Grotius.

Please Log in or Create an account to join the conversation.

More
29 Jun 2018 22:22 #113113 by rodw
At some point you should ask yourself am I an electronics engineer or am I a CNC machine manufacturer?
I can see a hardware might be useful for dedicated control of an oven. But if you are using LinuxCNC for motion control, why not use proven systems that already exist? I'm sure there is scope to negotiate volume pricing. The Mesa 7i76e is perfect for controlling a plasma cutter and it should be possible to use its existing UART to communicate via MODBUS with a plasma machine. It even has some A/D inputs that could be used for temperature monitoring. This approach would substantially reduce your time to market.

If you review the Mesa lineup, I'm pretty sure they have dedicated motion control systems outside of LinuxCNC. But I doubt they are suited to realtime CNC control in a gcode environment.

Please Log in or Create an account to join the conversation.

More
29 Jun 2018 23:21 #113116 by Muzzer
I'm guessing you are new to FPGAs from what you write. Before you order an eval board, look at their SoC versions - rather than implementing a soft processor in code, they come with a an actual dual core ARM hard processor in silicon.

You're going to want to implement Linux on it - and wire it up to all the high speed FPGA stuff. That's a tall order unless you are a hardened FPGA specialist and more.

Let us know how you get on.

Please Log in or Create an account to join the conversation.

More
02 Jul 2018 04:50 #113206 by islander261
Hi
I wrote my own FPGA code in VHDL years ago to support time critical hardware in Xilynx CPLDs (yes I still own stock in the company). I will tell you right now unless you are a specialist or need > 1000 units per year just buy MESA hardware and ask PCW to help out with your custom application ( my MESA hardware, firmware and software works far better than than my own application layer software layer that I write does and I cut a lot of thin sheet sheet, read very touchy height control with full ( sorry to keep you guys up dated but my system is now working far better than my commercial system ever did,i internal LCNC Z axis control). Seriously I know you are into serial manufacturing but how many plasma systems do you actually ship in a year? The Proma approach is seriously out of date.

Sorry my real aim is to get everyone here to work together to produce a world class LCNC plasma solution.

John

Please Log in or Create an account to join the conversation.

More
04 Jul 2018 20:17 - 05 Jul 2018 00:08 #113442 by Grotius
Hi Islander, do you currently use the linux external offset branche from mr. Garret for your THC control?
I like to make a fpga board for hobby purposes at first in the evening hours. It would be great to use a pci express slot
and make here a fpga chip on running with a few step and dir signals. If it is to hard to do, i will stop that process, but i like
to know if i can do that.

Hi Muzzer, yes new to fpga. I want only a pci express connection from my linux pc to the chip and after that a free configure multi output setup. Pci express looks like a mesa setup. But it may also be a ethernet or etercat setup. For me depending on speed and difficulty to get things working.

In beginning i see the fpga chip now only as free configurable hardware layer to use with linux. At this moment i don't think i will put software on this chip like linux...
For example, if i have 50 outputs and 50 inputs. I can make unlimited configurations to use. If you have 8 inputs that behave like dip switches, it is easy for beginners to change the settings with bit control.
It seems nice for me to start with the existing parport driver, and build after that the chip on a modified sunix ltp1 card to test with.
But that is an idea i now have.

Hi Rodw, yes you are right. But it is also important to do things in life, you like to do. This is a kind of hobby for me.
I tested linuxcnc on a hd plasma, but i had some problem's. Soon i will be able to solve a few problems on a new test machine.
I will let you know.

One of my problems is the height measuring macro of linuxcnc (touch off). You see this measuring distance back in your gremlin screen. My measuring default was 100mm. This distance you see back in your gremlin screen. It is actually a problem to solve.
I can make picture if not clear.

Other problem is arc on signal. Okey machine is waiting on "arc on" signal at start for the g-code input seconds you want. "P4" is 4 seconds. So far so good.
But if arc is lost during cutting, machine is not stopping..... So i must make a solution for this, like interrupt code. But this must
be hard coded i think during compiling linuxcnc.... But maybe i can use the emergency input for this with a little python code...
But that can be building on a code you don't want to use for that purpose.

Now i think about mr. Morley he can say this :

But that can be building on a code you don't want to use for that purpose.

So master, so student.

From student to teacher :

Python can do sha265, but can it do also free nesting?

Last edit: 05 Jul 2018 00:08 by Grotius.
The following user(s) said Thank You: rodw

Please Log in or Create an account to join the conversation.

More
06 Jul 2018 02:30 #113530 by islander261
Grotius

While I am still running my plasma table on an external offsets build I am not using any of the features for torch height control. I am actually planning on moving back to the straight master branch next week when I get some time. I never could get good THC using the external offsets branch and the eoffset_pid component. Right now I am using hal components to build a THC solution that works far better than the commercial system I have ever did. That said it still isn't perfect but getting close. For thicker materials and lower speeds, or if you have high powered servos driving your table this will work really well. My table is power limited because of the 3.5Nm steppers used for the axis drives and the high cutting speed, 5.588m/min. Now the solution I have isn't perfect but I welcome any chance to discuss it with you and Rod. I will be able to devote some time to this next week.

I am a real big fan of using a galvanic isolated connection (Ethernet) between the control computer and all the plasma table stuff, that is why I am using 7I76E and THCad cards. To me any PCI connection will eventually have problems in a plasma system.

John

Please Log in or Create an account to join the conversation.

Time to create page: 0.084 seconds
Powered by Kunena Forum