![](http://el-dev.com/ru/wp-content/uploads/2019/09/IMG_7959.jpg)
Рассматривается процесс установки микрокомпьютера Raspberry Pi на китайскую модель автомобиля с радиоуправлением в масштабе 1:10. Управление машинкой с Raspberry Pi будет выполнятся по Wi-Fi протоколу через Android приложение.
Список оборудования необходимого для проекта:
- китайская RC машинка;
- мини-ПК Raspberry Pi (Model B rev2);
- драйвер бесколлекторного мотора L298N;
- аккумулятор на 5.5v 2700 mah для двигателей;
- аккумулятор на 5v 8000 mah для Raspberry Pi;
- 2х бесколлекторных мотора (из комплекта с моделью автомобиля);
- wi-fi модем (если wi-fi не включен в Raspberry Pi);
Содержание:
- Выбор модели автомобиля
- Установка оборудования
- Питание
- Установка и настройка ПО
- Мобильное приложение
- Запуск модели
1. Выбор модели автомобиля
Выбирать модель для переделки необходимо с учетом габаритов компьютера Raspberry Pi (см. рис. 1) и драйвера двигателей (50х50мм). Наиболее подходящий масштаб начинается от 1:10, с основанием модели от 250х70мм. Двигатели модели должны обладать достаточным запасом мощности, чтобы иметь возможность установки на модель дополнительного оборудования весом до 300г (например, внешнего аккумулятора для Raspberry Pi).
![](http://el-dev.com/ru/wp-content/uploads/2019/09/raspberry_size.png)
Для данного проекта была куплена радиоуправляемая модель пикапа из магазина игрушек ценой около 1000р. Пикап имеет кузов, позволяющий разместить в нем дополнительный аккумулятор.
![](http://el-dev.com/ru/wp-content/uploads/2019/09/IMG_7935.jpg)
![](http://el-dev.com/ru/wp-content/uploads/2019/09/IMG_7927.jpg)
![](http://el-dev.com/ru/wp-content/uploads/2019/09/IMG_7959.jpg)
2. Установка оборудования
После выбора и приобретения модели её необходимо разобрать и достать все ненужные части. В нашем случае это модуль радиоуправления, вместо него будет установлен Raspberry Pi. Двигатели и блок аккумулятора оставляем.
Аккуратно отрезаем провода, ведущие к бесколлекторным двигателям от модуля радиоуправления, они нам понадобятся для подключения двигателей к драйверу.
Размечаем место на несущей части корпуса для установки Raspberry Pi и драйвера двигателя. Драйвер будет подключен к пинам Raspberry, поэтому размещаем его со стороны наиболее близкой к пинам. Подключаем драйвер к пинам Raspberry Pi по схеме представленной на рис. 2.
![](http://el-dev.com/en/wp-content/uploads/2022/02/connection_scheme_old_fixed.jpg)
Можете подключать двигатели к любым доступным пинам на Raspberry Pi. В мобильном приложении есть возможность указать номера управляющих пинов.
![](http://el-dev.com/ru/wp-content/uploads/2019/09/IMG_7947.jpg)
![](http://el-dev.com/ru/wp-content/uploads/2019/09/IMG_7951.jpg)
![](http://el-dev.com/ru/wp-content/uploads/2019/09/IMG_7941.jpg)
Для подключения драйвера к пинам Raspberry Pi необходимо использовать специальные соединительные провода (рис. 3). Для подключения аккумулятора к драйверу используйте провода с разъемом, чтобы иметь возможность отключать/подключать аккумулятор.
![](http://el-dev.com/ru/wp-content/uploads/2019/09/FIT0030-02_enl.jpg)
3. Питание
Питание будет осуществляться от двух аккумуляторов. Один аккумулятор мощностью 7v и емкостью 2500 мАч будет питать драйвер и двигатели, можно взять аккумулятор, который шел в комплекте с моделью. Второй внешний имеет аккумулятор имеет мощность 5v и емкость 8000 мАч, он будет питать Raspberry Pi.
![](http://el-dev.com/ru/wp-content/uploads/2019/09/IMG_7970.jpg)
![](http://el-dev.com/ru/wp-content/uploads/2019/09/IMG_7985.jpg)
![](http://el-dev.com/ru/wp-content/uploads/2019/09/IMG_7997.jpg)
4. Установка и настройка ПО
Управление Raspberry Pi по Wi-Fi будет осуществляться при помощи библиотеки «Webiopi». Данная библиотека написана на Python и позволяет управлять пинами Raspberry Pi по HTTP протоколу. Для установки библиотеки «Webiopi» на Raspberry Pi необходимо:
Посмотреть номер последней версии webiopi на сайте и заменить x.y.z на номер последней версии.
Ввести последовательность команд в консоли Raspberry Pi:
$ tar xvzf WebIOPi-x.y.z.tar.gz
$ cd WebIOPi-x.y.z
$ sudo ./setup.sh
Для быстрого запуска webiopi в фоновом режиме введите команду:
sudo /etc/init.d/webiopi start
Чтобы не запускать webiopi вручную после каждого запуска Raspberry Pi необходимо добавить webiopi в автозапуск командой:
$ sudo update-rc.d webiopi defaults
Изменить логин и пароль пользователя webiopi можно командой:
$ sudo webiopi-passwd
Стандартный логин pi и пароль raspberry.
Проверить успешную установку webiopi можно зайдя по IP адресу Raspberry на страницу http://ip_адрес_raspberry/webiopi На данной странице вы увидите интерфейс управления портами Raspberry Pi.
![](http://el-dev.com/ru/wp-content/uploads/2019/09/webiopi-chrome.png)
Для поиска IP адреса Raspberry Pi внутри локальной сети можно воспользоваться любым сторонним софтом, например, программой ipscan.
5. Мобильное приложение
Удаленное управление моделью будет осуществляться с помощью Android приложения, разработанного специально для данного проекта. После установки приложения на смартфон можно ввести данные подключения к Raspberry Pi. В настройках приложения вводим IP адрес Raspberry Pi, логин и пароль пользователя webiopi (стандартный логин pi и пароль raspberry), а также номера портов Raspberry Pi, используемых для управления двигателями.
![]() | ![]() |
6. Запуск модели
Запуск модели начинается с подключения внешнего блока питания к Raspberry Pi. После чего необходимо дождаться загрузки системы. Если все настроено, библиотека webiopi должна быть запущена автоматически.
Устройство Android, с которого будет осуществляться управление Raspberry Pi должно быть в одной локальной сети с Raspberry Pi. Проще всего подключиться к одному Wi-Fi модему или раздать Wi-Fi с телефона и подключить Raspberry к нему.
Открываем приложение Car Control на мобильном устройстве. Нажимаем на кнопку Car Control. При успешном подключении приложения к Raspberry Pi в строке status будет написано «connected».
После успешного подключения к Raspberry Pi через мобильное приложение можно подключить питание к драйверу двигателей. Если всё подключено правильно на драйвере загорится красный светодиод. Нажатие кнопки в приложении посылает сигнал на Raspberry Pi для включения конкретного пина, после чего сигнал передается на драйвер и соответствующий двигатель начинает вращение.