با سلام مجدد خدمت دوستان
در این بخش قصد داریم تا قسمت سوم آموزش ساخت پروژه ای برای اطلاع از حرکت سوژه ها با استفاده از ایمیل رو براتون بزاریم. آموزش کامل ساخت رو می تونید در سایت کافه ربات مشاهده کنید.
اطلاع ازحرکت سوژه ها توسط ایمیل با استفاده از آردوینو | پروژه آردوینو
گام پنجم : کد پایتون
حالا باید برنامه پایتون را تولید کنید. برای انجام اینکار کد زیر را در فایلی به نام “movement.py” کپی کنید. روی مک و لینوکس می توانید از ویرایشگر “nano” استفاده کنید. روی ویندوز ساده ترین روش تولید فایل استفاده از ویرایشگر پایتون 'IDLE” است که از گروه نرم افزارهای پایتون در start menu قابل دسترسی است.
import time
import serial
import smtplib
TO = 'putyour@email.here'
GMAIL_USER = 'putyour@email.here'
GMAIL_PASS = 'putyourpasswordhere'
SUBJECT = 'Intrusion!!'
TEXT = 'Your PIR sensor detected movement'
ser = serial.Serial('COM4', 9600)
def send_email():
print("Sending Email")
smtpserver = smtplib.SMTP("smtp.gmail.com",587)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo
smtpserver.login(GMAIL_USER, GMAIL_PASS)
header = 'To:' + TO + '\n' + 'From: ' + GMAIL_USER
header = header + '\n' + 'Subject:' + SUBJECT + '\n'
print header
msg = header + '\n' + TEXT + ' \n\n'
smtpserver.sendmail(GMAIL_USER, TO, msg)
smtpserver.close()
while True:
message = ser.readline()
print(message)
if message[0] == 'M' :
send_email()
time.sleep(0.5)
قبل از اجرای برنامه پایتون، باید تغییراتی در پیکربندی اعمال شود که همه این ها در کد وجود دارد.
برنامه فرض می کند که تمام ایمیل ها از اکانت gmail فرستاده می شوند. بنابراین اگر gmail ندارید بهتر است یک اکانت بسازید ، حتی اگر فقط برای این پروژه استفاده شود.
در کد بالا، در مقابل متغیر “TO” آدرس ایمیلی را که میخواهید پیغام ها به آن ارسال شود را یادداشت کنید. در مقابل متغیر “GMAIL_USER” هم آدرس gmail خود و رمز عبور آن را یادداشت کنید که برای بازیابی ایمیل های شما استفاده می شود.
اگر دوست دارید متن پیامی که ارسال می شود را تغییر بدهید می توانید از قسمت text این کار را انجام دهید.
همچنین شما باید پورت سریال آردوینو را مانند خط زیر ویرایش کنید:
ser = serial.Serial('COM4', 9600)
برای ویندوز عبارتی شبیه “COM4” و برای مک و لینوکس عبارتی شبیه به “/dev/tty.usbmodem621” میبینید. با باز کردن IDE آردوینو این عبارت ها را که در گوشه پایین سمت راست آن نوشته شده است، پیدا کنید. این موضوع نشان دهنده ی آن است که پورت تان به آردوینو متصل است.
زمانی که این تغییرات را اعمال کردید، می توانید برنامه را از Command Prompt / Terminal با دستور زیر اجرا کنید:
python movement.py
هنگامی که حرکتی در مقابل سنسور رخ دهد، شما چیزی شبیه به عکس زیر دریافت می کنید و پس از مدت کوتاهی پیام مورد نظرتان به ایمیل مقصد خواهد رسید.
توجه کنید که “Too soon” نیز در پیام ها وجود دارد.
حالا که شما با استفاده از آردوینو موفق به ارسال ایمیل شدید، می توانید این سیستم را روی سنسور های دیگر هم جایگزین کنید. مثلا شاید بخواهید گزارش ساعتی از دما را به ایمیل خود ارسال کنید.
همچنین می توان سنسور PIR را مستقیما به آردوینو متصل کرد و با چراغ های LED پیام های حرکتی را هشدار داد.
با آرزوی موفقیت دوستان
تخصصی ترین مرجع آموزش رباتیک | پروژه رباتیک| آموزش آردوینو