pilotage d'un servo moteur avec un dimmer

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
Répondre
didier02
Messages : 221
Inscription : 19 juin 2021, 11:17
Localisation : saint quentin 02100

pilotage d'un servo moteur avec un dimmer

Message par didier02 »

Bonjour a tous , je suis en train de regarder le fonctionnement du Mini NodeMCU ESP8266 et espeasy

desoler si je suis pas dans le bon forum , mais je sais pas si mon problème viens de easyesp ou du script Lua.
.
j'ai réussi a faire bougé un servo moteur avec un inter domoticz mais pas avec un dimmer ..
.
j'ai suivi le tuto https://www.tutos.eu/3098
avec un inter mon servo moteur fonctionne
.
j'ai configuré mon inter en dimmer et rien ... mon servomoteur reste bloque dans sa position..
pourtant si je fais
http://192.168.0.49/control?cmd=Servo,1,13,16
http://192.168.0.49/control?cmd=Servo,1,13,175
ca fonctionne ( comme avec l'inter dans domoticz)


voici le code du tuto

Code : Tout sélectionner

commandArray = {}
DomDevice = 'servo'; -- Votre peripherique à controler
IP = '192.168.0.49'; -- L'adresse IP de l'ESP8266
PIN = "13"; -- Le pin GPIO du servo

function sleep(n)
  os.execute("sleep " .. tonumber(n))
end

if devicechanged[DomDevice] then
   if(devicechanged[DomDevice]=='Off') then
		print ("OFF dim = "..uservariables['dimmer']);
		CalcValue = 0;
   	else if(devicechanged[DomDevice]=='On') then
   		DomValue = uservariables['dimmer'];
        print ("ON dim = "..uservariables['dimmer']);
        CalcValue = DomValue;
    else
    	print("Other");
        DomValue = otherdevices_svalues[DomDevice];
        CalcValue = math.floor(30 + DomValue * 1.50); -- La fonction de calcul dimmer vers servo
        commandArray['Variable:dimmer'] = tostring(CalcValue);
        print ("dim Level = "..uservariables['dimmer']);
   	end
   	end
   	runcommand = "curl 'http://" .. IP .. "/control?cmd=Servo,2,"  ..PIN.. "," .. CalcValue .. "'"; -- Commande de servo
   	dodo = "curl 'http://" .. IP .. "/control?cmd=Servo,2,"  ..PIN.. ",9999'"; -- Desactiver lesServo
   	os.execute(runcommand);
   	sleep(2) -- Attente entre commande et desactivation
   	os.execute(dodo);
	print("PWM value= "..CalcValue);
end
return commandArray
deja pourquois dans
runcommand = "curl 'http://" .. IP .. "/control?cmd=Servo,2," ..PIN.. "," .. CalcValue .. "'";
.
il y a servo,2 ? j'en ai qu'un !et si je met 1 ca change rien ...
et j'ai remarqué qu'avec mon servo moteur je peux aller que de 16 à 175 en position :cry: si je met 0 c'a fonctionne pas, 176 non plus .. mon problème viens peut être de là ? :?:
dans les log , j'ai comme erreur
2023-03-17 18:34:59.827 Error: EventSystem: in servo: [string "commandArray = {} ..."]:16: attempt to concatenate a nil value (field 'dimmer')
2023-03-17 18:35:00.274 Error: EventSystem: in servo: [string "commandArray = {} ..."]:10: attempt to index a nil value (global 'devicechanged')
.
et là ,..., je pleure :|
Mon instal PI 3b+/disk SSD 128Go / envoie sms carte sim / lecture linky en usb USBTICLC / zigate V2+ / module lecture puissance sonoff powR2 / lecteur temps 4x sonoff SNBZ 02 et 4x Xiaomi Aqara / 10x 1wire ds18b20
Keros
Messages : 4410
Inscription : 23 juil. 2019, 20:57

Re: pilotage d'un servo moteur avec un dimmer

Message par Keros »

Le code appel uservariables['dimmer']. Est-ce qu'elle est créée ?
Neutrino
Messages : 2285
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: pilotage d'un servo moteur avec un dimmer

Message par Neutrino »

Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
didier02
Messages : 221
Inscription : 19 juin 2021, 11:17
Localisation : saint quentin 02100

Re: pilotage d'un servo moteur avec un dimmer

Message par didier02 »

ok ,
effectivement je viens de créer ma variable utilisateur, ca va mieux ..
2023-03-18 09:55:23.959 Status: User: didier (IP: 192.168.0.28) initiated a switch command (233/servo/Set Level)
2023-03-18 09:55:23.979 Status: LUA: ON dim = 0
2023-03-18 09:55:26.358 Status: LUA: PWM value= 0
par contre quand je bouge le dimmer, sa valeur reste à 0
et j'ai toujours mon erreur
2023-03-18 09:56:00.488 Error: EventSystem: in servo: [string "commandArray = {} ..."]:10: attempt to index a nil value (global 'devicechanged')
je laisse tombé c'est trop compliqué pour mon petit servo .. (le mien :D ).. si il faut refaire tout le code ... dommage le tuto était bien fait .. mais toute la partie config de easyesp est zappée et le genre de petit détail user variable aussi ...
J'arrive déjà a faire bouger un servo moteur, j'arrête là ..
Mon projet est de faire et piloter une bouche de ventilation variable suivant une condition (hydro).. comme çà :
.
2_.jpg
2_.jpg (13.03 Kio) Consulté 130 fois
merci pour vos réponses,
Mon instal PI 3b+/disk SSD 128Go / envoie sms carte sim / lecture linky en usb USBTICLC / zigate V2+ / module lecture puissance sonoff powR2 / lecteur temps 4x sonoff SNBZ 02 et 4x Xiaomi Aqara / 10x 1wire ds18b20
Keros
Messages : 4410
Inscription : 23 juil. 2019, 20:57

Re: pilotage d'un servo moteur avec un dimmer

Message par Keros »

Tu as bien renseigné le nom de ton widget dans le début du script ?

Ca m'intéresse de connaitre la bouche de ventilation variable que tu as trouvé.
didier02
Messages : 221
Inscription : 19 juin 2021, 11:17
Localisation : saint quentin 02100

Re: pilotage d'un servo moteur avec un dimmer

Message par didier02 »

ca ?
4.jpg
4.jpg (40.91 Kio) Consulté 111 fois
DomDevice = 'servo'; -- Votre peripherique à controler
.
3.jpg
3.jpg (18.92 Kio) Consulté 113 fois
.
volà ce que j'obtien en position o --> off et à 100% --> on
2023-03-18 13:50:12.974 Status: User: didier (IP: 192.168.0.28) initiated a switch command (233/servo/Set Level)
2023-03-18 13:50:14.525 Status: LUA: PWM value= 0
2023-03-18 13:50:14.533 Status: LUA: ON dim = 0
2023-03-18 13:50:16.865 Status: LUA: PWM value= 0
2023-03-18 13:51:52.331 Status: User: didier (IP: 192.168.0.28) initiated a switch command (233/servo/Set Level)
2023-03-18 13:51:52.341 Status: LUA: OFF dim = 0
2023-03-18 13:51:54.677 Status: LUA: PWM value= 0
.
on dirais que c'est la valeur pwm qui bouge pas..
d ailleurs elle sort de oû ? c'est pas dans le scipt .. :shock:

.
d'aprés la doc que Neutrino m'a donné
Image6.jpg
Image6.jpg (51.78 Kio) Consulté 94 fois
.
.
c''est du chinois :ugeek:
.
.
pour la bouche de vmc , je veux la faire moi même ..
pour moi c'est beaucoup plus facile a faire que de modifier un code lua !! :D
fait une recherche sur amazon ( ou autre) " bouche vmc motorisée" , il y en a beaucoup .. au début je voulais partir avec un électro aimant ou juste un petit moteur piloté par un relais sur port GPIO , mais il me faut la démultiplication d'un servo moteur pour que le clapet reste en place .. sinon en état fermé , il se réouvrira tous seul ... :evil:
.

En fait , je trouve les systèmes de bouches de vmc type « hydro » complétement dépassées … tirer sur une corde pour l’ouvrir un certain temps, ou les bouche avec un capteur mécanique qui se tend quand c’est humique … bof bof .. sans parler de ceux avec des piles qui coutent une blinde ..
Là , j’ouvre ou ferme suivant le taux d’humidité dans la pièce, ni plus ni moins .. et surtout plus d’oubli d’ouverture..
Dernière modification par didier02 le 18 mars 2023, 14:09, modifié 3 fois.
Mon instal PI 3b+/disk SSD 128Go / envoie sms carte sim / lecture linky en usb USBTICLC / zigate V2+ / module lecture puissance sonoff powR2 / lecteur temps 4x sonoff SNBZ 02 et 4x Xiaomi Aqara / 10x 1wire ds18b20
Keros
Messages : 4410
Inscription : 23 juil. 2019, 20:57

Re: pilotage d'un servo moteur avec un dimmer

Message par Keros »

C'est bien le bon nom. Il faudrait faire du débugage pour essayer de comprendre qu'est-ce qui fait planter le script.

Ta photo correspondait à ma recherche, d'où ma question. Merci
didier02
Messages : 221
Inscription : 19 juin 2021, 11:17
Localisation : saint quentin 02100

Re: pilotage d'un servo moteur avec un dimmer

Message par didier02 »

non, on va pas passer le weekend la dessus .. par contre si ca intéresse d'autres .. :) surtout qu'il commence a faire beau !!
comme je l'ai dis , j'arrive a piloter un servo moteur , ca me suffis .. c'était juste pour aller un peu plus loin.. là ca deviens trop compliqué ..
Encore merci de ta patience
Mon instal PI 3b+/disk SSD 128Go / envoie sms carte sim / lecture linky en usb USBTICLC / zigate V2+ / module lecture puissance sonoff powR2 / lecteur temps 4x sonoff SNBZ 02 et 4x Xiaomi Aqara / 10x 1wire ds18b20
Neutrino
Messages : 2285
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: pilotage d'un servo moteur avec un dimmer

Message par Neutrino »

La doc, c'était pour la partie servo.
Tu ne contrôles pas tes moteur en pwm.

Après tu peux simplifier le truc en créant un interrupteur sélecteur qui lancera différents liens correspondant à différents niveaux.
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
didier02
Messages : 221
Inscription : 19 juin 2021, 11:17
Localisation : saint quentin 02100

Re: pilotage d'un servo moteur avec un dimmer

Message par didier02 »

oui , c'est ce que je voulais faire .. sans se prendre la tête.. 2 positions et hop !!! ouvert en grand ou à 10%
Mon instal PI 3b+/disk SSD 128Go / envoie sms carte sim / lecture linky en usb USBTICLC / zigate V2+ / module lecture puissance sonoff powR2 / lecteur temps 4x sonoff SNBZ 02 et 4x Xiaomi Aqara / 10x 1wire ds18b20
Répondre