You are here: Home / RTLWS 1999-2017 / RTLWS Submitted Papers / 
2024-04-20 - 00:11

Real Time Linux Workshops

1999 - 2000 - 2001 - 2002 - 2003 - 2004 - 2005 - 2006 - 2007 - 2008 - 2009 - 2010 - 2011 - 2012 - 2013 - 2014 - 2015

15th Real Time Linux Workshop, October 28 to 31, 2013 at the Dipartimento Tecnologie Innovative, Scuola Universitaria Professionale della Svizzera Italiana in Lugano-Manno, Switzerland

Announcement - Call for participation (ASCII)Hotels - Directions - AgendaPaper Abstracts - Presentations - Registration - Abstract Submission - Sponsors - Gallery

The LinuxCNC Machine Control Portable Realtime API

Michael Haberler, The LinuxCNC Project
Alexander Rössler, The Vienna Reprap Group

LinuxCNC, a package to control machine tools such as milling machines and lathes, until recently was limited to RTAI and hence x86 platforms. OS support has been abstracted to provide package-level binary compatibility over RTAI, Xenomai and RT-PREEMPT kernels, supporting RTAI and Xenomai kernel threads, and Xenomai, RT-PREEMPT, and Posix userland threads. LinuxCNC ARM7 builds are active use in the BeagleBone, Raspberry and Reprap communities.

We present an overview the "electronic circuit"-style HAL realtime component architecture, and the requirements for, and implementation experience with the portable RTAPI layer which HAL rests on: component handling, threading, unified shared memory, exception and log handling.

We discuss the impact of measured latency figures at the RTAPI layer in machine control terms: commanded path noise causing position hunting and PID loop excitation, and tool stress caused by angular noise in electronically geared motion, as well as potential software countermeasures.

A demonstration of LinuxCNC on a BeagleBone, running a MendelMax 3D printer with high-speed steppers driven by the AM3359 programmable realtime unit (PRU) will be given in the break.