فی ژوو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

فی ژوو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

دانلود پایان نامه پیاده سازی الگوریتم FLB

اختصاصی از فی ژوو دانلود پایان نامه پیاده سازی الگوریتم FLB دانلود با لینک مستقیم و پر سرعت .

دانلود پایان نامه پیاده سازی الگوریتم FLB


دانلود پایان نامه پیاده سازی الگوریتم FLB

قبل از ابداع کامپیوترهای شخصی،  عملا سیستم های توزیع شده ای  وجود نداشته است . در آن دوران ، استفاده از کامپیوتر،  شامل نشستن پشت یک ترمینال و برقراری ارتباط با یک سیستم بزرگ  بود. با اینکه ترمینال ها در  چندین ساختمان و یا حتی محل فیزیکی قرار می گرفتند ،  ولی عملا  یک کامپیوتر مرکزی وجود داشت که مسئولیت  انجام تمامی پردازش ها و ذخیره سازی  داده ها را برعهده می گرفت .
Mainfram  معایب
•هزینه سیستم های Mainfarme  . یکی از اولین دلایل مهم ، هزینه های بالای سیستم های Mainframe است . این مسئله از دو زاویه متفاوت قابل بررسی است : هزینه بالای سرمایه گذاری اولیه که بسیاری  از سازمان ها و موسسات توان مالی آن را ندارند و دوم اینکه در این مدل ، دارای صرفا" یک نقطه  آسیب پذیر با ریسک بالا می باشیم .
•مالکیت اختصاصی داده ها. یکی از فاکتورهای مهم دیگر،  سیاست های مربوط به مالکیت داده ها است . سازمان ها و موسسات که  دارای داده های اختصاصی خود می باشند،  علاقه مند به واگذاری مسئولیت مدیریت داده های مربوطه ،  به سایر مکان های فیزیکی نمی باشند .
•امنیت . یکی دیگر از فاکتورهای مهم در این زمینه موضوع امنیت است . برای یک سازمان ،  اولا" دستیابی به اغلب داده های آن می بایست بسادگی محقق گردد و ثانیا"  داده ها ی حساس موجود در  سازمان می بایست از بعد امنیتی،  ایمن نگهداری گردند . تامین دو خواسته فوق ( رویکردهای رقابتی  و رویکردهای امنیتی ) با جدا سازی فیزیکی داده از یکدیگر محقق خواهد شد ( انباشت داده ها، با نگرش های متفاوت در رابطه با سرعت در دستیابی و ایمن در ذخیره سازی ، ضرورت وجود برنامه های توزیع شده را بخوبی نمایان می سازد )   
 مسائل فوق،   ضرورت حرکت بسمت ایجاد یک الگوی جدید بمنظور طراحی برنامه های کامپیوتری را مطرح و بر همین اساس نسل جدیدی از برنامه های کامپیوتری با عنوان " برنامه های توزیع شده" در عرصه نرم افزار بوجود آمد.که این برنامه ها به سیستم های توزیع شده نیاز دارد.
یک برنامه توزیع شده،   برنامه ای است که پتانسیل های پردازشی آن ممکن است توسط چندین کامپیوتر فیزیکی تامین  و داده های آن در چندین محل فیزیکی،  مستقر شده باشد .
یک سیستم توزیع شده مجموعه ای از کامپیوتر هاست که دارای منابع اجرایی مختلف و زیادی هستند.
مفهوم گرید 1-1
  در گرید  هر شخصی می تواند به راحتی وارد یک شبکه شود و از توان محاسباتی موجود در شبکه استفاده کند.در شیوه های نوین به جای استفاده از رایانه های اختصاصی برای حل مسائل بزرگ ، با استفاده از رایانه های موجود پراکنده که از همه توان محاسباتی خود استفاده نمی کنند، سعی می شود با جمع آوری این توانهای پراکنده که اغلب بی استفاده می مانند، کارهای خود را انجام دهند. این منابع محاسباتی اگرچه اغلب قدرت و هماهنگی رایانه های اختصاصی را ندارند، اما تعداد زیادی از آنها به وفور در مراکز عمومی از قبیل دانشگاه ها، اداره ها، کتابخانه ها و غیره و حتی در منازلی که اتصال قوی به اینترنت دارند یافت می شوند و این موجب می شود که توان محاسباتی آن در مجموع بسیار بالا باشد و در عین حال هزینه آن به مراتب پایین تر می باشد.


1-1مفهوم گرید2   
  1-2طبقه بندی گرید 4                         
 3-1 ارزیابی گرید 4                 
1-4کاربردگرید5                     
1-5 تعریف زمانبندی گرید6   
1-6 مروری بر تحقیقات گذشته7    
1-7 مفهوم اصطلاحات به کار برده شده8
1-8 نمای کلی پایان نامه9
فصل دوم:زمانبندی کارها در سیستم های توزیع شده
2-1 زمانبندی کلاستر و ویژگیهای آن  10  
2-2 زمانبندی گرید و ویژگیهای آن13   
 3-2  رده بندی الگوریتم های زمانبندی گرید 16  
  2-3-1   زمانبندی محلی/سراسری 16            
  2-3-2  زمانبندی ایستا/پویا16     
  2-3-3  زمانبندی بهینه/نزدیک به بهینه21
  2-3-4  زمانبندی توزیع شده/مرکزی22
  2-3-5  زمانبندی همکار و مستقل22
2-3-6  زمانبندی زمان کامپایل /اجرا 23
 2-4-1  رده بندی الگوریتم های زمانبندی از دیدگاهی دیگری 23
  2-4-2  اهداف زمانبندی23   
  2-4-3   زمانبندی وفقی24
  2-4-4 رده بندی برنامه های کاربردی25
   2-4-4-1  کارهای وابسته25
   2-4-4-2  گراف کار26
 2-4-5   وابستگی کارهای تشکیل دهنده برنامه کاربردی       26   
2-4-6  زمانبندی تحت قیود کیفیت سرویس26   
2-4-7  راهکارهای مقابله با پویایی گرید28
 2-5  الگوریتم های زمانبندی کارهای مستقل32
2 -5-1 الگوریتم   MET   32
      2-5-2  الگوریتم  MCT 32
 2-5-3 الگوریتم   Min-min33
  2-5-4  الگوریتم Max-Min 33
2      -5-5 الگوریتم Xsuffrage  34                                 
2   -5-6-  الگوریتم GA  35      
2-5-7- الگوریتم        SA 37  
فصل سوم:الگوریتم های زمانبندی گراف برنامه
3-1 مشکلات زمانبندی گراف برنامه39
3-2 تکنیک¬های مهم زمان¬بندی گراف برنامه در سیستم¬های توزیع شده40    
3-2-1-  روش ابتکاری بر پایه لیست  40
  3-2-2- روش ابتکاری بر پایه تکثیر40
  3-2-3- روش ابتکاری کلاسترینگ41
 3-3- دسته بندی الگوریتم¬های زمان¬بندی گراف برنامه در سیستم¬های توزیع شده44
 3-4- پارامترها و مفاهیم مورد استفاده در الگوریتم¬های زمان¬بندی گراف   برنامه46
 3-5- الگوریتم¬های زمان¬بندی گراف برنامه با فرضیات محدودکننده50
  3-5-1- الگوریتمی با زمان چند جمله¬ای برای گراف های درختی - الگوریتم HU 50
  3-5-2- الگوریتمی برای زمان¬بندی گراف برنامه  با  ساختار دلخواه در سیستمی با دو پردازنده51  
  3-5-3- الگوریتمی برای زمان¬بندی گراف بازه¬ای مرتب شده52
 3-6- الگوریتم¬های زمان¬بندی گراف برنامه در محیطهای  همگن 54
  3-6-1- الگوریتم Sarkar54
   3-6-2- الگوریتمHLFET55
   3-6-3- الگوریتم ETF55
   3-6-4- الگوریتم ISH 55
   3-6-5- الگوریتم FLB56
   3-6-6- الگوریتم DSC56
   3-6-7- الگوریتم CASS-II58
   3-6-8- الگوریتم DCP59
   3-6-9- الگوریتم MCP60
   3-6-10- الگوریتم MD61
   3-6-11- الگوریتم TDS61
 3-7- الگوریتم¬های زمان¬بندی گراف برنامه در محیطهای ناهمگن63    
  3-7-1- الگوریتم HEFT63
  3-7-2- الگوریتم CPOP63
  3-7-3- الگوریتم LMT64
  3-7-4- الگوریتمTANH 65  
 فصل چهارم :الگوریتم FLB
1-4 ویژگیهای الگوریتم66  
    4-2 اصطلاحات به کار برده شده66
    4-3 الگوریتم67  
    4-4 پیچیدگی الگوریتم75        
    4-5 کارایی الگوریتم77  
فصل پنجم: شبیه سازی گرید
5-1 ابزار شبیه سازی79
 5-1-1- optosim79
 5-1-2 SimGrid 80
 5-1-3- Gridsim  80
 کارهای انجام شده83     
پیشنهادات83  
 مراجع     85   

 

شامل 100 صفحه فایل word


دانلود با لینک مستقیم


دانلود پایان نامه پیاده سازی الگوریتم FLB

طراحی و پیاده سازی کنترلگر موقعیت برای روبات کشسان‌ مفصل با لحاظ مسئلة اشباع عملگر

اختصاصی از فی ژوو طراحی و پیاده سازی کنترلگر موقعیت برای روبات کشسان‌ مفصل با لحاظ مسئلة اشباع عملگر دانلود با لینک مستقیم و پر سرعت .

طراحی و پیاده سازی کنترلگر موقعیت برای روبات کشسان‌ مفصل با لحاظ مسئلة اشباع عملگر


طراحی و پیاده سازی کنترلگر موقعیت برای روبات کشسان‌ مفصل با لحاظ مسئلة اشباع عملگر

دانشگاه صنعتی خواجه نصیرالدین طوسی

دانشکده برق - گروه کنترل

رساله دکتری

طراحی و پیاده سازی کنترلگر موقعیت برای

روبات کشسان‌ مفصل با لحاظ مسئلة اشباع عملگر

177 صفحه در قالب word

 

 

چکیده

در این پژوهش مسئلة کنترل روبات کشسان‌مفصل با لحاظ محدودیت اشباع عملگر مورد بررسی دقیق قرار گرفته است. بدین منظور با استفاده از دو رویکرد مختلف روشهایی برای حل آن ارائه شده است. در ادامه با استفاده از شبیه‌سازیهای مختلف عملکرد روشهای ارائه شده بررسی و سپس پایداری مقاوم ساختار پیشنهادی به صورت نظری اثبات شده است. در پایان صحت ادعاهای نظری با پیاده‌سازی عملی بر روی یک روبات کشسان‌مفصل دو درجه آزادی مورد تأیید قرار گرفته است.

     در این پژوهش دو مجموعه نوآوری به انجام رسیده است. در مجموعة اول ابتدا یک روش کلی با عنوان «حلقة ناظر» برای برخورد با مسئلة اشباع ارائه شده است. این روش بر روی سیستمهای مختلفی پیاده شده تا نشان داده شود که مستقل از مدل می‌باشد. سپس یک ساختار کنترل ترکیبی همراه با حلقة ناظر برای روباتهای کشسان‌مفصل ارائه شده تا نشان داده شود که روش ارائه شده برای کاربرد اصلی مورد نظر پروژه (یعنی روبات کشسان‌مفصل) عملکرد مناسبی را در حضور اشباع ایجاد می‌کند. در ادامة این پژوهش به اثبات نظری پایداری برای ساختار «ترکیبی + ناظر» پرداخته‌ایم. سپس برای اینکه قابلیت پیاده‌سازی روش ارائه شده نشان داده شود آن را بر روی یک روبات کشسان‌مفصل که در راستای همین پژوهش طراحی و ساخته شده است پیاده نموده‌ایم.

     مجموعه نوآوری دوم ارائة رویکرد دیگری برای مقابله با اثرات اشباع در روباتهای کشسان‌مفصل بر پایة روشهای بهینة چند منظوره مبتنی بر نرمهای H2 و H¥ است. در این روشها برای مقاوم بودن کنترلگر از بهینه‌سازی H¥ سود جسته و برای کم کردن دامنة کنترل و جلوگیری از اشباع عملگر، نرم سیگنال کنترلی نیز در فرایند بهینه‌سازی در نظر گرفته شده است. برای طراحی عددی از تبدیل مسئله به LMI و روشهای عددی متناظر با آن استفاده شده است. همچنین جهت نشان دادن کاراییِ روش در عمل، پیاده‌سازی آن بر روی روبات مذکور انجام پذیرفته است.

کلمات کلیدی: روبات کشسان‌مفصل، اشباع عملگر، کنترل ترکیبی، حلقة ناظر، روش کنترل H2/H∞، منطق فازی.

 

فهرست مطالب

فهرست مطالب... ‌أ

فهرست اشکال. ‌د

فهرست جداول. ‌و

1-     مقدمه. 1

1-1-  جایگاه روباتهای کشسان‌مفصل در مهندسی کنترل. 1

1-2-  مشکلات کنترل روباتهای کشسان‌مفصل.. 3

1-3-  کنترل با وجود محدودیت دامنه. 5

1-4-  نوآوریهای این پژوهش.... 7

1-5-  نمای کلی رساله. 9

2-     مروری بر پژوهشهای قبلی و بیان چالشها 11

2-1-  کنترل روباتهای کشسان‌مفصل.. 11

2-1-1-  پژوهش‌های اولیه. 12

2-1-2-  ادامة خط اولیه. 15

2-1-3-  ارتقای مدل. 17

2-1-4-  پیشنهادات مختلف برای کنترل. 18

2-1-5-  کمیت‌های فیدبک شده و تقلیل اندازه‌گیری‌ها 19

2-1-6-  کنترل تطبیقی.. 21

2-1-7-  کنترل مقاوم و پایداری.. 22

2-1-8-  پیاده‌سازی عملی.. 25

2-1-9-  جمعبندی و بیان چالشها 27

2-2-  مسئلة اشباع عملگر و روشهای برخورد با آن. 28

2-2-1-  مشکلات ناشی از اشباع. 28

2-2-2-  روشهای عمومی برخورد با مسئلة اشباع. 31

2-2-3-  روشهای بهینه و مقاوم در برخورد با اشباع. 32

2-2-4-  روشهای تعدیلی.. 34

2-2-5-  مسئلة اشباع در روباتها 37

3-     حلقة ناظر فازی، روشی برای برخورد با مسئله اشباع عملگر. 40

3-1-  بیان مسئله. 42

3-2-  معرفی روش.... 43

3-3-  مزایای روش پیشنهادی.. 46

3-4-  استفاده از حلقة ناظر بر روی دو سیستم عمومی.. 49

3-4-1-  سیستم ناپایدار دو ورودی-دو خروجی.. 50

3-4-2-  سیستم دارای تأخیر. 52

3-5-  نکات عملی در طراحی.. 56

4-     مسئلة اشباع در FJR و استفاده از روش حلقة ناظر برای برخورد با آن. 59

4-1-  مدلسازی روباتهای کشسان‌مفصل.. 59

4-1-1-  کنترل ترکیبی و رویکرد رویة ناوردا برای کنترل FJR ها 64

4-2-  استفاده از حلقة ناظر در ساختار ترکیبی برای FJR.. 69

4-3-  بررسی عملکرد روش ارائه شده با شبیه‌سازی.. 71

4-4-  اثبات پایداری برای ساختار «ترکیبی + ناظر» 75

4-4-1-  پایداری زیر سیستم تند. 77

4-4-2-  لم‌های مورد نیاز برای اثبات پایداری.. 80

4-4-3-  اثبات پایداری سیستم کامل.. 85

5-     نگاه دوم: روشهای بهینة H¥ و H2 برای مقابله با اثرات اشباع در FJR.. 90

5-1-  طراحی با رویکرد حساسیت مخلوط.. 94

5-2-  طراحی با رویکرد H2 /H¥. 96

5-3-  بررسی کارایی روشهای ارائه شده 97

6-     پیاده‌سازی عملی.. 107

6-1-  معرفی مجموعة آزمایشگاهی ساخته شده 108

6-1-1-  سخت‌افزار الکترومکانیکی.. 108

6-1-2-  نرم‌افزار  113

6-2-  مدل پارامتریک سیستم. 117

6-3-  تخمین پارامترهای سیستم. 119

6-4-  نتایج پیاده‌سازی.. 123

6-4-1-  کنترل ترکیبی.. 127

6-4-2-  کنترل ترکیبی تحت نظارت ناظر فازی.. 130

7-     نتایج و تحقیقات آتی.. 136

پیوست الف: کنترل ترکیبی و رویکرد رویة ناوردا برای FJR چند محوره 141

پیوست ب: طراحی کنترل بهینة چند‌منظوره مبتنی بر نرم H¥ با تبدیل به LMI. 152

پیوست ج: راهنمای کار با جعبه‌ابزار زمان حقیقی نرم‌افزار MATLAB.. 158

پیوست د: راهنمای فنی روبات خواجه‌نصیر. 164

پیوست هـ : نتایج بیشتری از پیاده‌سازیها 167

واژه‌نامه انگلیسی به فارسی.. 173

واژه‌نامه فارسی به انگلیسی.. 174

مقالات استخراج شده از این پژوهش.... 175

مراجع  176

 

1-     مقدمه

در این فصل با ورود به دنیای «روباتهای کشسان‌مفصل» و بررسی مشکلات کنترل آنها و سپس با بررسی وجوه گوناگون مسئلة «محدودیت دامنة کنترل» زمینه‌های لازم برای بیان چالشهای موجود را فراهم آورده‌ایم. بدین ترتیب به بیان انگیزه و ضرورت انجام این پژوهش پرداخته و در پایان به معرفی اجمالی نوآوریهای این پژوهش خواهیم پرداخت.

1-1-       جایگاه روباتهای کشسان‌مفصل در مهندسی کنترل

طراحی کنترل برای روباتها از اوایل دهه 1970 توجه مهندسان کنترل را به خود جلب کرد و کم‌کم روباتها در کاربردهای متنوعی مورد استفاده قرار گرفتند. امروزه روباتهای چند‌محوره در کاربردهای مختلف فضایی، صنعتی و غیره به کار گرفته شده‌اند که اغلب با کنترلگرهای متداول مانند PID کار می‌کنند و می‌توان ادعا کرد که مسئلة کنترل مکان برای روباتهای صلب امروزه به طور مناسبی فهمیده و حل شده است [[i]]. اما رفته‌رفته در اثر جایگزینی روباتهای متداول با روباتهای جدید که کوچکتر، سبکتر، سریعتر و باهوشتر هستند دیگر کنترلگرهای متداول پاسخ مناسبی به نیازهای کنترلی روباتها نداده و مسائل جدیدی در مهندسی کنترل رخ می‌نماید. می‌توان نشان داد که در اغلب کاربردهای جدید مانند روباتهای پیشرفتة فضایی، روباتهای خدمتکار، سیستم‌های پس‌خورانندة نیرو[1]، دستها و بازوهای ماهر روباتیکی [[ii]] و ریزروباتها[2]، مسئلة مشترک اصلی برای کنترل روباتها «کشسانی مفاصل» است. در اغلب موارد، کشسانی نتیجة ذاتی القا شده از طرف ساختار روبات می‌باشد؛ اما در مواردی نیز کشسانی عمداً به روبات اضافه می‌شود. تا چندی پیش رویکرد طراحی روباتها «هرچه صلب‌تر بهتر» بود و این رویکرد نه به خاطر نارسایی روباتهای کشسان، بلکه به خاطر سادگی کنترل در روباتهای صلب اتخاذ می‌شد [[iii]، [iv] و [v]]؛ اما امروزه این رویکرد کمرنگ شده است زیرا در واقع صلب بودن و کشسانی هر کدام مزیتهای خود را دارند. در عملگرهای صلب پهنای باند بالایی برای اعمال نیرو وجود دارد که کنترل را ساده می‌کند؛ از طرف دیگر اگر از عملگرهای کشسان استفاده شود کنترل نیروی پایدار و کم‌نویز به علاوة ایجاد ایمنی در تعامل با اشیای خارجی و برخوردهای اتفاقی را خواهیم داشت [[vi] و [vii]].

منشأ ایجاد کشسانی در مفاصل، اغلب سیستم انتقال توان می‌باشد اگر در آن از عناصری مانند ‌هارمونیک‌درایو، تسمه (مانند روبات RTX [[viii]]) یا محورهای بلند [[ix]] استفاده شده باشد. علاوه بر سیستم انتقال توان، حسگرهای گشتاور و یا برخی عملگرها [6، 7، [x]] نیز می‌توانند منشأ کشسانی ‌باشند. از نظر تعداد، در اغلب روباتهای کشسان‌مفصل[3] (FJR) منشأ ایجاد کشسانی ‌هارمونیک‌درایو است (مثلاً در بازوی ایستگاه فضایی بین‌المللی (شکل ‏1‑1)، دست روباتیکی ساخته شده در مرکز فضایی آلمان (شکل ‏1‑2) و روبات صنعتی GE-P50 [[xi]]) و دیگر موارد ذکر شده به صورت انگشت‌‌شمار رخ‌ می‌نمایند. (برای آشنایی عمومی با ‌هارمونیک‌درایو به مرجع [[xii]] رجوع نمایید).

 

ممکن است هنگام انتقال از فایل ورد به داخل سایت بعضی متون به هم بریزد یا بعضی نمادها و اشکال درج نشود ولی در فایل دانلودی همه چیز مرتب و کامل است

متن کامل را می توانید در ادامه دانلود نمائید

چون فقط تکه هایی از متن برای نمونه در این صفحه درج شده است ولی در فایل دانلودی متن کامل همراه با تمام ضمائم (پیوست ها) با فرمت ورد word که قابل ویرایش و کپی کردن می باشند موجود است


دانلود با لینک مستقیم


طراحی و پیاده سازی کنترلگر موقعیت برای روبات کشسان‌ مفصل با لحاظ مسئلة اشباع عملگر

عنوان پایان نامه : بررسی شبیه ساز های شبکه های کامپیوتری و یک پیاده سازی در شبکه حسگر بیسیم

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

عنوان پایان نامه : بررسی شبیه ساز های شبکه های کامپیوتری و یک پیاده سازی در شبکه حسگر بیسیم


عنوان پایان نامه : بررسی شبیه ساز های شبکه های کامپیوتری و یک پیاده سازی در شبکه حسگر بیسیم

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

فهرست :

چکیده

مقدمه

کلیات

هدف

پیشینه کار و تحقیق

روش کار و تحقیق

شبکه کامپیوتر و شبیه ساز شبکه

تعریف شبکه کامپیوتری

تعریف simulation 22 و دلایل استفاده از آن

انواع شبیه سازهای شبکه

شبیه ساز OPNET

شبیه ساز BONES 2

شبیه ساز MARS

شبیه ساز MATLAB

شبیه ساز SDL

شبیه ساز JAVASIM

شبیه ساز NS

تاریخچه

NS2 چیست؟

ساختار NS

کارکردهای NS

مزایا و معایب NS2

نجوه نصب NS

آشنایی با اسکریپت Otcl

شبکه حسگر بی سیم

شبکه حسگر چیست

دلایل استفاده از شبکه حسگر

تاریخچۀ شبکه های حسگر

ساختار کلی شبکه حسگر بی سیم

ساختمان گره

ویژگی ها

کاربردها

موضوعات مطرح

پیاده ساز

تعریف پیاده سازی

مراحل اجرای روش پیشنهادی

فاز اولشناسایی حسگرهای پوششی هر ایستگاه سیار

فاز دوم تعیین متناسب ترین ایستگاه سیار

مراحل اجرای الگوریتم

سناریو

بحث و نتیجه گیر

نتیجه گیری

پیشنهادات

منابع و ماخذ

فهرست منابع فارسی

فهرست منابع انگلیسی

چکیده انگلیسی


دانلود با لینک مستقیم


عنوان پایان نامه : بررسی شبیه ساز های شبکه های کامپیوتری و یک پیاده سازی در شبکه حسگر بیسیم

پایان نامه ارشد پیاده سازی بلادرنگ کدک صحبت استاندارد G.728 بر روی پردازنده TMS320C5402

اختصاصی از فی ژوو پایان نامه ارشد پیاده سازی بلادرنگ کدک صحبت استاندارد G.728 بر روی پردازنده TMS320C5402 دانلود با لینک مستقیم و پر سرعت .

پایان نامه ارشد پیاده سازی بلادرنگ کدک صحبت استاندارد G.728 بر روی پردازنده TMS320C5402


پایان نامه ارشد پیاده سازی بلادرنگ کدک صحبت استاندارد G.728  بر روی پردازنده TMS320C5402

این فایل در قالب ورد وقابل ویرایش در 103 صفحه می باشد .

پایان نامه کارشناسی ارشد مخابرات سیستم

پیاده سازی بلادرنگ کدک صحبت استاندارد G.728

بر روی پردازنده TMS320C5402


 

 

چکیده   

 

کدک صحبت استاندارد G.728 ، یک کدک کم تاخیر است که صحبت با کیفیت عالی را در نرخ بیت 16 kbps ارائه می دهد و برای شبکه های تلفن ماهواره ای و اینترنت و موبایل که به تاخیر زیاد حساس هستند ، مناسب است. در این رساله به پیاده سازی بلادرنگ اینکدر و دیکدر  G.728 بصورت دوطرفه کامل ( Full Duplex ) بر روی پردازنده TMS320C5402 می پردازیم .

 

روشی ترکیبی برای برنامه نویسی TMS ارائه می شود که در آن  زمان وپیچیدگی برنامه نویسی نسبت به برنامه نویسی دستی به 30%  کاهش می یابد . در این روش پس از برنامه نویسی           و  شبیه سازی ممیزثابت الگوریتم کدک به زبان C ، با استفاده از نرم افزار                                ( Code Composer Studio ) CCS ، برنامه به زبان اسمبلی ترجمه شده و بهینه سازی دستی در کل کد اسمبلی صورت می گیرد . سپس بعضی از توابع مهم برنامه از نظر MIPS ، بصورت دستی به زبان اسمبلی بازنویسی می شوند تا برنامه بصورت بلادرنگ قابل اجرا گردد . در پایان                  نتایج این پیاده سازی ارائه می شود .

 

 

 

کلمات کلیدی

 

 

 

کدینگ و فشرده سازی صحبت ، پیاده سازی بلادرنگ ، DSP ، TMS320C5402 ، برد DSK

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

فهرست

 

- مقدمه                                             4

 

فصل 1 : بررسی و مدل سازی سیگنال صحبت                        

 

    1-1- معرفی سیگنال صحبت                               6

 

    1-2- مدل سازی پیشگویی خطی                            10

 

         1-2-1- پنجره کردن سیگنال صحبت                   11

 

         1-2-2- پیش تاکید سیگنال صحبت                    13

 

         1-2-3- تخمین پارامترهای LPC                                              14

 

 

 

فصل 2 : روش ها و استانداردهای کدینگ صحبت

 

    2-1- مقدمه                                      15

 

    2-2- روش های کدینگ                                   19

 

         2-2-1- کدرهای شکل موج                       21

 

         2-2-2- کدرهای صوتی                              22       2-2-3- کدرهای مختلط                           24

 

         الف- کدرهای مختلط حوزه فرکانس                   27

 

         ب- کدرهای مختلط حوزه زمان                       29

 

 

 

فصل 3 : کدر کم تاخیر LD-CELP                       

 

    3-1- مقدمه                                      34

 

    3-2- بررسی کدرکم تاخیر LD-CELP                      36

 

         3-2-1- LPC معکوس مرتبه بالا                  39

 

         3-2-2- فیلتر وزنی شنیداری                       42

 

         3-2-3- ساختار کتاب کد                       42

 

         3-2-3-1- جستجوی کتاب کد                         43

 

         3-2-4- شبه دیکدر                            45

 

         3-2-5- پست فیلتر                            46

 

فصل 4 : شبیه سازی ممیزثابت الگوریتم به زبان C                   

 

    4-1- مقدمه                                       49

 

    4-2- ویژگی های برنامه نویسی ممیزثابت                         50

 

    4-3- ساده سازی محاسبات الگوریتم                          53

 

         4-3-1- تطبیق دهنده بهره                         54

 

         4-3-2- محاسبه لگاریتم معکوس                          58

 

    4-4- روندنمای برنامه                                 59

 

         4-4-1- اینکدر                               63

 

         4-4-2- دیکدر                                69

 

فصل 5 : پیاده سازی الگوریتم برروی DSP          

 

    5-1- مقدمه                                      74

 

    5-2- مروری بر پیاده سازی بلادرنگ                          75

 

    5-3- چیپ های DSP                                76

 

         5-3-1- DSP های ممیزثابت                         77

 

         5-3-2- مروری بر DSP های خانواده TMS320          78

 

         5-3-2-1- معرفی سری TMS320C54x               79

 

    5-4- توسعه برنامه بلادرنگ                             81

 

    5-5- اجرای برنامه روی برد توسعه گر C5402 DSK                 82

 

         5-5-1- بکارگیری ابزارهای توسعه نرم افزار                 84

 

        5-5-2- استفاده از نرم افزارCCS                      86

 

        5-5-3- نتایج پیاده سازی                         94

 

    5-6- نتیجه گیری و پیشنهاد                          97

 

- ضمائم

 

   - ضمیمه (الف) : دیسکت برنامه های شبیه سازی ممیز ثابت به زبان C و

 

                          پیاده سازی کدک به زبان اسمبلی                                                                                         - ضمیمه (ب) : مقایسه برنامه نویسی C و اسمبلی                         98

 

- مراجع                                         103

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 - مقدمه

 

امروزه در عصر ارتباطات و گسترش روزافزون استفاده از شبکه های تلفن ،موبایل و اینترنت در جهان ومحدودیت پهنای باند در شبکه های مخابراتی ، کدینگ و فشرده سازی صحبت امری اجتناب ناپذیر است . در چند دهه اخیر روشهای کدینگ مختلفی پدیدآمده اند ولی بهترین و پرکاربردترین آنها کدک های آنالیزباسنتز هستند که توسط Atal & Remedeدر سال 1982 معرفی شدند [2] . اخیرا مناسبترین الگوریتم برای کدینگ صحبت با کیفیت خوب در نرخ بیت های پائین و زیر 16 kbps ، روش پیشگویی خطی باتحریک کد (CELP) می باشد که در سال 1985 توسط Schroeder & Atal معرفی شد [8] و تا کنون چندین استاندارد مهم کدینگ صحبت بر اساس CELP تعریف شده اند .

 

در سال 1988 CCITT برنامه ای برای استانداردسازی یک کدک 16 kbps با تاخیراندک و      کیفیت بالا در برابر خطاهای کانال آغاز نمود و برای آن کاربردهای زیادی همچون شبکه PSTN ،ISDN ،تلفن تصویری و غیره در نظر گرفت . این کدک در سال 1992 توسط Chen et al.    تحت عنوان LD-CELP معرفی شد[6] و بصورت استاندارد G.728 در آمد[9] و در سال 1994 مشخصات ممیز ثابت این کدک توسط ITU ارائه شد[10] . با توجه به کیفیت بالای این کدک که در آن صحبت سنتزشده از صحبت اولیه تقریبا غیرقابل تشخیص است  و کاربردهای آن در شبکه های تلفن و اینترنت و ماهواره ای در این گزارش به پیاده سازی این کدک می پردازیم .

در فصل اول به معرفی وآنالیز سیگنال صحبت پرداخته می شود و در فصل دوم روش ها و استانداردهای کدینگ بیان می شوند . در فصل سوم کدک LD-CELP را بیشتر بررسی می کنیم و در فصل چهارم شبیه سازی ممیز ثابت الگوریتم به زبان C را بیان می نمائیم. ودر پایان در فصل 5 به نحوه پیاده سازی بلادرنگ کدکG.728 بر روی پردازنده TMS320C5402 می پردازیم.


دانلود با لینک مستقیم


پایان نامه ارشد پیاده سازی بلادرنگ کدک صحبت استاندارد G.728 بر روی پردازنده TMS320C5402

پایان نامه طراحی و پیاده سازی یک سیستم E-test

اختصاصی از فی ژوو پایان نامه طراحی و پیاده سازی یک سیستم E-test دانلود با لینک مستقیم و پر سرعت .

پایان نامه طراحی و پیاده سازی یک سیستم E-test


پایان نامه طراحی و پیاده سازی یک سیستم E-test

این فایل در قالب ورد و قابل ویرایش در 55 صفحه می باشد.

 

فهرست

مقدمه     ۱
فصل یکم -  نگاه کلی به سیستم های مدیریت آزمون آنلاین     ۳
۱-۱-  سیستم هایOTMS  و ویژگی آنها‏      ۳
۱-۲- شروع به کار و موانع موجود بر سر راه      ۴
۱-۳- مشخصات اولیه سیستم       ۵
فصل دوم- بانک اطلاعاتی     ۷
۲-۱- MYSQL       ۷
۲-۱-۱- انتخاب پایگاه داده و برتری های MYSQL       ۷
۲-۱-۲- رقبای اصلی MYSQL       ۹
۲-۲- طراحی بانک اطلاعاتی آزمون       ۱۱
فصل سوم- زبان برنامه نویسی PHP      ۱۷
۳-۱- PHP          ۱۷
۳-۱-۱- بررسی قابلیت های PHP     ۱۸
۳-۱-۲- مقایسه  PHP با سایر زبان ها    ۱۹
۳-۱-۳- معایب PHP    ۲۳
۳-۲- Form Validation     ۲۶
۳-۳- استفاده از Sessionها     ۲۷
فصل چهارم- آشنائی با سیستم مورد نظر ۳۴
۴-۱- روند کلی برگزاری آزمون ۳۴
۴-۲- آموزش گام به گام کار با سیستم    ۳۵
۴-۲-۱- بخش مدیریت(مدیر سیستم) ۳۵
۴-۲-۲- بخش مدیریت(مربی)        ۳۸
۴-۲-۳- بخش داوطلبان     ۴۱

فصل یکم –  نگاه کلی به سیستم های مدیریت آزمون آنلاین

 

۱-۱-    سیستم هایOTMS  و ویژگی آنها‏ ‏

سیستم های OTMS (Online Test Management System)،همان سیستم های مدیریت و برگزاری آزمون روی خط یا آنلاین هستند که کاربرد آنها روز به روز در حال افزایش بوده و به عنوان یکی از ابزارهای آموزش الکترونیکی مورد توجه قرار گرفته اند.

این سیستم ها در مقایسه با روش های برگزاری آزمون بصورت سنتی از مزایا و ویژگی های بسیار زیادی برخوردار هستند که اجمالا در اینجا بیان می شود.

 

ویژگی ها:

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

 

۱-۲-    شروع به کار و موانع موجود بر سر راه

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

شاید با HTML (مخفف زبان نشانه گذاری فرامتنی) به عنوان یکی از ساده ترین و مقدماتی ترین نوع از این زبان ها آشنا باشید. اما از آنجائی که این زبان قدرت ایجاد صفحاتی پویا به شکلی دوطرفه بین کاربر و سرویس دهنده را ندارد گزینه مناسبی برای ما به شمار نمی رود.

در واقع ما نیاز به زبانی داریم که بتواند با پایگاه داده موجود بر روی سرویس دهنده ارتباط برقرار کند و روی داده های مورد نظر پردازش و محاسبه انجام دهد(که این ویژگی در HTML یافت نمی شود)، بنابراین در این جستجو به زبان های .ASP،.PHP و.JSP می رسیم.

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

 جدول۱-۲- شروع به کار و موانع موجود بر سر راه

سیستم عامل

نرم افزار اجرا

پایگاه داده

زبان

Windows

IIS

SQL server

.ASP

هر سیستم عامل

Apache

My SQL

.PHP

هر سیستم عامل

TOM CAT

Java DB

.JSP

 

 

 

حال با توجه به برتری سیستم عامل های سرویس دهنده Linux ،ساده بودن و نزدیکی زبان PHP به زبان C، امکان استفاده آنها در سرویس دهنده سیستم عامل Windows و نیز نیاز به ارتباط پویا و دوطرفه با داوطلبان شرکت در آزمونها، از گزینه دوم موجود در این جدول برای پروژه خود استفاده خواهیم کرد.

 

۱-۳- مشخصات اولیه سیستم

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

 

این سیستم برای برگزاری آزمون تحت وب، و توسط زبان برنامه نویسی PHP پیاده سازی می شود.
در کنار PHP ،برای انعطاف بیشتر سیستم از Javascript و در بعضی از بخش ها از تکنولوژی Ajax استفاده خواهدشد.
از زبان MySQL  جهت ارتباط با پایگاه داده استفاده شده وPHPmyAdmin به عنوان DBMS در نظر گرفته شده است.
استفاده از نرم افزار WAMP ،جهت اجرای برنامه های تحت وب بر روی ویندوز.
تعریف سه سطح مدیر سیستم،مربی و داطلب. مدیر سیستم یا مربی با ورود به سیستم سوالات مورد نظر را طراحی کرده و در اختیار داوطلبان قرار می دهند.

در اینجا ما به جای نصب هر یک از نرم افزار های مورد نیاز برای این زبان از یک نرم افزار جداگانه به نام WAMPServer(مخففPHP Windows Apache MySQL) استفاده میکنیم. این نرم افزار که بر روی سیستم عامل Windows نصب می شود شامل نسخه ای از Apache، PHP و MySQL (phpMyAdmin و SQLitemanager برای مدیریت پایگاه داده) می باشد.

پس از نصب برنامه بالا برای ویرایش کدهای PHP نیاز به برنامه های ویرایشگری مانند EnginSite یا Dreamweaver  داریم که در اینجا به دلیل امکاناتی که Dreamweaver دارد از آن استفاده می کنیم.

 

مشکلات بر سر راه

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

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

 

فصل دوم – بانک اطلاعاتی

 

۲-۱- MY SQL

MY SQL بانک اطلاعاتی بسیار سریع و امن RDBMS است.MY SQL یکی از انواع سرویس دهنده های پایگاه داده است که با وجود اینکه نسبت به سایر DBMSهای موجود قدرتمند نمی باشد، اما بعلت قیمت و عملکرد مناسب آن، مورد استفاده گسترده قرار می گیرد. MY SQLیک سیستم مدیریت پایگاه داده رابطه ای (RDBMS) است که امکان ذخیره سازی،جستجو،مرتب سازی و بازیابی داده ها را فراهم می کند.سرویس دهنده MY SQL به چندین کاربر اجازه استفاده همزمان از داده ها را می دهد و دسترسی افراد معتبر به داده ها را تسریع می کند.بنابراین MY SQL یک سرویس دهنده چند کاربره و چند ریسمانه است.

این سیستم مدیریتی پایگاه داده، رایج ترین پایگاه داده کدباز(open Source) محسوب می شود.بدین دلیل MY SQL بانک اطلاعاتی با کاربران زیاد و کانال های متفاوت می باشد که MY SQL زبان استاندارد جهانی بانک های اطلاعاتی SQL را به کار می گیرد.

 

 ۲-۱-۱ انتخاب پایگاه داده و برتری های MYSQL 

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

یکی از تکنولوژی ها، ADO می باشد که در برنامه کاربردی نوشته شده از آن استفاده شده است.ADO یک واسط برنامه کاربردی از شرکت ماکروسافت است که به کاربرانی که برنامه های کاربردی ویندوز را می نویسند،این قابلیت را می دهد که به یک پایگاه داده رابطه ای و یا غیر رابطه ای چه محصول ماکروسافت باشد و یا از دیگر تولیدکنندگان دسترسی داشته باشند.

اما در PHP این مسائل نیست،یک مزیت بزرگ استفاده از یک زبان اسکریپتی مثل PHP قابلیت ایجاد محتوای پویا می باشد.اگرمنبع محتوا ورودی کاربر از محل متغیرهائی چون Session و یا فایلهای متنی باشد مشکلی وجود ندارد،اما برای داشتن اطلاعاتی ماندگارتر از طول حیات یک صفحه وب، نیاز است مدیریت داده و دیسک را به پایگاه داده ای بنام MY SQL بسپاریم که علاوه بر فراهم کردن شرایط استفاده از دستورات SQL و ایجاد یک سیستم مدیریت پایگاه داده(DBMS) به عنوان یک واسط عمل می کند و علاوه بر آن نیز خود در PHP دارای واسط کاربر است یعنی می توان دستورات MY SQL را با کمک Queryهای PHP به آن ارسال کرد.

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

سرعت،پایداری و قابلیت اطمینان؛

آیا MY SQL تمام نیازمندی های ذخیره و بازیابی داده ها را با توجه به آنچه در مورد این پروژه و نیز قابلیت های گفته شده در MY SQL ، تامین نمی کند؟!

 

  ۲-۱-۲ رقبای اصلی MYSQL

 رقبای اصلی MY SQL عبارتند از:SQL Server،PostgreSQL و Oracle.

در برابر این رقبا، MY SQL از مزیت های زیر بهره مند است:

کارآئی بالا،هزینه پائین،سهولت پیکربندی و یادگیری،قابلیت حمل،در دسترس بودن کد اصلی،خدمات    پشتیبانی مناسب.سرعت بالای MY SQL در مقایسه با رقیبانش غیر قابل انکار می باشد.

برای مقایسه توانائی های MY SQL و دیگر بانک ها ابتدا نگاهی به PostgreSQL می اندازیم که شاید بتوان آنرا پدربزرگ بانک های طلاعاتی کدباز دانست(تلفظ PostgreSQL بصورت Post-gress-q-l میباشد). PostgreSQL یک بانک اطلاعاتی کدباز به معنای واقعی کلمه است که تحت جواز ساده و قابل انتقال BSD منتشر شده است. PostgreSQL دارای امکانات ویژه ای است و از استانداردهای ANSI SQL92 وSQL92 هم تبعیت کرده که یا در بانک های دیگر وجود ندارد و اگر هم باشد،به این کاملی نیست. علاوه بر این کار با آبجکت ها و داده های سلسله مراتبی هم با این بانک اطلاعاتی میسر است.

توانائی PostgreSQL را در زمینه آبجکت ها و داده های سلسله مراتبی را در نظر بگیرید.گاهی اوقات باید این ویژگی را جز معایب برشمرد و در واقع گاهی استفاده از PostgreSQL مثل خوردن غذا با ملاغه است.

خوب اگر صرفا بخواهید چیزهائی مثل آدرس و شماره تلفن و آی دی در بانک ذخیره کنید،نیازی به یک بانک اطلاعاتی رابطه ای شی گرا(Object Relational) ندارید. PostgreSQL در شرایط low-load، به اندازه MY SQL سریع نیست و اگر نیاز شما صرفا یک ذخیره و بازیابی ساده است، بهتر است دورPostgreSQL را خط بکشید.

بالاخره اینکه PostgreSQL پیچیده تر از MY SQL بوده و مدیریت مجوزها به سادگی آن نمی باشد. در ضمن نحوه کار با PostgreSQL  برای کاربران خیلی دشوارتر بوده و در بین برنامه نویسان کاربران آن کمتر از کاربران MY SQL می باشد.

MY SQL را می توان محبوب ترین پایگاه داده کدباز جهان نامید. اما علیرغم چنین محبوبیتی، بسیاری از شرکت های بزرگ از قبول آن سرباز می زنند.دلایل گوناگونی مزید این علت است،از تصورات نادرستی که پروژه های کدباز را بچه گانه تلقی می کنند گرفته، تا عقایدی نظیر اینکه هیچ چیز رایگان خوب نیست،همه و همه چنین مقاومت هایی را دامن می زند.اگرچه ایرادات غالبا درستی از MY SQL گرفته می شود،برای مثال MY SQL بر خلاف همتاهای اتیکت دار خود نظیر اوراکل یا DB2، از Stored Procedureها پشتیبانی نمی کند.البته MY SQL در نسخه ۵ خود که هم اکنون در دست توسعه است،از Stored Procedureها پشتیبانی میکند.(در واقع PHP وMY SQL  هر دو در نسخه ۵،به بلوغ می رسند)

Stored Procedureها مجموعه ای از فرامین SQL و منطبق برنامه هستند که در سرویس دهنده بانک اطلاعاتی ذخیره می شوند،سپس این Stored Procedureها توسط برنامه های کاربردی،فراخوانی می شوند و از این رو برنامه نویسان را تاحدی از نوشتن SQL بی نیاز کرده تا اکثر منطق دسترسی به بانک از منطق خود برنامه کاربردی مجزا شود.

یکی از مزایای غیر مستقیم استفاده از Stored Procedureها،کوتاهتر و قابل فهم تر شدن کد برنامه کاربردی است.دیگر مزیت آن اینست که SQL می تواند Pre-Compile شده و از اینرو باعث افزایش سرعت برنامه کاربردی شود.از آنجا که Stored Procedureها حاوی منطق برنامه هستند،بیشتر پردازش در سمت سرویس دهنده بانک اطلاعاتی صورت می گیرد و بدین طریق در پهنای باندی که برای ارسال داده ها به برنامه کاربردی مصرف می شود،صرفه جوئی به عمل می آید.همچنین در هنگام پیاده سازی برنامه های کاربردی چند لایه(n-tier)، از Stored Procedureها برای جداسازی لایه داده از لایه سرویس دهنده استفاه می شود.

امنیت از دیگر مزایای Stored Procedureهاست.

می توان به برنامه های کاربردی مجوز اجرای Stored Procedureها را اعطا کرد در حالیکه مجوز دسترسی مستقیم به جداول را ندارند.متاسفانه در حال حاضر، MY SQL  از دستور GRANT EXECUTE پشتیبانی نمیکند.این بدان معناست که اگر برنامه کاربردی اجازه دسترسی به یک جدول را نداشته باشد،مجوز اجرای Stored Procedureای که به همان جدول دسترسی می یابد را هم نخواهد داشت.

MY SQL به یک رقیب جدی و سرسخت برای Oracle است،ضمن آنکه بطور قطع از SQL Server ماکروسافت برتر است.برخلاف پایگاه های داده رابطه ای ماکروسافت و اوراکل که از سینتکس فعلی SQL:2003 برای Stored Procedureها تبعیت نمی کنند، MY SQLو DB2با این استاندارد خود را تطبیق داده اند.از لحاظ تئوری،می توان گفت در صورتی که ساختار بانک اطلاعاتی مشابه باشد،Stored Procedure که برای یکی از آنها نوشته می شود در دیگری قابل اجراست.

بازهم لازم به یادآوری است که پشتیبانی از Stored Procedureها در نسخه در حال توسعه MY SQL به خوبی و پختگی اوراکل، SQL ServerوDB2 نیست.

یکی از نکاتی که باید دقت شود اینست که MY SQL از Unicode پشتیبانی می کند،نه بطور کامل.به این معنی که تنها در دستورات مربوط به Length و مقایسه کاراکترها هر کاراکتر Unicode را به صورت دو کاراکتر می بیند و برای همین تنها در دستوراتی مانند length یا طول رشته و دستور order در queryها مشکل بوجود می آید،اما مشکل sort قابل حل است.اما در مواردی هم MY SQL برای کار با Unicode مشکلی ندارد و این برای ما فارسی زبانان یک حسن است.

برای فارسی نویسی در MY SQL داده را اکثرا با فرمت utf-8 ردوبدل می کنند.بطور کلی زمانی که باMY SQL و PHP کار می کنید باید بدانیدکه اصولا PHP در کار با بانک اطلاعاتی MY SQL برای نگهداری اطلاعات شامل Unicode هیچ مشکلی ندارد و تمامی دستورات مقایسه وqueryها هم برایش درست کار می کنند.


دانلود با لینک مستقیم


پایان نامه طراحی و پیاده سازی یک سیستم E-test