Voilà, les mesures de température sur mon installation soalire thermique fonctionnent et sont poussées sur Thingspeak :-)

This commit is contained in:
Christian Zufferey
2019-06-17 14:01:48 +02:00
parent 6764a376b8
commit d33e7f206e
7 changed files with 125 additions and 7 deletions

View File

@@ -1,14 +1,24 @@
# solar_zf
## Petit projet pour mesurer les paramètres de ma installation solaire thermique pour mon ECS (Eau Chaude Solaire)
## Petit projet pour mesurer les paramètres de ma installation solaire thermique pour mon ECS (Eau Chaude Solaire) et les afficher sur ThingSpeak
Pour l'instant ce n'est qu'un test, mais je vais utiliser des capteurs de température One Wire DS18B20 ;-)
telnet -rN 192.168.0.173
dofile("a1.lua")
dofile("boot.lua")
dofile("a3.lua")
dofile("a4.lua")
## Installation
Il faut flasher le NodeMCU avec ce firmware:
zf190602.1313
https://github.com/zuzu59/NodeMCU_Lua/blob/master/Firmware/nodemcu-master-20-modules-2019-06-01-12-50-39-float.bin
Avec ces modules:
adc bit ds18b20 file gpio http i2c mqtt net node ow pcm rtctime sntp spi tmr uart wifi ws2812
zf190617.1358

View File

@@ -0,0 +1,15 @@
-- Petit script pour configurer les choses secrètes que l'on n'aimerait
-- pas être exportées sur Internet (github)
-- faut donc le mettre ailleurs que dans le dépôt !
function credential()
print("\n credential.lua zf190617.1136 \n")
cli_ssid="xyz"
cli_pwd="xyz"
thingspeak_url_update="http://api.thingspeak.com/update?api_key=xyz&"
end
credential()
credential=nil

View File

@@ -1,10 +1,43 @@
-- programme pour faire un test depuis de le webide
function a2()
print("\n a2.lua zf190601.1304 \n")
print("\n a2.lua zf190617.1128 \n")
end
a2()
-- Lit les capteurs de température solaire et envoie les mesures sur ThingSpeak
-- zf190617.1134
-- lecture: https://thingspeak.com/channels/802784/private_show
-- source: https://nodemcu.readthedocs.io/en/master/modules/ds18b20/
local ow_pin = 3
ds18b20.setup(ow_pin)
print("toto182538")
ztemp1=0 ztemp2=0 ztemp3=0
-- read all sensors and print all measurement results
ds18b20.read(
function(ind,rom,res,temp,tdec,par)
-- print(ind,string.format("%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X",string.match(rom,"(%d+):(%d+):(%d+):(%d+):(%d+):(%d+):(%d+):(%d+)")),res,temp,tdec,par)
print(ind,temp)
if ind == 1 then
ztemp1 = temp
elseif ind == 2 then
ztemp2 = temp
elseif ind == 3 then
ztemp3 = temp
--C'est la fin de lecture, on envoie les mesures à ThingSpeak
print(ztemp1,ztemp2,ztemp3)
disp_send()
end
end,{})
print("tutu152603")

View File

@@ -1,10 +1,43 @@
-- programme pour faire un test depuis de le webide
function a3()
print("\n a3.lua zf190601.1304 \n")
print("\n a3.lua zf190617.1135 \n")
end
a3()
-- Petit script pour envoyer quelque chose sur un serveur WEB
print("\n web_cli.lua zf190616.1519 \n")
function disp_send()
print("web_cli: ")
-- ztemp1=11 ztemp2=12 ztemp3=13
zurl=thingspeak_url_update.."field1="..tostring(ztemp1).."&field2="..tostring(ztemp2).."&field3="..tostring(ztemp3)
print(zurl)
http.get(zurl, nil, function(code, data)
print("toto")
if (code < 0) then
print("tutu")
print("HTTP request failed")
print("zuzu", code, data)
else
print("titi")
print(code, data)
end
end)
end
--disp_send()
--[[
disp_send()
]]

View File

@@ -1,10 +1,16 @@
-- programme pour faire un test depuis de le webide
function a4()
print("\n a4.lua zf190601.1304 \n")
print("\n a4.lua zf190617.1125 \n")
end
a4()
cron1=tmr.create()
cron1:alarm(20*1000, tmr.ALARM_AUTO, function()
f= "a2.lua" if file.exists(f) then dofile(f) end
end)

View File

@@ -2,9 +2,18 @@
## Petit test pour mesurer la température avec des capteurs one-wire DS18B20 et les afficher sur ThingSpeak
dofile("boot.lua")
dofile("a1.lua")
## Installation
Il faut flasher le NodeMCU avec ce firmware:
zf190616.1114
https://github.com/zuzu59/NodeMCU_Lua/blob/master/Firmware/nodemcu-master-20-modules-2019-06-01-12-50-39-float.bin
Avec ces modules:
adc bit ds18b20 file gpio http i2c mqtt net node ow pcm rtctime sntp spi tmr uart wifi ws2812
zf190617.1358

View File

@@ -0,0 +1,12 @@
-- Petit script pour configurer les choses secrètes que l'on n'aimerait
-- pas être exportées sur Internet (github)
-- faut donc le mettre ailleurs que dans le dépôt !
function credential()
print("\n credential.lua zf190616.1520 \n")
cli_ssid="xyz"
cli_pwd="xyz"
thingspeak_url_update="http://api.thingspeak.com/update?api_key=xyz&"
end
credential()
credential=nil