فهرست مطالب:

مغناطیس سنج آردوینو: 5 مرحله (همراه با تصاویر)
مغناطیس سنج آردوینو: 5 مرحله (همراه با تصاویر)

تصویری: مغناطیس سنج آردوینو: 5 مرحله (همراه با تصاویر)

تصویری: مغناطیس سنج آردوینو: 5 مرحله (همراه با تصاویر)
تصویری: حرکات زشت سحر قریشی در باشگاه مردانه در دبی#سحرقریشی #امیرتتلو #تتلو #سحر_قریشی 2024, سپتامبر
Anonim
مغناطیس سنج آردوینو
مغناطیس سنج آردوینو

چه می سازیم؟

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

آردوینو چیست؟

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

قبل از شروع این آموزش ، محیط توسعه Arduino و همچنین کتابخانه های مورد نیاز برای مدل خاص خود را بارگیری کنید. محیط توسعه در https://www.arduino.cc/en/main/software و دستورالعمل نصب در https://www.arduino.cc/fa/main/software در دسترس است.

میدان مغناطیسی چیست؟

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

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

بعد ، میدان مغناطیسی در هر نقطه از فضا با یک بردار نشان داده می شود. بزرگی بردار نشان دهنده قدرت میدان مغناطیسی است. جهت عمود بر جهت نیرو و جهت جریان آزمایش است.

ما می توانیم میدان مغناطیسی را در یک مکان واحد به صورت یک پیکان تصویر کنیم. ما می توانیم میدان مغناطیسی را در سراسر فضا با آرایه ای از فلش در مکان های مختلف ، احتمالاً در اندازه های مختلف و در جهت های مختلف نشان دهیم. تصویری زیبا در https://www.falstad.com/vector3dm/ موجود است. مغناطیس سنجی که ما در حال ساخت آن هستیم ، میدان مغناطیسی را در محل سنسورها به صورت پیکان روی صفحه نمایش می دهد.

سنسور اثر هال چیست و چگونه کار می کند؟

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

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

تصویر
تصویر

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

تصویر
تصویر

فرافکنی ایزومتریک چیست؟

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

در فرافکنی ایزومتریک ، محورهای x ، y و z 120 درجه از هم فاصله دارند و به طور مساوی در جلو خم شده به نظر می رسند. اطلاعات اضافی در مورد طرح ایزومتریک و همچنین فرمول های مورد نیاز را می توانید در صفحه ویکی پدیا در این زمینه پیدا کنید.

مرحله 1: وسایل را جمع آوری کنید

آردوینو و کابل

آردوینو مغز مغناطیس سنج است. این دستورالعمل نحوه استفاده از Arduino Uno یا Arduino MKR1010 را توضیح می دهد. در هر صورت ، برای اتصال آن به کامپیوتر به کابل نیاز است.

گزینه 1: Arduino Uno و کابل USB AB

www.digikey.com/product-detail/fa/arduino/A000066/1050-1024-ND/2784006

www.digikey.com/product-detail/fa/stewart-connector/SC-2ABE003F/380-1424-ND/8544570

گزینه 2: آردوینو MKR1010 و کابل microUSB

www.digikey.com/product-detail/fa/arduino/ABX00023/1050-1162-ND/9486713

www.digikey.com/product-detail/fa/stewart-connector/SC-2AMK003F/380-1431-ND/8544577

صفحه نمایش TFT

TFT مخفف کلمه ترانزیستور فیلم نازک است. این صفحه نمایش 1.44 اینچی شامل 128 در 128 پیکسل است. کوچک ، روشن و رنگارنگ است. به یک صفحه شکست متصل می شود. با این حال ، پین های سربرگ جدا می شوند ، بنابراین باید آنها را لحیم کنید. (لحیم و آهن لحیم کاری هستند مورد نیاز است.)

www.digikey.com/product-detail/fa/adafruit-industries-llc/2088/1528-1345-ND/5356830

    تصویر
    تصویر
  • سنسورهای اثر هال آنالوگ

سه سنسور اثر هال مورد نیاز است. پیوند زیر مربوط به قطعه Allegro A1324LUA-T است. برای این سنسور ، پایه 1 ولتاژ تغذیه ، پایه 2 زمین و پایه 3 خروجی است. سنسورهای دیگر Hall نیز باید کار کنند ، اما مطمئن شوید که آنالوگ هستند نه دیجیتال. اگر از سنسور متفاوتی استفاده می کنید ، پین را بررسی کنید و در صورت نیاز سیم کشی را تنظیم کنید. (من در واقع از یک سنسور متفاوت از همان شرکت برای آزمایش استفاده کردم. با این حال ، سنسوری که من استفاده کردم منسوخ شده است و این سنسور جایگزین آن است.)

www.digikey.com/product-detail/fa/allegro-microsystems-llc/A1324LUA-T/620-1432-ND/2728144

تخته نان کوچک و سیم

www.digikey.com/product-detail/fa/adafruit-industries-llc/239/1528-2143-ND/7244929

آهنرباهای دائمی برای آزمایش

آهنرباهای یخچال خوب کار می کنند.

مرحله 2: سیم کشی

سیم کشی
سیم کشی

سرصفحه های روی صفحه را لحیم کنید.

تصویر
تصویر

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

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

تصویر
تصویر

سیم کشی بین MKR1010 و Uno به دو دلیل کمی متفاوت است. ابتدا آردوینو و صفحه نمایش با SPI ارتباط برقرار می کنند. مدل های مختلف آردوینو دارای پین های اختصاصی متفاوتی برای خطوط SPI خاص هستند. دوم ، ورودی های آنالوگ Uno می توانند تا 5 ولت را دریافت کنند در حالی که ورودی های آنالوگ MKR1010 فقط تا 3.3 ولت را می پذیرند. ولتاژ تغذیه توصیه شده برای سنسورهای اثر هال 5 ولت است. خروجی های سنسور به ورودی های آنالوگ آردوینو متصل هستند ، و این می تواند به اندازه ولتاژ منبع تغذیه باشد. برای Uno ، از منبع تغذیه توصیه شده 5 ولت برای سنسورها استفاده کنید. برای MKR1010 ، از 3.3 ولت استفاده کنید تا ورودی آنالوگ آردوینو هرگز ولتاژ بزرگتر از توان خود را نبیند.

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

سیم کشی با Arduino Uno

تصویر
تصویر

صفحه نمایش دارای 11 پین است. موارد زیر را به Arduino Uno وصل کنید. (NC به این معنی است که متصل نیست.)

  • Vin → 5V
  • 3.3 → NC
  • Gnd → GND
  • SCK → 13
  • SO → NC
  • SI → 11
  • TCS 10 پوند
  • RST → 9
  • D/C → 8
  • CCS → NC
  • Lite → NC

Vin سنسورها را به 5 ولت آردوینو وصل کنید. زمین سنسور را به زمین آردوینو وصل کنید. خروجی سنسورها را به ورودی های آنالوگ A1 ، A2 و A3 آردوینو وصل کنید.

تصویر
تصویر

سیم کشی با آردوینو MKR1010

تصویر
تصویر

صفحه نمایش دارای 11 پین است. آنها را به صورت زیر به آردوینو وصل کنید. (NC به این معنی است که متصل نیست.)

  • Vin → 5V
  • 3.3 → NC
  • Gnd → GND
  • SCK → SCK 9
  • SO → NC
  • SI -MOSI 8
  • TCS → 5
  • RST → 4
  • D/C → 3
  • CCS → NC
  • Lite → NC

Vin سنسورها را به Vcc آردوینو وصل کنید. این پین در 3.3V است ، نه 5V. زمین سنسور را به زمین آردوینو وصل کنید. خروجی سنسورها را به ورودی های آنالوگ A1 ، A2 و A3 آردوینو وصل کنید.

تصویر
تصویر

مرحله 3: صفحه را آزمایش کنید

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

محیط توسعه Arduino را باز کنید. به Tools → Manage Libraries بروید. کتابخانه های Adafruit_GFX ، Adafruit_ZeroDMA و Adafruit_ST7735 را نصب کنید. راه اندازی مجدد محیط توسعه Android.

گرافیکی ترین نمونه همراه کتابخانه ها است. بازش کن. فایل → مثالها → Adafruit ST7735 and ST7789 Library → graphicstest. برای انتخاب 1.44 اینچ ، نظر را در خط 95 و بدون نظر در خط 98 نمایش دهید.

نسخه اصلی:

94 // اگر از صفحه TFT 1.8 اینچی استفاده می کنید از این مقداردهنده اولیه استفاده کنید:

95 tft.initR (INITR_BLACKTAB) ؛ // تراشه Init ST7735S ، زبانه سیاه 96 97 // یا در صورت استفاده از TFT 1.44 TFT: 98 //tft.initR(INITR_144GREENTAB) ؛ // تراشه Init ST7735R ، برگه سبز ، از این مقداردهنده اولیه (بدون نظر) استفاده کنید.

نسخه صحیح صفحه نمایش 1.44 اینچی:

94 // اگر از صفحه TFT 1.8 اینچی استفاده می کنید از این مقداردهنده اولیه استفاده کنید:

95 //tft.initR(INIT_BLACKTAB) ؛ // تراشه Init ST7735S ، تب سیاه 96 97 // یا در صورت استفاده از TFT 1.44 اینچی: 98 tft.initR (INITR_144GREENTAB) ؛ // تراشه Sit35 Sit ، برگه سبز ، از این مقداردهنده اولیه (بدون نظر) استفاده کنید.

صفحه نمایش با استفاده از SPI ارتباط برقرار می کند و مدل های مختلف آردوینوس از پین های اختصاصی متفاوتی برای برخی از خطوط ارتباطی استفاده می کنند. گرافیکی ترین مثال برای کار با پین های Uno تنظیم شده است. اگر از MKR1010 استفاده می کنید ، خطوط زیر را بین خطوط 80 و 81 اضافه کنید.

اصلاحات MKR1010:

80

#تعریف TFT_CS 5 #تعریف TFT_RST 4 #تعریف TFT_DC 3 #تعریف TFT_MOSI 8 #تعریف TFT_SCLK 9 Adafruit_ST7735 tft = Adafruit_ST7735 (TFT_CS، TFT_DC، TFT_MTS، TFT_MTOS، 81 شناور p = 3.1415926؛

نمونه گرافیکی اصلاح شده را ذخیره کنید. اگر هنوز این کار را نکرده اید ، آردوینو را به کامپیوتر وصل کنید. به قسمت Tools → Board and Tools → Port بروید تا مطمئن شوید کامپیوتر می تواند Arduino را پیدا کند. به Sketch → Upload بروید. اگر مثال کار کند ، صفحه نمایش خطوط ، مستطیل ها ، متن و نمایشی کامل را نشان می دهد. در صورت نیاز به عیب یابی ، آموزش Adafruit جزئیات بیشتری را ارائه می دهد.

مرحله 4: کد مغناطیس سنج

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

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

راه اندازی () نمایشگر را اولیه می کند

حلقه () شامل حلقه اصلی برنامه است. صفحه را سیاه می کند ، محورها را ترسیم می کند ، ورودی ها را می خواند و فلش نشان دهنده بردار میدان مغناطیسی را ترسیم می کند. دارای نرخ تجدید یک ثانیه است که با تغییر خط 127 قابل تغییر است

DrawAxes3d () محورهای x ، y و z را ترسیم و برچسب گذاری می کند

DrawArrow3d () ورودی x ، y و z را در محدوده 0 تا 1023 دریافت می کند. از این مقادیر ، نقاط پایانی فلش در فضا را محاسبه می کند. سپس ، از توابع isometricxx () و isometricyy () برای محاسبه نقاط پایانی روی صفحه استفاده می کند. در نهایت ، پیکان را می کشد و ولتاژهای پایین صفحه را چاپ می کند

Isometricxx () مختصات x پیش بینی ایزومتریک را پیدا می کند. مختصات x ، y و z یک نقطه را می گیرد و محل پیکسل x مربوطه را روی صفحه باز می گرداند

Isometricyy () مختصات y از پیش بینی isometric را پیدا می کند. مختصات x ، y و z یک نقطه را گرفته و محل پیکسل y مربوطه را روی صفحه باز می گرداند

قبل از اجرای کد ، باید مشخص کنیم از کدام پین برای ارتباط SPI با صفحه نمایش استفاده کنیم و ولتاژ منبع سنسورها را مشخص کنیم. اگر از MKR1010 استفاده می کنید ، خطوط 92-96 و همچنین خط 110 را کامنت کنید. سپس ، خطوط 85-89 و همچنین خط 108 را کامنت نکنید. اگر از Uno استفاده می کنید ، خطوط 85-89 و همچنین خط 108 را کامنت کنید. سپس خطوط 92-96 و همچنین خط 110 را بدون نظر بیان کنید.

کد را بارگذاری کنید ، Sketch → بارگذاری کنید.

شما باید محورهای x ، y و z را با رنگ قرمز مشاهده کنید. یک پیکان سبز با دایره آبی برای نوک نشان دهنده بردار میدان مغناطیسی در حسگرها است. قرائت ولتاژ در سمت چپ پایین نمایش داده می شود. وقتی آهنربا را به سنسورها نزدیک می کنید ، خواندن ولتاژ باید تغییر کند و اندازه پیکان افزایش یابد.

تصویر
تصویر

مرحله 5: کار آینده

کار آینده
کار آینده

مرحله بعدی کالیبراسیون دستگاه است. برگه داده سنسور اطلاعاتی در مورد نحوه تبدیل مقادیر ولتاژ خام سنسور به قدرت میدان مغناطیسی ارائه می دهد. کالیبراسیون را می توان با مغناطیس سنج دقیق تری مقایسه کرد.

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

میدان مغناطیسی تابعی از موقعیت است ، بنابراین در هر نقطه از فضا متفاوت است. این دستگاه از سه سنسور استفاده می کند ، یکی برای اندازه گیری x ، y و جزء z میدان مغناطیسی در یک نقطه. سنسورها نزدیک یکدیگر هستند اما در یک نقطه نیستند و این وضوح مغناطیس سنج را محدود می کند. جالب است که قرائت میدان مغناطیسی را در نقاط مختلف ذخیره کنید و سپس آنها را به صورت مجموعه ای از فلش ها در مکان های مربوطه نمایش دهید. با این حال ، این پروژه ای برای یک روز دیگر است.

منابع

اطلاعات کتابخانه های Adafruit Arduino Graphics

https://learn.adafruit.com/adafruit-1-44-color-tft-with-micro-sd-socket/overview

تجسم میدان مغناطیسی

https://www.falstad.com/vector3dm/

اطلاعاتی در مورد سنسورهای اثر هال و اثر هال

  • https://sensing.honeywell.com/index.php؟ci_id=47847
  • https://www.allegromicro.com/~/media/Files/Datasheets/A1324-5-6-Datasheet.ashx

اطلاعات مربوط به فرافکنی ایزومتریک

  • https://fa.wikipedia.org/wiki/3D_projection
  • https://fa.wikipedia.org/wiki/Isometric_projection

توصیه شده: