3.2. Cleaning machine

This section provides the API specifications for cleaning machines in a facility environment.

3.2.1. Definitions

Common definitions

Common definitions

3.2.1.1. Moving Equipment Generic Definitions

Machine

A piece of mechanized mobile equipment with the purpose of executing a task

  • This scrubber is a great machine to clean our floor

  • This forklift is a powerful machine that requires training

  • A mop is not considered a machine because it doesn’t have any mechanical parts that performs cleaning on behalf of the cleaner

Machine Type
The task that the machine is built for

The type of machines this manufacturer builds is a cleaning machine


Operating Mode
The way that operators move and direct the machine

In this tender, the customer is only asking for machines with a ride-on operating mode

  • Walk-behind
    A machine designed to be controlled by the operator walking behind and guiding the machine using its handle

    Due to all the places I have to go where I can’t bring the machine, a walk-behind machine is the best option for me

  • Ride-on
    A machine designed to be controlled by the operator sitting on the machine and using a steering and speed control mechanism to guide the machine

    The seat on this ride-on machine is very comfortable

  • Stand-on
    A machine designed to be controlled by the operator standing up on the machine and using a steering and speed control mechanism to guide the machine

    Being able to stand on this machine instead of walking behind really helps my knees and my back.

  • Canister
    A machine designed to be on wheels and manually pulled by the operator

    This canister vacuum is so easy to drag behind me

  • Backpack
    A machine designed to be carried by the operator

    This backpack vacuum is so light that I don’t even feel I am carrying it on

  • Upright
    A small machine designed to be pushed by the operator using a single-hand handle

    This upright vacuum lets me vacuum the floor while I am pulling my cleaning cart


Propel Mode
The mechanism used to move a machine

I will use this machine only 5 minutes per day, so I think this manual-propelled version is the best propel mode for me

  • Self-propelled
    The machine uses one or more drive motors and a speed-control mechanism to propel itself

    Since I switched to a self-propelled walk-behind, my arms are not tired anymore

  • Manual-propelled
    The machine is moved by an operator physically pushing, pulling, or carrying the machine

    If you are looking for a truly zero-emission solution, this manual-propelled machine is your best option


Power Mode
The mechanism used to power all the mechanical functions on a machine

The specifications of this machine indicate that the power mode is battery-powered

  • Battery-powered
    The power source of the machine is provided by batteries installed on the machine

    I need a cordless machine so I will buy this 18V Li-Ion battery-powered version

  • Electrical grid
    The power source of the machine is provided by a cord being plugged on the building’s electrical grid

    I will always forget to charge the batteries, so I will stick with the corded version and plug it to the electrical grid

  • Internal Combustion
    The power source of the machine is provided by an internal combustion engine

    For this indoor application, propane is your only internal combustion option available

  • Fuel Cell
    The power source of the machine is provided by fuel cells installed on the machine

    The specifications of this machine indicate that the power mode is fuel cell

  • Hybrid
    The machine is powered by a combination of multiple power sources

    This machine is powered by a hybrid system of combustion engine and batteries


Battery Type
The type of battery installed on a machine
  • Wet Lead Acid Battery

  • AGM

  • Lithium Ion

The machine is manufactured with a wet lead acid battery pack

Fuel Type
The type of fuel for internal combustion engines
  • Gasoline

  • Diesel

  • LPG

This machine only runs on diesel fuel type

Geolocation
The last reported longitude and latitude coordinates of a machine

The last reported location of the machine was 44.9874N and 93.3521W

Geolocation Timestamp
The date-time the geolocation was last reported by the machine

As the machine records its geolocation hourly, the reported geolocation timestamp was 23:00 yesterday when the machine last contacted the back office at 23:30

Geolocation Accuracy
A pair of distances indicating that the reported geolocation is guaranteed to not be better than the shortest distance and to not be worse than the longest distance

In this building the geolocation accuracy won’t be better than 10m but for sure within 100m


Health Status Timestamp
The date-time the health status was last reported by the machine

As the machine records its health status hourly, the reported health status timestamp was 23:00 yesterday when the machine last contacted the back office at 23:30

Health Status
The overall health condition of the machine

Make sure that the status of the machine is operational before using it

  • Operational
    The machine status indicating that the machine is in working order

    I am happy to report that the machine has been operational for one year and counting

  • Maintenance Required
    The machine status indicating that the machine has recorded some issues that don’t prevent the machine to perform its cleaning functions, and should require attention during the next service maintenance

    The health status indicated that maintenance is required because the machine recorded that the vacuum air filter should be changed

  • Defective
    The machine status indicating that the machine cannot be operated and requires assistance

    Since the machine reported a defective status, I called the customer service immediately

  • Unknown
    The machine status cannot be assessed properly at the time the status was recorded

    Since the machine reported an unknown status, I contacted the operator to make sure everything was working correctly

Charge Cycle
An incrementing counter of continuous time periods when the batteries on a machine are being charged for battery-powered machines

We should start monitoring the batteries after 500 charge cycles

Last Beginning of Charge
The last date-time when the batteries are plugged to a charger and power is actively being delivered to the batteries (the charger is plugged to an electrical outlet)

The last charge cycle began at 22:30

Last End of Charge
The last date-time when the batteries are unplugged from a charger and power is no longer being delivered to the batteries (the charger is unplugged from an electrical outlet)

The last charge cycle ended at 6:00

Last Charge Initial Level
The percentage of charge at the beginning of the last charge cycle for battery powered machines

When the battery charger was plugged in, the initial charge level was 30%

Last Charge Final Level
The percentage of charge at the end of the last charge cycle for battery-powered machines

Always verify that the batteries are fully charged before operation every day with a 100% charge level

Last Charge Start Time
The date-time the last charge cycle reported by the machine started

The battery charger was plugged in to the machine at 8:25 this morning

Last Charge End Time
The date-time the last charge cycle reported by the machine ended

The battery charger was unplugged from the machine at 16:00 today

Engine Health
The health condition of the internal combustion engine

The engine health indicates that regular maintenance is required

Oil Pressure
The pressure measured in Pascal of the oil lubricant in an internal combustion engine

The normal oil pressure in the engine should be around 20,000 Pascal

Coolant Temperature
The temperature measured in degrees Celsius of the coolant fluid in an internal combustion engine

The normal coolant temperature of a running engine should be around 90 degrees Celsius

RPM (Revolutions Per Minute)
The RPM measures how fast an engine is running

The RPM of this engine should be kept below 5000

3.2.1.2. Cleaning machine definitions

Cleaning Machine

A piece of mechanized mobile equipment with the purpose of executing a cleaning task

  • This scrubber is a great machine to clean our floor

  • My Roomba is a machine that is both a vacuum cleaner and a cat toy

Cleaning Mode
The specific method or methods provided by the machine to perform a cleaning task

The cleaning function of this machine is to vacuum

  • Scrubber
    A machine with the cleaning function to separate and remove substances from a hard-surface floor by using the combination of brushes/pads and liquid to agitate and collect the substances

    Look at how shiny this concrete floor is since I have been using this scrubber to clean it every night

  • Sweeper
    A machine with the cleaning function to remove debris and residues form the floor by using counter-rotating brushes to collect and transfer debris from the floor to a hopper

    This event was very messy. I have never seen so many cups, cans, paper towels and confetti but thanks to this industrial sweeper, we were able to clean this place in less than an hour

  • Vacuum
    A machine with the cleaning function to remove debris, dust and residues from surfaces by using a suction mechanism

    I love my cat but when she’s shedding, I must vacuum at least twice a day

  • Wet-dry Vacuum
    A machine with the cleaning function to remove debris, dust, residues and liquids from surfaces by using a suction mechanism

    This wet-dry vacuum is ideal to use in the locker room’s showers

  • Extractor
    A machine with the cleaning function to restore carpet surface by using the combination of liquid, brushes, and strong suction to extract dirt incrusted in the carpet

    With all the drinks and coffee spills, the greasy food that falls, and all the foot traffic that happen on a casino carpet, we need to use an extractor every day to restore the carpet

  • Burnisher
    A machine with the cleaning function to polish a hard-surface floor by using pads rotating at high speed

    For the gala tomorrow, we need the marble floor to be glossy, so don’t forget to use the burnisher tonight

  • Pressure Washer
    A machine with the cleaning function to restore a hard surface by using very high-pressure sprayers

    With all the rain and wet weather we had the last couple months, mold and moss is growing on the terrace. The pressure washer should clean all that in no time

  • Steam Cleaner
    A machine with the cleaning function to separate and remove substances from a hard-surface floor by blowing high temperature steam

    The scrubber could not remove the stain on the concrete floor. Fortunately, we also had a steam cleaner that took care of it in few minutes

  • Multi-function Machine
    A machine that incorporates multiple cleaning functions

    This new sweeper-scrubber will replace both the current sweeper and scrubber machines for our convention center


Operating Period
A continuous time sequence during which at least one motor is actuated

The scrubber has been operating non-stop for a period of 45 minutes before a dump & fill was required

Productivity Period
A continuous time sequence during which at least one drive motor and one cleaning function motor is actuated if it is a self-propelled machine, or a continuous time sequence during which at least one cleaning function motor if it is a manual-propelled machine

Although the machine had an operating period of 45 minutes, the productivity period during which it was cleaning the floor was only 30 minutes

Propel Period
A continuous time sequence during which only at least one drive motor is actuated and no cleaning function motor is actuated

The machine usually has to propel for a 15 minutes propel period from storage to where it needs to clean

Idle Period
A continuous time sequence during which no motors are actuated. Note: The Idle Period is independent to whether the machine is powered on or off

The machine was operating for 20 minutes, then stopped for an idle period of 10 minutes, and resumed operation for another operating period of 30 minutes

Short Interruption Threshold
A time threshold below which short motor interruptions are incorporated within an operating or productivity period

The operating period reported was 1 hour even though the machine had few short interruptions of about 10s during this hour. Since these interruptions were less than the short interruption threshold of 30s, they were not reported as idle periods

Runtime
The aggregation of all operating periods during a statistic date range

On Friday, the machine runtime was 3 hours 10 minutes 20 seconds between 6:00 and 17:00

Cleaning Time
The aggregation of all productivity periods during a statistic date range

Even though the machine runtime was 3 hours 10 minutes 20 seconds between 6:00 and 17:00, the actual cleaning time was 2 hours and 55 minutes during the same period

Propel Time
The aggregation of all propel periods during a statistic date range

The propel time was 10 minutes between 6:00 and 17:00

Hour Meter
The accumulated operating periods over the life of the machine

The machine reached 10,000 hours of good and reliable service on the hour meter

Operating Start Time
The beginning date-time of an operating period

There were 3 operating periods during this shift. The start time of the first operating period was 7:05:10…

Operating End Time
The end date-time of an operating period

… and the end time of the first operating period was 8:12:25

Productivity Start Time
The beginning date-time of a productivity period

The operator started cleaning right away since the productivity start time was also 7:05:10…

Productivity End Time
The end date-time of a productivity period

… but the productivity end time was 7:58:43 when the operator stopped cleaning to drive to the filling station

Idle Start Time
The beginning date-time of an idle period

The machine stopped for 12 minutes between the first and second operating period, therefore the idle start time was 8:12:25…

Idle End Time
The end date-time of an idle period

… and the idle end time was 8:24:25

Start Runtime
The first operating start time within the statistic date range. If the query start time is within an operating period, then the start runtime is the same as the query start time

The shift started at 7:00:00, and since the first operating start time was 7:05:10, then it was also the start runtime

End Runtime
The last operating end time within the statistic date range. If the query end time is within an operating period, then the end runtime is the same as the query end time

The shift ended at 15:00 and the runtime end was the time the last operating period ended which occurred at 14:17:00.

Start Cleaning time
The first productivity start time within the statistic date range. If the query start time is within a productivity period, then the start cleaning time is the same as the query start time

As previously mentioned, the operator started cleaning right away at 7:05:10

End Cleaning time
The last productivity end time within the statistic date range. If the query end time is within a productivity period, then the end cleaning time is the same as the query end time

Even though the last operating period ended at 14:17:00, the cleaning time ended 10 minutes earlier at 14:07:00

Tank
A container installed on a machine designed to hold liquids or solids

This scrubber has a fresh water tank of 50 liters

  • Fresh Water
    A tank holding the fresh water or chemical solution used to clean the floor

    This system can fill the fresh water tank in 30 seconds

  • Dirty Water
    A tank holding dirty water retrieved from the floor

    Please clean the dirty water tank thoroughly after a dump

  • Detergent
    A tank holding detergent chemicals

    Make sure to check the detergent tank before starting

  • Hopper
    A tank holding debris and dirt from the floor collected by a sweeper

    The hopper should be emptied in the dumpster

  • Bag
    A tank holding debris and dirt from the floor usually collected by a vacuum

    When the bag is full the machine stops vacuuming

  • Fuel
    A tank holding fuel for Internal Combustion engine or fuel cell machines

    Please replace the propane fuel tank at the end of your shift


Tank Max Volume
The maximum capacity of the tank

The max volume of the fresh water tank is 100 liters

Tank Filling Volume
The volume of the tank that is currently filled

There is a volume of 50 liters of dirty water in the tank

Tank Filling Level
The percentage of the tank that is currently filled

The fresh water tank level is 25% full

Tank Status
The operational status of the machine based on the tank level. It can be one of:
  • Operational: the tank has an appropriate operational level

  • Warning: action to refill or empty the tank required soon

  • Not Operational: action to refill or empty the tank required now and prevents operation of the machine

The status of the detergent tank should always be operational

Tank Filling Timestamp
The date-time the tank filling level and volume was last reported by the machine

The tank level reported was recorded by the machine with a tank filling timestamp of 15:30

3.2.2. Use cases

Note

Join FDS to get access to examples and use cases.

3.2.3. FDS compliance requirements

3.2.3.1. Object Model

3.2.3.1.1. Specification object for the cleaning machine device type

  • the device information provider must provide a specification object that contains a device_type_specific object defined in the following diagram

../../_images/cleaning_machine_specification_object_model.png
  • When provided, the operating mode must be one of

    • “walk_behind”

    • “ride_on”

    • “stand_on”

    • “canister”

    • “backpack”

    • “upright”

  • When provided, the propel mode must be one of

    • “self_propelled”

    • “manual_propelled”

  • When provided, the power mode must be one of

    • “battery”

    • “electrical_grid”

    • “internal_combustion”

    • “fuel_cell”

    • “hybrid”

  • When provided, the cleaning mode must be at least one of

    • “scrubber”

    • “sweeper”

    • “vacuum”

    • “extractor”

    • “burnisher”

    • “pressure_washer”

    • “steam”

  • When provided, the battery_type must be one of

    • “lead_acid”

    • “agm”

    • “lithium_ion”

  • When provided, the fuel type must be one of

    • “gasoline”

    • “diesel”

    • “lpg”

  • When provided, the tank type must be one of

    • “fresh_water”

    • “dirty_water”

    • “detergent”

    • “hopper”

    • “bag”

    • “fuel”

3.2.3.1.2. Status object for the cleaning machine device type

  • the device information provider must provide a status object that contains a device_type_specific object defined in the following diagram

../../_images/cleaning_machine_status_object_model.png

3.2.3.1.3. Statistic object for the cleaning machine device type

  • the device information provider must provide a statistic object that contains a device_type_specific object defined in the following diagram

../../_images/cleaning_machine_statistic_object_model.png

3.2.3.1.4. Diagnostic object for the cleaning machine device type

Note

The Diagnostic object is not being defined for cleaning machines in FDS Version 2

3.2.3.2. Web API (Pull Model)

  • The device information provider must expose the specifications endpoint to get the list of available devices and their specifications

GET https://{Device Information Provider URL}/fds/v2/specifications
  • The device information provider must expose the statuses endpoint to get the latest status for one or multiple devices

GET https://{Device Information Provider URL}/fds/v2/statuses
  • The device information provider must expose the statistics endpoint to get the statistics for one or multiple devices

GET https://{Device Information Provider URL}/fds/v2/statistics

Note

the diagnostics endpoint to expose the prognostic and predictive information is not being defined for cleaning machines in FDS Version 2

A call to:

GET https://{Device Information Provider URL}/fds/v2/diagnostics

must return an error object

{
    "status": 204,
    "message": "not_implemented"
}
  • The device information provider must expose the POST request on the tag endpoint to let a client application create a new tag

POST https://{Entity Information Provider URL}/fds/v2/tag
  • The device information provider must expose the GET request on the tag endpoint to provide the content of a tag

GET https://{Entity Information Provider URL}/fds/v2/tag
  • The device information provider must expose the DELETE request on the tag endpoint

DELETE https://{Entity Information Provider URL}/fds/v2/tag/<tag_id>
  • The device information provider must expose the PUT request on the tag/<tag_id>/entities endpoint

PUT https://{Entity Information Provider URL}/fds/v2/tag/<tag_id>/entities
  • The device information provider must expose the DELETE request on the tag/<tag_id>/entities endpoint

DELETE https://{Entity Information Provider URL}/fds/v2/tag/<tag_id>/entities

3.2.3.3. Publish/Subscribe (Push model)

3.2.3.3.1. Events

  • The device information provider must publish the following alerts and notifications

Message code

Description

Message category

Message code specific object

out_of_order

The device is out of order and needs service intervention

alert

out_of_order_details property - array of information provider codes

out_of_order_recovery

The device is operational again following an out of order problem

notification

correlation_id property - UUID of out of order event

regular_maintenance

The device is due for its regular maintenance service

notification

None

regular_maintenance_completed

The regular device maintenance was performed

notification

correlation_id property - UUID of regular maintenance event

impact

An impact on the machine was detected

notification

None

opportunity_charging

An opportunity charging of a lead acid battery has been detected (battery not fully charged)

notification

opportunity_charge - Charge object

offline

The device is not communicating

notification

last_contact property

charging_cycle_started

The device has been put on charge

notification

charging_cycle property

charging_cycle_stopped

The device has been disconnected from the charger, or the charger provided an end of charge signal

notification

battery_level property

3.2.3.3.2. Publish status information

Note

No status information is being published by cleaning machine device information providers in FDS Version 2

3.2.3.3.3. Publish predictive and prognostic information

Note

No predictive and prognostic information is being published by cleaning machine device information providers in FDS Version 2