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

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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.06.2014, 21:33   #161
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 43
Сообщений: 573
Вес репутации: 599
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: Описание протокола "Умный дом"

Там числа нужно было вводить в десятичном представлении по три разряда на число, т.е. 0x85 = 113.

Вот новый вариант, где можно hex'ами побайтно писать:
Код:
string="010500060001"

cnt=${#string}
let 'cnt -= 2'

crc=0xFFFF

for i in `seq 0 2 $cnt`; do

    crc=$(( crc ^ 0x${string:$i:2} ))

    for j in `seq 0 7`; do

        c=$(( crc >> 1 ))

        if [ $(( crc & 1 )) = 1 ]; then					

            let 'c ^= 0xA001'
        fi

        crc=$c

    done

done

printf "0x%04X" "$crc"
echo
Также нужно не забывать, что crc16 отличаются полиномами. Этот алгоритм использует число 0xA001.

Цитата:
а должно быть 0925DD
У crc16 длина crc равна 16 битам, т.е. двум байтам, а не трём.
__________________
Россия навсегда!

Последний раз редактировалось uni; 19.06.2014 в 23:24.
uni вне форума   Ответить с цитированием
Старый 19.06.2014, 21:49   #162
lvovitch
Senior Member
 
Регистрация: 14.04.2010
Сообщений: 239
Вес репутации: 0
lvovitch has a reputation beyond reputelvovitch has a reputation beyond reputelvovitch has a reputation beyond reputelvovitch has a reputation beyond reputelvovitch has a reputation beyond reputelvovitch has a reputation beyond reputelvovitch has a reputation beyond reputelvovitch has a reputation beyond reputelvovitch has a reputation beyond reputelvovitch has a reputation beyond reputelvovitch has a reputation beyond repute
По умолчанию Re: Описание протокола "Умный дом"

Спасибо большое!
Действительно я затупил. Теперь все работает
Придется модуль переписывать, что бы от javascript избавиться
lvovitch вне форума   Ответить с цитированием
Старый 19.06.2014, 22:03   #163
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 43
Сообщений: 573
Вес репутации: 599
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: Описание протокола "Умный дом"

Эт точно
__________________
Россия навсегда!
uni вне форума   Ответить с цитированием
Старый 02.01.2016, 23:52   #164
DenLis
Junior Member
 
Регистрация: 02.01.2016
Сообщений: 2
Вес репутации: 0
DenLis is an unknown quantity at this point
По умолчанию Re: Описание протокола "Умный дом"

Нажмите на изображение для увеличения
Название: Схема.jpg
Просмотров: 349
Размер:	53.9 Кб
ID:	3457
Добрый день.
Я только начинаю осваивать такую сложную тему как OpenHab и Умный дом. Пока нахожусь на стадии теории.
Нужен Ваш совет. Задумка такова: OpenHab установлен на Raspberry Pi, к ней подключена Arduino UNO, к Arduino UNO подключены реле и несколько Arduino Pro Mini, а к ним датчики и выключатели. (во вложении схема для наглядности; реле, выключателей и датчиков будет гораздо больше чем на схеме). Основная программа будет стоять на Arduino Uno, OpenHab будет использоваться только для связи с ПК и смартфоном. (если вдруг откажет Raspberry Pi, то всё будет продолжать работать и дальше, только пропадёт связь с ПК и смартфоном).
Вопрос: какой протокол использовать между Raspberry Pi и Arduino UNO, Arduino UNO и Arduino ProMini. (на схеме нарисовано штриховыми линиями). При чём протокол должен быть "двухсторонним", т. е. если сработал датчик дыма, то Arduino Pro Mini сама посылает сигнал на Arduino UNO, а не ждёт от неё запроса. А Arduino UNO сама отправляет сигнал на Raspberry Pi о случившимся событии, так же не дожидаясь запроса от Raspberry Pi.
Прошу Вас не оставляйте просьбу без ответа.
За ранее Спасибо.
DenLis вне форума   Ответить с цитированием
Старый 03.01.2016, 00:59   #165
Alex19279
Senior Member
 
Регистрация: 20.09.2014
Сообщений: 145
Вес репутации: 0
Alex19279 will become famous soon enough
По умолчанию Re: Описание протокола "Умный дом"

протокол rs-232, по приему байта срабатывает прерывание, кэшируете принятые данные, анализируете принятый код.
всю кучу девайсов соединить в единую двух-проводную сеть rs-232.
первый байт что нибудь из служебных символов, далее кому посылка из двух байт, байт типа информации, байты инфы, завершающий служебный байт.
все девайсы слушают сеть только в перывании которое срабатывает по приему, по приему байта смотрят кому посылка и что делать. пока нет данных занимаються анализом датчиков.
Alex19279 вне форума   Ответить с цитированием
Старый 04.01.2016, 00:31   #166
DenLis
Junior Member
 
Регистрация: 02.01.2016
Сообщений: 2
Вес репутации: 0
DenLis is an unknown quantity at this point
По умолчанию Re: Описание протокола "Умный дом"

Alex19279 Большое спасибо за совет.
DenLis вне форума   Ответить с цитированием
Старый 01.08.2017, 18:49   #167
Amt921
Junior Member
 
Регистрация: 07.07.2017
Сообщений: 1
Вес репутации: 0
Amt921 is an unknown quantity at this point
По умолчанию

Потребовался в моём проекте шлюз modbusgw.
Спасибо автору за него, вот только быстрее 57600 не ворочается, а мне надо 921600.
Пришлось разобраться где, что, как компилировать.
Выкладываю собраный пакет. В исходниках поменял тип данных для хранения скорости и добавил в список все возможные для cfsetspeed.

Только в своём проекте столкнулся с необходимостью отключить использование CTS и RTS при инициализации порта, пока не нашел как. Может кто подскажет.
Вложения
Тип файла: zip modbusgw_1.0.0-1_ar71xx.zip (8.9 Кб, 67 просмотров)
Amt921 вне форума   Ответить с цитированием
Ответ


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

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

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

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

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


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


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