You are here: Home / Science / RTLWS Submitted Papers / 
2017-11-23 - 21:25
Details of the Real Time Linux Foundation Working Group Project

OSADL Project: Real Time Linux Workshops

Real Time Linux Foundation Workshops since 1999

Real Time Linux Workshops

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

13th Real-Time Linux Workshop from October 20 to 22 at the Faculty of Electrical Engineering, Czech Technical University in Prague

Announcement - Hotels - Directions - Agenda - Paper Abstracts - Presentations - Registration - Abstract Submission - Sponsoring - Gallery

Process Data Connection Channels in uLan Network for Home Automation and Other Distributed Applications

Pavel Píša, Czech Technical University in Prague
Petr Smolík, Czech Technical University in Prague
Fanda Vacek, Czech Technical University in Prague
Martin Boháček, Czech Technical University in Prague
Jan Štefan, Czech Technical University in Prague
Pavel Němeček, Czech Technical University in Prague

The uLan protocol is one of the more elaborated communication/frame protocols designed for small RS-485 control networks of laboratory instruments, home appliances and distributed control in agricultural area.  It provides deterministic media access arbitration and mechanism aimed to distribute communication bandwidth between more participating multi-master devices. In the contrast of many other proprietary protocols, the design and implementation suitable for full featured computers with operating system (Linux, Windows etc.)  and small single chip MCU control nodes has been fully open from the first Linux driver developed at PiKRON company in 1995.

The selection of the protocol for home automation project at Department of control engineering of FEE CTU has brought a need to interconnect events and states between distributed appliance nodes (switches, lights, HVAC components etc.). The flexible and yet simple mapping of process data (PDO) to communication channels or time slots is a common problem to solve in area of control applications. The invented approach utilizes already long time defined and used uLan object communication layer to remotely access structures for mapping of objects (device properties and process variables) to communication channels and to control delivery of these process data to variables in target nodes. The designed approach is similar to CANopen dictionary and PDO idea but it is more flexible and suitable for longer data types, generic arrays and underlaying link layer features. Thanks to underlying uLan object communication layer on the network introspection capabilities are better than for many other standards yet the metadata overhead is kept very small for data exchange after initial device model retrieval phase.

The PDO mapping system has been utilized in the developed components for home automation. The initial versions of open-sourced management software utilizing Qt library is developed as well. uLan driver and fully portable interface libraries allows to test even GNU/Linux builds of components and their interaction. The Qt based components builder and dictionary sources generator is in development to help newcomers to test capabilities and speed new nodes design.

The designed infrastructure and protocol has been used in many applications for years. The PDO mapping extension and openness of the project makes it excellent candidate for smaller hobbyists home automation projects but protocol has already proved its quality in serious production environment asw well. The minimal requirements for small nodes (only UART with software parity control) allows to build them from cheap Cortex-M3 or even smaller devices. The design of higher communication layers  can be utilized even in combination with different link technologies or can serve as an inspiration for other similar design at least. uLan project is live thanks to more companies and university members participation and actual version of the code used by participants applications is available at GIT repository on ulan.sf.net project pages.