Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: 1 [2] 3 4 5 ... 9   Вниз
  Печать  
Автор Тема: коллеги, давайте, наконец, напишем что-нибудь. )  (Прочитано 480286 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #30 : 10-07-2011 14:49 » 

Хорошо. Предположим, что ничего сложнее не будет. Допустим, что необходима только управляющая сеть, а все прочие каналы (кабель от видеорегистратора к телевизору, пневматическая почта для доставки пиццы в ванную и выдачи сдачи и т.п.) будут точка-точка между исполняющими устройствами и на общую архитектуру не повлияют.

Нужно выбрать шину, наиболее подходящую для всего этого железа. Я бы предложил для физики RS485 с опторазвязкой, а для 2 и 3-его уровня - CANbus, как риалтайм-ориентированный и достаточно защищенный протокол (правда у него есть недостаток - в пакете всего до 8 байт полезной нагрузки). И то и то реализуется железом.

Добавлено через 10 минут и 14 секунд:
Соотв., для физики требуется набор однотипных приемопередатчиков (ПП), что полезно для унификации и ЗиПа.

Для питание опторазвязанной электроники два варианта:
* каждый ПП снабдить маломощным трансформаторным преобразователем с питанием от контроллера;
* питание от общего низковольтного источника (шина питания прокладывается вместе с сигнальной линией).

Для связи с ЛВС потребуется девайс-конвертер 1 и 2 уровня. Например, в RS232.

Насчет RS485+CAN я ошибся: CAN требует возможности подавить одно битовое состояние другим и невозможность сделать обратное. Например, как в I2C.
« Последнее редактирование: 10-07-2011 15:11 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
x77
Команда клуба

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #31 : 10-07-2011 15:23 » 

что надо купить, и сколько это  стоит ?  прототип будет собираться, есс-но, "на коленке". тот же замок я врезать не буду, пока не соберу готовую схему, чтобы там все жило и щелкало где надо. потом будем прогу для сервака писать. и клиентскую часть.

опторазвязка? для квартиры? нафига?

Добавлено через 2 минуты и 11 секунд:
запитывать я думаю от внешнего БП, двенадцати-вольтовку можно купить где-то  за косарь. т.е. сигнальная ляжет вместе с силовой. ты мне про контроллер скажи Улыбаюсь если брать готовый- то какой?
« Последнее редактирование: 10-07-2011 15:26 от x77 » Записан

Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #32 : 10-07-2011 15:27 » 

Цитата
нафига?
Что тебя смущает?
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #33 : 10-07-2011 15:57 » 

Игорь, выход из строя системы питания одного блока может привести к потере связи во всей сети, а может даже и к выходу из строя других блоков. Т.ч. опторазвязка желательна, особенно для надежных устройств с постоянной работой. Конечно, за это придется заплатить.

Ох, торопишься ты...
Пока почитай про CAN, про интерфейсные микросхемы. Я уже не говорю о логике работы системы, которую ты задвигаешь в конец... Улыбаюсь

Примеры - не рекомендации.
Драйвер для CAN: http://www.chipdip.ru/product/mcp2551-i-p.aspx
Питание с развязкой: http://www.deltel.ru/shop/products/search?title=DCP010505B&search_type=1

Не думай, что отделаешься штукой - тут много чего нужно. Ага
« Последнее редактирование: 10-07-2011 16:02 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
x77
Команда клуба

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #34 : 10-07-2011 17:05 » 

Sla, оптоволокно? в квартире? именно это и смущает. я, наверное, старая больная обезьяна, но в моем понимании оптоволокно - это такие озверевшие (апд.: армированные) кОбелины, у которых минимальный радиус угла поворота - за полметра. я что-то путаю?

Добавлено через 11 минут и 14 секунд:
RXL, а ты умеешь взбодрить начинающих "скудо-строевцев"

- ну чо, уроды, слабо гандон на глобус натянуть?
- слышь, директор, а чо такое "глобус"?
- а вот об этом, ганакоки, вам и расскажет новая учительница по географии!
« Последнее редактирование: 10-07-2011 17:18 от x77 » Записан

Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #35 : 10-07-2011 18:30 » 

опторазвязка != оптоволокно
опторазвязка - развязка сигнальной части (линий передачи) от питания, чтобы в случае выхода из строя БП питание не было подано в информационные линии
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #36 : 10-07-2011 22:27 » 

Странно, что почти все CAN-драйверы не обеспечивают сигнала контроля коллизий. А которые обеспечиваю, те работают уже не драйвером, а полноценным контроллером интерфейса.

Добавлено через 1 день, 16 часов, 36 минут и 39 секунд:
Игорь, ты еще не раздумал?
Вот, есть ATmega с CAN-контроллером (а также куча периферии и линий IO): http://www.atmel.com/dyn/products/product_parameters.asp?category_id=163&family_id=607&subfamily_id=760&part_id=4615&ListAllAttributes=1
К нему подойдет драйвер, наподобие этого: http://www.chipdip.ru/product/mcp2551-i-p.aspx
Кстати, на цены Чип-Дип лучше не смотреть, а то все расхочется делать. Известно, что у них все компоненты из чистого золота. Инет показывает в изобилии других розничных поставщиков с ценами в 2-3-4 раза ниже.
« Последнее редактирование: 12-07-2011 15:03 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Ochkarik
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #37 : 12-07-2011 18:09 » 

маленький офтопик)
Кстати, на цены Чип-Дип лучше не смотреть, а то все расхочется делать. Известно, что у них все компоненты из чистого золота. Инет показывает в изобилии других розничных поставщиков с ценами в 2-3-4 раза ниже.
эт точно.... в выходные был, охреневал: http://www.chipdip.ru/product/pt8-1v.aspx
- как такое может быть?!
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #38 : 12-07-2011 18:32 » 

Поискал чипы ATmega16M1 (а также 32 и 64) - сейчас ни у кого нет, но поставляют на заказ. Цену нашел только в ЧипДип - 450 руб при партии от 17 штук. Т.е. наверняка можно заказать у нормальных поставщиков небольшую партию штуки в 4 за сумму порядка 1000 руб с доставкой на дом.

Вот нашел схему опторазвязки (в атаче) драйвера от контроллера.

Я вот только не пойму - драйверы CAN переполюсовку не понимают. Значит надо соблюдать полярность подключения.
И, судя по нагрузочным характеристикам, число терминаторов 120 ом надо минимизировать. В идеале - до двух.

Добавлено через 1 минуту и 18 секунд:
Странно, что почти все CAN-драйверы не обеспечивают сигнала контроля коллизий. А которые обеспечиваю, те работают уже не драйвером, а полноценным контроллером интерфейса.

Потому, что контроль коллизий возложен на контроллер.

* CAN_driver_galvanic_isolation.pdf (21.99 Кб - загружено 952 раз.)
« Последнее редактирование: 12-07-2011 18:35 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Ochkarik
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #39 : 12-07-2011 18:39 » 

RXL, я не совсем уловил его 16к флеши - это под память, а 512байт епрома что? - программно доступная?
и еще... раз дело серьезное - может с шифрованием взять? и битом защиты чтения программы?

Добавлено через 1 минуту и 59 секунд:
ии...  куда этот контроллер? для оконечных устройств или в качетсве головы?
« Последнее редактирование: 12-07-2011 18:41 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #40 : 12-07-2011 18:42 » 

Там так (в килобайтах):
Модель / Flash (программная) / RAM / EEPROM
16 / 16 / 1 / 0.5
32 / 32 / 2 / 1
64 / 64 / 4 / 2

В EEPROM можно каждый индивидуальный байт стереть и записать - это для запоминания чего бы то ни было переменного, нужного программе при запуске.

Защита есть у чипа любого уровня.

Модель с индексом "M1" оснащена CAN-контроллером и предназначена для тяжелых условий работы типа автомобиля.


Для любой ноды годится - мощи у него много - до 16 MIPS. Например, нужно подключить программу на компе к CAN-сети: делаешь на этом чипе конвертер S323-CAN. Нужно подключить замок с устройством для чтения (?)карт - на нем же - мощи хватит сполна. Также интерфейс для управления видеокамерой.
В принципе, многие задачи подходят - не только такие простые.


Добавлено через 2 минуты и 26 секунд:
Кстати, CAN я привел как пример - не обязательно на ней зацикливаться. Просто понравилось. Улыбаюсь
« Последнее редактирование: 12-07-2011 18:54 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Ochkarik
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #41 : 12-07-2011 18:54 » 

мощи то хватит... епрома - маловато. под таблицу ключей впритык. если ключики не по два байта.
таймер? пониженное потребление?
а вообще все таки полнофункциональной схемы не хватает. по моему, это самое интересное)
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #42 : 12-07-2011 18:55 » 

Ключи во флеш можно записать. Многие атмеловские чипы имеют возможность самопрограммирования флеш (глянул по быстрому в доку - кусками по 64 слова можно перезаписывать).
« Последнее редактирование: 12-07-2011 19:05 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Ochkarik
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #43 : 12-07-2011 19:01 » 

ну... стремно как-то...
чисто виртуально прикинуть....
допустим это все стоит в двери, рядом с замком.
из управления: веревка на силовой ключ привода замка.
веревка на счтыватель карт...
ну может клавиатурку на пару кнопок подцепить.
пару лампочек. линк на дальний конец (комп).
- все это чисто порты IO или все это CAN? или считыватель карточек - нет?
или как?


Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #44 : 12-07-2011 19:04 » 

Собственные объекты замка, типа запора, кардридера и лампочек - его IO. Связь с компом и другими (если нужно) устройствами - по сети.
Какую-то логику устройство реализует автономно. По сети можно информировать о событиях, получать команды (смена ключей, открыть/закрыть и прочее) и отдавать.
« Последнее редактирование: 12-07-2011 19:06 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Ochkarik
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #45 : 12-07-2011 19:13 » 

картридер на IO? ну... прикидывать надо. хотя ног хватит... 
ацп/цап есть... микрофон?)
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #46 : 12-07-2011 19:14 » 

АЦП/ЦАП есть. Много чего его. AVR-ы богаты на периферию.
Но микрофон на него вешать как-то не правильно, мне кажется - не его профиль. Но и такое возможно.
« Последнее редактирование: 12-07-2011 19:16 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
x77
Команда клуба

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #47 : 13-07-2011 11:59 » 

Игорь, ты еще не раздумал?

не, не раздумал, читаю и осмысливаю Улыбаюсь

Ром, загляни в личку.
Записан

RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #48 : 14-07-2011 13:55 » 

Альтернатива CAN - I2C. Они сильно различаются:
* CAN использует одну сигнальную пару, а I2C - две сигнальные линии, общую землю и подтяжку к питанию;
* CAN имеет 11 или 29 бит адреса, I2C - 7 или 10;
* CAN имеет контрольный код, I2C - не имеет;
* пакет CAN может содержать от 0 до 8 байт нагрузки, I2C - не ограниченно;
* получатель CAN подтверждает весь пакет, I2C - каждый байт байт;
* В I2C можно объединять последовательные пакеты используя повторный старт (при нем шина не освобождается), в CAN же каждый пакет передается отдельно (тут на счет CAN могу ошибаться).
* операции I2C подобны не передаче данных, а запросам на чтение и запись; CAN - просто шина сообщений.

Один недостаток I2C - ненадежная линия передач - можно компенсировать, используя для передачи за пределы одного корпуса две дифференциальные пары и два драйвера от RS-485. Это позволит удлинить линию до 100-200 метров при скорости передачи 0.5..1.0 Мбит/с и сделать ее устойчивой к помехам.
Вот, даже кто-то уже решил данную задачу: http://xj900diversion.free.fr/bus/I2C%20-%20RS-485%20adapter.htm
Я только не понял, зачем там используется нагрузка 220 ом.
Судя по спецификациям на драйверы, шина RS485 более помехоустойчива, чем CAN и на той же скорости допускает более длинные линии связи. Например, гистерезис входов у RS485 в несколько раз выше - 400 мВ, против 30-70 мВ у CAN.


Добавлено через 22 часа, 8 минут и 20 секунд:
Игорь, приведи доку на считыватель карт.

Добавлено через 10 минут и 18 секунд:
1. контроллер. хранит коды карт (EEPROM, насколько  я понимаю). пока пусть будет автономным. после сброса памяти должен запрашивать карту, эту карту далее считает мастер-картой. определенная последовательность прикладываний мастер-карты должна включать режим программирования. в режиме программирования должен уметь включать и отключать доступ для остальных карт. с режимами доступа (гостевой, дневной и пр.) пока не заморачиваемся, либо он есть, либо нет. должен иметь буфер, на пару тысяч событий.

при всем при этом должна быть возможность считывания событий на сервер, загрузки карт доступа с сервера, и программного управления подключеными к серверу устройствами (открыть дверной замок, сидя в ванной с ноутбуком. в идеале - расплатиться за пиццу, оставить 10 процентов чаевых, пожелать удачного дня, и закрыть дверь).

2. геркон. тупо сообщает контроллеру об изменении состояния (открыт-закрыт)

3. замок. управляется от реле контроллера (ну и плюс механический ключ)

4. считыватель, он же ридер. сообщает контроллеру, что приложена такая-то карта.  если карта есть списке   имеющих доступ - разблокируем замок.

5. всякая фигня. типа доводчика, и БП на 12 вольт.

2. Как себя поведет геркон в условиях железной двери и, возможно, магнитного удержателя двери?
« Последнее редактирование: 15-07-2011 12:18 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
x77
Команда клуба

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #49 : 20-07-2011 06:12 » 

считыватель пока подбираю. ставить какой-нибудь EM-Reader жаба душит. обычно все они развязываются по rs232, запитываются иногда через usb. определюсь - скажу точнее.

а геркон нормально себя должен повести, он всегда на подложку ставится, т.е. он изолирован.

Добавлено через 3 минуты и 37 секунд:
з.ы. хотя вру, для чтения обычно используют интерфейс Wiegand26, по-моему, а для чтения/записи - 232.
« Последнее редактирование: 20-07-2011 06:16 от x77 » Записан

RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #50 : 20-07-2011 07:43 » 

Ну ты доку то приведи для ознакомления.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
x77
Команда клуба

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #51 : 20-07-2011 08:02 » 

RXL, угу, только считыватели подберу - и приведу.
Записан

x77
Команда клуба

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #52 : 20-07-2011 09:25 » 

в принципе, то, что на внешнем считывателе будет http://ru.wikipedia.org/wiki/Виганд_(интерфейс) - (Wiegand26) это практически 100%. интерфейс этот довольно тупой: Data0, Data1 и земля. Иногда отдельно выносятся  питалово диода (диодов), и/или питалово зумера.

сами считыватели - ну, что-то из этих: http://videotechnology.ru/zam5.html , ценовой диапазон - до 1000 в розницу.

хотелось бы ишо иметь внутренний считыватель в самом контроллере, чтобы можно было через мастер-карту запрограммировать разрешить / запретить доступ другим картам без подключения к ПК.

замок будет электромеханический, т.е. изнутри может открываться кнопкой, эта кнопка и будет запитана от реле контроллера.
« Последнее редактирование: 20-07-2011 09:33 от x77 » Записан

RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #53 : 20-07-2011 10:22 » 

На английском варианте Вики написано, что из 24 бит кода первые 8 - facility code. Я так понимаю, что это код самого считывателя? Или как? Короче, что именно записано на карте?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
x77
Команда клуба

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #54 : 20-07-2011 10:37 » 

RXL, не, это - код помещения, дальше идет код сотрудника. посмотри тут: http://www.offs.ru/310/Wiegand.html

Добавлено через 9 минут и 38 секунд:
RXL, по большому счету, что записано на карте - определяет контроллер. считыватель тупо отсылает данные контроллеру, в нашем случае - 2 бита контроля четности и 24 бита данных. как их интерпретировать - контроллер решает сам, ты что хочешь можешь закодить туда, хоть допуск по размеру обуви.

з.ы. смысл Виганда в том, что формат данных ты задаешь и интрепретируешь сам, на этом интерфейсе сделано несколько тысяч разных форматов, многие - проприетарные. стандарт - это 8 бит на помещение и 16 бит для сотрудника, т.е. 65к сотрудников можно прописать в 255 помещений. это - классический Wiegand 26.

Добавлено через 2 часа, 2 минуты и 6 секунд:
в принципе, уже потихонечку можно и ТЗ начинать прикидывать. события контроллер накапливает в буфере, включенный сервер приложений их оттуда забирает. если долго не забирал - события начинают перезатираться по принципу FIFO. сервер получает события по РС232 (я так понимай), событие должно состоять из:

1. дата / время
2. тип устройства (0 - считыватель, 1- геркон, 2 - кнопка)
3. код точки доступа
4. тип события (0 - доступ запрещен, 1 - доступ разрешен, 2 - дверь открыта (геркон), 3 - дверь закрыта (геркон), 4 - дверь открыта вручную (кнопка)). может, что-то еще.
5. код кардхолдера (если устройство = 0).

по идее, контроллер будет выплевывать это одним пакетом, сервер приложений все это парсит и складывает в БД.

БД пока будет состоять из четырех таблиц: события, точки доступа, карты, кардхолдеры. кардхолдеру можно сопоставить одну и более карт, точке аналогично - точке доступа одну и более карт. должна быть десктопная софтина с настольным ридером, которая позволяет записать нужные данные на карту (код кардхолдера и доступные ему точки доступа). эти данные она также пишет в базу. сервер приложений по команде оператора должен обнулить память контроллера и прописать все карты для всех кардхолдеров для всех точек доступа.

т.е. имеем:

1. одну примитивную БД (хранение данных)
2. один сервер приложений (чтение / запись данных в память контроллера)
3. одно десктопное приложение для просмотра событий / редактирования карт.

в перспективе их надо будет разнести, монитор для просмотра событий может тупо крутиться сам по себе, и, при желании, даже смс-ки отправлять или там с веб-камеры в коридоре на заданный IP раз в секунду класть картинку. но это все потом.

как-то так вот.
« Последнее редактирование: 20-07-2011 12:49 от x77 » Записан

RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #55 : 20-07-2011 12:56 » 

Кстати, для даты/времени нужен RTC.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
x77
Команда клуба

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #56 : 20-07-2011 12:58 » 

RXL, ну да.
Записан

RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #57 : 20-07-2011 13:06 » 

Я так и не понял, откуда берется facility code: он записан на карте или в считывателе?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
x77
Команда клуба

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #58 : 20-07-2011 13:17 » 

на карте. считыватели, о которых я говорю - они тупые, и сами ничего в себе не хранят, они просто передают считанную с карты инфу контроллеру. контроллер должен парсить данные сам, т.е. из 24 битов блока данных достать 1 байт с кодом точки доступа и 2 байта с кодом кардхолдера, проверить у себя, есть ли у данного кардхолдера право прохода по данной точке доступа, и если есть - открыть дверь. при этом должно сгенерироваться событие для последующей передачи серверу приложений в буфере событий.
Записан

RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #59 : 20-07-2011 13:32 » new

Тогда это деление на facility и card code, по сути, отсутствует и все 24 бита - номер карты. Я правильно понимаю?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Страниц: 1 [2] 3 4 5 ... 9   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines