scheduleAction
Download Required: To use scheduleAction
,
first download the Communications Toolbox Wireless Network Simulation Library add-on.
Syntax
Description
scheduleAction(
schedules an action to perform during the wireless network simulation. The
networkSimulator
,callbackFcn
,userData
,startTime
)callbackFcn
argument specifies the action to be performed at the
specified time, startTime
, and userData
specifies
the input data to use for the specified action.
scheduleAction(___,
specifies to repeat the action at regular or irregular time intervals, in addition to all
input arguments from the previous syntax.periodicity
)
returns an identifier specifying the action scheduled.actionID
= scheduleAction(___)
Examples
Schedule Action to Perform During Network Simulation
Simulate Bluetooth BR Network
Create a wirelessNetworkSimulator
object by using the wirelessNetworkSimulator.init()
function. By default, the wirelessNetworkSimulator
object applies free-space path loss model for the channel effects.
networkSimulator = wirelessNetworkSimulator.init();
Create two Bluetooth BR nodes, one with the "central"
role and other with the "peripheral"
role. Specify the position of the Peripheral node in meters.
centralNode = bluetoothNode("central"); peripheralNode = bluetoothNode("peripheral",Position=[1 0 0]);
Create a default Bluetooth BR connection configuration object to configure and share a connection between Bluetooth BR Central and Peripheral nodes.
cfgConnection = bluetoothConnectionConfig;
Configure connection between the Central and the Peripheral nodes.
connection = configureConnection( ...
cfgConnection,centralNode,peripheralNode);
Create and configure a networkTrafficOnOff
object to generate an On-Off application traffic pattern.
traffic = networkTrafficOnOff( ... DataRate=200, ... PacketSize=27, ... GeneratePacket=true, ... OnTime=inf);
Add application traffic from the Central to the Peripheral node.
addTrafficSource(centralNode,traffic, ...
DestinationNode=peripheralNode);
Add the Central and Peripheral nodes to the wireless network simulator.
addNodes(networkSimulator,[centralNode peripheralNode]);
Schedule Action
Create a custom function displayInfo
to define the actions for the simulator to perform during simulation. You can define an one time action, periodic action, and action when simulator advances in time. The input data for the custom function is stored as a structure and passed using the scheduleAction
function.
A) Schedule One Time Action
For the one time action, the displayInfo
function displays the details of the nodes in the network.
Specify the ActionType
input argument value of displayInfo
function as "OneTime"
. Specify the names of the nodes in the network as input to displayInfo
function.
userdata = struct( ... ActionType="OneTime", ... Nodes=[centralNode peripheralNode]);
Configure the simulator by using the scheduleAction
function to display the node details when the simulation time is 0.001s.
startTime = 0.001; scheduleAction(networkSimulator,@displayInfo,userdata,startTime);
B) Schedule Periodic Action
For the periodic action, the displayInfo
function displays the physical layer statistics of the central node in the Bluetooth BR network.
Specify the ActionType
input argument value of displayInfo
function as "Periodic"
. Specify the central node and the simulator as inputs to displayInfo
function.
userdata = struct( ... ActionType="Periodic", ... CentralNode=centralNode, ... Simulator=networkSimulator);
Configure the simulator by using the scheduleAction
function to display the physical layer statistics of the central node at a time interval of 0.02s starting from the beginning of the simulation.
startTime = 0;
periodicity = 0.02;
scheduleAction( ...
networkSimulator,@displayInfo,userdata,startTime,periodicity);
C) Schedule Action When Simulator Advances in Time
When the simulator advances in time, the displayInfo
function displays the next event time of the simulator.
Specify the ActionType
input argument value of displayInfo
function as "TimeAdvance"
. Specify the simulator as input to the displayInfo
function.
userdata = struct( ... ActionType="TimeAdvance", ... Simulator=networkSimulator);
Set the periodicity value to 0. Configure the simulator by using the scheduleAction
function to display the time of the next event.
startTime = 0;
periodicity = 0;
scheduleAction( ...
networkSimulator,@displayInfo,userdata,startTime,periodicity);
Run Simulation
Specify the simulation time in seconds.
simulationTime = 0.05;
Run the simulation for the specified simulation time.
run(networkSimulator,simulationTime);
-------Periodic Action ------- Statistics of Node1 at time 0.000 seconds: ReceivedPackets: 0 DecodeFailures: 0 PacketCollisions: 0 CoChannelCollisions: 0 CollisionsWithBREDR: 0 CollisionsWithNonBREDR: 0 CollisionsWithBREDRAndNonBREDR: 0 TransmittedPackets: 1 TransmittedBits: 366 -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00037 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00063 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00075 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00100 seconds -------End------- -------One Time Action ------- Node details: Name: Node1 ID: 1 Role: central Name: Node2 ID: 2 Role: peripheral -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00108 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00125 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00162 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00187 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00200 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00216 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00250 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00287 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00313 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00324 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00325 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00375 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00412 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00432 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00438 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00450 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00500 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00537 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00540 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00562 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00575 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00625 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00648 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00662 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00688 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00700 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00750 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00756 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00787 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00813 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00825 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00864 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00875 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00912 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00937 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00950 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.00972 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01000 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01037 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01063 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01075 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01080 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01125 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01162 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01188 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01188 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01200 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01250 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01287 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01296 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01312 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01325 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01375 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01404 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01412 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01438 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01450 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01500 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01512 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01537 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01562 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01575 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01620 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01625 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01662 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01688 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01700 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01728 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01750 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01787 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01812 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01825 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01836 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01875 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01912 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01937 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01944 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.01950 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02000 seconds -------End------- -------Periodic Action ------- Statistics of Node1 at time 0.020 seconds: ReceivedPackets: 16 DecodeFailures: 0 PacketCollisions: 0 CoChannelCollisions: 0 CollisionsWithBREDR: 0 CollisionsWithNonBREDR: 0 CollisionsWithBREDRAndNonBREDR: 0 TransmittedPackets: 17 TransmittedBits: 6222 -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02037 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02052 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02063 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02075 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02125 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02160 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02162 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02187 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02200 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02250 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02268 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02287 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02312 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02325 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02375 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02376 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02412 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02438 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02450 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02484 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02500 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02537 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02562 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02575 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02592 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02625 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02662 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02687 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02700 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02700 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02750 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02787 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02808 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02813 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02825 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02875 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02912 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02916 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02937 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.02950 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03000 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03024 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03037 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03062 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03075 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03125 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03132 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03162 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03188 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03200 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03240 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03250 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03287 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03313 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03325 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03348 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03375 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03412 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03438 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03450 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03456 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03500 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03537 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03562 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03564 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03575 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03625 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03662 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03672 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03687 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03700 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03750 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03780 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03787 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03812 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03825 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03875 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03888 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03912 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03938 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03950 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.03996 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04000 seconds -------End------- -------Periodic Action ------- Statistics of Node1 at time 0.040 seconds: ReceivedPackets: 32 DecodeFailures: 0 PacketCollisions: 0 CoChannelCollisions: 0 CollisionsWithBREDR: 0 CollisionsWithNonBREDR: 0 CollisionsWithBREDRAndNonBREDR: 0 TransmittedPackets: 33 TransmittedBits: 12078 -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04037 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04063 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04075 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04104 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04125 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04162 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04188 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04200 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04212 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04250 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04287 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04312 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04320 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04325 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04375 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04412 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04428 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04437 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04450 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04500 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04536 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04537 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04562 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04575 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04625 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04644 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04662 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04688 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04700 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04750 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04752 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04787 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04813 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04825 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04860 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04875 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04912 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04938 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04950 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.04968 seconds -------End------- -------Action When Simulator Advances in Time------- Simulator next event time is at 0.05000 seconds -------End-------
function displayInfo(~,userdata) switch(userdata.ActionType) case "Periodic" fprintf("-------Periodic Action -------\n") fprintf("Statistics of %s at time %.3f seconds:\n", ... userdata.CentralNode.Name, ... userdata.Simulator.CurrentTime); stats = statistics(userdata.CentralNode); disp(stats.PHY) fprintf("-------End-------\n") case "OneTime" fprintf("-------One Time Action -------\n") fprintf("Node details:\n") for idx=1:numel(userdata.Nodes) fprintf("Name: %s ID: %d Role: %s\n", ... userdata.Nodes(idx).Name, ... userdata.Nodes(idx).ID, ... userdata.Nodes(idx).Role) end fprintf("-------End-------\n") case "TimeAdvance" fprintf("-------Action When Simulator Advances in Time-------\n") fprintf("Simulator next event time is at %.5f seconds\n", ... userdata.Simulator.CurrentTime) fprintf("-------End-------\n") end end
Input Arguments
networkSimulator
— Wireless network simulator
wirelessNetworkSimulator
object
Wireless network simulator, specified as a wirelessNetworkSimulator
object.
callbackFcn
— Callback function to run at specified time
function handle
Callback function to run at the specified time, specified as a function handle. The callback function is a custom function defining an action to be performed during the wireless network simulation. The syntax for the callback function must be:
callbackFcn(actionID,userData)
userData
— Input to callback function
[ ]
| structure | cell array | numeric value | character vector | string scalar
Input to the callback function, specified as a numeric value, character vector, or
string scalar. If the callback function does not require any input, specify the
userData
value as [ ]
. To pass multiple values
as input to the callback function, specify the input as a structure or a cell
array.
startTime
— Absolute simulation time to perform the action
nonnegative scalar
Absolute simulation time at which a scheduled action is to be performed, specified as a nonnegative scalar. Units are in seconds.
If you specify the simulation time as zero, the simulator performs the scheduled action at the start of simulation.
If you specify both
startTime
andperiodicity
, the simulator performs the scheduled action at the specified simulation time and repeats the action until the end of simulation. The time interval for repeating the action is specified by the periodic time inperiodicity
.
periodicity
— Periodic time
nonnegative scalar
Periodic time, specified as a nonnegative scalar. The periodic time is the time interval at which the scheduled action repeats. Units are in seconds.
For periodic actions, the periodicity value must be greater than zero.
If the periodic time value is 0, the scheduled action is performed whenever the simulator advances in time in response to an event. The events can occur at regular or irregular time intervals. In this case, the simulator ignores the value of
startTime
.
Output Arguments
actionID
— Unique identifier for action
integer
Unique identifier for action, returned as an integer. You can also use this value to
cancel a scheduled action by using the cancelAction
function.
Version History
Introduced in R2022bR2023a: Moved to Communications Toolbox Wireless Network Simulation Library from Bluetooth Toolbox
Previously, this wirelessNetworkSimulator
object function required Bluetooth® Toolbox.
See Also
Objects
Functions
Topics
- Create, Configure, and Simulate Bluetooth BR/EDR Piconet (Bluetooth Toolbox)
- Bluetooth BR/EDR Data and Voice Communication with WLAN Signal Interference (Bluetooth Toolbox)
- Simulate Multiple Bluetooth BR/EDR Piconets with ACL Traffic (Bluetooth Toolbox)
Beispiel öffnen
Sie haben eine geänderte Version dieses Beispiels. Möchten Sie dieses Beispiel mit Ihren Änderungen öffnen?
MATLAB-Befehl
Sie haben auf einen Link geklickt, der diesem MATLAB-Befehl entspricht:
Führen Sie den Befehl durch Eingabe in das MATLAB-Befehlsfenster aus. Webbrowser unterstützen keine MATLAB-Befehle.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)