Terminology

Terminology #

The following sections will explain important concepts regarding Meili FMS.

General Terms #

FMS

Fleet management software is computer software that enables companies to organise, manage, and coordinate a fleet of vehicles from a central information system. Fleet management aims to improve performance, reduce costs, and provide compliance with government regulations.

Meili FMS

Meili FMS is a cloud-based fleet management system for mobile robots of all brands, types, or sizes. The aim of this product is to facilitate the integration and global control of multiple robots in a single system through a web application, which can be accessed from all types of platforms and devices. Another objective is to democratise the access, control, and supervision of robotics systems. Hence, a user without robotics knowledge or experience can understand and manage their robots and operations. Meili FMS is mainly focused on internal logistics applications.

Organisation An organisation is a top entity in the system. It is equivalent to a company, e.g. Meili Robots.

User A user belongs to an Organisation and to a team and can create and manage tasks.

Team A team is a group of users that shares a specific area and a specific fleet. A team can have access to either Indoor Areas or Outdoor areas, depending on where the assigned task takes place.

Fleet Management #

Vehicle A vehicle is a machine used for transporting people or goods from an origin to a destination. In this case, a vehicle can be any type of autonomous mobile robot (AMR) or any automated guided vehicle (AGV).

AMR An autonomous mobile robot is a robot that has the ability to move autonomously without assistance from external human operators.

AGV An automated guided vehicle or automatic guided vehicle (AGV) is a portable robot that follows markers or wires on the floor, or uses vision or lasers to navigate. They are often used in large-scale industrial applications to transport materials around manufacturing facilities or warehouses.

Fleet A fleet contains a number of vehicles operating together or under the same ownership.

Task Allocation #

Task In this case, a task is defined as a basic operation of transporting a load from an origin station to a destination station. This task belongs to a team and is executed immediately by a vehicle. Note that there is an important difference between a task and a mission — as is explained below.

Subtask A subtask can be added to a task if a vehicle needs to make different stops along its way. For example, when you want to carry out a task immediately from Station A to Station D, but with several stops along the way (say Station B and C), you can add these stations as subtasks to the initial task (Station A to Station D). Note that subtasks can be added to both tasks, missions, and presets.

Mission In Meili FMS, missions are defined as a set of scheduled tasks, arranged in a particular execution order. Whereas a task immediately carries out a single, one-time operation, missions are specifically designed for users of Meili FMS to schedule tasks for a later point in time. In addition, missions can include several tasks. An example of a mission could thus be a vehicle moving a load from station A to station B, dropping the load, then picking up another load and delivering it to station C

Preset In Meili FMS, presets are defined as a set of predefined tasks, which can happen over and over again, on a regular basis. Using a preset can help save time and effort by not having to create the same task time and time again.

Today’s Tasks Panel #

The created tasks will be shown in ‘Today’s Tasks’ and are divided into five sections representing the task’s states:

  • In Progress: The tasks that are currently taking place will appear here.
  • Queue: The next immediate tasks to be executed will appear here.
  • Completed: All the completed tasks will be shown here.
  • Upcoming: Tasks that have been scheduled for the day will be shown in this section.
  • Aborted by robot: Tasks aborted by robots will be shown in this section.
  • The tasks in ‘Today’s Tasks’ can be filtered by:
  • All Tasks: It shows all present tasks.
  • My Tasks: It shows the tasks created by you.
  • Priority: It only shows the tasks with a priority tag.

Map Edition & Enrichment #

Area An area is a part of the facility that is designated to a team and represented on a map. This defines where the vehicles can operate.

Indoor area An indoor area is an enclosed space inside a building.

Outdoor area An outdoor area is an area outside a building, with or without a roof.

Subarea A subarea is a part of an area and can be represented on a submap.

Map A map is a 2-dimensional (2D) representation of an area

Linking point A linking point is a common point shared by two different maps, which helps vehicles to navigate between two different areas.

Station A station is where vehicles stop to pick up or drop off transported loads.

Docking station A docking station is a hardware frame that enables a vehicle to get access to a power supply for charging. Normally, docking stations are placed on fixed locations inside a facility.

Base Station A base station is a central computer system that receives and processes data from all vehicles in a facility.

Safe Zone A safe zone is an area that robots will be sent to when they are idling between tasks. This is to avoid blocking the traffic.

Technical Setups #

ROS Robot Operating System (ROS) is a flexible framework and set of tools used to create and manage robots. It uses peer-to-peer topology for communication between robot processes, supports multiple programming languages, and provides tools for robot software development.

Node Nodes are ROS processes that perform computation. They can communicate with each other by passing messages (topics).

Topics Topics are mediums over which nodes exchange messages. They provide a link between two nodes. A topic is a channel for anonymous communication. Multiple nodes can publish and/or subscribe to a given topic.

Subscriber A subscriber is a node that tracks the messages published to a topic.

Publisher A publisher is a node that writes to a topic to which other nodes can subscribe.

ROScore ROScore is a set of nodes that are necessary for the ROS environment to work. ROScore starts a ROSmaster node, ROS permanent server, and a node where logs are published.

On-prem Refers to the process of installing, operating, and maintaining the Meili FMS on a company’s own internal infrastructure. Internet access is not required for operation. An on-premises (on-prem) installation is accessible through a subdomain of a customer-specific domain, for example, meili-fms.customer1.com. The on-prem setup allows for customization per deployment, integrating directly with the customer’s own domain infrastructure.

ROS topics #

Meili FMS currently tracks a number of topics, which are listed below:

Internal name Topic name Message type
pose /amcl_pose geometry_msgs/PoseWithCovarianceStamped
battery /battery_state sensor_msgs/BatteryState
goal /move_base_simple/goal geometry_msgs/PoseStamped
goalArray /move_base/status actionlib_msgs/GoalStatusArray
goal_cancel /move_base/cancel actionlib_msgs/GoalID"
goal_plan /move_base/NavfnROS/plan nav_msgs/Path

pose #

This is used for determining the location inside the RVIZ grid.

battery #

This is used for receiving the battery state.

goal #

This is used for publishing goals to the ROS server.

goalArray #

This is used for receiving goal statuses.

goal_cancel #

This is used for cancelling navigation missions.

goal_plan #

This is used for tracking navigation paths used by the robot during the execution of the navigation task. This information is used for traffic control calculations.