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

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

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

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

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

  • 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 Гц надо давить. Я сейчас на работу, чуть позже подумаю получше, может что подскажу.