Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
-
- Moderátor
- Příspěvky: 901
- Registrován: 03. červenec 2021, 18:35
- Dal poděkování: 107 poděkování
- Dostal poděkování: 210 poděkování
Re: Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
Co vymýšlíš se tedy nedozvím, i tak zkusím odpovědět.
Nějak netuším co budeš připojovat záhadného na ten výstup že je tomu jedno zda tam bude úroveň napětí nebo PWM.
Odpověď na původní zadání - ESP8266 a výstup 0-5V
Na straně ESP použij https://esphome.io/components/output/esp8266_pwm.html
Elektronika za tím:
Poslední schema na https://dlnware.com/theory/Digital-analog-converter-DAC
PWM IN bude z ESP (3.3V). Mosfet VT1 dělá level shift, Vcc je těch požadovaných 5V
R4+C1 je integrační člen (na C1 bude "průměr" napětí PWM z Vcc úrovně), R5 vybíjí C1 aby byla reakce i na pokles střídy... Za tím nějaký rail-to-rail operák jako sledovač napětí. Na výstupu máš požadovaných 0-5V
Další varianta: ESP8266 a výstup PWM na úrovni 5V
Jen připojený level shifter, tedy buď nějaký koupený modul nebo už odkazované schéma (jen levá část po R4)
Další varianta: ESP32 a výstup PWM na úrovni 5V
Namísto esp8266_pwm použij https://esphome.io/components/output/ledc.html
elektronika stejná.
A poslední varianta: ESP32 a výstup 0-5V
Buď opět přes PWM, nebo použij https://esphome.io/components/output/esp32_dac.html a na něj pověs [google]stejnosměrný zesilovač rail to rail[/google] prostě RtR operák s kladnou zpětnou vazbou 5/3.3
Nějak netuším co budeš připojovat záhadného na ten výstup že je tomu jedno zda tam bude úroveň napětí nebo PWM.
Odpověď na původní zadání - ESP8266 a výstup 0-5V
Na straně ESP použij https://esphome.io/components/output/esp8266_pwm.html
Elektronika za tím:
Poslední schema na https://dlnware.com/theory/Digital-analog-converter-DAC
PWM IN bude z ESP (3.3V). Mosfet VT1 dělá level shift, Vcc je těch požadovaných 5V
R4+C1 je integrační člen (na C1 bude "průměr" napětí PWM z Vcc úrovně), R5 vybíjí C1 aby byla reakce i na pokles střídy... Za tím nějaký rail-to-rail operák jako sledovač napětí. Na výstupu máš požadovaných 0-5V
Další varianta: ESP8266 a výstup PWM na úrovni 5V
Jen připojený level shifter, tedy buď nějaký koupený modul nebo už odkazované schéma (jen levá část po R4)
Další varianta: ESP32 a výstup PWM na úrovni 5V
Namísto esp8266_pwm použij https://esphome.io/components/output/ledc.html
elektronika stejná.
A poslední varianta: ESP32 a výstup 0-5V
Buď opět přes PWM, nebo použij https://esphome.io/components/output/esp32_dac.html a na něj pověs [google]stejnosměrný zesilovač rail to rail[/google] prostě RtR operák s kladnou zpětnou vazbou 5/3.3
Vše co si přinesu domů je buď Shelly, nebo to skončí buď pod ESPhome nebo pod Zigbee2mqtt.
Ajťák co pamatuje BBS a OS/2 Warp a je mu jedno o jaký systém nebo síťařinu běží.
HA OS jako jedna z Proxmox VM na Odroid H3+/64GB https://github.com/tteck/Proxmox
Ajťák co pamatuje BBS a OS/2 Warp a je mu jedno o jaký systém nebo síťařinu běží.
HA OS jako jedna z Proxmox VM na Odroid H3+/64GB https://github.com/tteck/Proxmox
-
- Moderátor
- Příspěvky: 901
- Registrován: 03. červenec 2021, 18:35
- Dal poděkování: 107 poděkování
- Dostal poděkování: 210 poděkování
Re: Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
Než jsem odpověděl tak koukám že proběhla nějaká konverzace, problém je tedy jiný - jak naprogramovat PWM...
PWM nastavíš maximálně frekvenci, to co potřebuješ je řídit střídu a ta se dělá třeba přes https://esphome.io/components/output/in ... vel-action
Téma přesouvám do ESPHome
PWM nastavíš maximálně frekvenci, to co potřebuješ je řídit střídu a ta se dělá třeba přes https://esphome.io/components/output/in ... vel-action
Téma přesouvám do ESPHome
Vše co si přinesu domů je buď Shelly, nebo to skončí buď pod ESPhome nebo pod Zigbee2mqtt.
Ajťák co pamatuje BBS a OS/2 Warp a je mu jedno o jaký systém nebo síťařinu běží.
HA OS jako jedna z Proxmox VM na Odroid H3+/64GB https://github.com/tteck/Proxmox
Ajťák co pamatuje BBS a OS/2 Warp a je mu jedno o jaký systém nebo síťařinu běží.
HA OS jako jedna z Proxmox VM na Odroid H3+/64GB https://github.com/tteck/Proxmox
-
- Aktivní autor
- Příspěvky: 53
- Registrován: 31. leden 2022, 22:47
- Dal poděkování: 1 poděkování
Re: Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
Dik to vyzerá dobre , len problém je že on používa externe čidla a ja potrebujem použiť entitu z home assistant .tiimsvk píše: ↑01. únor 2023, 11:25 toto by ti nepomohlo je tam opisane ako meniť dynamicky rychlosť ventilatora na zaklade teploty.. ty máš podobne na zaklade % batterie meniť dynamicky pwm a volty
https://www.speaktothegeek.co.uk/2023/0 ... e-control/
-
- Aktivní autor
- Příspěvky: 53
- Registrován: 31. leden 2022, 22:47
- Dal poděkování: 1 poděkování
Re: Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
Toto som našiel ,ale ja mam problém ako zakomponovať do toho programu tú entitu (udaj o nabití baterie v %) tak aby ovladala ten PWM signálkiklhorn píše: ↑01. únor 2023, 12:20 Než jsem odpověděl tak koukám že proběhla nějaká konverzace, problém je tedy jiný - jak naprogramovat PWM...
PWM nastavíš maximálně frekvenci, to co potřebuješ je řídit střídu a ta se dělá třeba přes https://esphome.io/components/output/in ... vel-action
Téma přesouvám do ESPHome
- tiimsvk
- Dárce - Donátor
- Příspěvky: 801
- Registrován: 06. květen 2021, 07:03
- Dal poděkování: 72 poděkování
- Dostal poděkování: 65 poděkování
Re: Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
tak potom tu je riešenie ako implementovať entitu z ha do esphome
https://esphome.io/components/sensor/homeassistant.html
https://esphome.io/components/sensor/homeassistant.html
-
- Aktivní autor
- Příspěvky: 53
- Registrován: 31. leden 2022, 22:47
- Dal poděkování: 1 poděkování
Re: Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
Tak to nebude také jednoduché ,pretože nestačí iba nadstavit která entita sa ma použiť. Treba to aj naprogramovať ,teda napr.
ak bude baterka nabita na 95% bude na výstupe 10% PWM signálu ak bude na 96% bude na výstupe 20% PWM .........atd. A to je nad moje možnosti. Ale dik za pomoc.
ak bude baterka nabita na 95% bude na výstupe 10% PWM signálu ak bude na 96% bude na výstupe 20% PWM .........atd. A to je nad moje možnosti. Ale dik za pomoc.
- Pete30
- Moderátor
- Příspěvky: 3332
- Registrován: 30. září 2020, 20:33
- Dal poděkování: 172 poděkování
- Dostal poděkování: 364 poděkování
Re: Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
Pokud nám prozradíš k čemu to má ve finále sloužit potom třeba najdeme jednodušší řešení.
Zatím víme že máš senzor baterie, který měří % a chceš ovládat nějaké PWM na esp podle % baterie a to je vše
Po krocích ?
V jakých krocích ?
Plynule ?
Co ovládat ?
Automatizace na HA ?
Automatizace na esp ?
Zatím víme že máš senzor baterie, který měří % a chceš ovládat nějaké PWM na esp podle % baterie a to je vše
Po krocích ?
V jakých krocích ?
Plynule ?
Co ovládat ?
Automatizace na HA ?
Automatizace na esp ?
Pokud nejsem přítomen tak jsem na rybách
-
- Aktivní autor
- Příspěvky: 53
- Registrován: 31. leden 2022, 22:47
- Dal poděkování: 1 poděkování
Re: Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
Ako som písal ,mam v HA entity konkrétne z BMS -ky ktorá riady nabíjanie, vybíjane baterie z FPV a jednu entitu, konkrétne "celkove napätie baterie v % ", ktorú chcem použiť na ovládanie ohrevu vody v zásobníku z prebytkov FPV. Teda ak sa baterka nabije na cca.95% začne sa prebytkami z FPV postupne nahrievať voda v zásobníku. Preto potrebujem dostať PWM signal z ESP32 na zaklade hodnoty z tejto entity a ten potom použiť ďalej na riadenie elektroniky toho ohrevu .To už mam poriešene, len momentálne to prepínam ručne čo je blbosť. Stačilo by to aj v krokoch teda 1% na baterke = 10%PWM signál.
-
- Moderátor
- Příspěvky: 901
- Registrován: 03. červenec 2021, 18:35
- Dal poděkování: 107 poděkování
- Dostal poděkování: 210 poděkování
Re: Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
dokumentace s vyhledáváním: https://esphome.io/
Dám příklad:
Senzor kterým si v defaultním "update interval"
načtu hodnotu jiného senzoru (ten v tomto kódu není, tiimsvk dával odkaz jak na něj) pomocí
následně ji proženu filtrem (spousta možných různých, projdi si dokumentaci) - chci vidět procenta namísto napětí
a přes blok za nebo on_value_range(projdi si dokumentaci): nastavím hodnotu výstupu.
Píšu to částečně z hlavy, doufám že nekecám a že x v on_value je už filtrovaná hodnota a ne raw_value - kdyžtak mne někdo opravte.
Dám příklad:
Senzor kterým si v defaultním "update interval"
načtu hodnotu jiného senzoru (ten v tomto kódu není, tiimsvk dával odkaz jak na něj) pomocí
Kód: Vybrat vše
lambda: return id(nejaky_homeassistant_sensor).state ;
a přes blok za
Kód: Vybrat vše
on_value:
Píšu to částečně z hlavy, doufám že nekecám a že x v on_value je už filtrovaná hodnota a ne raw_value - kdyžtak mne někdo opravte.
Kód: Vybrat vše
sensor
- platform: template
name: "${device_name} procent baterie"
id: bat_pct
accuracy_decimals: 0
unit_of_measurement: "%"
device_class: battery
lambda: return id(nejaky_homeassistant_sensor).state ;
filters:
- calibrate_polynomial:
degree: 3
datapoints:
- 0.00 -> 0.0
- 3.20 -> 0.0
- 3.28 -> 10.0
- 3.33 -> 20.0
- 3.40 -> 30.0
- 3.48 -> 40.0
- 3.57 -> 50.0
- 3.65 -> 60.0
- 3.72 -> 70.0
- 3.80 -> 80.0
- 3.88 -> 90.0
- 4.15 -> 95.0
- 4.20 -> 100.0
- lambda: |-
if (x <= 100) {
return x;
} else {
return 100;
}
on_value:
then:
- output.set_level:
id: light_1
level: !lambda "return x/100;"
output:
- platform: esp8266_pwm
pin: GPIO3
id: light_1
# power_supply: power_supply_id
inverted: false
min_power: 0.00
max_power: 1.00
Vše co si přinesu domů je buď Shelly, nebo to skončí buď pod ESPhome nebo pod Zigbee2mqtt.
Ajťák co pamatuje BBS a OS/2 Warp a je mu jedno o jaký systém nebo síťařinu běží.
HA OS jako jedna z Proxmox VM na Odroid H3+/64GB https://github.com/tteck/Proxmox
Ajťák co pamatuje BBS a OS/2 Warp a je mu jedno o jaký systém nebo síťařinu běží.
HA OS jako jedna z Proxmox VM na Odroid H3+/64GB https://github.com/tteck/Proxmox
-
- Aktivní autor
- Příspěvky: 53
- Registrován: 31. leden 2022, 22:47
- Dal poděkování: 1 poděkování
Re: Zmena napätia na výstupe ESP8266 0-5V podľa stavu entity
Tak som to skusil ale nieco je zle:
Kód: Vybrat vše
sensor:
- platform: template
name: "${device_name} procent baterie"
id: bat_pct
accuracy_decimals: 0
unit_of_measurement: "%"
device_class: battery
lambda: return id (sensor.antbms_old_soc).state ;
filters:
- calibrate_polynomial:
degree: 3
datapoints:
- 0.00 -> 0.0
- 3.20 -> 0.0
- 3.28 -> 10.0
- 3.33 -> 20.0
- 3.40 -> 30.0
- 3.48 -> 40.0
- 3.57 -> 50.0
- 3.65 -> 60.0
- 3.72 -> 70.0
- 3.80 -> 80.0
- 3.88 -> 90.0
- 4.15 -> 95.0
- 4.20 -> 100.0
- lambda: |-
if (x <= 100) {
return x;
} else {
return 100;
}
on_value:
then:
- output.set_level:
id: light_1
level: !lambda "return x/100;"
output:
- platform: esp8266_pwm
pin: GPIO3
id: light_1
# power_supply: power_supply_id
inverted: false
min_power: 0.00
max_power: 1.00