На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
Дорогие друзья! Поздравляем вас с днём Победы!
msm.ru
Страницы: (5) « Первая ... 2 3 [4] 5  все  ( Перейти к последнему сообщению )  
    > Связь между устройствами
      Цитата Prince @
      до тех пор, когда будет понятна необходимая пропускная способность каналов связи
      с этим более менее ясно
      обычно 10 плат, которые дают 15 байт не чаще 4 раз в секунду
      Максимально 30 плат

      С проводом, идеально если это обычный сетевой кабель — один восьмижильный.
      Радиоканал не хочется с соображений здоровья и по цене.

      При любом раскладе, центральный компьютер знает все данные о каждой плате, например. опрос температуры можно делать раз в час, а не 4 раза в секунду. Аналогично. если центральный компьютер знает что в комнате нет людей, то и датчики движения нет смысла опрашивать раз в 4 секунды
        Цитата orb @
        Цитата Prince @
        я бы не стал строить на 1-wire
        почему?

        Для реализации по этой шине нужно уметь формировать задержки
        ~3-5, ~60, ~750 [мкс]. (Могу ошибаться, не помню точно. Но порядки такие.)
        Для мастера, который командует обменом, это более-менее удобно и просто.
        А для слэйва - не очень.
        Спец. устройства этой шины решают эти проблемы на аппаратном уровне.
        Программно наверно тоже можно, но если нет опыта... :huh:

        Кроме того, это шина принципиально не очень помехо-устойчива.
        И разговоры про 30 метров для неё, на мой взгляд, преувеличение.
        Короче, если доведётся повозиться - сам поймёшь. :)

        Если нужно получить данные с удалённого датчика 1-wire, значит
        надо поставить микро-процессор поблизости от датчика.
        Например 0.5 метра. Провода скрутить.
        А данные из процессора качать в центральный комп любым
        доступным способом.
        RS232 больше 30 метров я бы тянуть не стал, хотя слышал об устойчивой
        работе до 100 метров.
        RS485 - 1000 метров пробовал сам, работает устойчиво.
        Ethernet - тоже метров 100.

        Для программирования самое простое - RS232.
        Сообщение отредактировано: ЫукпШ -
          Цитата Prince @
          сейчас medved_68, наверное, снова будет потешаться

          :D Зачем? Да и до этого не потешался.
          Цитата ЫукпШ @
          RS232 больше 30 метров я бы тянуть не стал, хотя слышал об устойчивой работе до 100 метров.
          130 метров на 2400 сам без проблем реализовывал.
          Цитата ЫукпШ @
          Ethernet - тоже метров 100.

          От кабеля зависит. С моножилой - пойдет, с оплеткой я бы не стал рисковать и поставил бы концентратор на 80 метрах...
          Цитата ЫукпШ @
          Для программирования самое простое - RS232.

          Для масштабирования не очень (ИМХО). Хотя, если на детектирование адреса перейти...Опять же Интернет доступ - нужен центральный комп. При Ethernet коммуникациях вопрос такого доступа снимается, на любой из железок может быть реализован сервер. Как вариант - через Интернет отдается команда, котел врубается на полную и температура к приезду хозяина достигает номинальной. А теперь попробуйте убедить меня, что именно это (такая реализация умного дома) не востребовано... :D
            интернет нам не нужен. для плат так это 100%
            на Центральный ПК интернет я и так могу завести и с него давать команды :)

            тут вопрос именно между платами и центральным ПК, так что бы это был домашний бюджет и красиво на вид :)
              Цитата orb @
              интернет нам не нужен. для плат так это 100%

              orb, если посчитать, сколько раз я слышу такие заявления... :D А потом... :lol: :D
                А зачем мне на плате может интернет понадобиться? :blink:
                  Цитата orb @
                  А зачем мне на плате может интернет понадобиться? :blink:

                  Действительно.
                  На работе я обхаживаю/обслуживаю похожую систему.
                  Причём с бОльшим количеством уровней управления.
                  К интернету подключен один из компов высокого уровня.
                  Для контроллеров нижнего (и другого разного уровня)
                  написан соотв. софт.
                  В результате я могу "порулить" конкретным контроллером
                  хоть из Австралии.
                  Сообщение отредактировано: ЫукпШ -
                    Цитата ЫукпШ @
                    В результате я могу "порулить" конкретным контроллером
                    хоть из Австралии.
                    если будет интернет только на центральном компьютере, я тоже смогу порулить любой из плат
                      Цитата orb @
                      А зачем мне на плате может интернет понадобиться? :blink:

                      Если это ЦУ - то понадобиться. Для удаленного управления и снятия данных. orb, ЫукпШ вполне возможно вы не поняли мою мысль. Я не говорил, что на КАЖДОМ модуле необходим интернет. Я всего лишь заострил внимание на том, что если в качестве коммуникаций будет Ethernet - то ЛЮБОЙ модуль возможно использовать в качестве ЦУ (меняй заливку и все). Это унификация. И различие только в программной части. В другом случае необходим ЦУ, специально для этого изготовленный, например комп, с кучей переходников USB-COM и кучей дополнительных контроллеров расширений USB. Ну, при желании можно и одним СОМ обойтись, но для этого ОПЯТЬ НЕОБХОДИМО делать лишние телодвижения, например, "раскроить" топологию с использованием детектирования адреса и переходом на спецрежим USART.
                      Цитата ЫукпШ @
                      К интернету подключен один из компов высокого уровня.

                      Цена аптайма при выходе этого компа из строя? Скорость замены? Дублирование? В случае сети Ethernet все это неважно, т.к. любой комп может легко быть подготовлен для ЦУ установкой необходимого ПО. Без необходимости даже перемещать его на штатное место... :D
                        Цитата medved_68 @
                        Цена аптайма при выходе этого компа из строя? Скорость замены? Дублирование? В случае сети Ethernet все это неважно, т.к. любой комп может легко быть подготовлен для ЦУ установкой необходимого ПО. Без необходимости даже перемещать его на штатное место... :D

                        Так я же и говорю - этот комп уже подключен к интернет
                        и ещё имеет доступ к технологической сети.
                        Цена "аптайма" зависит от общей конфигурации системы.

                        Её ты прекрасно знаешь и без меня. :)
                        В моём конкретном случае я пользуюсь купленным RadMin-ом.
                        Скорость установки на другой комп... наверно займёт минут 10.
                          Цитата medved_68 @
                          ЛЮБОЙ модуль возможно использовать в качестве ЦУ
                          я смотрю с другой стороны
                          плата имеет ограниченное ОЗУ/ПЗУ/мощность процессора - какой смысл в написания сложной управляющей программы на плате?

                          По временным затратам программиста дешевле писать софт на полноценном С++, а не урезанной версии микроконтроллера и в тоже время С++ имеет куда больше функционала уже готового и отлаженного в библиотеках.
                            Цитата orb @
                            какой смысл в написания сложной управляющей программы на плате?

                            Почему сложной? Сбор данных с модулей и выдача на HTTP/FTP это "сложная управляющая программа"? Если да, то тогда я умолкаю... :D orb, если рассмотреть мой пример выше - команду на запуск газового котла по интернет отдает не программа, а человек. Он же и устанавливает оптимальную температуру, видя полученные данные с термодатчиков. Остальное сделает автоматика, опираясь на полученные данные температуры и записав их в термометры, настроив термостаты на реакцию при превышении/понижении и т.д.О каких таких сложных управляющих программах, для которых необходимо немерянное количество ОЗУ речь? :wacko:
                            Цитата orb @
                            По временным затратам программиста дешевле писать софт на полноценном С++, а не урезанной версии микроконтроллера

                            Ну вот здесь (и ты сам понимаешь) есть поле деятельности для возражений. Только спорить о пользе молотка или кувалды мы здесь не будем. :D
                            Цитата orb @
                            и в тоже время С++ имеет куда больше функционала уже готового и отлаженного в библиотеках.

                            orb, скажем так - готовые схемы тоже имеют кучу функционала и отлаженного кода в библиотеках. Только воспроизведи правильно схему и заливай опкод. И все будет работать. Хочешь свое и обязательно в схемотехнике? Тогда ЗАБУДЬ о своих же словах насчет готового и отлаженного, но ДРУГИМИ. ;) :D
                              Цитата medved_68 @
                              Почему сложной? Сбор данных с модулей и выдача на HTTP/FTP это "сложная управляющая программа"?

                              аутентификация пользователя, потом проверка команд которые передали из интернета (защита от дурака), да и вообще обработка канала связи по HTTP/FTP. И скажем так, если у меня 30 плат, то плата должна мне хелп вывести, что это за плата что она умеет

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

                              Добавлено
                              Цитата medved_68 @
                              скажем так - готовые схемы тоже имеют кучу функционала и отлаженного кода в библиотеках
                              ты меня не понял, я немного о другом: С++ имеет кучу книг, примеров, не зависит от объема памяти, не зависит от мегагерц и тому подобное.
                              На центральном ПК я хочу обрабатывать не одну плату, а набор всех плат в купе + обработка тех же команд из интернета или личных капризов меня, когда я подошел к центральному компу и ввел данные что мне холодно и нужно поднять температуру по всему дому на +5 градусов. Может даже учитывать прогноз погоды из интернета, зайти на гисметео и скачать график температур на неделю :)
                              Тут фантазировать можно долго, но это все реализовать на центральном компьютере на порядок быстрее, проще и я никогда не упрусь в нехватку ресурсов (в реальных ситуациях).
                                Цитата orb @
                                и сделать даже полноценный сайт с картинкой расположения плат, проверкой паролей, которые кстати легко меняются, без перепрошивки микроконтроллеров, да я могу легко сделать несколько групп доступа.что бы жена только статус проверила и рыбок покормила, и себе сделать учетную запись с полными правами.

                                Ну если так - тогда я соглашусь с тобою. Но опять же - я таких доводов знаешь сколько слышал... :D Поживем - увидим, что из этого ты реализуешь на компе. :D
                                  Для множества устройств управляемых централизованно (автоматика ванной комнаты) пишу свой протокол передачи по одному проводу. Нечто подобное 1-wire, но уже свои задумки. Обработчик пишу с нуля.

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

                                  user posted image

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


                                  Рейтинг@Mail.ru
                                  [ Script execution time: 0,0471 ]   [ 14 queries used ]   [ Generated: 11.05.24, 13:48 GMT ]