News Archive (1999-2012) | 2013-current at LinuxGizmos | Current Tech News Portal |    About   

Robotic arm runs Linux

Nov 24, 2008 — by Eric Brown — from the LinuxDevices Archive — 529 views

[Updated Nov. 25] — Zurich, Switzerland-based Neuronics has released an open-source embedded Linux version of its “Katana” robot.” The Katana Robotic Arm runs Linux with Xenomai hard real time extensions on a Freescale MPC5200-based control board, and is aimed at industry, production, and research… applications, says the company.

(Click for larger view of the Katana Robotic Arm)

The Katana Robotic Arm is typically used for handling, measurement, or testing applications in assembly, production, and laboratory automation, says Neuronics. The robot is billed as an “intelligent” industrial robotic arm with safety features that “allow it to work directly hand-in-hand with human operators without the need for any additional safeguards or fences,” says the company. The Katana is also touted for its ability to run as an an independent stand-alone unit, without requiring an external control host.

Oh no, Mr. Bill! The Katana in action

The new Linux version of the Katana allows low-level access to the robot's Linux control board, and comes with system, communication, and motion libraries available as open source packages. This open source access provides application opportunities “that could hitherto only be met by developing highly expensive custom engineered robotics systems,” says the company.

The Katana is based on a single-board computer (SBC) equipped with a PowerPC-based Freescale MPC5200 processor that provides 750 MIPS (millions of instructions per second) of performance, says Neuronics. The robot has six Texas Instruments (TI) TMS320 32bit motor controllers, one for each axis. Built around a CAN bus architecture, the robot also offers Ethernet and USB ports. The Katana is said to operate in three modes: control, standalone direct, and a standalone RPC/Web-services mode that supports technologies such as SOAP and Ajax for web-based control.

The Katana's control board

Specifications for the Katana Robotic Arm are said to include:

  • Processor — Freescale MPC5200
  • Embedded controllers — 6 x TI TMS320 32bit motor controllers
  • Memory — 64MB RAM
  • Flash — 32MB flash
  • CAN bus — 1 x control bus; 1 x sensor bus; external CAN connector
  • Networking — 1 x Ethernet hub
  • USB — 1 x host; 1 x device
  • Other I/O — integrated digital I/O extension board
  • Katana software/services:
    • Communication server
    • Standalone mode
    • CAN open (PDO) driver interface
    • Control-pad deamon
    • Fieldbus server
    • Ajax-based web Interface
    • Process image server
    • Eventhandler as web service
    • Configurable debugging modes
    • XML-RPC command and control interface
    • Linux shell interface via web service
    • SOAP server command and control interface
    • C++ libraries and Python 2.5 bindings
  • Operating system — Linux 2.4.25 (Linux kernel 2.6 optional) with Xenomai hard real-time extensions; driver patches for control board

Denx Linux and Xenomai

The embedded Linux version of Katana runs a 2.4.25 Linux kernel (upgradable to 2.6.22) that is said to be optimized for industrial high availability. The robot has been developed with the Denx Embedded Linux Development Kit (ELDK) software development kit (SDK), an open-source Linux distribution and development tool suite that is especially popular in Europe's industrial Linux community.

Katana software architecture

The Linux kernel is coupled with the Xenomai pre-emption and scheduling real-time add-on framework for Linux, which is supported by recent versions of ELDK. Xenomai provides “skins” for emulating API requests for different real-time operating systems (RTOSes). In the Katana implementation, Xenomai provides a development framework that cooperates with the Linux kernel to provide pervasive, hard real-time support to Nucleus-, kernel-, and user-space applications, says Neuronics.

Neuronics offers a Katana Native Interface (KNI) C++ library for control application development “at the lowest interface level,” says the company. The KNI interface can be exported as a Python 2.5 binding, enabling Python development of native and external programs. A control interface is also said to be available directly on the robot, with interfaces in C++ and Python.

For non-programmers, the company provides a GUI-based application programming interface (API) called Katana4D, which is targeted at industrial applications, and offers a built-in scripting language. Developers can move the robot arm into the desired position by hand, and Katana4D detects the position, generating the appropriate code, says the company. Katana4D is also said to provide AI algorithms for path optimization and adaptation, and can automatically convert applications to Python for deployment on the Katana in standalone mode.

This month, Neuronics announced a “Katana UniKit” robot axis development board. The UnkiKit is said to offer 1-3 axes (axis controllers and motors), a CAN adapter, and a plug-and-play live CD with a customized Ubuntu Linux distribution. The distribution is said to offer sources, documentation, cross compilers and toolsuites for learning, developing, and modifying robotics applications. Aimed at research, education, and OEM robotics development, the UniKit can be purchased separately from the Katana.

Founded in 2001, Neuronics is a spin-off venture from the Artificial Intelligence Laboratory at the Institute for Informatics of the University Zurich.


The pricing for the embedded Linux version of the Katana starts at 19,500 Euros, or about $24,900 US, says Neuronics. No pricing or availability information was provided for the new Ubuntu-based Katana UniKit development board. More information on the Katana, including links to detailed information on APIs, patches, hardware, and more, may be found here.

This article was originally published on and has been donated to the open source community by QuinStreet Inc. Please visit for up-to-date news and articles about Linux and open source.

Comments are closed.