- Send a ReadySignal message after initialization - only the ID string matters, which must be of the form "
hlc_" + vehicle_id, where the latter is the ID of the vehicle the HLC is responsible for
- Receive VehicleStateList messages, which include the current states and observations of the vehicle as well as the current time - this signal is supposed to be the start signal for the HLC, so computation should start using this data after the message was received. Make sure to ignore signals received during computation, if that takes longer than a single period The history for this signal is set to 1, but you may still get an outdated signal here if you missed a period during your computation and read the next VehicleStateList in the middle of that next period. In that case, it may be better to skip that period as well and wait for the following one to start.
- Send vehicle command messages as a result of the communication including the vehicle ID to the Middleware, which propagates these to the vehicle
- React to stop signals sent by the LCC and propagated to the HLC by the Middleware
- Your function head may differ, but you must use varargin as your last parameter to pass vehicle IDs to your script. This allows you to define, for your script, which vehicle(s) it should be responsible for. Any previous parameters you define are your own 'custom' parameters and need to be specified as additional parameters in the Lab Control Centers' UI before starting your script (if you wish to start it using the UI).