IApi.FoeReadFileToBuffer method
Reads the servo drive's file and saves it in the user application's memory space.
Namespace: IntervalZero.KINGSTAR.Base.ApiAssembly: IntervalZero.KINGSTAR.Base.Api (in IntervalZero.KINGSTAR.Base.dll) Version: 4.4.0.0
Syntax
KsCommandStatus FoeReadFileToBuffer(
int SlaveId,
bool BootState,
string Name,
uint Password
)
Function FoeReadFileToBuffer(
SlaveId As Integer,
BootState As Boolean,
Name As String,
Password As UInteger
) As KsCommandStatus
Parameters
SlaveId
Type: int
The index of a slave array. When EtherCAT is started, this index has the same value as the SlaveId, which corresponds to the position of the slave in the network. Please note that after EtherCAT is started in the Operational (Op) state, any addition or removal of slaves from the network will change the position of the slaves in the network (SlaveId). Nevertheless, the index of the slave will remain the same. Newly added devices will be added in the back of the slave array. For all slaves after the change, the index and SlaveId will no longer match. This behavior is only available for physical devices; simulated devices are inapplicable. Please refer to the use cases in EnableHotConnect for more details.
BootState
Type: bool
Determines whether the EtherCAT slave is to be in the Bootstrap (Boot) state to use FoE. The Boot state can be used to update firmware or configure the slave settings.
true: Boot state.
false: Normal state.
Name
Type: string
The file name to read from the device.
Password
Type: uint
If the device requires a password to access the file, you need to specify the password here. Zero means there is no password.
Return value
Type: KsCommandStatus
Returns the KsCommandStatus class.
Remarks
- When the EtherCAT link starts properly, the slave's state is Init -> PreOp -> SafeOp -> Op. If the slave is in Op and you use this function with the BootState set to true, the slave's state will become Op -> Init -> Boot. After the task is done, its state becomes Init -> PreOp -> SafeOp -> Op again.
- This method can only be used from RTX64 as pointers. It cannot be shared between RTX64 and Windows.
Usable EtherCAT states
ecatBoot, ecatPreOP, ecatSafeOP, ecatOP
Examples
N/A
See also