Подумал о дешёвой двухпроводной шине для мелкой автоматизации на больших расстояниях.

Придумал простую схему, для передачи данных дёргать двумя GPIO через транзисторные ключи подключенные к высокочастотному трансформатору и таким образом генерировать импульсы с различной частотой. А для приёма данных, подсчитывать число принятых фотодиодом импульсов от светодиода подключенного к шине.

Но возникает проблема. Если кабель неизвестного качества и расстояния неизвестные. И число устройство подключенных на одну шину неизвестно, то для максимально надёжной передачи, нужно напряжение повыше. Но, в сети ведь есть падение напряжения и поэтому непонятно какое конкретно придёт на светодиод, 3 вольта или 50 вольт. Например от одного передатчика придёт 7 вольт, а от другого 40 вольт. А ещё в случае коллизии они могут наложится. А приёмник должен не выйти из строя. А в идеале нужно учесть и всякие проблемы со статическими потенциалами. Я конечно разбираюсь слабо, но что то мне подсказывает что в таких условиях светодиод долго не прослужит.

Нужна какая то простая схема, которая частоту переменного тока частотой несколько килогерц (от 0,3 до 5) и широкого диапазона напряжений, от 3 до 110 вольт преобразует в аналогичное количество открытий полевого транзистора на входном GPIO.

Примечание: Про схему шины с коротким замыканием двух жил знаю, но хочу сделать нечто более универсальное и в теории не требующие запитывания самой шины когда данные не передаются. А ещё что бы через фильтры, поток данных можно было загнать и в сеть переменного тока.

  • JamesHolden
    link
    fedilink
    arrow-up
    0
    ·
    4 years ago

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

    Я бы в ответ такому соседу залил 10 кВ в сеть, а чо такого, может мне нужно для умного дома.

    Ничего личного.

    • rezedent12OP
      link
      fedilink
      arrow-up
      0
      ·
      4 years ago

      Всего то фильтр на кабель установить и эти помехи не пройдут дальше. Это нужно предложить соседу.

      powerline Кстати, а как ты относишься к powerline? Это такая технология для локальной сети.

      • JamesHolden
        link
        fedilink
        arrow-up
        0
        ·
        4 years ago

        Крайне отрицательно. Ничем это не фильтруется, потому что излучается проводами в виде поля, и прием сигналов в доме становится невозможен.

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

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

        Вот ты лично и должен обеспечить чистоту сети. Но ты это технически не сделаешь в своей системе.

        Ты можешь поставить фильтры, чтобы за пределы твоей квартиры это не перло. Но это все равно на 100% проблему не решает, потому что есть поле, а стены то общие.

      • JamesHolden
        link
        fedilink
        arrow-up
        0
        ·
        4 years ago

        И фильтры - это не волшебные палочки, которые раз и убрали помехи. Они их только ослабляют.

        Гораздо лучше не заниматься фигней и вообще не создавать помех.

        Я считаю что ты на спичках экономишь. Дорого wifi делать - ну купи платки копеечные на 433 МГц и через них управляй.

        • torvn77
          link
          fedilink
          arrow-up
          0
          ·
          4 years ago

          Гораздо лучше не заниматься фигней и вообще не создавать помех.

          Имхо если rezedent12 не сделает что-то не то, то созданное им загрязнение будет ничтожной мощности и если у соседей будет необходимость ставить фильтр то явно не из-за него.
          К стати по этому фильтр лучше по любому поставить, и соседям, и rezedent12.

          Я считаю что ты на спичках экономишь. Дорого wifi делать - ну купи платки копеечные на 433 МГц и через них управляй.

          Вот тут согласен, хотя rezedent12 пока не сказал что именно он пытается сделать.

          • JamesHolden
            link
            fedilink
            arrow-up
            0
            ·
            4 years ago

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

            • torvn77
              link
              fedilink
              arrow-up
              0
              ·
              4 years ago

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

              • JamesHolden
                link
                fedilink
                arrow-up
                0
                ·
                4 years ago

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

                • torvn77
                  link
                  fedilink
                  arrow-up
                  0
                  ·
                  4 years ago

                  Ну в принципе индуктивный фильтр от стиральной машины и пусковой конденсатор на 0.47мкф огромных размеров должен в дрстаточной мере очистить сеть.

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

                  • JamesHolden
                    link
                    fedilink
                    arrow-up
                    0
                    ·
                    4 years ago

                    чтобы через него проходил некий минимальный фильтруемый ток

                    Естественно, фильтр то должен быть нагружен. Об этом часто забывают, а потом опа - и помехи.

                • rezedent12OP
                  link
                  fedilink
                  arrow-up
                  0
                  ·
                  4 years ago

                  Планируется частота от 0,3 до 5 килогерц - это диапазон слышимого звука. Схема шипения простая, около 1 килогерца - условный ноль, около 5 килогерц - условная единица, 3 килогерца - разграничитель пакетов. Штатно планируется использовать телефонный кабель.

                  Основная проблема в том, что от разных устройств до разных устройств эти сигналы теоретически могут доходить с амплитудой от условных 3 вольт, до 110 вольт. Нужно считать сколько раз в миллисекунду (или микросекунду, не определился ещё) происходят колебания от -U V до +U V. Где U - напряжение (амплитуда) сигнала.

                  • JamesHolden
                    link
                    fedilink
                    arrow-up
                    0
                    ·
                    4 years ago

                    Можешь попробовать так. Сначала по проблеме, как принять от 110 вольт до 3 вольт.

                    Вариант: сигнал пропускаешь через резистор последовательно, после резистора - диод выпрямительный (или даже 1n4148), на GND (параллельно). Диод надо повернуть так, чтобы сигналом он открывался.

                    Такая цепочка обрежет любое напряжение до уровня около 0.6 вольт - напряжение отпирания диода. Если 0.6 вольт мало - включи два диода последовательно, 1.2 вольта точно будут восприняты как логическая единица.

                    Это обрежет +U. Если у тебя еще минусовые -U высокого напряжения, тогда надо ставить параллельно этим диодам, такие же но в обратную сторону.

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

                    То есть каждый пришедший импульс увеличит на 1 число в регистре таймера. Потом просто читаешь это число, обрабатываешь, записываешь в регистр 0 и ждешь дальше, пока придут новые импульсы.

                    Время счета - миллисекунда как ты хочешь, тогда надо отсчитывать вторым таймером.

                    Практически у любых микроконтроллеров несколько аппаратных таймеров имеется.

                    • rezedent12OP
                      link
                      fedilink
                      arrow-up
                      0
                      ·
                      4 years ago

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

                      Это обрежет +U. Если у тебя еще минусовые -U высокого напряжения, тогда надо ставить параллельно этим диодам, такие же но в обратную сторону.

                      Хрен с ними. Главное число колебаний посчитать. Синусоида нужна скорее как стандарт на потенциальное великое будущее стандарта если они будет принят какими то производителями.

                      Подумывал о ограничителе на полевом транзисторе.

                      • torvn77
                        link
                        fedilink
                        arrow-up
                        0
                        ·
                        4 years ago

                        Резистор какой величины сопротивления выбрать?

                        Не менее 100 ком, а лучше разика в три побольше.

                        • JamesHolden
                          link
                          fedilink
                          arrow-up
                          0
                          ·
                          4 years ago

                          Не, смотря какой диод. Я думаю, больше не стоит.

                          • torvn77
                            link
                            fedilink
                            arrow-up
                            0
                            ·
                            4 years ago

                            Но и меньше тоже не стоит.

                            Вообще можно взять переменный резистор на 500 ком и подобрать верхний лимит, ну естественно нижний лимит лучше сделать постоянным резистором ком на 100 или 150.

                      • JamesHolden
                        link
                        fedilink
                        arrow-up
                        0
                        ·
                        4 years ago

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

                        С оптопарой да, наверное не получится. Потому что там надо не просто обрезать, а чтобы еще и диод зажегся.

                        А если просто диодом обрезать и на ножку - должно получиться. Сейчас на модели попробую.

                          • torvn77
                            link
                            fedilink
                            arrow-up
                            0
                            ·
                            4 years ago

                            Как минимум у тебя нет фильтра для вырезания доминирующего над всем тона 50 гц.

                            • rezedent12OP
                              link
                              fedilink
                              arrow-up
                              0
                              ·
                              4 years ago

                              Как минимум у тебя нет фильтра для вырезания доминирующего над всем тона 50 гц.

                              И он имеет значение при разбросе логических уровней в килогерцы?

                              • torvn77
                                link
                                fedilink
                                arrow-up
                                0
                                ·
                                4 years ago

                                Конечно имеет, без отфильтрации у тебя будут большие периоды засветки (или отсечения, я не понимаю что делает биполярный транзистор в твоей схеме)

                                • rezedent12OP
                                  link
                                  fedilink
                                  arrow-up
                                  0
                                  ·
                                  4 years ago

                                  Ток ограничивает, хотя как JamesHolden подсказал, он не нужен судя по всему.

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

                              • JamesHolden
                                link
                                fedilink
                                arrow-up
                                0
                                ·
                                4 years ago

                                И он имеет значение при разбросе логических уровней в килогерцы?

                                Да, в данном случае как верно заметил @torvn77, у тебя сетевой синус амплитудой 311 вольт просто сам по себе будет на 10 миллисекунд включать светодиод, и поверх него твои импульсы уже влиять не будут.

                                • rezedent12OP
                                  link
                                  fedilink
                                  arrow-up
                                  0
                                  ·
                                  4 years ago

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

                                  • JamesHolden
                                    link
                                    fedilink
                                    arrow-up
                                    0
                                    ·
                                    4 years ago

                                    Как то все слишком абстрактно.

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

                                    • rezedent12OP
                                      link
                                      fedilink
                                      arrow-up
                                      0
                                      ·
                                      4 years ago

                                      Создать простой открытый аппаратный стандарт и сделать фреймоворк для написания систем умного дома на произвольных языках программирования. Конечные исполняющие устройства должны быть очень дешёвые, то есть не должна каждая лампочка уметь ходить в интернет. А вся сложная логика должна быть на центральном узле сравнительно высокой вычислительной мощности, типа raspberry pi.

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

                                      Это как USB, который имеет успех, потому что в самом начале позволял создавать максимально дешёвые устройства.

                                      • torvn77
                                        link
                                        fedilink
                                        arrow-up
                                        0
                                        ·
                                        4 years ago

                                        фреймоворк для написания систем умного дома на произвольных языках программирования.

                                        Тебе лучше избегать этих названий, потому как по закону ты ОБЯЗАН сделать так, чтобы твоя система управлялась исключительно только через внешний сайт с обязательной регистрацией и индентификацией пользователей, о чём можешь прочитать годовалую новость на опеннете.

                                          • torvn77
                                            link
                                            fedilink
                                            arrow-up
                                            0
                                            ·
                                            4 years ago

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

                                            • JamesHolden
                                              link
                                              fedilink
                                              arrow-up
                                              0
                                              ·
                                              4 years ago

                                              Я вообще не понимаю какой идиот придумал умный дом изначально через облако пускать.

                                              • torvn77
                                                link
                                                fedilink
                                                arrow-up
                                                0
                                                ·
                                                4 years ago

                                                Ну с точки зрения государства это не идеотизм так как позволяет собирать информацию о гражданах

                                        • torvn77
                                          link
                                          fedilink
                                          arrow-up
                                          0
                                          ·
                                          edit-2
                                          4 years ago

                                          Чтоб не быть совсем голословным поискал, на опенете ничего не находится, из всей сети нашлось два упоминания, одно из которых ссылается на другое:
                                          Ссылка: https://www.kommersant.ru/doc/3924324

                                          Правоохранительные органы должны иметь возможность доступа к информации, хранящейся в системах интернета вещей, для оперативно-разыскной деятельности, следует из проекта концепции построения и развития сетей интернета вещей (есть у “Ъ”), подготовленной Минкомсвязью и Минтрансом. Для этого к сетям IoT должны быть подключены системы средств оперативно-разыскных мероприятий (СОРМ) и внесены изменения в закон «О связи».

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

                                          В целом может там и нет таких драконовских мер как я написал, но имхо если ТС будет продавать свои устройства как средства IoT то ему следует изучить законы ну или как минимум не давать устройству таких названий.

                                          Ещё материал: https://polit.ru/article/2019/03/27/IoT/

                                          • rezedent12OP
                                            link
                                            fedilink
                                            arrow-up
                                            0
                                            ·
                                            4 years ago

                                            в системах интернета вещей

                                            “Интернет вещей” - это когда вещи являются устройствами подключающимися к интернету. Когда они имеют свои IP адреса.

                                      • TheAnonymous
                                        link
                                        fedilink
                                        arrow-up
                                        0
                                        ·
                                        4 years ago

                                        Открытые стандарты для умного дома уже есть, 1-wire например, вот только оно похоже никому не нужно. Это как со смердфонами, 99% молча жрут зонды от эпла или гугла+вендора, ну и что, что барен лазит по твоему устройству, собирает телеметрию и в любой момент может его выключить, никому до этого нет дела. Так же и с иот, 99% просто купят вумный дилдак “ксеноми” и не будут заморачиваться с твоим raspberry pi

                                        • torvn77
                                          link
                                          fedilink
                                          arrow-up
                                          0
                                          ·
                                          4 years ago

                                          Открытые стандарты для умного дома уже есть, 1-wire например, вот только оно похоже никому не нужно.

                                          Тут надо смотреть на то, насколько сложно эти стандарты использовать неподготовленному по it человеку.
                                          Если надо самому компиоять и набивать код то они конечно будут слишком сложны.
                                          А если будет как LinuxCNC net net и ЧПУ с кастомной топологией готово то может стать и популярным.

                                        • rezedent12OP
                                          link
                                          fedilink
                                          arrow-up
                                          0
                                          ·
                                          4 years ago

                                          Технически для масового потребителя это должно выглядеть приблизительно так:

                                          Человек покупает всякие выключатели и датчики, которые стоят лишь на 50 или 100 рублей дороже таких же обычных. Устанавливает их. Цепляет к ним телефонный кабель или специальные беспроводные модули (если неудобно сигнальный провод тянуть). Подключает к шине главное устройство на базе raspberry pi и специальным приложением для смартфона через bluetooth вводит настройки сети и получает IP адрес WEB-интерфейса. (Ну или записав параметры в специальный файл на флешке)

                                          Перейдя по адресу настраивает доступ и выбирает для установки конкретную систему управления. Зайдя в систему управления, уже в её настройках определяет какое устройство где находится и в её рамках настраивает всё остальное. Соответственно эти системы смогут быть как собственными скриптами на bash, платным ПО с свистопердельным интерфейсом. Или же вообще нейросетями запоминающими привычки пользователей.

                                          Основные задачи:

                                          Что бы каждый производитель мог приклеив к своим выключателям электромагнит и простую электронную схему - производить такие устройства. Естественно базовые шаблоны прошивки дешёвых чипов с протоколами обмена должны быть в открытом доступе.

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

                                          Основная проблема сегодняшних систем умного дома, в том что аппаратное обеспечение и система автоматизации не разделены.

                          • JamesHolden
                            link
                            fedilink
                            arrow-up
                            0
                            ·
                            4 years ago

                            Затвор с истоком соединить? У тебя же транзистор просто вообще не откроется.

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

                            • rezedent12OP
                              link
                              fedilink
                              arrow-up
                              0
                              ·
                              4 years ago

                              Нашёл в интернете схему “ограничителя напряжения”.

                              • JamesHolden
                                link
                                fedilink
                                arrow-up
                                0
                                ·
                                4 years ago

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

                                То есть тебе нужна схема “источник тока на транзисторе”.

                                То, что ты нарисовал - это похоже на источник тока на JFET транзисторе. Но у тебя MOSFET транзистор, и JFET для таких параметров ты не найдешь (а MOSFET легко).

                                Отличаются тем, что JFET в такой схеме откроется и ограничит ток, а MOSFET вообще будет полностью закрыт.

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

                                https://askentire.net/q/zapros-na-rassmotrenie-istochnika-toka-ogranichitelya-toka-mosfet-141973399750

                                • torvn77
                                  link
                                  fedilink
                                  arrow-up
                                  0
                                  ·
                                  4 years ago

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

                                  И главное сдаётся мне что в тех схемах предполагается что источник напряжения даёт ровное и чистое напряжение, а не целую или полупериод синусойды.

                                  • JamesHolden
                                    link
                                    fedilink
                                    arrow-up
                                    0
                                    ·
                                    4 years ago

                                    Да, конечно. С синусом надо думать как делать.

                      • JamesHolden
                        link
                        fedilink
                        arrow-up
                        0
                        ·
                        4 years ago

                        Короче, просчитал схему где резистор, потом два диода 1n4148 последовательно на GND.

                        C резистором 10k:

                        3 вольта на входе, 1.16 вольт на выходе.

                        110 вольт на входе - 1.51 вольт на выходе.

                        И даже - 1000 вольт на входе - 1.71 вольт на выходе, ток диода 100 мА (а у него длительный допустимый 200 мА).

                        То есть даже 10k резистор удовлетворяет. Если ток, потребляемый диодом при 110 вольтах (10 мА) это много для тебя - то тогда можно как @torvn77 говорит ставить 100k, с ним почти то же, только чуть ниже напряжение на выходе.

                        • torvn77
                          link
                          fedilink
                          arrow-up
                          0
                          ·
                          4 years ago

                          Но вообще помимо ограничивающих резисторов и диодов надо бы поставить ращделительный трансформатор чтобы не думать о совмещении GND контроллера и сети.

                        • rezedent12OP
                          link
                          fedilink
                          arrow-up
                          0
                          ·
                          4 years ago

                          Если ток, потребляемый диодом при 110 вольтах (10 мА) это много для тебя

                          Сам ток меня не в плане энергопотребления волнует, а в плане того что бы светодиод не сгорел.

                          Если всё действительно так просто, то спасибо.

                          • JamesHolden
                            link
                            fedilink
                            arrow-up
                            0
                            ·
                            4 years ago

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

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

                            • rezedent12OP
                              link
                              fedilink
                              arrow-up
                              0
                              ·
                              4 years ago

                              Посоветуй как правильно гальванически развязать? ВЧ трансформатор выдранный из старого ethernet контроллера подойдёт?

                              • torvn77
                                link
                                fedilink
                                arrow-up
                                0
                                ·
                                4 years ago

                                Сомневаюсь.
                                Отталкивайся от трансформаторов в диалаповских модемах.

                                Вообще тебе не обязательно разделять трансформатором, можно разделить и двумя конденсаторами на 500V и выше.

                              • JamesHolden
                                link
                                fedilink
                                arrow-up
                                0
                                ·
                                4 years ago

                                Лучше уж через оптрон думать, но 50 Гц надо давить. Я сейчас на работу, чуть позже подумаю получше, может что подскажу.

                  • torvn77
                    link
                    fedilink
                    arrow-up
                    0
                    ·
                    4 years ago

                    Планируется частота от 0,3 до 5 килогерц - это диапазон слышимого звука.

                    Во первых я не думаю что ты будешь кодировать методом расширения спектра, по этому не шипение, а гудение.

                    Во вторых ты подключи активные колонки или усилок к сети как я тут сказал и послушай что там творится в диапазоне "от 0,3 до 5 килогерц"

              • rezedent12OP
                link
                fedilink
                arrow-up
                0
                ·
                4 years ago

                Ты передавал аналоговый сигнал.