- Потрібні матеріали
- Передумови
- Встановіть TTS Engine (Espeak) для Raspberry Pi
- Створення графічного інтерфейсу для розмовного будильника Raspberry Pi
- Проектування графічного інтерфейсу за допомогою Qt Designer
“ Доброго ранку. Зараз 7:00. Погода в Малібу становить 72 градуси з невеликою хмарністю. Умови серфінгу справедливі з високими лініями від талії до плеча. Приплив буде о 10:52 ранку ". Кожного разу, коли я чую цей голос Джарвіса у фільмі «Залізна людина», це викликає у мене озноб по хребту. Я впевнений, як і я, багато хто мріяв би прожити таке ж вишукане життя, як Тоні Старк. Але, на жаль, ми не вдосконалили технологію мініатюрного дугового реактора або такого штучного інтелекту, як JARVIS. Але можна замінити наші нудні ранкові будильники на такі, що схожі на Jarvis, використовуючи Raspberry Pi. Наприкінці цього проекту ми створимо дуже базовий графічний інтерфейс, за допомогою якого ми зможемо встановити будильник, а коли будильник увімкнеться, ми отримаємо голос, який повідомляє нам поточний час і день із заздалегідь визначеним текстом. Звучить круто правильно !! Тож давайте побудуємо таку.
Потрібні матеріали
- Raspberry Pi
- 3,5-дюймовий TFT-РК-екран
- Доповідач
- AUX кабель
- Підключення до інтернету
Передумови
Передбачається, що ваш Raspberry Pi вже прошитий операційною системою і може підключатися до Інтернету. Якщо ні, дотримуйтесь підручника Початок роботи з Raspberry Pi, перш ніж продовжувати. Тут ми використовуємо Rasbian Jessie, встановлену Raspberry Pi 3.
Також передбачається, що ви маєте доступ до свого pi або через вікна терміналу, або через іншу програму, за допомогою якої ви можете писати та виконувати програми на python та використовувати вікно терміналу.
Можливо, ви також захочете перевірити, як підключити 3,5-дюймовий TFT-дисплей до Raspberry Pi, оскільки ми будемо використовувати його в цьому проекті.
Встановіть TTS Engine (Espeak) для Raspberry Pi
Як зазначено в назві проекту, ми збираємося побудувати мовний годинник. Для того, щоб ваш Pi говорив, нам потрібен механізм синтезу мови (TTS). Є так багато варіантів для вибору, але для простоти я вибрав Espeak Engine. Щоб встановити Espeak на ваш Pi, просто запустіть наступну команду на своєму терміналі
sudo apt-get встановити espeak sudo apt-get встановити espeak python-espeak
Створення графічного інтерфейсу для розмовного будильника Raspberry Pi
Для цього проекту нам потрібно розробити графічний інтерфейс, який представляє будильник, щоб користувач міг переглянути поточний час, а також встановити будильник. Існує безліч варіантів розробки графічного інтерфейсу за допомогою Python, але найпопулярнішим і універсальним є PyQt4, тому ми будемо використовувати його для розробки нашого графічного інтерфейсу. У кількох нижченаведених заголовках ми обговорюємо, як використовувати PyQt4 для створення власного графічного інтерфейсу, але якщо вам це не цікаво, ви можете безпосередньо перейти до заголовка “ Програма для мовлення будильника ”.
Встановлення PyQt4 з дизайнером Qt на вашому комп'ютері Windows
Оскільки ми розробляємо графічний інтерфейс, ми спочатку почнемо програмувати на своєму ноутбуці (Windows / Linux), а потім перенесем цей скрипт python для роботи на нашому Pi. Оскільки PyQt4 має дуже хорошу портативність, більшість розробників роблять це, оскільки розробка на ноутбуці є легшою та швидшою, ніж насправді на Raspberry Pi.
Я встановив пакети python та PQt на свою машину Windows; якщо вас це не цікавить, ви можете розробити свій графічний інтерфейс на самому своєму Raspberry Pi, просто пропустивши цей крок. Щоб встановити PQt на Windows, завантажте цей файл exe і під час процедури встановлення переконайтеся, що ви перевірили програмне забезпечення дизайнера Qt, оскільки ми будемо використовувати його для нашого проекту.
Встановлення PyQt на машинах Pi / Linux / MAC
Щоб встановити PyQt на машині Linux, просто запустіть наступний рядок на своєму командному терміналі
sudo apt-get install python-qt4
Проектування графічного інтерфейсу за допомогою Qt Designer
Однією помітною перевагою використання PyQt4 для дизайну графічного інтерфейсу є те, що він має програмне забезпечення дизайнера Qt. Це програмне забезпечення можна використовувати для створення кнопок, дисплеїв, текстів та іншої графіки, просто перетягуючи речі на екран і розміщуючи їх там, де це потрібно. Це економить нам багато часу, оскільки нам не потрібно вручну подавати розмір та положення об’єктів на нашому екрані. Я встановив дизайнер Qt разом з Python та PyQt4 на своєму ноутбуці з Windows, використовуючи файл exe, як обговорювалось у вищевказаному абзаці. Після встановлення відкрийте Qt Designer, і ви отримаєте цей екран.
На лівій стороні ви можете знайти макет, розпірки, кнопки та інші елементи, якими ви можете просто скористатися, перетягнувши їх у своє вікно. Ви також можете налаштувати об’єкти за потребою, використовуючи вікна праворуч. Я використав 7-сегментний РК-дисплей, кнопку, текстовий рядок та встановлений об'єкт часу, щоб створити інтерфейс для нашого будильника. Після використання макетів для розміщення всіх об’єктів у потрібному місці та розмірі моє вікно виглядало приблизно так нижче
Після того, як ваш графічний інтерфейс буде готовий, ви можете зберегти свій дизайн як файл .ui . Пізніше, будь-коли, коли ви захочете внести зміни до свого графічного інтерфейсу, ви можете просто відкрити цей файл і внести зміни, не прокручуючи програму вгору та вниз. Файл.ui для годинникового мовлення можна завантажити, якщо ви хочете внести будь-які зміни в цей дизайн. Коли ви задоволені дизайном графічного інтерфейсу, ви можете експортувати його як код python, звідки ви зможете розпочати програмування на python.
Я знаю, що багато речей тут могло б проскочити над головою, але неможливо пояснити, як використовувати бібліотеку Qt4 в одному підручнику. Щоб дізнатись, ви можете звернутися до серії підручників sentdex PyQt4