Sokan Academy

پایتون و اتصال به سخت افزار: راهنمایی برای اتصال پایتون به دستگاه‌های فیزیکی

پایتون و اتصال به سخت افزار: راهنمایی برای اتصال پایتون به دستگاه‌های فیزیکی

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


1. ابزارهای لازم

قبل از شروع، موارد زیر را آماده کنید:

  • رزبری پای (Raspberry Pi) یا آردوینو (Arduino) به عنوان سخت افزار.
  • کابل USB برای اتصال به کامپیوتر.
  • کتابخانه‌های پایتون مانند pySerial، RPi.GPIO، Adafruit_CircuitPython و یا pyFirmata.
  • محیط توسعه مانند VS Code یا Thonny.

2. اتصال به رزبری پای

رزبری پای یک میکرو کامپیوتر است که می‌تواند با پایتون به سخت افزار متصل شود.

مثال: روشن کردن LED با رزبری پای

import RPi.GPIO as GPIO
import time

# تنظیم پین
GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.OUT)

# روشن کردن LED
GPIO.output(18, GPIO.HIGH)
time.sleep(1)

# خاموش کردن LED
GPIO.output(18, GPIO.LOW)
GPIO.cleanup()

توضیحات:

  • RPi.GPIO کتابخانه‌ای است که برای کنترل پین‌های رزبری پای استفاده می‌شود.
  • GPIO.HIGH و GPIO.LOW به ترتیب برای فعال/غیرفعال کردن پین استفاده می‌شوند

3. اتصال به آردوینو

آردوینو یک پلتفرم سخت افزاری است که می‌تواند با پایتون از طریق pyFirmata یا pySerial ارتباط برقرار کند.

مثال: ارسال داده از پایتون به آردوینو

import serial
import time

# اتصال به آردوینو (دستگاه باید به USB متصل باشد)
ser = serial.Serial('/dev/ttyUSB0', 9600)
time.sleep(2)  # انتظار برای اتصال

# ارسال داده
ser.write(b'Hello Arduino!')
ser.close()

توضیحات:

  • pySerial کتابخانه‌ای است که برای ارتباط سریال (Serial Communication) بین پایتون و آردوینو استفاده می‌شود.
  • مطمئن شوید که آدرس دستگاه (/dev/ttyUSB0) در سیستم شما درست باشد.

4. اتصال به سنسورها و دستگاه‌های فیزیکی

پایتون می‌تواند با سنسورهایی مانند DS18B20 (سنسور دما) یا LDR (سنسور نور) ارتباط برقرار کند.

مثال: خواندن دمای سنسور DS18B20

import os
import time

# فعال کردن سنسور
os.system('modprobe w1-gpio')
os.system('modprobe w1-therm')

# مسیر سنسور
base_dir = '/sys/bus/w1/devices/'
device_folder = [d for d in os.listdir(base_dir) if d.startswith('28-')][0]
device_file = base_dir + device_folder + '/w1_slave'

def read_temp():
    with open(device_file, 'r') as f:
        lines = f.readlines()
    while lines[0].strip()[-3:] != 'YES':
        time.sleep(0.2)
        lines = f.readlines()
    temp_line = lines[1]
    temp = float(temp_line.split('=')[1]) / 1000.0
    return temp

print(f"دمای سنسور: {read_temp()}°C")

توضیحات:

  • این کد از سیستم عامل رزبری پای برای خواندن دمای سنسور استفاده می‌کند.
  • نیاز به فعال کردن ماژول‌های w1-gpio و w1-therm دارد.

5. پروژه‌های عملی

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

6. نکات مهم

  • دسترسی به سخت افزار: در سیستم‌های لینوکس، ممکن است نیاز به اجرای کد با دسترسی sudo باشد.
  • بررسی اتصال: از ابزارهایی مانند ls /dev/tty* برای چک کردن اتصال دستگاه استفاده کنید.
  • آموزش‌های بیشتر: منابعی مانند Raspberry Pi Foundation و Arduino Official Site می‌توانند به شما کمک کنند.

نتیجه‌گیری:

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

کتابخانه پایتوناینترنت اشیاءسخت‌ افزارپایتون

sokan-academy-footer-logo
کلیه حقوق مادی و معنوی این وب‌سایت متعلق به سکان آکادمی می باشد.