برای مشاهده روند ساخت پروژه ها و محصولات به کانال تلگرام ما بپیوندید           
  خانه محصولات دانلود پروژه ها بحث و گفتگو وبلاگ آموزشها و مقالات تماس با ما  

ISP Server Guard &
                                                       Behzad TCP/IP Module .

 

بالاخره بعد از مدتی که شروع به کار روی این پروژه کردم طرح کامل شد . خیلی وقته که روی این طرح کار میکردم ولی کارهای جانبی دیگه مثل ساخت GSM و CallerID و چند طرح دیگه نمیگذاشت که این طرح که برام خیلی جالب بود سریع پیش بره . به هر صورت توی هفته گذشته اکثر وقتم رو گرفت ولی بالاخره کامل شد .

اما در مورد پروژه : مدتی قبل یکی از دوستان پیشنهاد ساخت یک سیستم محافظ سرور دادند هدف این بود که دستگاهی ساخته بشه که کند شدن یا هنگ کردن سرور رو تشخیص بده و سرور یا مودم رو ریستارت کنه . طرز کار هم به این صورت تعیین شد که دستگاه باید سرور رو هر چند ثانیه Ping کنه و در صورت بالا رفتن زمان دریافت پاسخ سرور رو ریستارت کنه . این طرح باعث شد که به فکر طرح یک سیستم کامل برای ارتباط دادن میکروکنترلر با پروتکلهای مختلف شبکه بیفتم با اینکار علاوه بر این طرح کاربردهای بسیار دیگه ای هم میشد با این سیستم انجام داد . توی شروع کار چند نمونه خارجی از Firmware های مربوط به ارتباط میکرو با شبکه رو دیدم زیادی پیچیده بودن اصلا باهاشون راحت نبودم حجم زیاد کدها سر در آوردن ازشون رو مشکل میکرد . به این فکر میکردم که بعدها اگه بخام تغییری توی کدها بدم کارم خیلی مشکل میشه . برخی از این کدها هم خیلی پر حجم بودن و تقریبا تمام حجم حافظه میکرو رو میگرفتن و یا حتی فقط روی میکرویی با حداقل 4 کیلوبایت حافظه (Atmega64) قابل اجرا بودن . به هر حال علاقه زیادی داشتم که خودم تمام برنامه رو بنویسم و پروتکلهای زیر بنایی شبکه رو تجربه کنم . البته اصلا کار ساده ای نبود !

بعد از مدتی کار طرح کامل شد. سیستم شامل یک میکرو AVR هستش که از طریق یک بورد رابط شبکه که طراحی کردم با استفاده از آی سی RTL8019AS قادر بود با یک شبکه LAN ارتباط برقرار کنه . برای اینکار پروتکلهای زیربنایی شبکه رو به زبان C و توسط کامپایلر CodevisionAVR پیاده سازی کردم . پروتکلها از ابتدایی ترین روتینهای مربوط به راه اندازی درایور شبکه تا پردازش پکتهای ورودی پاسخ به درخواست ARP و تا پروتکلهای پیچیده تری مثل TCP رو توی برنامه پیاده سازی کردم . برنامه خیلی کوچکتر از نمونه های مشابه ساده تر شخصی تر و سریعتر بود (پاسخ Ping با یک کریستال 14 مگاهرتزی زیر یک میلی ثانیه بود ) .

  مشخصات Firmware نوشته شده برای شبکه تا بحال :

  • ARP ( Send and  Request ) , ICMP (Send and Request) , UDP , TCP , SMTP , HTTP
  • بروز رسانی ARP Cache با ارسال ARP یا در حین دریافت packet جدید .
  • انتقال خودکار پکتهای خارج از شبکه به روتر .
  • حجم کم و قابلیت اجرا شدن حتی روی یک میکرو ATmega8 .
  • پشتیبانی از GET و POST در HTTP .
  • تشخیص خطاهای HTTP 404 و HTTP 400 و HTTP 501 .
  • ارسال تصاویر استفاده شده در صفحات HTML به صورت داخلی (نرم افزاری برای تبدیل عکس به آرایه مورد نیاز در این بخش نوشته شد).

اما در نهایت سیستم مورد نیاز اولیه برای تشخیص کند شدن یا هنگ کردن سرور هم حاظر شد این سیستم با استفاده از Firmware نوشته شده که توضیحات اولیه اونرو دارم کار میکنه و در صورت بالا رفتن زمان پاسخ Ping سرور (که IP اون توی رابط HTML برنامه تعیین میشه) رله ای رو فعال میکنه تا سرور ریستارت بشه و همچنین به شماره ای که برای سیستم تعریف شده تماس میگیره (با سیستم شماره گیری تن که توی بخش پروژه های آموزشی هست) و آلارم یا پیغامی رو پخش میکنه . تمامی تنظیمات دستگاه از طریق یک رابط HTML انجام میشه به این صورت که IP پیش فرض سیستم (یا IP دلخواه کاربر بعد از انجام تنظیمات) توی یک مرورگر وارد میشه , دستگاه به عنوان یک WebServer عمل میکنه و یک صفحه HTML رو به مرورگر میفرسته تا کاربر تغییرات رو اعمال کنه و در نهایت باز صفحه به دستگاه  ارسال (با متد POST) میشه و دستگاه تنظیمات کاربر رو توی خودش ذخیره میکنه ( مثل صفحه رابط WAP یا برخی مودمهای ADSL یا Router ). اسم این سیستم Server GUARD در نظر گرفته شد .


HTML ذخیره شده روی میکرو توی IE باز شده و تنظیمات رو نمایش میده تا کاربر در صورت نیاز اونها رو تغییر بده .

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

 

  لیست قیمت (تک فروشی) :

  •  قیمت این سیستم با کارکرد نوشته شده (محافظ سرور) 80 هزار تومان میباشد .
 

انجام این پروژه به معنی توانایی (تکنولوژی تولید شده) ما در ارتباط میکروکنترلر با شبکه میباشد .

کاربردهای بسیار دیگری نیز میتواند به این نحو مطرح شود مانند ارتباط چندین تابلو برق یا PLC تحت یک شبکه LAN یا اتصال سایر دستگاههایی که نیاز به چک شدن یا ارسال و دریافت اطلاعات از طریق شبکه LAN را دارند مانند سیستمهای حظور و غیاب و یا سیستمهای امنیتی دوربین دار .

در صورتی که ایده ای برای استفاده از این سیستم دارید با کمال میل قادر به اعمال ایده شما هستم .
 


عکسهای درایور اولیه ساخته شده این عکسها تنها بخش رابط شبکه بوده و سیستم پروسسور و ... جداگانه میباشد .

پاسخ به Ping بعد از طراحی کنترلر و Firmware شبکه .

 


Designer And Programmer : Behzad khazama
Coded With ASP.NET
تمامي حقوق مادي و معنوي مطالب متعلق به اين سايت ميباشد .
هر گونه استفاده از مطالب اين سايت تنها با ذکر منبع بلامانع ميباشد
.
www.khazama.com
Tel : 051-44641597 - 09363677001 - 09155714862
Support SMS Center: 09363677100