AXY:Element Synchronization/Design
Element Synchronization Design
Common algorithms to both SyncStart and SyncAll:
Pre-Calculation
Is done in MotionManager task, initiated by message sent from SyncStart/All commands:
In case of SyncStart we sperately execute MotCalc on every element from the sync-list: (el1 , el2 , el3 , ... eln ):
FOR element FROM sync-list element->MotCalc() NEXT
In case of SyncAll it is little bit more complicated, every element is pre-calculated in order to estimate it's own max profile values:
FOR element FROM sync-list element->MotCalc() ==> Li , Vi , Ai , Di , Jai , Jdi NEXT
And then generate a master profile with the following parameters:
Master Profile
The master profile data-structure will be copied to the profile-data-structure of all other elements. Master profile:
Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle L} , Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle min(V_i \cdot \frac{L_i} {L})} , Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle min(A_i \cdot \frac{L_i} {L})} , Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle min(D_i \cdot \frac{L_i} {L})} , Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle min(Ja_i \cdot \frac{L_i} {L})} , Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle min(Jd_i \cdot \frac{L_i} {L})}
where Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle L = \sqrt{\sum L_i ^2}}
The master profile data-structure will be copied to the profile-data-structure of all other elements.
The complete system of the sync-list motion profiles will be executed together just be scaling each of them by the factor of: Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle \frac{L_i}{\sqrt{\sum L_i ^2}}}
Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle TShort = min(TShort _i)}
Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle TAccMin = max(TAccMin_i)}
Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle TDecMin = max(TDecMin_i)}
| NOTE | |
| The global profile type is defined according to the longest (in time) movement |
| NOTE | |
| Stopping profile continues the global profile. So in case of Proceed command this profile will be used. |
| CAUTION | |
| What happens if profiler changes it's type? |
| CAUTION | |
| What happens in case of extremely short motions? |