Software Architecture for Cognitive Robotics
Aquila 2.0, an open-source cross-platform software architecture for cognitive robotics that makes use of independent heterogeneous CPU-GPU modules with loosely coupled dynamically generated graphical user interfaces.
A C++ implementation of a nonlinear 3D IMU fusion algorithm.
Attitude Estimator is a generic platform-independent C++ library that implements an IMU sensor fusion algorithm. Up to 3-axis gyroscope, accelerometer and magnetometer data can be processed into a full 3D quaternion orientation estimate, with the use of a nonlinear Passive Complementary Filter. The library is targeted at robotic applications, but is by no means limited to this. Features of the estimator include gyro bias estimation, transient quick learning, multiple estimation algorithms, tuneable estimator parameters, and near-global stability backed by theoretical analysis. Great emphasis has been placed on having a very efficient, yet totally numerically and algorithmically robust implementation of the filter. The code size has also been kept to a minimum, and has been extremely well-commented. The programmatic interface has also been made as easy as possible. Please refer to the extensive documentation of the library for more information on its capabilities and usage caveats.
NXShield API's and Documentation Online API reference available at: http://www.openelectrons.com/NXShield/html/
Library for working with 3D rotations in C++
The Rotations Conversion Library (RCL) is a collection of C++ functions that address common computations and numerical handling of rotations in 3D Euclidean space, including support for rotation matrices (`Rotmat`), Quaternions (`Quat`), intrinsic ZYX Euler angles (`Euler`), fused angles (`Fused`) and tilt angles (`Tilt`). In addition to the core competency of being able to convert between each of the representations, operations such as inversion, ZYX yaw extraction, fused yaw extraction, renormalisation, equality detection, vector rotation and much more have been implemented. Unit tests for each function are provided to ensure that the library performs exactly as it should. The implementation of the Rotations Conversion Library is based on the very related Matlab/Octave Rotations Library (MORL), which is a highly tested reference implementation for the required algorithms (see https://sourceforge.net/projects/rotationslib/).
Qiew is a minimalistic and portable VRML/Inventor Viewer targeting Linux, Windows and Mac OS X computers.
Qspline does quaternion interpolation such that the quaternion and angular rate and acceleration vectors are continuous functions of time, while maintaining quaternion normalization.
Project to build a six legged robot.
DVC2D is a physical simulation library capable of simulating and animating planar systems of rigid bodies experiencing intermittent and steady unilateral contacts with friction. One can also include friction between the bodies and the plane of motio
Jazzyk - a special-purpose programming language interpreter for development of modular intelligent agents based on a plug-in architecture.
The Mars Rover Simulator project is based on the evolutionary robotics paradigm where an artificial agent acquires its skills through the process of artificial evolution. This simulator can be useful to evolve neural network controllers for the rover
This project is about enhancing user experience in wireless 802.15.4 chips through open source programmer, bootloader, flashing over the air, and viral flashing over WSN. Current development is done over CC2430 and STM32.
UfakPython is a small subset of Python programming language, for small embedded devices, like PICs. UfakPython sources are translated to C by UfakPython Compiler. Small Device C Compiler can then compile the C outputs to the target device's codes.
YARP, Yet Another Robot Platform. Always dreamt of controlling a humanoid robot? ...well, we do that. A C++ library for IPC, vision and control. This project was migrated to GitHub: https://github.com/robotology/yarp
iSpike is a spiking neural interface between the iCub humanoid robot and a spiking neural simulator such as NeMo.The system aims to provide an interface for the iCub that provides as biologically realistic spike trains from its senses as possible.
openSDK is a free and open-source implementation of Sony's OPEN-R Development Kit. OPEN-R is a trademark or a registered trademark of Sony Corporation.
Bot simulation main purpose is to help real bot developer to test their bot behaviors thanks to an openGL simulation with collision detection and a scriptable behavior in LUA.
Driver support for 3D Controller Hardware. We hope to support SDL Input, DirectInput, and other major controller API's including game consoles and embedded systems.
A 3d model search engine which provides an intuitive query interface for a user to search a query model in a large database of indexed 3d objects both accurately and efficiently using a novel similarity transformation invariant shape matching algorithm.
This project is about developing a dog agility trial for the AIBO dog. AIBOs don't go over jumps very well like a biological dog can, but there are lots of obstacles in a typical dog agility trial that an AIBO robotic dog might be ok at.
A C++ framework that uses inhibition trees for behaviour control.
The Behaviour Control Framework is a generic platform-independent C++ framework that implements a control architecture consisting of a hierarchical network of behaviour layers. These layers each contain behaviours that can inhibit one another and interact to achieve control. A full discussion of the structure and ideas behind this framework can be found in the Doxygen documentation that comes with the release. This documentation is well worth a read before you decide if the library is for you! The structure and implementation of this library focuses on the application of the inhibition-based behaviour control architecture to real-time control loops, but can reasonably be adapted for a wide variety of other artificial intelligence applications. Emphasis has been placed on having very low overhead so as not to hurt overall system performance, while still maintaining ease of use. I welcome all feedback, suggestions and bug reports! Email: pallgeuer[at]ais.uni-bonn.de
An Open Source IEC 61131-3 Integrated Development Environment, providing PLCOpen SoftPLC programming, CanOpen IO's, and SVG based HMI.
The BioloidNativeInterface is a C++ library to control bioloid/dynamixel modules including AX12, AXS1. It provides a parser for the bioloid protocoll and methods to read/write packets.
C Compiler for the Parallax Propeller Chip
CoPP is an object-oriented framework for developing algorithms for robot path planning. One of of the design goals is to make it easy to make comparisons between various path planning algorithms.
DigEnv is the implementation of various approaches to digital interactive environments, systems and projects, like multi-touch tables, interactive projections and non-conventional input methods.