DEV Community

Cover image for Common services and methods of openTCS
Skye HAN
Skye HAN

Posted on

Common services and methods of openTCS

Introduction

openTCS is a vendor-independent and flexibly usable control system software for automated guided vehicle systems (AGVS) and other non-continuous conveyors like electric monorail conveyors and mobile assembly platforms. It was originally developed during a publicly funded project. Now the code base is being maintained and development continued by Fraunhofer Institute for Material Flow and Logistics (IML) in Dortmund, Germany.

Services and methods

plantModelService

Create model, get model information, etc.
Create a new model
plantModelService.createPlantModel();
Get model properties, such as modification time
plantModelService.getModelProperties();
get model name
plantModelService.getModelName();
Get the elements on the model: point, car, order, etc.
plantModelService.fetchObjects();

transportOrderService

After the order is created, the initial status of the order is RAW
Create Order
transportOrderService.createTransportOrder();
Create order sequence
transportOrderService.createOrderSequence();
Mark order sequence complete
transportOrderService.markOrderSequenceComplete();

After the order is created, set the properties, such as the expected execution trolley, deadline, etc. Order status changed to ACTIVE

routerService

The router checks whether each destination can be reached, and can modify the order status to dispatchable. If not, change the order status to UNrouteable
routerService.updatePathLock();
routerService.updateRoutingTopology();

dispatcherService

The dispatcher assigns the trolley to execute the corresponding order, and when the trolley starts to execute, it changes the order status to be processed
Allocate orders
dispatcherService.dispatch();
Cancellation by car
dispatcherService.withdrawByVehicle();
Cancellation by order
dispatcherService.withdrawByTransportOrder();

vehicleService

Services for trolleys, mainly including communication adapters
Update cart integration
vehicleService.updateVehicleIntegrationLevel();
get processModel
vehicleService.fetchProcessModel();
vehicleService.sendCommAdapterCommand();
vehicleService.attachCommAdapter();
vehicleService.disableCommAdapter();
vehicleService.enableCommAdapter();
vehicleService.fetchAttachmentInformation();
vehicleService.updateVehicleAllowedOrderTypes();
vehicleService.sendCommAdapterMessage();

schedulerService

schedule
schedulerService.fetchSchedulerAllocations()

notificationService

Notice
notificationService.fetchUserNotifications();
notificationService.publishUserNotification();

Top comments (0)