Арендная квартира: MegaD, Home Assistant, датчик шума и приборы учета

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 15 авг 2016, 11:51

d.v.ermakov писал(а):http://easyelectronics.ru/osnovy-na-palcax-chast-2.html
Почему-то вспоминается Конфуций и три угла квадрата.
Век живи - век учись все ровно дураком помрешь :) Для многих здесь я уверен это само собой разумеющееся, но с этим обычно никогда не сталкиваюсь.

Спасибо!

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение OlegJktu84 » 15 авг 2016, 12:16

empenoso спасибо за вопросы.
d.v.ermakov спасибо за ответы.
empenoso - победите на практике, плиз распишите. И фото. Фото у вас классные.
PS Считаю неделю, чтобы услышать от вас подтверждение, что openhab победили и счетчик переводит правильно. Удачи!

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 15 авг 2016, 13:53

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

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 15 авг 2016, 14:15

OlegJktu84 писал(а):empenoso спасибо за вопросы.
d.v.ermakov спасибо за ответы.
empenoso - победите на практике, плиз распишите. И фото. Фото у вас классные.
PS Считаю неделю, чтобы услышать от вас подтверждение, что openhab победили и счетчик переводит правильно. Удачи!
Показания приходят исправно, в меге:
P6/OFF/18552

уже 18 т. натикало, но вот правила молчат что-то.

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 15 авг 2016, 14:33

Что имею:

default.items

Код: Выделить всё

Switch 	P6_EnergyPulse			"Э/э Меркурий 201.5 (P6) [MAP(en.map):%s]"						{megadevice="sec:192.168.88.72:6"}
Number   CountElecImp    	 	 "Э/э Меркурий 201.5 - импульсы (3200 - 1 кВт*ч)"
Number   CountElecKWh     		 "Э/э Меркурий 201.5 - кВт*ч"
default.rules

Код: Выделить всё

//Начальная настройка переменных 
rule "System started Counters"
when
   System started
then
   postUpdate(CountElecKWh, 9)
   postUpdate(CountElecImp, 0)
   postUpdate(CountWaterM3Cold, 0.003)
   postUpdate(CountWaterM3Hot, 0.003)       
end

import org.openhab.core.library.types.*
import org.openhab.core.persistence.*
import org.openhab.model.script.actions.*
import java.lang.Math
import java.util.Calendar
import java.util.Date
import java.util.TimeZone
import java.text.SimpleDateFormat
import org.eclipse.smarthome.model.script //для логов http://docs.openhab.org/administration/logging.html#looking-at-the-log

/* =============================================================================================================== */

//подсчет импульсов эл. счетчика
rule "InputImp ON"
when
   Item P6_EnergyPulse received update //changed to ON
then
   var Number Imp = CountElecImp.state as DecimalType
   Imp = Imp +1
   postUpdate(CountElecImp, Imp)
   logInfo("CountElecImp = ", Imp)
   logDebug("Demo","This is a log entry of type Debug!")
end

//эл. счетчик - показания
rule "CountElecKWh +1"
when
   Item CountElecImp changed
then
   var Number Imp = CountElecImp.state as DecimalType
   var Number KWh = CountElecKWh.state as DecimalType
   if ( Imp = 3200 )   {
      Imp = 0
      KWh = KWh +1 }
      postUpdate(CountElecImp, Imp)
      postUpdate(CountElecKWh, KWh)
   }
end
В логах причем нет вывода из правил logInfo.

UPD: Счетчик стал увеличиваться, но ругается на что-то:

Код: Выделить всё

Aug 15 15:43:16 raspberrypi start.sh[1644]: 2016-08-15 15:43:16.351 [INFO ] [runtime.busevents             ] - CountElecImp state updated to 7
Aug 15 15:43:16 raspberrypi start.sh[1644]: 2016-08-15 15:43:16.488 [ERROR] [o.o.c.s.ScriptExecutionThread ] - Error during the execution of rule 'InputImp ON': Could not invoke met       hod: org.openhab.model.script.actions.LogAction.logInfo(java.lang.String,java.lang.String,java.lang.Object[]) on instance: null
Aug 15 15:43:17 raspberrypi start.sh[1644]: 2016-08-15 15:43:17.387 [INFO ] [runtime.busevents             ] - NoiseEbay_dB state updated to 2.37832031
Aug 15 15:43:20 raspberrypi start.sh[1644]: 2016-08-15 15:43:20.804 [INFO ] [runtime.busevents             ] - P6_EnergyPulse state updated to ON
Aug 15 15:43:21 raspberrypi start.sh[1644]: 2016-08-15 15:43:21.019 [INFO ] [runtime.busevents             ] - P6_EnergyPulse state updated to ON
Aug 15 15:43:21 raspberrypi start.sh[1644]: 2016-08-15 15:43:21.884 [INFO ] [runtime.busevents             ] - P6_EnergyPulse state updated to ON
Aug 15 15:43:22 raspberrypi start.sh[1644]: 2016-08-15 15:43:22.228 [INFO ] [runtime.busevents             ] - CountElecImp state updated to 8
Aug 15 15:43:22 raspberrypi start.sh[1644]: 2016-08-15 15:43:22.383 [ERROR] [o.o.c.s.ScriptExecutionThread ] - Error during the execution of rule 'InputImp ON': Could not invoke met       hod: org.openhab.model.script.actions.LogAction.logInfo(java.lang.String,java.lang.String,java.lang.Object[]) on instance: null
Aug 15 15:43:22 raspberrypi start.sh[1644]: 2016-08-15 15:43:22.617 [ERROR] [o.o.c.s.ScriptExecutionThread ] - Error during the execution of rule 'InputImp ON': Could not invoke met       hod: org.openhab.model.script.actions.LogAction.logInfo(java.lang.String,java.lang.String,java.lang.Object[]) on instance: null
Aug 15 15:43:22 raspberrypi start.sh[1644]: 2016-08-15 15:43:22.805 [INFO ] [runtime.busevents             ] - CountElecImp state updated to 8
Aug 15 15:43:23 raspberrypi start.sh[1644]: 2016-08-15 15:43:23.526 [INFO ] [runtime.busevents             ] - CountElecImp state updated to 9
Aug 15 15:43:23 raspberrypi start.sh[1644]: 2016-08-15 15:43:23.658 [ERROR] [o.o.c.s.ScriptExecutionThread ] - Error during the execution of rule 'InputImp ON': Could not invoke met       hod: org.openhab.model.script.actions.LogAction.logInfo(java.lang.String,java.lang.String,java.lang.Object[]) on instance: null
Aug 15 15:43:26 raspberrypi start.sh[1644]: 2016-08-15 15:43:26.555 [INFO ] [runtime.busevents             ] - dateTime state updated to Monday, 15.08.2016, 15:42
Aug 15 15:43:28 raspberrypi start.sh[1644]: 2016-08-15 15:43:28.655 [INFO ] [runtime.busevents             ] - P6_EnergyPulse state updated to ON
Aug 15 15:43:29 raspberrypi start.sh[1644]: 2016-08-15 15:43:29.465 [INFO ] [runtime.busevents             ] - CountElecImp state updated to 10
Aug 15 15:43:29 raspberrypi start.sh[1644]: 2016-08-15 15:43:29.577 [ERROR] [o.o.c.s.ScriptExecutionThread ] - Error during the execution of rule 'InputImp ON': Could not invoke met       hod: org.openhab.model.script.actions.LogAction.logInfo(java.lang.String,java.lang.String,java.lang.Object[]) on instance: null
Aug 15 15:43:29 raspberrypi start.sh[1644]: 2016-08-15 15:43:29.849 [INFO ] [runtime.busevents             ] - P6_EnergyPulse state updated to ON
Aug 15 15:43:31 raspberrypi start.sh[1644]: 2016-08-15 15:43:30.992 [INFO ] [runtime.busevents             ] - CountElecImp state updated to 11
Aug 15 15:43:31 raspberrypi start.sh[1644]: 2016-08-15 15:43:31.137 [ERROR] [o.o.c.s.ScriptExecutionThread ] - Error during the execution of rule 'InputImp ON': Could not invoke met       hod: org.openhab.model.script.actions.LogAction.logInfo(java.lang.String,java.lang.String,java.lang.Object[]) on instance: null
Aug 15 15:43:35 raspberrypi start.sh[1644]: 2016-08-15 15:43:35.014 [INFO ] [runtime.busevents             ] - P1_NoiseEbay state updated to 749
^Z
[2]+  Stopped                 sudo journalctl -f -u openhab.service

Есть похожая, но всё же другая ситуация https://community.openhab.org/t/calcula ... -w/2222/20.

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 15 авг 2016, 18:39

Что-то стало вырисовываться, но за достоверность не ручаюсь :shock:

Код: Выделить всё

Switch 	P6_EnergyPulse			"Э/э Меркурий 201.5 (P6) [MAP(en.map):%s]"						{megadevice="sec:192.168.88.72:6"}
Switch P10_WaterPulse_cold		"Холодная, счетчик (Valtec VLF-R-IL) (P10) [MAP(en.map):%s]"	{megadevice="sec:192.168.88.72:10:3600"}
Switch P11_WaterPulse_hot		"Горячая, счетчик (Valtec VLF-R-IL) (P11) [MAP(en.map):%s]"		{megadevice="sec:192.168.88.72:11:3600"}
Number   CountElecImp    	 	 "Э/э Меркурий 201.5 - импульсы (3200/кВт*ч) [%s]"					
Number   CountElecKWh     		 "Э/э Меркурий 201.5 - кВт*ч [%.1f]"
Number   CountWaterM3Cold    	 "Вода Valtec VLF-R-IL холодная - м куб. [%.3f]"
Number 	 CountWaterM3Hot     	 "Вода Valtec VLF-R-IL горячая - м куб. [%.3f]"

Код: Выделить всё

/*
// Начальная настройка переменных 
rule "System started Counters"
when
   System started
then
   postUpdate(CountElecKWh, 15.2)
   postUpdate(CountElecImp, 0)
   postUpdate(CountWaterM3Cold, 0.631)
   postUpdate(CountWaterM3Hot, 0.178)       
end
*/

/* =============================================================================================================== */ 

import org.openhab.core.library.types.*
import org.openhab.core.persistence.*
import org.openhab.model.script.actions.*
import java.lang.Math
import java.util.Calendar
import java.util.Date
import java.util.TimeZone
import java.text.SimpleDateFormat
import org.joda.time.*  //для примера импульсов
import org.eclipse.smarthome.model.script //для логов http://docs.openhab.org/administration/logging.html#looking-at-the-log


/* =============================================================================================================== */ 

//подсчет импульсов эл. счетчика
rule "InputImp ON"
when
   Item P6_EnergyPulse changed to ON
then
   var Number Imp = CountElecImp.state as DecimalType
   Imp = Imp + 1
   postUpdate(CountElecImp, Imp)
   //logDebug("CountElecImp", " = ", CountElecImp.state)
end

//эл. счетчик - показания
rule "CountElecKWh +1"
when
   Item CountElecImp changed
then
   var Number Imp = CountElecImp.state as DecimalType
   var Number KWh = CountElecKWh.state as DecimalType
   if ( Imp == 3200 )	{
    Imp = 0
    KWh = KWh + 1 
	postUpdate(CountElecImp, Imp)
    postUpdate(CountElecKWh, KWh)
	}
end

/* =============================================================================================================== */

//подсчет показаний хол. воды
rule "CountWaterImpCold ON"
when
   Item P10_WaterPulse_cold changed to ON
then
   postUpdate(CountWaterM3Cold, (Imp + 0.01).doubleValue)
end

//подсчет показаний гор. воды
rule "CountWaterImpHot ON"
when
   Item P11_WaterPulse_hot changed to ON
then
   postUpdate(CountWaterM3Hot, (Imp + 0.01).doubleValue)
end
P.S. Почему-то счетчик порта меги резко не совпадает с счетчиком openhab.

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение OlegJktu84 » 15 авг 2016, 19:33

Я извиняюсь. Может не в тему. Не понимаю это относится к вашему счетчику или нет.
"2016-06-11 16:19:51 | Andrey_B
m=2 - это признак длительного удержания. Начиная с прошивки 3.42 устройство аппаратно может фиксировать длительное нажатие в режиме P&R. Если вам эта информация не нужна, просто на сервере игнорируйте запросы, где этот параметр равен "2".
Длительное нажатие m=2 значительно упрощает реализацию кода на сервере там, где требуется такая обработка.


2016-06-11 10:14:26 | Ivan
Подскажите, вход настроен как P&R, на входе висит датчик напряжения. При включении происходит двойное событие с увеличением CNT на порту, причем второе событие помечается признаком режима m=2, переход из замкнутого в разомкнутое состояние для режима R:
192.168.1.14 - - [10/Jun/2016:11:44:23 +0300] "GET /megad14.php?pt=5&cnt=16&mdid=14 HTTP/1.1" 200 147 "-" "megad"
192.168.1.14 - - [10/Jun/2016:11:44:24 +0300] "GET /megad14.php?pt=5&m=2&cnt=17&mdid=14 HTTP/1.1" 200 147 "-" "megad"
192.168.1.14 - - [10/Jun/2016:12:43:35 +0300] "GET /megad14.php?pt=5&m=1&cnt=18&mdid=14 HTTP/1.1" 200 147 "-" "megad"
и так по всем IN портам.
Это у меня одного так или я что-то делаю не так?"

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 15 авг 2016, 22:04

OlegJktu84 писал(а): 192.168.1.14 - - [10/Jun/2016:11:44:23 +0300] "GET /megad14.php?pt=5&cnt=16&mdid=14 HTTP/1.1" 200 147 "-" "megad"
192.168.1.14 - - [10/Jun/2016:11:44:24 +0300] "GET /megad14.php?pt=5&m=2&cnt=17&mdid=14 HTTP/1.1" 200 147 "-" "megad"
192.168.1.14 - - [10/Jun/2016:12:43:35 +0300] "GET /megad14.php?pt=5&m=1&cnt=18&mdid=14 HTTP/1.1" 200 147 "-" "megad"
и так по всем IN портам.
Это у меня одного так или я что-то делаю не так?"
А где этот лог посмотреть? Я признаться не знаю.

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение OlegJktu84 » 15 авг 2016, 22:18

Я сам не знаю ;). Это кусок обсуждения под статьей Андрея. http://www.ab-log.ru/smart-house/ethern ... 8-api#comm
Там мне кажется, человек на самописном и это что-то типа лога Апача... но это мои фантазии.
Тут надо понять как это в Опенхабе посмотреть...
Может я вообще вас путаю...

xsash
Сообщения: 239
Зарегистрирован: 08 авг 2016, 12:27

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение xsash » 15 авг 2016, 23:25

это стандартный лог Апача, в nix смотреть примерно тут
/var/log/apache2/

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 16 авг 2016, 07:31

Нет, там ничего такого нет. Нашел только кусок лога где сам пытался свич переключать вручную (что некорректно):
/var/log/daemon.log.1:

Код: Выделить всё

Aug 11 22:50:56 raspberrypi start.sh[537]: 2016-08-11 17:50:56.692 [INFO ] [runtime.busevents             ] - EnergyPulse received command ON
Aug 11 22:50:56 raspberrypi start.sh[537]: 2016-08-11 17:50:56.709 [INFO ] [b.m.internal.MegaDeviceBinding] - Switch: http://192.168.88.72/sec/?cmd=6:1
Aug 11 22:50:58 raspberrypi start.sh[537]: 2016-08-11 17:50:58.922 [INFO ] [runtime.busevents             ] - EnergyPulse received command OFF
Aug 11 22:50:58 raspberrypi start.sh[537]: 2016-08-11 17:50:58.938 [INFO ] [b.m.internal.MegaDeviceBinding] - Switch: http://192.168.88.72/sec/?cmd=6:0

Апач это ведь HTTP-сервер - у меня он не используется. На нем только переадресация стоит, чтобы когда короткий адрес набираешь он на длинный перекидывал:

Код: Выделить всё

<html>
<head>
<meta http-equiv="refresh" content="1;URL=http://192.168.88.70:8080/openhab.app" />
</head>
</html>

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 16 авг 2016, 07:54

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

Нашел как подключают usb микрофон к Raspberry Pi https://wolfpaulus.com/journal/embedded ... rrypi2-sr/ (на англ.), но там звук, а мне нужны уровни шума.

UPD: Что-то похожее на то что нужно https://blog.mornati.net/raspberrypi-mo ... detection/ но как это отобразить в openhab :?:

UPD2: А сами то микрофоны вообще миниатюрные: http://www.ebay.com/itm/Smallest-Super- ... 0990012478

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение OlegJktu84 » 16 авг 2016, 13:22

По поводу микрофона - если идти этим путем наверно логично взять аудио карточку usb - аудио джек http://ru.aliexpress.com/item/Sienoc-US ... 76210.html и потом сделать мини джек - UTP5e - микрофон (или динамик, который может работать микрофоном). Т.к. удлинять USB - дорого. А так можно использовать готовую витую пару, на конец припаять можно хоть микрофон от любой БУ гарнитуры. И видимо нужно по "событию" писать в базу данных. Я так понимаю, что в openhab это rrd4j . Первая попавшая ссылка http://vermus.blogspot.ru/2014/01/openhab_16.html /

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение OlegJktu84 » 16 авг 2016, 13:27

empenoso писал(а): ...
P.S. Почему-то счетчик порта меги резко не совпадает с счетчиком openhab.
Может логичней разобраться в api МегаД и вытаскивать в БД (базу данных) Openhub значение из Меги. А потом работать с ним.
PS Тогда можно не разбираться почему значения разные и правильно импульсы считает Openhab или задваивает какие-то, считая длинные нажатия как 2 (может как 3), или складывая нажатия и отжатия. А как на практике выглядит "несовпадение"?

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 16 авг 2016, 16:02

OlegJktu84 писал(а):
empenoso писал(а): ...
P.S. Почему-то счетчик порта меги резко не совпадает с счетчиком openhab.
Может логичней разобраться в api МегаД и вытаскивать в БД (базу данных) Openhub значение из Меги. А потом работать с ним.
PS Тогда можно не разбираться почему значения разные и правильно импульсы считает Openhab или задваивает какие-то, считая длинные нажатия как 2 (может как 3), или складывая нажатия и отжатия. А как на практике выглядит "несовпадение"?
Пока точно не знаю - ведь там никто не живет пока, а только оборудование это включено. Программных ошибок вроде нет, не то, что их в коде нет, а в логах нет :D

Насчет вытаскивания значений из меги напрямую в Openhub звучит как-то сложновато на вид :o к тому же после перезагрузки счетчик меги обнуляется.

P.S. Попробую импульсы визуально посчитать на коротком интервале времени.

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 16 авг 2016, 16:09

OlegJktu84 писал(а):По поводу микрофона - если идти этим путем наверно логично взять аудио карточку usb - аудио джек http://ru.aliexpress.com/item/Sienoc-US ... 76210.html и потом сделать мини джек - UTP5e - микрофон (или динамик, который может работать микрофоном). Т.к. удлинять USB - дорого. А так можно использовать готовую витую пару, на конец припаять можно хоть микрофон от любой БУ гарнитуры. И видимо нужно по "событию" писать в базу данных. Я так понимаю, что в openhab это rrd4j . Первая попавшая ссылка http://vermus.blogspot.ru/2014/01/openhab_16.html /
Тут на мой взгляд весь вопрос как эти данные из linux в openhab затолкать. Это может оказаться не так уж и просто.

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 16 авг 2016, 18:08

empenoso писал(а):Кстати датчик звука не работает - пытался его откалибровать, но значения все время одни и те же в меге при разных уровнях шумов (мерял шумомером).
Приходил специалист по контрольно-измерительным приборам и автоматике - посмотрел оба датчика шума, засомневался в их работоспособности, сказал завтра на осциллографе посмотрит. Также сказал сделает устройство чтобы проверить работоспособность АЦП порта MegaD.

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение OlegJktu84 » 16 авг 2016, 18:14

Я может опять туплю... " работоспособность АЦП порта MegaD", но разве не: ноль пальчиковых батарее - 0 на АЦП ( только к общим земле или нулю оба провода); 1 пальчиковая батарейка 1,5V = около 40% от макс (1023/2 около 500), две пальчиковые батарейки 3v - около 90% от макс т.е больше 900. АЦП же 3,3V =100%= 1023. Тяжело быть новичком... не врубаюся, так оно или нет.
УПС АЦП до 1023 http://www.ab-log.ru/smart-house/ethernet
"АЦП (аналого-цифровой преобразователь) позволяет подключать к MegaD-328 всевозможные аналоговые датчики. В устройстве из 14 универсальных 6 портов могут быть сконфигурированы как АЦП (все АЦП-порты доступны для исполнительного модуля MegaD-14-IN). Но также доступны 2 дополнительных АЦП порта, которые выведены на разъемы. В отличие от 6 универсальных портов, к которым датчики можно подключать только в случае, если это предусматривает исполнительный модуль, 2 дополнительных АЦП порта позволяют подключать датчики (с рабочим напряжением 3,3В и ниже) напрямую без какой-либо доработки. Существует большое количество датчиков, которые можно подключить к устройство. Многие из них описаны на сайте.
В Web-интерфейсе отображается текущее значение, формируемое АЦП микроконтроллера в диапазоне от 0 до 1023. Это значение может быть получено и истолковано уже главным компьютером, в котором заложены необходимые таблицы или алгоритмы пересчета показаний АЦП в значения, понятные человеку.

ADC доступен только на портах P0 (С5), P1 (C4), P2 (C3), P3 (C2), P4 (C1), P5 (C0). В скобках указаны имена порта по спецификации Atmega328.
Опорное напряжение для АЦП: 3,3В"

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 16 авг 2016, 18:33

OlegJktu84 писал(а):Я может опять туплю... " работоспособность АЦП порта MegaD", но разве не: ноль пальчиковых батарее - 0 на АЦП ( только к общим земле или нулю оба провода); 1 пальчиковая батарейка 1,5V = около 40% от макс (1023/2 около 500), две пальчиковые батарейки 3v - около 90% от макс т.е больше 900. АЦП же 3,3V =100%= 1023. Тяжело быть новичком... не врубаюся, так оно или нет.
Я тоже ничего не смогу прокомментировать, потому как не знаю. Завтра вечером смогу рассказать - когда посмотрю что и как.

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Арендная квартира, MegaD IN Kit и датчик шума и приборы учета

Сообщение empenoso » 16 авг 2016, 22:20

Переделал правило подсчета показаний счетчика без накопления импульсов, простым прибавлением 1/3200. Так хоть показания текут немного, а при накоплении стоят ведь, а на самом деле ведь счетчик крутится. :arrow:

Код: Выделить всё

//подсчет кВт*ч эл. счетчика
rule "InputImp ON"
when
   Item P6_EnergyPulse changed to ON
then
   var Number Imp = CountElecKWh.state as DecimalType
   Imp = Imp + 0.0003125 // 1 кВт*ч - 3200 импульсов
   postUpdate(CountElecKWh, Imp)
end

/* =============================================================================================================== */

//подсчет показаний хол. воды
rule "CountWaterImpCold ON"
when
   Item P10_WaterPulse_cold changed to ON
then
	var Number Imp = CountWaterM3Cold.state as DecimalType
	Imp = Imp + 0.01 // один полный импульс при прохождении 10 л жидкости 
	postUpdate(CountWaterM3Cold, Imp)
end

//подсчет показаний гор. воды
rule "CountWaterImpHot ON"
when
   Item P11_WaterPulse_hot changed to ON
then
	var Number Imp = CountWaterM3Hot.state as DecimalType
	Imp = Imp + 0.01 // один полный импульс при прохождении 10 л жидкости 
	postUpdate(CountWaterM3Hot, Imp)
end

Ответить