====== Available Blocks ====== The EEROS library includes many basic blocks. See [[http://api.eeros.org]] for further information. Important details about blocks are given below. ^ Name ^ Inputs ^ Outputs ^ clock-dependent? | | [[.:available_blocks:const]] | 0 | 1 | RED | | [[.:available_blocks:d]] | 1 | 1 | GREEN | | [[.:available_blocks:delay]] | 1 | 1 | GREEN | | [[.:available_blocks:demux]] | 1 | N | RED | | [[.:available_blocks:gain]] | 1 | 1 | RED | | [[.:available_blocks:generic]] | 1 | 1 | RED | | [[.:available_blocks:int]] | 1 | 1 | GREEN | | [[.:available_blocks:KewboardInput]] | 0 | 2 | RED | | [[.:available_blocks:MouseInput]] | 0 | 2 | RED | | [[.:available_blocks:mux]] | N | 1 | RED | | [[.:available_blocks:mul]] | 2 | 1 | RED | | [[.:available_blocks:PathPlannerCubic]] | 0 | 4 | RED | | [[.:available_blocks:PathPlannerConstAcc]] | 0 | 3 | RED | | [[.:available_blocks:PathPlannerConstJerk]]| 0 | 4 | RED | | [[.:available_blocks:PeripheralInput]] | 0 | 1 | RED | | [[.:available_blocks:PeripheralOutput]] | 1 | 0 | RED | | [[.:available_blocks:RateLimiter]] | 1 | 0 | RED | | [[.:available_blocks:Saturation]] | 1 | 1 | RED | | [[.:available_blocks:checker]] | 1 | 0 | RED | | [[.:available_blocks:socket]] | 0/1 | 0/1 | RED | | [[.:available_blocks:SpaceNavigator]] | 0 | 2 | RED | | [[.:available_blocks:Step]] | 0 | 1 | RED | | [[eeros_architecture:control_system:subsystem|]] | N | M | RED | | [[.:available_blocks:sum]] | N | 1 | RED | | [[.:available_blocks:switch]] | N | 1 | RED | | [[.:available_blocks:trace]] | 1 | 0 | RED | | [[.:available_blocks:transition]] | 1(1) | 1 | GREEN | | [[.:available_blocks:wraparound]] | 1 | 1 | RED | | [[.:available_blocks:XBoxInput]] | 0 | 2 | RED | | ZTransferFunction | 1 | 1 | RED | ===== Filters ===== ^ Name ^ Inputs ^ Outputs ^ clock-dependent? | | [[.:available_blocks:KalmanFilter]] | 0 | 2 | RED | | [[.:available_blocks:lp_filter]] | 1 | 1 | RED | | [[.:available_blocks:median_filter]] | 1 | 1 | RED | | [[.:available_blocks:ma_filter]] | 1 | 1 | RED | ===== Blocks for Interfacing with ROS ===== [[http://www.ros.org/|ROS]] is a flexible framework for writing robot software. It is great collection of tools, libraries, and conventions. Special blocks in EEROS take care of sending signals to and receiving signals from ROS. ^ Name ^ Inputs ^ Outputs ^ clock-dependent? | | [[.:available_blocks:rospubdouble]] | 1 | 0 | RED | | [[.:available_blocks:rospubdoublearray]] | 1 | 0 | RED | | [[.:available_blocks:rospublaserscan]] | 1 | 0 | RED | | [[.:available_blocks:rospubsafetylevel]] | 0 | 0 | RED | | [[.:available_blocks:rossubdouble]] | 0 | 1 | RED | | [[.:available_blocks:rossubdoublearray]] | 0 | 1 | RED | | [[.:available_blocks:rossublaserscan]] | 0 | 1 | RED | ===== Blocks for Interfacing with CAN ===== Special blocks in EEROS take care of sending signals to and receiving signals from a CAN bus. ^ Name ^ Inputs ^ Outputs ^ clock-dependent? | | [[.:available_blocks:canHandle]] | 0 | 0 | RED | | [[.:available_blocks:canSendFaulhaber]] | 1 | 0 | RED | | [[.:available_blocks:canReceiveFaulhaber]] | 0 | 2 | RED | ===== Blocks for Interfacing with EtherCAT ===== Special blocks in EEROS take care of sending signals to and receiving signals from an EtherCAT bus. ^ Name ^ Inputs ^ Outputs ^ clock-dependent? | | [[.:available_blocks:el1008]] | 0 | 8 | RED | | [[.:available_blocks:el2008]] | 8 | 0 | RED | | [[.:available_blocks:el3004]] | 0 | 8 | RED | | [[.:available_blocks:el4004]] | 0 | 8 | RED | | [[.:available_blocks:el4004]] | 0 | 8 | RED | | [[.:available_blocks:elmo_in]] | 0 | 3 | RED | | [[.:available_blocks:elmo_out]] | 4 | 0 | RED | ===== Blocks for Interfacing with Various Sensors ===== These blocks can be used to gather data from sensors and output the sensor signals on outputs for further processing in other blocks. The sensors are read over various communication channels such as USB, UART, MODBUS, etc. ^ Name ^ Inputs ^ Outputs ^ clock-dependent? | | [[.:available_blocks:baumerom70]] | 1 | 0 | RED | | [[.:available_blocks:PixyCam2]] | 5 | 0 | RED | | [[.:available_blocks:RealsenseT256]] | 6 | 0 | RED | | [[.:available_blocks:rplidar]] | 2 | 0 | RED | | [[.:available_blocks:SBGEllipseA]] | 5 | 0 | RED | ===== Blocks for Interfacing with Various Drives ===== These blocks are used for sending control signals to drives. ^ Name ^ Inputs ^ Outputs ^ clock-dependent? | | [[.:available_blocks:odrive]] | 1 | 3 | RED |