FEAT : Nouveau relais
This commit is contained in:
parent
109424fc50
commit
e719b6058c
14
borne.code-workspace
Normal file
14
borne.code-workspace
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"folders": [
|
||||
{
|
||||
"path": "."
|
||||
},
|
||||
{
|
||||
"name": "Mpy Remote Workspace",
|
||||
"uri": "pico:"
|
||||
}
|
||||
],
|
||||
"settings": {
|
||||
"python.languageServer": "Pylance"
|
||||
}
|
||||
}
|
||||
64
main.py
64
main.py
@ -1,9 +1,10 @@
|
||||
from machine import Pin, I2C
|
||||
from machine import Pin
|
||||
from neopixel import NeoPixel
|
||||
|
||||
import network
|
||||
import time
|
||||
import urequests
|
||||
import sys
|
||||
|
||||
Broche = [0, 1, 2, 21, 22, 23, 16, 17, 19, 20, 18]
|
||||
|
||||
@ -52,20 +53,16 @@ class Bouton:
|
||||
self.todo()
|
||||
|
||||
class Relais:
|
||||
i2c = I2C(scl=Pin(Broche[5]), sda=Pin(Broche[4]), freq=20000)
|
||||
I2C_ADDR = 0x11
|
||||
pin = Pin(Broche[5], Pin.OUT) #
|
||||
|
||||
def __init__(self) -> None:
|
||||
self.solaire()
|
||||
|
||||
def off(self):
|
||||
self.i2c.writeto_mem(self.I2C_ADDR, 0x10, bytes([0b0000]))
|
||||
|
||||
def solaire(self):
|
||||
self.i2c.writeto_mem(self.I2C_ADDR, 0x10, bytes([0b0011]))
|
||||
self.pin.off()
|
||||
|
||||
def reseau(self):
|
||||
self.i2c.writeto_mem(self.I2C_ADDR, 0x10, bytes([0b1100]))
|
||||
self.pin.on()
|
||||
|
||||
class Cloud:
|
||||
token_ha = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJkNGY4MDdmYWYzNDQ0NTc0ODY4MmFmNzA4NDdmMTE0MyIsImlhdCI6MTc2NDQ1Mzk0NSwiZXhwIjoyMDc5ODEzOTQ1fQ.DJgSqeTKPHWbKEFH3HuFih4QKt3CSqLqot34_vhCOQU"
|
||||
@ -210,26 +207,33 @@ consigne = 80
|
||||
solaire = True
|
||||
|
||||
while True:
|
||||
solaire = True
|
||||
i = (i + 1) % 10
|
||||
print(f"-------------- {i}")
|
||||
charge = cloud.zoe()
|
||||
HC = cloud.HC()
|
||||
leds.afficher(charge = charge, consigne = consigne)
|
||||
if (consigne > charge):
|
||||
if (bouton_bleu.is_on()):
|
||||
if HC:
|
||||
print(f"Réseau demandé alors que consigne ({consigne}) > charge ({charge}) et que l'on est en HC")
|
||||
solaire = False
|
||||
else:
|
||||
print(f"Réseau demandé alors que consigne ({consigne}) > charge ({charge}) MAIS on n'est pas en HC")
|
||||
if (bouton_rouge.is_on()):
|
||||
print(f"Réseau demandé alors que consigne ({consigne}) > charge ({charge}) et que l'on ne tient pas compte des HC/HP ({"HC" if HC else "HP"})")
|
||||
solaire = False
|
||||
if solaire:
|
||||
print(f"On force le solaire : consigne ({consigne}) ; charge ({charge}) ; HC/HP ({"HC" if HC else "HP"})")
|
||||
relais.solaire()
|
||||
else:
|
||||
print(f"On force le réseau : consigne ({consigne}) ; charge ({charge}) ; HC/HP ({"HC" if HC else "HP"})")
|
||||
relais.reseau()
|
||||
time.sleep(pas_temps)
|
||||
try:
|
||||
solaire = True
|
||||
i = (i + 1) % 10
|
||||
print(f"-------------- {i}")
|
||||
charge = cloud.zoe()
|
||||
HC = cloud.HC()
|
||||
leds.afficher(charge = charge, consigne = consigne)
|
||||
if (consigne > charge):
|
||||
if (bouton_bleu.is_on()):
|
||||
if HC:
|
||||
print(f"Réseau demandé alors que consigne ({consigne}) > charge ({charge}) et que l'on est en HC")
|
||||
solaire = False
|
||||
else:
|
||||
print(f"Réseau demandé alors que consigne ({consigne}) > charge ({charge}) MAIS on n'est pas en HC")
|
||||
if (bouton_rouge.is_on()):
|
||||
print(f"Réseau demandé alors que consigne ({consigne}) > charge ({charge}) et que l'on ne tient pas compte des HC/HP ({"HC" if HC else "HP"})")
|
||||
solaire = False
|
||||
if solaire:
|
||||
print(f"On force le solaire : consigne ({consigne}) ; charge ({charge}) ; HC/HP ({"HC" if HC else "HP"})")
|
||||
relais.solaire()
|
||||
else:
|
||||
print(f"On force le réseau : consigne ({consigne}) ; charge ({charge}) ; HC/HP ({"HC" if HC else "HP"})")
|
||||
relais.reseau()
|
||||
except Exception as e:
|
||||
print("!!! ERREUR !!!")
|
||||
sys.print_exception(e)
|
||||
# print(type(e))
|
||||
# print(e.args)
|
||||
# print(e)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user