blockLCMReceive
A block for receiving LCM datagrams
Extends from Modelica_DeviceDrivers.Utilities.Icons.BaseIcon (Base icon for blocks providing access to external devices), Modelica_DeviceDrivers.Utilities.Icons.LCMconnection (Base icon for models of network connections), Modelica_DeviceDrivers.Blocks.Communication.Internal.PartialSampleTrigger (Common code for triggering calls to external I/O devices).
Information
Supports receiving of Lightweight Communications and Marshalling (LCM) datagrams (https://lcm-proj.github.io/).
Remark regarding Linux
LCM requires a valid multicast route. If this is a Linux computer and it is simply not connected to a network, the following commands are usually sufficient as a temporary solution:
sudo ifconfig lo multicast sudo route add -net 224.0.0.0 netmask 240.0.0.0 dev lo
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Activation | |||
| Boolean | enableExternalTrigger (from PartialSampleTrigger) | false | true, enable external trigger input signal, otherwise use sample time settings below |
| SI.Period | sampleTime (from PartialSampleTrigger) | 0.1 | Sample period of component |
| SI.Time | startTime (from PartialSampleTrigger) | 0 | First sample time instant |
| Incoming data | |||
| Boolean | autoBufferSize | true | true, buffer size is deduced automatically, otherwise set it manually |
| Integer | userBufferSize | 16*1024 | Buffer size of message data in bytes (if not deduced automatically) |
| LCMProvider | provider | LCMProvider.UDPM | LCM network provider |
| String | address | "224.0.0.0" | UDP multicast IP address or logfile name |
| Integer | port | 10001 | UDP port (receivers must bind to the same port as the sender to receive multicast messages) |
| String | channel_recv | "" | Channel name |
| Integer | queue_size | 30 | Maximum number of received messages that can be queued up |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Interfaces.BooleanInput | trigger (from PartialSampleTrigger) | ||
| Interfaces.PackageOut | pkgOut |