LINUX.ORG.RU

Помогите с электротехникой

 


1

1

Делаю солнечную электростанцию в доме. Хочу точно считать (с красивыми графиками), сколько солнце мне «подарило». Задумано считать следующим способом:

1. Ставлю два электросчётчика, один на вход в дом, второй на выход с панелей (выходит 220V, схема подключения - grid-tie). Соответственно, снимая показатели с обоих счётчиков я могу получать потребление дома и экономию за счёт панелей.

2. Показатели снимаю с помощью Raspberry Pi, в виде импульсов, которые генерируют счётчики (по номиналу 1600 импульсов на KWh, т.е. разрешение нормальное вполне).

3. Простенькой програмкой конвертирую снятые импульсы в поток данных для InfluxDB, потом, с помощью Grafana, рисую красивые графики.

По причине полной электронеграмотности, застопорился на пункте 2 - снимать импульсы с электросчётчика. Отсих нужна помощ.

Тут (https://www.gme.cz/data/attachments/dsh.769-350.1.pdf) даташит на электросчётчик. Электроимпулсы он генерит на выходах S0+ и SO-.

Там сказано следущее (если кому лень pdf качать):

The device is equipped with an impulse output on terminals SO+ and SO-, which generates impulses proportionately according to the measured electricity. This output is used for remotely measuring electricity consumption. This impulse output is galvanically separated (by octocoupler) from internal circuits and is therefore potential-free. For correct function, it is therefore necessary to connect to the terminal SO+ supply voltage +5 VDC to 50 VDC (anode). The pulse signal can then be read on the terminal SO-. The specification is 1600 imp / kWh.

Я подключил выходы к Raspberry Pi, по схеме подключения кнопки на цифровой вход (https://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/robot/buttons_and_swi...). Но что-то оно не пашет. Подозреваю, что может быть связано с тем, что в даташите счётчика написано +5..+50V, а в RPI только 3.3. Не пашет оно странно - какое-то время работало, импульсы ловились, я даже програмно нивелировал «дребезг» контактов. А потом, через пару часов (оставил на ночь) оно тупо перешло в режим «всегда закорочено» и обратно выходить не захотело. Грешил на то, что чё-то сжёг, поменял порты и rpi - не помогло. Знакомых электронщиков под рукой нету, спросить не у кого. Верю, что упираюсь в какую-нить нелепую херню.

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

★★★★★

For correct function, it is therefore necessary to connect to the terminal SO+ supply voltage +5 VDC to 50 VDC (anode).

SO+ — это выход транзистора с открытым коллектором. Для работы ему нужно внешнее питание от +5 до +50 В. Проще всего подать на SO+ +5 В и подключить к 5-вольтовому входу (к +3 В только через делитель!).

а в RPI только 3.3 В

Можно через оптрон.

По причине полной электронеграмотности...

... можешь считать период миганий индикаторного светодиода счётчика фотодиодом, подключённым к RPi © :)

quickquest ★★★★★
()

Ты читал-то внимательно? Гальванически развязан выход, т.е. там тупо оптопара стоит, ты на нее кидаешь свои 3.3В через резистор, а она подтягивает к земле, когда появляется импульс.

Если ты напрямую забульбенил туда 3.3В с ноги, настроив ее на PP output, то стопудово спалил. Если ты туда запихнул 5В, то тоже спалил — у "малинки" нет 5v-tolerant ног.

Правда, возможно, там какое-то другое соединение с резисторами и т.п. Мне лень даташит качать и читать, сам этим занимайся.

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

В общем, для начала возьми осциллограф или логанализатор, подключи к порту счетчика 3.3В и смотри, что там на выходе. Если нормальный меандр, то ты спалил ноги "малинки", подключай к другим. Как проверить ноги, надеюсь, объяснять не надо (даже в баше это можно через sysfs интерфейс сделать).

anonymous
()
Ответ на: комментарий от anonymous

Ты читал-то внимательно? Гальванически развязан выход, т.е. там тупо оптопара стоит, ты на нее кидаешь свои 3.3В через резистор, а она подтягивает к земле, когда появляется импульс.

Дядя, это ты ща с кем говорил?..

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от quickquest

SO+ — это выход транзистора с открытым коллектором. Для работы ему нужно внешнее питание от +5 до +50 В. Проще всего подать на SO+ +5 В и подключить к 5-вольтовому входу (к +3 В только через делитель!).

Я тут нашел чё-то. Это похоже на делитель?

https://www.raspberrypi.org/forums/download/file.php?id=1619&sid=561a5794...

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от SergeySVold

В интернете полно статей по поводу задествования телеметрического выхода счётчиков. Навскидку https://geektimes.ru/post/258824/

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

Так что б конкрето была схема, с номиналами, без «подразумеваний», очень мало. Вот если я не занимался радиотехникой в детстве, мне что делать-то?..

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от quickquest

... можешь считать период миганий индикаторного светодиода счётчика фотодиодом, подключённым к RPi © :)

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

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от AngryElf

У тебя настолько все плохо? Тогда лучше найди, кто тебе это сделает.

Вообще, почитай Хоровица&Хилла: всяко не повредит, да и тупость нести не будешь.

Учитывая то, что у оптопары есть два выхода (+ и -), я так понимаю, что сделана тупо подтяжка резистором. Соответственно, берешь, втыкаешь в + напругу 3.3В с «малинки», к минусу подрубаешь ногу в floating input, да читаешь, что там приходит.

Я бы таки мелкоконтроллер заюзал: можно считать количество импульсов за 1 секунду при помощи таймера → практически аппаратно иметь значение потребляемой мощности. Настраиваешь на STM32F030 (дешевле 32-биток хрен найдешь — где-то 15-20 рубликов за мелкосхемку) два таймера: один будет считать количество импульсов, а второй (RTC) 1 раз в секунду пинать DMA для отправки счетчика в буфер, да сбрасывать первый.

На самой «малинке» как-то черезжопно это будет.

anonymous
()
Ответ на: комментарий от AngryElf

Это и есть делитель который дает 3,07в. Тебе для работы нужно 5в. Отключаешь резюк на 12кОм вот тебе и пять вольт с ограничением по току.

anonymous
()
Ответ на: комментарий от AngryElf

Так что б конкрето была схема, с номиналами

Там по ссылке о подключении телеметрического входа как раз схема с номиналом. Резистор 10кОм и +5в. Резистор ограничивает ток для оптопары.

SergeySVold ★★★★★
()

Ты мог спалить выход в своем счетчике. Завтра гляну даташит и помогу (щас с телефона сижу неудобно)

redixin ★★★★
()

Короч я тут глянул, оказывается входы у рпи по дефолту pull down. С такими входами оно с твоего счетчика ничего снять не сможет (и сжечь тоже не сможет) Нужно просто перевести порт в режим pull up. Никаких делителей не нужно, 3.3 хватит всем.

redixin ★★★★
()

А я думал тебе домашку решить надо

anonymous
()
Ответ на: комментарий от anonymous

Анон, ты, конечно, умный парень, но не совсем. Кроме напруги и сигнала надо бы ещё землю куда-то воткнуть.

it is therefore necessary to connect to the terminal SO+ supply voltage +5 VDC to 50 VDC (anode). The pulse signal can then be read on the terminal SO-.

Вообще, непонятно, то ли у них с английским плохо, то ли с логикой. Но я всё-таки верю, в то, что там тупо фототранзистор стоит и тогда действительно достаточно сигнальный, но не floating, а как правильно заметил Редискин, подтянутый к плюсу (pulled-up) вход малины подключить к SO+, а земельку - к SO-.

anonymous
()
Ответ на: комментарий от anonymous

У тебя настолько все плохо? Тогда лучше найди, кто тебе это сделает.

Чем я, собственно, и занимаюсь :)

Вообще, почитай Хоровица&Хилла: всяко не повредит, да и тупость нести не будешь.

Ага, поищу.

Учитывая то, что у оптопары есть два выхода (+ и -), я так понимаю, что сделана тупо подтяжка резистором. Соответственно, берешь, втыкаешь в + напругу 3.3В с «малинки», к минусу подрубаешь ногу в floating input, да читаешь, что там приходит.

Просто напрямую без резисторов и всего остального? Не пашет, я пробовал.

Я бы таки мелкоконтроллер заюзал: [поскипано]

Ага. Вместо 10 строк на питоне мне пойти еще и с микроконтроллером потрахаться?.. Спасибо, добрый человек :)

На самой «малинке» как-то черезжопно это будет.

Мне надо что б работало с минимумом усилий.

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от redixin

Короч я тут глянул, оказывается входы у рпи по дефолту pull down. С такими входами оно с твоего счетчика ничего снять не сможет (и сжечь тоже не сможет) Нужно просто перевести порт в режим pull up. Никаких делителей не нужно, 3.3 хватит всем.

Вот не хватало ему чего-то, что б взлететь. С pull down/up я игрался, не помогало. Буду пробовать схему с делителем сделать.

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от AngryElf

Учитывая то, что у оптопары есть два выхода (+ и -), я так понимаю, что сделана тупо подтяжка резистором. Соответственно, берешь, втыкаешь в + напругу 3.3В с «малинки», к минусу подрубаешь ногу в floating input, да читаешь, что там приходит.

А, не так прочитал. 3.3V с малинки на S0+ я не пробовал подать. Или пробовал и забыл... Попробую, в общем.

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от AngryElf

Если пробовал то скорее всего убил выход. Попробуй его прозвонить мультиметром — он должен быть какбы закрыт в обе стороны.

redixin ★★★★
()
Последнее исправление: redixin (всего исправлений: 1)
Ответ на: комментарий от anonymous

Анон, ты, конечно, умный парень, но не совсем

Но уж точно умнее тебя. SO+- это просто выводы фотодиода оптопары - анод и катод, который открывается от засвечивания светодиодом оптопары. Английским языком написано - подавай на + напряжение и лови на - импульсы. Лучше кончено через резистор, т.к. хз какой там у малины вход и какой будет ток.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 2)
Ответ на: комментарий от AngryElf

Вот я тебе даже картинку нацарапал

http://i.imgur.com/HoM43Dv.png

В режиме pull-up малина этот резистор подключает между +3.3 и входом у себя внутри.

Таким образом у тебя всегда будет логическая 1 на входе кроме тех моментов когда загорается импульс. Режим pull-up нужен как раз для таких случаев как у тебя.

И да, представь что будет с выходом если туда непосредственно подать +5 (3.3 тоже достаточно чтобы сгореть, и много тока для этого тоже не нужно)

redixin ★★★★
()
Ответ на: комментарий от anonymous

Вообще, непонятно, то ли у них с английским плохо, то ли с логикой.

Судя по опечатке (octocoupler) — с английским.

redixin ★★★★
()
Ответ на: комментарий от no-such-file

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

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

anonymous
()
Ответ на: комментарий от anonymous

А вот если подтянуть вход малины к земле, либо сделать так, как на картинке у redixin, то сработает

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

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

сжёг оптопару

Не мог от этого сделать.

или вход

А вот это — вероятней всего, т.к. у «малинки» даже сравнительно кратковременная подача +5В на ногу способна эту ногу убить нафиг.

Но мы этого не узнаем, пока ТС не проверит ноги хотя бы с помощью интерфейса sysfs, о чем я уже говорил: подаем сначала на подозрительные ноги +3.3В (желательно через резистор килоом на 10 — мало ли, вдруг какой-то остался настроенным на выход). Смотрим уровни. Потом так же через резистор кидаем их на землю.

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

anonymous
()
Ответ на: комментарий от anonymous

Доберусь и всё попробую. Извиняюсь, что медленно :(

Спасибо всем участникам.

Умную книжку уже заказал. Самому стыдно, что не понимаю вообще нихрена. Но не учили, блин...

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от AngryElf

Но не учили, блин...

Тоже мне, отмазка!

Учиться самому надо, иначе нихрена знать не будешь.

Думаешь, меня электронике учили или погромированию? Нет, меня учили физике и астрофизике. А в итоге я к астрофизике имею отношение практически никакое. Разве что технические наблюдения провожу и всякую статистику по телескопу веду. В основном же совсем другими делами занимаюсь: разработка аппаратуры, погромирование мелкоконтроллеров, разработка методов обработки данных и т.п.

anonymous
()
Ответ на: комментарий от anonymous

Учиться самому надо, иначе нихрена знать не будешь.

[поскипано]

Да я в курсе, спасибо :)

Я с детства чё-то кручу и развинчиваю. Само собой, что сам всему научился. Но если в электричестве еще можно просто глядя на провода понять суть, то в электронике - хер с два. Закон Ома-то я знаю, но вот всё что от транзистора и дальше - сам ну никак, уж прости. Книжку открываешь - она писана с рассчётом, что рядом есть гуру, который всё объяснит. Гуры у меня не было, сам всё крутил. В радиокружок попасть можно было только по блату. Купить радиодетали - 2 часа электричкой ехать. Купить нормальную книжку - см. предыдущую отмазку.

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

В универе азы пролетели мимо. Колебательные контуры считать - научили. С них перешли на цифровые схемы. Между ними курс потерялся куда-то...

Ща вот в фотовольтаику подался... Панель купиль, инвертор купиль, распберри купиль, электротехника - не купиль...

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от AngryElf

электротехника - не купиль...

А электротехника тебе и не нужна. Хилл&Хоровиц достаточно в данном вопросе. Учти что от 3.3 вольта твой счетчик импульсы давать не будет. У тебя там четко написано от 5 до 50 вольт оптопара в счетчике работает при 40mA.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.