Iface wlan0 inet dhcp

Часть 2

Подготовка к работе:

1) Распаковка плат-контроллеров L298N

2) Установка Wi-Fi адаптера EDUP EP-N8508GS

3) Предварительная сборка тестовой цепи с Raspberry Pi, L298 и DC motor 9V

First Hardware concepT


Разработка:

1) Конфигурация network настроек:


$sudo nano /etc/network/interfaces

#/etc/network/interfaces

auto lo

Iface lo inet loopback

Iface eth0 inet dhcp

Allow-hotplug wlan0

Auto wlan0

iface wlan0 inet dhcp

wpa-ssid "Your Network SSID"

wpa-psk "Your Password"

2) Перезагрузка параметров

$sudo service networking reload

3) Установка на домашнем маршрутизаторе статического IP для Raspberry Pi
IP – 192.168.1.41

4) Ну вот, можно отрубать Ethernet кабель – теперь Raspberry живет в местном Wi-Fi


5) Немного изменим index.php:
а) исправим баг когда видео-девайс не прикручен, а motion передает пустую картинку
(посредством php вставки – условие проверки наличия файла /dev/video0)
б) добавим frame управления - terminal.php

videoerr.php – по сути просто один тег: <h2>Video device not found</h2>

Эта страница вставляется, только если скрипт не обнаружит файла /dev/video0 – т.е камеры

6)

 
 

Теперь немного поколдуем - над возможностью не обновляя основную страницу, отправлять запросы на сервер. Я решил реализовать это на javascript ….

Суть идеи такая:


а) есть кнопка – при нажатии на нее происходит отправка запроса (SendUpdatePage()), запрос отправляется на указанный url - action.php с GET переменными pin и value.
б) затем, на сервере обрабатывается скрипт action.php и генерируется страница на его основе.

в) теперь просто отлавливаем результат запроса (GetUpdatePage()), получаем вывод скрипта action.php, весь текст из него пишем в указанный элемент (<div id=”value”></div>).

Казалось бы, просто генерируем еще одну страницу-текст и пишем ее в блок, но тут работает хитрость с php и вызовом из него команды терминала – при работе action.php и происходит вызов python API для работы с GPIO, в результате состояние указанного пина инвертируется

Вот и весь скрипт – action.php: если все аргументы переданные верны, то выводом будет состояние пина в данный момент – это как раз будет видно на странице, если произошла ошибка ввода аргументов, то выводом будет error: bad argument

7) Вот теперь можно подключать к цепи крону (на 9V) и смотреть что будет происходить:

при нажатии на кнопку 0 меняется на 1 и мотор начинает вращаться (С 27 пина на Raspberry пошел сигнал и L298N открылась пропуская напряжение с кроны на моторчик)


при повторном нажатии 1 поменялось на 0 и моторчик перестал вращаться (все работает)

 
 


 
 

8) Теперь протестируем L298N на реверс – изменим пин с 27 на 22, проводим те же действия, что и в прошлый раз. Мотор работает, вращение уже обратное.

9) Здесь же приведу схему тестового подключения:

 
 

10) Ну вот, подготовка закончена, можно начинать сборку окончательной модели дрона.

На данный момент уже готова первая концепция подключения RPi, L298N и моторов, ее сразу приведу ниже:


*полноразмерный вариант прилагается в виде картинки (/hardware.jpg)

Замечание 1: я извиняюсь за бардак, но уж как есть

Замечание 2: если у кого-то возникнут вопросы по проекту – пишите на мою электронную почту snipghost@list.ru (просьба писать только адекватные вопросы)

Замечание 3: если кому нужны исходники чего-либо в.txt виде – обращайтесь к замечанию 2

Замечание 4: все креативные и рациональные предложения принимаю к рассмотрению (но только их)

Замечание 5: Всех с наступившим 2015 годом! Желаю всех успехов в новом году!



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: