فهرست مطالب:

TfCD - به علاوه: 7 مرحله
TfCD - به علاوه: 7 مرحله

تصویری: TfCD - به علاوه: 7 مرحله

تصویری: TfCD - به علاوه: 7 مرحله
تصویری: 6 HP SAMSUNG HARGA 3 JUTAAN TERBAIK AKHIR TAHUN 2022 2024, جولای
Anonim
Image
Image
عناصر
عناصر

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

مرحله 1: مواد لازم

عناصر
عناصر
عناصر
عناصر

1 تمشک پی صفر w

1 شتاب سنج شیار Adxl345

4 LED Ws2812b

1 تخته نمونه سازی

محفظه های چاپ سه بعدی و برش لیزری

مرحله 2: سخت افزار

سخت افزار
سخت افزار
سخت افزار
سخت افزار
سخت افزار
سخت افزار
سخت افزار
سخت افزار

LED ها

LED های Neopixel دارای 4 پین به نام های +5V ، GND ، Data In و Data out هستند.

  1. پین 4 تمشک pi به 5V تمام LED ها متصل است
  2. پایه 6 تمشک pi به GND همه LED ها متصل است
  3. داده ها در پین اولین LED به پایه 12 در تمشک pi متصل می شود.
  4. پین Data out اولین LED به Data در LED دوم و غیره متصل می شود.

لطفاً برای درک بهتر به نمودار سیم کشی نگاه کنید.

شتاب سنج

شتاب سنج دارای 4 پین به نام های VCC ، GND ، SDA و SCL است.

  1. پین 1 تمشک pi به VCC متصل است.
  2. پین 3 تمشک pi به SCL متصل است.
  3. پین 5 تمشک pi به SDA متصل است.
  4. پایه 9 تمشک pi به GND متصل است.

ساختن

  1. برای سهولت ، LED ها را می توان روی یک تخته نمونه سازی لحیم کرد. ما تصمیم گرفته ایم که تخته را به شکل یک پلاس برش دهیم تا به خوبی در کیس طراحی شده سه بعدی قرار گیرد.
  2. هنگامی که LED ها را روی برد لحیم کردیم ، سیم های بلوز را لحیم می کنیم تا اتصالات را بین اتصال هدر 0.1 اینچی و LED ها ایجاد کنیم. اتصال سربرگ برای اجازه می دهد تا تمشک pi قطع شود و مجدداً برای پروژه آینده استفاده شود.

مرحله 3: نرم افزار

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

تصویر سیستم عامل رزبری پای

ابتدا باید رزبری پای را راه اندازی کنیم. برای انجام این کار مراحل زیر را دنبال می کنیم:

  1. آخرین نسخه Raspbian را از اینجا بارگیری کنید. می توانید آن را مستقیماً یا از طریق تورنت بارگیری کنید. برای نوشتن سیستم عامل بارگیری شده در کارت SD (کارت SD micro در مورد مدل Raspberry Pi B+ و Raspberry Pi Zero) به یک نویسنده تصویر نیاز دارید.
  2. بنابراین "win32 disk imager" را از اینجا بارگیری کنید. کارت SD را در لپ تاپ/رایانه قرار دهید و تصویر نویس را اجرا کنید. پس از باز شدن ، فایل بارگیری شده Raspbian را مرور کرده و انتخاب کنید. دستگاه صحیح را انتخاب کنید ، درایو نشان دهنده کارت SD است. اگر درایو (یا دستگاه) انتخاب شده با کارت SD متفاوت باشد ، درایو انتخابی دیگر خراب می شود. خیلی مراقب باش.
  3. پس از آن ، روی دکمه "نوشتن" در پایین کلیک کنید. به عنوان مثال ، تصویر زیر را ببینید ، جایی که درایو کارت SD (یا micro SD) با حرف "G: \" نشان داده شده است ، سیستم عامل اکنون برای استفاده عادی آماده است. با این حال در این آموزش ما قصد داریم از Raspberry Pi در حالت بدون سر استفاده کنیم. این بدان معناست که مانیتور فیزیکی و صفحه کلید متصل به آن نیست!
  4. پس از سوزاندن کارت SD ، آن را از رایانه خود خارج نکنید! برای باز کردن فایل config.txt که در کارت SD وجود دارد ، از ویرایشگر متن استفاده کنید. به پایین بروید و dtoverlay = dwc2 را به عنوان آخرین خط اضافه کنید:
  5. فایل config.txt را به صورت متن ساده ذخیره کرده و سپس cmdline.txt را باز کنید. پس از rootwait (آخرین کلمه در خط اول) یک فاصله اضافه کنید و سپس modules-load = dwc2، g_ether
  6. اکنون کارت SD را از رایانه خود بردارید و آن را در رزبری پای وارد کرده و با استفاده از کابل USB به رایانه خود وصل کنید. پس از راه اندازی سیستم عامل ، باید یک دستگاه Ethernet Gadget جدید کشف شود.
  7. برای اتصال به برد و کنترل از راه دور می توانید از ssh [email protected] استفاده کنید. برای راهنمایی دقیق تر در مورد عملکرد بدون سر به اینجا بروید.

کتابخانه rpi_ws281x کلیدی است که استفاده از NeoPixels با رزبری پای را ممکن می سازد.

ابتدا باید ابزارهای مورد نیاز برای کامپایل کتابخانه را نصب کنیم. در اجرای Raspberry Pi: sudo apt-get update && sudo apt-get install build-based python-dev git scons swig حالا این دستورات را برای بارگیری و کامپایل کتابخانه اجرا کنید:

git clone https://github.com/jgarff/rpi_ws281x.git && cd rpi_ws281x && scons در نهایت ، پس از موفقیت آمیز بودن کتابخانه ، می توانیم آن را برای پایتون با استفاده از موارد زیر نصب کنیم:

cd python && sudo python setup.py install حالا کد پایتون که LED ها را هدایت می کند آمده است. این کد نسبتاً ساده است و برخی نظرات به شما کمک می کند. از واردات neopixel * # پیکربندی NeoPixel LED_PIN = 18 # پین GPIO رزبری پای متصل به پیکسل LED_BRIGHTNESS = 255 # برای تاریک ترین و 255 برای روشن ترین LED_COUNT = 4 # تعداد نوار پیکسل LED = Adafruit_NeoPixel (LED_COUNT ، LED_PIN ، 5 ، غلط ، LED_BRIGHTNESS ، 0 ، ws. WS2811_STRIP_GRB) # راه اندازی کتابخانه strip.begin () strip.setPixelColor (0 ، رنگ (255 ، 255 ، 255)) strip.show ()

درایور ADXL345

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

با استفاده از sudo raspi-config با ابزار پیکربندی Raspbian تماس بگیرید. پس از اجرا ، به Interfacing Options ، Advanced Options بروید و سپس I2C را فعال کنید. ماژول های مربوط به پایتون را نصب کنید تا بتوانیم از رابط I2C در پایتون استفاده کنیم:

sudo apt-get install python-smbus i2c-tools کد پایتون زیر به ما امکان می دهد با سنسور شتاب سنج ارتباط برقرار کرده و مقادیر ثبات آن را برای اهداف خود بخوانیم. import smbus import struct # bus configurations bus = smbus. SMBus (1) address = 0x53 gain = 3.9e-3 bus.write_byte_data (address، 45، 0x00) # برو به گذرگاه حالت آماده به کار. write_byte_data (آدرس ، 44 ، 0x06) # پهنای باند 6.5Hz bus.write_byte_data (آدرس ، 45 ، 0x08) # رفتن به حالت اندازه گیری # خواندن داده ها از حسگر buf = bus.read_i2c_block_data (آدرس ، 50 ، 6) # بازکردن داده ها از int16_t به داده های صحیح پایتون = struct.unpack_from ("> hhh" ، بافر (bytearray (buf)) ، 0)

x = float (داده [0]) * افزایش

y = float (داده [1]) * افزایش

z = float (داده [2]) * افزایش

آشکارساز حرکت

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

accel = getAcceleration ()

dx = abs (prevAccel [0] - accel [0])

dy = abs (prevAccel [1] - accel [1])

dz = abs (prevAccel [2] - accel [2])

if dx> moveThreshold یا dy To> moveThreshold یا dz> moveThreshold:

چاپ "منتقل شد"

منتقل شد = درست

دیگری:

جابجا شده = غلط

API آب و هوا

برای دریافت پیش بینی آب و هوا می توانیم از Yahoo Weather استفاده کنیم. این شامل صحبت با Yahoo Weather Rest API است که می تواند بسیار پیچیده باشد. خوشبختانه برای ما ، بخش سخت در حال حاضر در قالب ماژول آب و هوا برای پایتون مراقبت شده است.

  1. ابتدا باید این ماژول را با استفاده از: sudo apt install python-pip && sudo pip install weather-api نصب کنیم.
  2. لطفاً برای اطلاعات بیشتر در مورد این ماژول به وب سایت نویسنده مراجعه کنید.

پس از نصب کد زیر وضعیت آب و هوا را برای این لحظه دریافت می کند

از واردات آب و هوا Weatherweather = آب و هوا ()

مکان = weather.lookup_by_location ('dublin')

شرط = location.condition ()

چاپ (condition.text ())

همه اش را بگذار کنار هم

کل کد پروژه که تمام قطعات فوق را به هم متصل می کند را می توانید در اینجا پیدا کنید.

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

برای اینکه بتوانیم تمشک pi را در یک جعبه قرار دهیم و هر بار که آن را به برق وصل می کنیم کد ما را اجرا کند ، باید مطمئن شویم که کد هنگام بوت شدن به طور خودکار شروع می شود. برای این کار از ابزاری به نام cron استفاده می کنیم.

  1. ابتدا با ابزار cron تماس بگیرید: sudo crontab -e
  2. مراحل قبلی یک فایل پیکربندی باز می کند که در آن خط زیر را اضافه می کنیم:

    reboot python /home/pi/light.py &

مرحله 4: مدل سازی و چاپ سه بعدی

مدل سازی و چاپ سه بعدی
مدل سازی و چاپ سه بعدی
مدل سازی و چاپ سه بعدی
مدل سازی و چاپ سه بعدی

مدل سه بعدی پلاس در Solidworks ساخته شده و در قالب. Stl ذخیره شده است. سپس برای چاپ سه بعدی مدل ، فایل. Stl در نرم افزار Cura وارد شد. تولید هر طرف به علاوه 2:30 ساعت طول کشید. بنابراین هر پلاس کامل حدود 5 ساعت طول می کشد تا چاپ شود. و برای قسمت های شفاف پلکسی گلاس برش لیزری داده شد.

مرحله 5: مونتاژ

مونتاژ
مونتاژ
مونتاژ
مونتاژ
مونتاژ
مونتاژ
مونتاژ
مونتاژ

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

  1. به نظر می رسد صفحات بالا و پایین چاپ سه بعدی ، شفاف تر از آن چیزی است که پیش بینی می شد. یک لایه فویل آلومینیومی مشکل نشت نور را حل کرد.
  2. با این حال ، این ورق ها رسانا هستند و می توانند باعث ایجاد شورت در مدار محافظت نشده ما شوند. بنابراین یک لایه دیگر از تخته کارت سفید روی آن چسبانده شده است.
  3. قطعات پلکسی گلاس منتشر شده به یکی از صفحات جانبی چسبانده شده است.
  4. در یکی از پانل های چاپ سه بعدی جانبی حفره ای ایجاد شده است. این برای این است که بتوانیم از سیم برق عبور کنیم.
  5. هنگامی که سیم برق از طریق سوراخ نصب می شود ، آن را روی تخته نمونه خود لحیم می کنیم.
  6. سنسور را به تمشک pi متصل می کنیم و سپس آن را به کانکتور وصل می کنیم.
  7. ما 2 قطعه را به هم وصل می کنیم تا محصول نهایی خود را بدست آوریم.
  8. به صورت اختیاری می توانید 2 قطعه را بچسبانید تا اتصال دائمی تری ایجاد شود. اما توجه داشته باشید که اگر بعداً بخواهید کد را تغییر دهید ، ورود به جعبه پس از چسباندن آن سخت است.

توصیه شده: