PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : پیاده سازی سرور واقعی با arm9



Division
03-01-2011, 23:57
با سلام

چند وقت پیش پروژه ای رو کار کردم که بعد اتمام پروژه به نتایج جالبی رسیدم می خوام تو این تاپیک این ایده ی جالب و 100% عملی رو مطرحش کنم .

پروژه ای که من روش کار کردم به این صورت بود که باید چند تا دیوایس از طریق شبکه LAN به هم متصل می کردم و تمامی دیوایس باید از طریق یونیت Central Control هدایت می شدن .

همون طور که مشخصه پروژه تقریباً سنگینی هستش .
ولی چه طوری من باید این روش کنترلی خاص رو پیداده می کردم ؟!
که طرف قرارداد واسط گرافیکی خیلی خوب هم ازم می خواست !

اولش روی هسته های ARM7TDMI کار کردم (پلتفرم های ATMEL و NXP ) که تو قسمت واسط گرافیکی کم آوردم :(
تازشم با مشکلاتی از قبیل سرعت پایین، نبود OS واحد، رم پایین و ... مواجه شدم و کلی وقتم هدر رفت !

در ادامه به ناچار هسته ARM926EJ رو انتخاب کردم و روی پلتفرم معروف شرکت یعنی SUMSONG کار رو دوباره از سر گرفتم .
با به کار بردن برد MINI2240 تونستم به حداقل پارمترهایی که نیاز داشتم برسم .
با استفاده از سیستم عامل محبوبم یعنی لینوکس بالاخره LAN یکی از دیوایس ها رو راه اندازی کردم و تونستم از طریق یونیت Central Control پینگ دیوایسم رو بگیرم .
در ادامه بعد از تعریف آی پی اختصاصی اینترنال برای بقیه دیوایس ها، همه اطلاعات رو با Central Control مچ کردم .

بعد از برنامه نویسی و ارتباط با کرنل باید واسط گرافیکی رو به صورت User-friendly طراحی می کردم. انتخاب های زیادی رو داشتم و من از برنامه نویسی به کمک HTML بهره بردم .

بعد از طراحی صفحات استاتیک با زبان HTML ، این صفحات رو به برنامه ای که برای ارتباط کرنل نوشته بودم متصل کردم .
برای هر کدم از دیوایس ها بر حسب کاربرد صفحه خاصی رو به عنوان یه واسط گرافیکی تحت NET بار کردم .

در این مرحله یونیت Central Control می تونست به هرکدوم از دیوایس ها از طریق شبکه LAN متصل بشه و فرمان خاص خودش رو صادر کنه و اطلاعات لازمه رو از دیوایس ها تحویل بگیره .
البته من تو این پروژه بابد یه حجم بزرگی از دیتا رو هر سه روز یه بار به عنوان Report از دیوایس ها جمع می کردم که اینم به کمک سرعت بالای شبکه LAN و برنامه نویسی به زبان HTMAL حل شد .

فکر کنم زیاد پرحرفی کردم ! من این پروژه رو با تغییراتی که تو صفحات اعمال کردم عکس هاش رو براتون میزرام :

این تصویر برد mini2440 با هسته پردازنده s3c2440 در کلاک کاری 395MHZ هستش :


You can see links before reply


و اینم یه تصویر دیگه :


You can see links before reply


و اینم برنامه نویسی به زبان HTML برای راه اندازی واسط گرافیکی طرف دیوایس و طرف Central Control
You can see links before reply



صفحه نوشته شده به زبان html و نحوه لود کامل آن از طرف واحد کنترل مرکزی :


You can see links before reply


و اینم صفحه ای که نوشتم به منظور روشن خاموش کردن LED های روی برد (البته خودم تغییرش دادم و اصل پروژه خیلی مفصل تر و سفارشی تر از این بود) :


You can see links before reply


کاری که این برنامه انجام میده اینه که شما ز طریق Central Control به دیوایسی که می خواین متصل میشید و فرمان مورد نظرتون رو صادر می کنید و دیوایس هم اون فرمان رو به مرحله اجرا میزاره .
چون توی پروژه اصلی اطلاعات چند تا سنسور رو باید سیستم تحلیل می کرد، من اون قسمت ها رو حذف کردم .
من برای اینکه سرعت نقل انتقال از طریق شبکه رو بتون نشون بدم یه فایلی رو تو دیوایس آپلود کردم بعد هون فایل رو دانلود کردم البته همه این کار ها از طریق واسط گرافیکی انجام گرفته که عکس زیر فکر کنم گویا باشه :


You can see links before reply



نتیجه گیری :
من تونستم که Application تحت شبکه LAN رو با ARM9 و تحت سیستم عامل یونیکس پیاده کنم که البته این Application هم تحت شبکه به خوبی جواب میده و هم می تونه به عنوان یه برنامه تو محیط خود دیوایس اجرا بشه .
در حقیقت من با این سیستمی که طراحی کردم یه شبکه محلی رو پیادش کردم، و دوستانی که اطلاع دارن می دونن که میشه یه سرور محلی رو با اضافه کردن یه سری پارامترهایی به یه سرور واقعی تبدیلش کرد .

این همه داستان تعریف کردم تا برسم به اینجا که :
اگر از طریق ISP یه آی پی اختصاصی روی این سیستم تعریف بشه و نرم افزارهای مدیریت سرور مثل CPANEL روی یونیکس نصب بشن میشه یه سرور واقعی رو راه اندازی کرد .
با اضافه کردن وب سرورهایی مثل آپاچی و یه سری پلاگین ها به لینوکس، میشه کامل ترین سرور رو راش انداخت .
البته همه می دونن مزید اطلاع عرض می کنم منظرو از سرور واقعی اینه که شما بتونید میزبان سایتی که خودتون طراحی می کنید باشد، و سایت شما از بردی که خودتون کانفیگش کردید و جلوی روی شمایت بالا بیاد !!!

اگر یکم دقت کنید متوجه میشید که سروری که با این شیوه بالا بیاد توان مصرفیش همش 1.5 وات هستش ( ولتاژ کاری برد همش 5 ولته) !!!! شما رو نمی دونم ولی من به این میگم یه تحول بزرگ :o

تازشم با این توان مصرفی پایین آپ تایم نگه داشتنش کاری است بس آسان .
با اضافه کردن سخت افزارهایی مثل وایمکس به منظو اتصال به اینترنت به صورت وایرلس، می تونید این سرور رو به صورت پرتابل حملش کنید .
از بابت فضا هم با اضافه کردن یه فلش مثلاً 32 گیگابایتی فضای میتونید سرور رو ارتقاء بدین .

مطالب برای گفتن خیلی زیادن بنابرین من دیگه زیاد روش مانور نمیدم
به نظر من در کنار فعالیت انجمن و کار روی تراشه های AT91SAM7 و LPC2300 و .. میشه روی ادواتی که براحتی بتوان پلاگین های تحت سیستم عامل اجرا کرد، بحث نمود .


حالا نظر شما چیه ؟

سربلند و پیروز باشد :wink:

modj.ir
04-01-2011, 01:14
متاسفانه این اختراع شما مدتها قبل توسط شرکتهای مختلف از کاریزان تا ... پیاده شده.

raminmicro
04-01-2011, 02:14
ایشون کجا گفتن اختراع کردن ؟!!!!!!!!
گفتن یه پروژه هست که انجامش دادن و تلاششون واقعا قابل تحسینه.
وب سرور 1.5 واتی :o

fatemehjml
04-01-2011, 10:26
با سلام

ممنون از توضیحاتتون و با آرزوی موفقیت شما در سایر پروژه‌ها.

داخل بخشی از صحبت‌هاتون فرموده بودین:
با اضافه کردن سخت افزارهایی مثل وایمکس به منظور اتصال به اینترنت به صورت وایرلس، می تونید این سرور رو به صورت پرتابل حملش کنید .

به نظر شما اینطوری میشه سرور رو داخل وسایل در حال حرکت مثل اتومبیل هم استفاده کرد؟ البته می‌دونم این برمی‌گرده به توانایی شبکه‌ی وایمکس، ولی گفتم اگه شما از این کار تست عملی گرفتید لطفا نتیجه‌اش رو به من بگید.

متشکرم

kavir
04-01-2011, 12:37
سلام
پروژه جالبی بود خیلی ممنون PGT جان
منم خیلی وقته می خوام روی آرم 9 یا 11 کار کنم .انشاءالله بعد از اتمام این آرم 7 با یک شرکتی قرارداد میبندیم برای بردها و شروع میکنیم:wink:

fatemehjml
04-01-2011, 13:23
یه نکته‌ی دیگه اینکه چرا اندروید نصب نکردید؟
تا اونجاییکه من شنیدم این سیستم عامل برای کارای پرتابل طراحی شده.

Division
04-01-2011, 13:55
سلام


به نظر شما اینطوری میشه سرور رو داخل وسایل در حال حرکت مثل اتومبیل هم استفاده کرد؟

من خودم تقریبا سه ماه از اینترنت وایمکس استفاده کردم .
تست گرفتم مشکلی نداشت ولی شرکت های ارئه دهنده این سرویس هیچ تعهدی رو از بابت پرتابل بودن سرویسشون ارائه نمیدن .
تازه به لحاظ مناطق تحت پوشش هم خیلی ضعیفن .
اون طوری که من اطلاع دارم تو یکی از کشورهای همسایه الان تکنولوژی وایمکس خیلی همه گیر شده و دیگه کسی از ADSL استفاده نمی کنن و به راحتی با اتصال یه مودم فلش به اینترنت متصل میشن .
تو ایران هم میشه مودم فلش های های وایمکس رو استفاده کرد ولی به دلیل اینکه سطح پوشش ضعیفه باید بچسبی به آنتن فرستنده .:mrgreen: یا اینکه از تقویت کننده اکسترنال استفاده کنید .:(


یه نکته‌ی دیگه اینکه چرا اندروید نصب نکردید؟

بله درسته، امکان انجام این کار وجود داره ولی باید این سیستم عامل را برای واسط گرافیکی T-35 پورتش کنید که این روند یکمی پیچیده و زمان بره .
به نظر من تو کاربرد های دیگه میشه از اندورید استفاده کرد ولی تو بخش وب سرور یونیکس حرف اول رو می زنه .
پیشنهاد من اینه توزیع CENTOS رو برای ایمبدد پورتش کنیم که من کار رو شروع کردم .
الان در مبحث وب سروری، دیتا سنترهای قدرتمند به کاربراشون سیستم عامل لینوکس، توزیع CENTOS رو پیشنهاد می کنن .
من در سرور اخصاصی خودم نسخه X64 سیستم عامل CENTOS رو نصب کردم و به جرات می تونم بگم که در بخش وب سروری توزیع CENTOS بین سایر توزیع های LINUX خیلی قوی تره .

Division
04-01-2011, 16:22
سلام

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

فیلم یک (You can see links before reply) ....... ظرفیت 6.2MB
فیلم دو (You can see links before reply) ........ ظرفیت 5.8MB

موفق باشید .:wink:

morteza_rk
04-01-2011, 18:55
سلام

خیلی خوشحالم که دوست عزیزم تونسته همچین کاری بکنه! امیدوارم در تمامی عرصه های زندگی مثل همیشه سربلند باشی. :wink:

alborji
17-01-2011, 17:01
ممنون. خیلی جالبه...
ولی با قدرت پردازش arm مسلما نمیشه یک وب سرور همگانی راه انداخت . ولی برای برنامه های تحت وب (با یک یا تعداد محدودی کاربر) و تجهیزات وب بیس تحت اینترنت خیلی خوبه(مثلا دوربین های ip - پرینتر سرور - سوییچ - گوشی VoIP , ...

Division
19-01-2011, 02:05
سلام



ولی با قدرت پردازش arm مسلما نمیشه یک وب سرور همگانی راه انداخت

بله تا حدودی فرمایش شما درسته .
من وب سرور آپاچی رو روش نصب کردم خیلی خوب جواب میداد . حتی سعی کردم با نصب اسکریپ های سنگین اکتیو لودش را ببرم بالا که اونم دیدم بخوبی کار می کنه .
ولی مسلما تو کارهای سنگین تر کم میاره ولی به لحاظ امکانات و منابعی که برای راه اندازیش لازم داره خیلی خوب داره جواب میده .

خیلی ممنونم که نظر دادین .
:wink:

hakim.alireza
02-02-2011, 17:10
سلام
میشه بگی برد آموزشی رو از کجا خریدی؟
تو فروشگاه سایت که از اینها ندارند
ممنون میشم اگه یه مشاوره هم بدی در مورد انواع و مدل ها که کدومش بیشتر به چه کاری میاد.
یا علی
موفق باشید

omidd2000
01-09-2012, 01:08
با سلام
من تا به حال با arm کار نکردم ولی به avr تسلط کامل دارم.
سیستن عامل روی arm اصلا به چه درد می خوره؟ چه کارهای اضافه بر avr می شه انجام داد چون من با avr به شبکه هم مصل شدم.
لطفا راهنمایی کنید

mjd
01-09-2012, 17:35
سلام پروژه ی خوبی رو مطرح کردید...منم چند وقتی هست به عنوان پروژه شخصی می خوام با mini2440 یک کنترل یونیت برای لوازم خانگی به صورت ترکیب بیسیم wifi و ماژول RFMXX درست کنم که از طریق اینترنت هم بشه بهش دسترسی داشت. برای سرورش قصد دارم به جای آپاچی از SSH sever استفاده کنم که فکر کنم فشار کمتری به پردازنده بیاره و حجم رم کمتری هم اشغال کنه در نتیجه مصرف هم پایین تر میاد. فعلا اینو پیدا کردم برای ssh server : You can see links before reply و کارت wifi یو اس بی هم یک مقدار توی کراس کامپایل درایور لینوکسش مشکل به هم زده که هنوز گیرش هستم. اگر مشکلات حل شد پروژه رو به صورت عمومی قرار میدم.

alone-man
02-09-2012, 23:17
سلام division عزيز.

اول تبريك ميگم بهت بابت پروژه موفقت و خيلي خوشحالم افرادي مثل شما تو اين انجمن هستند.

ولي به نظر من كار شما كاملاً مربوط به بچه هاي كامپيوتر و نرم افزاره،‌نميدونم شما رشته تحصيليتون چيه ولي راه اندازي ديتا سنتر و كانتكت سنتر و .... واسه ما برقيا كار خفنيه ولي متخصصاي زيادي واسش وجود داره و بنظرم كار جالبي نيست كه مثلاً ما بيايم و با استفاده از Mini2440‌و از اين چيزا كار كنيم.
ميدوني چرا؟ چون ميشد به جاي اينكار مثلاً مادر برد يه ميني لپتاپو برداشت و روش لينوكس نصب كرد، خيليم بهتر جواب ميده و ارزونترم درمياد!

كار ما موقعي قشنگ ميشه كه بيايم خود برد رو توليد كنيم و يه پارامتري رو بهينه كنيم.

به نظر من افرادي مثل شما حيفه دست به كاراي بزرگ نزنن و يه ديوايس جديد خودشون رو توليد نكنن. مثلاً ديواسهاي مورد نياز واسه برپايي يه شبكه صنعتي با برند division طراحي كن و بعد ميتوني به توليد انبوه هم برسوني.

در كل به نظر من اين كار شما ارزشمنده ولي نه از لحاظ يك مهندس الكترونيك يا برقي.

Greatal
29-09-2012, 15:39
سلام دوست عزیز
ضمن تبریک به شما برای کار موفقتون که حتما با گزاشتن اطلاعاتی دیگران رو هم یاری خواهید کرد چند موردی رو با اجازه اساتید محترم بیان می کنم
برد های آرم که فرمودید چندین مشکل دارند که باید مد نظر داشته باشید
1-قیمت بالا
2- پردازنده ای نسبتا کم توان
3-نداشتن باکس مناسب
4- زیاد بودن هزینه تولید برد
5- عدم توانایی در پاسخ گویی به پهنای باند بالا و تعداد یوزر زیاد
البته ال سی دی و دکمه برای رابط کاربر دارند که خودش خیلی خوبه
اگر با توجه به تمام این ها باز هم به دنبال چنی چیزی هستید پیشناد میکنم به سایت های openwrtو dd-wrt یه سری بزنید که چنتا خوبی داره
1- باکس خوب و زیبا
2-برق درست
3- پردازنده مخصوص شبکه
4- حتی در بعضی موارد ارتباط wifi
5- امکان آپگریدکردن ( سخت افزاری آی سی فلش و رم رو عوض کنی یا sd یا mmc بهش وصل کنید)
6- داشتن یو اسبی هاست در بعضی مدل ها
7-وجود os کاملا بی دردسر و آماده واسه کار های متفاوت مثل روتر ویپ وب سرور ...)
8- وجود LCD در بعضی مدل ها و امکان اضافه کردن LCD به برخی مدل ها
خلاصه هرچه خوبان دارند روتر های ارزون همه یکجا دارند!
و قابل فروختن و ارائه هستند تازه شاید بتونی با بعضی مراکز گارانتی هاشون کنار بیایی بهت ساپورت هم بدن!

javadkazemi
09-02-2013, 17:48
سلام به همه مهندسین گرام
من با mini s3c2440 شرکت کویر شروع به کار کردم که از ابتدا روش لینوکس نصب بود اما همون اول اتفاقی با keil ای سی nor flash رو پاک کردم حالا هر کار میکنم تو ارسال و در یافت با کامپیوتر به صورت هایپر ترمینال مشکل داره و از طرفی کامپیوتر از طریق usb به عنوان یه دیوایس اونو نمیشناسه چون میخواستم خودم روش ویندوز نصب کنم . اگه می تونیین کمکم کنید ممنون میشم با تشکر