شبیه‌سازی شبکه‌های بی سیم و کامپیوتری
شبیه سازی تخصصی شبکه‌های بی سیم و کامپیوتری مقاطع کارشناسی تا دکترا
  • شبیه سازی تخصصی شبکه‌های بی سیم و کامپیوتری مقاطع کارشناسی تا دکترا

مشخصات بلاگ
شبیه‌سازی شبکه‌های بی سیم و کامپیوتری

امکان سفارش، شبیه سازی مقاله و پایان نامه وجود دارد،
مطالب، با ذکر منبع قابل انتشار در سایت ها و وبلاگ ها و.. می باشد.
جهت دریافت مشاوره رایگان تماس بگیرید:

شماره تماس: 09147082079-0098
آیدی تلگرامی:https://t.me/MuosSA_NbO
جی میل :mo30no@gmail.com

تمامی کدهای این وبلاگ در حال حاضر به زبان متلب می باشد

«آنچه می‌دانیم ناچیز و آنچه نمی‌دانیم عظیم و وسیع است»
$$پیر سیمون لاپلاس$$

چهارشنبه, ۶ آذر ۱۳۹۸، ۰۵:۴۳ ب.ظ

تابع پیش ساخته inpolygon

این تابع کاربرد وسیعی در شبکه‌های بی‌سیم دارد،  و برای تشخیص وجود نقاط درون یا روی یک چند ضلعی مورد استفاده قرار می‌گیرد، در زیر یک تکه کد برای آشنایی بیشتر با این تابع به همراه توضیحات خط به خط آورده شده است...

 

side=18;     % side number of polygon
L = linspace(0,2.*pi,side+1); %Linearly spaced vector
xv = cos(L)'; % x aspect of polygon
yv = sin(L)';% y aspect of polygon
xq = randn(250,1);%x aspect of point vector
yq = randn(250,1);%y aspect of point vector
[in,on] = inpolygon(xq,yq,xv,yv);  % used for detection of Points located inside or on edge of polygonal region

figure

plot(xv,yv) % polygon
axis equal

hold on
plot(xq(in),yq(in),'r+') % points inside
plot(xq(~in),yq(~in),'bo') % points outside
hold off

خروجی اجرای این اسکریپت:

۰ نظر موافقین ۰ مخالفین ۰ ۰۶ آذر ۹۸ ، ۱۷:۴۳
موسی حسن زاده
چهارشنبه, ۶ آذر ۱۳۹۸، ۱۲:۵۸ ق.ظ

فیلم شبیه‌سازی اینترنت اشیا

تو این فیلم یک خانه هوشمند شبیه‌سازی شده که در آن سه نفر در حال رفت و امد در محوطه و داخل خانه هستند، درها از طریق سنسور‌های حسگر حضور افراد باز و بسته می‌شند، هنگام ورود افراد به اتاق سنسورها حضور ان ها را حس کرده و به واحدی مرکزی اطلاع می‌دند  و واحد مرکزی بسته به شرایط  دستور روشن کردن چراغ اتاق را صادر می‌کند، در عین حال به شکل تصادفی از یک تا سه جا نشتی گاز رخ می‌ده یا ممکن اصلا نشتی رخ نده، ولی اگر نشتی داشته باشیم، سنسورهای حسگر آن را به واحد مرکزی گزارش می‌کنند، واحد مرکزی هم ابتدا گاز  و برق  را قطع کرده و سپس پنجره‌ها را روشن می‌کنند، در این شرایط حتی اگر افراد به داخل اتاق وارد شوند چراغ ها  روشن نمی شوند.. در زیر فیلم کوتاهی از ان شبیه‌سازی سه بعدی را می‌توانید مشاهده کنید...

 

۰ نظر موافقین ۰ مخالفین ۰ ۰۶ آذر ۹۸ ، ۰۰:۵۸
موسی حسن زاده

فیلم اجرای الگوریتم کوتاهترین مسیر در شبکه بی سیم سه بعدی با استفاده از تابع getNearstDest3D(توابعی که معرفی می کنم در خود متلب نیست...)

 

۱ نظر موافقین ۰ مخالفین ۰ ۰۴ آذر ۹۸ ، ۲۱:۰۳
موسی حسن زاده
دوشنبه, ۴ آذر ۱۳۹۸، ۰۴:۳۴ ب.ظ

تابع کوتاهترین مسیر، getNearstDest2D

این تابع دارای چهار ورودی و چهار خروجی هست، ورودی اول  ایدی نودهای مقصد(مثلا سرخوشه) ورودی دوم ایدی نودهای مبدا(مثلا نودهای عادی که قرار از بین سرخوشه های یکی را انتخاب کنند، ورودی سوم فلق isplot( ایا مسیر بین مبدا و مقصدها رسم شود) ، ورودی چهارمisfigur ( ایا فرم جدیدی باز شود یا نه؟) خروجی اول unDestInd( مجموعه نودهای مقصد منتخب یونیک)، خروجی دوم gridDist( ماتریس فاصله بین نودهای مبدا و مقصد،  خروجی سوم selctedDest( بردار ایدی  مجموعه نودهای مقصد منتخب  غیر یونیک  ) خروجی چهارم selctedDict( کمترین فواصل انتخاب شده بین نودهای مبداء و مقصد).

%%caaling script
% find nearst dest point(source vector) from source point
%   sourcPos.x=randi([-100,100],1,100);
%   sourcPos.y=randi([-100,100],1,100);
 
% 
%   destPos.x=randi([-100,100],1,30);
%   destPos.y=randi([-100,100],1,30);
 
%   [unDestInd, gridDist,selctedDest,selctedDict]=getNearstDest2D(destPos, sourcPos,1,1);


%%


function  [unDestInd, gridDist,selctedDest,selctedDict]=getNearstDest2D(destPos, sourcPos,isplot,isFig)
gridDist=pdist2D(sourcPos,destPos  );%distance between all nodes with grid center points
[selctedDict,selctedDest]=min(gridDist,[],2);% here we used an simple algorithm to determine each node in network is belong to which cell in grid network
unDestInd=  unique(selctedDest);% if we unique the number of centers that are selected  by normal nodes, based on minimum distance, in reality we get the number coverage area
if nargin >=3
    if isplot==1
        if isFig
            figure;
        end
            plot( sourcPos.x, sourcPos.y,'ro') ;hold on
            plot( destPos.x ,destPos.y,'gd') ;hold on
            plot([sourcPos.x;destPos.x(selctedDest')] ,[sourcPos.y;destPos.y(selctedDest')],'k-');hold on;
    else
    end
end
end

 
% gridDist=pdist2D(sourcPos  );%distance between all nodes with destnation nodes
% gridDist=pdist2D(sourcPos,destPos  );%distance between all nodes within a vector
function gridDist=pdist2D(s, d   )

if nargin==1
    xTs=s.x' * ones(1,length(s.x) );
    yTs=s.y' * ones(1,length(s.y) );
 
    xTd=ones(1,length(s.x) )' * s.x  ;
    yTd=ones(1,length(s.y) )' * s.x  ;
 
    gridDist=sqrt((xTs - xTd ).^2 +(yTs - yTd ).^2 );
    
else
    
    
    xTs=s.x' * ones(1,length(d.x) );
    yTs=s.y' * ones(1,length(d.y) );

    xTd=ones(1,length(s.x) )' * d.x  ;
    yTd=ones(1,length(s.y) )' * d.y  ;

    gridDist=sqrt((xTs - xTd ).^2 +(yTs - yTd ).^2 );

end
end





نمونه خروجی این تابع

 

۰ نظر موافقین ۰ مخالفین ۰ ۰۴ آذر ۹۸ ، ۱۶:۳۴
موسی حسن زاده