YaskawaEurope / mlx-examples

This repository contains the sources of the MotoLogix code examples. The rendered pages can be seen on the Yaskawa Motologix website.
https://motologix.yaskawa.eu.com/examples
MIT License
3 stars 0 forks source link

feature/31 implement start conditions for PosTable entry (step 1) #36

Closed yeu-degroot closed 1 month ago

yeu-degroot commented 3 months ago

This implements step 1 of #31.

It adds the possibility to set "start conditions" for a PosTable entry. These are defined as a bit pattern (array, size set by global constant).

In this step 1, if there are start conditions programmed for an entry, PosTable will always schedule a standstill (state 5) and go to the new waiting state (even if conditions are already met). See the diagram below.

PR36_postable_state_machine

Code changes

Add CONDITIONS_UBOUND global constant

This is used for setting the array sizes for the start conditions mechanism. Users can easily scale the number of start conditions to their needs.

Update McePosTableEntry data type

Update McePosTableIO data type

Add McePosTableCheckConditions function

This function shall check the conditions for a given entry. It will return a McePosTableConditions struct. It will be useful to determine which conditions are holding the trajectory.

Add McePosTableConditions data type

Update McePosTableRemainingEntries

Update McePosTableRecalcQA

Update McePosTable