Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Домашняя автоматика

ТЕМА: MC3302

MC3302 15 Окт 2014 15:46 #59735

  • Admin
  • Admin аватар
MC3302 - Радиореле УПРАВДОМ masterkit.ru/?1495027

Последнее редактирование: 21 Нояб 2014 14:16 от Admin.
Администратор запретил публиковать записи гостям.

Управляем с Андроид часов ZGPAX-S5 по WIFI радио-реле на 433Mhz MC3302 29 Нояб 2014 19:47 #60991

  • alexhi
  • alexhi аватар
  • Offline
  • Давно я тут
  • Сообщений: 132
  • Спасибо получено: 27
  • Репутация: 3
Решил поделиться тут разработкой под Android часы ZGPAX S5 и платой радио реле MC3302. Она управляет по WIFI в локальной сети или по 2G из интернет радио-реле MC3302 на 433Mhz, а также получает с него температуру.
Часы практически всегда с собой поэтому и решил использовать их в качестве пульта управления. Если кто не видел вот фото:

Так как планировалось использовать это для Умного Дома то была выбрана и реализована следующая схема. Имеем компьютер который подключен к интернет и домашней WIFI сети.Этот комп управляет всей домашней автоматикой.В его USB порт вставлен адаптер USB HOST MC3101
По сути это мост между COM портом компьютера и радио-сетью на 433Mhz. Его задача все что придет в радио сеть отправить в компьютер. А что придет по WIFI сети или LAN в радио сеть.
В качестве радио-реле используется модуль MC3302
На нем установлен радио-модуль RFM12-B, реле 220V/5A и датчик температуры DS18B20.
Каждое реле имеет свой адрес который можно изменить в конфигураторе. Управляется радио-реле простыми командами их всего три.Вот пример для реле с номером 5:

!SetR1_5 — включить реле — ответ !RELEON
!SetR0_5 — выключить реле — ответ !RELEOFF
!GetC_5 — получить температуру — !TEMP + 23

Эти команды можно подать через плату MC3101 любым терминалом для COM порта на скорости 9600 бод.
Для для того чтобы можно было с Aндроид часов подавать по WIFI или 2G команды на радио реле, был под PC написан редиректор. Его задача передавать данные которые пришли по LAN или WIFI на COM порт компа, а все что пришло по радио-сети 433MHz(ответы радио-реле) на часы. Все передается по UDP на порт 7777.
Тут все просто:
Вот прием данных в СОМ порт от радио-реле:
void __fastcall TForm1::ComPort1RxChar(TObject *Sender, int Count)
{
//событие по приходу символа
ComPort1->ReadStr(sym,Count);
if (sym =="!")//признак начала сообщения
{ Buffer="";sym="";}
else
;
Buffer = Buffer + sym;
// пришла стандартная команда отправим в UDP
if (sym == "\r")
{
Buffer="!"+Buffer+"\r";
lblCom->Caption=Buffer;
NMUDP1->SendBuffer(Buffer.c_str(),Buffer.Length(),Buffer.Length());
}
}
Вот отправка в по UDP в сеть:
void __fastcall TForm1::NMUDP1DataReceived(TComponent *Sender,
int NumberBytes, AnsiString FromIP, int Port)
{//пришли данные по UDP отправим из в RS232 (433Mhz)
char* Buf=new char[NumberBytes];
//Выставляем порт и IP куда надо слать
NMUDP1->RemoteHost=IP;
NMUDP1->RemotePort=PORT;
NMUDP1->ReadBuffer(Buf,NumberBytes,NumberBytes);
IP=FromIP;
PORT=Port;
ComPort1->Write(Buf,NumberBytes);
}

Таким образом радио-реле (а их может быть много или другие радио датчики) получаются доступны по по сети. И могут управляться и получать данные как с других компьютеров так и по WIFI со смартфонов и др.

Вот внешний вид программы редиректора:

Если в качестве управляющего устройства использовать не компьютер, а например планшет с Андроид то система будет более компактной.Планирую написать вариант редиректора COM UDP под Андроид.
Далее делаем программу под Андроид часы.
Это обычный UDP клиент задача которого при нажатии кнопки отослать команду, а по приему ответа отобразить его и все.

Вот внешний вид программы на Андроид часах:

Вот как это на часах смотрится:


Ну и небольшое видио как работает. Сорри за качество снимал с телефона неудобно одной рукой держать его, а другой нажимать на кнопки. :)
Видео работы
Последнее редактирование: 29 Нояб 2014 20:12 от alexhi.
Администратор запретил публиковать записи гостям.

MC3302 09 Дек 2014 14:06 #61503

  • Прагматик
  • Прагматик  аватар
  • Offline
  • Живу я здесь
  • Сообщений: 867
  • Спасибо получено: 81
  • Репутация: 15
Вопрос по e-mail от Гегешко Алексей:
Добрый день! Какое максимальное расстояние между компьютером и МС3302 ?

До 100 метров на открытой местности, в квартире, видимо в пределах лестничной площадки и ближайших этажей, но очень индивидуально. Антенны должны быть распрямлены и расположены вертикально
Администратор запретил публиковать записи гостям.
Модераторы: Советник
            
Рейтинг@Mail.ru Яндекс.Метрика