نمایش/عدم نمایش سایدبار
رفتن به بالای صفحه
آزادی حجاز از دست نااهلان
Avatar

پروژه لاجیک آنالایزر ساده با رزبری پای

به نام خدا : پروژه لاجیک آنالایزر ساده با رزبری پای ، تو این مطلب از سری مطالب پروژه رزبری پای ، میخوایم یه لاجیک آنالایزر با هم بسازیم و ببینم اصلا چی هستش و….
پروژه لاجیک آنالایزر ساده با رزبری پای

لاجیک آنالایزر چیست

یه دستگاهیه که باهاش میشه زمان تغییرات سطح ولتاژ منطقی رو استخراج کرد؛ کاربرد این دستگاه، در مشاهده سیگنال پورت های ارتباطی ( سریال، i2c و spi و… ) هست.
 

کاربرد لاجیک آنالایزر

میشه ازش در زمینه مهندسی معکوس استفاده کرد، مثلا میشه با مشاهده سیگنال دستگاه دیاگ ماشین، پروتوکل ارتباطی ECU ماشین رو استخراج کرد؛ وقتی شما پروتکل ارتباطی رو داشته باشید، می تونید باهاش ارتباط برقرار کنید، مثلا سرعت، کیلومتر پیموده شده رو بخونید و احیانا اونا رو تغییر بدید!!!
 

پروژه لاجیک آنالایزر ساده با رزبری پای و ذخیره اطلاعات در اکسل

شماتیک پروژه رزبری پای : 
پروژه لاجیک آنالایزر ساده با رزبری پای
مسلم است که بعد از تست های اولیه، به جای کلید از منبع پالس استفاده می شود!! LED هم برای تشخیص سطح ولتاژ یک، قرار داده شده است.
 
کد پروژه : ابتدا یه برنامه می نویسیم که زمان تغییر و استقرار سطوح منطقی پالس رو در یه فایل اکسل ذخیره کنه :

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

در حال نزدیک شدن به یوم الله 9 دی می باشیم؛ برخی از افراد جامعه، استراتژی مقابله مردم در مقابل مردم را ناجوانمردانه و عامل تفرقه می دانند و رویارویی یک گروه از جامعه در مقابل گروهی دیگر، برای حفاظت از حاکمیت را غیر اخلاقی می دانند. ( مثل دکتر علی مطهری )
در این باب، نامه ای از نهج البلاغه، می تواند راه گشای حق طلبان باشد.

نامه 29 نهج البلاغه که خطاب به مردم بصره نوشته شده است :

پس از هجوم عمرو عاص به مصـر و کشـته شدن محمد بن ابی بکر، مخالفان امام علی(ع) در بصره نیز به فکر شورش افتادند، صّحار بن عباس عبدي نامه اي به معاویه نوشت و از او خواست مردي را به بصـره بفرسـتد تا مخالفان را سازماندهی کند، معاویه خوشحال شد و ابن حضـرمی را فرسـتاد که تحرکاتی پدید آمد، و سـران و بزرگان قبائل رو در روي هم قرار گرفتند، وقتی به امام درکوفه اطّلاع دادند، آن حضـرت این نامه را خطاب به مردم بصره نوشتند :
شما از پیمان شکسـتن، و دشـمنی آشـکارا با من آگاهید. با این همه جرم شما را عفوکردم، و شمشیر از فراریان برداشتم، و استقبال کنندگان را پذیرفتم، و از گناه شـما چشم پوشیدم، اگر هم اکنون کارهاي ناروا، و اندیشه هاي نابخردانه، شـما را به مخالفت و دشمنی با من بکشاند، سپاه من آماده، و پا در رکابند. و اگر مرا به حرکت دوباره مجبور کنیـد، حمله اي برشـما روا دارم که جنگ جمل در برابر آن بسـیار کوچک باشد، با اینکه به ارزشهاي فرمانبردارانتان آگاهم، و حق نصـیحت کنندگان شـما را می شـناسم، و هرگز به جاي شخص مّتهمی، انسان نیکوکاري را نخواهم گرفت، و هرگز پیمان وفاداران را نخواهم شکست.
سرانجام پس از این نامه امام(ع) به مردم بصره، طرفداران آن حضرت، ابن حضرمی را شکست داده و او را کشتند. و فتنه را خاموش کردند.
منبع : نهج البلاغه نامه 29 و الغارات جلد 2 صفحه 373

 
در بخش بعدی، این تغییرات سطح ولتاژ رو به صورت گرافیکی نشان می دهیم.
طبق معمول چند موضوع آخر، برای انجام این پروژه، نیاز به نصب کتابخانه opencv روی رزبری دارید.
برای نصبش، به لینک زیر مراجعه فرمایید : نیازمندی های رزبری پای
جهت آشنایی با نحوه کار با پایه های ورودی و خروجی رزبری، به لینک زیر مراجعه فرمایید :
آموزش و پروژه gpio رزبری پای به زبان c
 

پروژه لاجیک آنالایزر ساده با رزبری پای و نمایش ساده و نموداری منطق 0 و 1

ابتدا یه برنامه ساده برای رسم تغییر سیگنال تولیدی توسط یک کلید فشاری می نویسیم؛ یه فایل cpp بسازید و کد زیر رو بنویسید و ذخیره کنید :

برنامه بالا، پس از هر بار تغییر وضعیت کلید ( لبه بالا رونده و پایین رونده )، تابع مربوط به روال وقفه خارجی فراخوانی میشه که در اون، به متغیر i یک واحد اضافه میشه و بنا بر وضعیت موجود، خط صفر یا یک رو در ماتریس img رسم می کنه.
و در حلقه اصلی برنامه هم، مقدار i و همچنین تصویر موجود در ماتریس img رو نمایش میده.
نتیجه رو در ویدئو زیر مشاهده فرمایید
http://www.aparat.com/v/KUJmo

عوض شدن احتمالی جای صفر یک، به علت لرزش کلید فشاریست.
 

پروژه لاجیک آنالایزر ساده با رزبری پای و نمایش نموداری اطلاعات

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

نتیجه کد بالا رو در ویدئو زیر مشاهده می فرمایید :
http://www.aparat.com/v/wksc0

پیشنهادات :

  • احتمالا دریافتید که زمان پالس ها با شکل خروجی متناسب نیست؛ برای حل این مشکل، کافیه که ضریبی از متغیر p رو در اسکیل شکل خروجی دخیل کنید، و برای تعداد پالس های زیاد، اندازه ماتریس img رو بزرگتر کنید.
  • بهتر است تا صفحه را درجه  درجه بندی کنید ( grid )
  • با اضافه کردن یک مبدل آنالوگ به دیجیتال، می توانید یک اسیلوسکوپ جمع و جور درست کنید!!!

 
جهت هر چه مستحکم تر شدن مقام ولایت فقیه و تعجیل درظهور بابای خوبمون مهدی(عج) صلوات
 
آیت الله جوادی آملی : بانک های ربوی باید تحریم شوند.
http://www.aparat.com/v/WD5ZI

گروه پرسش و پاسخ الکترونیکی در سروش
تعداد مطالب : 29 تا
Avatar دانش آموخته (فارغ التحصیل سابق) کارشناسی الکترونیک هستم. سه سال اول دانشگاه رو به نحو احسن هدر دادم رفت!! تا پایان ترم هفتم داشتم فکر می کردم که چی کار کنم و چی کار نکنم؟ ترم هشتم اساتید خوبی داشتم و تصمیم گرفتم،یه تکونی به خودم بدم. الان هم در حال یاد گیری علایقم هستم...
ارسال دیدگاه
12

1) نظرات غیر فارسی به صورت خودکار حذف میشوند ( حداقل 5 حرف فارسی وارد کنید ).

2) به موارد درخواست پروژه/کد آماده و سوالاتی که بلد نباشم پاسخ داده نمیشه.

3) برای گزاشتن کدهاتون از این سایت استفاده کنید ( طبیعتا لینک کدتون رو باید برای من بفرستید! ) : debian

4) پسورد فایل های سایت : www.dmf313.ir

  1. Avatar

    مهمان

    کوثر

    سلام یه پروژه با برنامه avrمیخواستم کسی داره
    یا یه راهنمایی کنه؟؟

    • Avatar

      نویسنده این مطلب

      محمدرضا اسلامی

      سلام پروژه نداریم!!!ولی اگر کمکی از دستمون بربیاد،دریغ نمی کنیم.
      لینک گروه در سروش:
      گروه الکترونیک در سروش

  2. Avatar

    مهمان

    صادق

    با سلام و عرض ادب
    ممنون بابت آموزش آیا این اندازی های که داخل اکسل ذخیره میشه دقیق هستش میشه بهش اطمینان کرد یا خیر!
    ممنون میشم جواب رو به ایمیل من ارسال کنید با تشکر

    • Avatar

      نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      متاسفانه لاجیک آنالایزر ندارم تا مقایسه کنم.
      ولی روی کاغذ، تا فرکانس ۱۰۰ کیلو هرتز،با دقت خوبی اندازه گیری می کنه.

  3. Avatar

    مهمان

    رضا

    سلام خدمت جناب مهندس من تا حالا با زبان cرو میکرو کنترلر avrکار میکردم حالامیخوام با رزبری پروژه هامو انجام بدم زبان cواسه رزبری چه جوری به همه امکانات دسترسی هست؟

    • Avatar

      نویسنده این مطلب

      محمدرضا اسلامی

      سلام
      بنده مهندس نیستم،معمولیم…
      بله با زبان c و c++ به خوبی قابل استفاده هست.

  4. Avatar

    مهمان

    علیرضا بیطاری

    سلام. اول از همه از سایت بسیار خوبتون خیلی سپاسگزارم.
    همچنین یه سوال هم داشتم. فرض کنید ما یک پروژه درست کردیم که یه برنامه با محیط گرافیکی (GUI) داره. حالا میخوام یه جورایی رزبین رو قفل بکنیم. منظورم اینه که Deploy کنیم. یعنی طوری بشه که دیگه نشه بهش کیبورد و موس وصل کرد و یا به قسمت های مختلف سیستم عامل دسترسی داشت. فقط همون GUI اختصاصی که خودمون درست کردیم هنگام Boot بیاد بالا. میخواستم بدونم همچین کاری امکان پذیر هست و اگر هست چطور ؟
    خیلی ممنونم.
    موفق باشید.

    • Avatar

      نویسنده این مطلب

      محمدرضا اسلامی

      اجرای یک برنامه به صورت اتوماتیک امکان پذیره ولی قفل کردن رو تا چند روز آینده امکان تست ندارم که جواب بدم.

  5. Avatar

    مهمان

    میثم

    سلام
    میشه باهاش ecu ماشین رو کنترل کرد؟ اگه میشه یه توضیحی بفرمایید
    mpars590@yahoo.com
    علی یارتون

    • Avatar

      نویسنده این مطلب

      محمدرضا اسلامی

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

    • Avatar

      مهمان

      میثم

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

      • Avatar

        نویسنده این مطلب

        محمدرضا اسلامی

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