دستگاههایی که با صدا کنترل میشوند (مانند اکو آمازون (Amazon Echo)) محبوبیت زیادی دارند. شما میتوانید سیستمی مشابه اکو آمازون را با استفاده از Raspberry Pi و یک میکروفون USB ارزانقیمت بسازید. همچنین میتوانید با Raspberry Pi در یوتیوب جستوجو کنید، صفحات وب را باز کنید، برنامههای کاربردی را راهاندازی کرده، با صحبت کردن به سؤالات پاسخ دهید و یا حتی از یک رستوران سفارش غذا بدهید. طیف کارهایی که میتوانیم با استفاده از رزپری پای و این سیستم صوتی انجام دهیم بسیار گسترده است و تنها محدودیتِ موجود، خلاقیت ماست.
تجهیزات موردنیاز:
Raspberry Pi کارت صدا ندارد؛ بنابراین برای این پروژه به میکروفون USB یا وب کم با میکروفون داخلی نیاز داریم. ما در این آموزش از وب کم Microsoft HD-3000 استفاده کردیم، اما شما میتوانید از هر میکروفون مناسب دیگری استفاده کنید. اگر هم وب کم ندارید، اینجا لیست کاملی از وب کم های سازگار با Raspberry Pi وجود دارد که میتوانید مشاهده کنید. اما مطمئن شوید هر وب کمی که انتخاب می کنید میکروفون داشته باشد.
اگر میکروفون شما فقط یک جک صوتی دارد، سعی کنید از فروشگاهها یک کارت صدای ارزانقیمت تهیه کنید که داری پورت USB باشد. البته دقت داشته باشید که کارت صوتی تهیهشده حتماً دارای ورودی میکروفون باشد.
شاید برای شما مفید باشد: آموزش رزبری پای از 0 تا 100 از مقدماتی تا پیشرفته
تعداد زیادی برنامه تشخیص گفتار برای Raspberry Pi وجود دارد؛ اما در این پروژه، از Steven Hickson’s Pi AUI Suite استفاده میکنیم، چراکه علاوه بر قدرتمند بودن، راهاندازی و پیکربندی آن نیز بسیار آسان است.
آموزش نصب بر روی Raspberry Pi
برای شروع ابتدا باید کتابخانههای موردنیاز را نصب کنیم. برای این کار دستور زیر را درون ترمینال وارد میکنیم:
1 | sudo apt-get install -y libboost-dev libboost-regex-dev youtube-dl axel curl xterm libcurl4-gnutls-dev mpg123 flac sox |
بعد از اتمام نصب کتابخانههای موردنیاز، با وارد کردن دستورات زیر ابتدا سورس Po AUI Suite را از گیت هاب دانلود کنید و سپس فایل نصبی آن را اجرا کنید:
1 2 3 | git clone https://github.com/StevenHickson/PiAUISuite.git cd PiAUISuite/Install ./InstallAUISuite.sh |
Pi AUI Suite این امکان را به شما میدهد تا تعدادی از برنامههای کاربردی را انتخاب و نصب کنید. سؤال اولی که از شما پرسیده میشود این است که آیا متعلقات باید نصب شود؟ متعلقات فایلهایی هستند که Raspberry Pi باید برای فرمانهای صوتی دانلود کند تا بتواند آنها را اجرا کند؛ بنابراین Y را انتخاب کنید و دکمه Return را بزنید تا موافقت خود را برای نصب آنها اعلام کنید.
سپس از شما پرسیده میشود که آیا میخواهید برنامه PlayVideo را نصب کنید؟ با این برنامه میتوانید از دستورات صوتی برای راهاندازی و پخش فایلهای ویدئویی استفاده کنید. اگر Y را انتخاب کنید از شما خواسته میشود که مسیر فایلهای رسانهای خود را مشخص کنید. برای مثال home/pi/Videos. توجه داشته باشید که حروف بزرگ در اینجا مهم هستند. اگر مسیر نامعتبر باشد، برنامه به شما هشدار میدهد.
در ادامه از شما سؤال میشود که آیا میخواهید برنامه Downloader (برنامهای که بهصورت خودکار فایلهای اینترنتی را برای شما جستجو و بهطور خودکار آنها را دانلود میکند) را نصب کنید؟ اگر Y را انتخاب کنید، از شما خواسته میشود تا تنظیمات برای هاست، پورت، نام کاربری و رمز عبور را ارائه دهید. اگر مطمئن نیستید، Return را فشار دهید تا بتوانید گزینههای پیشفرض در هر مورد را انتخاب کنید.
برنامه زیر، سرویس تبدیل متن به گفتار گوگل است که اگر میخواهید Raspberry Pi بتواند محتوای فایلهای متنی را بخواند، باید آن را نصب کنید. بهمنظور استفاده از این سرویس، Raspberry Pi باید به اینترنت وصل شود؛ چرا که برای تبدیل متن به گفتار و سپس پخش کردن فایل صوتی بهوسیله Media Raspberry Pi، باید به سرورهای گوگل متصل شود. اگر تصمیم دارید آن را نصب کنید، به یک حساب کاربری گوگل نیاز دارید. نصب کننده از شما میخواهد که نام کاربری خود را وارد کنید. بعد از انجام آن، دکمه Return را فشار دهید. پس از آن رمز عبور را وارد و سپس دکمه Return را فشار دهید.
نصب کننده همچنین به شما این امکان را میدهد که Google Voice را نصب کنید. گوگل ویس، از سرویس تشخیص گفتار خود گوگل استفاده میکند. مجدداً از شما خواسته میشود نام کاربری و رمز عبور خود را برای ادامه ارائه کنید.
علاوه بر نرمافزار خاص گوگل، این برنامه همچنین از شما میپرسد آیا میخواهید اسکریپتهای YouTube را نیز نصب کنید؟ این ابزار به شما امکان میدهد که عبارتهایی مانند “YouTube fluffy kittens” را بگویید تا ویدیو کلیپ مربوط به آن پخش شود.
در نهایت، این برنامه به شما امکان میدهد که Voicecommand را نصب کنید، که شامل برخی از اسکریپتهای مفیدتر است، مثلاً میتوانید مرورگر وب خود را با کلمه “internet” راهاندازی کنید.
همچنین در حین نصب از شما پرسیده میشود که آیا میخواهید Voicecommand بهصورت خودکار تنظیم شود.
پیکربندی Raspberry Pi
هنگامیکه برنامه Voicecommand نصب میشود، ممکن است بخواهید قبل از تنظیم دقیق پیکربندی، چند تغییر اساسی انجام دهید. ترمینال را در Pi Raspberry را باز کنید و دستور زیر را اجرا کنید:
1 | sudo voicecommand –s |
سپس مجموعهای از سؤالات بله/خیر از شما پرسیده میشود. سؤال اول این است که آیا میخواهید بهطور دائم، پرچم continuous را تنظیم کنید. به عبارت سادهتر، برنامه voicecommand از شما سوال میپرسد که آیا هر بار که برنامه را اجرا میکنید میخواهید به دستورات صوتی خودتان گوش بدهید؟ اکنون Y را انتخاب کنید. سپس از شما پرسیده میشود که آیا برنامه Voicecommand بهطور دائمی پرچم verify تنظیم کند؟ انتخاب Y به این معنی است که برنامه انتظار دارد که شما قبل از پاسخ به دستورات، کلمه کلیدی خود (بهطور پیشفرض کلمه”Pi”) را بگویید. این کار زمانی مفید است که بخواهید Raspberry Pi را طوری تنظیم کنید که بهطور مداوم گوش بدهد و با هر چیزی که شما میگویید وارد عمل نشود.
بلافاصله از شما میپرسد آیا میخواهید بهطور دائم، پرچم ignore را تنظیم کند؟ این بدان معنی است که Voicecommand دستوری را میشنود که بهطور خاص در فایل پیکربندی شما فهرست نشده است، پس سعی میکند یک برنامه را در برنامههای نصبشده شما جستجو کند و آن را اجرا کند. بهعنوانمثال، اگر شما کلمه “leafpad” را بگویید که یک برنامه دفترچه یادداشت است، Voicecommand آن را جستجو و اجرا میکند؛ حتی اگر بهطور خاص به آن نگفته باشید. ما توصیه نمیکنیم که این ویژگی را فعال کنید. چونکه شما برنامه Voicecommand را بهعنوان کاربر اصلی (SuperUser) اجرا می کنید و خطر زیادی وجود دارد که بهطور تصادفی به Raspberry Pi یک فرمانی دهید که به فایلهای شما آسیب برساند.
اگر میخواهید برنامههای بسیاری را برای کار با Voicecommand تنظیم کنید، میتوانید فایل پیکربندی را در هر مورد خاص ویرایش کنید. سپس Voicecommand از شما سؤال میکند که آیا میخواهید بهطور دائم پرچم quiet را تنظیم کنید، تنظیم این گزینه باعث میشود که وقتی صحبت میکنید پاسخ شفاهی به شما نمیدهد. Y یا N را هر طور که مناسب میدانید انتخاب کنید.
بعداً از شما پرسیده میشود که آیا میخواهید مدتزمان پیشفرض برای تشخیص گفتار را تغییر دهید؟ اگر Pi در شنیدن دستورات شما مشکل دارد فقط باید این گزینه را تغییر دهید. اگر Y را انتخاب کنید، از شما خواسته میشود تا یک عدد را تایپ کنید. این عدد، تعداد ثانیههایی است که Raspberry Pi برای یک فرمان صوتی صرف میکند و بهطور پیشفرض 3 است.
این برنامه همچنین به شما این امکان را میدهد که گزینههای متن به گفتار را تنظیم کنید. قبل از انجام این کار، اطمینان حاصل کنید که ولوم رو زیاد کردهاید. برنامه تلاش میکند چیزی بگوید و بپرسد که آیا شما آن را شنیدهاید.
پاسخ پیشفرض سیستم به کلیدواژه شما عبارت “Yes sir” است. در مرحله بعد Y را انتخاب کند تا این گزینه به گزینه موردنظر شما تغییر پیدا کند. مثلاً به عبارت “Yes ma’am” تغییر پیدا کند. وقتیکه مراحل را انجام دادید کلید Return را بزنید. سیستم برای شما پیغامی را میفرستد تا تأیید کنید که آیا از نتایج راضی هستید یا خیر. این روند برای زمانی است که سیستم یک دستور ناشناخته دریافت میکند. پاسخ پیشفرض، عبارت “Received improper command” است. اما شما با تایپ Y میتوانید پاسخ خودتان را جایگزین کنید. برای مثال”Unknown command”.
اکنون به شما فرصتی برای تنظیم گزینههای تشخیص گفتار داده میشود و بهطور خودکار چک میکند که آیا شما یک میکروفون مناسب نصب کردهاید یا نه. سپس Voicecommand از شما سؤال میکند که آیا میخواهید Pi برایتان آستانه صوتی شما را چک کند. اطمینان حاصل کنید که هیچ نویز پسزمینهای وجود ندارد. Y را تایپ کنید و سپس کلید Return را بزنید. سپس از شما میخواهد که یک دستور صوتی را بگویید تا چک کند آیا دستگاه صوتی درست انتخاب شده است یا نه.
در نهایت،Raspberry Pi از شما میخواهد که کلیدواژه پیشفرض”Pi” را تغییر دهید تا دستورات صوتی را فعال کند. Y را تایپ کنید سپس کلیدواژه جدید خود را وارد کنید. هنگامیکه انجام شد، کلید Return را بزنید.
سپس از شما خواسته میشود که کلیدواژه خود را بگویید تا Raspberry Pi با صدای صحبت کردن شما آشنا شود. در ادامه Y را تایپ کنید تا فایل setup کامل شود.
اجرای برنامه
از دستور sudo voicecommand -c برای شروع نرمافزار استفاده کنید. این دستور بهطور خودکار کلمات کلیدی شما را میخواند.
1 | sudo voicecommand -c |
پس از آن میتوانید دستورات بیشتری بدهید؛ مانند “YouTube fluffy kittens”. سعی کنید از چند دستور ساده استفاده کنید. برای اطلاعات بیشتر به بخش دستورات صوتی اولیه مراجعه کنید. درصورتیکه مشکلی به وجود نیامد، در ادامه دستور صوتی sudo killall را اجرا کنید تا برنامه را خاتمه دهید و اگر مایل هستید فایل پیکربندی خود را ویرایش کنید.
دستورات صوتی اولیه
هنگامیکه نصب Pi AUI Suite تکمیل شد و شما sudo voicecommand – c را اجرا کردید تا آن را برای گوش دادن تنظیم کنید، باید برای آن، یک کلیدواژه آماده کنید. کلیدواژه بهطور پیشفرض، کلمه “Pi” است، اما بهراحتی میتوانید آن را به چیزی سادهتر تغییر دهید.
youtube:
گفتن “youtube” و یک عنوان ویدیو، بهصورت خودکار یک ویدیو تمام صفحه از اولین کلیپ مربوطه از یوتیوب بارگیری میکند. این شبیه به جستجوی بخت یا اقبال گوگل است. بگویید “youtube” و نام ویدیویی که به آن علاقهمند هستید؛ بهعنوانمثال “YouTube fluffy kittens”.
Internet:
گفتن کلمه “Internet”، مرورگر وب شما را راهاندازی میکند. بهطور پیشفرض از مرورگر Midori که مرورگر داخلی Raspberry Pi است استفاده میکند اما میتوانید آن را تغییر بدهید.
Download:
گفتن کلمه “Download” به همراه یک عبارت جستجو، بهطور خودکار وبسایت Pirate Bay را برای فایل موردنظر، جستجو میکند. برای مثال، میتوانید بگویید “Download Ubuntu Yakkety Yak” تا آخرین نسخه سیستمعامل لینوکس اوبونتو را دانلود کند.
Play:
این دستور از پخشکننده رسانه داخلی برای پخش یک فایل موسیقی یا ویدیویی استفاده میکند. برای مثال میتوانید بگویید “Play mozartconcert.mp4” تا فایل رسانهای را که شما در پوشه مخصوص قرار دادهاید، پخش کند. قبلاً مسیر پخش فایلها را انتخاب کردهایم (home/pi/Videos).
Show me:
با گفتن “Show me” یک پوشه را به انتخاب شما باز میکند. بهصورت پیشفرض، دستور به یک پوشه معتبر نمیرود، بنابراین شما باید فایل پیکربندی خود را به یک مکان معتبر تغییر بدهید.
برای مثال : .show me==/home/pi/Documents