- Вимоги
- Встановлення PyFirmata в Arduino за допомогою Raspberry Pi
- Пояснення коду
- Згасання світлодіода на Arduino за допомогою pyFirmata
Хоча Raspberry Pi та Arduino - це два різні апаратні засоби за своїми програмами та структурою, але обидва вони розглядаються як дві конкуруючі апаратні платформи з відкритим кодом. Вони обидва мають дуже сильну спільноту та підтримку. Сьогодні ми трохи змінимо речі та покажемо, як ми можемо скористатися обома з них. Якщо у вас є як дошки Arduino, так і Raspberry pi, ця стаття покаже, як використовувати Raspberry pi та Python для управління Arduino.
Ми будемо використовувати прошивку PyFirmata, щоб передавати команди Arduino за допомогою python-сценарію Raspberry Pi. PyFirmata - це, в основному, попередньо побудований бібліотечний пакет програми python, який можна встановити в Arduino, щоб забезпечити послідовний зв'язок між сценарієм python на будь-якому комп'ютері та Arduino. Цей пакет python може надати доступ для читання та запису будь-якого піну на Arduino. Отже, тут ми будемо запускати програму python на Arduino за допомогою Raspberry pi.
Отже, у цьому підручнику ми скористаємось цією бібліотекою і будемо використовувати це на нашій дошці Arduino для управління Arduino за допомогою Raspberry Pi.
Вимоги
- Raspberry Pi з інстальованою ОС Raspbian
- Arduino Uno або будь-яка інша плата Arduino
- USB-кабель Arduino
- СВІТЛОДІОДНИЙ
У цьому підручнику я використовую зовнішній монітор за допомогою кабелю HDMI для підключення до Raspberry Pi. Якщо у вас немає монітора, ви можете використовувати клієнт SSH (Putty) або сервер VNC для підключення до Raspberry pi за допомогою ноутбука або комп’ютера. Якщо у вас виникнуть труднощі, дотримуйтесь нашого Посібника з вивчення Raspberry Pi.
Встановлення PyFirmata в Arduino за допомогою Raspberry Pi
Щоб завантажити прошивку PyFirmata в Arduino, ми повинні встановити Arduino IDE в Raspberry Pi. Для встановлення виконайте такі дії:
Крок 1: - Підключіть Raspberry Pi до Інтернету. Відкрийте командний термінал і введіть наступну команду та натисніть Enter
sudo apt - get - y встановити arduino python - послідовний ртутний
Зачекайте кілька хвилин, це займе час. Ця команда встановить Arduino IDE у ваш Raspberry Pi.
Крок 2: - Зараз ми встановимо файли pyFirmata за допомогою вказаного github:
клон git https://github.com/tino/pyFirmata
Потім виконайте таку команду:
cd pyFirmata sudo python setup.py install
Крок 3: - Ми встановили всі необхідні файли та налаштування.
Тепер підключіть свою плату Arduino до Raspberry Pi за допомогою USB-кабелю та запустіть Arduino IDE, набравши arduino у вікні терміналу.
Крок 4: - Потім введіть команду lsusb, щоб перевірити, чи підключений Arduino до вашого Raspberry Pi.
В Arduino IDE перейдіть до інструментів і виберіть свою плату та послідовний порт.
Крок 5: - Завантажте прошивку PyFirmata на Arduino, натиснувши Файл -> Приклади -> Фірми -> Стандартні фірми, а потім натисніть кнопку завантаження. Як показано нижче.
Ми успішно встановили прошивку pyFirmata на платі Arduino. Тепер ми можемо керувати своїм Arduino за допомогою Raspberry Pi.
Для демонстрації ми мигнутимемо і згасатиме світлодіод на Arduino, пишучи коди пітона в Raspberry Pi.
Пояснення коду
Для кодування частини, ви повинні прочитати документацію pyFirmata для кращого розуміння. Ми будемо використовувати функції pyFirmata для написання нашого коду. Ви можете знайти документацію щодо pyFirmata, перейшовши за посиланням.
Тож давайте почнемо писати код
Відкрийте улюблений текстовий редактор на Raspberry Pi та імпортуйте бібліотеку pyFirmata.
імпорт піфірмат
Визначте штифт на Arduino для підключення світлодіода
led_pin = 9
Тепер нам потрібно написати ім'я послідовного порту, до якого підключена плата Arduino, використовуючи функцію pyfirmata.Arduino (), а потім зробити екземпляр, призначивши порт у змінній плати .
board = pyfirmata.Arduino ("/ dev / ttyACM0") print "Код запущений"
У той час як петлі, роблять водити контактний високою і низькою використанням board.digital.write () функцію і затримки з використанням піддавки board.pass_time () функцію.
while True: board.digital.write (0) board.pass_time (1) board.digital.write (1) board.pass_time (1)
Наш код готовий, збережіть його, додавши розширення .py до імені файлу.
Відкрийте командний термінал і введіть python blink.py, щоб запустити код на платі Arduino. Переконайтеся, що плата Arduino підключена до плати Raspberry Pi за допомогою кабелю USB.
Тепер ви можете побачити блимаючий світлодіод на платі Arduino.
Повний код для блимання світлодіода за допомогою pyFirmata наведено в кінці.
Згасання світлодіода на Arduino за допомогою pyFirmata
Тепер ми напишемо код для вицвітання світлодіода, щоб зробити вас більш знайомими з функціями pyFirmata. Цей код простий, як і попередній. Вам потрібно використовувати два для циклів, один для збільшення яскравості, а інший для зменшення яскравості.
У цьому коді ми визначили шпильки по-різному, наприклад led = board.get_pin ('d: 9: p'), де d означає цифровий штифт . Це функція бібліотеки pyFirmata. Прочитайте документацію, щоб дізнатися більше.
Повний код для вицвітання світлодіода за допомогою pyFirmata наведено в кінці.
Тепер ви можете додати більше сенсорів до вашої системи та зробити її більш крутою, перевірити інші наші проекти Arduino та спробувати побудувати їх за допомогою сценарію Raspberry pi та python.