Sida 1 av 2

ESP8266 fråga

Postat: 10 december 2021, 17:04:35
av tecno
Har fungerande ESP8266 med denna givare https://se.rs-online.com/web/p/pneumati ... es/8262085 men behöver dela signalen från denna till 3 ingångar på ESP:n. Vad tror sällskapet om detta ??

Re: ESP8266 fråga

Postat: 10 december 2021, 17:43:24
av Lennart Aspenryd
Det gör du väl inte!
Ta in den som en i mjukvaran, det är väl alltid samma input!
Så är det bara att dela upp den mjukvarumässigt! Eller hur?

Re: ESP8266 fråga

Postat: 10 december 2021, 18:02:54
av tecno
Trodde du ja, tyvärr så är inte verkligheten så enkelt = Home Assistant.

Men jag är idel öra på en sådan lösning. Counter för presentation av olika mätningar från en källa. Ska kunna visas på ett 'card' i HA.

Re: ESP8266 fråga

Postat: 11 december 2021, 10:18:11
av Swech
Ställer du pinnarna som ingångar på ESPn kan du parallellkoppla hur många du vill.
Hängsle + livrem så lägger du några 100 ohm i serie till varje ingång

Swech

Re: ESP8266 fråga

Postat: 11 december 2021, 10:43:31
av tecno
Tack, har läst om detta tidigare men som vanligt kan man inte hitta informationen man söker. Behöver rigga upp på bänk och köra ett labb.

Det är mätning av min pellets förbrukning där jag vill få ut
1. antal total varv matarskruven gör
2. konverterat värde till kg
3. konvertering till kWh

Sen ska det till lite statistik som förbrukning /dygn /vecka /månad

Har en fungerande lösning där mätning presenteras via web server funktion men det gör att data inte finns i 'vanliga' HA dashboard.
Skärmklipp4.JPG

Re: ESP8266 fråga

Postat: 11 december 2021, 12:56:07
av CPMS
Följer tråden med intresse, ska just fixa liknande funktion men tänkte använda externskruvens drifttid på en Bequem för att beräkna pelletsåtgången.

Re: ESP8266 fråga

Postat: 11 december 2021, 13:11:29
av tecno
Hur kan du kommunicera med brännaren?

Re: ESP8266 fråga

Postat: 11 december 2021, 13:16:31
av H.O
Eftersom du har något som fungerar så är kanske det här överflödig information men givarens matningspänning är 4.5-28V medan I/O på ESP8266 är 3.3V, ej 5V toleranta. Så jag antar att du har någon anpassning (spännindsdelare, optokopplare eller annat) mellan givarens utgång och ingången på ESP8266.

Re: ESP8266 fråga

Postat: 11 december 2021, 14:03:32
av CPMS
Byggt ett interface med optokopplare som jag tänkte koppla parallellt med skruven och sen skicka en 3,3v till ESP'n.
Tänkte först köra med en induktiv givare och mäta antalet varv men det blir mindre kabel till skruven på detta sätt och tittar man på Bequems egna pelletsförbrukningsmätning verkar den stämma väldigt bra och dom mäter tydligen drifttiden på externskruven och använder den och en konstant för uträkningen.

Kopierade denna krets på ett experimentkort och tänkte 3D-printa en låda till den att montera inne i pannan.

https://learn.edwinrobotics.com/230v110 ... T11hU8jz_w

Re: ESP8266 fråga

Postat: 11 december 2021, 14:44:24
av tecno
Det kommer att fungera galant, det är bara kalibreringen av mängden som matas fram som det gäller att få till. Just nu går min med lite fel satt mängd.

Re: ESP8266 fråga

Postat: 11 december 2021, 14:54:56
av tecno
Kanske någon här kan hjälpa till och klura ut detta med kodningen.

Här fungerande kod till web server

Kod: Markera allt

substitutions:
  # General variables
  device_name: pulse-counter
  friendly_name: 'Pulse meter'
  device_description: 'Measure pulses'
  
  # Trigger GPIO for pulse
  input_pulse: GPIO5 # Pin registering the inputs from the switch
  
  ratio_kg: '0.0286'
  ratio_kwh: '0.00485'
  
  filter_on: 0.5s
  filter_off: 0.5s

esphome:
  name: '${device_name}'
  comment: '${device_description}'
  platform: ESP8266
  board: esp01_1m
  
ota:
  password: "4c021e92ad7b589009659ba7d442adf4"
  safe_mode: true
  reboot_timeout: 10min
  num_attempts: 5

# Enable logging
logger:
  level: WARN
  
# Enable Home Assistant API
api:

wifi:
  ssid: xxx
  password: xxx
  
  manual_ip:
    static_ip: xxx
    gateway: xxx
    subnet: xxx
    


web_server:
  port: 80
  auth:
    username: xxx
    password: xxx

# Sensors for ESP version and WIFI information
text_sensor:
  - platform: version
    hide_timestamp: true
    name: "${friendly_name} - ESPHome Version"
  - platform: wifi_info
    ip_address:
      name: "${friendly_name} - IP Address"
      icon: mdi:wifi
    ssid:
      name: "${friendly_name} - Connected SSID"
      icon: mdi:wifi-strength-2

globals:
  - id: pulses_total
    type: int
    restore_value: no
    initial_value: '0'
      
binary_sensor:
  - platform: gpio
    name: "Pulse from the switch"
    internal: true
    pin:
      number: ${input_pulse}
      mode: INPUT_PULLUP
      inverted: true
    filters:
      - delayed_on: ${filter_on}
      - delayed_off: ${filter_off}
    on_press:
      then:
        - lambda: !lambda |-
              id(pulses_total)++;
              id(output_total).publish_state(id(pulses_total));
              id(output_kg).publish_state(id(pulses_total));
              id(output_kwh).publish_state(id(pulses_total));

sensor:
  - platform: template
    name: "${friendly_name} - Total pulses"
    id: output_total
    state_class: total_increasing
    icon: mdi:water-boiler
    accuracy_decimals: 0
    lambda: return id(pulses_total);

  - platform: template
    name: "${friendly_name} - Kg"
    id: output_kg
    unit_of_measurement: 'kg'
    state_class: total_increasing
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
    filters:
      - multiply: ${ratio_kg}
    lambda: return id(pulses_total);
    
  - platform: template
    name: "${friendly_name} - kWh"
    id: output_kwh
    unit_of_measurement: 'kWh'
    state_class: total_increasing
    icon: mdi:lightning-bolt-circle
    accuracy_decimals: 2
    filters:
      - multiply: ${ratio_kwh}
    lambda: return id(pulses_total);
  
    device_class: energy
   
   
Här det jag vill helst få att fungera med 1 I/O port

Kod: Markera allt

esphome:
  name: panna
  platform: ESP8266
  board: esp01_1m

# Enable logging
logger:

# Enable Home Assistant API
api:

ota:
  password:xxx
  
wifi:
  ssid: xxx
  password: xxx
  
  manual_ip:
    static_ip: xxx
    gateway: xxx
    subnet: xxx

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Panna Fallback Hotspot"
    password: xxx

captive_portal:

dallas:
  pin: 0
  update_interval: 30s
  
sensor:
  - platform: dallas
    address: 0xAF00000042FCEB28
    name: utgående
    

  
  - platform: pulse_counter
    pin: GPIO5
    name: pulsräknare3
    update_interval: 10s
    unit_of_measurement: 'pulser'
    accuracy_decimals: 0
    filters:
      multiply: 0.1665
      
    total:
      unit_of_measurement: 'pulser'
      accuracy_decimals: 0
      name: 'pulser'
      filters:
        multiply: 1
        
#  - platform: pulse_counter
#    pin: GPIO5
#   name: pulsräknare3
#   update_interval: 10s
#    unit_of_measurement: 'pulser'
#    accuracy_decimals: 2
#    filters:
#      multiply: 0.1665
      
#    total:
#      unit_of_measurement: 'kg'
#      accuracy_decimals: 2
#     name1: 'kg'
#      filters:
#       multiply: 0.0286    
  
# - platform: pulse_counter
#    pin: GPIO5
#    name: pulsräknare3
#    update_interval: 10s
#    unit_of_measurement: 'pulser'
#    accuracy_decimals: 2
#    filters:
#      multiply: 0.1665
      
#    total:
#      unit_of_measurement: 'kWh'
#      accuracy_decimals: 6
#      name: 'kWh'
#      filters:
#        multiply: 0.00485       
      
    
binary_sensor:   
  - platform: gpio
    pin: GPIO2 #Internal LED switching
    name: "NodeMCU Internal LED"
    id: internal_led
    
  - platform: status
    name: "Connected"
Ovan kod innehåller temperatur mätning och ett status

Det är alltså de rader med # som jag vill ha med. Grupperna var för sig fungerar total pulser // total kg // total kWh

Någon som kan ge en vink hur gå tillväga med detta i HA. Frågat på HA forum men ingen respons.
Därav min fråga om parallella ingångar så att respektive total pulser // total kg // total kWh får en egen GPIO port.
Men klart smidigaste vore att lösa detta med lite kod.

Tacksam om någon kastar ett öga på detta.

Re: ESP8266 fråga

Postat: 11 december 2021, 17:08:38
av tecno
Skärmklipp5.JPG
Löste problemet. Tagit bort det som har med web server att göra och byggde ett nytt 'card' med de entiteter som skapats.

Re: ESP8266 fråga

Postat: 11 december 2021, 21:03:59
av CPMS
Nice!

Sen kan du även skaffa en MAX6675/MAX31855 med tillhörande thermoelement så kan du även logga rökgastemp upp till 1000 grader via SPI.

Kod: Markera allt

spi:
  miso_pin: GPIO12
  clk_pin: GPIO13

sensor:
  - platform: max31855
    id: rokgas_temp
    name: "Rökgas temperatur panna"
    cs_pin: GPIO14
    update_interval: 5s

Re: ESP8266 fråga

Postat: 12 december 2021, 08:47:20
av tecno
Bra idé Martin, det ska jag rota fram på nätet. Men fan vilket prisspann det är på såna enkla kort.

Re: ESP8266 fråga

Postat: 12 december 2021, 09:08:17
av CPMS
119:- på fyndiq.se är nog en av dom billigare nu när kinapaketen är som dom är.
https://fyndiq.se/produkt/termoelement- ... fd929446c/