اطلاعیه

Collapse
No announcement yet.

بدست آوردن الگوریتم با MATLAB و انجام پردازش با میکرو کنترلر

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    بدست آوردن الگوریتم با MATLAB و انجام پردازش با میکرو کنترلر

    سلام بر دوستان

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

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

    دوتا راه حل من به ذهنم رسیده، یکی کار با DSP هستش و یکی اینکه بیای قسمت پردازش اطلاعات رو با
    MATLAB بنویسی و بعد با C Coder نرم افزار MATLAB بیای الگوریتم کار رو در بیاری و برنامه میکرو رو بر اساس اون
    بنویسی. این روش دوم بسیار خام هستش و چون MATLAB کار نیستم نمی دونم اصلا چنین کاری انجام میشه
    یا یک طرح من در آوردی هستش؟

    به نظرتون بهترین کار چی هستش؟

    تشکر پیشاپیش
    شهریار
    Circuit Designers Choose Different Horses For Different Courses!

    #2
    پاسخ : بدست آوردن الگوریتم با MATLAB و انجام پردازش با میکرو کنترلر

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


    در واقع پرسسور نرم افزار متلب می باشد که با یک پروتکل ارتباطی موارد سخت افزاری توسط میکروکنترلر انجام می شود
    همواره يادمان باشد:
    1-مردان بزرگ اراده مي کنند و مردان کوچک آرزو
    2-افراد بزرگ، هميشه به دنبال ايده هاي بزرگند و افراد کوچک به دنبال افراد بزرگ
    3-هميشه سعي کن آنقدر کامل باشي که بزرگترين تنبيه تو براي ديگران گرفتن خودت از آنها باشد.

    دیدگاه


      #3
      پاسخ : بدست آوردن الگوریتم با MATLAB و انجام پردازش با میکرو کنترلر

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

      شهریار
      Circuit Designers Choose Different Horses For Different Courses!

      دیدگاه


        #4
        پاسخ : بدست آوردن الگوریتم با MATLAB و انجام پرداز&

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

        دیدگاه


          #5
          پاسخ : بدست آوردن الگوریتم با MATLAB و انجام پرداز&

          اگر برنامتون رو داخل متلب نوشتین و براتون سخته دوباره با c بنویسین باید دنبال تبدیل متلب به سی باشن.
          اما خوب به همین راحتی نیست ، توی اینترنت این رو سرچ کنید :

          کد:
          How to convert Matlab code to C code
          چند تا لینک زیر را نگاه کنید (البته فکر نکنم کارتون را راه بندازه) :

          http://www.electroline.com.au/articl...LAB-algorithms
          http://www.mathworks.co.uk/products/matlab-coder
          http://www.mathworks.com/products/********-coder/index.html

          اما به نظر من یکی از ۲ کار زیر را انجام بدید بهتره (البته اگه برنامه را با متلب نوشتید و میخواین به c تبدیل کنید ، اگر نه که از همون اول با c بنویسید)

          1 - تک تک دستوراتی که داخل متلب نوشتید رو بگردین دنبال معادلشون توی زبان c ، اگر معادل اون دستورات را پیدا نکردید ، یعنی اون تابع فقط مخصوص matlab بود ، خودتون اون تابع را بنویسید.

          ۲ - سعی کنید فایل پروژه متلبی که دارید را با GNU Octave باز کنید ، و اجرا کنید ، ببینید خروجیش همونی هست که متلب میداد یا نه ، یعنی عملا بجای متلب از این نرم افزار استفاده کنید و فایل های متلب را با این باز کنید.
          شاید بگین چه کاریه ؟! :mrgreen: خوب این نرم افزار اوپن سورس است ، اما متلب اوپن سورس نیست ، یعنی شما توی متلب نمیتونید دستوراتی که برای تابع sum() نوشته شده را ببینید !‌ اما داخل این نرم افزار شما میتونید کد هر تابعی که خواستید را ببینید . اینجوری راحت می تونید برنامه متلب را به c تبدیل کنید ، وقتی توی کامپیوتر تونستید با c همون خروجی متلب را بگیرید دیگه کار تمام هست ! کافیه شروع کنید به انتقال کد ها به avrgcc یا هر زبانی که میخواین.
          این هم سایت این نرم افزار :
          http://www.gnu.org/software/octave/

          دیدگاه


            #6
            پاسخ : بدست آوردن الگوریتم با MATLAB و انجام پردازش با میکرو کنترلر

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

            شهریار
            حالا شد!

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

            دانلود کد اصطلاح و روشی است که برای PLC استفاده می شه و در میکرو و سایر نرم افزار ها همچین چیزی مطرح نیست!

            لذا اگر قرار هست که کننده ی کار میکرو باشه. باید از همین اول با میکرو الگوریتمش نوشته بشه!
            یا اینکه پردازش با متلب و پیاده سازی با میکرو باشه!
            همواره يادمان باشد:
            1-مردان بزرگ اراده مي کنند و مردان کوچک آرزو
            2-افراد بزرگ، هميشه به دنبال ايده هاي بزرگند و افراد کوچک به دنبال افراد بزرگ
            3-هميشه سعي کن آنقدر کامل باشي که بزرگترين تنبيه تو براي ديگران گرفتن خودت از آنها باشد.

            دیدگاه


              #7
              پاسخ : بدست آوردن الگوریتم با MATLAB و انجام پردازش با میکرو کنترلر

              جسارتاً اون فیلتری رو که شما با متلب می تونین بزنی رو چطوری بشینی با C میکرو بنویسی
              بابات که در میاد
              در واقع غیر ممکنه

              شهریار
              Circuit Designers Choose Different Horses For Different Courses!

              دیدگاه


                #8
                پاسخ : بدست آوردن الگوریتم با MATLAB و انجام پردازش با میکرو کنترلر

                نوشته اصلی توسط شهریار
                جسارتاً اون فیلتری رو که شما با متلب می تونین بزنی رو چطوری بشینی با C میکرو بنویسی
                بابات که در میاد
                در واقع غیر ممکنه

                شهریار
                من نمی دونم شما چه کدی می خواهید بنویسید.
                حرف بنده هم همین بود، این دو با هم همپوشانی ندارند ، میکرو و متلب

                طبیعتاً منظور از میکرو برای این چنین کاربردهای پردازش بالایی میکرو ARM و ... است.



                یا پردازش با متلب و پیاده سازی با میکرو باشه!
                یا فقط میکرو!
                راه دیگری هست؟ بفرمایید ما هم یاد بگیریم!
                همواره يادمان باشد:
                1-مردان بزرگ اراده مي کنند و مردان کوچک آرزو
                2-افراد بزرگ، هميشه به دنبال ايده هاي بزرگند و افراد کوچک به دنبال افراد بزرگ
                3-هميشه سعي کن آنقدر کامل باشي که بزرگترين تنبيه تو براي ديگران گرفتن خودت از آنها باشد.

                دیدگاه

                لطفا صبر کنید...
                X