IO901/IO902 - Write
IO901/IO902 - Write — Writes the shared
memory
Library
Simulink Real-Time - Speedgoat

Description
Writes blocks of data to shared memory. The size and address of the blocks is
determined by the partition paramater. Use with the shared memory pack function to
initialize the individual data members defined in the partition structure.
Before you begin to configure this block, ensure that you have a predefined shared
memory partition structure (refer to the Usage Notes). The Write
block requires this structure to define how Simulink signal values are mapped in the
shared memory. It also uses this structure to determine the total size and address
of the shared memory.
Ports
Input
-
Data
Data to write to the IO901/IO902 according to the partition
structure.
Parameters
-
Module ID
The Module ID has two functions:
It defines the logical connection between the Setup block and its I/O
blocks
It also informs the auto-search feature of the PCI Slot parameter. If
only one I/O module of this type is installed, the Module ID must be set
to 1. If n modules are installed, it
must be in the range 1:n. Not all the I/O modules installed in the
target machine need to be used. To see how each I/O module maps to a
Module ID, use this Speedgoat API:
speedgoat.getIoInterfaces("TargetName", "mySpeedgoat")
-
Partition Struct
Enter the name of the predefined shared memory partition structure.
The block uses this structure to specify how Simulink signal values are
mapped in the shared memory.
-
Sample Time
Defines the base sample time at which this driver block gets its sample hit. This
parameter can also be set to -1 for inherited
sample time. The units are in seconds.
-
PCI Slot (-1: auto-search)
There are two approaches for mapping this block to a specific I/O module installed
in your target machine. All modules of the same type must be configured using the
same method.
Auto-Search: with the default value -1 the I/O module will be automatically located in the
target machine. If you have multiple modules of the same kind, the
Module ID defines which module is associated with this block. To see how
each I/O module maps to a Module ID, use this Speedgoat API:
speedgoat.getIoInterfaces("TargetName", "mySpeedgoat")
Explicit Addressing: to explicitly define the logical address of the
I/O module in the target machine, you can provide the PCI bus and slot
numbers as a vector: [bus, slot]. To determine these numbers, run the
following command in the MATLAB command window:
speedgoat.getIoInterfaces("TargetName", "mySpeedgoat", "Advanced", true)Note
that the PCI address can change whenever an I/O module is added or
removed – usually, auto-search is the best option.