رزبری پای به عنوان کیوسک و چالش های ما در ساخت یک دستگاه تحویل غذا

مینی کامپیوتر رزبری پاییکی از چالش هایی که در ساخت یک دستگاه برای تحویل غذا وجود داره ، سخت افزار مناسب هستخیلی از شرکت ها در ایران از برد های آموزشی ابتدایی avr برای اینکار استفاده میکنندو معمولا با دستگاه های بی کیفیت طرف هستیم رزبری پای یک مینی کامپیوتر مناسب با هزینه مناسب هست که میتواند به عنوان کیوسک مورد استفاده قرار گیردشکلی از استفاده از رزبری پای و یک مانیتور اچ پی به عنوان کیوسکشرکت عصر ارتباطات دهکده به عنوان تولید کننده اتوماسیون تغذیه بادام ، توزیع لینوکس ویژه بادام را برای استفاده منتشر کرده است که میتواند در سیستم های ARM / X86 مورد استفاده قرار گیرد اما در این مطلب سعی دارم توضیح بدهم که چگونه میتوان از یک توزیع ابونتو یا دبیان بیس معمولی برای ساخت یک کیوسک با رزبری پای استفاده کردقبل از همه چیز شما به موارد زیر برای راه اندازی یک کیوسک نیاز دارید رزبری پای 3 یا 4 یک MicroSD (ترجیحا 16 گیگ)یک منبع تغذیه مناسب مانیتور یا تلویزیون مناسب با پشتیبانی از HDMI یا مانیتور VGA با مبدل HDMI to VGA کابل HDMI اتصال اینترنت مناسب (وای فای یا کابل لن)قبل از همه چیز بهتره که به ویدیو های نصب سیستم عامل رزبین بر روی رزبری پای در اینترنت مراجعه کنید که با یک سرچ ساده در دسترس هست بعد از نصب سیستم عامل رزبین بر روی رزبری پای بهتر هست که هر چیز اضافه ای رو از این سیستم عامل پاک بکنیم که برای کیوسک بودن آماده بشهابتدا ترمینال رو باز کنید و دستور زیر رو وارد کنیدsudo apt-get purge wolfram-engine scratch scratch2 nuscratch sonic-pi idle3 -y sudo apt-get purge smartsim java-common minecraft-pi libreoffice* -yاین دستور یک سری چیز های اضافه رو پاک میکنهسپس با اجرا دستور زیر محیط سیستم عامل رو به صورت کامل clean میکنیم و وابستگی های مربوطه رو هم پاک میکنیمsudo apt-get clean sudo apt-get autoremove -yبعد با دستور زیر سیستم عامل رو اپدیت میکنیم و منتظر بمونیم اپدیت تموم بشه !sudo apt-get update sudo apt-get upgradeبعد از اون نیاز هست که ابزار xdotool و unclutter رو نصب کنیم اولی یک ابزار برای شبیه سازی موس و کیبورد هست و دومی باعث میشه که نشانگر موس پنهان بشهsudo apt-get install xdotool unclutter sedبا نصب همه اینا اماده میشیم برای ورود به مرحله بعدی یعنی قابلیت auto login خب بریم برای اجرای دستوراتشsudo raspi-configبعد از زدن این دستور وارد محیط کانفیگ رزبری پای میشیم ، و سپس مسیر زیر رو دنبال میکنیمBoot Options -> B1 Desktop / CLI -> B4 Desktop Autologinحالا باید autologin در حالت enabled قرار بگیردخب بعد از اینکه تمام این کار ها رو انجام دادیم بریم اسکریپت مورد نظر رو برای راه اندازی kiosk بنویسیماول با ویرایشگر نانو فایل اسکریپتی زیر رو باز میکنیم nano /home/pi/kiosk.shحالا کد های زیر رو درون این فایل قرار میدیم#!/bin/bashxset s noblankxset s offxset -dpmsunclutter -idle 0.5 -root &sed -i 's/&quotexited_cleanly&quot:false/&quotexited_cleanly&quot:true/' /home/pi/.config/chromium/Default/Preferencessed -i 's/&quotexit_type&quot:&quotCrashed&quot/&quotexit_type&quot:&quotNormal&quot/' /home/pi/.config/chromium/Default/Preferences/usr/bin/chromium-browser --noerrdialogs --disable-infobars --kiosk https://web.rayda.ir &while true; doxdotool keydown ctrl+Tab; xdotool keyup ctrl+Tab;sleep 10doneکد های بالا در ابتدا سعی میکند power management system رزبری پای را غیر فعال کرده و همچنین با فعال کردن no blank سعی میکند blank را نیز غیر فعال کندسپس با اجرای unclutter اشاره گر موس را غیر فعال میکند دستورات زیر هشدار های کروم و همچنین اخطار های مبتنی بر بسته شدن ناگهانی کروم را غیر فعال میکندکه قطعا نباید در حالت kiosk به نمایش در آیدsed -i 's/&quotexited_cleanly&quot:false/&quotexited_cleanly&quot:true/' /home/pi/.config/chromium/Default/Preferencessed -i 's/&quotexit_type&quot:&quotCrashed&quot/&quotexit_type&quot:&quotNormal&quot/' /home/pi/.config/chromium/Default/Preferencesخط بعدی نیز کرومیوم را با حالت سفارشی کیسوک و اجرای web.rayda.ir که آدرس رسمی اتوماسیون تغذیه بادام هست اجرا میکندالبته شما میتوانید جای web.rayda.ir هر آدرسی را که دوست دارید قرار بدهیدخطوط بعدی نیز دستورات ویژه کیبورد را که باعث میشود بتوان کروم را بست غیر فعال میکندبعد از نوشتن اسکریپت بالا میتوانید یک سرویس نیز برای اجرای این اسکریپت ایجاد کنید به شکل زیرابتدا با دستورsudo nano /lib/systemd/system/kiosk.serviceیه فایل برای سرویس ایجاد میکنیم ، سپس دستورات زیر را در آن قرار میدهیم[Unit]Description=Chromium KioskWants=graphical.targetAfter=graphical.target[Service]Environment=DISPLAY=:0.0Environment=XAUTHORITY=/home/pi/.XauthorityType=simpleExecStart=/bin/bash /home/pi/kiosk.shRestart=on-abortUser=piGroup=pi[Install]WantedBy=graphical.targetفایل را ذخیره کرده و سپس با دستورات زیر سرویس را فعال کرده و اجرا میکنیمsudo systemctl enable kiosk.servicesudo systemctl start kiosk.serviceکیوسک شما اماده است ، میتوانید مانیتور خود را به آن متصل کرده و از آن استفاده کنید ما هم همین کار را کردیمالبته بعد از ساخت سرویس بالا ماجرای ما طولانی تر شد ما در تیم رایدا سعی کردیم یک سخت افزار مناسب به شکل و شمایل تبلت طراحی کنیم ، بعد از همکاری با چند طراح صنعتی یک باکس مناسب طراحی کردیم و سپس با کمک تیم مهندسی الکترونیک شرکت و همکاری دانشگاه فنی و حرفه ای استان مرکزی برد الکترونیکی مناسب را طراحی کردیم سپس distro مورد نظر خودمان را با لینوکس ایجاد کرده و سفارشی سازی کردیم و ابزار های مرتبط با پشتیبانی دستگاه های کارت خوان بانکی و rfid را به آن نیز اضافه کردیمبعد از آن با برنامه نویسی یک رابط مناسب بین وب و سخت افزار توانستیم یک دستگاه تحویل حرفه ای ایجاد کنیمرزبری پای یک سخت افزار عالی برای کار های آموزشی و حتی صنعتی هست