Ubuntu 20.04 LTS Support
All Finroc versions from 14.08 onwards are compatible with Ubuntu 20.04 LTS (gcc 9.3).
New Features in 2020
- Port Composite Interfaces contribute to uniform abstraction and can significantly reduce redundancy in application structure. Check out the example in the new Finroc plugin.
- Thread containers gained an additional parameter to specify the mode of execution. This offers additional convenient options for thread synchronization and execution on demand. Expect more modes to come.
- Type Conversion has been improved and is now more powerful than ever.
The features have been back-ported to Finroc 17.03. Notably, the 17.03 release only receives updates that do not break existing applications.
Independent of the Finroc version used for C++ code, we recommend the Java tools from the development branch.
Current stable release: 14.08
A second stable version of Finroc® was released. Only bugfixes will be applied to this version while API and data formats remain unchanged.
This release includes the core as well as central plugins and tools. Further components are available on the development branch and will be added in future releases.
Finroc 14.08 can be compiled on e.g. Ubuntu 14.04 LTS and newer.
Old stable releases
13.10: (supported ended)
Support for old stable releases will be provided for one year after release of its successor.
Finroc - A framework for intelligent robot control
Finroc® is a modular C++/Java framework for robot control systems. It has been developed at the Robotics Research Lab of TU Kaiserslautern, Germany since 2008. In 2011 the four main authors founded the Finroc GbR - a company constituted under civil law - to make use of their copyright and release the software using a dual-licensing model. Additionally to a free GPL version, a commercial license is provided to be applied in proprietary products.
Design philosophy
Frameworks have fundamental impact on software quality of robot control systems - as well as development effort. Taking many existing approaches into account, the design of Finroc® evolved around the question: What can be done in a framework in order to support or even guarantee relevant quality attributes of robot control systems? It is hardly possible to implement all the identified features at once. Thus, the initial design focused on areas that are hard to add or change later. The main developers used MCA2 before developing Finroc® and learned to appreciate many of its qualities. Thus, application style in Finroc® is similar.
Prominent features
- Efficient (zero-copy), lock-free, real-time implementation
- Scales up to thousands of components
- Can be run without an operating system
- Intra-process runtime construction
- Slim and highly modular framework core (see below - or our IEEE IRC 2017 paper for the master plan)
- Separate, native C++11 and Java versions
Documentation
- Getting started gives you a quick introduction on how to get your hands on Finroc®.
- Have a look at our tutorials covering topics for beginners as well as advanced Finroc® users.
- Furthermore, you can browse the application interface of Finroc® or dive into its source code.
- For a more comprehensive understanding see papers and publications.
Partners
Repositories with hundreds of robotic algorithms and components are developed and maintained independently at both the RRLab and Robot Makers (they are not available on finroc.org).
Robot Makers provide professional Finroc services (support; consulting; custom algorithm, component, and application development). The RRLab develops algorithms, components, and prototypes in the scope of research projects.
Attachments (1)
-
modular_core.png
(251.6 KB) -
added by max 6 years ago.
Finroc's Modular Core
Download all attachments as: .zip