Skip to content

SwarmSystemLab-SUSTech/RiFoLo-Rigidity-Toolbox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 

Repository files navigation

RiFoLo Executable

  1. Prerequisites for Deployment

Verify that MATLAB Runtime(R2024b) is installed. If your system already has MATLAB Runtime (R2024b) installed, you may run the ".exe" file located in the "Software" folder directly. If not, please run the ".exe" from the "Software_install" folder, which will automatically install the "RoLoFo" and required MATLAB Runtime (R2024b).

NOTE: You will need administrator rights to run the MATLAB Runtime installer.

Alternatively, download and install the Windows version of the MATLAB Runtime for R2024b from the following link on the MathWorks website:

https://www.mathworks.com/products/compiler/mcr/index.html

For more information about the MATLAB Runtime and the MATLAB Runtime installer, see "Distribute Applications" in the MATLAB Compiler documentation
in the MathWorks Documentation Center.

  1. Files to Deploy and Package

Files to Package for Standalone

-RiFoLo.exe -MCRInstaller.exe Note: if end users are unable to download the MATLAB Runtime using the instructions in the previous section, include it when building your component by clicking the "Runtime included in package" link in the Deployment Tool. -This readme file

  1. Definitions

For information on deployment terminology, go to https://www.mathworks.com/help and select MATLAB Compiler > Getting Started > About Application Deployment > Deployment Product Terms in the MathWorks Documentation Center.

RiFoLo User Manual Detailed Introduction of RiFoLo Software

  1. Entering the Toolbox Interface

Open the RiFoLo toolbox application to enter the main menu. System Diagram Click the menu bar at the top left to expand the functional selection panel and choose the desired function.

System DiagramSystem Diagram Functions are divided into three categories:

Rigidity Checking

Multi-agent Formation

Multi-agent Localization

Each function can be performed using three types of constraints:

Distance

Bearing

Angle

  1. Rigidity Checking 2.1 Distance Rigidity System Diagram

After selecting Distance Rigidity, the interface contains the following elements:

ID Name Description Note ① Dimension Selection Select the dimension for rigidity checking (2-D or 3-D). Topological checking is only available in 2-D. ② Algebraic / Topological Click to choose either Algebraic or Topological rigidity checking. Topological checking is only available in 2-D. ③ Data Input Input the target configuration according to the example format in gray text. — ④ Import Data Import data from .txt or .csv files into the input field. — ⑤ Graphic Input Input data by selecting points and edges graphically. See Section 2.1.1 for details. ⑥ Check Rigidity Run the rigidity check to determine if the configuration is rigid. — ⑦ Result Display Shows the rigidity checking result and a visualization of the configuration. — ⑧ Save Save the input data and results as a .docx report. — ⑨ Help Open the user manual for guidance. —

Usage Steps:

Select the checking method at ② (Algebraic or Topological).

Select the dimension at ①. Algebraic checking supports both 2-D and 3-D, while Topological checking supports only 2-D.

Input the data at ③ according to the example format. You can either enter it manually, import it via ④, or use ⑤ Graphic Input (see Section 2.1.1).

System Diagram Click ⑥ Check Rigidity to run the check. The result and configuration visualization will appear in ⑦.

Click ⑧ Save to export the input and output as a .docx file.

2.1.1 Graphic Input

After selecting Graphic Input, the interface contains:

System Diagram ID Name Description Note ① Number of Points Input the number of points to draw. — ② Select Points Click to select point positions on the drawing panel. — ③ Output Data Export the drawn data to the main panel according to the selected function. Coordinates for algebraic coordinate checking, vectors for bearing-based checking. ④ Undo Undo the last drawing operation (or press CTRL+Z). — ⑤ Result Display Shows real-time coordinates and edge connections of all points. — ⑥ Drawing Panel Draw points by clicking on the panel. Double-click two points to create an edge between them. —

Usage Steps:

Input the number of points at ①.

Click ② Select Points, then draw points on the left panel.

Draw edges by double-clicking one point and then another; an edge will be created between them.

Click ③ Output Data to export the drawn configuration to the main panel.

2.2 Bearing Rigidity

The interface and operation are similar to Distance Rigidity. The main difference is the function selection:

System Diagram Algebraic: Coordinate

Algebraic: Bearing

Topological

2.3 Angle Rigidity

System Diagram The interface is similar to Distance and Bearing Rigidity. Function selection options:

Algebraic: Coordinate

Algebraic: Angle

Topological

Notes:

For Algebraic: Angle or Topological, you need to enable Triangular or Not before checking rigidity.

For Algebraic: Coordinate, this option is not required.

2.3.1 Angle Rigidity Graphic Input

System Diagram

ID Name Description Note ① Number of Points Number of points to draw. — ② Select Points Select point positions on the drawing panel. — ③ Pick Angle Choose a vertex and two adjacent points to define an angle. Example: points 1 (vertex), 2, 3 → angle order 2-1-3 ④ Pick Triangle Select three points to define a triangle. Example: points 1, 2, 3 → two angles output: 1-2-3, 2-3-1 ⑤ Undo Undo the last operation. — ⑥ Output Data Export drawn data to the main panel. Coordinates or angles depending on the selected function ⑦ Clear All Clear all points, edges, and angles. — ⑧ Result Display Shows coordinates and connections of points. — ⑨ Drawing Panel Draw points by clicking; draw edges and angles as described. —

Usage Steps:

Input the number of points at ①.

Click ② Select Points and draw points.

Draw angles using either:

Pick Angle (③): Select vertex and two points for a single angle.

Pick Triangle (④): Select three points to define a triangle; two angles will be calculated.

Click ⑥ Output Data to send the drawn configuration to the main panel.

  1. Multi-agent Formation 3.1 Distance-based Formation

System Diagram

ID Name Description Note ① Data Input Enter initial positions and target constraints. — ② Import Data Import data from .txt or .csv. — ③ Get Formation Result Run the formation algorithm. — ④ Simulation Time Input simulation duration (default 10 s). — ⑤ Result Display Shows formation trajectory and error curves. —

Usage Steps:

Enter data at ① or import using ②.

Set simulation time at ④.

Click ③ to run and view results at ⑤.

3.2 Bearing-based Formation

Similar to distance-based formation; the difference is input constraints are bearing vectors instead of distances.

3.3 Angle-based Formation

System Diagram

Input constraints are angles.

Select formation mode at ①:

General Angle: Rigidity → corresponds to Algebraic: Coordinate

Triangular Angle Rigidity → corresponds to Algebraic: Angle

  1. Multi-agent Localization

System Diagram

Three modes (Distance, Bearing, Angle) are similar. Input differs:

ID Name Description Note ① Data Input Input Anchor labels, coordinates, edges, and measurement values (Distance/Bearing/Angle). — ② Import Data Import data from .txt or .csv. — ③ Get Localization Result Run the localization algorithm. — ④ Result Display Shows coordinates of Anchors (red) and Followers (blue) along with the configuration. —

Usage Steps:

Input or import data at ①/②.

Click ③ to get coordinates and visualization at ④.

  1. Saving Data

Click the Save button at the bottom right to save input, results, and visualizations as a .docx report.

System Diagram

About

An interactive toolbox for rigidity analysis, multi-agent formation, and network localization based on distance, bearing, and angle measurements.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors