1. برای کسب اطلاعات بیشتر در ساعات 9 الی 13 و 16 الی 18 با شماره 08138270182 یا 08138268809 تماس حاصل فرمایید.
    آدرس ایمیل: info@wsnlab.ir
    آدرس کانال تلگرام http://telegram.me/gloriot
  2. بدین وسیله به اطلاع پژوهشگران محترم می رسانیم که سامانه پیامکی لابراتوار شبکه حسگر بی سیم راه اندازی شد. از این پس می توانید با ثبت شماره تلفن همراه خود از اطلاعیه ها و اخبار پژوهشی لابراتوار آگاه شوید.
    ضمناً آگاهی از کلیه اطلاعات نحوه ارایه خدمات به شما دوستان نیز از طریق همین سامانه امکان پذیر است.
    شماره سامانه: 30001818270182

تغییر قابلیت و ساختار نودها در omnet

شروع موضوع توسط mansoor52 30/5/14 در انجمن شبیه ساز OMNET

تلفن سفارش: 08138311237 تلفن سفارش: 08138311237
  1. mansoor52 کاربر تازه وارد

    تاریخ عضویت:
    11/4/14
    تعداد ارسال ها:
    9
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    با سلام
    من یه سوالی دارم که اگر راهنماییم کنید ممنون میشم. در شبیه سازی من سه نوع نود وجود داره که هر کدوم کارهای خاصی انجام میدن و بنابراین ساختار متفاوتی دارند. یعنی هرکدوم شامل ماژول های متفاوتی هستند که این ماژول ها با همکاری همدیگه قابلیت های اون نود رو پیاده سازی می کنند. اما این امکان وجود داره که مثلا یک نود خاصی که الان سرخوشه است چند لحظه بعد یک نود معمولی بشه و یک نود معمولی به جای اون به عنوان سرخوشه انتخاب بشه. با توجه به اینکه در شبیه سازی من، نودهای سرخوشه دارای ماژول های متفاوت و نودهای معمولی هم ماژول های متفاوتی دارند حالا سوالم اینه که وقتی مثلا یک نود معمولی میخواد سرخوشه بشه چگونه میتونم کاری بکنم که دارای ساختار سرخوشه بشه و درنتیجه قابلیت های اون رو داشته باشه؟ من در خیلی از مقالات دیدم که انواع مختلف نودها وجود داره و یک نود در یک لحظه قابلیت های خاصی داره و در لحظه دیگه ای قابلیت هاش و ساختارش عوض میشه. میشه در شبیه سازی با اومنت این کارو انجام داد؟
    شاید من کار اشتباهی کردم و باید فقط یک نوع نود ایجاد کنم و و قابلیت های همه نودها رو در همون نود و در متدهای متفاوتی بذارم و بعد بسته به اینکه چه نوع نودی هستند متدهای موردنیازشان رو فراخوانی کنم. این کار درست تره؟ اگر راهنماییم کنید خیلی ممنون میشم.
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  2. مشاوره، آموزش و پیاده سازی پروژه های شبکه های موردی، شبکه حسگر بی سیم و انواع شبکه های کامپیوتری . برای کسب اطلاعات بیشتر با شماره 08138270182 تماس بگیرید. .
  3. مهندس_میلاد مدیر انجمن

    تاریخ عضویت:
    23/9/13
    تعداد ارسال ها:
    116
    تشکر شده:
    47
    امتیاز دستاورد:
    28
    تشکر میکنم ازینکه تاپیک جدا زدی واسه سوالت

    Scenario Manager!
    با استفاده از این ماژول و قابلیت هایی که بهت میده، میتونی در زمان های مشخص شده, پارامتر های مشخص شده رو تغییر مقدار بدی
    مثلا یه پارامتر میذاری واسه نود: "نوع نود".
    بعد قابلیت هایی که هر نود داره، بسته به مقداری که برای پارامتر "نوع نود" تعیین شده، عمل می کنه!
    بعد، با استفاده از سناریو منجر، می تونی تعیین کنی مثلا تو «زمان شبیه سازی» خاصی، مقدار این پارامتر عوض شه!
    البته یه نکته ای هستا، می تونی با استفاده از کد های ++C هم هرکاری دلت می خواد انجام بدی
    هــــــــــــــر کاری!
    mansoor52 likes this.
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  4. mansoor52 کاربر تازه وارد

    تاریخ عضویت:
    11/4/14
    تعداد ارسال ها:
    9
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    خیلی ممنون فقط این ماژول که میگید کجا هست؟ درآینت؟
    یعنی میونم یک ماژول ساده برای سرخوشه تعریف کنم و رفتارش رو درفایل سی پلاس پلاس براش بنویسم بعد یک ماژول ساده دیگه برای نود عضو تعریف کنم و رفتارش رو دریک فایل سی پلاس پلاس جداگونه بنویسم؟ حالا اگه نود عضوم بخواد سرخوشه بشه بااینکه ماژولش و فایل سی پلاس پلاسش برای عضو هست میشه که تغییر کنه و سرخوشه بشه؟ توضیحاتتون رو فهمیدم اما اصلا نمیدونم چطوری باید اینکارو انجام بدم درباره این ماژول در منوال یا جایی مطلبی هست؟میشه کمی بیشتر دربارش بهم توضیح بدید؟
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  5. مهندس_میلاد مدیر انجمن

    تاریخ عضویت:
    23/9/13
    تعداد ارسال ها:
    116
    تشکر شده:
    47
    امتیاز دستاورد:
    28
    به هر روشی که بخوای می تونی
    روش ساده ش هم اینه که این ماژول رو که تو آی نت هست، به پروژه ت اضافه کنی (به networket) و ازش استفاده کنی
    نحوه استفاده هم به این صورته که یه فایل xml براش می سازی و تو اون فایل با استفاده از tag های خاصی، عملیات دلخواهتو بهش اَمر میدی :)
    mansoor52 likes this.
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  6. مهندس_میلاد مدیر انجمن

    تاریخ عضویت:
    23/9/13
    تعداد ارسال ها:
    116
    تشکر شده:
    47
    امتیاز دستاورد:
    28
    ندیدم تو آموزش های خودش باشه، اما تو مثال های کاربردی ای که داره، میتونین نمونه هاشو ببینین
    تو دایرکتوری inet - examples - mpls - testrerouting رو باز کن
    یه فایلی هست به اسم scenario.xml
    فایل شبکه (.ned) رو باز کن، توش یه ماژول می بینی که اسمش scenariomanager یا یه چی تو همین مایه هاس

    یه جستجو تو فروم ها داشته باشی، اطلاعات کامل دربارش بدست میاری رفیق :)
    mansoor52 likes this.
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  7. مهندس_میلاد مدیر انجمن

    تاریخ عضویت:
    23/9/13
    تعداد ارسال ها:
    116
    تشکر شده:
    47
    امتیاز دستاورد:
    28
    این مثالو ببین
    مهم نیس همه ی جزئیاتشو متوجه شی، مهم همون 4.3 و مقدار دادنِ به پارامتراس


    HTML:
    <scenario>
        <at t="4.3">
             <connect src-module="RA" src-gate="ethg[0]"
                     dest-module="R1" dest-gate="ethg[1]"
                     channel-type="inet.util.ThruputMeteringChannel">
                 <param name="delay" value="0.1us" />
                 <param name="datarate" value="100Mbps" />
                 <param name="thruputDisplayFormat" value='"#N"' />
            </connect>
       </at>
     
    </scenario>
    mansoor52 likes this.
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  8. mansoor52 کاربر تازه وارد

    تاریخ عضویت:
    11/4/14
    تعداد ارسال ها:
    9
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    خیلی ازتون متشکرم. راستش من برنامه نویسیم بد نیست اما این مثالو متوجه نمیشم. میشه کمی توضیح بدید؟ ببخشید که وقتتون رو میگیرم
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  9. مهندس_میلاد مدیر انجمن

    تاریخ عضویت:
    23/9/13
    تعداد ارسال ها:
    116
    تشکر شده:
    47
    امتیاز دستاورد:
    28
    نه خواهش می کنم
    ببین، الان مثلا بخوای پارامتر ماژولت رو تغییر بدی، کافیه جلو param name اسم پارامترتو بنویسی و جلو value مقدارشو!
    مقداری که می خوای تو زمان 4.3 از شبیه سازی، واسه این پارامتر در نظر بگیری ها!

    html کار کردی؟
    tag می دونی چیه که!
    اینجا واسه مدیریت scenario manager باید از یه فایل xml که مثل فایل ini واسه مدیریت بکار میره، استفاده کنی
    قالب دستور دادن تو این فایل هم به صورت Tag هست که تو مثال بالا هم دیدی یه نمونه شو
    حالا شما تو کارِ فعلیت، فقط نیاز داری یه پارامتر رو مقدار بدی تو زمان های متفاوت
    مثلا می گی تو زمان 3، مقدار پارامتر رو بذار «الف»
    تو زمان 4 مقدار پارامتر رو بذار «ب»
    و و و
    واسه 3 و 4 نوعی ای که داریم، باید دو تا tag جدا بنویسی (ینی دو تا مثل مثال بالا)
    HTML:
    <scenario>
        <at t="3">
                <param name="Node_Type" value="A" />
        </at>
     
      <at t="4">
                <param name="Node_Type" value="B" />
        </at>
     
    </scenario>
    mansoor52 likes this.
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  10. mansoor52 کاربر تازه وارد

    تاریخ عضویت:
    11/4/14
    تعداد ارسال ها:
    9
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    پس باید توی تعریف نودهام در فایل NED، یک پارامتر نوع نود بذارم و بعد مقدارش رو اینطوری در این فایل تغییر بدم؟ هیچ کار دیگه ای لازم نیست بکنم؟ خوب من زمان تغییر نودهام از قبل مشخص نیست و در طی اجرا مشخص میشه یعنی مثلا وقتی انرژی سرخوشه کم میشه نود عضومیشه. اینو باید چیکار کنم؟
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  11. مهندس_میلاد مدیر انجمن

    تاریخ عضویت:
    23/9/13
    تعداد ارسال ها:
    116
    تشکر شده:
    47
    امتیاز دستاورد:
    28
    وقتی تو کُد تعیین می شه که کِی باید مقدار پارامتر تغییرکنه که کار ساده تره
    تو همون کُد به پارامترا مقدار بده!
    پارامتر هم یه متغیره دیگه! هرجا خواستی بهش مقدار بده!
    mansoor52 likes this.
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  12. mansoor52 کاربر تازه وارد

    تاریخ عضویت:
    11/4/14
    تعداد ارسال ها:
    9
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    منظورتون اینه که میشه به جای اینکه در این فایل xml به پارامترها مقدار بدم در کد سی پلاس پلاس اون ماژول این کارو بکنم؟ فکر می کردم این ماژول سناریومنیجر فقط درصورتی عمل میکنه که در فایل xml پارامترهاش رو مقدار بدیم. خیلی خیلی ممنونم از راهنمایی هاتون
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  13. مهندس_میلاد مدیر انجمن

    تاریخ عضویت:
    23/9/13
    تعداد ارسال ها:
    116
    تشکر شده:
    47
    امتیاز دستاورد:
    28
    نخیر!
    در اون شرایطی که شما فرمودی، اصلا نیازی به استفاده از ماژول Scenario manager نیست!
    شما می تونی تو کدِ ماژول های پروژه ت این کار (تغییر مقدار پارامترا) رو انجام بدی
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  14. mansoor52 کاربر تازه وارد

    تاریخ عضویت:
    11/4/14
    تعداد ارسال ها:
    9
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    میدونم چطوری میشه به پارامتر مقدار داد اما آخه ماژول سرخوشه هم ماژولش (یعنی فایل NED اون) و هم فایل سی پلاس پلاسش (الگوریتمش) یه چیزه و ماژول های عضو یک ماژول جداگانه (یعنی یک فایل NED جداگانه و متفاوت) دارند. حالا نود سرخوشه وقتی انرژیش کم میشه چطوری با تغییر یک پارامتر نود عضو میشه یعنی نمیفهمم که چطوری به قابلیت ها و کد اون ماژول عضو دسترسی پیدا میکنه. نمیدونم تونستم درست منظورمو توضیح بدم یانه؟ مثلا فرض کنید بخواهیم روترهایمان که نمونه هایی از نوع ماژول روتر هستند نود معمولی بشن و دیگه کارهای روتر رو انجام ندن.
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  15. مهندس_میلاد مدیر انجمن

    تاریخ عضویت:
    23/9/13
    تعداد ارسال ها:
    116
    تشکر شده:
    47
    امتیاز دستاورد:
    28
    چیزی که به ذهنم می رسه الان (ساعت 2:32 دقیقه صبح :D ) اینه که اینو یه ماژول کنی!
    در واقع بحثمون از اول هم همین بود که یه ماژول داشته باشی که یه پارامتر به اسم «نوع ماژول» داره
    اینکه این ماژول چطوری رفتار کنه، وابسته است به مقدار «نوع ماژول»
    پس ینی شما ماژول عضو و یا سرخوشه نداری! شما یه ماژولِ تک داری که هم می تونه عضو باشه و هم سرخوشه!
    mansoor52 likes this.
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  16. mansoor52 کاربر تازه وارد

    تاریخ عضویت:
    11/4/14
    تعداد ارسال ها:
    9
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    بله متشکرم
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  17. مهندس_میلاد مدیر انجمن

    تاریخ عضویت:
    23/9/13
    تعداد ارسال ها:
    116
    تشکر شده:
    47
    امتیاز دستاورد:
    28
    خواهش می کنم
    امیدوارم تونسته باشم کمکت کرده باشم
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  18. davoody کاربر تازه وارد

    تاریخ عضویت:
    5/12/16
    تعداد ارسال ها:
    2
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    با سلام
    می خواهم در برنامه تیک تاک که دو گره به همدیگر پیام ارسال می کند را به صورت بی سیم انجام دهم . در مورد کد آن می توانید کمک کنید که چه طور کد رو تغییر بدم.
    با تشکر
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  19. مهندس_میلاد مدیر انجمن

    تاریخ عضویت:
    23/9/13
    تعداد ارسال ها:
    116
    تشکر شده:
    47
    امتیاز دستاورد:
    28
    در مورد INet Framework مطالعه کنید.
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.
  20. davoody کاربر تازه وارد

    تاریخ عضویت:
    5/12/16
    تعداد ارسال ها:
    2
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    متشکرم
    لطفاً انجمن را به دوستان خود معرفی نمایید تا محیطی پویا تر داشته باشیم.

به اشتراک بگذارید