ay_tools
- ay_tools is a collection of libraries for C++, Python, ROS, ... programming including robot control, optimization, machine learning, simulation, computer vision, ...
Overview †
ay_tools consists of following ROS and non-ROS packages. Much of source code is open, available on GitHub.
- ay_common
- Common stuff of ay_tools.
https://github.com/akihikoy/ay_common
- ay_py
- Python libraries for robot learning, including optimization, Graph-DDP, locally weighted regression, neural networks for regression and classification, geometry and kinematics calculation, robot control interface of Baxter, PR2, Robotiq, Dynamixel and Mikata arm, ROS utility, etc.
https://github.com/akihikoy/ay_py
- ay_cpp
- C++ libraries for robot programming, including geometry utility and optimization. This package is compiled with ROS-build, but can also be compiled without ROS.
https://github.com/akihikoy/ay_cpp
- ay_util
- ROS utility, including state validity checker (collision checker) over ROS for Python, some launch files, models, etc.
https://github.com/akihikoy/ay_util
- ay_trick
- Environment for robot system development and experiments. `ay_trick` provides a CUI tool where you can interact with robots. Once the initialization including ROS communication setup is done, you do not have to do it again. You can run external Python scripts.
Internal dependency: ay_py
https://github.com/akihikoy/ay_trick
- ay_sim
- Simulations with ODE (open dynamics engine) including pouring, a hopping robot, etc. `ay_sim` is built on ROS, implemented with C++ using ODE.
Internal dependency: ay_cpp
https://github.com/akihikoy/ay_sim
- ay_vision
- Computer vision tools, including color detection, stereo vision for liquid flow, object segmentation, etc.
Internal dependency: ay_cpp
https://github.com/akihikoy/ay_vision
- ay_3dvision
- 3D computer vision tools, including pose estimation from RGB-D image, stereo, Sentis M100 controller, etc.
Internal dependency: ay_cpp, ay_vision
https://github.com/akihikoy/ay_3dvision
- fingervision
- Software for the vision-based tactile sensor FingerVision including CAD models.
It has ROS version and standalone version.
Previously the development version was a part of ay_vision, and the stable version was named optskin.
For better maintenance, optskin was renamed to fingervision where the updates of ay_vision is unified.
Internal dependency: Independent from other ay_tools.
https://github.com/akihikoy/fingervision
- ay_fv_extra
- Extra configurations and launch files of fingervision.
This ROS package provides configurations and launch files for specific robots in my lab.
Internal dependency: fingervision
https://github.com/akihikoy/ay_fv_extra
Installation †
Tutorials †
- Learning ay_trick
- ay_trick is a useful framework to build integrated robotic applications. It provides a CUI interface to execute scripts and commands where you are released from the bothering ROS setup; once they have established, you can keep using the connection.
- Kinematic Simulation
- Robot developers test the robot motions in simulation before executing them on real systems. Dynamic simulation provides realistic results, but uses much computation resource. Kinematic simulation just creates kinematic motions virtually where dynamics are not considered, but is much faster. This tutorial provides a guide of kinematic simulations of Motoman, Mikata Arm, etc.
- Step-by-step Robot Control with ay_trick
- In this tutorial, we learn robot control with the ay_trick framework. You will learn basic control of a robot including joint space control, task space control, trajectory control, and forward and inverse kinematics. We use Kinematic Simulation; i.e. you do not need to have a real robot.
- List of Available Robots
- List of robots that are available through the common interface ot ay_tools. Currently, Universal Robots, Mikata Arm, Motoman, Baxter, and UR3, Robotiq Gripper, Dynamixel-based Gripper, Baxter EPG are controlled with the same interface.
- Standalone Mikata Arm Control
- We learn a standalone (non ROS) control tool of Dynamixel servos and Mikata Arm provided by ay_py.
- Running Motoman
- Running real Motoman from ay_trick.
- Geometry Computation?
- We learn a set of basic geometry functions provided by ay_py.
- Robot Control with FingerVision
- Tutorial for controlling robots with the vision-based tactile sensor FingerVision.
- Visualization (RViz)?
- Pouring Simulation?
- Machine Learning?
- Optimization?
- Graph-DDP?
- Stereo Vision of Flow?
Reference †
- Available Robots
- ay_py provides a general interface of robot arms including Baxter, PR2, Motoman, Mikata Arm, etc. This page describes the available robots over ay_trick.
- Update packages