سلام
من برای یک کارخانه برای جمع آوری اطلاعات اومدم یک سامانه درست کردم که اطلاعات از طریق رزبری پای از روی PLC در محیط کارخانه جمع آوری می کنه و این اطلاعات به بانک اطلاعات اصلی منقل می کنم
من کاری که کردم برای خودکار اجرا شدن نرم افزار کردم در اینجا مرحله به مرحله شرح میدم
اولین نکته این که بایستی کلیه package هایی که در python بهشون احتیاج دارید به صورت global بر روی رزبری نصب کنید شیوه نصب هم اگر از python3 استفاده می کنید به این صورت است
sudo python3 pip install <package-name >
اول ما این در نظر میگیریم که فایل پایتون ما در مسیر زیر قرار گرفته است.
/home/pi/Desktop/file.py
در واقع فایل ما file.py هست که در مسیر بالا قرار گرفته است .
خوب برای این کار بایستی یک فایل bash ایجاد کنید در مسیر زیر با نام keep_running.sh
/home/pi/Desktop/keep_running.sh
باید داخل فایل keep_running.sh به صورت زیر ایجاد نمایید.
until sudo python3 /home/pi/Desktop/file.py >> /home/pi/Desktop/logpy.txt 2>&1 do echo "Restarting" sleep 2 done
در محتویات فایل keep_running.sh که در بالا قرار گرفته است بایستی در Desktop یک فایل دیگر به نام logpy.txt ایجاد نمایید در واقع این فایل برای دیباگ کردن کد خودتون بر روی رزبری پای به آن نیاز دارید . که اگر به اررور یا مشکلی خورد می توانید نمایش دهید .
همین طور این فایل کاری که انجام می دهد فایل مورد نظر ما را اجرا می کند اگر به مشکل بخوره و از اجرا خارج بشه دوباره بعد از دو ثانیه دوباره فایل اجرا می کند .
در مرحله بعدی بایست این فایل bash را با بالا آمدن رزبری پای اجرا نماییم .
برای این کار من خیلی جستجو کردم اما راحت ترین راهی که به آن رسیدم استفاده از crontab بودش .
برای استفاده بر روی Crontab به این روش استفاده می کنیم
ابتدا دستور زیر را تایپ می کنیم
crontab -e
داخل این فایل به صورت زیر عمل می کنیم
@reboot sudo /home/pi/Desktop/keep_running.sh > /home/pi/Desktop/log.txt
با اضافه کردن دستور بالا با راه اندازی سیستم رزبری پای فایل keep_running.sh اجرا می شود و خروجی آن را در فایل log.txt ثبت می نماید .
البته توجه کنید باید فایل log.txt در Desktop رزبری پای ایجاد نمایید .
این چکیده 10 ساعت سرچ من در این زمینه بود
این راه کار عملی هست و کمترین دستکاری روی سیستم عامل نیاز داره و به راحتی راه اندازی می شود Rassberry pi و می توانید نرم افزار پایتونی خودتون روش با اجرای سیستم عامل استفاده کنید