Full Spectrum Laser has released it's second XMOS laser controller: RetinaEngrave 3D Ethernet for laser cutting and 3D engraving.
ARM processor running RTOS handles zlib decompression of motion commands in real time over TCP/IP into 32MB SDRAM and feeds data to XMOS over SPI for real time control. Separate Silabs processor is used for Captouch LCD panel.
Motion/laser calculations are all done on the XMOS device.
Full Spectrum Laser has produced several thousand XMOS based motion controllers for a mature product line.
You can see more of our products here at fslaser.com
New ARM + XMOS Laser Controller from FSL
-
- Junior Member
- Posts: 7
- Joined: Sat Apr 16, 2011 11:45 pm
New ARM + XMOS Laser Controller from FSL
You do not have the required permissions to view the files attached to this post.
-
- XCore Expert
- Posts: 850
- Joined: Thu Dec 10, 2009 9:20 pm
- Location: Bristol, UK
looks neat! :)
-
- Member++
- Posts: 22
- Joined: Mon Jun 07, 2010 12:50 pm
Looks great, and congratulations on another new product! Can you share more details on the motion calculations being done on XMOS?
-
- Junior Member
- Posts: 7
- Joined: Sat Apr 16, 2011 11:45 pm
Motion is precalculated on the host computer which generates a cubic spline for the entire trajectory. These coefficients are compressed and stored in SDRAM and then streamed to XMOS over SPI which evaluates {x(t),y(t),z(t)}=a*t^3+b*t^2+c*t+d for each cubic segment for ultra smooth motion.
XMOS products are great when requiring hard real time like motor control. The ARM runs an "RTOS" but the RTOS is no where close to hard real time (at least without significant effort). Traditional CPUs have timers with shadow registers for reload but XMOS has 32bit buffered port which we only need to reload once every 32 cycles so we are able to reload multiple axes in 1 thread.
XMOS products are great when requiring hard real time like motor control. The ARM runs an "RTOS" but the RTOS is no where close to hard real time (at least without significant effort). Traditional CPUs have timers with shadow registers for reload but XMOS has 32bit buffered port which we only need to reload once every 32 cycles so we are able to reload multiple axes in 1 thread.