⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 controller_init.m

📁 用于网络控制系统仿真
💻 M
字号:
function controller_init% Distributed control system: controller node%% Receives messages from the sensor node, computes control signal% and sends it back to the actuator node.% Initialize TrueTime kernelttInitKernel(1, 0, 'prioFP'); % nbrOfInputs, nbrOfOutputs, fixed priorityttSetKernelParameter('energyconsumption', 0.010); %10 mW% Create mailboxesttCreateMailbox('sensor_signal', 10)ttCreateMailbox('power_ping', 10)ttCreateMailbox('power_response', 10)% Controller parametersh = 0.010;N = 100000;Td = 0.035;K = 1.5;% Create task data (local memory)data.u = 0.0;data.K = K; data.ad = Td/(N*h+Td);data.bd = N*K*Td/(N*h+Td);data.Dold = 0.0;data.yold = 0.0;% Create controller taskdeadline = h;prio = 1;ttCreateTask('pid_task', deadline, prio, 'ctrlcode', data);% Create power controller taskoffset = 2;period = 0.025;prio = 2;power_data.transmitPower = 20;power_data.name = 2;     % We are node number 2 in the networkpower_data.receiver = 1; % We are communicating with node 1power_data.haverun = 0;  % We have not run yetttCreatePeriodicTask('power_controller_task', offset, period, prio, 'powctrlcode', power_data);% Create power response taskdeadline = 100;prio = 3;ttCreateTask('power_response_task', deadline, prio, 'powrespcode');% Initialize networkttCreateInterruptHandler('nw_handler', prio, 'msgRcvCtrl');ttInitNetwork(2, 'nw_handler'); % node #1 in the network

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -