Hauptmenü

Firmata+Arduino

Begonnen von Rohan, 31 Januar 2013, 14:31:12

Vorheriges Thema - Nächstes Thema

mago0211

Hallo Norbert,

ich habe es mit dem Attribut versucht leider kein Erfolg!


define Arduino FRM 3030 [global]
attr Arduino group Test
attr Arduino sampling-interval 300000


define Regensensor FRM_AD 55
attr Regensensor IODev Arduino
attr Regensensor event-min-interval 5  (Wurde automatisch gesetzt)


Da ich gelesen habe das das sampling-interval in MS angegeben wird habe ich es mal auf 5min also 300000 gestellt.
An dem Verhalten des Reading hat sich nichts geändert
siehe Log:


2014-09-13_10:41:08 209
2014-09-13_10:41:18 208
2014-09-13_10:41:23 210
2014-09-13_10:41:43 208
2014-09-13_10:42:04 210
2014-09-13_10:42:09 209
2014-09-13_10:42:14 210
2014-09-13_10:42:19 209
2014-09-13_10:42:29 210
2014-09-13_10:42:34 209
2014-09-13_10:42:39 210
2014-09-13_10:42:45 211
2014-09-13_10:42:50 209
2014-09-13_10:43:10 208
2014-09-13_10:43:16 209
2014-09-13_10:43:25 211
2014-09-13_10:43:30 208
2014-09-13_10:43:41 210
2014-09-13_10:43:46 208
2014-09-13_10:43:51 209
2014-09-13_10:44:01 208
2014-09-13_10:44:06 209
2014-09-13_10:44:16 210
2014-09-13_10:44:21 208
2014-09-13_10:44:26 209
2014-09-13_10:44:47 208
2014-09-13_10:44:52 209
2014-09-13_10:44:57 210
2014-09-13_10:45:02 208
2014-09-13_10:45:07 207
2014-09-13_10:45:12 208


Hast du ne Idee an was es liegen könnte?

Gruß
Markus

cberl

Hi, ich habe da nicht-invasive AC Stromwandler SCT-013 http://openenergymonitor.org/emon/buildingblocks/ct-sensors-interface mit einem Messbereich von 30A (wie eine Strommesszange). Die kann ich über Arduino und die EmonLib.h auslesen, was auch prima klappt. Da ich mittlerweile drei FRMs über Ethernet in Betrieb habe (Danke Norbert), hätte ich diese Sensoren auch gerne über Firmata ausgelesen. Das klappt ja nun nicht so ohne weiteres, da die Sensoren eine Wechselspannung liefern und die EmonLib die Spitzenwerte ermittelt (FRM_AD ohne alles bringt also nichts). Nun wäre es ja möglich mittels eines Messwandlers das in eine per AD auslesbare Gleichspannung zu wandeln. Ich hätte aber gerne eine softwarebasierende Lösung. Hat da jemand eine Idee zu?

Bye Chris
Fhem immer aktuell @win2016 und @ubuntu VM|7xFRM/ArduinoEthernet|Homematic|HMLan|CUNO|HarmonyHub|Modbus|Z-Wave|Milight-Hub|MQTT|OWX an ETH-UART|GoogleAssist,Alexa,Sonos|2nHelios IP Vario|Amad-Odroid|Telegram|Enigma2

le66ck

Hallo cberl

Ich bin gerade interessiert über Deinen Beitrag gestolpert.
Zumindestens als Idee für Zukünftiges oder zum Mitbasteln! Mind. 1 Arduino ist bei mir noch frei....
Der Messwandler kostet ja nicht die Welt, dachte die kosten mehr. Woher hast Du die bezogen?
Sehe ich das richtig, daß der Sketch über den den Serial-Monitor die Werte ausgibt?

ZitatDas klappt ja nun nicht so ohne weiteres, da die Sensoren eine Wechselspannung liefern und die EmonLib die Spitzenwerte ermittelt (FRM_AD ohne alles bringt also nichts).

Für mich ist das eine pulsierende Gleichspannung, die am Arduino-Pin ankommt und somit auswertbar ist.

CK
1 BPi mit SSD und CSM-Funkmodul für Fhem + Baïkal für CalDAV
6 HM-LC-Dim1TPBU-FM, 8 HM-CC-RT-DN, 4 HM-LC-Sw1PBU-FM,
6 HM-SEC-SCo, 1 HM-Sen-MDIR-WM55, 1HM-SCI-3, 1 HM-ES-PMSw1-Pl

ntruchsess

#363
AC-Mittelwertbildung in Software wäre im Firmatakontext vermutlich nicht ausreichend  echtzeitfähig (weil ja noch andere Protokolle parallel bedient werden mussen Ich befürchte daher, dass sich die ecomonlib nicht sinnvoll in die Firmata integrieren läßt. Dafür müsste man sich mal genau ansehen, wie die lib das intern macht.
Gruß, Norbert
while (!asleep()) {sheep++};

rogseut

#364
Wie ist der Stand?
Konnte es gelöst werden?

Steh vor ähnlichem Problem und bin absolut neu in der FHEM Welt.
Werte im Moment die Stromwandler SCT-013 30A mit der emon-lib im Arduino Uno aus.
Das klappt auch so weit ganz passabel.
Nun möchte ich z.B.: alle 10sec einen Wert vom Arduino über ein Ethernetshield via TPLINK tl-wr702n zum Raspberry PI senden und dort auswerten.

Wie löst man dieses Problem?
Firmata? 

Cihan

#365
Ich habe ein Problem, das ein Eingang im Eventmonitor flattert. Einen 10k PU habe ich schon am Eingang.
Was kann es noch sein?

ZitatEvents:
2015-02-15 23:35:39 FRM_OUT DQ08 value: on
2015-02-15 23:35:39 FRM_IN DI02 reading: on
2015-02-15 23:35:39 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on
2015-02-15 23:35:40 FRM_IN DI02 reading: off
2015-02-15 23:35:40 FRM_IN DI02 reading: on


edit:

Ich gehe mal davon aus, das es das Relais ist, welches mechanisch prellt.
RPi4 Shelly Zigbee

mago0211

Hallo Cihan,

bin gerade auf deinen Beitrag gestoßen, bei mir gibt es scheinbar das gleiche Problem. Konntest du das Problem lösen? Welches Relais Board setzt du ein?

Gruß
Markus

noice

kann es sein das es mit diesem OWCOUNTER probleme gibt ?
http://forum.fhem.de/index.php/topic,35863.0.html

kann ihn manuell einbinden
define OWX_1D_A2D984000002 OWCOUNT DS2423 A2D984000002
attr OWX_1D_A2D984000002 model DS2423eold
attr OWX_1D_A2D984000002 nomemory 0


sobald ich aber "get OWX devices" abfrage ist der OWCOUNTER wieder weg und ich muss ihn manuell einbinden

BananaPI, RaspberryPi+AddonBoard,HMLAN,  miniCUL 433,nanoCUL 433,nanoCUL868,FHEMduino 433, Jeelink clone diverse Homematic, FS20, MAX, TFA und IT Komponenten.
10" Tablet mit andFhem, Daitem D14000

mani

Hallo,möchte über einen Counter Eingang einen Windsensor auslesen dazu muss ich alle 3 Sekunden auf 0 Null rücksetzen und die zuletzt gezählten Impulse umrechnen um auf einen Brauchbaren Wert zu kommen wie kann ich das umsetzen.
Bitte um Hilfe.

Danke Mani
RasPi B+,Onkyo_AVR,Luxtronik2,Logo7,Mpd,Arduino Uno mit Ethernet,KNX,Jablotron

subito

Fhem läuft bei mir auf einem Raspi ausschliesslich zum Erfassen und Loggen von Sensordaten. Das funktioniert prima  mit einem nanoCUL (433MHz) und 4 Revolt-Strommessdosen und einer (Aldi?) SD_WS07 Wetterstation.
Problem:
Den Füllstand meiner Zisterne (ein Analogsignal 0 bis 5Volt) erfasse ich bisher autark mit einem Arduino YUN und Anzeige auf einer 2x20 LCD.

Dessen Übernahme bzw. Anzeige mittels Firmata / FRM_AD übers WLAN klappt leider nicht.

Der Sketch auf dem YUN läuft, er wurde mit FirmataBuilder
und nur der Option "analog in" erzeugt.
Ich habe einen 2sec-delay eingefügt, weil der ungebremste Datenstrom im FHEM zu heftig war.
Das Signal liegt am Yun-PIN A1 = 19. Ich schicke es zur Kontrolle übers WLAN zur Console, wo es korrekt angezeigt wird:

    analogPin = PIN_TO_ANALOG(pin);
    U1 = analogRead(analogPin);
    Firmata.sendAnalog(analogPin, U1);
    Console.println(U1);
    digitalWrite(13, HIGH);
    delay(600);
    digitalWrite(13, LOW);
    delay(1400);
   

Ausschnitt aus fhem.cfg:
...
define FIRMATA FRM 3030 global
attr FIRMATA sampling-interval 3000
...
define 7_Zisterne FRM_AD 19
attr 7_Zisterne IODev FIRMATA
attr 7_Zisterne event-min-interval 30
attr 7_Zisterne stateFormat reading
...
define Level1 FileLog ./log/Level1-%Y-%m.log 7_Zisterne
attr Level1 logtype text
...
define SVG_Level1_1 SVG Level1:SVG_Level1_1:CURRENT
...

Fhem "all" zeigt:

FRM
FIRMATA                  Initialized
FIRMATA_192.168.1.67_58285  Connected
FRM_AD
7_Zisterne                reading

Es kommen reichlich Daten,
kleiner Ausschnitt aus dem Log: ("3_Gesamt" ist eine der Revolt-Dosen)
2016.02.28 17:09:41 5: FRM:<e1
2016.02.28 17:09:41 5: FRM:<77
2016.02.28 17:09:41 5: FRM:<03
2016.02.28 17:09:43 5: Triggering 3_Gesamt (2 changes)
2016.02.28 17:09:43 5: Notify loop for 3_Gesamt power: 240.5
2016.02.28 17:09:43 5: FRM:<e17703
2016.02.28 17:09:45 5: FRM:<e1
2016.02.28 17:09:45 5: FRM:<77
2016.02.28 17:09:45 5: FRM:<03
2016.02.28 17:09:47 5: FRM:<e1
2016.02.28 17:09:47 5: FRM:<77
2016.02.28 17:09:47 5: FRM:<03
2016.02.28 17:09:49 5: FRM:<e1
(...usw..)

Die FRM-Daten sind gemäss Firmata-Protokoll korrekt, nämlich e1 = Analogpin 1, 77 03 = Messwert = 503 (LSB, MSB in 7-bit).


Also alles prima, aber wie bekomme ich meine Füllstandsdaten zu sehen ???

Im Logfile Level1-2016-02.log sieht man nur meine diversen Neustarts, aber keine Messwerte:

2016-02-27_20:53:04 7_Zisterne Initialized
2016-02-27_20:54:44 7_Zisterne Initialized
2016-02-27_21:04:56 7_Zisterne Initialized
2016-02-27_21:06:11 7_Zisterne Initialized
2016-02-27_22:58:19 7_Zisterne Initialized
2016-02-28_01:01:13 7_Zisterne Initialized
2016-02-28_01:14:24 7_Zisterne Initialized

Der SVG-Plot bleibt auch leer :-(.

Mache ich da irgendwo einen saudummen simplen Fehler?

Ich bin für jede Hilfe dankbar!



Edi77

#370
Hallo,

Ich wollte mal Frage ob jemand Erfahrung hat über die max. länge des Kabel zwischen einem Arduino Mega I2C Bus und einem BH1750?
Sind 5m geschirmtes Kabel machbar?
Ich habe mal was von 100m gelesen?
Mit wie viel khz arbeitet der i2c Bus bei Frimata? 400khz?


Ist es möglich am Mega 2x I2C Bus zu nutzen?

Ist es richtg das vom FHEM bis jetzt nur Firmata 2.06 unterstütz wird und 2.07 ...... noch nicht?

Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D