Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > Открытый проект умного дома

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.12.2013, 11:45   #41
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9820
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Smart Home modbus web project

Можно на PHP
Admin вне форума   Ответить с цитированием
Старый 06.12.2013, 13:22   #42
alexval2007
Member
 
Регистрация: 05.11.2012
Сообщений: 63
Вес репутации: 0
alexval2007 is an unknown quantity at this point
По умолчанию Re: Smart Home modbus web project

и как это реализовать на php хотелось бы взглянуть на идею
alexval2007 вне форума   Ответить с цитированием
Старый 06.12.2013, 14:11   #43
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9820
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Smart Home modbus web project

&, |, ^, <<, >>
Admin вне форума   Ответить с цитированием
Старый 06.12.2013, 15:45   #44
alexval2007
Member
 
Регистрация: 05.11.2012
Сообщений: 63
Вес репутации: 0
alexval2007 is an unknown quantity at this point
По умолчанию Re: Smart Home modbus web project

ну команды для работы с битами похожи на сишные а примерчик можно как они выглядят на php можно на томже регистре r9 к примеру повесим кнопку вкл светодиода на его бит-0
alexval2007 вне форума   Ответить с цитированием
Старый 06.12.2013, 16:00   #45
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9820
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Smart Home modbus web project

Я же ссылку дал с примерами
Admin вне форума   Ответить с цитированием
Старый 06.12.2013, 18:00   #46
alexval2007
Member
 
Регистрация: 05.11.2012
Сообщений: 63
Вес репутации: 0
alexval2007 is an unknown quantity at this point
По умолчанию Re: Smart Home modbus web project

простите с телефона не понял что это ссылка почитаю
alexval2007 вне форума   Ответить с цитированием
Старый 06.12.2013, 22:11   #47
andr128
Senior Member
 
Аватар для andr128
 
Регистрация: 16.09.2012
Адрес: Irkutsk
Сообщений: 555
Вес репутации: 1604
andr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond repute
По умолчанию Re: Smart Home modbus web project

Цитата:
Сообщение от alexval2007 Посмотреть сообщение
Я занимаюсь промышленной автоматизацией и знаю несколько удобен и надёжен модбас.
В ардуино можно довольно легко разобрать регистр на биты а также собрать биты обратно в регистр но как это сделать на web я полистал интернете вроде бы это можно сделать на JavaScript а потом передать результат в HTML. Я к чему это всё к тому что для нормального умного дом мало 20 переменных а у нас получается что целый регистр это всего лишь одна переменная так как мы не работаем с битами регистра. Надо либо переписать сервер на большее количество регистров либо решить проблему с битами.
Если вы хотите больше 20 переменных нужно поправить практически всё:
код ардуино, шлюз, web страницу html, php.
А сколько вы хотите повесить переменных на 1-у ардуину? на все возможные входа-выхода?

p.s
Немного прочитав поздние вопросы добавлю.
Минимальной единицей обмена информацией является байт, поэтому вам все равно придется биты переводить в байты (или слова) выделяя нужные вам биты операцией маскирования or, and и сдвижкой битов на нужное количество (выд.бит) вправо. В итоге получим байт с 0 или 1.
Более приспособлен для этого Си, PHP.

Пока не могу понять что вы хотите в итоге получить.

В данном проекте я хотел реализовать сеть из нескольких ардуин, используя ModBus протокол не выдумывая своего велосипеда.
Используя 1 ардуину можно конечно обойтись и без modbus. Используя например шлюз ser2net, либо напрямую из php считывать сериал порт подкл. к ардуино.
andr128 вне форума   Ответить с цитированием
Старый 07.12.2013, 01:48   #48
azh122
Junior Member
 
Регистрация: 23.05.2013
Сообщений: 24
Вес репутации: 0
azh122 is an unknown quantity at this point
По умолчанию Re: Smart Home modbus web project

Я вот тут одного не понимаю - почему 16 а не 8 (т.е. 1 байт)? По моему в байт влезает абсолютно все, ну или почти все (отдельные исключения разобрать легче же). Смысла до бит (включить-выключить) не вижу. Что, памяти не хватает?
Ну а в целом - конечно же от задач зависит. Вот у меня на одной дуине нужно под 1000 байт рулить (лед свет и пр. для аквариума - 8 каналов х каждые 10 мин (т.е байт) плюс прочее). На второй - под 60 точек китайских выключателей-димеров (с обратной связью работают, надежно - уже который год).
Т.е. в моем случае - 10-20 регистров мало. Ну и фик с ними. Под эти две дуины свое почти приделал. А под все остальное - модбас сейчас поднимаю успешно.
azh122 вне форума   Ответить с цитированием
Старый 07.12.2013, 14:42   #49
alexval2007
Member
 
Регистрация: 05.11.2012
Сообщений: 63
Вес репутации: 0
alexval2007 is an unknown quantity at this point
По умолчанию Re: Smart Home modbus web project

Ну мысль у меня такая имеем сеть из arduin slave 1 - slave n. протокол обмена у нас модбас по rs485 роутер у нас мастер сети на котором стоит веб серв. У нас всего 20 регистров этого более чем достаточно для любых задач если использовать биты этих регистров как это и делается в промышленности, 16 битный регистр * 20 регистров = 320 переменных ввода / вывода. В первой ардуине может использоваться всего 10 переменных и они могут быть из разных регистров. Во второй другое количество переменных и все те же 20 регистров. Да биты которые извлекаем из регистров превратим в те же байтовые переменные зато сеть не будет нагружена посылками в 100-300 регистров которые несут в себе всего одну переменную если эта переменная передает значения вкл выкл а не какое то цифровое температуру или еще что. Решил дописать на php чуть и html поправить в ардуине тоже немного поправлю добавлю пару функций. Сам сервер трогать не надо он прекрасно работает и 20 регистров нам хватит если ими правильно воспользоваться. И так что я тут на ваял собственно вот:
PHP код:
<?php
//чтение битов из регистра
$input 15//входная переменная (регистр)
$lamp_array = array();
for (
$i=0;$i<16;$i++){
  
$lamp_array[$i] = ($input >> $i) & 0x01;
}
var_dump($lamp_array);//выводим на экран содержимое массива
?>
Собственно мы прочитали содержимое регистра и теперь можем обращаясь к элементам массива узнать состояние битов с 1 по 16.

Сейчас разбираюсь с записью бит в регистр.
alexval2007 вне форума   Ответить с цитированием
Старый 07.12.2013, 15:08   #50
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9820
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Smart Home modbus web project

Цитата:
Ну мысль у меня такая имеем сеть из arduin slave 1 - slave n. протокол обмена у нас модбас по rs485 роутер у нас мастер сети на котором стоит веб серв.
К роутеру можно подключить адаптер USB-RS485
К нему есть драйвер в репозитории OpenWrt и CyberWrt
называется kmod-usb-serial-ch341
Admin вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 14:36. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика